From 0cf00a264527ed87ade608e5d832103d04181abb Mon Sep 17 00:00:00 2001 From: Aleksej Komarov Date: Thu, 16 Jul 2020 21:13:04 +0300 Subject: [PATCH] tgui 4.0 (#52085) * tgui 4.0 hyper squash * Upgrade dependencies --- code/__DEFINES/tgui.dm | 34 +- code/__HELPERS/_logging.dm | 15 +- code/controllers/subsystem/shuttle.dm | 9 +- code/controllers/subsystem/tgui.dm | 342 ++- code/datums/achievements/_achievement_data.dm | 18 +- code/datums/components/crafting/crafting.dm | 18 +- code/datums/components/gps.dm | 12 +- code/datums/components/uplink.dm | 10 +- code/datums/spawners_menu.dm | 9 +- code/datums/wires/_wires.dm | 10 +- code/game/machinery/Sleeper.dm | 18 +- code/game/machinery/_machinery.dm | 5 +- code/game/machinery/announcement_system.dm | 9 +- code/game/machinery/bank_machine.dm | 10 +- code/game/machinery/bounty_board.dm | 8 +- code/game/machinery/computer/Operating.dm | 11 +- code/game/machinery/computer/aifixer.dm | 10 +- code/game/machinery/computer/apc_control.dm | 9 +- code/game/machinery/computer/arena.dm | 2 +- code/game/machinery/computer/atmos_alert.dm | 9 +- code/game/machinery/computer/atmos_control.dm | 25 +- code/game/machinery/computer/camera.dm | 10 +- code/game/machinery/computer/crew.dm | 7 +- code/game/machinery/computer/dna_console.dm | 12 +- .../machinery/computer/launchpad_control.dm | 8 +- .../computer/prisoner/gulag_teleporter.dm | 9 +- code/game/machinery/computer/robot.dm | 9 +- code/game/machinery/computer/station_alert.dm | 9 +- code/game/machinery/computer/teleporter.dm | 10 +- code/game/machinery/dance_machine.dm | 9 +- code/game/machinery/doors/airlock.dm | 7 +- .../machinery/doors/airlock_electronics.dm | 10 +- code/game/machinery/doors/brigdoors.dm | 9 +- code/game/machinery/doppler_array.dm | 9 +- code/game/machinery/electrolyzer.dm | 15 +- code/game/machinery/gulag_item_reclaimer.dm | 10 +- code/game/machinery/hologram.dm | 9 +- code/game/machinery/hypnochair.dm | 16 +- code/game/machinery/launch_pad.dm | 13 +- code/game/machinery/medical_kiosk.dm | 7 +- .../machinery/porta_turret/portable_turret.dm | 19 +- code/game/machinery/roulette_machine.dm | 8 +- code/game/machinery/scan_gate.dm | 9 +- code/game/machinery/spaceheater.dm | 12 +- code/game/machinery/suit_storage_unit.dm | 12 +- code/game/mecha/mech_bay.dm | 8 +- code/game/mecha/mech_fabricator.dm | 2 +- code/game/mecha/mecha_control_console.dm | 9 +- code/game/objects/items/RPD.dm | 17 +- code/game/objects/items/airlock_painter.dm | 6 +- code/game/objects/items/crayons.dm | 12 +- code/game/objects/items/devices/aicard.dm | 10 +- .../items/devices/portable_chem_mixer.dm | 18 +- .../items/devices/radio/electropack.dm | 13 +- .../objects/items/devices/radio/intercom.dm | 5 +- .../game/objects/items/devices/radio/radio.dm | 20 +- .../objects/items/devices/traitordevices.dm | 12 +- .../objects/items/devices/transfer_valve.dm | 13 +- code/game/objects/items/eightball.dm | 8 +- .../objects/items/implants/implant_misc.dm | 2 +- .../objects/items/implants/implantchair.dm | 11 +- code/game/objects/items/tanks/tanks.dm | 10 +- code/game/objects/items/teleportation.dm | 6 +- code/game/objects/structures/artstuff.dm | 22 +- code/game/objects/structures/displaycase.dm | 7 +- .../game/objects/structures/tank_dispenser.dm | 10 +- code/game/objects/structures/votingbox.dm | 2 +- code/modules/NTNet/relays.dm | 12 +- code/modules/admin/skill_panel.dm | 12 +- code/modules/admin/verbs/borgpanel.dm | 12 +- .../antagonists/abductor/machinery/console.dm | 12 +- .../abductor/machinery/dispenser.dm | 12 +- .../abductor/machinery/experiment.dm | 12 +- .../changeling/cellular_emporium.dm | 9 +- .../eldritch_cult/eldritch_book.dm | 9 +- .../nukeop/equipment/nuclearbomb.dm | 9 +- .../traitor/equipment/module_picker.dm | 12 +- code/modules/assembly/assembly.dm | 3 + code/modules/assembly/infrared.dm | 9 +- code/modules/assembly/proximity.dm | 9 +- code/modules/assembly/signaler.dm | 10 +- code/modules/assembly/timer.dm | 10 +- code/modules/asset_cache/asset_list.dm | 5 +- code/modules/asset_cache/asset_list_items.dm | 2 +- .../atmospherics/machinery/airalarm.dm | 10 +- .../components/binary_devices/passive_gate.dm | 10 +- .../components/binary_devices/pump.dm | 10 +- .../components/binary_devices/volume_pump.dm | 10 +- .../components/trinary_devices/filter.dm | 10 +- .../components/trinary_devices/mixer.dm | 10 +- .../components/unary_devices/cryo.dm | 13 +- .../unary_devices/outlet_injector.dm | 10 +- .../components/unary_devices/thermomachine.dm | 9 +- .../machinery/portable/canister.dm | 12 +- .../atmospherics/machinery/portable/pump.dm | 10 +- .../machinery/portable/scrubber.dm | 28 +- code/modules/awaymissions/gateway.dm | 7 +- .../cargo/blackmarket/blackmarket_uplink.dm | 8 +- code/modules/cargo/bounty_console.dm | 6 +- code/modules/cargo/centcom_podlauncher.dm | 9 +- code/modules/cargo/console.dm | 9 +- code/modules/cargo/expressconsole.dm | 8 +- code/modules/client/client_procs.dm | 5 + code/modules/client/preferences.dm | 6 +- code/modules/events/pirates.dm | 9 +- .../kitchen_machinery/smartfridge.dm | 8 +- code/modules/holodeck/computer.dm | 8 +- code/modules/hydroponics/biogenerator.dm | 18 +- code/modules/hydroponics/seed_extractor.dm | 12 +- code/modules/language/language_menu.dm | 9 +- code/modules/library/lib_codex_gigas.dm | 7 +- code/modules/library/soapstone.dm | 9 +- code/modules/mafia/controller.dm | 9 +- code/modules/mining/laborcamp/laborstacker.dm | 9 +- code/modules/mining/machine_redemption.dm | 8 +- code/modules/mining/machine_vending.dm | 20 +- code/modules/mining/mint.dm | 9 +- code/modules/mining/satchel_ore_boxdm.dm | 10 +- .../mob/dead/observer/notificationprefs.dm | 16 +- code/modules/mob/dead/observer/orbit.dm | 7 +- .../carbon/human/species_types/jellypeople.dm | 11 +- code/modules/mob/living/silicon/ai/life.dm | 2 +- .../mob/living/silicon/ai/robot_control.dm | 10 +- .../mob/living/simple_animal/bot/mulebot.dm | 13 +- .../computers/item/computer_ui.dm | 19 +- .../modular_computers/file_system/program.dm | 21 +- .../file_system/programs/airestorer.dm | 2 - .../file_system/programs/alarm.dm | 3 - .../programs/antagonist/contract_uplink.dm | 2 - .../file_system/programs/antagonist/dos.dm | 2 - .../programs/antagonist/revelation.dm | 3 - .../file_system/programs/arcade.dm | 10 +- .../file_system/programs/atmosscan.dm | 2 - .../file_system/programs/borg_monitor.dm | 2 - .../file_system/programs/bounty_board.dm | 2 - .../file_system/programs/card.dm | 2 - .../file_system/programs/cargobounty.dm | 4 +- .../file_system/programs/cargoship.dm | 2 - .../file_system/programs/configurator.dm | 2 - .../file_system/programs/crewmanifest.dm | 2 - .../file_system/programs/jobmanagement.dm | 2 - .../file_system/programs/ntdownloader.dm | 2 - .../file_system/programs/ntnrc_client.dm | 3 - .../file_system/programs/powermonitor.dm | 2 - .../file_system/programs/radar.dm | 10 +- .../file_system/programs/robocontrol.dm | 2 - .../file_system/programs/sm_monitor.dm | 2 - .../modular_computers/laptop_vendor.dm | 9 +- code/modules/paperwork/paper.dm | 116 +- code/modules/plumbing/plumbers/acclimator.dm | 9 +- code/modules/plumbing/plumbers/filter.dm | 9 +- code/modules/plumbing/plumbers/pill_press.dm | 18 +- .../plumbing/plumbers/reaction_chamber.dm | 9 +- code/modules/plumbing/plumbers/splitters.dm | 9 +- code/modules/plumbing/plumbers/synthesizer.dm | 11 +- code/modules/power/apc.dm | 10 +- code/modules/power/gravitygenerator.dm | 9 +- code/modules/power/monitor.dm | 9 +- code/modules/power/port_gen.dm | 9 +- .../particle_accelerator/particle_control.dm | 9 +- code/modules/power/smes.dm | 9 +- code/modules/power/solar.dm | 7 +- code/modules/power/turbine.dm | 18 +- .../chemistry/machinery/chem_dispenser.dm | 9 +- .../chemistry/machinery/chem_heater.dm | 9 +- .../chemistry/machinery/chem_master.dm | 22 +- .../chemistry/machinery/chem_synthesizer.dm | 10 +- .../reagents/chemistry/machinery/pandemic.dm | 8 +- .../chemistry/machinery/smoke_machine.dm | 9 +- code/modules/recycling/disposal/bin.dm | 12 +- code/modules/research/bepis.dm | 17 +- .../nanites/nanite_chamber_computer.dm | 8 +- .../nanites/nanite_cloud_controller.dm | 8 +- .../research/nanites/nanite_program_hub.dm | 24 +- .../research/nanites/nanite_programmer.dm | 8 +- .../modules/research/nanites/nanite_remote.dm | 10 +- .../ruins/spaceruin_code/TheDerelict.dm | 27 +- .../security_levels/keycard_authentication.dm | 12 +- code/modules/shuttle/emergency.dm | 11 +- code/modules/station_goals/bsa.dm | 12 +- code/modules/station_goals/dna_vault.dm | 11 +- code/modules/station_goals/shield.dm | 9 +- code/modules/tgui/external.dm | 114 +- code/modules/tgui/states.dm | 50 +- code/modules/tgui/states/admin.dm | 3 + code/modules/tgui/states/always.dm | 3 + code/modules/tgui/states/conscious.dm | 3 + code/modules/tgui/states/contained.dm | 3 + code/modules/tgui/states/deep_inventory.dm | 6 +- code/modules/tgui/states/default.dm | 6 +- code/modules/tgui/states/hands.dm | 3 + code/modules/tgui/states/human_adjacent.dm | 3 + code/modules/tgui/states/inventory.dm | 6 +- code/modules/tgui/states/language_menu.dm | 3 + code/modules/tgui/states/not_incapacitated.dm | 3 + code/modules/tgui/states/notcontained.dm | 6 +- code/modules/tgui/states/observer.dm | 3 + code/modules/tgui/states/physical.dm | 3 + code/modules/tgui/states/self.dm | 3 + code/modules/tgui/states/zlevel.dm | 3 + code/modules/tgui/subsystem.dm | 250 -- code/modules/tgui/tgui.dm | 449 ++-- code/modules/tgui/tgui_window.dm | 203 ++ code/modules/vending/_vending.dm | 15 +- tgstation.dme | 2 +- tgui/.eslintrc.yml | 4 +- tgui/.gitattributes | 9 + tgui/README.md | 9 +- tgui/bin/tgui | 8 + tgui/docs/component-reference.md | 4 +- tgui/docs/migration-to-v4-from-v3.md | 91 + tgui/docs/tutorial-and-examples.md | 26 +- tgui/package.json | 2 +- tgui/packages/common/perf.js | 44 + tgui/packages/common/redux.js | 28 + tgui/packages/common/storage.js | 64 + tgui/packages/common/vector.js | 14 +- tgui/packages/tgui/assets.js | 23 + tgui/packages/tgui/backend.js | 223 +- tgui/packages/tgui/byond.js | 94 - tgui/packages/tgui/components/Button.js | 8 +- tgui/packages/tgui/components/ByondUi.js | 40 +- tgui/packages/tgui/components/Chart.js | 3 +- tgui/packages/tgui/components/Flex.js | 9 +- tgui/packages/tgui/components/Knob.js | 3 +- tgui/packages/tgui/components/NumberInput.js | 3 +- tgui/packages/tgui/components/Section.js | 15 +- tgui/packages/tgui/components/Slider.js | 3 +- tgui/packages/tgui/components/index.js | 1 + .../manually-routed => debug}/KitchenSink.js | 277 ++- tgui/packages/tgui/debug/index.js | 49 + tgui/packages/tgui/drag.js | 195 +- tgui/packages/tgui/format.js | 3 + tgui/packages/tgui/global.d.ts | 95 + tgui/packages/tgui/hotkeys.js | 105 +- tgui/packages/tgui/index.js | 155 +- .../tgui/interfaces/AbductorConsole.js | 2 + tgui/packages/tgui/interfaces/Achievements.js | 6 +- tgui/packages/tgui/interfaces/AiAirlock.js | 4 +- tgui/packages/tgui/interfaces/AiRestorer.js | 5 +- tgui/packages/tgui/interfaces/AirAlarm.js | 5 +- .../tgui/interfaces/AirlockElectronics.js | 4 +- tgui/packages/tgui/interfaces/Apc.js | 5 +- tgui/packages/tgui/interfaces/ApcControl.js | 16 +- .../tgui/interfaces/AtmosAlertConsole.js | 5 +- .../tgui/interfaces/AtmosControlConsole.js | 5 +- tgui/packages/tgui/interfaces/AtmosFilter.js | 4 +- tgui/packages/tgui/interfaces/AtmosMixer.js | 4 +- tgui/packages/tgui/interfaces/AtmosPump.js | 4 +- .../tgui/interfaces/AutomatedAnnouncement.js | 5 +- tgui/packages/tgui/interfaces/BankMachine.js | 7 +- tgui/packages/tgui/interfaces/Bepis.js | 4 +- tgui/packages/tgui/interfaces/Biogenerator.js | 7 +- .../tgui/interfaces/BlackMarketUplink.js | 4 +- .../tgui/interfaces/BluespaceArtillery.js | 4 +- .../tgui/interfaces/BluespaceLocator.js | 28 +- tgui/packages/tgui/interfaces/BorgPanel.js | 6 +- tgui/packages/tgui/interfaces/BrigTimer.js | 5 +- .../packages/tgui/interfaces/CameraConsole.js | 6 +- tgui/packages/tgui/interfaces/Canister.js | 4 +- tgui/packages/tgui/interfaces/Canvas.js | 22 +- tgui/packages/tgui/interfaces/Cargo.js | 5 +- .../tgui/interfaces/CargoBountyConsole.js | 40 +- tgui/packages/tgui/interfaces/CargoExpress.js | 5 +- .../tgui/interfaces/CargoHoldTerminal.js | 5 +- .../tgui/interfaces/CellularEmporium.js | 5 +- .../tgui/interfaces/CentcomPodLauncher.js | 8 +- .../tgui/interfaces/ChemAcclimator.js | 4 +- .../tgui/interfaces/ChemDebugSynthesizer.js | 5 +- .../packages/tgui/interfaces/ChemDispenser.js | 5 +- tgui/packages/tgui/interfaces/ChemFilter.js | 5 +- tgui/packages/tgui/interfaces/ChemHeater.js | 5 +- tgui/packages/tgui/interfaces/ChemMaster.js | 5 +- tgui/packages/tgui/interfaces/ChemPress.js | 4 +- .../tgui/interfaces/ChemReactionChamber.js | 5 +- tgui/packages/tgui/interfaces/ChemSplitter.js | 4 +- .../tgui/interfaces/ChemSynthesizer.js | 4 +- tgui/packages/tgui/interfaces/CodexGigas.js | 4 +- .../tgui/interfaces/ComputerFabricator.js | 8 +- tgui/packages/tgui/interfaces/Crayon.js | 5 +- tgui/packages/tgui/interfaces/CrewConsole.js | 6 +- tgui/packages/tgui/interfaces/Cryo.js | 5 +- tgui/packages/tgui/interfaces/DecalPainter.js | 4 +- tgui/packages/tgui/interfaces/DisposalUnit.js | 4 +- tgui/packages/tgui/interfaces/DnaConsole.js | 6 +- tgui/packages/tgui/interfaces/DnaVault.js | 4 +- .../packages/tgui/interfaces/EightBallVote.js | 4 +- tgui/packages/tgui/interfaces/Electrolyzer.js | 6 +- tgui/packages/tgui/interfaces/Electropack.js | 4 +- .../interfaces/EmergencyShuttleConsole.js | 4 +- .../tgui/interfaces/EngravedMessage.js | 5 +- .../tgui/interfaces/ExosuitControlConsole.js | 5 +- .../packages/tgui/interfaces/ForbiddenLore.js | 31 +- .../tgui/interfaces/GlandDispenser.js | 5 +- tgui/packages/tgui/interfaces/Gps.js | 6 +- .../tgui/interfaces/GravityGenerator.js | 4 +- .../tgui/interfaces/GulagItemReclaimer.js | 5 +- .../tgui/interfaces/GulagTeleporterConsole.js | 4 +- tgui/packages/tgui/interfaces/Holodeck.js | 5 +- tgui/packages/tgui/interfaces/Holopad.js | 5 +- tgui/packages/tgui/interfaces/HypnoChair.js | 4 +- tgui/packages/tgui/interfaces/ImplantChair.js | 4 +- .../tgui/interfaces/InfraredEmitter.js | 4 +- tgui/packages/tgui/interfaces/Intellicard.js | 5 +- tgui/packages/tgui/interfaces/Jukebox.js | 4 +- tgui/packages/tgui/interfaces/KeycardAuth.js | 4 +- .../tgui/interfaces/LaborClaimConsole.js | 4 +- tgui/packages/tgui/interfaces/LanguageMenu.js | 6 +- .../tgui/interfaces/LaunchpadConsole.js | 5 +- .../tgui/interfaces/LaunchpadRemote.js | 6 +- tgui/packages/tgui/interfaces/MafiaPanel.js | 7 +- .../interfaces/MalfunctionModulePicker.js | 2 + .../tgui/interfaces/MechBayPowerConsole.js | 4 +- tgui/packages/tgui/interfaces/MedicalKiosk.js | 9 +- tgui/packages/tgui/interfaces/MiningVendor.js | 7 +- tgui/packages/tgui/interfaces/Mint.js | 4 +- tgui/packages/tgui/interfaces/Mule.js | 6 +- .../tgui/interfaces/NaniteChamberControl.js | 5 +- .../tgui/interfaces/NaniteCloudControl.js | 38 +- .../tgui/interfaces/NaniteProgramHub.js | 5 +- .../tgui/interfaces/NaniteProgrammer.js | 9 +- tgui/packages/tgui/interfaces/NaniteRemote.js | 11 +- .../interfaces/NotificationPreferences.js | 8 +- tgui/packages/tgui/interfaces/NtnetRelay.js | 7 +- .../tgui/interfaces/NtosAiRestorer.js | 5 +- tgui/packages/tgui/interfaces/NtosArcade.js | 4 +- tgui/packages/tgui/interfaces/NtosAtmos.js | 5 +- .../tgui/interfaces/NtosBountyConsole.js | 39 +- tgui/packages/tgui/interfaces/NtosCard.js | 5 +- .../tgui/interfaces/NtosConfiguration.js | 11 +- .../tgui/interfaces/NtosCrewManifest.js | 9 +- .../interfaces/NtosCyborgRemoteMonitor.js | 6 +- .../NtosCyborgRemoteMonitorSyndicate.js | 8 +- .../tgui/interfaces/NtosJobManager.js | 17 +- tgui/packages/tgui/interfaces/NtosMain.js | 9 +- tgui/packages/tgui/interfaces/NtosNetChat.js | 18 +- tgui/packages/tgui/interfaces/NtosNetDos.js | 14 +- .../tgui/interfaces/NtosNetDownloader.js | 6 +- .../tgui/interfaces/NtosPowerMonitor.js | 5 +- tgui/packages/tgui/interfaces/NtosRadar.js | 13 +- .../tgui/interfaces/NtosRadarSyndicate.js | 11 +- .../tgui/interfaces/NtosRequestKiosk.js | 5 +- .../tgui/interfaces/NtosRevelation.js | 28 +- .../tgui/interfaces/NtosRoboControl.js | 5 +- tgui/packages/tgui/interfaces/NtosShipping.js | 5 +- .../interfaces/NtosStationAlertConsole.js | 5 +- .../tgui/interfaces/NtosSupermatterMonitor.js | 5 +- tgui/packages/tgui/interfaces/NuclearBomb.js | 5 +- .../tgui/interfaces/OperatingComputer.js | 5 +- tgui/packages/tgui/interfaces/Orbit.js | 11 +- tgui/packages/tgui/interfaces/OreBox.js | 5 +- .../tgui/interfaces/OreRedemptionMachine.js | 8 +- tgui/packages/tgui/interfaces/Pandemic.js | 39 +- tgui/packages/tgui/interfaces/PaperSheet.js | 241 +- .../tgui/interfaces/ParticleAccelerator.js | 4 +- .../tgui/interfaces/PersonalCrafting.js | 7 +- .../tgui/interfaces/PortableChemMixer.js | 5 +- .../tgui/interfaces/PortableGenerator.js | 8 +- tgui/packages/tgui/interfaces/PortablePump.js | 8 +- .../tgui/interfaces/PortableScrubber.js | 9 +- .../tgui/interfaces/PortableTurret.js | 4 +- tgui/packages/tgui/interfaces/PowerMonitor.js | 25 +- .../tgui/interfaces/ProbingConsole.js | 7 +- .../tgui/interfaces/ProximitySensor.js | 4 +- tgui/packages/tgui/interfaces/Radio.js | 14 +- .../tgui/interfaces/RadioactiveMicrolaser.js | 6 +- .../tgui/interfaces/RapidPipeDispenser.js | 5 +- .../tgui/interfaces/RemoteRobotControl.js | 8 +- tgui/packages/tgui/interfaces/RequestKiosk.js | 12 +- .../tgui/interfaces/RoboticsControlConsole.js | 5 +- tgui/packages/tgui/interfaces/Roulette.js | 14 +- .../tgui/interfaces/SatelliteControl.js | 11 +- tgui/packages/tgui/interfaces/ScannerGate.js | 5 +- .../packages/tgui/interfaces/SeedExtractor.js | 7 +- .../tgui/interfaces/ShuttleManipulator.js | 6 +- tgui/packages/tgui/interfaces/Signaler.js | 9 +- tgui/packages/tgui/interfaces/SkillPanel.js | 52 +- tgui/packages/tgui/interfaces/Sleeper.js | 50 +- .../tgui/interfaces/SlimeBodySwapper.js | 31 +- tgui/packages/tgui/interfaces/SmartVend.js | 5 +- tgui/packages/tgui/interfaces/Smes.js | 4 +- tgui/packages/tgui/interfaces/SmokeMachine.js | 4 +- tgui/packages/tgui/interfaces/SolarControl.js | 6 +- tgui/packages/tgui/interfaces/SpaceHeater.js | 4 +- tgui/packages/tgui/interfaces/SpawnersMenu.js | 6 +- .../tgui/interfaces/StationAlertConsole.js | 5 +- .../tgui/interfaces/SuitStorageUnit.js | 4 +- .../tgui/interfaces/SyndContractor.js | 7 +- tgui/packages/tgui/interfaces/TachyonArray.js | 5 +- tgui/packages/tgui/interfaces/Tank.js | 4 +- .../packages/tgui/interfaces/TankDispenser.js | 4 +- tgui/packages/tgui/interfaces/Teleporter.js | 4 +- .../packages/tgui/interfaces/ThermoMachine.js | 4 +- tgui/packages/tgui/interfaces/Timer.js | 4 +- .../packages/tgui/interfaces/TransferValve.js | 4 +- .../tgui/interfaces/TurbineComputer.js | 4 +- .../packages/tgui/interfaces/TurretControl.js | 4 +- tgui/packages/tgui/interfaces/Uplink.js | 2 + .../tgui/interfaces/VaultController.js | 6 +- tgui/packages/tgui/interfaces/Vendatray.js | 10 +- tgui/packages/tgui/interfaces/Vending.js | 87 +- tgui/packages/tgui/interfaces/Wires.js | 4 +- tgui/packages/tgui/layouts/Layout.js | 9 +- tgui/packages/tgui/layouts/NtosWindow.js | 6 + tgui/packages/tgui/layouts/Window.js | 86 +- tgui/packages/tgui/logging.js | 10 +- tgui/packages/tgui/package.json | 12 +- tgui/packages/tgui/public/tgui.bundle.css | 2 +- tgui/packages/tgui/public/tgui.bundle.js | 2 +- tgui/packages/tgui/public/tgui.html | 142 +- tgui/packages/tgui/routes.js | 21 +- tgui/packages/tgui/store.js | 33 +- .../packages/tgui/styles/components/Flex.scss | 6 +- .../tgui/styles/components/Section.scss | 10 + tgui/packages/tgui/styles/layouts/Layout.scss | 22 +- .../tgui/styles/layouts/TitleBar.scss | 12 + tgui/packages/tgui/styles/layouts/Window.scss | 15 + tgui/packages/tgui/styles/themes/paper.scss | 101 +- tgui/yarn.lock | 2074 ++++++++--------- 419 files changed, 5171 insertions(+), 4029 deletions(-) delete mode 100644 code/modules/tgui/subsystem.dm create mode 100644 code/modules/tgui/tgui_window.dm create mode 100644 tgui/docs/migration-to-v4-from-v3.md create mode 100644 tgui/packages/common/perf.js create mode 100644 tgui/packages/common/storage.js create mode 100644 tgui/packages/tgui/assets.js delete mode 100644 tgui/packages/tgui/byond.js rename tgui/packages/tgui/{interfaces/manually-routed => debug}/KitchenSink.js (63%) create mode 100644 tgui/packages/tgui/debug/index.js create mode 100644 tgui/packages/tgui/global.d.ts diff --git a/code/__DEFINES/tgui.dm b/code/__DEFINES/tgui.dm index 1b3925f43a7..df5e187df17 100644 --- a/code/__DEFINES/tgui.dm +++ b/code/__DEFINES/tgui.dm @@ -1,4 +1,30 @@ -#define UI_INTERACTIVE 2 // Green/Interactive -#define UI_UPDATE 1 // Orange/Updates Only -#define UI_DISABLED 0 // Red/Disabled -#define UI_CLOSE -1 // Closed +/// Green eye; fully interactive +#define UI_INTERACTIVE 2 +/// Orange eye; updates but is not interactive +#define UI_UPDATE 1 +/// Red eye; disabled, does not update +#define UI_DISABLED 0 +/// UI Should close +#define UI_CLOSE -1 + +/// Maximum number of windows that can be suspended/reused +#define TGUI_WINDOW_SOFT_LIMIT 5 +/// Maximum number of open windows +#define TGUI_WINDOW_HARD_LIMIT 9 + +/// Maximum ping timeout allowed to detect zombie windows +#define TGUI_PING_TIMEOUT 5 SECONDS + +/// Window does not exist +#define TGUI_WINDOW_CLOSED 0 +/// Window was just opened, but is still not ready to be sent data +#define TGUI_WINDOW_LOADING 1 +/// Window is free and ready to receive data +#define TGUI_WINDOW_READY 2 +/// Window is in use by a tgui datum +#define TGUI_WINDOW_ACTIVE 3 + +/// Get a window id based on the provided pool index +#define TGUI_WINDOW_ID(index) "tgui-window-[index]" +/// Get a pool index of the provided window id +#define TGUI_WINDOW_INDEX(window_id) text2num(copytext(window_id, 13)) diff --git a/code/__HELPERS/_logging.dm b/code/__HELPERS/_logging.dm index a7d5f43ff08..d68b1524751 100644 --- a/code/__HELPERS/_logging.dm +++ b/code/__HELPERS/_logging.dm @@ -201,9 +201,18 @@ WRITE_LOG(GLOB.world_map_error_log, text) /* ui logging */ - -/proc/log_tgui(text) - WRITE_LOG(GLOB.tgui_log, text) +/proc/log_tgui(user_or_client, text) + var/entry = "" + if(!user_or_client) + entry += "no user" + else if(istype(user_or_client, /mob)) + var/mob/user = user_or_client + entry += "[user.ckey] (as [user])" + else if(istype(user_or_client, /client)) + var/client/client = user_or_client + entry += "[client.ckey]" + entry += ":\n[text]" + WRITE_LOG(GLOB.tgui_log, entry) /* For logging round startup. */ /proc/start_log(log) diff --git a/code/controllers/subsystem/shuttle.dm b/code/controllers/subsystem/shuttle.dm index 5024a1803c5..ed0b177a4ef 100644 --- a/code/controllers/subsystem/shuttle.dm +++ b/code/controllers/subsystem/shuttle.dm @@ -752,14 +752,15 @@ SUBSYSTEM_DEF(shuttle) preview_shuttle.jumpToNullSpace() preview_shuttle = null +/datum/controller/subsystem/shuttle/ui_state(mob/user) + return GLOB.admin_state -/datum/controller/subsystem/shuttle/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.admin_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/controller/subsystem/shuttle/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ShuttleManipulator", name, 800, 600, master_ui, state) + ui = new(user, src, "ShuttleManipulator") ui.open() - /datum/controller/subsystem/shuttle/ui_data(mob/user) var/list/data = list() data["tabs"] = list("Status", "Templates", "Modification") diff --git a/code/controllers/subsystem/tgui.dm b/code/controllers/subsystem/tgui.dm index e6a33c09dcc..7e382ffae54 100644 --- a/code/controllers/subsystem/tgui.dm +++ b/code/controllers/subsystem/tgui.dm @@ -1,4 +1,8 @@ /** + * tgui subsystem + * + * Contains all tgui state and subsystem code. + * * Copyright (c) 2020 Aleksej Komarov * SPDX-License-Identifier: MIT */ @@ -10,10 +14,14 @@ SUBSYSTEM_DEF(tgui) priority = FIRE_PRIORITY_TGUI runlevels = RUNLEVEL_LOBBY | RUNLEVELS_DEFAULT - var/list/currentrun = list() - var/list/open_uis = list() // A list of open UIs, grouped by src_object and ui_key. - var/list/processing_uis = list() // A list of processing UIs, ungrouped. - var/basehtml // The HTML base used for all UIs. + /// A list of UIs scheduled to process + var/list/current_run = list() + /// A list of open UIs + var/list/open_uis = list() + /// A list of open UIs, grouped by src_object. + var/list/open_uis_by_src = list() + /// The HTML base used for all UIs. + var/basehtml /datum/controller/subsystem/tgui/PreInit() basehtml = file2text('tgui/packages/tgui/public/tgui.html') @@ -22,20 +30,324 @@ SUBSYSTEM_DEF(tgui) close_all_uis() /datum/controller/subsystem/tgui/stat_entry() - ..("P:[processing_uis.len]") + ..("P:[open_uis.len]") /datum/controller/subsystem/tgui/fire(resumed = 0) - if (!resumed) - src.currentrun = processing_uis.Copy() - //cache for sanic speed (lists are references anyways) - var/list/currentrun = src.currentrun - - while(currentrun.len) - var/datum/tgui/ui = currentrun[currentrun.len] - currentrun.len-- + if(!resumed) + src.current_run = open_uis.Copy() + // Cache for sanic speed (lists are references anyways) + var/list/current_run = src.current_run + while(current_run.len) + var/datum/tgui/ui = current_run[current_run.len] + current_run.len-- + // TODO: Move user/src_object check to process() if(ui && ui.user && ui.src_object) ui.process() else - processing_uis.Remove(ui) - if (MC_TICK_CHECK) + open_uis.Remove(ui) + if(MC_TICK_CHECK) return + +/** + * public + * + * Requests a usable tgui window from the pool. + * Returns null if pool was exhausted. + * + * required user mob + * return datum/tgui + */ +/datum/controller/subsystem/tgui/proc/request_pooled_window(mob/user) + log_tgui(user, "request_pooled_window()") + if(!user.client) + return null + var/list/windows = user.client.tgui_windows + var/window_id + var/datum/tgui_window/window + var/window_found = FALSE + // Find a usable window + for(var/i in 1 to TGUI_WINDOW_HARD_LIMIT) + window_id = TGUI_WINDOW_ID(i) + window = windows[window_id] + // As we are looping, create missing window datums + if(!window) + window = new(user.client, window_id, pooled = TRUE) + // Skip windows with acquired locks + if(window.locked) + continue + if(window.status == TGUI_WINDOW_READY) + log_tgui(user, "found ready [window_id]") + return window + if(window.status == TGUI_WINDOW_CLOSED) + window.status = TGUI_WINDOW_LOADING + window_found = TRUE + break + if(!window_found) + log_tgui(user, "Error: Pool exhausted") + return null + return window + +/** + * public + * + * Force closes all tgui windows. + * + * required user mob + */ +/datum/controller/subsystem/tgui/proc/force_close_all_windows(mob/user) + log_tgui(user, "force_close_all_windows") + if(user.client) + user.client.tgui_windows = list() + for(var/i in 1 to TGUI_WINDOW_HARD_LIMIT) + var/window_id = TGUI_WINDOW_ID(i) + user << browse(null, "window=[window_id]") + +/** + * public + * + * Force closes the tgui window by window_id. + * + * required user mob + * required window_id string + */ +/datum/controller/subsystem/tgui/proc/force_close_window(mob/user, window_id) + log_tgui(user, "force_close_window") + // Close all tgui datums based on window_id. + for(var/datum/tgui/ui in user.tgui_open_uis) + if(ui.window && ui.window.id == window_id) + ui.close(can_be_suspended = FALSE) + // Unset machine just to be sure. + user.unset_machine() + // Close window directly just to be sure. + user << browse(null, "window=[window_id]") + +/** + * public + * + * Try to find an instance of a UI, and push an update to it. + * + * required user mob The mob who opened/is using the UI. + * required src_object datum The object/datum which owns the UI. + * optional ui datum/tgui The UI to be updated, if it exists. + * optional force_open bool If the UI should be re-opened instead of updated. + * + * return datum/tgui The found UI. + */ +/datum/controller/subsystem/tgui/proc/try_update_ui( + mob/user, + datum/src_object, + datum/tgui/ui) + // Look up a UI if it wasn't passed + if(isnull(ui)) + ui = get_open_ui(user, src_object) + // Couldn't find a UI. + if(isnull(ui)) + return null + ui.process_status() + // UI ended up with the closed status + // or is actively trying to close itself. + // FIXME: Doesn't actually fix the paper bug. + if(ui.status <= UI_CLOSE) + ui.close() + return null + ui.send_update() + return ui + +/** + * public + * + * Get a open UI given a user and src_object. + * + * required user mob The mob who opened/is using the UI. + * required src_object datum The object/datum which owns the UI. + * + * return datum/tgui The found UI. + */ +/datum/controller/subsystem/tgui/proc/get_open_ui(mob/user, datum/src_object) + var/key = "[REF(src_object)]" + // No UIs opened for this src_object + if(isnull(open_uis_by_src[key]) || !istype(open_uis_by_src[key], /list)) + return null + for(var/datum/tgui/ui in open_uis_by_src[key]) + // Make sure we have the right user + if(ui.user == user) + return ui + return null + +/** + * public + * + * Update all UIs attached to src_object. + * + * required src_object datum The object/datum which owns the UIs. + * + * return int The number of UIs updated. + */ +/datum/controller/subsystem/tgui/proc/update_uis(datum/src_object) + var/count = 0 + var/key = "[REF(src_object)]" + // No UIs opened for this src_object + if(isnull(open_uis_by_src[key]) || !istype(open_uis_by_src[key], /list)) + return count + for(var/datum/tgui/ui in open_uis_by_src[key]) + // Check if UI is valid. + if(ui && ui.src_object && ui.user && ui.src_object.ui_host(ui.user)) + ui.process(force = 1) + count++ + return count + +/** + * public + * + * Close all UIs attached to src_object. + * + * required src_object datum The object/datum which owns the UIs. + * + * return int The number of UIs closed. + */ +/datum/controller/subsystem/tgui/proc/close_uis(datum/src_object) + var/count = 0 + var/key = "[REF(src_object)]" + // No UIs opened for this src_object + if(isnull(open_uis_by_src[key]) || !istype(open_uis_by_src[key], /list)) + return count + for(var/datum/tgui/ui in open_uis_by_src[key]) + // Check if UI is valid. + if(ui && ui.src_object && ui.user && ui.src_object.ui_host(ui.user)) + ui.close() + count++ + return count + +/** + * public + * + * Close all UIs regardless of their attachment to src_object. + * + * return int The number of UIs closed. + */ +/datum/controller/subsystem/tgui/proc/close_all_uis() + var/count = 0 + for(var/key in open_uis_by_src) + for(var/datum/tgui/ui in open_uis_by_src[key]) + // Check if UI is valid. + if(ui && ui.src_object && ui.user && ui.src_object.ui_host(ui.user)) + ui.close() + count++ + return count + +/** + * public + * + * Update all UIs belonging to a user. + * + * required user mob The mob who opened/is using the UI. + * optional src_object datum If provided, only update UIs belonging this src_object. + * + * return int The number of UIs updated. + */ +/datum/controller/subsystem/tgui/proc/update_user_uis(mob/user, datum/src_object) + var/count = 0 + if(length(user?.tgui_open_uis) == 0) + return count + for(var/datum/tgui/ui in user.tgui_open_uis) + if(isnull(src_object) || ui.src_object == src_object) + ui.process(force = 1) + count++ + return count + +/** + * public + * + * Close all UIs belonging to a user. + * + * required user mob The mob who opened/is using the UI. + * optional src_object datum If provided, only close UIs belonging this src_object. + * + * return int The number of UIs closed. + */ +/datum/controller/subsystem/tgui/proc/close_user_uis(mob/user, datum/src_object) + var/count = 0 + if(length(user?.tgui_open_uis) == 0) + return count + for(var/datum/tgui/ui in user.tgui_open_uis) + if(isnull(src_object) || ui.src_object == src_object) + ui.close() + count++ + return count + +/** + * private + * + * Add a UI to the list of open UIs. + * + * required ui datum/tgui The UI to be added. + */ +/datum/controller/subsystem/tgui/proc/on_open(datum/tgui/ui) + var/key = "[REF(ui.src_object)]" + if(isnull(open_uis_by_src[key]) || !istype(open_uis_by_src[key], /list)) + open_uis_by_src[key] = list() + ui.user.tgui_open_uis |= ui + var/list/uis = open_uis_by_src[key] + uis |= ui + open_uis |= ui + +/** + * private + * + * Remove a UI from the list of open UIs. + * + * required ui datum/tgui The UI to be removed. + * + * return bool If the UI was removed or not. + */ +/datum/controller/subsystem/tgui/proc/on_close(datum/tgui/ui) + var/key = "[REF(ui.src_object)]" + if(isnull(open_uis_by_src[key]) || !istype(open_uis_by_src[key], /list)) + return FALSE + // Remove it from the list of processing UIs. + open_uis.Remove(ui) + // If the user exists, remove it from them too. + if(ui.user) + ui.user.tgui_open_uis.Remove(ui) + var/list/uis = open_uis_by_src[key] + uis.Remove(ui) + if(length(uis) == 0) + open_uis_by_src.Remove(key) + return TRUE + +/** + * private + * + * Handle client logout, by closing all their UIs. + * + * required user mob The mob which logged out. + * + * return int The number of UIs closed. + */ +/datum/controller/subsystem/tgui/proc/on_logout(mob/user) + close_user_uis(user) + +/** + * private + * + * Handle clients switching mobs, by transferring their UIs. + * + * required user source The client's original mob. + * required user target The client's new mob. + * + * return bool If the UIs were transferred. + */ +/datum/controller/subsystem/tgui/proc/on_transfer(mob/source, mob/target) + // The old mob had no open UIs. + if(length(source?.tgui_open_uis) == 0) + return FALSE + if(isnull(target.tgui_open_uis) || !istype(target.tgui_open_uis, /list)) + target.tgui_open_uis = list() + // Transfer all the UIs. + for(var/datum/tgui/ui in source.tgui_open_uis) + // Inform the UIs of their new owner. + ui.user = target + target.tgui_open_uis.Add(ui) + // Clear the old list. + source.tgui_open_uis.Cut() + return TRUE diff --git a/code/datums/achievements/_achievement_data.dm b/code/datums/achievements/_achievement_data.dm index 14f4510f4e0..cfa1ab6ed01 100644 --- a/code/datums/achievements/_achievement_data.dm +++ b/code/datums/achievements/_achievement_data.dm @@ -91,16 +91,18 @@ else if(istype(A, /datum/award/score)) data[achievement_type] = 0 -/datum/achievement_data/ui_base_html(html) - var/datum/asset/spritesheet/simple/assets = get_asset_datum(/datum/asset/spritesheet/simple/achievements) - . = replacetext(html, "", assets.css_tag()) +/datum/achievement_data/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/spritesheet/simple/achievements), + ) -/datum/achievement_data/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.always_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/achievement_data/ui_state(mob/user) + return GLOB.always_state + +/datum/achievement_data/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - var/datum/asset/spritesheet/simple/assets = get_asset_datum(/datum/asset/spritesheet/simple/achievements) - assets.send(user) - ui = new(user, src, ui_key, "Achievements", "Achievements Menu", 540, 680, master_ui, state) + ui = new(user, src, "Achievements") ui.open() /datum/achievement_data/ui_data(mob/user) diff --git a/code/datums/components/crafting/crafting.dm b/code/datums/components/crafting/crafting.dm index 7e0619fe9c5..c59d4b82113 100644 --- a/code/datums/components/crafting/crafting.dm +++ b/code/datums/components/crafting/crafting.dm @@ -316,9 +316,12 @@ if(user == parent) ui_interact(user) +/datum/component/personal_crafting/ui_state(mob/user) + return GLOB.not_incapacitated_turf_state + //For the UI related things we're going to assume the user is a mob rather than typesetting it to an atom as the UI isn't generated if the parent is an atom -/datum/component/personal_crafting/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.not_incapacitated_turf_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/component/personal_crafting/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) cur_category = categories[1] if(islist(categories[cur_category])) @@ -326,7 +329,7 @@ cur_subcategory = subcats[1] else cur_subcategory = CAT_NONE - ui = new(user, src, ui_key, "PersonalCrafting", "Crafting Menu", 700, 800, master_ui, state) + ui = new(user, src, "PersonalCrafting") ui.open() /datum/component/personal_crafting/ui_data(mob/user) @@ -406,13 +409,8 @@ display_compact = !display_compact . = TRUE if("set_category") - if(!isnull(params["category"])) - cur_category = params["category"] - if(!isnull(params["subcategory"])) - if(params["subcategory"] == "0") - cur_subcategory = "" - else - cur_subcategory = params["subcategory"] + cur_category = params["category"] + cur_subcategory = params["subcategory"] || "" . = TRUE /datum/component/personal_crafting/proc/build_recipe_data(datum/crafting_recipe/R) diff --git a/code/datums/components/gps.dm b/code/datums/components/gps.dm index 200ec2b956b..c2b3ad1f30c 100644 --- a/code/datums/components/gps.dm +++ b/code/datums/components/gps.dm @@ -80,19 +80,15 @@ GLOBAL_LIST_EMPTY(GPS_list) to_chat(user, "[parent] is now tracking, and visible to other GPS devices.") tracking = TRUE -/datum/component/gps/item/ui_interact(mob/user, ui_key = "gps", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) // Remember to use the appropriate state. +/datum/component/gps/item/ui_interact(mob/user, datum/tgui/ui) if(emped) to_chat(user, "[parent] fizzles weakly.") return - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - // Variable window height, depending on how many GPS units there are - // to show, clamped to relatively safe range. - var/gps_window_height = clamp(325 + GLOB.GPS_list.len * 14, 325, 700) - ui = new(user, src, ui_key, "Gps", "Global Positioning System", 470, gps_window_height, master_ui, state) //width, height + ui = new(user, src, "Gps") ui.open() - - ui.set_autoupdate(state = updating) + ui.set_autoupdate(updating) /datum/component/gps/item/ui_data(mob/user) var/list/data = list() diff --git a/code/datums/components/uplink.dm b/code/datums/components/uplink.dm index 499f2db7fbe..4136237505d 100644 --- a/code/datums/components/uplink.dm +++ b/code/datums/components/uplink.dm @@ -120,12 +120,14 @@ // an unlocked uplink blocks also opening the PDA or headset menu return COMPONENT_NO_INTERACT -/datum/component/uplink/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.inventory_state) +/datum/component/uplink/ui_state(mob/user) + return GLOB.inventory_state + +/datum/component/uplink/ui_interact(mob/user, datum/tgui/ui) active = TRUE - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Uplink", name, 620, 580, master_ui, state) + ui = new(user, src, "Uplink", name) // This UI is only ever opened by one person, // and never is updated outside of user input. ui.set_autoupdate(FALSE) diff --git a/code/datums/spawners_menu.dm b/code/datums/spawners_menu.dm index 88ac3ef1382..95a7d8e6339 100644 --- a/code/datums/spawners_menu.dm +++ b/code/datums/spawners_menu.dm @@ -6,10 +6,13 @@ qdel(src) owner = new_owner -/datum/spawners_menu/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.observer_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/spawners_menu/ui_state(mob/user) + return GLOB.observer_state + +/datum/spawners_menu/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "SpawnersMenu", "Spawners Menu", 700, 600, master_ui, state) + ui = new(user, src, "SpawnersMenu") ui.open() /datum/spawners_menu/ui_data(mob/user) diff --git a/code/datums/wires/_wires.dm b/code/datums/wires/_wires.dm index 942c2ca4035..dcac1b70df7 100644 --- a/code/datums/wires/_wires.dm +++ b/code/datums/wires/_wires.dm @@ -215,11 +215,13 @@ return ..() return UI_CLOSE -/datum/wires/ui_interact(mob/user, ui_key = "wires", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/wires/ui_state(mob/user) + return GLOB.physical_state + +/datum/wires/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if (!ui) - ui = new(user, src, ui_key, "Wires", "[holder.name] Wires", 350, 150 + wires.len * 30, master_ui, state) + ui = new(user, src, "Wires", "[holder.name] Wires") ui.open() /datum/wires/ui_data(mob/user) diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 9bdc44bea4e..709677b5fd7 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -12,8 +12,6 @@ density = FALSE state_open = TRUE circuit = /obj/item/circuitboard/machine/sleeper - ui_x = 310 - ui_y = 465 var/efficiency = 1 var/min_health = -25 @@ -136,15 +134,15 @@ visible_message("[usr] pries open [src].", "You pry open [src].") open_machine() -/obj/machinery/sleeper/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.notcontained_state) +/obj/machinery/sleeper/ui_state(mob/user) + if(controls_inside) + return GLOB.notcontained_state + return GLOB.default_state - if(controls_inside && state == GLOB.notcontained_state) - state = GLOB.default_state // If it has a set of controls on the inside, make it actually controllable by the mob in it. - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/sleeper/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Sleeper", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Sleeper", name) ui.open() /obj/machinery/sleeper/AltClick(mob/user) @@ -287,8 +285,6 @@ idle_power_usage = 3000 circuit = /obj/item/circuitboard/machine/sleeper/party var/leddit = FALSE //Get it like reddit and lead alright fine - ui_x = 310 - ui_y = 400 controls_inside = TRUE possible_chems = list( diff --git a/code/game/machinery/_machinery.dm b/code/game/machinery/_machinery.dm index 50995a6a995..892cc4051e0 100644 --- a/code/game/machinery/_machinery.dm +++ b/code/game/machinery/_machinery.dm @@ -126,11 +126,8 @@ Class Procs: var/market_verb = "Customer" var/payment_department = ACCOUNT_ENG - // For storing and overriding ui id and dimensions + // For storing and overriding ui id var/tgui_id // ID of TGUI interface - var/ui_style // ID of custom TGUI style (optional) - var/ui_x // Default size of TGUI window, in pixels - var/ui_y /obj/machinery/Initialize() if(!armor) diff --git a/code/game/machinery/announcement_system.dm b/code/game/machinery/announcement_system.dm index 054e75b348f..84f82b165b2 100644 --- a/code/game/machinery/announcement_system.dm +++ b/code/game/machinery/announcement_system.dm @@ -93,13 +93,10 @@ GLOBAL_LIST_EMPTY(announcement_systems) for(var/channel in channels) radio.talk_into(src, message, channel) -//config stuff - -/obj/machinery/announcement_system/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - . = ..() - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/announcement_system/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AutomatedAnnouncement", "Automated Announcement System", 500, 225, master_ui, state) + ui = new(user, src, "AutomatedAnnouncement") ui.open() /obj/machinery/announcement_system/ui_data() diff --git a/code/game/machinery/bank_machine.dm b/code/game/machinery/bank_machine.dm index 1f3c57abcf0..9633ede69bb 100644 --- a/code/game/machinery/bank_machine.dm +++ b/code/game/machinery/bank_machine.dm @@ -3,8 +3,7 @@ desc = "A machine used to deposit and withdraw station funds." icon = 'goon/icons/obj/goon_terminals.dmi' idle_power_usage = 100 - ui_x = 335 - ui_y = 160 + var/siphoning = FALSE var/next_warning = 0 var/obj/item/radio/radio @@ -61,11 +60,10 @@ radio.talk_into(src, message, radio_channel) next_warning = world.time + minimum_time_between_warnings -/obj/machinery/computer/bank_machine/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/bank_machine/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "BankMachine", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "BankMachine", name) ui.open() /obj/machinery/computer/bank_machine/ui_data(mob/user) diff --git a/code/game/machinery/bounty_board.dm b/code/game/machinery/bounty_board.dm index 393bbf35c49..fdae8f94aa9 100644 --- a/code/game/machinery/bounty_board.dm +++ b/code/game/machinery/bounty_board.dm @@ -9,8 +9,6 @@ GLOBAL_LIST_EMPTY(request_list) desc = "Alows you to place requests for goods and services across the station, as well as pay those who actually did it." icon = 'icons/obj/terminals.dmi' icon_state = "request_kiosk" - ui_x = 550 - ui_y = 600 light_color = LIGHT_COLOR_GREEN ///Reference to the currently logged in user. var/datum/bank_account/current_user @@ -56,10 +54,10 @@ GLOBAL_LIST_EMPTY(request_list) new /obj/item/wallframe/bounty_board(loc) qdel(src) -/obj/machinery/bounty_board/ui_interact(mob/user, ui_key, datum/tgui/ui, force_open, datum/tgui/master_ui, datum/ui_state/state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/bounty_board/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "RequestKiosk", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "RequestKiosk", name) ui.open() /obj/machinery/bounty_board/ui_data(mob/user) diff --git a/code/game/machinery/computer/Operating.dm b/code/game/machinery/computer/Operating.dm index ddd91794a8a..8942f83e535 100644 --- a/code/game/machinery/computer/Operating.dm +++ b/code/game/machinery/computer/Operating.dm @@ -7,8 +7,6 @@ icon_screen = "crew" icon_keyboard = "med_key" circuit = /obj/item/circuitboard/computer/operating - ui_x = 350 - ui_y = 470 var/mob/living/carbon/human/patient var/obj/structure/table/optable/table @@ -63,10 +61,13 @@ sbed.op_computer = src break -/obj/machinery/computer/operating/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.not_incapacitated_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/operating/ui_state(mob/user) + return GLOB.not_incapacitated_state + +/obj/machinery/computer/operating/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "OperatingComputer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "OperatingComputer", name) ui.open() /obj/machinery/computer/operating/ui_data(mob/user) diff --git a/code/game/machinery/computer/aifixer.dm b/code/game/machinery/computer/aifixer.dm index 03f5138b9c8..5de7edc5410 100644 --- a/code/game/machinery/computer/aifixer.dm +++ b/code/game/machinery/computer/aifixer.dm @@ -6,8 +6,7 @@ icon_keyboard = "tech_key" icon_screen = "ai-fixer" light_color = LIGHT_COLOR_PINK - ui_x = 370 - ui_y = 360 + /// Variable containing transferred AI var/mob/living/silicon/ai/occupier /// Variable dictating if we are in the process of restoring the occupier AI @@ -22,11 +21,10 @@ else return ..() -/obj/machinery/computer/aifixer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/aifixer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AiRestorer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AiRestorer", name) ui.open() /obj/machinery/computer/aifixer/ui_data(mob/user) diff --git a/code/game/machinery/computer/apc_control.dm b/code/game/machinery/computer/apc_control.dm index b3b2c02a9ea..15c947f8c73 100644 --- a/code/game/machinery/computer/apc_control.dm +++ b/code/game/machinery/computer/apc_control.dm @@ -12,8 +12,6 @@ var/restoring = FALSE var/list/logs var/auth_id = "\[NULL\]:" - ui_x = 550 - ui_y = 500 /obj/machinery/computer/apc_control/Initialize(mapload, obj/item/circuitboard/C) . = ..() @@ -41,14 +39,13 @@ /obj/machinery/computer/apc_control/proc/check_apc(obj/machinery/power/apc/APC) return APC.z == z && !APC.malfhack && !APC.aidisabled && !(APC.obj_flags & EMAGGED) && !APC.machine_stat && !istype(APC.area, /area/ai_monitored) && !APC.area.outdoors -/obj/machinery/computer/apc_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) // Remember to use the appropriate state. +/obj/machinery/computer/apc_control/ui_interact(mob/user, datum/tgui/ui) operator = user - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ApcControl", "APC Controller", ui_x, ui_y, master_ui, state) + ui = new(user, src, "ApcControl") ui.open() - /obj/machinery/computer/apc_control/ui_data(mob/user) var/list/data = list() data["auth_id"] = auth_id diff --git a/code/game/machinery/computer/arena.dm b/code/game/machinery/computer/arena.dm index ed0ce112ad1..fd0236eb519 100644 --- a/code/game/machinery/computer/arena.dm +++ b/code/game/machinery/computer/arena.dm @@ -323,7 +323,7 @@ var/obj/item/reagent_containers/food/drinks/trophy/gold_cup/G = new(get_turf(L)) G.name = "[L.real_name]'s Trophy" -/obj/machinery/computer/arena/ui_interact(mob/user, ui_key, datum/tgui/ui, force_open, datum/tgui/master_ui, datum/ui_state/state) +/obj/machinery/computer/arena/ui_interact(mob/user) . = ..() var/list/dat = list() dat += "
Spawning is currently [ready_to_spawn ? "enabled" : "disabled"] Toggle
" diff --git a/code/game/machinery/computer/atmos_alert.dm b/code/game/machinery/computer/atmos_alert.dm index cb574e36c09..65cc6fc7f44 100644 --- a/code/game/machinery/computer/atmos_alert.dm +++ b/code/game/machinery/computer/atmos_alert.dm @@ -2,8 +2,6 @@ name = "atmospheric alert console" desc = "Used to monitor the station's air alarms." circuit = /obj/item/circuitboard/computer/atmos_alert - ui_x = 350 - ui_y = 300 icon_screen = "alert:0" icon_keyboard = "atmos_key" var/list/priority_alarms = list() @@ -21,11 +19,10 @@ SSradio.remove_object(src, receive_frequency) return ..() -/obj/machinery/computer/atmos_alert/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/atmos_alert/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AtmosAlertConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AtmosAlertConsole", name) ui.open() /obj/machinery/computer/atmos_alert/ui_data(mob/user) diff --git a/code/game/machinery/computer/atmos_control.dm b/code/game/machinery/computer/atmos_control.dm index 420e7e64ab7..cf1f2b89be1 100644 --- a/code/game/machinery/computer/atmos_control.dm +++ b/code/game/machinery/computer/atmos_control.dm @@ -92,8 +92,6 @@ GLOBAL_LIST_EMPTY(atmos_air_controllers) icon_screen = "tank" icon_keyboard = "atmos_key" circuit = /obj/item/circuitboard/computer/atmos_control - ui_x = 400 - ui_y = 925 var/frequency = FREQ_ATMOS_STORAGE var/list/sensors = list( @@ -124,11 +122,10 @@ GLOBAL_LIST_EMPTY(atmos_air_controllers) SSradio.remove_object(src, frequency) return ..() -/obj/machinery/computer/atmos_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/atmos_control/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AtmosControlConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AtmosControlConsole", name) ui.open() /obj/machinery/computer/atmos_control/ui_data(mob/user) @@ -169,16 +166,12 @@ GLOBAL_LIST_EMPTY(atmos_air_controllers) name = "Incinerator Air Control" sensors = list(ATMOS_GAS_MONITOR_SENSOR_INCINERATOR = "Incinerator Chamber") circuit = /obj/item/circuitboard/computer/atmos_control/incinerator - ui_x = 400 - ui_y = 300 //Toxins mix sensor only /obj/machinery/computer/atmos_control/toxinsmix name = "Toxins Mixing Air Control" sensors = list(ATMOS_GAS_MONITOR_SENSOR_TOXINS_LAB = "Toxins Mixing Chamber") circuit = /obj/item/circuitboard/computer/atmos_control/toxinsmix - ui_x = 400 - ui_y = 300 ///////////////////////////////////////////////////////////// // LARGE TANK CONTROL @@ -189,13 +182,9 @@ GLOBAL_LIST_EMPTY(atmos_air_controllers) var/output_tag frequency = FREQ_ATMOS_STORAGE circuit = /obj/item/circuitboard/computer/atmos_control/tank - var/list/input_info var/list/output_info - ui_x = 500 - ui_y = 315 - /obj/machinery/computer/atmos_control/tank/oxygen_tank name = "Oxygen Supply Control" input_tag = ATMOS_GAS_MONITOR_INPUT_O2 @@ -276,13 +265,6 @@ GLOBAL_LIST_EMPTY(atmos_air_controllers) for(var/obj/machinery/atmospherics/components/unary/vent_pump/U in devices) U.broadcast_status() -/obj/machinery/computer/atmos_control/tank/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "AtmosControlConsole", name, ui_x, ui_y, master_ui, state) - ui.open() - /obj/machinery/computer/atmos_control/tank/ui_data(mob/user) var/list/data = ..() data["tank"] = TRUE @@ -290,7 +272,6 @@ GLOBAL_LIST_EMPTY(atmos_air_controllers) data["inputRate"] = input_info ? input_info["volume_rate"] : 0 data["outputting"] = output_info ? output_info["power"] : FALSE data["outputPressure"] = output_info ? output_info["internal"] : 0 - return data /obj/machinery/computer/atmos_control/tank/ui_act(action, params) diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index 07f97e6b780..b8d3bb607b1 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -7,8 +7,6 @@ icon_keyboard = "security_key" circuit = /obj/item/circuitboard/computer/security light_color = LIGHT_COLOR_RED - ui_x = 870 - ui_y = 708 var/list/network = list("ss13") var/obj/machinery/camera/active_camera @@ -59,11 +57,9 @@ network -= i network += "[idnum][i]" -/obj/machinery/computer/security/ui_interact(\ - mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) +/obj/machinery/computer/security/ui_interact(mob/user, datum/tgui/ui) // Update UI - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) // Show static if can't use the camera if(!active_camera?.can_use()) show_camera_static() @@ -84,7 +80,7 @@ user.client.register_map_obj(plane) user.client.register_map_obj(cam_background) // Open UI - ui = new(user, src, ui_key, "CameraConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "CameraConsole", name) ui.open() /obj/machinery/computer/security/ui_data() diff --git a/code/game/machinery/computer/crew.dm b/code/game/machinery/computer/crew.dm index 199049ba6df..4033e425163 100644 --- a/code/game/machinery/computer/crew.dm +++ b/code/game/machinery/computer/crew.dm @@ -77,11 +77,10 @@ GLOBAL_DATUM_INIT(crewmonitor, /datum/crewmonitor, new) /datum/crewmonitor/Destroy() return ..() -/datum/crewmonitor/ui_interact(mob/user, ui_key = "crew", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/crewmonitor/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if (!ui) - ui = new(user, src, ui_key, "CrewConsole", "crew monitor", 800, 600 , master_ui, state) + ui = new(user, src, "CrewConsole") ui.open() /datum/crewmonitor/proc/show(mob/M, source) diff --git a/code/game/machinery/computer/dna_console.dm b/code/game/machinery/computer/dna_console.dm index 8b436b96380..384b37f9045 100644 --- a/code/game/machinery/computer/dna_console.dm +++ b/code/game/machinery/computer/dna_console.dm @@ -205,12 +205,7 @@ // already discovered mutations stored_research = SSresearch.science_tech -/obj/machinery/computer/scan_consolenew/examine(mob/user) - . = ..() - -/obj/machinery/computer/scan_consolenew/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - . = ..() - +/obj/machinery/computer/scan_consolenew/ui_interact(mob/user, datum/tgui/ui) // Most of ui_interact is spent setting variables for passing to the tgui // interface. // We can also do some general state processing here too as it's a good @@ -252,10 +247,9 @@ time_to_pulse = round((rad_pulse_timer - world.time)/10) // Attempt to update tgui ui, open and update if needed. - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "DnaConsole", name, 539, 710, master_ui, state) + ui = new(user, src, "DnaConsole") ui.open() /obj/machinery/computer/scan_consolenew/ui_data(mob/user) diff --git a/code/game/machinery/computer/launchpad_control.dm b/code/game/machinery/computer/launchpad_control.dm index ed5a031dba2..e7961c18ecd 100644 --- a/code/game/machinery/computer/launchpad_control.dm +++ b/code/game/machinery/computer/launchpad_control.dm @@ -4,8 +4,6 @@ icon_screen = "teleport" icon_keyboard = "teleport_key" circuit = /obj/item/circuitboard/computer/launchpad_console - ui_x = 475 - ui_y = 260 var/selected_id var/list/obj/machinery/launchpad/launchpads @@ -53,10 +51,10 @@ var/obj/machinery/launchpad/pad = launchpads[number] return pad -/obj/machinery/computer/launchpad/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/launchpad/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "LaunchpadConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "LaunchpadConsole", name) ui.open() /obj/machinery/computer/launchpad/ui_data(mob/user) diff --git a/code/game/machinery/computer/prisoner/gulag_teleporter.dm b/code/game/machinery/computer/prisoner/gulag_teleporter.dm index 6cb6a1d34ed..0a8d0dbb2b0 100644 --- a/code/game/machinery/computer/prisoner/gulag_teleporter.dm +++ b/code/game/machinery/computer/prisoner/gulag_teleporter.dm @@ -6,8 +6,6 @@ icon_keyboard = "security_key" req_access = list(ACCESS_ARMORY) circuit = /obj/item/circuitboard/computer/gulag_teleporter_console - ui_x = 350 - ui_y = 295 var/default_goal = 200 var/obj/machinery/gulag_teleporter/teleporter = null @@ -21,11 +19,10 @@ . = ..() scan_machinery() -/obj/machinery/computer/prisoner/gulag_teleporter_computer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/prisoner/gulag_teleporter_computer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "GulagTeleporterConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "GulagTeleporterConsole", name) ui.open() /obj/machinery/computer/prisoner/gulag_teleporter_computer/ui_data(mob/user) diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm index 7ebc5044402..83128b840af 100644 --- a/code/game/machinery/computer/robot.dm +++ b/code/game/machinery/computer/robot.dm @@ -6,8 +6,6 @@ req_access = list(ACCESS_ROBOTICS) circuit = /obj/item/circuitboard/computer/robotics light_color = LIGHT_COLOR_PINK - ui_x = 500 - ui_y = 460 /obj/machinery/computer/robotics/proc/can_control(mob/user, mob/living/silicon/robot/R) . = FALSE @@ -23,11 +21,10 @@ return return TRUE -/obj/machinery/computer/robotics/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/robotics/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "RoboticsControlConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "RoboticsControlConsole", name) ui.open() /obj/machinery/computer/robotics/ui_data(mob/user) diff --git a/code/game/machinery/computer/station_alert.dm b/code/game/machinery/computer/station_alert.dm index 1258463348d..839d339e5a7 100644 --- a/code/game/machinery/computer/station_alert.dm +++ b/code/game/machinery/computer/station_alert.dm @@ -4,8 +4,6 @@ icon_screen = "alert:0" icon_keyboard = "atmos_key" circuit = /obj/item/circuitboard/computer/stationalert - ui_x = 325 - ui_y = 500 var/alarms = list("Fire" = list(), "Atmosphere" = list(), "Power" = list()) light_color = LIGHT_COLOR_CYAN @@ -18,11 +16,10 @@ GLOB.alert_consoles -= src return ..() -/obj/machinery/computer/station_alert/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/station_alert/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "StationAlertConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "StationAlertConsole", name) ui.open() /obj/machinery/computer/station_alert/ui_data(mob/user) diff --git a/code/game/machinery/computer/teleporter.dm b/code/game/machinery/computer/teleporter.dm index 6be511f7851..9307a0781d5 100644 --- a/code/game/machinery/computer/teleporter.dm +++ b/code/game/machinery/computer/teleporter.dm @@ -5,8 +5,7 @@ icon_keyboard = "teleport_key" light_color = LIGHT_COLOR_BLUE circuit = /obj/item/circuitboard/computer/teleporter - ui_x = 470 - ui_y = 140 + var/regime_set = "Teleporter" var/id var/obj/machinery/teleport/station/power_station @@ -33,11 +32,10 @@ break return power_station -/obj/machinery/computer/teleporter/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/teleporter/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Teleporter", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Teleporter", name) ui.open() /obj/machinery/computer/teleporter/ui_data(mob/user) diff --git a/code/game/machinery/dance_machine.dm b/code/game/machinery/dance_machine.dm index 3d8f2e10fbb..4a1d449244a 100644 --- a/code/game/machinery/dance_machine.dm +++ b/code/game/machinery/dance_machine.dm @@ -6,8 +6,6 @@ verb_say = "states" density = TRUE req_access = list(ACCESS_BAR) - ui_x = 370 - ui_y = 313 var/active = FALSE var/list/rangers = list() var/stop = 0 @@ -100,11 +98,10 @@ return UI_CLOSE return ..() -/obj/machinery/jukebox/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/jukebox/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Jukebox", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Jukebox", name) ui.open() /obj/machinery/jukebox/ui_data(mob/user) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 33329319cfa..fd25404a677 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -1321,11 +1321,10 @@ else if(istype(note, /obj/item/photo)) return "photo" -/obj/machinery/door/airlock/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/door/airlock/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AiAirlock", name, 500, 390, master_ui, state) + ui = new(user, src, "AiAirlock", name) ui.open() return TRUE diff --git a/code/game/machinery/doors/airlock_electronics.dm b/code/game/machinery/doors/airlock_electronics.dm index ae8a069b332..c6e08b96c22 100644 --- a/code/game/machinery/doors/airlock_electronics.dm +++ b/code/game/machinery/doors/airlock_electronics.dm @@ -15,11 +15,13 @@ . = ..() . += "Has a neat selection menu for modifying airlock access levels." -/obj/item/electronics/airlock/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/electronics/airlock/ui_state(mob/user) + return GLOB.hands_state + +/obj/item/electronics/airlock/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AirlockElectronics", name, 420, 485, master_ui, state) + ui = new(user, src, "AirlockElectronics", name) ui.open() /obj/item/electronics/airlock/ui_static_data(mob/user) diff --git a/code/game/machinery/doors/brigdoors.dm b/code/game/machinery/doors/brigdoors.dm index 0729e909f9a..85d5f7803c8 100644 --- a/code/game/machinery/doors/brigdoors.dm +++ b/code/game/machinery/doors/brigdoors.dm @@ -37,8 +37,6 @@ maptext_height = 26 maptext_width = 32 maptext_y = -1 - ui_x = 300 - ui_y = 138 /obj/machinery/door_timer/Initialize() . = ..() @@ -142,11 +140,10 @@ . = new_time == timer_duration //return 1 on no change timer_duration = new_time -/obj/machinery/door_timer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/door_timer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "BrigTimer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "BrigTimer", name) ui.open() //icon update function diff --git a/code/game/machinery/doppler_array.dm b/code/game/machinery/doppler_array.dm index 2494dd6faa6..680a87b0637 100644 --- a/code/game/machinery/doppler_array.dm +++ b/code/game/machinery/doppler_array.dm @@ -7,8 +7,6 @@ icon_state = "tdoppler" density = TRUE verb_say = "states coldly" - ui_x = 500 - ui_y = 225 var/cooldown = 10 var/next_announce = 0 var/max_dist = 150 @@ -36,11 +34,10 @@ var/factual_radius = list() var/theory_radius = list() -/obj/machinery/doppler_array/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/doppler_array/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "TachyonArray", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "TachyonArray", name) ui.open() /obj/machinery/doppler_array/ui_data(mob/user) diff --git a/code/game/machinery/electrolyzer.dm b/code/game/machinery/electrolyzer.dm index aae3b8fece9..98900cfb68c 100644 --- a/code/game/machinery/electrolyzer.dm +++ b/code/game/machinery/electrolyzer.dm @@ -12,9 +12,8 @@ max_integrity = 250 armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 10) circuit = /obj/item/circuitboard/machine/electrolyzer - ui_x = 400 - ui_y = 305 - use_power = NO_POWER_USE /// We don't use area power, we always use the cell + /// We don't use area power, we always use the cell + use_power = NO_POWER_USE ///used to check if there is a cell in the machine var/obj/item/stock_parts/cell/cell ///check if the machine is on or off @@ -143,11 +142,13 @@ return return ..() -/obj/machinery/electrolyzer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/electrolyzer/ui_state(mob/user) + return GLOB.physical_state + +/obj/machinery/electrolyzer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Electrolyzer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Electrolyzer", name) ui.open() /obj/machinery/electrolyzer/ui_data() diff --git a/code/game/machinery/gulag_item_reclaimer.dm b/code/game/machinery/gulag_item_reclaimer.dm index 98f9a304f72..eae7115e340 100644 --- a/code/game/machinery/gulag_item_reclaimer.dm +++ b/code/game/machinery/gulag_item_reclaimer.dm @@ -8,8 +8,7 @@ use_power = IDLE_POWER_USE idle_power_usage = 100 active_power_usage = 2500 - ui_x = 325 - ui_y = 400 + var/list/stored_items = list() var/obj/machinery/gulag_teleporter/linked_teleporter = null @@ -27,11 +26,10 @@ req_access = list() obj_flags |= EMAGGED -/obj/machinery/gulag_item_reclaimer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/gulag_item_reclaimer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "GulagItemReclaimer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "GulagItemReclaimer", name) ui.open() /obj/machinery/gulag_item_reclaimer/ui_data(mob/user) diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm index 50841416bf1..529b11b8f4a 100644 --- a/code/game/machinery/hologram.dm +++ b/code/game/machinery/hologram.dm @@ -41,8 +41,6 @@ Possible to do for anyone motivated enough: max_integrity = 300 armor = list("melee" = 50, "bullet" = 20, "laser" = 20, "energy" = 20, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 0) circuit = /obj/item/circuitboard/machine/holopad - ui_x = 440 - ui_y = 245 /// List of living mobs that use the holopad var/list/masters /// Holoray-mob link @@ -208,11 +206,10 @@ obj/machinery/holopad/secure/Initialize() return UI_CLOSE return ..() -/obj/machinery/holopad/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/holopad/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Holopad", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Holopad", name) ui.open() /obj/machinery/holopad/ui_data(mob/user) diff --git a/code/game/machinery/hypnochair.dm b/code/game/machinery/hypnochair.dm index 670d8f758c3..608ba529eb7 100644 --- a/code/game/machinery/hypnochair.dm +++ b/code/game/machinery/hypnochair.dm @@ -6,14 +6,12 @@ circuit = /obj/item/circuitboard/machine/hypnochair density = TRUE opacity = 0 - ui_x = 375 - ui_y = 480 + var/mob/living/carbon/victim = null ///Keeps track of the victim to apply effects if it teleports away var/interrogating = FALSE ///Is the device currently interrogating someone? var/start_time = 0 ///Time when the interrogation was started, to calculate effect in case of interruption var/trigger_phrase = "" ///Trigger phrase to implant var/timerid = 0 ///Timer ID for interrogations - var/message_cooldown = 0 ///Cooldown for breakout message /obj/machinery/hypnochair/Initialize() @@ -25,19 +23,19 @@ if(!occupant && default_deconstruction_screwdriver(user, icon_state, icon_state, I)) update_icon() return - if(default_pry_open(I)) return - if(default_deconstruction_crowbar(I)) return - return ..() -/obj/machinery/hypnochair/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.notcontained_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/hypnochair/ui_state(mob/user) + return GLOB.notcontained_state + +/obj/machinery/hypnochair/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "HypnoChair", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "HypnoChair", name) ui.open() /obj/machinery/hypnochair/ui_data() diff --git a/code/game/machinery/launch_pad.dm b/code/game/machinery/launch_pad.dm index 23e1b9dcc1c..5e3fc20ebc6 100644 --- a/code/game/machinery/launch_pad.dm +++ b/code/game/machinery/launch_pad.dm @@ -321,12 +321,15 @@ ui_interact(user) to_chat(user, "[src] projects a display onto your retina.") -/obj/item/launchpad_remote/ui_interact(mob/user, ui_key = "launchpad_remote", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "LaunchpadRemote", "Briefcase Launchpad Remote", 300, 240, master_ui, state) //width, height - ui.open() +/obj/item/launchpad_remote/ui_state(mob/user) + return GLOB.inventory_state + +/obj/item/launchpad_remote/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) + if(!ui) + ui = new(user, src, "LaunchpadRemote") + ui.open() ui.set_autoupdate(TRUE) /obj/item/launchpad_remote/ui_data(mob/user) diff --git a/code/game/machinery/medical_kiosk.dm b/code/game/machinery/medical_kiosk.dm index c24ea35ba7b..b474a80d7fe 100644 --- a/code/game/machinery/medical_kiosk.dm +++ b/code/game/machinery/medical_kiosk.dm @@ -153,7 +153,7 @@ else . += "\The [src] has its scanner clipped to the side. Alt-Click to remove." -/obj/machinery/medical_kiosk/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) +/obj/machinery/medical_kiosk/ui_interact(mob/user, datum/tgui/ui) var/patient_distance = 0 if(!ishuman(user)) to_chat(user, "[src] is unable to interface with non-humanoids!") @@ -169,10 +169,9 @@ say("Patient out of range. Resetting biometrics.") clearScans() return - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "MedicalKiosk", name, 575, 420, master_ui, state) + ui = new(user, src, "MedicalKiosk", name) ui.open() icon_state = "kiosk_off" RefreshParts() diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index 0cbde19a6df..068c851baef 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -29,8 +29,6 @@ max_integrity = 160 //the turret's health integrity_failure = 0.5 armor = list("melee" = 50, "bullet" = 30, "laser" = 30, "energy" = 30, "bomb" = 30, "bio" = 0, "rad" = 0, "fire" = 90, "acid" = 90) - ui_x = 305 - ui_y = 300 /// Base turret icon state var/base_icon_state = "standard" /// Scan range of the turret for locating targets @@ -192,11 +190,10 @@ remove_control() return ..() -/obj/machinery/porta_turret/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/porta_turret/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "PortableTurret", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "PortableTurret", name) ui.open() /obj/machinery/porta_turret/ui_data(mob/user) @@ -831,8 +828,6 @@ density = FALSE req_access = list(ACCESS_AI_UPLOAD) resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - ui_x = 305 - ui_y = 172 /// Variable dictating if linked turrets are active and will shoot targets var/enabled = TRUE /// Variable dictating if linked turrets will shoot lethal projectiles @@ -924,11 +919,10 @@ else to_chat(user, "There seems to be a firewall preventing you from accessing this device!") -/obj/machinery/turretid/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/turretid/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "TurretControl", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "TurretControl", name) ui.open() /obj/machinery/turretid/ui_data(mob/user) @@ -1063,7 +1057,6 @@ /obj/machinery/porta_turret/lasertag req_access = list(ACCESS_MAINT_TUNNELS, ACCESS_THEATRE) turret_flags = TURRET_FLAG_AUTH_WEAPONS - ui_y = 115 var/team_color /obj/machinery/porta_turret/lasertag/assess_perp(mob/living/carbon/human/perp) diff --git a/code/game/machinery/roulette_machine.dm b/code/game/machinery/roulette_machine.dm index 181b92a9ed7..e217aea39de 100644 --- a/code/game/machinery/roulette_machine.dm +++ b/code/game/machinery/roulette_machine.dm @@ -29,8 +29,6 @@ idle_power_usage = 10 active_power_usage = 100 max_integrity = 500 - ui_x = 603 - ui_y = 475 armor = list("melee" = 45, "bullet" = 30, "laser" = 30, "energy" = 30, "bomb" = 10, "bio" = 30, "rad" = 30, "fire" = 30, "acid" = 30) var/static/list/numbers = list("0" = "green", "1" = "red", "3" = "red", "5" = "red", "7" = "red", "9" = "red", "12" = "red", "14" = "red", "16" = "red",\ "18" = "red", "19" = "red", "21" = "red", "23" = "red", "25" = "red", "27" = "red", "30" = "red", "32" = "red", "34" = "red", "36" = "red",\ @@ -60,12 +58,12 @@ prize_theft(0.05) . = ..() -/obj/machinery/roulette/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) +/obj/machinery/roulette/ui_interact(mob/user, datum/tgui/ui) if(machine_stat & MAINT) return - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Roulette", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Roulette", name) ui.open() /obj/machinery/roulette/ui_data(mob/user) diff --git a/code/game/machinery/scan_gate.dm b/code/game/machinery/scan_gate.dm index 334557a814a..d590d2967c8 100644 --- a/code/game/machinery/scan_gate.dm +++ b/code/game/machinery/scan_gate.dm @@ -26,8 +26,6 @@ use_power = IDLE_POWER_USE idle_power_usage = 50 circuit = /obj/item/circuitboard/machine/scanner_gate - ui_x = 400 - ui_y = 300 var/scanline_timer var/next_beep = 0 //avoids spam @@ -180,11 +178,10 @@ return FALSE return ..() -/obj/machinery/scanner_gate/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/scanner_gate/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ScannerGate", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ScannerGate", name) ui.open() /obj/machinery/scanner_gate/ui_data() diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index 7096ca25f8c..58c210d472d 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -13,9 +13,8 @@ max_integrity = 250 armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 10) circuit = /obj/item/circuitboard/machine/space_heater - ui_x = 400 - ui_y = 305 - use_power = NO_POWER_USE /// We don't use area power, we always use the cell + /// We don't use area power, we always use the cell + use_power = NO_POWER_USE var/obj/item/stock_parts/cell/cell var/on = FALSE var/mode = HEATER_MODE_STANDBY @@ -170,11 +169,10 @@ else return ..() -/obj/machinery/space_heater/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/space_heater/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "SpaceHeater", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "SpaceHeater", name) ui.open() /obj/machinery/space_heater/ui_data() diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index 79c2c4e04cc..f7bf7ec4f89 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -9,8 +9,6 @@ power_channel = AREA_USAGE_EQUIP density = TRUE max_integrity = 250 - ui_x = 400 - ui_y = 305 var/obj/item/clothing/suit/space/suit = null var/obj/item/clothing/head/helmet/space/helmet = null @@ -434,11 +432,13 @@ visible_message("[usr] pries open \the [src].", "You pry open \the [src].") open_machine() -/obj/machinery/suit_storage_unit/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.notcontained_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/suit_storage_unit/ui_state(mob/user) + return GLOB.notcontained_state + +/obj/machinery/suit_storage_unit/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "SuitStorageUnit", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "SuitStorageUnit", name) ui.open() /obj/machinery/suit_storage_unit/ui_data() diff --git a/code/game/mecha/mech_bay.dm b/code/game/mecha/mech_bay.dm index 36f17f281c1..8803d198077 100644 --- a/code/game/mecha/mech_bay.dm +++ b/code/game/mecha/mech_bay.dm @@ -86,15 +86,13 @@ icon_screen = "recharge_comp" icon_keyboard = "rd_key" circuit = /obj/item/circuitboard/computer/mech_bay_power_console - ui_x = 400 - ui_y = 200 var/obj/machinery/mech_bay_recharge_port/recharge_port light_color = LIGHT_COLOR_PINK -/obj/machinery/computer/mech_bay_power_console/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/mech_bay_power_console/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "MechBayPowerConsole", "Mech Bay Power Control Console", ui_x, ui_y, master_ui, state) + ui = new(user, src, "MechBayPowerConsole", name) ui.open() /obj/machinery/computer/mech_bay_power_console/ui_act(action, params) diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 231b649be2e..d45ee34a82c 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -258,7 +258,7 @@ /obj/machinery/mecha_part_fabricator/proc/get_construction_time_w_coeff(datum/design/D, roundto = 1) //aran return round(initial(D.construction_time)*time_coeff, roundto) -/obj/machinery/mecha_part_fabricator/ui_interact(mob/user as mob) +/obj/machinery/mecha_part_fabricator/ui_interact(mob/user) . = ..() var/dat, left_part user.set_machine(src) diff --git a/code/game/mecha/mecha_control_console.dm b/code/game/mecha/mecha_control_console.dm index c7db051331b..50d18c6fda7 100644 --- a/code/game/mecha/mecha_control_console.dm +++ b/code/game/mecha/mecha_control_console.dm @@ -5,14 +5,11 @@ icon_keyboard = "tech_key" req_access = list(ACCESS_ROBOTICS) circuit = /obj/item/circuitboard/computer/mecha_control - ui_x = 500 - ui_y = 500 -/obj/machinery/computer/mecha/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/mecha/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ExosuitControlConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ExosuitControlConsole", name) ui.open() /obj/machinery/computer/mecha/ui_data(mob/user) diff --git a/code/game/objects/items/RPD.dm b/code/game/objects/items/RPD.dm index 73e8b70aa1a..f1aec586129 100644 --- a/code/game/objects/items/RPD.dm +++ b/code/game/objects/items/RPD.dm @@ -237,18 +237,15 @@ GLOBAL_LIST_INIT(transit_tube_recipes, list( playsound(get_turf(user), 'sound/items/deconstruct.ogg', 50, TRUE) return(BRUTELOSS) -/obj/item/pipe_dispenser/ui_base_html(html) - var/datum/asset/spritesheet/assets = get_asset_datum(/datum/asset/spritesheet/pipes) - . = replacetext(html, "", assets.css_tag()) +/obj/item/pipe_dispenser/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/spritesheet/pipes), + ) -/obj/item/pipe_dispenser/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/pipe_dispenser/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - var/datum/asset/assets = get_asset_datum(/datum/asset/spritesheet/pipes) - assets.send(user) - - ui = new(user, src, ui_key, "RapidPipeDispenser", name, 425, 515, master_ui, state) + ui = new(user, src, "RapidPipeDispenser", name) ui.open() /obj/item/pipe_dispenser/ui_data(mob/user) diff --git a/code/game/objects/items/airlock_painter.dm b/code/game/objects/items/airlock_painter.dm index 35d331e0207..1df97ee2ab9 100644 --- a/code/game/objects/items/airlock_painter.dm +++ b/code/game/objects/items/airlock_painter.dm @@ -191,10 +191,10 @@ stored_decal_total = "[stored_decal][yellow_fix][stored_color]" return -/obj/item/airlock_painter/decal/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/airlock_painter/decal/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "DecalPainter", name, 500, 400, master_ui, state) + ui = new(user, src, "DecalPainter", name) ui.open() /obj/item/airlock_painter/decal/ui_data(mob/user) diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index aa3c9c6a5e6..6e2d6dfe79a 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -144,13 +144,15 @@ to_chat(user, "There is not enough of [src] left!") . = TRUE -/obj/item/toy/crayon/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - // tgui is a plague upon this codebase +/obj/item/toy/crayon/ui_state(mob/user) + return GLOB.hands_state - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/toy/crayon/ui_interact(mob/user, datum/tgui/ui) + // tgui is a plague upon this codebase + // no u + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Crayon", name, 600, 600, - master_ui, state) + ui = new(user, src, "Crayon", name) ui.open() /obj/item/toy/crayon/spraycan/AltClick(mob/user) diff --git a/code/game/objects/items/devices/aicard.dm b/code/game/objects/items/devices/aicard.dm index a01112e3deb..a938d618b1a 100644 --- a/code/game/objects/items/devices/aicard.dm +++ b/code/game/objects/items/devices/aicard.dm @@ -55,11 +55,13 @@ name = initial(name) icon_state = initial(icon_state) -/obj/item/aicard/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/aicard/ui_state(mob/user) + return GLOB.hands_state + +/obj/item/aicard/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Intellicard", name, 500, 500, master_ui, state) + ui = new(user, src, "Intellicard", name) ui.open() /obj/item/aicard/ui_data() diff --git a/code/game/objects/items/devices/portable_chem_mixer.dm b/code/game/objects/items/devices/portable_chem_mixer.dm index 01bbd3d47e3..5f600721216 100644 --- a/code/game/objects/items/devices/portable_chem_mixer.dm +++ b/code/game/objects/items/devices/portable_chem_mixer.dm @@ -9,14 +9,12 @@ equip_sound = 'sound/items/equip/toolbelt_equip.ogg' custom_price = 2000 custom_premium_price = 2000 - var/ui_x = 645 ///tgui window width - var/ui_y = 550 ///tgui window height var/obj/item/reagent_containers/beaker = null ///Creating an empty slot for a beaker that can be added to dispense into var/amount = 30 ///The amount of reagent that is to be dispensed currently var/anomaly_core_present = FALSE ///TRUE if an anomaly core has been added - + var/list/dispensable_reagents = list() ///List in which all currently dispensable reagents go /obj/item/storage/portable_chem_mixer/ComponentInitialize() @@ -146,7 +144,7 @@ to_chat(user, "The portable chemical mixer is currently open and its contents can be accessed.") return return - + /obj/item/storage/portable_chem_mixer/MouseDrop(obj/over_object) . = ..() if(ismob(loc)) @@ -155,13 +153,13 @@ var/obj/screen/inventory/hand/H = over_object M.putItemFromInventoryInHandIfPossible(src, H.held_index) -/obj/item/storage/portable_chem_mixer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/storage/portable_chem_mixer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "PortableChemMixer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "PortableChemMixer", name) if(user.hallucinating()) - ui.set_autoupdate(FALSE) //to not ruin the immersion by constantly changing the fake chemicals + // to not ruin the immersion by constantly changing the fake chemicals + ui.set_autoupdate(FALSE) ui.open() /obj/item/storage/portable_chem_mixer/ui_data(mob/user) @@ -215,7 +213,7 @@ source.trans_to(beaker, to_transfer) actual -= to_transfer if (actual <= 0) - break + break . = TRUE if("remove") var/amount = text2num(params["amount"]) diff --git a/code/game/objects/items/devices/radio/electropack.dm b/code/game/objects/items/devices/radio/electropack.dm index 03de2c71cb6..79d54c7ac97 100644 --- a/code/game/objects/items/devices/radio/electropack.dm +++ b/code/game/objects/items/devices/radio/electropack.dm @@ -10,8 +10,7 @@ slot_flags = ITEM_SLOT_BACK w_class = WEIGHT_CLASS_HUGE custom_materials = list(/datum/material/iron=10000, /datum/material/glass=2500) - var/ui_x = 260 - var/ui_y = 137 + var/on = TRUE var/code = 2 var/frequency = FREQ_ELECTROPACK @@ -85,11 +84,13 @@ frequency = new_frequency SSradio.add_object(src, frequency, RADIO_SIGNALER) -/obj/item/electropack/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/electropack/ui_state(mob/user) + return GLOB.hands_state + +/obj/item/electropack/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Electropack", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Electropack", name) ui.open() /obj/item/electropack/ui_data(mob/user) diff --git a/code/game/objects/items/devices/radio/intercom.dm b/code/game/objects/items/devices/radio/intercom.dm index 3b11e9dce53..15a899ba392 100644 --- a/code/game/objects/items/devices/radio/intercom.dm +++ b/code/game/objects/items/devices/radio/intercom.dm @@ -64,9 +64,8 @@ return interact(user) -/obj/item/radio/intercom/interact(mob/user) - ..() - ui_interact(user, state = GLOB.default_state) +/obj/item/radio/intercom/ui_state(mob/user) + return GLOB.default_state /obj/item/radio/intercom/can_receive(freq, level) if(!on) diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index eff3fae11f1..231b386ad1a 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -109,19 +109,15 @@ else ..() -/obj/item/radio/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.inventory_state) - . = ..() - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/radio/ui_state(mob/user) + return GLOB.inventory_state + +/obj/item/radio/ui_interact(mob/user, datum/tgui/ui, datum/ui_state/state) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - var/ui_width = 360 - var/ui_height = 106 - if(subspace_transmission) - if (channels.len > 0) - ui_height += 6 + channels.len * 21 - else - ui_height += 24 - ui = new(user, src, ui_key, "Radio", name, ui_width, ui_height, master_ui, state) + ui = new(user, src, "Radio", name) + if(state) + ui.set_state(state) ui.open() /obj/item/radio/ui_data(mob/user) diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index c85cd7ebde6..5916a196e74 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -70,8 +70,6 @@ effective or pretty fucking useless. /obj/item/healthanalyzer/rad_laser custom_materials = list(/datum/material/iron=400) - var/ui_x = 320 - var/ui_y = 335 var/irradiate = TRUE var/stealth = FALSE var/used = FALSE // is it cooling down? @@ -111,11 +109,13 @@ effective or pretty fucking useless. /obj/item/healthanalyzer/rad_laser/interact(mob/user) ui_interact(user) -/obj/item/healthanalyzer/rad_laser/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/healthanalyzer/rad_laser/ui_state(mob/user) + return GLOB.hands_state + +/obj/item/healthanalyzer/rad_laser/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "RadioactiveMicrolaser", "Radioactive Microlaser", ui_x, ui_y, master_ui, state) + ui = new(user, src, "RadioactiveMicrolaser") ui.open() /obj/item/healthanalyzer/rad_laser/ui_data(mob/user) diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm index b8e4455226c..cc26d390ee2 100644 --- a/code/game/objects/items/devices/transfer_valve.dm +++ b/code/game/objects/items/devices/transfer_valve.dm @@ -7,8 +7,7 @@ righthand_file = 'icons/mob/inhands/weapons/bombs_righthand.dmi' desc = "Regulates the transfer of air between two tanks." w_class = WEIGHT_CLASS_BULKY - var/ui_x = 310 - var/ui_y = 320 + var/obj/item/tank/tank_one var/obj/item/tank/tank_two var/obj/item/assembly/attached_device @@ -193,11 +192,13 @@ /obj/item/transfer_valve/proc/c_state() return -/obj/item/transfer_valve/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/transfer_valve/ui_state(mob/user) + return GLOB.hands_state + +/obj/item/transfer_valve/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "TransferValve", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "TransferValve", name) ui.open() /obj/item/transfer_valve/ui_data(mob/user) diff --git a/code/game/objects/items/eightball.dm b/code/game/objects/items/eightball.dm index 775fdd04468..8c34d935294 100644 --- a/code/game/objects/items/eightball.dm +++ b/code/game/objects/items/eightball.dm @@ -192,11 +192,13 @@ return top_vote -/obj/item/toy/eightball/haunted/ui_interact(mob/user, ui_key="main", datum/tgui/ui=null, force_open=0, datum/tgui/master_ui=null, datum/ui_state/state = GLOB.always_state) +/obj/item/toy/eightball/haunted/ui_state(mob/user) + return GLOB.observer_state - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/toy/eightball/haunted/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "EightBallVote", name, 400, 600, master_ui, state) + ui = new(user, src, "EightBallVote", name) ui.open() /obj/item/toy/eightball/haunted/ui_data(mob/user) diff --git a/code/game/objects/items/implants/implant_misc.dm b/code/game/objects/items/implants/implant_misc.dm index baf6bb3966d..87c11c54507 100644 --- a/code/game/objects/items/implants/implant_misc.dm +++ b/code/game/objects/items/implants/implant_misc.dm @@ -93,7 +93,7 @@ /obj/item/implant/radio/activate() . = ..() // needs to be GLOB.deep_inventory_state otherwise it won't open - radio.ui_interact(usr, "main", null, FALSE, null, GLOB.deep_inventory_state) + radio.ui_interact(usr, state = GLOB.deep_inventory_state) /obj/item/implant/radio/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/implants/implantchair.dm b/code/game/objects/items/implants/implantchair.dm index d42d345dfbb..50707e4e93d 100644 --- a/code/game/objects/items/implants/implantchair.dm +++ b/code/game/objects/items/implants/implantchair.dm @@ -5,8 +5,6 @@ icon_state = "implantchair" density = TRUE opacity = 0 - ui_x = 375 - ui_y = 280 var/ready = TRUE var/replenishing = FALSE @@ -28,14 +26,15 @@ open_machine() update_icon() +/obj/machinery/implantchair/ui_state(mob/user) + return GLOB.notcontained_state -/obj/machinery/implantchair/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.notcontained_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/implantchair/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "implantchair", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ImplantChair", name) ui.open() - /obj/machinery/implantchair/ui_data() var/list/data = list() data["occupied"] = occupant ? 1 : 0 diff --git a/code/game/objects/items/tanks/tanks.dm b/code/game/objects/items/tanks/tanks.dm index daad6f7e2e2..ef7cb1e97c9 100644 --- a/code/game/objects/items/tanks/tanks.dm +++ b/code/game/objects/items/tanks/tanks.dm @@ -142,11 +142,13 @@ else . = ..() -/obj/item/tank/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/tank/ui_state(mob/user) + return GLOB.hands_state + +/obj/item/tank/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Tank", name, 400, 120, master_ui, state) + ui = new(user, src, "Tank", name) ui.open() /obj/item/tank/ui_data(mob/user) diff --git a/code/game/objects/items/teleportation.dm b/code/game/objects/items/teleportation.dm index 56f6f11e3d9..dab0204bf57 100644 --- a/code/game/objects/items/teleportation.dm +++ b/code/game/objects/items/teleportation.dm @@ -26,10 +26,10 @@ custom_materials = list(/datum/material/iron=400) var/tracking_range = 20 -/obj/item/locator/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/locator/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "BluespaceLocator", name, 300, 300, master_ui, state) + ui = new(user, src, "BluespaceLocator", name) ui.open() /obj/item/locator/ui_data(mob/user) diff --git a/code/game/objects/structures/artstuff.dm b/code/game/objects/structures/artstuff.dm index d72f5634f29..36fd5226951 100644 --- a/code/game/objects/structures/artstuff.dm +++ b/code/game/objects/structures/artstuff.dm @@ -45,8 +45,6 @@ var/height = 11 var/list/grid var/canvas_color = "#ffffff" //empty canvas color - var/ui_x = 400 - var/ui_y = 400 var/used = FALSE var/painting_name //Painting name, this is set after framing. var/finalized = FALSE //Blocks edits @@ -75,12 +73,16 @@ . = ..() ui_interact(user) -/obj/item/canvas/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) +/obj/item/canvas/ui_state(mob/user) + if(finalized) + return GLOB.physical_obscured_state + else + return GLOB.default_state - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/canvas/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Canvas", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Canvas", name) ui.set_autoupdate(FALSE) ui.open() @@ -190,8 +192,6 @@ icon_state = "19x19" width = 19 height = 19 - ui_x = 600 - ui_y = 600 pixel_x = 6 pixel_y = 9 framed_offset_x = 8 @@ -201,8 +201,6 @@ icon_state = "23x19" width = 23 height = 19 - ui_x = 800 - ui_y = 600 pixel_x = 4 pixel_y = 10 framed_offset_x = 6 @@ -212,8 +210,6 @@ icon_state = "23x23" width = 23 height = 23 - ui_x = 800 - ui_y = 800 pixel_x = 5 pixel_y = 9 framed_offset_x = 5 @@ -263,7 +259,7 @@ /obj/structure/sign/painting/examine(mob/user) . = ..() if(C) - C.ui_interact(user,state = GLOB.physical_obscured_state) + C.ui_interact(user) /obj/structure/sign/painting/wirecutter_act(mob/living/user, obj/item/I) . = ..() diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index 53319850cf8..fc9365abe5f 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -398,11 +398,10 @@ src.icon = I return -/obj/structure/displaycase/forsale/ui_interact(mob/user, ui_key, datum/tgui/ui, force_open, datum/tgui/master_ui, datum/ui_state/state) - . = ..() - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/structure/displaycase/forsale/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Vendatray", name, 300, 270, master_ui, state) + ui = new(user, src, "Vendatray", name) ui.set_autoupdate(FALSE) viewing_ui[user] = ui ui.open() diff --git a/code/game/objects/structures/tank_dispenser.dm b/code/game/objects/structures/tank_dispenser.dm index 1245b0cbc2e..6b5e24089d4 100644 --- a/code/game/objects/structures/tank_dispenser.dm +++ b/code/game/objects/structures/tank_dispenser.dm @@ -67,11 +67,13 @@ to_chat(user, "You put [I] in [src].") update_icon() -/obj/structure/tank_dispenser/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/structure/tank_dispenser/ui_state(mob/user) + return GLOB.physical_state + +/obj/structure/tank_dispenser/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "TankDispenser", name, 275, 103, master_ui, state) + ui = new(user, src, "TankDispenser", name) ui.open() /obj/structure/tank_dispenser/ui_data(mob/user) diff --git a/code/game/objects/structures/votingbox.dm b/code/game/objects/structures/votingbox.dm index 651ad34682b..4416a09e36a 100644 --- a/code/game/objects/structures/votingbox.dm +++ b/code/game/objects/structures/votingbox.dm @@ -35,7 +35,7 @@ ..() ui_interact(user) -/obj/structure/votebox/ui_interact(mob/user, ui_key, datum/tgui/ui, force_open, datum/tgui/master_ui, datum/ui_state/state) +/obj/structure/votebox/ui_interact(mob/user) . = ..() var/list/dat = list() diff --git a/code/modules/NTNet/relays.dm b/code/modules/NTNet/relays.dm index 6289158901e..0fbb9d0bc0b 100644 --- a/code/modules/NTNet/relays.dm +++ b/code/modules/NTNet/relays.dm @@ -9,8 +9,6 @@ icon_state = "bus" density = TRUE circuit = /obj/item/circuitboard/machine/ntnet_relay - ui_x = 400 - ui_y = 300 var/datum/ntnet/NTNet = null // This is mostly for backwards reference and to allow varedit modifications from ingame. var/enabled = 1 // Set to 0 if the relay was turned off @@ -64,15 +62,12 @@ SSnetworks.station_network.add_log("Quantum relay switched from overload recovery mode to normal operation mode.") ..() -/obj/machinery/ntnet_relay/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - +/obj/machinery/ntnet_relay/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "NtnetRelay", "NTNet Quantum Relay", ui_x, ui_y, master_ui, state) + ui = new(user, src, "NtnetRelay") ui.open() - /obj/machinery/ntnet_relay/ui_data(mob/user) var/list/data = list() data["enabled"] = enabled @@ -81,7 +76,6 @@ data["dos_crashed"] = dos_failure return data - /obj/machinery/ntnet_relay/ui_act(action, params) if(..()) return diff --git a/code/modules/admin/skill_panel.dm b/code/modules/admin/skill_panel.dm index 7fc621ac213..5cffd773e9a 100644 --- a/code/modules/admin/skill_panel.dm +++ b/code/modules/admin/skill_panel.dm @@ -11,15 +11,17 @@ var/mob/userMob = user holder = userMob.client //if its a mob, assign the mob's client to holder -/datum/skill_panel/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, \ -force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.admin_state)//ui_interact is called when the client verb is called. - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/skill_panel/ui_state(mob/user) + return GLOB.admin_state + +/datum/skill_panel/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "SkillPanel", "Manage Skills", 600, 500, master_ui, state) + ui = new(user, src, "SkillPanel") ui.open() /datum/skill_panel/ui_data(mob/user) //Sends info about the skills to UI - . = list() + . = list() for (var/type in GLOB.skill_types) var/datum/skill/S = GetSkillRef(type) var/lvl_num = targetmind.get_skill_level(type) diff --git a/code/modules/admin/verbs/borgpanel.dm b/code/modules/admin/verbs/borgpanel.dm index e9d1bc3d83f..03f5ad9a79e 100644 --- a/code/modules/admin/verbs/borgpanel.dm +++ b/code/modules/admin/verbs/borgpanel.dm @@ -25,18 +25,18 @@ if(!istype(to_borg)) qdel(src) CRASH("Borg panel is only available for borgs") - user = CLIENT_FROM_VAR(to_user) - if (!user) CRASH("Borg panel attempted to open to a mob without a client") - borg = to_borg -/datum/borgpanel/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.admin_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/borgpanel/ui_state(mob/user) + return GLOB.admin_state + +/datum/borgpanel/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "BorgPanel", "Borg Panel", 700, 700, master_ui, state) + ui = new(user, src, "BorgPanel") ui.open() /datum/borgpanel/ui_data(mob/user) diff --git a/code/modules/antagonists/abductor/machinery/console.dm b/code/modules/antagonists/abductor/machinery/console.dm index 9573380f085..29d998e709b 100644 --- a/code/modules/antagonists/abductor/machinery/console.dm +++ b/code/modules/antagonists/abductor/machinery/console.dm @@ -17,8 +17,6 @@ icon = 'icons/obj/abductor.dmi' icon_state = "console" density = TRUE - ui_x = 600 - ui_y = 532 var/obj/item/abductor/gizmo/gizmo var/obj/item/clothing/suit/armor/abductor/vest/vest var/obj/machinery/abductor/experiment/experiment @@ -62,11 +60,13 @@ return UI_CLOSE return ..() -/obj/machinery/abductor/console/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/abductor/console/ui_state(mob/user) + return GLOB.physical_state + +/obj/machinery/abductor/console/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AbductorConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AbductorConsole", name) ui.open() /obj/machinery/abductor/console/ui_static_data(mob/user) diff --git a/code/modules/antagonists/abductor/machinery/dispenser.dm b/code/modules/antagonists/abductor/machinery/dispenser.dm index ea0cece97c4..f5bc0946e66 100644 --- a/code/modules/antagonists/abductor/machinery/dispenser.dm +++ b/code/modules/antagonists/abductor/machinery/dispenser.dm @@ -4,8 +4,6 @@ icon = 'icons/obj/abductor.dmi' icon_state = "dispenser" density = TRUE - ui_x = 300 - ui_y = 338 var/list/gland_types var/list/gland_colors var/list/amounts @@ -29,11 +27,13 @@ return UI_CLOSE return ..() -/obj/machinery/abductor/gland_dispenser/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/abductor/gland_dispenser/ui_state(mob/user) + return GLOB.physical_state + +/obj/machinery/abductor/gland_dispenser/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "GlandDispenser", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "GlandDispenser", name) ui.open() /obj/machinery/abductor/gland_dispenser/ui_data(mob/user) diff --git a/code/modules/antagonists/abductor/machinery/experiment.dm b/code/modules/antagonists/abductor/machinery/experiment.dm index aeb14e1175d..889a4c36a53 100644 --- a/code/modules/antagonists/abductor/machinery/experiment.dm +++ b/code/modules/antagonists/abductor/machinery/experiment.dm @@ -5,8 +5,6 @@ icon_state = "experiment-open" density = FALSE state_open = TRUE - ui_x = 330 - ui_y = 207 var/points = 0 var/credits = 0 var/list/history @@ -61,11 +59,13 @@ return UI_CLOSE return ..() -/obj/machinery/abductor/experiment/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/abductor/experiment/ui_state(mob/user) + return GLOB.physical_state + +/obj/machinery/abductor/experiment/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ProbingConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ProbingConsole", name) ui.open() /obj/machinery/abductor/experiment/ui_data(mob/user) diff --git a/code/modules/antagonists/changeling/cellular_emporium.dm b/code/modules/antagonists/changeling/cellular_emporium.dm index bc433ef0cbb..aa73e6d8392 100644 --- a/code/modules/antagonists/changeling/cellular_emporium.dm +++ b/code/modules/antagonists/changeling/cellular_emporium.dm @@ -13,10 +13,13 @@ changeling = null . = ..() -/datum/cellular_emporium/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.always_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/cellular_emporium/ui_state(mob/user) + return GLOB.always_state + +/datum/cellular_emporium/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "CellularEmporium", name, 900, 480, master_ui, state) + ui = new(user, src, "CellularEmporium", name) ui.open() /datum/cellular_emporium/ui_data(mob/user) diff --git a/code/modules/antagonists/eldritch_cult/eldritch_book.dm b/code/modules/antagonists/eldritch_cult/eldritch_book.dm index 833d33dde4e..575670d9ec7 100644 --- a/code/modules/antagonists/eldritch_cult/eldritch_book.dm +++ b/code/modules/antagonists/eldritch_cult/eldritch_book.dm @@ -65,16 +65,15 @@ if(do_after(user,2 SECONDS,user)) qdel(target) - -/obj/item/forbidden_book/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) // Remember to use the appropriate state. +/obj/item/forbidden_book/ui_interact(mob/user, datum/tgui/ui = null) if(!IS_HERETIC(user)) return FALSE last_user = user - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) icon_state = "book_open" - flick("book_opening",src) - ui = new(user, src, ui_key, "ForbiddenLore", name, 500, 900, master_ui, state) + flick("book_opening", src) + ui = new(user, src, "ForbiddenLore", name) ui.open() /obj/item/forbidden_book/ui_data(mob/user) diff --git a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm index a76269eb5ae..afe1f40f062 100644 --- a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm +++ b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm @@ -7,9 +7,6 @@ density = TRUE resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - ui_x = 350 - ui_y = 442 - var/timer_set = 90 var/minimum_timer_set = 90 var/maximum_timer_set = 3600 @@ -260,10 +257,10 @@ ui_mode = NUKEUI_AWAIT_TIMER -/obj/machinery/nuclearbomb/ui_interact(mob/user, ui_key="main", datum/tgui/ui=null, force_open=0, datum/tgui/master_ui=null, datum/ui_state/state=GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/nuclearbomb/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "NuclearBomb", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "NuclearBomb", name) ui.open() /obj/machinery/nuclearbomb/ui_data(mob/user) diff --git a/code/modules/antagonists/traitor/equipment/module_picker.dm b/code/modules/antagonists/traitor/equipment/module_picker.dm index 11d8d94352c..60024899d9e 100644 --- a/code/modules/antagonists/traitor/equipment/module_picker.dm +++ b/code/modules/antagonists/traitor/equipment/module_picker.dm @@ -1,8 +1,6 @@ /// The datum and interface for the malf unlock menu, which lets them choose actions to unlock. /datum/module_picker var/name = "Malfunction Modules Menu" - var/ui_x = 620 - var/ui_y = 525 var/selected_cat var/compact_mode = FALSE var/processing_time = 50 @@ -30,11 +28,13 @@ return filtered_modules -/datum/module_picker/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.always_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/module_picker/ui_state(mob/user) + return GLOB.always_state + +/datum/module_picker/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "MalfunctionModulePicker", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "MalfunctionModulePicker", name) ui.open() /datum/module_picker/ui_data(mob/user) diff --git a/code/modules/assembly/assembly.dm b/code/modules/assembly/assembly.dm index 070584546bb..ed7f49c36a6 100644 --- a/code/modules/assembly/assembly.dm +++ b/code/modules/assembly/assembly.dm @@ -125,3 +125,6 @@ if(holder) return holder return src + +/obj/item/assembly/ui_state(mob/user) + return GLOB.hands_state diff --git a/code/modules/assembly/infrared.dm b/code/modules/assembly/infrared.dm index d9330775e85..92a292ffaa6 100644 --- a/code/modules/assembly/infrared.dm +++ b/code/modules/assembly/infrared.dm @@ -6,8 +6,6 @@ is_position_sensitive = TRUE drop_sound = 'sound/items/handling/component_drop.ogg' pickup_sound = 'sound/items/handling/component_pickup.ogg' - var/ui_x = 225 - var/ui_y = 110 var/on = FALSE var/visible = FALSE var/maxlength = 8 @@ -188,11 +186,10 @@ return ..() return UI_CLOSE -/obj/item/assembly/infra/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/assembly/infra/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "InfraredEmitter", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "InfraredEmitter", name) ui.open() /obj/item/assembly/infra/ui_data(mob/user) diff --git a/code/modules/assembly/proximity.dm b/code/modules/assembly/proximity.dm index ef931279dea..1fe05770f55 100644 --- a/code/modules/assembly/proximity.dm +++ b/code/modules/assembly/proximity.dm @@ -6,8 +6,6 @@ attachable = TRUE drop_sound = 'sound/items/handling/component_drop.ogg' pickup_sound = 'sound/items/handling/component_pickup.ogg' - var/ui_x = 250 - var/ui_y = 185 var/scanning = FALSE var/timing = FALSE var/time = 10 @@ -115,11 +113,10 @@ return ..() return UI_CLOSE -/obj/item/assembly/prox_sensor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/assembly/prox_sensor/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ProximitySensor", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ProximitySensor", name) ui.open() /obj/item/assembly/prox_sensor/ui_data(mob/user) diff --git a/code/modules/assembly/signaler.dm b/code/modules/assembly/signaler.dm index c52689df336..82fe352d497 100644 --- a/code/modules/assembly/signaler.dm +++ b/code/modules/assembly/signaler.dm @@ -10,8 +10,7 @@ attachable = TRUE drop_sound = 'sound/items/handling/component_drop.ogg' pickup_sound = 'sound/items/handling/component_pickup.ogg' - var/ui_x = 280 - var/ui_y = 132 + var/code = DEFAULT_SIGNALER_CODE var/frequency = FREQ_SIGNALER var/datum/radio_frequency/radio_connection @@ -69,11 +68,10 @@ return ..() return UI_CLOSE -/obj/item/assembly/signaler/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/assembly/signaler/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Signaler", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Signaler", name) ui.open() /obj/item/assembly/signaler/ui_data(mob/user) diff --git a/code/modules/assembly/timer.dm b/code/modules/assembly/timer.dm index 3224b2d3737..4f8bea6900d 100644 --- a/code/modules/assembly/timer.dm +++ b/code/modules/assembly/timer.dm @@ -6,8 +6,7 @@ attachable = TRUE drop_sound = 'sound/items/handling/component_drop.ogg' pickup_sound = 'sound/items/handling/component_pickup.ogg' - var/ui_x = 275 - var/ui_y = 115 + var/timing = FALSE var/time = 5 var/saved_time = 5 @@ -90,11 +89,10 @@ return ..() return UI_CLOSE -/obj/item/assembly/timer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/assembly/timer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Timer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Timer", name) ui.open() /obj/item/assembly/timer/ui_data(mob/user) diff --git a/code/modules/asset_cache/asset_list.dm b/code/modules/asset_cache/asset_list.dm index 2e5881c67f3..f4018dc4b25 100644 --- a/code/modules/asset_cache/asset_list.dm +++ b/code/modules/asset_cache/asset_list.dm @@ -162,7 +162,10 @@ GLOBAL_LIST_EMPTY(asset_datums) Insert("[prefix][prefix2][icon_state_name]", I, icon_state=icon_state_name, dir=direction) /datum/asset/spritesheet/proc/css_tag() - return {""} + return {""} + +/datum/asset/spritesheet/proc/css_filename() + return "spritesheet_[name].css" /datum/asset/spritesheet/proc/icon_tag(sprite_name) var/sprite = sprites[sprite_name] diff --git a/code/modules/asset_cache/asset_list_items.dm b/code/modules/asset_cache/asset_list_items.dm index 2eabc81a7a2..96cb2830838 100644 --- a/code/modules/asset_cache/asset_list_items.dm +++ b/code/modules/asset_cache/asset_list_items.dm @@ -209,7 +209,7 @@ "boss4.gif" = 'icons/UI_Icons/Arcade/boss4.gif', "boss5.gif" = 'icons/UI_Icons/Arcade/boss5.gif', "boss6.gif" = 'icons/UI_Icons/Arcade/boss6.gif', - ) + ) /datum/asset/spritesheet/simple/achievements name ="achievements" diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index bf407b8a108..2a65838dde2 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -71,8 +71,6 @@ integrity_failure = 0.33 armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 90, "acid" = 30) resistance_flags = FIRE_PROOF - ui_x = 440 - ui_y = 650 var/danger_level = 0 var/mode = AALARM_MODE_SCRUBBING @@ -243,11 +241,11 @@ return ..() return UI_CLOSE -/obj/machinery/airalarm/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + +/obj/machinery/airalarm/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AirAlarm", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AirAlarm", name) ui.open() /obj/machinery/airalarm/ui_data(mob/user) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/passive_gate.dm b/code/modules/atmospherics/machinery/components/binary_devices/passive_gate.dm index 4b032711409..940f2a00356 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/passive_gate.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/passive_gate.dm @@ -26,9 +26,6 @@ Passive gate is similar to the regular pump except: construction_type = /obj/item/pipe/directional pipe_state = "passivegate" - ui_x = 335 - ui_y = 115 - /obj/machinery/atmospherics/components/binary/passive_gate/CtrlClick(mob/user) if(can_interact(user)) on = !on @@ -85,11 +82,10 @@ Passive gate is similar to the regular pump except: )) radio_connection.post_signal(src, signal, filter = RADIO_ATMOSIA) -/obj/machinery/atmospherics/components/binary/passive_gate/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/atmospherics/components/binary/passive_gate/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AtmosPump", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AtmosPump", name) ui.open() /obj/machinery/atmospherics/components/binary/passive_gate/ui_data() diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index b22dfb0cfce..d65eecbfca8 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -27,9 +27,6 @@ construction_type = /obj/item/pipe/directional pipe_state = "pump" - ui_x = 335 - ui_y = 115 - /obj/machinery/atmospherics/components/binary/pump/CtrlClick(mob/user) if(can_interact(user)) on = !on @@ -84,11 +81,10 @@ )) radio_connection.post_signal(src, signal, filter = RADIO_ATMOSIA) -/obj/machinery/atmospherics/components/binary/pump/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/atmospherics/components/binary/pump/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AtmosPump", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AtmosPump", name) ui.open() /obj/machinery/atmospherics/components/binary/pump/ui_data() diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index 3fd93d37ba3..6ad675e123f 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -28,9 +28,6 @@ construction_type = /obj/item/pipe/directional pipe_state = "volumepump" - ui_x = 335 - ui_y = 115 - /obj/machinery/atmospherics/components/binary/volume_pump/CtrlClick(mob/user) if(can_interact(user)) on = !on @@ -111,11 +108,10 @@ )) radio_connection.post_signal(src, signal) -/obj/machinery/atmospherics/components/binary/volume_pump/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/atmospherics/components/binary/volume_pump/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AtmosPump", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AtmosPump", name) ui.open() /obj/machinery/atmospherics/components/binary/volume_pump/ui_data() diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index c29422eddb4..f663f0fc9b8 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -14,9 +14,6 @@ construction_type = /obj/item/pipe/trinary/flippable pipe_state = "filter" - ui_x = 390 - ui_y = 187 - /obj/machinery/atmospherics/components/trinary/filter/CtrlClick(mob/user) if(can_interact(user)) on = !on @@ -121,11 +118,10 @@ set_frequency(frequency) return ..() -/obj/machinery/atmospherics/components/trinary/filter/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/atmospherics/components/trinary/filter/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AtmosFilter", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AtmosFilter", name) ui.open() /obj/machinery/atmospherics/components/trinary/filter/ui_data() diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm index 68f82177e42..1fb99a2b025 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm @@ -14,9 +14,6 @@ construction_type = /obj/item/pipe/trinary/flippable pipe_state = "mixer" - ui_x = 370 - ui_y = 165 - //node 3 is the outlet, nodes 1 & 2 are intakes /obj/machinery/atmospherics/components/trinary/mixer/CtrlClick(mob/user) @@ -127,11 +124,10 @@ var/datum/pipeline/parent3 = parents[3] parent3.update = TRUE -/obj/machinery/atmospherics/components/trinary/mixer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/atmospherics/components/trinary/mixer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AtmosMixer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AtmosMixer", name) ui.open() /obj/machinery/atmospherics/components/trinary/mixer/ui_data() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm index 81bebc8c6ff..a3baa7e0d7d 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm @@ -12,8 +12,6 @@ layer = ABOVE_WINDOW_LAYER state_open = FALSE circuit = /obj/item/circuitboard/machine/cryo_tube - ui_x = 400 - ui_y = 550 pipe_flags = PIPING_ONE_PER_TURF | PIPING_DEFAULT_LAYER_ONLY occupant_typecache = list(/mob/living/carbon, /mob/living/simple_animal) @@ -366,11 +364,14 @@ return return ..() -/obj/machinery/atmospherics/components/unary/cryo_cell/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.notcontained_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/atmospherics/components/unary/cryo_cell/ui_state(mob/user) + return GLOB.notcontained_state + + +/obj/machinery/atmospherics/components/unary/cryo_cell/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Cryo", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Cryo", name) ui.open() /obj/machinery/atmospherics/components/unary/cryo_cell/ui_data() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/outlet_injector.dm b/code/modules/atmospherics/machinery/components/unary_devices/outlet_injector.dm index d8c9957f350..5c4886f1397 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/outlet_injector.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/outlet_injector.dm @@ -23,9 +23,6 @@ pipe_state = "injector" - ui_x = 310 - ui_y = 115 - /obj/machinery/atmospherics/components/unary/outlet_injector/CtrlClick(mob/user) if(can_interact(user)) on = !on @@ -144,11 +141,10 @@ update_icon() -/obj/machinery/atmospherics/components/unary/outlet_injector/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/atmospherics/components/unary/outlet_injector/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "AtmosPump", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "AtmosPump", name) ui.open() /obj/machinery/atmospherics/components/unary/outlet_injector/ui_data() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm b/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm index 6914ed51873..9713f189f59 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm @@ -10,8 +10,6 @@ armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 30) layer = OBJ_LAYER circuit = /obj/item/circuitboard/machine/thermomachine - ui_x = 300 - ui_y = 230 pipe_flags = PIPING_ONE_PER_TURF @@ -123,11 +121,10 @@ return ..() return UI_CLOSE -/obj/machinery/atmospherics/components/unary/thermomachine/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/atmospherics/components/unary/thermomachine/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ThermoMachine", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ThermoMachine", name) ui.open() /obj/machinery/atmospherics/components/unary/thermomachine/ui_data(mob/user) diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm index 7ce6378456f..2bb907410ab 100644 --- a/code/modules/atmospherics/machinery/portable/canister.dm +++ b/code/modules/atmospherics/machinery/portable/canister.dm @@ -10,8 +10,6 @@ desc = "A canister for the storage of gas." icon_state = "yellow" density = TRUE - ui_x = 300 - ui_y = 232 ///The base iconstate, used to make dealing with breaking the canister less hellish var/base_icon_state = "yellow" @@ -418,11 +416,13 @@ take_damage(clamp((our_temperature/heat_limit) * (our_pressure/pressure_limit), 5, 50), BURN, 0) update_icon() -/obj/machinery/portable_atmospherics/canister/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/portable_atmospherics/canister/ui_state(mob/user) + return GLOB.physical_state + +/obj/machinery/portable_atmospherics/canister/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Canister", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Canister", name) ui.open() /obj/machinery/portable_atmospherics/canister/ui_data() diff --git a/code/modules/atmospherics/machinery/portable/pump.dm b/code/modules/atmospherics/machinery/portable/pump.dm index 04c40115185..286a373fb6f 100644 --- a/code/modules/atmospherics/machinery/portable/pump.dm +++ b/code/modules/atmospherics/machinery/portable/pump.dm @@ -8,8 +8,6 @@ name = "portable air pump" icon_state = "psiphon:0" density = TRUE - ui_x = 300 - ui_y = 315 max_integrity = 250 ///Max amount of heat allowed inside of the canister before it starts to melt (different tiers have different limits) @@ -88,12 +86,10 @@ else if(on && holding && direction == PUMP_OUT) investigate_log("[key_name(user)] started a transfer into [holding].", INVESTIGATE_ATMOS) - -/obj/machinery/portable_atmospherics/pump/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/portable_atmospherics/pump/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "PortablePump", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "PortablePump", name) ui.open() /obj/machinery/portable_atmospherics/pump/ui_data() diff --git a/code/modules/atmospherics/machinery/portable/scrubber.dm b/code/modules/atmospherics/machinery/portable/scrubber.dm index a97ba1a8fe9..926d3898e5b 100644 --- a/code/modules/atmospherics/machinery/portable/scrubber.dm +++ b/code/modules/atmospherics/machinery/portable/scrubber.dm @@ -2,22 +2,29 @@ name = "portable air scrubber" icon_state = "pscrubber:0" density = TRUE - ui_x = 320 - ui_y = 350 - max_integrity = 250 + volume = 1000 + ///Max amount of heat allowed inside of the canister before it starts to melt (different tiers have different limits) var/heat_limit = 5000 ///Max amount of pressure allowed inside of the canister before it starts to break (different tiers have different limits) var/pressure_limit = 50000 - var/on = FALSE var/volume_rate = 1000 var/overpressure_m = 80 var/use_overlays = TRUE - volume = 1000 - - var/list/scrubbing = list(/datum/gas/plasma, /datum/gas/carbon_dioxide, /datum/gas/nitrous_oxide, /datum/gas/bz, /datum/gas/nitryl, /datum/gas/tritium, /datum/gas/hypernoblium, /datum/gas/water_vapor, /datum/gas/freon, /datum/gas/hydrogen) + var/list/scrubbing = list( + /datum/gas/plasma, + /datum/gas/carbon_dioxide, + /datum/gas/nitrous_oxide, + /datum/gas/bz, + /datum/gas/nitryl, + /datum/gas/tritium, + /datum/gas/hypernoblium, + /datum/gas/water_vapor, + /datum/gas/freon, + /datum/gas/hydrogen, + ) /obj/machinery/portable_atmospherics/scrubber/Destroy() var/turf/T = get_turf(src) @@ -88,11 +95,10 @@ on = !on update_icon() -/obj/machinery/portable_atmospherics/scrubber/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/portable_atmospherics/scrubber/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "PortableScrubber", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "PortableScrubber", name) ui.open() /obj/machinery/portable_atmospherics/scrubber/ui_data() diff --git a/code/modules/awaymissions/gateway.dm b/code/modules/awaymissions/gateway.dm index 6fcb5695975..f2cf7c1b9bc 100644 --- a/code/modules/awaymissions/gateway.dm +++ b/code/modules/awaymissions/gateway.dm @@ -275,11 +275,10 @@ GLOBAL_LIST_EMPTY(gateway_destinations) . = ..() try_to_linkup() -/obj/machinery/computer/gateway_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui, force_open, datum/tgui/master_ui, datum/ui_state/state = GLOB.default_state) - . = ..() - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/gateway_control/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Gateway", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Gateway", name) ui.open() /obj/machinery/computer/gateway_control/ui_data(mob/user) diff --git a/code/modules/cargo/blackmarket/blackmarket_uplink.dm b/code/modules/cargo/blackmarket/blackmarket_uplink.dm index 3833b0505a5..015848c8aca 100644 --- a/code/modules/cargo/blackmarket/blackmarket_uplink.dm +++ b/code/modules/cargo/blackmarket/blackmarket_uplink.dm @@ -4,8 +4,6 @@ icon_state = "uplink" // UI variables. - var/ui_x = 600 - var/ui_y = 480 var/viewing_category var/viewing_market var/selected_item @@ -55,10 +53,10 @@ user.put_in_hands(holochip) to_chat(user, "You withdraw [amount_to_remove] credits into a holochip.") -/obj/item/blackmarket_uplink/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/blackmarket_uplink/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "BlackMarketUplink", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "BlackMarketUplink", name) ui.open() /obj/item/blackmarket_uplink/ui_data(mob/user) diff --git a/code/modules/cargo/bounty_console.dm b/code/modules/cargo/bounty_console.dm index 88e5aba2223..8a297150160 100644 --- a/code/modules/cargo/bounty_console.dm +++ b/code/modules/cargo/bounty_console.dm @@ -32,12 +32,12 @@ "} -/obj/machinery/computer/bounty/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) +/obj/machinery/computer/bounty/ui_interact(mob/user, datum/tgui/ui) if(!GLOB.bounties_list.len) setup_bounties() - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "CargoBountyConsole", name, 750, 600, master_ui, state) + ui = new(user, src, "CargoBountyConsole", name) ui.open() /obj/machinery/computer/bounty/ui_data(mob/user) diff --git a/code/modules/cargo/centcom_podlauncher.dm b/code/modules/cargo/centcom_podlauncher.dm index 68fed0f8bfc..075194e2fff 100644 --- a/code/modules/cargo/centcom_podlauncher.dm +++ b/code/modules/cargo/centcom_podlauncher.dm @@ -53,12 +53,13 @@ temp_pod = new(locate(/area/centcom/supplypod/pod_storage) in GLOB.sortedAreas) //Create a new temp_pod in the podStorage area on centcom (so users are free to look at it and change other variables if needed) orderedArea = createOrderedArea(bay) //Order all the turfs in the selected bay (top left to bottom right) to a single list. Used for the "ordered" mode (launchChoice = 1) -/datum/centcom_podlauncher/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, \ -force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.admin_state)//ui_interact is called when the client verb is called. +/datum/centcom_podlauncher/ui_state(mob/user) + return GLOB.admin_state - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/centcom_podlauncher/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "CentcomPodLauncher", "Config/Launch Supplypod", 700, 700, master_ui, state) + ui = new(user, src, "CentcomPodLauncher") ui.open() /datum/centcom_podlauncher/ui_data(mob/user) //Sends info about the pod to the UI. diff --git a/code/modules/cargo/console.dm b/code/modules/cargo/console.dm index 6a68da4d80e..dbecd04cee0 100644 --- a/code/modules/cargo/console.dm +++ b/code/modules/cargo/console.dm @@ -3,8 +3,6 @@ desc = "Used to order supplies, approve requests, and control the shuttle." icon_screen = "supply" circuit = /obj/item/circuitboard/computer/cargo - ui_x = 780 - ui_y = 750 var/requestonly = FALSE var/contraband = FALSE @@ -65,11 +63,10 @@ board.obj_flags |= EMAGGED update_static_data(user) -/obj/machinery/computer/cargo/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/cargo/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Cargo", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Cargo", name) ui.open() /obj/machinery/computer/cargo/ui_data() diff --git a/code/modules/cargo/expressconsole.dm b/code/modules/cargo/expressconsole.dm index 2bed44e4117..866f270c259 100644 --- a/code/modules/cargo/expressconsole.dm +++ b/code/modules/cargo/expressconsole.dm @@ -13,8 +13,6 @@ All sales are near instantaneous - please choose carefully" icon_screen = "supply_express" circuit = /obj/item/circuitboard/computer/cargo/express - ui_x = 600 - ui_y = 700 blockade_warning = "Bluespace instability detected. Delivery impossible." req_access = list(ACCESS_QM) @@ -88,10 +86,10 @@ "desc" = P.desc || P.name // If there is a description, use it. Otherwise use the pack's name. )) -/obj/machinery/computer/cargo/express/ui_interact(mob/living/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) // Remember to use the appropriate state. - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/cargo/express/ui_interact(mob/living/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "CargoExpress", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "CargoExpress", name) ui.open() /obj/machinery/computer/cargo/express/ui_data(mob/user) diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index 602d4d4f6cc..05fc47c16a7 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -43,6 +43,7 @@ GLOBAL_LIST_INIT(blacklisted_builds, list( if (!asset_cache_job) return + // Rate limiting var/mtl = CONFIG_GET(number/minute_topic_limit) if (!holder && mtl) var/minute = round(world.time, 600) @@ -100,6 +101,10 @@ GLOBAL_LIST_INIT(blacklisted_builds, list( keyUp(keycode) return + // Tgui Topic middleware + if(!tgui_Topic(href_list)) + return + // Admin PM if(href_list["priv_msg"]) cmd_admin_pm(href_list["priv_msg"],null) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 1e4d221d3b1..17216de90de 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -36,7 +36,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/list/key_bindings = list() var/tgui_fancy = TRUE - var/tgui_lock = TRUE + var/tgui_lock = FALSE var/windowflashing = TRUE var/toggles = TOGGLES_DEFAULT var/db_flags @@ -548,8 +548,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += ""+t+""),"
" dat += "

General Settings

" dat += "UI Style: [UI_style]
" - dat += "tgui Monitors: [(tgui_lock) ? "Primary" : "All"]
" - dat += "tgui Style: [(tgui_fancy) ? "Fancy" : "No Frills"]
" + dat += "tgui Window Mode: [(tgui_fancy) ? "Fancy (default)" : "Compatible (slower)"]
" + dat += "tgui Window Placement: [(tgui_lock) ? "Primary monitor" : "Free (default)"]
" dat += "Show Runechat Chat Bubbles: [chat_on_map ? "Enabled" : "Disabled"]
" dat += "Runechat message char limit: [max_chat_length]
" dat += "See Runechat for non-mobs: [see_chat_non_mob ? "Enabled" : "Disabled"]
" diff --git a/code/modules/events/pirates.dm b/code/modules/events/pirates.dm index 0db4cde1d4a..f66f33a121c 100644 --- a/code/modules/events/pirates.dm +++ b/code/modules/events/pirates.dm @@ -255,8 +255,6 @@ /obj/machinery/computer/piratepad_control name = "cargo hold control terminal" - ui_x = 600 - ui_y = 230 var/status_report = "Ready for delivery." var/obj/machinery/piratepad/pad var/warmup_time = 100 @@ -287,11 +285,10 @@ else pad = locate() in range(4,src) -/obj/machinery/computer/piratepad_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/piratepad_control/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "CargoHoldTerminal", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "CargoHoldTerminal", name) ui.open() /obj/machinery/computer/piratepad_control/ui_data(mob/user) diff --git a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm index 1345599e4c2..de26fc0e65c 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm @@ -12,8 +12,6 @@ idle_power_usage = 5 active_power_usage = 100 circuit = /obj/item/circuitboard/machine/smartfridge - ui_x = 440 - ui_y = 550 var/max_n_of_items = 1500 var/allow_ai_retrieve = FALSE @@ -162,10 +160,10 @@ adjust_item_drop_location(O) -/obj/machinery/smartfridge/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/smartfridge/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "SmartVend", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "SmartVend", name) ui.set_autoupdate(FALSE) ui.open() diff --git a/code/modules/holodeck/computer.dm b/code/modules/holodeck/computer.dm index 4b3343a84ff..b45dadd74d3 100644 --- a/code/modules/holodeck/computer.dm +++ b/code/modules/holodeck/computer.dm @@ -24,8 +24,6 @@ icon_screen = "holocontrol" idle_power_usage = 10 active_power_usage = 50 - ui_x = 400 - ui_y = 500 var/area/holodeck/linked var/area/holodeck/program @@ -87,10 +85,10 @@ . = ..() toggle_power(!machine_stat) -/obj/machinery/computer/holodeck/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/holodeck/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Holodeck", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Holodeck", name) ui.open() /obj/machinery/computer/holodeck/ui_data(mob/user) diff --git a/code/modules/hydroponics/biogenerator.dm b/code/modules/hydroponics/biogenerator.dm index 4a0e1864dd8..0b0fe364f2b 100644 --- a/code/modules/hydroponics/biogenerator.dm +++ b/code/modules/hydroponics/biogenerator.dm @@ -7,8 +7,6 @@ use_power = IDLE_POWER_USE idle_power_usage = 40 circuit = /obj/item/circuitboard/machine/biogenerator - ui_x = 550 - ui_y = 380 var/processing = FALSE var/obj/item/reagent_containers/glass/beaker = null var/points = 0 @@ -259,17 +257,15 @@ return UI_CLOSE return ..() -/obj/machinery/biogenerator/ui_base_html(html) - var/datum/asset/spritesheet/simple/assets = get_asset_datum(/datum/asset/spritesheet/research_designs) - . = replacetext(html, "", assets.css_tag()) +/obj/machinery/biogenerator/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/spritesheet/research_designs), + ) -/obj/machinery/biogenerator/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/biogenerator/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - var/datum/asset/assets = get_asset_datum(/datum/asset/spritesheet/research_designs) - assets.send(user) - ui = new(user, src, ui_key, "Biogenerator", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Biogenerator", name) ui.open() /obj/machinery/biogenerator/ui_data(mob/user) diff --git a/code/modules/hydroponics/seed_extractor.dm b/code/modules/hydroponics/seed_extractor.dm index 2320f95963b..00381069bf6 100644 --- a/code/modules/hydroponics/seed_extractor.dm +++ b/code/modules/hydroponics/seed_extractor.dm @@ -66,8 +66,6 @@ var/list/piles = list() var/max_seeds = 1000 var/seed_multiplier = 1 - ui_x = 1000 - ui_y = 400 /obj/machinery/seed_extractor/RefreshParts() for(var/obj/item/stock_parts/matter_bin/B in component_parts) @@ -163,11 +161,13 @@ . = TRUE -/obj/machinery/seed_extractor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.notcontained_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/seed_extractor/ui_state(mob/user) + return GLOB.notcontained_state + +/obj/machinery/seed_extractor/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "SeedExtractor", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "SeedExtractor", name) ui.open() /obj/machinery/seed_extractor/ui_data() diff --git a/code/modules/language/language_menu.dm b/code/modules/language/language_menu.dm index 0df7c01fca8..bffd3d59af6 100644 --- a/code/modules/language/language_menu.dm +++ b/code/modules/language/language_menu.dm @@ -8,10 +8,13 @@ language_holder = null . = ..() -/datum/language_menu/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.language_menu_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/language_menu/ui_state(mob/user) + return GLOB.language_menu_state + +/datum/language_menu/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "LanguageMenu", "Language Menu", 700, 600, master_ui, state) + ui = new(user, src, "LanguageMenu") ui.open() /datum/language_menu/ui_data(mob/user) diff --git a/code/modules/library/lib_codex_gigas.dm b/code/modules/library/lib_codex_gigas.dm index e7bb86ff799..be017a07ef6 100644 --- a/code/modules/library/lib_codex_gigas.dm +++ b/code/modules/library/lib_codex_gigas.dm @@ -91,11 +91,10 @@ currentSection = SUFFIX return currentSection != oldSection -/obj/item/book/codex_gigas/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/book/codex_gigas/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "CodexGigas", name, 450, 450, master_ui, state) + ui = new(user, src, "CodexGigas", name) ui.open() /obj/item/book/codex_gigas/ui_data(mob/user) diff --git a/code/modules/library/soapstone.dm b/code/modules/library/soapstone.dm index 3f1ea429e54..f17040a9384 100644 --- a/code/modules/library/soapstone.dm +++ b/code/modules/library/soapstone.dm @@ -204,10 +204,13 @@ /obj/structure/chisel_message/interact() return -/obj/structure/chisel_message/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.always_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/structure/chisel_message/ui_state(mob/user) + return GLOB.always_state + +/obj/structure/chisel_message/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "EngravedMessage", name, 600, 300, master_ui, state) + ui = new(user, src, "EngravedMessage", name) ui.open() /obj/structure/chisel_message/ui_data(mob/user) diff --git a/code/modules/mafia/controller.dm b/code/modules/mafia/controller.dm index f8781ca65cb..1e6ad963d35 100644 --- a/code/modules/mafia/controller.dm +++ b/code/modules/mafia/controller.dm @@ -651,10 +651,13 @@ judgement_guilty_votes -= user_role//no double voting judgement_guilty_votes += user_role -/datum/mafia_controller/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.always_state) - ui = SStgui.try_update_ui(user, src, ui_key, null, force_open) +/datum/mafia_controller/ui_state(mob/user) + return GLOB.always_state + +/datum/mafia_controller/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, null) if(!ui) - ui = new(user, src, ui_key, "MafiaPanel", "Mafia", 650, 550, master_ui, state) + ui = new(user, src, "MafiaPanel") ui.set_autoupdate(FALSE) ui.open() diff --git a/code/modules/mining/laborcamp/laborstacker.dm b/code/modules/mining/laborcamp/laborstacker.dm index 44aa3ebec7f..e091f0ff906 100644 --- a/code/modules/mining/laborcamp/laborstacker.dm +++ b/code/modules/mining/laborcamp/laborstacker.dm @@ -8,8 +8,6 @@ GLOBAL_LIST(labor_sheet_values) icon = 'icons/obj/machines/mining_machines.dmi' icon_state = "console" density = FALSE - ui_x = 315 - ui_y = 430 var/obj/machinery/mineral/stacking_machine/laborstacker/stacking_machine = null var/machinedir = SOUTH @@ -35,11 +33,10 @@ GLOBAL_LIST(labor_sheet_values) /proc/cmp_sheet_list(list/a, list/b) return a["value"] - b["value"] -/obj/machinery/mineral/labor_claim_console/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/mineral/labor_claim_console/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "LaborClaimConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "LaborClaimConsole", name) ui.open() /obj/machinery/mineral/labor_claim_console/ui_data(mob/user) diff --git a/code/modules/mining/machine_redemption.dm b/code/modules/mining/machine_redemption.dm index eb860b747aa..16324d410cc 100644 --- a/code/modules/mining/machine_redemption.dm +++ b/code/modules/mining/machine_redemption.dm @@ -12,8 +12,6 @@ req_access = list(ACCESS_MINERAL_STOREROOM) layer = BELOW_OBJ_LAYER circuit = /obj/item/circuitboard/machine/ore_redemption - ui_x = 440 - ui_y = 550 needs_item_input = TRUE processing_flags = START_PROCESSING_MANUALLY @@ -208,10 +206,10 @@ register_input_turf() // register the new one return TRUE -/obj/machinery/mineral/ore_redemption/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/mineral/ore_redemption/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "OreRedemptionMachine", "Ore Redemption Machine", ui_x, ui_y, master_ui, state) + ui = new(user, src, "OreRedemptionMachine") ui.open() /obj/machinery/mineral/ore_redemption/ui_data(mob/user) diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index 6a123549559..09eb790e42f 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -7,8 +7,6 @@ icon_state = "mining" density = TRUE circuit = /obj/item/circuitboard/machine/mining_equipment_vendor - ui_x = 425 - ui_y = 600 var/icon_deny = "mining-deny" var/obj/item/card/id/inserted_id var/list/prize_list = list( //if you add something to this, please, for the love of god, sort it by price/type. use tabs and not spaces. @@ -63,7 +61,7 @@ new /datum/data/mining_equipment("KA Damage Increase", /obj/item/borg/upgrade/modkit/damage, 1000), new /datum/data/mining_equipment("KA Cooldown Decrease", /obj/item/borg/upgrade/modkit/cooldown, 1000), new /datum/data/mining_equipment("KA AoE Damage", /obj/item/borg/upgrade/modkit/aoe/mobs, 2000) - ) + ) /datum/data/mining_equipment var/equipment_name = "generic" @@ -90,17 +88,15 @@ else icon_state = "[initial(icon_state)]-off" -/obj/machinery/mineral/equipment_vendor/ui_base_html(html) - var/datum/asset/spritesheet/assets = get_asset_datum(/datum/asset/spritesheet/vending) - . = replacetext(html, "", assets.css_tag()) +/obj/machinery/mineral/equipment_vendor/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/spritesheet/vending), + ) -/obj/machinery/mineral/equipment_vendor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/mineral/equipment_vendor/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - var/datum/asset/assets = get_asset_datum(/datum/asset/spritesheet/vending) - assets.send(user) - ui = new(user, src, ui_key, "MiningVendor", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "MiningVendor", name) ui.open() /obj/machinery/mineral/equipment_vendor/ui_static_data(mob/user) diff --git a/code/modules/mining/mint.dm b/code/modules/mining/mint.dm index ce9f7f31a58..82b2dbca6fb 100644 --- a/code/modules/mining/mint.dm +++ b/code/modules/mining/mint.dm @@ -7,8 +7,6 @@ icon_state = "coinpress0" density = TRUE input_dir = EAST - ui_x = 300 - ui_y = 250 needs_item_input = TRUE var/obj/item/storage/bag/money/bag_to_use var/produced_coins = 0 // how many coins the machine has made in it's last cycle @@ -81,11 +79,10 @@ end_processing() icon_state = "coinpress0" -/obj/machinery/mineral/mint/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/mineral/mint/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Mint", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Mint", name) ui.open() /obj/machinery/mineral/mint/ui_data() diff --git a/code/modules/mining/satchel_ore_boxdm.dm b/code/modules/mining/satchel_ore_boxdm.dm index e689a37b250..4de34ecdba1 100644 --- a/code/modules/mining/satchel_ore_boxdm.dm +++ b/code/modules/mining/satchel_ore_boxdm.dm @@ -9,9 +9,6 @@ density = TRUE pressure_resistance = 5*ONE_ATMOSPHERE - var/ui_x = 335 - var/ui_y = 415 - /obj/structure/ore_box/attackby(obj/item/W, mob/user, params) if (istype(W, /obj/item/stack/ore)) user.transferItemToLoc(W, src) @@ -61,11 +58,10 @@ stoplag() drop = drop_location() -/obj/structure/ore_box/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/structure/ore_box/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "OreBox", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "OreBox", name) ui.open() /obj/structure/ore_box/ui_data() diff --git a/code/modules/mob/dead/observer/notificationprefs.dm b/code/modules/mob/dead/observer/notificationprefs.dm index 160abd57e1f..524ff80d5d8 100644 --- a/code/modules/mob/dead/observer/notificationprefs.dm +++ b/code/modules/mob/dead/observer/notificationprefs.dm @@ -3,12 +3,10 @@ set name = "Notification preferences" set desc = "Notification preferences" - var/datum/notificationpanel/panel = new(usr) + var/datum/notificationpanel/panel = new(usr) panel.ui_interact(usr) - - /datum/notificationpanel var/client/user @@ -21,10 +19,13 @@ else src.user = user -/datum/notificationpanel/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.observer_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/notificationpanel/ui_state(mob/user) + return GLOB.observer_state + +/datum/notificationpanel/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "NotificationPreferences", "Notification Preferences", 270, 360, master_ui, state) + ui = new(user, src, "NotificationPreferences") ui.open() /datum/notificationpanel/ui_data(mob/user) @@ -35,8 +36,7 @@ "key" = key, "enabled" = (user.ckey in GLOB.poll_ignore[key]), "desc" = GLOB.poll_ignore_desc[key] - )) - + )) /datum/notificationpanel/ui_act(action, params) if(..()) diff --git a/code/modules/mob/dead/observer/orbit.dm b/code/modules/mob/dead/observer/orbit.dm index 845493dc93e..b81172afada 100644 --- a/code/modules/mob/dead/observer/orbit.dm +++ b/code/modules/mob/dead/observer/orbit.dm @@ -6,9 +6,12 @@ qdel(src) owner = new_owner -/datum/orbit_menu/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.observer_state) +/datum/orbit_menu/ui_state(mob/user) + return GLOB.observer_state + +/datum/orbit_menu/ui_interact(mob/user, datum/tgui/ui) if (!ui) - ui = new(user, src, ui_key, "Orbit", "Orbit", 350, 700, master_ui, state) + ui = new(user, src, "Orbit") ui.open() /datum/orbit_menu/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) diff --git a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm index 204fba94e5b..271245d0e26 100644 --- a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm @@ -264,11 +264,16 @@ else ui_interact(owner) -/datum/action/innate/swap_body/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.always_state) +/datum/action/innate/swap_body/ui_host(mob/user) + return owner - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/action/innate/swap_body/ui_state(mob/user) + return GLOB.not_incapacitated_state + +/datum/action/innate/swap_body/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "SlimeBodySwapper", name, 400, 400, master_ui, state) + ui = new(user, src, "SlimeBodySwapper", name) ui.open() /datum/action/innate/swap_body/ui_data(mob/user) diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm index b084ba0a851..8966f1f2b68 100644 --- a/code/modules/mob/living/silicon/ai/life.dm +++ b/code/modules/mob/living/silicon/ai/life.dm @@ -150,7 +150,7 @@ to_chat(src, "Receiving control information from APC.") sleep(2) apc_override = 1 - theAPC.ui_interact(src, state = GLOB.conscious_state) + theAPC.ui_interact(src) apc_override = 0 aiRestorePowerRoutine = POWER_RESTORATION_APC_FOUND sleep(50) diff --git a/code/modules/mob/living/silicon/ai/robot_control.dm b/code/modules/mob/living/silicon/ai/robot_control.dm index 0eaea103f2a..bbfb7604ba5 100644 --- a/code/modules/mob/living/silicon/ai/robot_control.dm +++ b/code/modules/mob/living/silicon/ai/robot_control.dm @@ -19,11 +19,13 @@ return ..() return UI_CLOSE -/datum/robot_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.always_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/robot_control/ui_state(mob/user) + return GLOB.always_state + +/datum/robot_control/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "RemoteRobotControl", "Remote Robot Control", 500, 500, master_ui, state) + ui = new(user, src, "RemoteRobotControl") ui.open() /datum/robot_control/ui_data(mob/user) diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index a330366bcdf..d379fd58517 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -31,10 +31,8 @@ model = "MULE" bot_core_type = /obj/machinery/bot_core/mulebot - var/ui_x = 350 ///tgui window width - var/ui_y = 425 ///tgui window height - - var/id /// unique identifier in case there are multiple mulebots. + /// unique identifier in case there are multiple mulebots. + var/id path_image_color = "#7F5200" @@ -228,11 +226,10 @@ return ui_interact(user) -/mob/living/simple_animal/bot/mulebot/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/mob/living/simple_animal/bot/mulebot/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Mule", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Mule", name) ui.open() /mob/living/simple_animal/bot/mulebot/ui_data(mob/user) diff --git a/code/modules/modular_computers/computers/item/computer_ui.dm b/code/modules/modular_computers/computers/item/computer_ui.dm index fae9359f8dc..cdd00377b97 100644 --- a/code/modules/modular_computers/computers/item/computer_ui.dm +++ b/code/modules/modular_computers/computers/item/computer_ui.dm @@ -3,7 +3,7 @@ ui_interact(user) // Operates TGUI -/obj/item/modular_computer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) +/obj/item/modular_computer/ui_interact(mob/user, datum/tgui/ui) if(!enabled) if(ui) ui.close() @@ -33,21 +33,12 @@ to_chat(user, "\The [src] beeps three times, it's screen displaying a \"DISK ERROR\" warning.") return // No HDD, No HDD files list or no stored files. Something is very broken. - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if (!ui) - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - assets = get_asset_datum(/datum/asset/simple/arcade) - assets.send(user) - var/headername - switch(device_theme) - if("ntos") - headername = "NtOS Main Menu" - if("syndicate") - headername = "Syndix Main Menu" - ui = new(user, src, ui_key, "NtosMain", headername, 400, 500, master_ui, state) + ui = new(user, src, "NtosMain") + ui.send_asset(get_asset_datum(/datum/asset/simple/headers)) + ui.set_autoupdate(TRUE) ui.open() - ui.set_autoupdate(state = 1) /obj/item/modular_computer/ui_data(mob/user) diff --git a/code/modules/modular_computers/file_system/program.dm b/code/modules/modular_computers/file_system/program.dm index 2a01282e70d..c76940a18a3 100644 --- a/code/modules/modular_computers/file_system/program.dm +++ b/code/modules/modular_computers/file_system/program.dm @@ -31,15 +31,10 @@ var/available_on_ntnet = 1 /// Whether the program can be downloaded from SyndiNet (accessible via emagging the computer). Set to 1 to enable. var/available_on_syndinet = 0 - /// ID of TGUI interface + /// Name of the tgui interface var/tgui_id - /// Default size of TGUI window, in pixels - var/ui_x = 575 - var/ui_y = 700 /// Example: "something.gif" - a header image that will be rendered in computer's UI when this program is running at background. Images are taken from /icons/program_icons. Be careful not to use too large images! var/ui_header = null - ///Assets specific to programs - var/list/special_assets = list() /datum/computer_file/program/New(obj/item/modular_computer/comp = null) ..() @@ -171,17 +166,11 @@ generate_network_log("Connection to [network_destination] closed.") return 1 - -/datum/computer_file/program/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/datum/computer_file/program/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui && tgui_id) - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - for(var/i in special_assets) - assets = get_asset_datum(i) - assets.send(user) - - ui = new(user, src, ui_key, tgui_id, filedesc, ui_x, ui_y, state = state) + ui = new(user, src, tgui_id, filedesc) + ui.send_asset(get_asset_datum(/datum/asset/simple/headers)) ui.open() // CONVENTIONS, READ THIS WHEN CREATING NEW PROGRAM AND OVERRIDING THIS PROC: diff --git a/code/modules/modular_computers/file_system/programs/airestorer.dm b/code/modules/modular_computers/file_system/programs/airestorer.dm index 1e4d0c951df..c2a1aa4ca75 100644 --- a/code/modules/modular_computers/file_system/programs/airestorer.dm +++ b/code/modules/modular_computers/file_system/programs/airestorer.dm @@ -9,8 +9,6 @@ transfer_access = ACCESS_HEADS available_on_ntnet = TRUE tgui_id = "NtosAiRestorer" - ui_x = 370 - ui_y = 400 /// Variable dictating if we are in the process of restoring the AI in the inserted intellicard var/restoring = FALSE diff --git a/code/modules/modular_computers/file_system/programs/alarm.dm b/code/modules/modular_computers/file_system/programs/alarm.dm index 34daeff6ca9..577fad83d04 100644 --- a/code/modules/modular_computers/file_system/programs/alarm.dm +++ b/code/modules/modular_computers/file_system/programs/alarm.dm @@ -8,9 +8,6 @@ network_destination = "alarm monitoring network" size = 5 tgui_id = "NtosStationAlertConsole" - ui_x = 315 - ui_y = 500 - var/has_alert = 0 var/alarms = list("Fire" = list(), "Atmosphere" = list(), "Power" = list()) diff --git a/code/modules/modular_computers/file_system/programs/antagonist/contract_uplink.dm b/code/modules/modular_computers/file_system/programs/antagonist/contract_uplink.dm index 9c5fb36a871..3accb8e02d7 100644 --- a/code/modules/modular_computers/file_system/programs/antagonist/contract_uplink.dm +++ b/code/modules/modular_computers/file_system/programs/antagonist/contract_uplink.dm @@ -9,8 +9,6 @@ unsendable = 1 undeletable = 1 tgui_id = "SyndContractor" - ui_x = 500 - ui_y = 600 var/error = "" var/info_screen = TRUE var/assigned = FALSE diff --git a/code/modules/modular_computers/file_system/programs/antagonist/dos.dm b/code/modules/modular_computers/file_system/programs/antagonist/dos.dm index 9dedc3810f9..803dadc0a06 100644 --- a/code/modules/modular_computers/file_system/programs/antagonist/dos.dm +++ b/code/modules/modular_computers/file_system/programs/antagonist/dos.dm @@ -8,8 +8,6 @@ available_on_ntnet = FALSE available_on_syndinet = TRUE tgui_id = "NtosNetDos" - ui_x = 400 - ui_y = 250 var/obj/machinery/ntnet_relay/target = null var/dos_speed = 0 diff --git a/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm b/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm index a3128150087..2ba3d69fe69 100644 --- a/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm +++ b/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm @@ -8,9 +8,6 @@ available_on_ntnet = FALSE available_on_syndinet = TRUE tgui_id = "NtosRevelation" - ui_x = 400 - ui_y = 250 - var/armed = 0 /datum/computer_file/program/revelation/run_program(var/mob/living/user) diff --git a/code/modules/modular_computers/file_system/programs/arcade.dm b/code/modules/modular_computers/file_system/programs/arcade.dm index 06b2375b3b8..dd1d21d6c53 100644 --- a/code/modules/modular_computers/file_system/programs/arcade.dm +++ b/code/modules/modular_computers/file_system/programs/arcade.dm @@ -7,8 +7,6 @@ network_destination = "arcade network" size = 6 tgui_id = "NtosArcade" - ui_x = 450 - ui_y = 350 ///Returns TRUE if the game is being played. var/game_active = TRUE @@ -76,10 +74,10 @@ pause_state = FALSE game_check() -/datum/computer_file/program/arcade/ui_interact(mob/user, ui_key, datum/tgui/ui, force_open, datum/tgui/master_ui, datum/ui_state/state) - . = ..() - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/arcade) - assets.send(user) +/datum/computer_file/program/arcade/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/simple/arcade), + ) /datum/computer_file/program/arcade/ui_data(mob/user) var/list/data = get_header_data() diff --git a/code/modules/modular_computers/file_system/programs/atmosscan.dm b/code/modules/modular_computers/file_system/programs/atmosscan.dm index fe3833facd0..5168e0bb79e 100644 --- a/code/modules/modular_computers/file_system/programs/atmosscan.dm +++ b/code/modules/modular_computers/file_system/programs/atmosscan.dm @@ -6,8 +6,6 @@ network_destination = "atmos scan" size = 4 tgui_id = "NtosAtmos" - ui_x = 300 - ui_y = 350 /datum/computer_file/program/atmosscan/ui_data(mob/user) var/list/data = get_header_data() diff --git a/code/modules/modular_computers/file_system/programs/borg_monitor.dm b/code/modules/modular_computers/file_system/programs/borg_monitor.dm index d3e7c3fb896..c2160a0e928 100644 --- a/code/modules/modular_computers/file_system/programs/borg_monitor.dm +++ b/code/modules/modular_computers/file_system/programs/borg_monitor.dm @@ -9,8 +9,6 @@ network_destination = "cyborg remote monitoring" size = 5 tgui_id = "NtosCyborgRemoteMonitor" - ui_x = 600 - ui_y = 800 /datum/computer_file/program/borg_monitor/ui_data(mob/user) var/list/data = get_header_data() diff --git a/code/modules/modular_computers/file_system/programs/bounty_board.dm b/code/modules/modular_computers/file_system/programs/bounty_board.dm index ebe7c48438c..46fde84f657 100644 --- a/code/modules/modular_computers/file_system/programs/bounty_board.dm +++ b/code/modules/modular_computers/file_system/programs/bounty_board.dm @@ -7,8 +7,6 @@ network_destination = "bounty board interface" size = 10 tgui_id = "NtosRequestKiosk" - ui_x = 550 - ui_y = 600 ///Reference to the currently logged in user. var/datum/bank_account/current_user ///The station request datum being affected by UI actions. diff --git a/code/modules/modular_computers/file_system/programs/card.dm b/code/modules/modular_computers/file_system/programs/card.dm index eb7b60b0706..5f1bbbba5cc 100644 --- a/code/modules/modular_computers/file_system/programs/card.dm +++ b/code/modules/modular_computers/file_system/programs/card.dm @@ -15,8 +15,6 @@ requires_ntnet = 0 size = 8 tgui_id = "NtosCard" - ui_x = 450 - ui_y = 520 var/is_centcom = FALSE var/minor = FALSE diff --git a/code/modules/modular_computers/file_system/programs/cargobounty.dm b/code/modules/modular_computers/file_system/programs/cargobounty.dm index e0604e263b6..d9bc65c98de 100644 --- a/code/modules/modular_computers/file_system/programs/cargobounty.dm +++ b/code/modules/modular_computers/file_system/programs/cargobounty.dm @@ -8,8 +8,6 @@ network_destination = "cargo claims interface" size = 10 tgui_id = "NtosBountyConsole" - ui_x = 750 - ui_y = 600 ///cooldown var for printing paper sheets. var/printer_ready = 0 ///The cargo account for grabbing the cargo account's credits. @@ -18,7 +16,7 @@ /datum/computer_file/program/bounty/proc/print_paper() new /obj/item/paper/bounty_printout(get_turf(computer)) -/datum/computer_file/program/bounty/ui_interact(mob/user, ui_key, datum/tgui/ui, force_open, datum/tgui/master_ui, datum/ui_state/state) +/datum/computer_file/program/bounty/ui_interact(mob/user, datum/tgui/ui) if(!GLOB.bounties_list.len) setup_bounties() printer_ready = world.time + PRINTER_TIMEOUT diff --git a/code/modules/modular_computers/file_system/programs/cargoship.dm b/code/modules/modular_computers/file_system/programs/cargoship.dm index c7319e1a2cd..3ba08a37199 100644 --- a/code/modules/modular_computers/file_system/programs/cargoship.dm +++ b/code/modules/modular_computers/file_system/programs/cargoship.dm @@ -6,8 +6,6 @@ network_destination = "ship scanner" size = 6 tgui_id = "NtosShipping" - ui_x = 450 - ui_y = 350 ///Account used for creating barcodes. var/datum/bank_account/payments_acc ///The amount which the tagger will receive for the sale. diff --git a/code/modules/modular_computers/file_system/programs/configurator.dm b/code/modules/modular_computers/file_system/programs/configurator.dm index 76da58ea11f..fae06544d5f 100644 --- a/code/modules/modular_computers/file_system/programs/configurator.dm +++ b/code/modules/modular_computers/file_system/programs/configurator.dm @@ -10,8 +10,6 @@ unsendable = 1 undeletable = 1 size = 4 - ui_x = 420 - ui_y = 630 available_on_ntnet = 0 requires_ntnet = 0 tgui_id = "NtosConfiguration" diff --git a/code/modules/modular_computers/file_system/programs/crewmanifest.dm b/code/modules/modular_computers/file_system/programs/crewmanifest.dm index 662c867a39a..c880de503bd 100644 --- a/code/modules/modular_computers/file_system/programs/crewmanifest.dm +++ b/code/modules/modular_computers/file_system/programs/crewmanifest.dm @@ -7,8 +7,6 @@ requires_ntnet = FALSE size = 4 tgui_id = "NtosCrewManifest" - ui_x = 400 - ui_y = 480 /datum/computer_file/program/crew_manifest/ui_static_data(mob/user) var/list/data = list() diff --git a/code/modules/modular_computers/file_system/programs/jobmanagement.dm b/code/modules/modular_computers/file_system/programs/jobmanagement.dm index 7b847c123e7..bccc6e4dbe2 100644 --- a/code/modules/modular_computers/file_system/programs/jobmanagement.dm +++ b/code/modules/modular_computers/file_system/programs/jobmanagement.dm @@ -7,8 +7,6 @@ requires_ntnet = 0 size = 4 tgui_id = "NtosJobManager" - ui_x = 400 - ui_y = 620 var/change_position_cooldown = 30 //Jobs you cannot open new positions for diff --git a/code/modules/modular_computers/file_system/programs/ntdownloader.dm b/code/modules/modular_computers/file_system/programs/ntdownloader.dm index 675ad579943..6401d6207f0 100644 --- a/code/modules/modular_computers/file_system/programs/ntdownloader.dm +++ b/code/modules/modular_computers/file_system/programs/ntdownloader.dm @@ -11,8 +11,6 @@ available_on_ntnet = 0 ui_header = "downloader_finished.gif" tgui_id = "NtosNetDownloader" - ui_x = 480 - ui_y = 735 var/datum/computer_file/program/downloaded_file = null var/hacked_download = 0 diff --git a/code/modules/modular_computers/file_system/programs/ntnrc_client.dm b/code/modules/modular_computers/file_system/programs/ntnrc_client.dm index 4ae5bd326b8..df9b02d8ec7 100644 --- a/code/modules/modular_computers/file_system/programs/ntnrc_client.dm +++ b/code/modules/modular_computers/file_system/programs/ntnrc_client.dm @@ -10,9 +10,6 @@ ui_header = "ntnrc_idle.gif" available_on_ntnet = 1 tgui_id = "NtosNetChat" - ui_x = 900 - ui_y = 675 - var/last_message // Used to generate the toolbar icon var/username var/active_channel diff --git a/code/modules/modular_computers/file_system/programs/powermonitor.dm b/code/modules/modular_computers/file_system/programs/powermonitor.dm index d2d57b14470..bd11474858b 100644 --- a/code/modules/modular_computers/file_system/programs/powermonitor.dm +++ b/code/modules/modular_computers/file_system/programs/powermonitor.dm @@ -12,8 +12,6 @@ network_destination = "power monitoring system" size = 9 tgui_id = "NtosPowerMonitor" - ui_x = 550 - ui_y = 700 var/has_alert = 0 var/obj/structure/cable/attached_wire diff --git a/code/modules/modular_computers/file_system/programs/radar.dm b/code/modules/modular_computers/file_system/programs/radar.dm index 20cf394715e..9b0e09ef999 100644 --- a/code/modules/modular_computers/file_system/programs/radar.dm +++ b/code/modules/modular_computers/file_system/programs/radar.dm @@ -10,11 +10,6 @@ network_destination = "tracking program" size = 5 tgui_id = "NtosRadar" - ui_x = 800 - ui_y = 600 - special_assets = list( - /datum/asset/simple/radar_assets, - ) ///List of trackable entities. Updated by the scan() proc. var/list/objects ///Ref of the last trackable object selected by the user in the tgui window. Updated in the ui_act() proc. @@ -45,6 +40,11 @@ STOP_PROCESSING(SSfastprocess, src) return ..() +/datum/computer_file/program/radar/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/simple/radar_assets), + ) + /datum/computer_file/program/radar/ui_data(mob/user) var/list/data = get_header_data() data["selected"] = selected diff --git a/code/modules/modular_computers/file_system/programs/robocontrol.dm b/code/modules/modular_computers/file_system/programs/robocontrol.dm index 910f9233277..8644ce09b43 100644 --- a/code/modules/modular_computers/file_system/programs/robocontrol.dm +++ b/code/modules/modular_computers/file_system/programs/robocontrol.dm @@ -9,8 +9,6 @@ network_destination = "robotics control network" size = 12 tgui_id = "NtosRoboControl" - ui_x = 550 - ui_y = 550 ///Number of simple robots on-station. var/botcount = 0 ///Used to find the location of the user for the purposes of summoning robots. diff --git a/code/modules/modular_computers/file_system/programs/sm_monitor.dm b/code/modules/modular_computers/file_system/programs/sm_monitor.dm index d78ed9239e3..8b6db67d746 100644 --- a/code/modules/modular_computers/file_system/programs/sm_monitor.dm +++ b/code/modules/modular_computers/file_system/programs/sm_monitor.dm @@ -9,8 +9,6 @@ network_destination = "supermatter monitoring system" size = 5 tgui_id = "NtosSupermatterMonitor" - ui_x = 600 - ui_y = 350 var/last_status = SUPERMATTER_INACTIVE var/list/supermatters var/obj/machinery/power/supermatter_crystal/active // Currently selected supermatter crystal. diff --git a/code/modules/modular_computers/laptop_vendor.dm b/code/modules/modular_computers/laptop_vendor.dm index ab13cc0fbd9..6608630fb77 100644 --- a/code/modules/modular_computers/laptop_vendor.dm +++ b/code/modules/modular_computers/laptop_vendor.dm @@ -27,9 +27,6 @@ var/dev_printer = 0 // 0: None, 1: Standard var/dev_card = 0 // 0: None, 1: Standard - ui_x = 500 - ui_y = 400 - // Removes all traces of old order and allows you to begin configuration from scratch. /obj/machinery/lapvend/proc/reset_order() state = 0 @@ -224,15 +221,15 @@ return TRUE return FALSE -/obj/machinery/lapvend/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) +/obj/machinery/lapvend/ui_interact(mob/user, datum/tgui/ui) if(machine_stat & (BROKEN | NOPOWER | MAINT)) if(ui) ui.close() return FALSE - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if (!ui) - ui = new(user, src, ui_key, "ComputerFabricator", "Personal Computer Vendor", ui_x, ui_y, state = state) + ui = new(user, src, "ComputerFabricator") ui.open() /obj/machinery/lapvend/attackby(obj/item/I, mob/user) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index d53e9aab03a..ac3a4d8ff4f 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -1,4 +1,4 @@ -/* +/** * Paper * also scraps of paper * @@ -11,12 +11,11 @@ #define MODE_WRITING 1 #define MODE_STAMPING 2 - /** - ** This is a custom ui state. All it really does is keep track of pen - ** being used and if they are editing it or not. This way we can keep - ** the data with the ui rather than on the paper - **/ + * This is a custom ui state. All it really does is keep track of pen + * being used and if they are editing it or not. This way we can keep + * the data with the ui rather than on the paper + */ /datum/ui_state/default/paper_state /// What edit mode we are in and who is /// writing on it right now @@ -33,7 +32,6 @@ var/stamp_name = "" var/stamp_class = "" - /datum/ui_state/default/paper_state/proc/copy_from(datum/ui_state/default/paper_state/from) switch(from.edit_mode) if(MODE_READING) @@ -49,12 +47,11 @@ stamp_class = from.stamp_class stamp_name = from.stamp_name - /** - ** Paper is now using markdown (like in github pull notes) for ALL rendering - ** so we do loose a bit of functionality but we gain in easy of use of - ** paper and getting rid of that crashing bug - **/ + * Paper is now using markdown (like in github pull notes) for ALL rendering + * so we do loose a bit of functionality but we gain in easy of use of + * paper and getting rid of that crashing bug + */ /obj/item/paper name = "paper" gender = NEUTER @@ -92,9 +89,6 @@ var/contact_poison // Reagent ID to transfer on contact var/contact_poison_volume = 0 - // ui stuff - var/ui_x = 600 - var/ui_y = 800 // Ok, so WHY are we caching the ui's? // Since we are not using autoupdate we // need some way to update the ui's of @@ -106,7 +100,6 @@ // people look at it var/list/viewing_ui = list() - /// When the sheet can be "filled out" /// This is an associated list var/list/form_fields = list() @@ -119,10 +112,10 @@ . = ..() /** - ** This proc copies this sheet of paper to a new - ** sheet, Makes it nice and easy for carbon and - ** the copyer machine - **/ + * This proc copies this sheet of paper to a new + * sheet, Makes it nice and easy for carbon and + * the copyer machine + */ /obj/item/paper/proc/copy() var/obj/item/paper/N = new(arglist(args)) N.info = info @@ -136,10 +129,10 @@ return N /** - ** This proc sets the text of the paper and updates the - ** icons. You can modify the pen_color after if need - ** be. - **/ + * This proc sets the text of the paper and updates the + * icons. You can modify the pen_color after if need + * be. + */ /obj/item/paper/proc/setText(text) info = text form_fields = null @@ -155,24 +148,16 @@ contact_poison = null . = ..() - /obj/item/paper/Initialize() . = ..() pixel_y = rand(-8, 8) pixel_x = rand(-9, 9) update_icon() - /obj/item/paper/update_icon_state() if(info && show_written_words) icon_state = "[initial(icon_state)]_words" -/obj/item/paper/ui_base_html(html) - /// This might change in a future PR - var/datum/asset/spritesheet/assets = get_asset_datum(/datum/asset/spritesheet/simple/paper) - . = replacetext(html, "", assets.css_tag()) - - /obj/item/paper/verb/rename() set name = "Rename paper" set category = "Object" @@ -192,17 +177,14 @@ name = "paper[(n_name ? text("- '[n_name]'") : null)]" add_fingerprint(usr) - /obj/item/paper/suicide_act(mob/user) user.visible_message("[user] scratches a grid on [user.p_their()] wrist with the paper! It looks like [user.p_theyre()] trying to commit sudoku...") return (BRUTELOSS) - /// ONLY USED FOR APRIL FOOLS /obj/item/paper/proc/reset_spamflag() spam_flag = FALSE - /obj/item/paper/attack_self(mob/user) if(rigged && (SSevents.holidays && SSevents.holidays[APRIL_FOOLS])) if(!spam_flag) @@ -211,7 +193,6 @@ addtimer(CALLBACK(src, .proc/reset_spamflag), 20) . = ..() - /obj/item/paper/proc/clearpaper() info = "" stamps = null @@ -219,30 +200,28 @@ cut_overlays() update_icon_state() - /obj/item/paper/examine_more(mob/user) ui_interact(user) return list("You try to read [src]...") - /obj/item/paper/can_interact(mob/user) if(!..()) return FALSE - if(resistance_flags & ON_FIRE) // Are we on fire? Hard ot read if so + // Are we on fire? Hard ot read if so + if(resistance_flags & ON_FIRE) return FALSE - if(user.is_blind()) // Even harder to read if your blind...braile? humm + // Even harder to read if your blind...braile? humm + if(user.is_blind()) return FALSE - return user.can_read(src) // checks if the user can read. - + // checks if the user can read. + return user.can_read(src) /** - ** This creates the ui, since we are using a custom state but not much else - ** just makes it easyer to make it. Also we make a custom ui_key as I am - ** not sure how tgui handles many producers? -**/ + * This creates the ui, since we are using a custom state but not much else + * just makes it easyer to make it. + */ /obj/item/paper/proc/create_ui(mob/user, datum/ui_state/default/paper_state/state) - ui_interact(user, "main", null, FALSE, null, state) - + ui_interact(user, state = state) /obj/item/proc/burn_paper_product_attackby_check(obj/item/I, mob/living/user, bypass_clumsy) var/ignition_message = I.ignition_effect(src, user) @@ -317,24 +296,27 @@ if(.) info = "[stars(info)]" -/obj/item/paper/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/default/paper_state/state = new) - ui_key = "main-[REF(user)]" - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/paper/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/spritesheet/simple/paper), + ) + +/obj/item/paper/ui_interact(mob/user, datum/tgui/ui, + datum/ui_state/default/paper_state/state) + // Update the state + ui = ui || SStgui.get_open_ui(user, src) + if(ui && state) + var/datum/ui_state/default/paper_state/current_state = ui.state + current_state.copy_from(state) + // Update the UI + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - var/datum/asset/assets = get_asset_datum(/datum/asset/spritesheet/simple/paper) - assets.send(user) - // The x size is because we double the width for the editor - ui = new(user, src, ui_key, "PaperSheet", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "PaperSheet", name) + state = new + ui.set_state(state) ui.set_autoupdate(FALSE) viewing_ui[user] = ui ui.open() - else - var/datum/ui_state/default/paper_state/last_state = ui.state - if(last_state) - last_state.copy_from(state) - else - ui.state = state - /obj/item/paper/ui_close(mob/user) /// close the editing window and change the mode @@ -344,7 +326,7 @@ // Again, we have to do this as autoupdate is off /obj/item/paper/proc/update_all_ui() for(var/datum/tgui/ui in viewing_ui) - ui.update() + ui.process(force = TRUE) // Again, we have to do this as autoupdate is off /obj/item/paper/proc/close_all_ui() @@ -380,7 +362,6 @@ return data - /obj/item/paper/ui_act(action, params, datum/tgui/ui, datum/ui_state/default/paper_state/state) if(..()) return @@ -442,21 +423,18 @@ . = TRUE - -/* +/** * Construction paper */ - /obj/item/paper/construction /obj/item/paper/construction/Initialize() . = ..() color = pick("FF0000", "#33cc33", "#ffb366", "#551A8B", "#ff80d5", "#4d94ff") -/* +/** * Natural paper */ - /obj/item/paper/natural/Initialize() . = ..() color = "#FFF5ED" diff --git a/code/modules/plumbing/plumbers/acclimator.dm b/code/modules/plumbing/plumbers/acclimator.dm index e16d891f268..bd87ab009f7 100644 --- a/code/modules/plumbing/plumbers/acclimator.dm +++ b/code/modules/plumbing/plumbers/acclimator.dm @@ -26,9 +26,6 @@ */ var/emptying = FALSE - ui_x = 320 - ui_y = 271 - /obj/machinery/plumbing/acclimator/Initialize(mapload, bolt) . = ..() AddComponent(/datum/component/plumbing/acclimator, bolt) @@ -65,10 +62,10 @@ if(HEATING) icon_state += "_hot" -/obj/machinery/plumbing/acclimator/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/plumbing/acclimator/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ChemAcclimator", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ChemAcclimator", name) ui.open() /obj/machinery/plumbing/acclimator/ui_data(mob/user) diff --git a/code/modules/plumbing/plumbers/filter.dm b/code/modules/plumbing/plumbers/filter.dm index afae76e5c5d..bb94d0e769a 100644 --- a/code/modules/plumbing/plumbers/filter.dm +++ b/code/modules/plumbing/plumbers/filter.dm @@ -13,17 +13,14 @@ ///whitelist of chems but their name instead of path var/list/english_right = list() - ui_x = 500 - ui_y = 300 - /obj/machinery/plumbing/filter/Initialize(mapload, bolt) . = ..() AddComponent(/datum/component/plumbing/filter, bolt) -/obj/machinery/plumbing/filter/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/plumbing/filter/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ChemFilter", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ChemFilter", name) ui.open() /obj/machinery/plumbing/filter/ui_data(mob/user) diff --git a/code/modules/plumbing/plumbers/pill_press.dm b/code/modules/plumbing/plumbers/pill_press.dm index f950d03c879..9fad7115787 100644 --- a/code/modules/plumbing/plumbers/pill_press.dm +++ b/code/modules/plumbing/plumbers/pill_press.dm @@ -28,9 +28,6 @@ ///max amount of pills allowed on our tile before we start storing them instead var/max_floor_products = 10 - ui_x = 300 - ui_y = 227 - /obj/machinery/plumbing/pill_press/examine(mob/user) . = ..() . += "The [name] currently has [stored_products.len] stored. There needs to be less than [max_floor_products] on the floor to continue dispensing." @@ -85,16 +82,15 @@ AM.forceMove(drop_location()) -/obj/machinery/plumbing/pill_press/ui_base_html(html) - var/datum/asset/spritesheet/simple/assets = get_asset_datum(/datum/asset/spritesheet/simple/pills) - . = replacetext(html, "", assets.css_tag()) +/obj/machinery/plumbing/pill_press/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/spritesheet/simple/pills), + ) -/obj/machinery/plumbing/pill_press/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/plumbing/pill_press/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - var/datum/asset/assets = get_asset_datum(/datum/asset/spritesheet/simple/pills) - assets.send(user) - ui = new(user, src, ui_key, "ChemPress", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ChemPress", name) ui.open() /obj/machinery/plumbing/pill_press/ui_data(mob/user) diff --git a/code/modules/plumbing/plumbers/reaction_chamber.dm b/code/modules/plumbing/plumbers/reaction_chamber.dm index 0ff34ed55e8..4fc1c18da4f 100644 --- a/code/modules/plumbing/plumbers/reaction_chamber.dm +++ b/code/modules/plumbing/plumbers/reaction_chamber.dm @@ -3,11 +3,8 @@ name = "reaction chamber" desc = "Keeps chemicals seperated until given conditions are met." icon_state = "reaction_chamber" - buffer = 200 reagent_flags = TRANSPARENT | NO_REACT - ui_x = 250 - ui_y = 225 /**list of set reagents that the reaction_chamber allows in, and must all be present before mixing is enabled. * example: list(/datum/reagent/water = 20, /datum/reagent/fuel/oil = 50) */ @@ -31,10 +28,10 @@ else icon_state = initial(icon_state) -/obj/machinery/plumbing/reaction_chamber/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/plumbing/reaction_chamber/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ChemReactionChamber", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ChemReactionChamber", name) ui.open() /obj/machinery/plumbing/reaction_chamber/ui_data(mob/user) diff --git a/code/modules/plumbing/plumbers/splitters.dm b/code/modules/plumbing/plumbers/splitters.dm index fe8fbd5ebb3..266cb3bf2db 100644 --- a/code/modules/plumbing/plumbers/splitters.dm +++ b/code/modules/plumbing/plumbers/splitters.dm @@ -15,17 +15,14 @@ //the maximum you can set the transfer to var/max_transfer = 9 - ui_x = 220 - ui_y = 105 - /obj/machinery/plumbing/splitter/Initialize(mapload, bolt) . = ..() AddComponent(/datum/component/plumbing/splitter, bolt) -/obj/machinery/plumbing/splitter/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/plumbing/splitter/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ChemSplitter", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ChemSplitter", name) ui.open() /obj/machinery/plumbing/splitter/ui_data(mob/user) diff --git a/code/modules/plumbing/plumbers/synthesizer.dm b/code/modules/plumbing/plumbers/synthesizer.dm index 24b5df99ec3..2d782e9d3e6 100644 --- a/code/modules/plumbing/plumbers/synthesizer.dm +++ b/code/modules/plumbing/plumbers/synthesizer.dm @@ -43,12 +43,9 @@ /datum/reagent/sulfur, /datum/reagent/toxin/acid, /datum/reagent/water, - /datum/reagent/fuel + /datum/reagent/fuel, ) - ui_x = 300 - ui_y = 375 - /obj/machinery/plumbing/synthesizer/Initialize(mapload, bolt) . = ..() AddComponent(/datum/component/plumbing/simple_supply, bolt) @@ -60,10 +57,10 @@ return reagents.add_reagent(reagent_id, amount) -/obj/machinery/plumbing/synthesizer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/plumbing/synthesizer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ChemSynthesizer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ChemSynthesizer", name) ui.open() /obj/machinery/plumbing/synthesizer/ui_data(mob/user) diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 247ce4ef186..6da99752a4d 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -57,8 +57,6 @@ damage_deflection = 10 resistance_flags = FIRE_PROOF interaction_flags_machine = INTERACT_MACHINE_WIRES_IF_OPEN | INTERACT_MACHINE_ALLOW_SILICON | INTERACT_MACHINE_OPEN_SILICON - ui_x = 450 - ui_y = 460 var/lon_range = 1.5 var/area/area @@ -849,12 +847,10 @@ if((machine_stat & MAINT) && !opened) //no board; no interface return -/obj/machinery/power/apc/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - +/obj/machinery/power/apc/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Apc", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Apc", name) ui.open() /obj/machinery/power/apc/ui_data(mob/user) diff --git a/code/modules/power/gravitygenerator.dm b/code/modules/power/gravitygenerator.dm index a3ce0fa42f9..002bcfc9fd9 100644 --- a/code/modules/power/gravitygenerator.dm +++ b/code/modules/power/gravitygenerator.dm @@ -116,8 +116,6 @@ GLOBAL_LIST_EMPTY(gravity_generators) // We will keep track of this by adding ne sprite_number = 8 use_power = IDLE_POWER_USE interaction_flags_machine = INTERACT_MACHINE_ALLOW_SILICON | INTERACT_MACHINE_OFFLINE - ui_x = 400 - ui_y = 165 var/on = TRUE var/breaker = TRUE var/list/parts = list() @@ -222,11 +220,10 @@ GLOBAL_LIST_EMPTY(gravity_generators) // We will keep track of this by adding ne return return ..() -/obj/machinery/gravity_generator/main/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/gravity_generator/main/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "GravityGenerator", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "GravityGenerator", name) ui.open() /obj/machinery/gravity_generator/main/ui_data(mob/user) diff --git a/code/modules/power/monitor.dm b/code/modules/power/monitor.dm index 974fb1b9e2e..393d403c4df 100644 --- a/code/modules/power/monitor.dm +++ b/code/modules/power/monitor.dm @@ -11,8 +11,6 @@ active_power_usage = 100 circuit = /obj/item/circuitboard/computer/powermonitor tgui_id = "PowerMonitor" - ui_x = 550 - ui_y = 700 var/obj/structure/cable/attached_wire var/obj/machinery/power/apc/local_apc @@ -84,11 +82,10 @@ if(demand.len > record_size) demand.Cut(1, 2) -/obj/machinery/computer/monitor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/monitor/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "PowerMonitor", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "PowerMonitor", name) ui.open() /obj/machinery/computer/monitor/ui_data() diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index e2ec3378c27..47ca16f3a2a 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -7,8 +7,6 @@ density = TRUE anchored = FALSE use_power = NO_POWER_USE - ui_x = 450 - ui_y = 340 var/active = FALSE var/power_gen = 5000 @@ -222,11 +220,10 @@ /obj/machinery/power/port_gen/pacman/attack_paw(mob/user) interact(user) -/obj/machinery/power/port_gen/pacman/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/power/port_gen/pacman/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "PortableGenerator", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "PortableGenerator", name) ui.open() /obj/machinery/power/port_gen/pacman/ui_data() diff --git a/code/modules/power/singularity/particle_accelerator/particle_control.dm b/code/modules/power/singularity/particle_accelerator/particle_control.dm index 5e6e94ee057..f26edda43fc 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_control.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_control.dm @@ -10,8 +10,6 @@ active_power_usage = 10000 dir = NORTH mouse_opacity = MOUSE_OPACITY_OPAQUE - ui_x = 350 - ui_y = 185 var/strength_upper_limit = 2 var/interface_control = TRUE var/list/obj/structure/particle_accelerator/connected_parts @@ -277,11 +275,10 @@ return ..() return UI_CLOSE -/obj/machinery/particle_accelerator/control_box/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/particle_accelerator/control_box/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ParticleAccelerator", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ParticleAccelerator", name) ui.open() /obj/machinery/particle_accelerator/control_box/ui_data(mob/user) diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index af63f7ceb75..a2fd977d4f5 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -21,8 +21,6 @@ density = TRUE use_power = NO_POWER_USE circuit = /obj/item/circuitboard/machine/smes - ui_x = 340 - ui_y = 350 var/capacity = 5e6 // maximum charge var/charge = 0 // actual charge @@ -323,11 +321,10 @@ return -/obj/machinery/power/smes/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/power/smes/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Smes", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Smes", name) ui.open() /obj/machinery/power/smes/ui_data() diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index e030bb0bdd3..c8bdb7831f6 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -348,11 +348,10 @@ else . += mutable_appearance(icon, icon_screen) -/obj/machinery/power/solar_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/power/solar_control/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "SolarControl", name, 380, 230, master_ui, state) + ui = new(user, src, "SolarControl", name) ui.open() /obj/machinery/power/solar_control/ui_data() diff --git a/code/modules/power/turbine.dm b/code/modules/power/turbine.dm index 6321ed75a44..8924e1dd70c 100644 --- a/code/modules/power/turbine.dm +++ b/code/modules/power/turbine.dm @@ -56,8 +56,6 @@ resistance_flags = FIRE_PROOF CanAtmosPass = ATMOS_PASS_DENSITY circuit = /obj/item/circuitboard/machine/power_turbine - ui_x = 310 - ui_y = 150 var/opened = 0 var/obj/machinery/power/compressor/compressor var/turf/outturf @@ -249,11 +247,10 @@ default_deconstruction_crowbar(I) -/obj/machinery/power/turbine/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/power/turbine/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "TurbineComputer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "TurbineComputer", name) ui.open() /obj/machinery/power/turbine/ui_data(mob/user) @@ -292,8 +289,6 @@ icon_screen = "turbinecomp" icon_keyboard = "tech_key" circuit = /obj/item/circuitboard/computer/turbine_computer - ui_x = 310 - ui_y = 150 var/obj/machinery/power/compressor/compressor var/id = 0 @@ -313,11 +308,10 @@ else compressor = locate(/obj/machinery/power/compressor) in range(7, src) -/obj/machinery/computer/turbine_computer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/turbine_computer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "TurbineComputer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "TurbineComputer", name) ui.open() /obj/machinery/computer/turbine_computer/ui_data(mob/user) diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index bc6cd2ed4c3..86234b27ca3 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -22,8 +22,6 @@ interaction_flags_machine = INTERACT_MACHINE_OPEN | INTERACT_MACHINE_ALLOW_SILICON | INTERACT_MACHINE_OFFLINE resistance_flags = FIRE_PROOF | ACID_PROOF circuit = /obj/item/circuitboard/machine/chem_dispenser - ui_x = 565 - ui_y = 620 var/obj/item/stock_parts/cell/cell var/powerefficiency = 0.1 @@ -171,11 +169,10 @@ beaker = null cut_overlays() -/obj/machinery/chem_dispenser/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/chem_dispenser/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ChemDispenser", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ChemDispenser", name) if(user.hallucinating()) ui.set_autoupdate(FALSE) //to not ruin the immersion by constantly changing the fake chemicals ui.open() diff --git a/code/modules/reagents/chemistry/machinery/chem_heater.dm b/code/modules/reagents/chemistry/machinery/chem_heater.dm index 362fe121fac..c34b78f894e 100644 --- a/code/modules/reagents/chemistry/machinery/chem_heater.dm +++ b/code/modules/reagents/chemistry/machinery/chem_heater.dm @@ -7,8 +7,6 @@ idle_power_usage = 40 resistance_flags = FIRE_PROOF | ACID_PROOF circuit = /obj/item/circuitboard/machine/chem_heater - ui_x = 275 - ui_y = 320 var/obj/item/reagent_containers/beaker = null var/target_temperature = 300 @@ -91,11 +89,10 @@ replace_beaker() return ..() -/obj/machinery/chem_heater/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/chem_heater/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ChemHeater", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ChemHeater", name) ui.open() /obj/machinery/chem_heater/ui_data() diff --git a/code/modules/reagents/chemistry/machinery/chem_master.dm b/code/modules/reagents/chemistry/machinery/chem_master.dm index 24930231063..6c0e63e0f7c 100644 --- a/code/modules/reagents/chemistry/machinery/chem_master.dm +++ b/code/modules/reagents/chemistry/machinery/chem_master.dm @@ -9,8 +9,6 @@ idle_power_usage = 20 resistance_flags = FIRE_PROOF | ACID_PROOF circuit = /obj/item/circuitboard/machine/chem_master - ui_x = 465 - ui_y = 550 var/obj/item/reagent_containers/beaker = null var/obj/item/storage/pill_bottle/bottle = null @@ -152,21 +150,17 @@ bottle = null return ..() -/obj/machinery/chem_master/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/chem_master/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/spritesheet/simple/pills), + ) + +/obj/machinery/chem_master/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - var/datum/asset/assets = get_asset_datum(/datum/asset/spritesheet/simple/pills) - assets.send(user) - - ui = new(user, src, ui_key, "ChemMaster", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ChemMaster", name) ui.open() -//Insert our custom spritesheet css link into the html -/obj/machinery/chem_master/ui_base_html(html) - var/datum/asset/spritesheet/simple/assets = get_asset_datum(/datum/asset/spritesheet/simple/pills) - . = replacetext(html, "", assets.css_tag()) - /obj/machinery/chem_master/ui_data(mob/user) var/list/data = list() data["isBeakerLoaded"] = beaker ? 1 : 0 diff --git a/code/modules/reagents/chemistry/machinery/chem_synthesizer.dm b/code/modules/reagents/chemistry/machinery/chem_synthesizer.dm index 6ecc6788575..7dfd60ecaa2 100644 --- a/code/modules/reagents/chemistry/machinery/chem_synthesizer.dm +++ b/code/modules/reagents/chemistry/machinery/chem_synthesizer.dm @@ -7,18 +7,14 @@ resistance_flags = INDESTRUCTIBLE | FIRE_PROOF | ACID_PROOF | LAVA_PROOF flags_1 = NODECONSTRUCT_1 use_power = NO_POWER_USE - ui_x = 390 - ui_y = 330 - var/static/list/shortcuts = list( "meth" = /datum/reagent/drug/methamphetamine ) -/obj/machinery/chem_dispenser/chem_synthesizer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/chem_dispenser/chem_synthesizer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ChemDebugSynthesizer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "ChemDebugSynthesizer", name) ui.open() /obj/machinery/chem_dispenser/chem_synthesizer/ui_act(action, params) diff --git a/code/modules/reagents/chemistry/machinery/pandemic.dm b/code/modules/reagents/chemistry/machinery/pandemic.dm index bed1f93060d..df56eaa79ec 100644 --- a/code/modules/reagents/chemistry/machinery/pandemic.dm +++ b/code/modules/reagents/chemistry/machinery/pandemic.dm @@ -11,8 +11,6 @@ idle_power_usage = 20 resistance_flags = ACID_PROOF circuit = /obj/item/circuitboard/computer/pandemic - ui_x = 520 - ui_y = 550 var/wait var/datum/symptom/selected_symptom @@ -145,10 +143,10 @@ beaker = null update_icon() -/obj/machinery/computer/pandemic/ui_interact(mob/user, ui_key = "main", datum/tgui/ui, force_open = FALSE, datum/tgui/master_ui, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/pandemic/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Pandemic", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "Pandemic", name) ui.open() /obj/machinery/computer/pandemic/ui_data(mob/user) diff --git a/code/modules/reagents/chemistry/machinery/smoke_machine.dm b/code/modules/reagents/chemistry/machinery/smoke_machine.dm index d5dd6b4f0a3..41b8c94ffd6 100644 --- a/code/modules/reagents/chemistry/machinery/smoke_machine.dm +++ b/code/modules/reagents/chemistry/machinery/smoke_machine.dm @@ -7,8 +7,6 @@ icon_state = "smoke0" density = TRUE circuit = /obj/item/circuitboard/machine/smoke_machine - ui_x = 350 - ui_y = 350 var/efficiency = 10 var/on = FALSE @@ -103,11 +101,10 @@ reagents.clear_reagents() return ..() -/obj/machinery/smoke_machine/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/smoke_machine/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "SmokeMachine", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "SmokeMachine", name) ui.open() /obj/machinery/smoke_machine/ui_data(mob/user) diff --git a/code/modules/recycling/disposal/bin.dm b/code/modules/recycling/disposal/bin.dm index 485c81e69ea..f8eb5607209 100644 --- a/code/modules/recycling/disposal/bin.dm +++ b/code/modules/recycling/disposal/bin.dm @@ -11,8 +11,6 @@ interaction_flags_machine = INTERACT_MACHINE_OPEN | INTERACT_MACHINE_WIRES_IF_OPEN | INTERACT_MACHINE_ALLOW_SILICON | INTERACT_MACHINE_OPEN_SILICON obj_flags = CAN_BE_HIT | USES_TGUI flags_1 = RAD_PROTECT_CONTENTS_1 | RAD_NO_CONTAMINATE_1 - ui_x = 300 - ui_y = 180 var/datum/gas_mixture/air_contents // internal reservoir var/full_pressure = FALSE @@ -279,13 +277,15 @@ // handle machine interaction -/obj/machinery/disposal/bin/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.notcontained_state) +/obj/machinery/disposal/bin/ui_state(mob/user) + return GLOB.notcontained_state + +/obj/machinery/disposal/bin/ui_interact(mob/user, datum/tgui/ui) if(machine_stat & BROKEN) return - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "DisposalUnit", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "DisposalUnit", name) ui.open() /obj/machinery/disposal/bin/ui_data(mob/user) diff --git a/code/modules/research/bepis.dm b/code/modules/research/bepis.dm index e49b8ced80a..69cc42b1a54 100644 --- a/code/modules/research/bepis.dm +++ b/code/modules/research/bepis.dm @@ -33,10 +33,13 @@ var/inaccuracy_percentage = 1.5 var/positive_cash_offset = 0 var/negative_cash_offset = 0 - var/minor_rewards = list(/obj/item/stack/circuit_stack/full, //To add a new minor reward, add it here. - /obj/item/pen/survival, - /obj/item/circuitboard/machine/sleeper/party, - /obj/item/toy/sprayoncan) + var/minor_rewards = list( + //To add a new minor reward, add it here. + /obj/item/stack/circuit_stack/full, + /obj/item/pen/survival, + /obj/item/circuitboard/machine/sleeper/party, + /obj/item/toy/sprayoncan, + ) var/static/list/item_list = list() /obj/machinery/rnd/bepis/attackby(obj/item/O, mob/user, params) @@ -179,10 +182,10 @@ icon_state = "chamber" return -/obj/machinery/rnd/bepis/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/rnd/bepis/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "Bepis", name, 500, 480, master_ui, state) + ui = new(user, src, "Bepis", name) ui.open() RefreshParts() diff --git a/code/modules/research/nanites/nanite_chamber_computer.dm b/code/modules/research/nanites/nanite_chamber_computer.dm index b9623b751dd..70e4d055907 100644 --- a/code/modules/research/nanites/nanite_chamber_computer.dm +++ b/code/modules/research/nanites/nanite_chamber_computer.dm @@ -5,8 +5,6 @@ var/obj/item/disk/nanite_program/disk icon_screen = "nanite_chamber_control" circuit = /obj/item/circuitboard/computer/nanite_chamber_control - ui_x = 380 - ui_y = 570 /obj/machinery/computer/nanite_chamber_control/Initialize() . = ..() @@ -25,10 +23,10 @@ find_chamber() ..() -/obj/machinery/computer/nanite_chamber_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/nanite_chamber_control/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "NaniteChamberControl", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "NaniteChamberControl", name) ui.open() /obj/machinery/computer/nanite_chamber_control/ui_data() diff --git a/code/modules/research/nanites/nanite_cloud_controller.dm b/code/modules/research/nanites/nanite_cloud_controller.dm index 3ba7834f694..27384c66ace 100644 --- a/code/modules/research/nanites/nanite_cloud_controller.dm +++ b/code/modules/research/nanites/nanite_cloud_controller.dm @@ -4,8 +4,6 @@ icon = 'icons/obj/machines/research.dmi' icon_state = "nanite_cloud_controller" circuit = /obj/item/circuitboard/computer/nanite_cloud_controller - ui_x = 375 - ui_y = 700 var/obj/item/disk/nanite_program/disk var/list/datum/nanite_cloud_backup/cloud_backups = list() @@ -59,10 +57,10 @@ backup.nanites = cloud_copy investigate_log("[key_name(user)] created a new nanite cloud backup with id #[cloud_id]", INVESTIGATE_NANITES) -/obj/machinery/computer/nanite_cloud_controller/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/nanite_cloud_controller/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "NaniteCloudControl", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "NaniteCloudControl", name) ui.open() /obj/machinery/computer/nanite_cloud_controller/ui_data() diff --git a/code/modules/research/nanites/nanite_program_hub.dm b/code/modules/research/nanites/nanite_program_hub.dm index 7a90a8d27ca..21eb6820257 100644 --- a/code/modules/research/nanites/nanite_program_hub.dm +++ b/code/modules/research/nanites/nanite_program_hub.dm @@ -7,22 +7,20 @@ anchored = TRUE density = TRUE circuit = /obj/item/circuitboard/machine/nanite_program_hub - ui_x = 500 - ui_y = 700 var/obj/item/disk/nanite_program/disk var/datum/techweb/linked_techweb var/current_category = "Main" var/detail_view = TRUE var/categories = list( - list(name = "Utility Nanites"), - list(name = "Medical Nanites"), - list(name = "Sensor Nanites"), - list(name = "Augmentation Nanites"), - list(name = "Suppression Nanites"), - list(name = "Weaponized Nanites"), - list(name = "Protocols") - ) + list(name = "Utility Nanites"), + list(name = "Medical Nanites"), + list(name = "Sensor Nanites"), + list(name = "Augmentation Nanites"), + list(name = "Suppression Nanites"), + list(name = "Weaponized Nanites"), + list(name = "Protocols"), + ) /obj/machinery/nanite_program_hub/Initialize() . = ..() @@ -65,10 +63,10 @@ eject(user) return -/obj/machinery/nanite_program_hub/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/nanite_program_hub/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "NaniteProgramHub", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "NaniteProgramHub", name) ui.open() /obj/machinery/nanite_program_hub/ui_data() diff --git a/code/modules/research/nanites/nanite_programmer.dm b/code/modules/research/nanites/nanite_programmer.dm index 4fbe699f94e..7dfffbd7475 100644 --- a/code/modules/research/nanites/nanite_programmer.dm +++ b/code/modules/research/nanites/nanite_programmer.dm @@ -10,8 +10,6 @@ density = TRUE flags_1 = HEAR_1 circuit = /obj/item/circuitboard/machine/nanite_programmer - ui_x = 420 - ui_y = 550 /obj/machinery/nanite_programmer/attackby(obj/item/I, mob/user) if(istype(I, /obj/item/disk/nanite_program)) @@ -52,10 +50,10 @@ eject(user) return -/obj/machinery/nanite_programmer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/nanite_programmer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "NaniteProgrammer", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "NaniteProgrammer", name) ui.open() /obj/machinery/nanite_programmer/ui_data() diff --git a/code/modules/research/nanites/nanite_remote.dm b/code/modules/research/nanites/nanite_remote.dm index b222b2ad358..e3f5a0f286c 100644 --- a/code/modules/research/nanites/nanite_remote.dm +++ b/code/modules/research/nanites/nanite_remote.dm @@ -80,10 +80,13 @@ var/datum/nanite_program/relay/N = X N.relay_signal(code, relay_code, source) -/obj/item/nanite_remote/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/item/nanite_remote/ui_state(mob/user) + return GLOB.hands_state + +/obj/item/nanite_remote/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "NaniteRemote", name, 420, 500, master_ui, state) + ui = new(user, src, "NaniteRemote", name) ui.open() /obj/item/nanite_remote/ui_data() @@ -94,7 +97,6 @@ data["locked"] = locked data["saved_settings"] = saved_settings data["program_name"] = current_program_name - return data /obj/item/nanite_remote/ui_act(action, params) diff --git a/code/modules/ruins/spaceruin_code/TheDerelict.dm b/code/modules/ruins/spaceruin_code/TheDerelict.dm index e153b159cde..65a81e289d0 100644 --- a/code/modules/ruins/spaceruin_code/TheDerelict.dm +++ b/code/modules/ruins/spaceruin_code/TheDerelict.dm @@ -20,7 +20,6 @@ name = "Vault Raider Objectives" info = "Objectives #1: Find out what is hidden in Kosmicheskaya Stantsiya 13s Vault" - /// Vault controller for use on the derelict/KS13. /obj/machinery/computer/vaultcontroller name = "vault controller" @@ -38,15 +37,10 @@ var/siphoned_power = 0 var/siphon_max = 1e7 - ui_x = 300 - ui_y = 120 - - /obj/machinery/computer/monitor/examine(mob/user) . = ..() . += "It appears to be powered via a cable connector." - //Checks for cable connection, charges if possible. /obj/machinery/computer/vaultcontroller/process() if(siphoned_power >= siphon_max) @@ -55,13 +49,11 @@ if(attached_cable) attempt_siphon() - ///Looks for a cable connection beneath the machine. /obj/machinery/computer/vaultcontroller/proc/update_cable() var/turf/T = get_turf(src) attached_cable = locate(/obj/structure/cable) in T - ///Initializes airlock links. /obj/machinery/computer/vaultcontroller/proc/find_airlocks() for(var/obj/machinery/door/airlock/A in GLOB.airlocks) @@ -73,7 +65,6 @@ door2 = A break - ///Tries to charge from powernet excess, no upper limit except max charge. /obj/machinery/computer/vaultcontroller/proc/attempt_siphon() var/surpluspower = clamp(attached_cable.surplus(), 0, (siphon_max - siphoned_power)) @@ -81,7 +72,6 @@ attached_cable.add_load(surpluspower) siphoned_power += surpluspower - ///Handles the doors closing /obj/machinery/computer/vaultcontroller/proc/cycle_close(obj/machinery/door/airlock/A) A.safe = FALSE //Make sure its forced closed, always @@ -89,14 +79,12 @@ A.close() A.bolt() - ///Handles the doors opening /obj/machinery/computer/vaultcontroller/proc/cycle_open(obj/machinery/door/airlock/A) A.unbolt() A.open() A.bolt() - ///Attempts to lock the vault doors /obj/machinery/computer/vaultcontroller/proc/lock_vault() if(door1 && !door1.density) @@ -106,7 +94,6 @@ if(door1.density && door1.locked && door2.density && door2.locked) locked = TRUE - ///Attempts to unlock the vault doors /obj/machinery/computer/vaultcontroller/proc/unlock_vault() if(door1 && door1.density) @@ -116,7 +103,6 @@ if(!door1.density && door1.locked && !door2.density && door2.locked) locked = FALSE - ///Attempts to lock/unlock vault doors, if machine is charged. /obj/machinery/computer/vaultcontroller/proc/activate_lock() if(siphoned_power < siphon_max) @@ -128,15 +114,12 @@ else lock_vault() - -/obj/machinery/computer/vaultcontroller/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/vaultcontroller/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "VaultController", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "VaultController", name) ui.open() - /obj/machinery/computer/vaultcontroller/ui_act(action, params) if(..()) return @@ -144,7 +127,6 @@ if("togglelock") activate_lock() - /obj/machinery/computer/vaultcontroller/ui_data() var/list/data = list() data["stored"] = siphoned_power @@ -152,7 +134,6 @@ data["doorstatus"] = locked return data - ///Airlock that can't be deconstructed, broken or hacked. /obj/machinery/door/airlock/vault/derelict locked = TRUE @@ -161,14 +142,12 @@ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF id_tag = "derelictvault" - ///Overrides screwdriver attack to prevent all deconstruction and hacking. /obj/machinery/door/airlock/vault/derelict/attackby(obj/item/C, mob/user, params) if(C.tool_behaviour == TOOL_SCREWDRIVER) return ..() - // So drones can teach borgs and AI dronespeak. For best effect, combine with mother drone lawset. /obj/item/dronespeak_manual name = "dronespeak manual" diff --git a/code/modules/security_levels/keycard_authentication.dm b/code/modules/security_levels/keycard_authentication.dm index 28b2dfbaa9c..bd424474a98 100644 --- a/code/modules/security_levels/keycard_authentication.dm +++ b/code/modules/security_levels/keycard_authentication.dm @@ -15,8 +15,6 @@ GLOBAL_DATUM_INIT(keycard_events, /datum/events, new) power_channel = AREA_USAGE_ENVIRON req_access = list(ACCESS_KEYCARD_AUTH) resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - ui_x = 375 - ui_y = 125 var/datum/callback/ev var/event = "" @@ -33,11 +31,13 @@ GLOBAL_DATUM_INIT(keycard_events, /datum/events, new) QDEL_NULL(ev) return ..() -/obj/machinery/keycard_auth/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/keycard_auth/ui_state(mob/user) + return GLOB.physical_state + +/obj/machinery/keycard_auth/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "KeycardAuth", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "KeycardAuth", name) ui.open() /obj/machinery/keycard_auth/ui_data() diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 198a31bade4..5cc8fbe33b1 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -8,8 +8,6 @@ desc = "For shuttle control." icon_screen = "shuttle" icon_keyboard = "tech_key" - ui_x = 400 - ui_y = 350 var/auth_need = 3 var/list/authorized = list() @@ -19,11 +17,14 @@ say("Please equip your ID card into your ID slot to authenticate.") . = ..() -/obj/machinery/computer/emergency_shuttle/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.human_adjacent_state) +/obj/machinery/computer/emergency_shuttle/ui_state(mob/user) + return GLOB.human_adjacent_state - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/emergency_shuttle/ui_interact(mob/user, datum/tgui/ui) + + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "EmergencyShuttleConsole", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "EmergencyShuttleConsole", name) ui.open() /obj/machinery/computer/emergency_shuttle/ui_data() diff --git a/code/modules/station_goals/bsa.dm b/code/modules/station_goals/bsa.dm index 48324aa064c..7877971f033 100644 --- a/code/modules/station_goals/bsa.dm +++ b/code/modules/station_goals/bsa.dm @@ -235,19 +235,19 @@ circuit = /obj/item/circuitboard/computer/bsa_control icon = 'icons/obj/machines/particle_accelerator.dmi' icon_state = "control_boxp" - ui_x = 400 - ui_y = 220 var/obj/machinery/bsa/full/cannon var/notice var/target var/area_aim = FALSE //should also show areas for targeting -/obj/machinery/computer/bsa_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/bsa_control/ui_state(mob/user) + return GLOB.physical_state + +/obj/machinery/computer/bsa_control/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "BluespaceArtillery", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "BluespaceArtillery", name) ui.open() /obj/machinery/computer/bsa_control/ui_data() diff --git a/code/modules/station_goals/dna_vault.dm b/code/modules/station_goals/dna_vault.dm index eed291b61be..71a256c0f7b 100644 --- a/code/modules/station_goals/dna_vault.dm +++ b/code/modules/station_goals/dna_vault.dm @@ -131,9 +131,6 @@ light_range = 3 light_power = 1.5 light_color = LIGHT_COLOR_CYAN - ui_x = 350 - ui_y = 400 - //High defaults so it's not completed automatically if there's no station goal var/animals_max = 100 @@ -176,15 +173,13 @@ qdel(filler) . = ..() - -/obj/machinery/dna_vault/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/dna_vault/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) roll_powers(user) - ui = new(user, src, ui_key, "DnaVault", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "DnaVault", name) ui.open() - /obj/machinery/dna_vault/proc/roll_powers(mob/user) if(user in power_lottery) return diff --git a/code/modules/station_goals/shield.dm b/code/modules/station_goals/shield.dm index 57fd3aaa615..e9b8d039cc3 100644 --- a/code/modules/station_goals/shield.dm +++ b/code/modules/station_goals/shield.dm @@ -40,15 +40,12 @@ name = "satellite control" desc = "Used to control the satellite network." circuit = /obj/item/circuitboard/computer/sat_control - ui_x = 400 - ui_y = 305 - var/notice -/obj/machinery/computer/sat_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/sat_control/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "SatelliteControl", name, ui_x, ui_y, master_ui, state) + ui = new(user, src, "SatelliteControl", name) ui.open() /obj/machinery/computer/sat_control/ui_act(action, params) diff --git a/code/modules/tgui/external.dm b/code/modules/tgui/external.dm index 57fb28bf3ba..46b324e1512 100644 --- a/code/modules/tgui/external.dm +++ b/code/modules/tgui/external.dm @@ -1,7 +1,5 @@ /** - * tgui external - * - * Contains all external tgui declarations. + * External tgui definitions, such as src_object APIs. * * Copyright (c) 2020 Aleksej Komarov * SPDX-License-Identifier: MIT @@ -14,13 +12,9 @@ * If this proc is not implemented properly, the UI will not update correctly. * * required user mob The mob who opened/is using the UI. - * optional ui_key string The ui_key of the UI. * optional ui datum/tgui The UI to be updated, if it exists. - * optional force_open bool If the UI should be re-opened instead of updated. - * optional master_ui datum/tgui The parent UI. - * optional state datum/ui_state The state used to determine status. */ -/datum/proc/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) +/datum/proc/ui_interact(mob/user, datum/tgui/ui) return FALSE // Not implemented. /** @@ -40,10 +34,11 @@ * public * * Static Data to be sent to the UI. - * Static data differs from normal data in that it's large data that should be sent infrequently - * This is implemented optionally for heavy uis that would be sending a lot of redundant data - * frequently. - * Gets squished into one object on the frontend side, but the static part is cached. + * + * Static data differs from normal data in that it's large data that should be + * sent infrequently. This is implemented optionally for heavy uis that would + * be sending a lot of redundant data frequently. Gets squished into one + * object on the frontend side, but the static part is cached. * * required user mob The mob interacting with the UI. * @@ -55,18 +50,17 @@ /** * public * - * Forces an update on static data. Should be done manually whenever something happens to change static data. + * Forces an update on static data. Should be done manually whenever something + * happens to change static data. * * required user the mob currently interacting with the ui * optional ui ui to be updated - * optional ui_key ui key of ui to be updated */ -/datum/proc/update_static_data(mob/user, datum/tgui/ui, ui_key = "main") - ui = SStgui.try_update_ui(user, src, ui_key, ui) - // If there was no ui to update, there's no static data to update either. +/datum/proc/update_static_data(mob/user, datum/tgui/ui) if(!ui) - return - ui.push_data(null, ui_static_data(user), TRUE) + ui = SStgui.get_open_ui(user, src) + if(ui) + ui.send_full_update() /** * public @@ -88,17 +82,12 @@ * public * * Called on an object when a tgui object is being created, allowing you to - * customise the html - * For example: inserting a custom stylesheet that you need in the head + * push various assets to tgui, for examples spritesheets. * - * For this purpose, some tags are available in the html, to be parsed out - ^ with replacetext - * (customheadhtml) - Additions to the head tag - * - * required html the html base text + * return list List of asset datums or file paths. */ -/datum/proc/ui_base_html(html) - return html +/datum/proc/ui_assets(mob/user) + return list() /** * private @@ -110,6 +99,15 @@ /datum/proc/ui_host(mob/user) return src // Default src. +/** + * private + * + * The UI's state controller to be used for created uis + * This is a proc over a var for memory reasons + */ +/datum/proc/ui_state(mob/user) + return GLOB.default_state + /** * global * @@ -121,9 +119,17 @@ /** * global * - * Used to track UIs for a mob. + * Tracks open UIs for a user. */ -/mob/var/list/open_uis = list() +/mob/var/list/tgui_open_uis = list() + +/** + * global + * + * Tracks open windows for a user. + */ +/client/var/list/tgui_windows = list() + /** * public * @@ -140,17 +146,43 @@ * * required uiref ref The UI that was closed. */ -/client/verb/uiclose(ref as text) +/client/verb/uiclose(window_id as text) // Name the verb, and hide it from the user panel. set name = "uiclose" - set hidden = 1 + set hidden = TRUE + var/mob/user = src && src.mob + if(!user) + return + // Close all tgui datums based on window_id. + SStgui.force_close_window(user, window_id) - // Get the UI based on the ref. - var/datum/tgui/ui = locate(ref) - - // If we found the UI, close it. - if(istype(ui)) - ui.close() - // Unset machine just to be sure. - if(src && src.mob) - src.mob.unset_machine() +/** + * Middleware for /client/Topic. + * + * return bool Whether the topic is passed (TRUE), or cancelled (FALSE). + */ +/proc/tgui_Topic(href_list) + // Skip non-tgui topics + if(!href_list["tgui"]) + return TRUE + var/type = href_list["type"] + // Unconditionally collect tgui logs + if(type == "log") + log_tgui(usr, href_list["message"]) + // Locate window + var/window_id = href_list["window_id"] + var/datum/tgui_window/window + if(window_id) + window = usr.client.tgui_windows[window_id] + if(!window) + log_tgui(usr, "Error: Couldn't find the window datum, force closing.") + SStgui.force_close_window(usr, window_id) + return FALSE + // Decode payload + var/payload + if(href_list["payload"]) + payload = json_decode(href_list["payload"]) + // Pass message to window + if(window) + window.on_message(type, payload, href_list) + return FALSE diff --git a/code/modules/tgui/states.dm b/code/modules/tgui/states.dm index 33f42d5eb21..4a5ec565355 100644 --- a/code/modules/tgui/states.dm +++ b/code/modules/tgui/states.dm @@ -1,8 +1,6 @@ /** - * tgui states - * - * Base state and helpers for states. Just does some sanity checks, implement - * a state for in-depth checks. + * Base state and helpers for states. Just does some sanity checks, + * implement a proper state for in-depth checks. * * Copyright (c) 2020 Aleksej Komarov * SPDX-License-Identifier: MIT @@ -30,9 +28,10 @@ . = max(., UI_INTERACTIVE) // Regular ghosts can always at least view if in range. - var/clientviewlist = getviewsize(user.client.view) - if(get_dist(src_object, user) < max(clientviewlist[1],clientviewlist[2])) - . = max(., UI_UPDATE) + if(user.client) + var/clientviewlist = getviewsize(user.client.view) + if(get_dist(src_object, user) < max(clientviewlist[1], clientviewlist[2])) + . = max(., UI_UPDATE) // Check if the state allows interaction var/result = state.can_use_topic(src_object, user) @@ -50,7 +49,8 @@ * return UI_state The state of the UI. */ /datum/ui_state/proc/can_use_topic(src_object, mob/user) - return UI_CLOSE // Don't allow interaction by default. + // Don't allow interaction by default. + return UI_CLOSE /** * public @@ -60,11 +60,14 @@ * return UI_state The state of the UI. */ /mob/proc/shared_ui_interaction(src_object) - if(!client) // Close UIs if mindless. + // Close UIs if mindless. + if(!client) return UI_CLOSE - else if(stat) // Disable UIs if unconcious. + // Disable UIs if unconcious. + else if(stat) return UI_DISABLED - else if(incapacitated()) // Update UIs if incapicitated but concious. + // Update UIs if incapicitated but concious. + else if(incapacitated()) return UI_UPDATE return UI_INTERACTIVE @@ -74,12 +77,14 @@ return UI_UPDATE /mob/living/silicon/ai/shared_ui_interaction(src_object) - if(lacks_power()) // Disable UIs if the AI is unpowered. + // Disable UIs if the AI is unpowered. + if(lacks_power()) return UI_DISABLED return ..() /mob/living/silicon/robot/shared_ui_interaction(src_object) - if(!cell || cell.charge <= 0 || lockcharge) // Disable UIs if the Borg is unpowered or locked. + // Disable UIs if the Borg is unpowered or locked. + if(!cell || cell.charge <= 0 || lockcharge) return UI_DISABLED return ..() @@ -96,7 +101,8 @@ * return UI_state The state of the UI. */ /atom/proc/contents_ui_distance(src_object, mob/living/user) - return user.shared_living_ui_distance(src_object) // Just call this mob's check. + // Just call this mob's check. + return user.shared_living_ui_distance(src_object) /** * public @@ -108,17 +114,21 @@ * return UI_state The state of the UI. */ /mob/living/proc/shared_living_ui_distance(atom/movable/src_object, viewcheck = TRUE) - if(viewcheck && !(src_object in view(src))) // If the object is obscured, close it. + // If the object is obscured, close it. + if(viewcheck && !(src_object in view(src))) return UI_CLOSE - var/dist = get_dist(src_object, src) - if(dist <= 1) // Open and interact if 1-0 tiles away. + // Open and interact if 1-0 tiles away. + if(dist <= 1) return UI_INTERACTIVE - else if(dist <= 2) // View only if 2-3 tiles away. + // View only if 2-3 tiles away. + else if(dist <= 2) return UI_UPDATE - else if(dist <= 5) // Disable if 5 tiles away. + // Disable if 5 tiles away. + else if(dist <= 5) return UI_DISABLED - return UI_CLOSE // Otherwise, we got nothing. + // Otherwise, we got nothing. + return UI_CLOSE /mob/living/carbon/human/shared_living_ui_distance(atom/movable/src_object, viewcheck = TRUE) if(dna.check_mutation(TK) && tkMaxRangeCheck(src, src_object)) diff --git a/code/modules/tgui/states/admin.dm b/code/modules/tgui/states/admin.dm index 61fc3731188..227a2940785 100644 --- a/code/modules/tgui/states/admin.dm +++ b/code/modules/tgui/states/admin.dm @@ -2,6 +2,9 @@ * tgui state: admin_state * * Checks that the user is an admin, end-of-story. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(admin_state, /datum/ui_state/admin_state, new) diff --git a/code/modules/tgui/states/always.dm b/code/modules/tgui/states/always.dm index a741e2e3d4b..210f0896a2f 100644 --- a/code/modules/tgui/states/always.dm +++ b/code/modules/tgui/states/always.dm @@ -2,6 +2,9 @@ * tgui state: always_state * * Always grants the user UI_INTERACTIVE. Period. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(always_state, /datum/ui_state/always_state, new) diff --git a/code/modules/tgui/states/conscious.dm b/code/modules/tgui/states/conscious.dm index 4e2793d1300..670ca7c07e8 100644 --- a/code/modules/tgui/states/conscious.dm +++ b/code/modules/tgui/states/conscious.dm @@ -2,6 +2,9 @@ * tgui state: conscious_state * * Only checks if the user is conscious. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(conscious_state, /datum/ui_state/conscious_state, new) diff --git a/code/modules/tgui/states/contained.dm b/code/modules/tgui/states/contained.dm index f02424d01e6..1eb8edba25f 100644 --- a/code/modules/tgui/states/contained.dm +++ b/code/modules/tgui/states/contained.dm @@ -2,6 +2,9 @@ * tgui state: contained_state * * Checks that the user is inside the src_object. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(contained_state, /datum/ui_state/contained_state, new) diff --git a/code/modules/tgui/states/deep_inventory.dm b/code/modules/tgui/states/deep_inventory.dm index 43758cbab17..a2b9276a593 100644 --- a/code/modules/tgui/states/deep_inventory.dm +++ b/code/modules/tgui/states/deep_inventory.dm @@ -1,7 +1,11 @@ /** * tgui state: deep_inventory_state * - * Checks that the src_object is in the user's deep (backpack, box, toolbox, etc) inventory. + * Checks that the src_object is in the user's deep + * (backpack, box, toolbox, etc) inventory. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(deep_inventory_state, /datum/ui_state/deep_inventory_state, new) diff --git a/code/modules/tgui/states/default.dm b/code/modules/tgui/states/default.dm index 6bb159640e4..367e57beffa 100644 --- a/code/modules/tgui/states/default.dm +++ b/code/modules/tgui/states/default.dm @@ -1,7 +1,11 @@ /** * tgui state: default_state * - * Checks a number of things -- mostly physical distance for humans and view for robots. + * Checks a number of things -- mostly physical distance for humans + * and view for robots. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(default_state, /datum/ui_state/default, new) diff --git a/code/modules/tgui/states/hands.dm b/code/modules/tgui/states/hands.dm index aedae477dd2..1c885ed4140 100644 --- a/code/modules/tgui/states/hands.dm +++ b/code/modules/tgui/states/hands.dm @@ -2,6 +2,9 @@ * tgui state: hands_state * * Checks that the src_object is in the user's hands. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(hands_state, /datum/ui_state/hands_state, new) diff --git a/code/modules/tgui/states/human_adjacent.dm b/code/modules/tgui/states/human_adjacent.dm index 7aefe43e44c..2ac7c8637b6 100644 --- a/code/modules/tgui/states/human_adjacent.dm +++ b/code/modules/tgui/states/human_adjacent.dm @@ -3,6 +3,9 @@ * * In addition to default checks, only allows interaction for a * human adjacent user. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(human_adjacent_state, /datum/ui_state/human_adjacent_state, new) diff --git a/code/modules/tgui/states/inventory.dm b/code/modules/tgui/states/inventory.dm index 43fe2cb4512..dc5dd0d57e6 100644 --- a/code/modules/tgui/states/inventory.dm +++ b/code/modules/tgui/states/inventory.dm @@ -1,7 +1,11 @@ /** * tgui state: inventory_state * - * Checks that the src_object is in the user's top-level (hand, ear, pocket, belt, etc) inventory. + * Checks that the src_object is in the user's top-level + * (hand, ear, pocket, belt, etc) inventory. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(inventory_state, /datum/ui_state/inventory_state, new) diff --git a/code/modules/tgui/states/language_menu.dm b/code/modules/tgui/states/language_menu.dm index 5c816c8922a..6389b05cd5e 100644 --- a/code/modules/tgui/states/language_menu.dm +++ b/code/modules/tgui/states/language_menu.dm @@ -1,5 +1,8 @@ /** * tgui state: language_menu_state + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(language_menu_state, /datum/ui_state/language_menu, new) diff --git a/code/modules/tgui/states/not_incapacitated.dm b/code/modules/tgui/states/not_incapacitated.dm index 1b48f7f41a4..16dcb7881ed 100644 --- a/code/modules/tgui/states/not_incapacitated.dm +++ b/code/modules/tgui/states/not_incapacitated.dm @@ -2,6 +2,9 @@ * tgui state: not_incapacitated_state * * Checks that the user isn't incapacitated + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(not_incapacitated_state, /datum/ui_state/not_incapacitated_state, new) diff --git a/code/modules/tgui/states/notcontained.dm b/code/modules/tgui/states/notcontained.dm index 642c6ce95f4..1d4e6aec192 100644 --- a/code/modules/tgui/states/notcontained.dm +++ b/code/modules/tgui/states/notcontained.dm @@ -1,7 +1,11 @@ /** * tgui state: notcontained_state * - * Checks that the user is not inside src_object, and then makes the default checks. + * Checks that the user is not inside src_object, and then makes the + * default checks. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(notcontained_state, /datum/ui_state/notcontained_state, new) diff --git a/code/modules/tgui/states/observer.dm b/code/modules/tgui/states/observer.dm index 86ad776b135..d105de1c0c0 100644 --- a/code/modules/tgui/states/observer.dm +++ b/code/modules/tgui/states/observer.dm @@ -2,6 +2,9 @@ * tgui state: observer_state * * Checks that the user is an observer/ghost. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(observer_state, /datum/ui_state/observer_state, new) diff --git a/code/modules/tgui/states/physical.dm b/code/modules/tgui/states/physical.dm index 88c8a291aa8..3073039d14c 100644 --- a/code/modules/tgui/states/physical.dm +++ b/code/modules/tgui/states/physical.dm @@ -2,6 +2,9 @@ * tgui state: physical_state * * Short-circuits the default state to only check physical distance. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(physical_state, /datum/ui_state/physical, new) diff --git a/code/modules/tgui/states/self.dm b/code/modules/tgui/states/self.dm index b0c9500fbcf..4b6e3b9fd9f 100644 --- a/code/modules/tgui/states/self.dm +++ b/code/modules/tgui/states/self.dm @@ -2,6 +2,9 @@ * tgui state: self_state * * Only checks that the user and src_object are the same. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(self_state, /datum/ui_state/self_state, new) diff --git a/code/modules/tgui/states/zlevel.dm b/code/modules/tgui/states/zlevel.dm index 5e3ccfb7de2..64ea2fa1c0e 100644 --- a/code/modules/tgui/states/zlevel.dm +++ b/code/modules/tgui/states/zlevel.dm @@ -2,6 +2,9 @@ * tgui state: z_state * * Only checks that the Z-level of the user and src_object are the same. + * + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT */ GLOBAL_DATUM_INIT(z_state, /datum/ui_state/z_state, new) diff --git a/code/modules/tgui/subsystem.dm b/code/modules/tgui/subsystem.dm deleted file mode 100644 index 3fbf98c3df3..00000000000 --- a/code/modules/tgui/subsystem.dm +++ /dev/null @@ -1,250 +0,0 @@ -/** - * tgui subsystem - * - * Contains all tgui state and subsystem code. - * - * Copyright (c) 2020 Aleksej Komarov - * SPDX-License-Identifier: MIT - */ - -/** - * public - * - * Get an open UI given a user, src_object, and ui_key and try to update it with data. - * - * required user mob The mob who opened/is using the UI. - * required src_object datum The object/datum which owns the UI. - * required ui_key string The ui_key of the UI. - * optional ui datum/tgui The UI to be updated, if it exists. - * optional force_open bool If the UI should be re-opened instead of updated. - * - * return datum/tgui The found UI. - */ -/datum/controller/subsystem/tgui/proc/try_update_ui(mob/user, datum/src_object, ui_key, datum/tgui/ui, force_open = FALSE) - if(isnull(ui)) // No UI was passed, so look for one. - ui = get_open_ui(user, src_object, ui_key) - - if(!isnull(ui)) - var/data = src_object.ui_data(user) // Get data from the src_object. - if(!force_open) // UI is already open; update it. - ui.push_data(data) - else // Re-open it anyways. - ui.reinitialize(null, data) - return ui // We found the UI, return it. - else - return null // We couldn't find a UI. - -/** - * private - * - * Get an open UI given a user, src_object, and ui_key. - * - * required user mob The mob who opened/is using the UI. - * required src_object datum The object/datum which owns the UI. - * required ui_key string The ui_key of the UI. - * - * return datum/tgui The found UI. - */ -/datum/controller/subsystem/tgui/proc/get_open_ui(mob/user, datum/src_object, ui_key) - var/src_object_key = "[REF(src_object)]" - if(isnull(open_uis[src_object_key]) || !istype(open_uis[src_object_key], /list)) - return null // No UIs open. - else if(isnull(open_uis[src_object_key][ui_key]) || !istype(open_uis[src_object_key][ui_key], /list)) - return null // No UIs open for this object. - - for(var/datum/tgui/ui in open_uis[src_object_key][ui_key]) // Find UIs for this object. - if(ui.user == user) // Make sure we have the right user - return ui - - return null // Couldn't find a UI! - -/** - * private - * - * Update all UIs attached to src_object. - * - * required src_object datum The object/datum which owns the UIs. - * - * return int The number of UIs updated. - */ -/datum/controller/subsystem/tgui/proc/update_uis(datum/src_object) - var/src_object_key = "[REF(src_object)]" - if(isnull(open_uis[src_object_key]) || !istype(open_uis[src_object_key], /list)) - return 0 // Couldn't find any UIs for this object. - - var/update_count = 0 - for(var/ui_key in open_uis[src_object_key]) - for(var/datum/tgui/ui in open_uis[src_object_key][ui_key]) - if(ui && ui.src_object && ui.user && ui.src_object.ui_host(ui.user)) // Check the UI is valid. - ui.process(force = 1) // Update the UI. - update_count++ // Count each UI we update. - return update_count - -/** - * private - * - * Close all UIs attached to src_object. - * - * required src_object datum The object/datum which owns the UIs. - * - * return int The number of UIs closed. - */ -/datum/controller/subsystem/tgui/proc/close_uis(datum/src_object) - var/src_object_key = "[REF(src_object)]" - if(isnull(open_uis[src_object_key]) || !istype(open_uis[src_object_key], /list)) - return 0 // Couldn't find any UIs for this object. - - var/close_count = 0 - for(var/ui_key in open_uis[src_object_key]) - for(var/datum/tgui/ui in open_uis[src_object_key][ui_key]) - if(ui && ui.src_object && ui.user && ui.src_object.ui_host(ui.user)) // Check the UI is valid. - ui.close() // Close the UI. - close_count++ // Count each UI we close. - return close_count - -/** - * private - * - * Close *ALL* UIs - * - * return int The number of UIs closed. - */ -/datum/controller/subsystem/tgui/proc/close_all_uis() - var/close_count = 0 - for(var/src_object_key in open_uis) - for(var/ui_key in open_uis[src_object_key]) - for(var/datum/tgui/ui in open_uis[src_object_key][ui_key]) - if(ui && ui.src_object && ui.user && ui.src_object.ui_host(ui.user)) // Check the UI is valid. - ui.close() // Close the UI. - close_count++ // Count each UI we close. - return close_count - -/** - * private - * - * Update all UIs belonging to a user. - * - * required user mob The mob who opened/is using the UI. - * optional src_object datum If provided, only update UIs belonging this src_object. - * optional ui_key string If provided, only update UIs with this UI key. - * - * return int The number of UIs updated. - */ -/datum/controller/subsystem/tgui/proc/update_user_uis(mob/user, datum/src_object = null, ui_key = null) - if(isnull(user.open_uis) || !istype(user.open_uis, /list) || open_uis.len == 0) - return 0 // Couldn't find any UIs for this user. - - var/update_count = 0 - for(var/datum/tgui/ui in user.open_uis) - if((isnull(src_object) || !isnull(src_object) && ui.src_object == src_object) && (isnull(ui_key) || !isnull(ui_key) && ui.ui_key == ui_key)) - ui.process(force = 1) // Update the UI. - update_count++ // Count each UI we upadte. - return update_count - -/** - * private - * - * Close all UIs belonging to a user. - * - * required user mob The mob who opened/is using the UI. - * optional src_object datum If provided, only close UIs belonging this src_object. - * optional ui_key string If provided, only close UIs with this UI key. - * - * return int The number of UIs closed. - */ -/datum/controller/subsystem/tgui/proc/close_user_uis(mob/user, datum/src_object = null, ui_key = null) - if(isnull(user.open_uis) || !istype(user.open_uis, /list) || open_uis.len == 0) - return 0 // Couldn't find any UIs for this user. - - var/close_count = 0 - for(var/datum/tgui/ui in user.open_uis) - if((isnull(src_object) || !isnull(src_object) && ui.src_object == src_object) && (isnull(ui_key) || !isnull(ui_key) && ui.ui_key == ui_key)) - ui.close() // Close the UI. - close_count++ // Count each UI we close. - return close_count - -/** - * private - * - * Add a UI to the list of open UIs. - * - * required ui datum/tgui The UI to be added. - */ -/datum/controller/subsystem/tgui/proc/on_open(datum/tgui/ui) - var/src_object_key = "[REF(ui.src_object)]" - if(isnull(open_uis[src_object_key]) || !istype(open_uis[src_object_key], /list)) - open_uis[src_object_key] = list(ui.ui_key = list()) // Make a list for the ui_key and src_object. - else if(isnull(open_uis[src_object_key][ui.ui_key]) || !istype(open_uis[src_object_key][ui.ui_key], /list)) - open_uis[src_object_key][ui.ui_key] = list() // Make a list for the ui_key. - - // Append the UI to all the lists. - ui.user.open_uis |= ui - var/list/uis = open_uis[src_object_key][ui.ui_key] - uis |= ui - processing_uis |= ui - -/** - * private - * - * Remove a UI from the list of open UIs. - * - * required ui datum/tgui The UI to be removed. - * - * return bool If the UI was removed or not. - */ -/datum/controller/subsystem/tgui/proc/on_close(datum/tgui/ui) - var/src_object_key = "[REF(ui.src_object)]" - if(isnull(open_uis[src_object_key]) || !istype(open_uis[src_object_key], /list)) - return 0 // It wasn't open. - else if(isnull(open_uis[src_object_key][ui.ui_key]) || !istype(open_uis[src_object_key][ui.ui_key], /list)) - return 0 // It wasn't open. - - processing_uis.Remove(ui) // Remove it from the list of processing UIs. - if(ui.user) // If the user exists, remove it from them too. - ui.user.open_uis.Remove(ui) - var/Ukey = ui.ui_key - var/list/uis = open_uis[src_object_key][Ukey] // Remove it from the list of open UIs. - uis.Remove(ui) - if(!uis.len) - var/list/uiobj = open_uis[src_object_key] - uiobj.Remove(Ukey) - if(!uiobj.len) - open_uis.Remove(src_object_key) - - return 1 // Let the caller know we did it. - -/** - * private - * - * Handle client logout, by closing all their UIs. - * - * required user mob The mob which logged out. - * - * return int The number of UIs closed. - */ -/datum/controller/subsystem/tgui/proc/on_logout(mob/user) - return close_user_uis(user) - -/** - * private - * - * Handle clients switching mobs, by transferring their UIs. - * - * required user source The client's original mob. - * required user target The client's new mob. - * - * return bool If the UIs were transferred. - */ -/datum/controller/subsystem/tgui/proc/on_transfer(mob/source, mob/target) - if(!source || isnull(source.open_uis) || !istype(source.open_uis, /list) || open_uis.len == 0) - return 0 // The old mob had no open UIs. - - if(isnull(target.open_uis) || !istype(target.open_uis, /list)) - target.open_uis = list() // Create a list for the new mob if needed. - - for(var/datum/tgui/ui in source.open_uis) - ui.user = target // Inform the UIs of their new owner. - target.open_uis.Add(ui) // Transfer all the UIs. - - source.open_uis.Cut() // Clear the old list. - return 1 // Let the caller know we did it. diff --git a/code/modules/tgui/tgui.dm b/code/modules/tgui/tgui.dm index 6373caef7b2..716f3546f2d 100644 --- a/code/modules/tgui/tgui.dm +++ b/code/modules/tgui/tgui.dm @@ -1,8 +1,4 @@ /** - * tgui - * - * /tg/station user interface library - * * Copyright (c) 2020 Aleksej Komarov * SPDX-License-Identifier: MIT */ @@ -17,34 +13,28 @@ var/datum/src_object /// The title of te UI. var/title - /// The ui_key of the UI. This allows multiple UIs for one src_object. - var/ui_key /// The window_id for browse() and onclose(). - var/window_id - /// The window width. - var/width = 0 - /// The window height - var/height = 0 + var/datum/tgui_window/window + /// Key that is used for remembering the window geometry. + var/window_key + /// Deprecated: Window size. + var/window_size /// The interface (template) to be used for this UI. var/interface /// Update the UI every MC tick. var/autoupdate = TRUE /// If the UI has been initialized yet. var/initialized = FALSE - /// The data (and datastructure) used to initialize the UI. - var/list/initial_data - /// The static data used to initialize the UI. - var/list/initial_static_data - /// Holder for the json string, that is sent during the initial update - var/_initial_update + /// Time of opening the window. + var/opened_at + /// Stops further updates when close() was called. + var/closing = FALSE /// The status/visibility of the UI. var/status = UI_INTERACTIVE /// Topic state used to determine status/interactability. var/datum/ui_state/state = null - /// The parent UI. - var/datum/tgui/master_ui - /// Children of this UI. - var/list/datum/tgui/children = list() + /// Asset data to be sent with every update + var/list/asset_data /** * public @@ -53,38 +43,25 @@ * * required user mob The mob who opened/is using the UI. * required src_object datum The object or datum which owns the UI. - * required ui_key string The ui_key of the UI. * required interface string The interface used to render the UI. * optional title string The title of the UI. - * optional width int The window width. - * optional height int The window height. - * optional master_ui datum/tgui The parent UI. - * optional state datum/ui_state The state used to determine status. + * optional ui_x int Deprecated: Window width. + * optional ui_y int Deprecated: Window height. * * return datum/tgui The requested UI. */ -/datum/tgui/New(mob/user, datum/src_object, ui_key, interface, title, width = 0, height = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) +/datum/tgui/New(mob/user, datum/src_object, interface, title, ui_x, ui_y) + log_tgui(user, "new [interface] fancy [user.client.prefs.tgui_fancy]") src.user = user src.src_object = src_object - src.ui_key = ui_key - // DO NOT replace with \ref here. src_object could potentially be tagged - src.window_id = "[REF(src_object)]-[ui_key]" + src.window_key = "[REF(src_object)]-main" src.interface = interface - if(title) - src.title = sanitize(title) - if(width) - src.width = width - if(height) - src.height = height - - src.master_ui = master_ui - if(master_ui) - master_ui.children += src - src.state = state - - var/datum/asset/assets = get_asset_datum(/datum/asset/group/tgui) - assets.send(user) + src.title = title + src.state = src_object.ui_state() + // Deprecated + if(ui_x && ui_y) + src.window_size = list(ui_x, ui_y) /** * public @@ -93,83 +70,50 @@ */ /datum/tgui/proc/open() if(!user.client) - return // Bail if there is no client. - - update_status(push = FALSE) // Update the window status. + return null + if(window) + return null + process_status() if(status < UI_UPDATE) - return // Bail if we're not supposed to open. - - // Build window options - var/window_options = "can_minimize=0;auto_format=0;" - // If we have a width and height, use them. - if(width && height) - window_options += "size=[width]x[height];" - // Remove titlebar and resize handles for a fancy window - if(user.client.prefs.tgui_fancy) - window_options += "titlebar=0;can_resize=0;" + return null + window = SStgui.request_pooled_window(user) + if(!window) + return null + opened_at = world.time + window.acquire_lock(src) + if(!window.is_ready()) + window.initialize() else - window_options += "titlebar=1;can_resize=1;" - - // Generate page html - var/html - html = SStgui.basehtml - // Allow the src object to override the html if needed - html = src_object.ui_base_html(html) - // Replace template tokens with important UI data - // NOTE: Intentional \ref usage; tgui datums can't/shouldn't - // be tagged, so this is an effective unwrap - html = replacetextEx(html, "\[tgui:ref]", "\ref[src]") - - // Open the window. - user << browse(html, "window=[window_id];[window_options]") - - // Instruct the client to signal UI when the window is closed. - // NOTE: Intentional \ref usage; tgui datums can't/shouldn't - // be tagged, so this is an effective unwrap - winset(user, window_id, "on-close=\"uiclose \ref[src]\"") - - // Pre-fetch initial state while browser is still loading in - // another thread - if(!initial_data) - initial_data = src_object.ui_data(user) - if(!initial_static_data) - initial_static_data = src_object.ui_static_data(user) - _initial_update = url_encode(get_json(initial_data, initial_static_data)) - + window.send_message("ping") + for(var/datum/asset/asset in src_object.ui_assets(user)) + send_asset(asset) + window.send_message("update", get_payload( + with_data = TRUE, + with_static_data = TRUE)) SStgui.on_open(src) /** * public * - * Reinitialize the UI. - * (Possibly with a new interface and/or data). + * Close the UI. * - * optional template string The name of the new interface. - * optional data list The new initial data. + * optional can_be_suspended bool */ -/datum/tgui/proc/reinitialize(interface, list/data, list/static_data) - if(interface) - src.interface = interface - if(data) - initial_data = data - if(static_data) - initial_static_data = static_data - open() - -/** - * public - * - * Close the UI, and all its children. - */ -/datum/tgui/proc/close() - user << browse(null, "window=[window_id]") // Close the window. - src_object.ui_close(user) - SStgui.on_close(src) - for(var/datum/tgui/child in children) // Loop through and close all children. - child.close() - children.Cut() +/datum/tgui/proc/close(can_be_suspended = TRUE) + if(closing) + return + closing = TRUE + // If we don't have window_id, open proc did not have the opportunity + // to finish, therefore it's safe to skip this whole block. + if(window) + // Windows you want to keep are usually blue screens of death + // and we want to keep them around, to allow user to read + // the error message properly. + window.release_lock() + window.close(can_be_suspended) + src_object.ui_close(user) + SStgui.on_close(src) state = null - master_ui = null qdel(src) /** @@ -177,187 +121,176 @@ * * Enable/disable auto-updating of the UI. * - * required state bool Enable/disable auto-updating. + * required value bool Enable/disable auto-updating. */ -/datum/tgui/proc/set_autoupdate(state = TRUE) - autoupdate = state +/datum/tgui/proc/set_autoupdate(autoupdate) + src.autoupdate = autoupdate + +/** + * public + * + * Replace current ui.state with a new one. + * + * required state datum/ui_state/state Next state + */ +/datum/tgui/proc/set_state(datum/ui_state/state) + src.state = state + +/** + * public + * + * Makes an asset available to use in tgui. + * + * required asset datum/asset + */ +/datum/tgui/proc/send_asset(var/datum/asset/asset) + if(!user.client) + return + if(istype(asset, /datum/asset/spritesheet)) + var/datum/asset/spritesheet/spritesheet = asset + LAZYINITLIST(asset_data) + LAZYADD(asset_data["styles"], list(spritesheet.css_filename())) + asset.send(user) + +/** + * public + * + * Send a full update to the client (includes static data). + * + * optional custom_data list Custom data to send instead of ui_data. + * optional force bool Send an update even if UI is not interactive. + */ +/datum/tgui/proc/send_full_update(custom_data, force) + if(!user.client || !initialized || closing) + return + var/should_update_data = force || status > UI_UPDATE + window.send_message("update", get_payload( + custom_data, + with_data = should_update_data, + with_static_data = TRUE)) + +/** + * public + * + * Send a partial update to the client (excludes static data). + * + * optional custom_data list Custom data to send instead of ui_data. + * optional force bool Send an update even if UI is not interactive. + */ +/datum/tgui/proc/send_update(custom_data, force) + if(!user.client || !initialized || closing) + return + var/should_update_data = force || status > UI_UPDATE + window.send_message("update", get_payload( + custom_data, + with_data = should_update_data)) /** * private * * Package the data to send to the UI, as JSON. - * This includes the UI data and config_data. * - * return string The packaged JSON. + * return list */ -/datum/tgui/proc/get_json(list/data, list/static_data) +/datum/tgui/proc/get_payload(custom_data, with_data, with_static_data) var/list/json_data = list() - json_data["config"] = list( "title" = title, "status" = status, "interface" = interface, - "fancy" = user.client.prefs.tgui_fancy, - "locked" = user.client.prefs.tgui_lock, - "observer" = isobserver(user), - "window" = window_id, - // NOTE: Intentional \ref usage; tgui datums can't/shouldn't - // be tagged, so this is an effective unwrap - "ref" = "\ref[src]" + "window" = list( + "key" = window_key, + "size" = window_size, + "fancy" = user.client.prefs.tgui_fancy, + "locked" = user.client.prefs.tgui_lock, + ), + "user" = list( + "name" = "[user]", + "ckey" = "[user.ckey]", + "observer" = isobserver(user), + ), ) - - if(!isnull(data)) + var/data = custom_data || with_data && src_object.ui_data(user) + if(data) json_data["data"] = data - if(!isnull(static_data)) + var/static_data = with_static_data && src_object.ui_static_data(user) + if(static_data) json_data["static_data"] = static_data - - // Send shared states + if(asset_data) + json_data["assets"] = asset_data if(src_object.tgui_shared_states) json_data["shared"] = src_object.tgui_shared_states - - // Generate the JSON. - var/json = json_encode(json_data) - // Strip #255/improper. - json = replacetext(json, "\proper", "") - json = replacetext(json, "\improper", "") - return json + return json_data /** * private * - * Handle clicks from the UI. - * Call the src_object's ui_act() if status is UI_INTERACTIVE. - * If the src_object's ui_act() returns 1, update all UIs attacked to it. - */ -/datum/tgui/Topic(href, href_list) - if(user != usr) - return // Something is not right here. - - var/action = href_list["action"] - var/params = href_list; params -= "action" - - switch(action) - if("tgui:initialize") - user << output(_initial_update, "[window_id].browser:update") - initialized = TRUE - if("tgui:setSharedState") - // Update the window state. - update_status(push = FALSE) - // Bail if UI is not interactive or usr calling Topic - // is not the UI user. - if(status != UI_INTERACTIVE) - return - var/key = params["key"] - var/value = params["value"] - if(!src_object.tgui_shared_states) - src_object.tgui_shared_states = list() - src_object.tgui_shared_states[key] = value - SStgui.update_uis(src_object) - if("tgui:setFancy") - var/value = text2num(params["value"]) - user.client.prefs.tgui_fancy = value - if("tgui:log") - // Force window to show frills on fatal errors - if(params["fatal"]) - winset(user, window_id, "titlebar=1;can-resize=1;size=600x600") - log_message(params["log"]) - if("tgui:link") - user << link(params["url"]) - else - // Update the window state. - update_status(push = FALSE) - // Call ui_act() on the src_object. - if(src_object.ui_act(action, params, src, state)) - // Update if the object requested it. - SStgui.update_uis(src_object) - -/** - * private - * - * Update the UI. - * Only updates the data if update is true, otherwise only updates the status. - * - * optional force bool If the UI should be forced to update. + * Run an update cycle for this UI. Called internally by SStgui + * every second or so. */ /datum/tgui/process(force = FALSE) + if(closing) + return var/datum/host = src_object.ui_host(user) - if(!src_object || !host || !user) // If the object or user died (or something else), abort. + // If the object or user died (or something else), abort. + if(!src_object || !host || !user || !window) + close(can_be_suspended = FALSE) + return + // Validate ping + if(!initialized && world.time - opened_at > TGUI_PING_TIMEOUT) + log_tgui(user, \ + "Error: Zombie window detected, killing it with fire.\n" \ + + "window_id: [window.id]\n" \ + + "world.time: [world.time]") + close(can_be_suspended = FALSE) + return + // Update through a normal call to ui_interact + if(status != UI_DISABLED && (autoupdate || force)) + src_object.ui_interact(user, src) + return + // Update status only + var/needs_update = process_status() + if(status <= UI_CLOSE) close() return - - if(status && (force || autoupdate)) - update() // Update the UI if the status and update settings allow it. - else - update_status(push = TRUE) // Otherwise only update status. + if(needs_update) + window.send_message("update", get_payload()) /** * private * - * Push data to an already open UI. - * - * required data list The data to send. - * optional force bool If the update should be sent regardless of state. + * Updates the status, and returns TRUE if status has changed. */ -/datum/tgui/proc/push_data(data, static_data, force = FALSE) - // Update the window state. - update_status(push = FALSE) - // Cannot update UI if it is not set up yet. - if(!initialized) - return - // Cannot update UI, we have no visibility. - if(status <= UI_DISABLED && !force) - return - // Send the new JSON to the update() Javascript function. - user << output( - url_encode(get_json(data, static_data)), - "[window_id].browser:update") +/datum/tgui/proc/process_status() + var/prev_status = status + status = src_object.ui_status(user, state) + return prev_status != status /** * private * - * Updates the UI by interacting with the src_object again, which will hopefully - * call try_ui_update on it. - * - * optional force_open bool If force_open should be passed to ui_interact. + * Callback for handling incoming tgui messages. */ -/datum/tgui/proc/update(force_open = FALSE) - src_object.ui_interact(user, ui_key, src, force_open, master_ui, state) - -/** - * private - * - * Update the status/visibility of the UI for its user. - * - * optional push bool Push an update to the UI (an update is always sent for UI_DISABLED). - */ -/datum/tgui/proc/update_status(push = FALSE) - var/status = src_object.ui_status(user, state) - if(master_ui) - status = min(status, master_ui.status) - set_status(status, push) - if(status == UI_CLOSE) - close() - -/** - * private - * - * Set the status/visibility of the UI. - * - * required status int The status to set (UI_CLOSE/UI_DISABLED/UI_UPDATE/UI_INTERACTIVE). - * optional push bool Push an update to the UI (an update is always sent for UI_DISABLED). - */ -/datum/tgui/proc/set_status(status, push = FALSE) - // Only update if status has changed. - if(src.status != status) - if(src.status == UI_DISABLED) - src.status = status - if(push) - update() - else - src.status = status - // Update if the UI just because disabled, or a push is requested. - if(status == UI_DISABLED || push) - push_data(null, force = TRUE) - -/datum/tgui/proc/log_message(message) - log_tgui("[user] ([user.ckey]) using \"[title]\":\n[message]") +/datum/tgui/proc/on_message(type, list/payload, list/href_list) + // Pass act type messages to ui_act + if(type && copytext(type, 1, 5) == "act/") + process_status() + if(src_object.ui_act(copytext(type, 5), payload, src, state)) + SStgui.update_uis(src_object) + return FALSE + switch(type) + if("ready") + initialized = TRUE + if("pingReply") + initialized = TRUE + if("suspend") + close(can_be_suspended = TRUE) + if("close") + close(can_be_suspended = FALSE) + if("log") + if(href_list["fatal"]) + close(can_be_suspended = FALSE) + if("setSharedState") + LAZYINITLIST(src_object.tgui_shared_states) + src_object.tgui_shared_states[href_list["key"]] = href_list["value"] + SStgui.update_uis(src_object) diff --git a/code/modules/tgui/tgui_window.dm b/code/modules/tgui/tgui_window.dm new file mode 100644 index 00000000000..3d847c9c282 --- /dev/null +++ b/code/modules/tgui/tgui_window.dm @@ -0,0 +1,203 @@ +/** + * Copyright (c) 2020 Aleksej Komarov + * SPDX-License-Identifier: MIT + */ + +/datum/tgui_window + var/id + var/client/client + var/pooled + var/pool_index + var/status = TGUI_WINDOW_CLOSED + var/locked = FALSE + var/datum/tgui/locked_by + var/fatally_errored = FALSE + var/message_queue + +/** + * public + * + * Create a new tgui window. + * + * required client /client + * required id string A unique window identifier. + */ +/datum/tgui_window/New(client/client, id, pooled = FALSE) + src.id = id + src.client = client + src.pooled = pooled + if(pooled) + client.tgui_windows[id] = src + src.pool_index = TGUI_WINDOW_INDEX(id) + +/** + * public + * + * Initializes the window with a fresh page. Puts window into the "loading" + * state. You can begin sending messages right after initializing. Messages + * will be put into the queue until the window finishes loading. + */ +/datum/tgui_window/proc/initialize() + log_tgui(client, "[id]/initialize") + if(!client) + return + status = TGUI_WINDOW_LOADING + fatally_errored = FALSE + message_queue = null + // Build window options + var/options = "file=[id].html;can_minimize=0;auto_format=0;" + // Remove titlebar and resize handles for a fancy window + if(client.prefs.tgui_fancy) + options += "titlebar=0;can_resize=0;" + else + options += "titlebar=1;can_resize=1;" + // Generate page html + // TODO: Make this static + var/html = SStgui.basehtml + html = replacetextEx(html, "\[tgui:windowId]", id) + // Send required assets + var/datum/asset/asset + asset = get_asset_datum(/datum/asset/group/tgui) + asset.send(client) + // Open the window + client << browse(html, "window=[id];[options]") + // Instruct the client to signal UI when the window is closed. + winset(client, id, "on-close=\"uiclose [id]\"") + +/** + * public + * + * Checks if the window is ready to receive data. + * + * return bool + */ +/datum/tgui_window/proc/is_ready() + return status == TGUI_WINDOW_READY + +/** + * public + * + * Checks if the window can be sanely suspended. + * + * return bool + */ +/datum/tgui_window/proc/can_be_suspended() + return !fatally_errored \ + && pooled \ + && pool_index > 0 \ + && pool_index <= TGUI_WINDOW_SOFT_LIMIT \ + && status >= TGUI_WINDOW_READY + +/** + * public + * + * Acquire the window lock. Pool will not be able to provide this window + * to other UIs for the duration of the lock. + * + * Can be given an optional tgui datum, which will hook its on_message + * callback into the message stream. + * + * optional ui /datum/tgui + */ +/datum/tgui_window/proc/acquire_lock(datum/tgui/ui) + log_tgui(client, "[id]/acquire_lock") + locked = TRUE + locked_by = ui + +/** + * Release the window lock. + */ +/datum/tgui_window/proc/release_lock() + log_tgui(client, "[id]/release_lock") + locked = FALSE + locked_by = null + +/** + * public + * + * Close the UI. + * + * optional can_be_suspended bool + */ +/datum/tgui_window/proc/close(can_be_suspended = TRUE) + log_tgui(client, "[id]/close") + if(!client) + return + if(can_be_suspended && can_be_suspended()) + log_tgui(client, "suspending") + status = TGUI_WINDOW_READY + send_message("suspend") + return + locked = FALSE + locked_by = null + status = TGUI_WINDOW_CLOSED + message_queue = null + // Do not close the window to give user some time + // to read the error message. + if(!fatally_errored) + client << browse(null, "window=[id]") + +/** + * public + * + * Sends a message to tgui window. + * + * required type string Message type + * required payload list Message payload + * optional force bool Send regardless of the ready status. + */ +/datum/tgui_window/proc/send_message(type, list/payload, force) + if(!client) + return + var/message = json_encode(list( + "type" = type, + "payload" = payload, + )) + // Strip #255/improper. + message = replacetext(message, "\proper", "") + message = replacetext(message, "\improper", "") + // Pack for sending via output() + message = url_encode(message) + // Place into queue if window is still loading + if(!force && status == TGUI_WINDOW_LOADING) + if(!message_queue) + message_queue = list() + message_queue += list(message) + return + client << output(message, "[id].browser:update") + +/** + * private + * + * Sends queued messages if the queue wasn't empty. + */ +/datum/tgui_window/proc/flush_message_queue() + if(!client || !message_queue) + return + for(var/message in message_queue) + client << output(message, "[id].browser:update") + message_queue = null + +/** + * private + * + * Callback for handling incoming tgui messages. + */ +/datum/tgui_window/proc/on_message(type, list/payload, list/href_list) + switch(type) + if("ready") + status = TGUI_WINDOW_READY + if("log") + if(href_list["fatal"]) + fatally_errored = TRUE + // Pass message to UI that requested the lock + if(locked && locked_by) + locked_by.on_message(type, payload, href_list) + flush_message_queue() + return + // If not locked, handle these message types + switch(type) + if("suspend") + close(can_be_suspended = TRUE) + if("close") + close(can_be_suspended = FALSE) diff --git a/code/modules/vending/_vending.dm b/code/modules/vending/_vending.dm index 6e5e6a07068..f4fc524d0cb 100644 --- a/code/modules/vending/_vending.dm +++ b/code/modules/vending/_vending.dm @@ -691,16 +691,15 @@ GLOBAL_LIST_EMPTY(vending_products) return ..() -/obj/machinery/vending/ui_base_html(html) - var/datum/asset/spritesheet/assets = get_asset_datum(/datum/asset/spritesheet/vending) - . = replacetext(html, "", assets.css_tag()) +/obj/machinery/vending/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/spritesheet/vending), + ) -/obj/machinery/vending/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/vending/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - var/datum/asset/assets = get_asset_datum(/datum/asset/spritesheet/vending) - assets.send(user) - ui = new(user, src, ui_key, "Vending", ui_key, 450, 600, master_ui, state) + ui = new(user, src, "Vending") ui.open() /obj/machinery/vending/ui_static_data(mob/user) diff --git a/tgstation.dme b/tgstation.dme index 05c6ba0762d..2b029f2035e 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3062,8 +3062,8 @@ #include "code\modules\tgs\includes.dm" #include "code\modules\tgui\external.dm" #include "code\modules\tgui\states.dm" -#include "code\modules\tgui\subsystem.dm" #include "code\modules\tgui\tgui.dm" +#include "code\modules\tgui\tgui_window.dm" #include "code\modules\tgui\states\admin.dm" #include "code\modules\tgui\states\always.dm" #include "code\modules\tgui\states\conscious.dm" diff --git a/tgui/.eslintrc.yml b/tgui/.eslintrc.yml index 67e74085c7e..9fd4db9fd2e 100644 --- a/tgui/.eslintrc.yml +++ b/tgui/.eslintrc.yml @@ -8,6 +8,8 @@ env: es6: true browser: true node: true +globals: + Byond: readonly plugins: - react settings: @@ -388,7 +390,7 @@ rules: ## Enforce a particular style for multiline comments # multiline-comment-style: error ## Enforce newlines between operands of ternary expressions - multiline-ternary: [error, always-multiline] + # multiline-ternary: [error, always-multiline] ## Require constructor names to begin with a capital letter # new-cap: error ## Enforce or disallow parentheses when invoking a constructor with no diff --git a/tgui/.gitattributes b/tgui/.gitattributes index 0016cc3bf67..9382416e69f 100644 --- a/tgui/.gitattributes +++ b/tgui/.gitattributes @@ -2,9 +2,18 @@ ## Enforce text mode and LF line breaks *.js text eol=lf +*.jsx text eol=lf +*.ts text eol=lf +*.tsx text eol=lf *.css text eol=lf +*.scss text eol=lf *.html text eol=lf *.json text eol=lf +*.yml text eol=lf +*.md text eol=lf +*.bat text eol=lf +yarn.lock text eol=lf +bin/tgui text eol=lf ## Treat bundles as binary and ignore them during conflicts *.bundle.* binary merge=tgui-merge-bundle diff --git a/tgui/README.md b/tgui/README.md index c4793247649..9eab0196de6 100644 --- a/tgui/README.md +++ b/tgui/README.md @@ -67,8 +67,9 @@ Run one of the following: game as you code it. Very useful, highly recommended. - In order to use it, you should start the game server first, connect to it and wait until the world has been properly loaded and you are no longer - in the lobby. Start tgui dev server. You'll know that it's hooked correctly - if data gets dumped to the log when tgui windows are opened. + in the lobby. Start tgui dev server, and once it has finished building, + press F5 on any tgui window. You'll know that it's hooked correctly if + you see a green bug icon in titlebar and data gets dumped to the console. - `bin/tgui --dev --reload` - reload byond cache once. - `bin/tgui --dev --debug` - run server with debug logging enabled. - `bin/tgui --dev --no-hot` - disable hot module replacement (helps when @@ -134,11 +135,11 @@ logs and time spent on rendering. Use this information to optimize your code, and try to keep re-renders below 16ms. **Kitchen Sink.** -Press `Ctrl+Alt+=` to open the KitchenSink interface. This interface is a +Press `F12` to open the KitchenSink interface. This interface is a playground to test various tgui components. **Layout Debugger.** -Press `Ctrl+Alt+-` to toggle the *layout debugger*. It will show outlines of +Press `F11` to toggle the *layout debugger*. It will show outlines of all tgui elements, which makes it easy to understand how everything comes together, and can reveal certain layout bugs which are not normally visible. diff --git a/tgui/bin/tgui b/tgui/bin/tgui index eb1f200b31e..97a86159e6b 100755 --- a/tgui/bin/tgui +++ b/tgui/bin/tgui @@ -52,6 +52,7 @@ task-dev-server() { task-eslint() { cd "${base_dir}" eslint ./packages "${@}" + echo "tgui: eslint check passed" } ## Mr. Proper @@ -153,6 +154,13 @@ if [[ ${1} == '--lint-harder' ]]; then exit 0 fi +if [[ ${1} == '--fix' ]]; then + shift 1 + task-install + task-eslint --fix "${@}" + exit 0 +fi + ## Analyze the bundle if [[ ${1} == '--analyze' ]]; then task-install diff --git a/tgui/docs/component-reference.md b/tgui/docs/component-reference.md index e1f7ebf9b43..549956738fa 100644 --- a/tgui/docs/component-reference.md +++ b/tgui/docs/component-reference.md @@ -279,7 +279,7 @@ Example (button): @@ -291,7 +291,6 @@ Example (map): ``` @@ -982,6 +981,7 @@ Example: - `className: string` - Applies a CSS class to the element. - `theme: string` - A name of the theme. - For a list of themes, see `packages/tgui/styles/themes`. +- `title: string` - Window title. - `resizable: boolean` - Controls resizability of the window. - `children: any` - Child elements, which are rendered directly inside the window. If you use a [Dimmer](#dimmer) or [Modal](#modal) in your UI, diff --git a/tgui/docs/migration-to-v4-from-v3.md b/tgui/docs/migration-to-v4-from-v3.md new file mode 100644 index 00000000000..6f047a6cc7e --- /dev/null +++ b/tgui/docs/migration-to-v4-from-v3.md @@ -0,0 +1,91 @@ +# tgui Migration Guide to v4 from v3 + +## The Easy Part + +- Copy and replace the following files in bulk: + - `code/__DEFINES/tgui.dm` + - `code/controllers/subsystem/tgui.dm` + - `code/modules/tgui/**` + - `tgui/**` + - Except: `tgui/packages/tgui/interfaces` + - Manually resolve conflicts for files that were touched outside the + `interfaces` folder. +- Copy the updated `log_tgui` proc from: + - `code/__HELPERS/_logging.dm` + +If you have a dual nano/tgui setup, then make sure to rename all ui procs +on `/datum`, such as `ui_interact` to `tgui_interact`, to avoid namespace +clashing. Usual stuff. + +## Update `ui_interact` proc signatures + +First of all, tgui states need to move from `ui_interact` to `ui_state`. + +One way of doing it, is to just cherry pick those procs from upstream. + +If you want to search and replace manually, search for `state = GLOB`, and +extract those things into `ui_state` procs like so: + +```dm +.../ui_state(mob/user) + return GLOB.default_state +``` + +Then reduce `ui_interact` until you finish with something like this: + +```dm +.../ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) + if(!ui) + ui = new(user, src, "FooBar", "Foo Bar UI", 600, 400) + ui.open() +``` + +## Update asset delivery code + +Remove all asset code that injects stylesheets by modifying tgui's `basehtml`. +You no longer need to do that. + +Find all occurences of `asset.send(user)` in `ui_interact`, and refactor those +snippets to the following proc: + +```dm +.../ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/simple/foobar), + ) +``` + +## Check `ui_act` for new bugs + +Code behind `ui_act` was recently refactored to use JSON-encoded payloads +instead of just strings. Since it can now carry numbers and other complex +types, you should check that the code is type agnostic and does not break +due to an assumption that every parameter is a string. + +One of such offenders is the personal crafting interface, where it needlessly +compares parameters to `""` and `"0"`. You can now replace this code with +simple assignments, because an empty category will now be properly `null` +instead of an empty string. + +## Backend data changes + +Interfaces that relied on `config.window.id`, must now use +`window.__windowId__`, which is a global constant unique for the page +the script is running on (so you can be sure it never changes). + +In case of `ByondUi`, this parameter can be completely omitted, because +parent will always default to the current window id. + +Affected interfaces: + +- `CameraConsole` +- Any interface that uses the `ByondUi` component + +--- + +That's all folks! + +There is a lot of stuff that was refactored under the hood, but normal UI +stuff wouldn't and shouldn't touch it, so you should be good with just +going through the checklist above. diff --git a/tgui/docs/tutorial-and-examples.md b/tgui/docs/tutorial-and-examples.md index 3497ea97464..dea1ede5945 100644 --- a/tgui/docs/tutorial-and-examples.md +++ b/tgui/docs/tutorial-and-examples.md @@ -5,10 +5,10 @@ Basic tgui backend code consists of the following vars and procs: ``` -ui_interact(mob/user, ui_key, datum/tgui/ui, force_open, - datum/tgui/master_ui, datum/ui_state/state) +ui_interact(mob/user, datum/tgui/ui) ui_data(mob/user) ui_act(action, params) +ui_state() ``` - `src_object` - The atom, which UI corresponds to in the game world. @@ -19,9 +19,9 @@ or set up a new instance of UI by calling the `SStgui` subsystem. has into an associative list, which will then be sent to UI as a JSON string. - `ui_act` - This proc receives user actions and reacts to them by changing the state of the game. -- `ui_state` (set in `ui_interact`) - This var dictates under what conditions -a UI may be interacted with. This may be the standard checks that check if -you are in range and conscious, or more. +- `ui_state` - This proc dictates under what conditions a UI may be interacted +with. This may be the standard checks that check if you are in range and +conscious, or more. Once backend is complete, you create an new interface component on the frontend, which will receive this JSON data and render it on screen. @@ -37,10 +37,10 @@ powerful interactions for embedded objects or remote access. Let's start with a very basic hello world. ```dm -/obj/machinery/my_machine/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/my_machine/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "my_machine", name, 300, 300, master_ui, state) + ui = new(user, src, "MyMachine") ui.open() ``` @@ -48,9 +48,7 @@ This is the proc that defines our interface. There's a bit going on here, so let's break it down. First, we override the ui_interact proc on our object. This will be called by `interact` for you, which is in turn called by `attack_hand` (or `attack_self` for items). `ui_interact` is also called to update a UI (hence -the `try_update_ui`), so we accept an existing UI to update. The `state` is a -default argument so that a caller can overload it with named arguments -(`ui_interact(state = overloaded_state)`) if needed. +the `try_update_ui`), so we accept an existing UI to update. Inside the `if(!ui)` block (which means we are creating a new UI), we choose our template, title, and size; we can also set various options like `style` (for @@ -294,10 +292,10 @@ here's what you need (note that you'll probably be forced to clean your shit up upon code review): ```dm -/obj/copypasta/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = default_state) // Remember to use the appropriate state. - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/copypasta/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "copypasta", name, 300, 300, master_ui, state) + ui = new(user, src, "copypasta") ui.open() /obj/copypasta/ui_data(mob/user) diff --git a/tgui/package.json b/tgui/package.json index bfceeec49ec..8dd15925b2a 100644 --- a/tgui/package.json +++ b/tgui/package.json @@ -13,7 +13,7 @@ }, "dependencies": { "babel-eslint": "^10.0.3", - "eslint": "^6.7.2", + "eslint": "^7.4.0", "eslint-plugin-react": "^7.17.0" } } diff --git a/tgui/packages/common/perf.js b/tgui/packages/common/perf.js new file mode 100644 index 00000000000..319b77cea39 --- /dev/null +++ b/tgui/packages/common/perf.js @@ -0,0 +1,44 @@ +/** + * Ghetto performance measurement tools. + * + * Uses NODE_ENV to redact itself from production bundles. + * + * @file + * @copyright 2020 Aleksej Komarov + * @license MIT + */ + +let markersByLabel = {}; + +/** + * Marks a certain spot in the code for later measurements. + */ +const mark = (label, timestamp) => { + if (process.env.NODE_ENV !== 'production') { + markersByLabel[label] = timestamp || Date.now(); + } +}; + +/** + * Calculates and returns the difference between two markers as a string. + * + * Use logger.log() to print the measurement. + */ +const measure = (markerA, markerB) => { + if (process.env.NODE_ENV !== 'production') { + return timeDiff( + markersByLabel[markerA], + markersByLabel[markerB]); + } +}; + +const timeDiff = (startedAt, finishedAt) => { + const diff = Math.abs(finishedAt - startedAt); + const diffFrames = (diff / 16.6667).toFixed(2); + return `${diff}ms (${diffFrames} frames)`; +}; + +export const perf = { + mark, + measure, +}; diff --git a/tgui/packages/common/redux.js b/tgui/packages/common/redux.js index 7fb4432408c..dc486ff7b86 100644 --- a/tgui/packages/common/redux.js +++ b/tgui/packages/common/redux.js @@ -69,3 +69,31 @@ export const applyMiddleware = (...middlewares) => { }; }; }; + +/** + * Combines reducers by running them in their own object namespaces as + * defined in reducersObj paramter. + * + * Main difference from redux/combineReducers is that it preserves keys + * in the state that are not present in the reducers object. This function + * is also more flexible than the redux counterpart. + */ +export const combineReducers = reducersObj => { + const keys = Object.keys(reducersObj); + let hasChanged = false; + return (prevState, action) => { + const nextState = { ...prevState }; + for (let key of keys) { + const reducer = reducersObj[key]; + const prevDomainState = prevState[key]; + const nextDomainState = reducer(prevDomainState, action); + if (prevDomainState !== nextDomainState) { + hasChanged = true; + nextState[key] = nextDomainState; + } + } + return hasChanged + ? nextState + : prevState; + }; +}; diff --git a/tgui/packages/common/storage.js b/tgui/packages/common/storage.js new file mode 100644 index 00000000000..bcb010e77a7 --- /dev/null +++ b/tgui/packages/common/storage.js @@ -0,0 +1,64 @@ +/** + * Browser-agnostic abstraction of key-value web storage. + * + * @file + * @copyright 2020 Aleksej Komarov + * @license MIT + */ + +export const STORAGE_NONE = 0; +export const STORAGE_LOCAL_STORAGE = 1; +export const STORAGE_INDEXED_DB = 2; + +const createMock = () => { + let storage = {}; + const get = key => storage[key]; + const set = (key, value) => { + storage[key] = value; + }; + const remove = key => { + storage[key] = undefined; + }; + const clear = () => { + // NOTE: On IE8, this will probably leak memory if used often. + storage = {}; + }; + return { + get, + set, + remove, + clear, + engine: STORAGE_NONE, + }; +}; + +const createLocalStorage = () => { + const get = key => { + const value = localStorage.getItem(key); + if (typeof value !== 'string') { + return; + } + return JSON.parse(value); + }; + const set = (key, value) => { + localStorage.setItem(key, JSON.stringify(value)); + }; + const remove = key => { + localStorage.removeItem(key); + }; + const clear = () => { + localStorage.clear(); + }; + return { + get, + set, + remove, + clear, + engine: STORAGE_LOCAL_STORAGE, + }; +}; + +export const storage = ( + window.localStorage && createLocalStorage() + || createMock() +); diff --git a/tgui/packages/common/vector.js b/tgui/packages/common/vector.js index 1562df59915..c3ac350a4e8 100644 --- a/tgui/packages/common/vector.js +++ b/tgui/packages/common/vector.js @@ -1,4 +1,8 @@ /** + * N-dimensional vector manipulation functions. + * + * Vectors are plain number arrays, i.e. [x, y, z]. + * * @file * @copyright 2020 Aleksej Komarov * @license MIT @@ -6,16 +10,6 @@ import { map, reduce, zipWith } from './collections'; -/** - * Creates a vector, with as many dimensions are there are arguments. - */ -export const vecCreate = (...components) => { - if (Array.isArray(components[0])) { - return [...components[0]]; - } - return components; -}; - const ADD = (a, b) => a + b; const SUB = (a, b) => a - b; const MUL = (a, b) => a * b; diff --git a/tgui/packages/tgui/assets.js b/tgui/packages/tgui/assets.js new file mode 100644 index 00000000000..2023a5c8842 --- /dev/null +++ b/tgui/packages/tgui/assets.js @@ -0,0 +1,23 @@ +/** + * @file + * @copyright 2020 Aleksej Komarov + * @license MIT + */ + +import { loadCSS as fgLoadCSS } from 'fg-loadcss'; +import { createLogger } from './logging'; + +const logger = createLogger('assets'); + +const loadedAssets = { + styles: [], +}; + +export const loadCSS = filename => { + if (loadedAssets.styles.includes(filename)) { + return; + } + loadedAssets.styles.push(filename); + logger.log(`loading stylesheet '${filename}'`); + fgLoadCSS(filename); +}; diff --git a/tgui/packages/tgui/backend.js b/tgui/packages/tgui/backend.js index 090970fe500..2c9bd093721 100644 --- a/tgui/packages/tgui/backend.js +++ b/tgui/packages/tgui/backend.js @@ -11,8 +11,12 @@ * @license MIT */ +import { perf } from 'common/perf'; import { UI_DISABLED, UI_INTERACTIVE } from './constants'; -import { callByond } from './byond'; +import { releaseHeldKeys } from './hotkeys'; +import { createLogger } from './logging'; + +const logger = createLogger('backend'); export const backendUpdate = state => ({ type: 'backend/update', @@ -24,7 +28,23 @@ export const backendSetSharedState = (key, nextState) => ({ payload: { key, nextState }, }); -export const backendReducer = (state, action) => { +export const backendSuspendStart = () => ({ + type: 'backend/suspendStart', +}); + +export const backendSuspendSuccess = () => ({ + type: 'backend/suspendSuccess', + payload: { + timestamp: Date.now(), + }, +}); + +const initialState = { + config: {}, + data: {}, +}; + +export const backendReducer = (state = initialState, action) => { const { type, payload } = action; if (type === 'backend/update') { @@ -59,10 +79,12 @@ export const backendReducer = (state, action) => { return { ...state, config, + assets: payload.assets || {}, data, shared, visible, interactive, + suspended: false, }; } @@ -77,30 +99,176 @@ export const backendReducer = (state, action) => { }; } + if (type === 'backend/suspendStart') { + return { + ...state, + suspending: true, + }; + } + + if (type === 'backend/suspendSuccess') { + const { timestamp } = payload; + return { + ...state, + data: {}, + shared: {}, + config: { + ...state.config, + title: '', + status: 1, + }, + suspending: false, + suspended: timestamp, + }; + } + return state; }; +export const backendMiddleware = store => { + let fancyState; + let suspendInterval; + + return next => action => { + const { config, suspended } = selectBackend(store.getState()); + const { type, payload } = action; + + if (type === 'backend/suspendStart' && !suspendInterval) { + logger.log(`suspending (${window.__windowId__})`); + // Keep sending suspend messages until it succeeds. + // It may fail multiple times due to topic rate limiting. + const suspendFn = () => sendMessage({ + type: 'suspend', + }); + suspendFn(); + suspendInterval = setInterval(suspendFn, 2000); + } + + if (type === 'backend/suspendSuccess') { + clearInterval(suspendInterval); + suspendInterval = undefined; + releaseHeldKeys(); + Byond.winset(window.__windowId__, { + 'is-visible': false, + }); + } + + if (type === 'backend/update') { + const fancy = payload.config?.window?.fancy; + // Initialize fancy state + if (fancyState === undefined) { + fancyState = fancy; + } + // React to changes in fancy + else if (fancyState !== fancy) { + logger.log('changing fancy mode to', fancy); + fancyState = fancy; + Byond.winset(window.__windowId__, { + titlebar: !fancy, + 'can-resize': !fancy, + }); + } + } + + if (type === 'backend/update' && suspended) { + // We schedule this for the next tick here because resizing and unhiding + // during the same tick will flash with a white background. + setImmediate(() => { + perf.mark('resume/start'); + // Doublecheck if we are not re-suspended. + const { suspended } = selectBackend(store.getState()); + if (suspended) { + return; + } + Byond.winset(window.__windowId__, { + 'is-visible': true, + }); + perf.mark('resume/finish'); + if (process.env.NODE_ENV !== 'production') { + logger.log('visible in', + perf.measure('render/finish', 'resume/finish')); + } + }); + } + + return next(action); + }; +}; + +/** + * Sends a message to /datum/tgui_window. + */ +export const sendMessage = (message = {}) => { + const { payload, ...rest } = message; + const data = { + // Message identifying header + tgui: 1, + window_id: window.__windowId__, + // Message body + ...rest, + }; + // JSON-encode the payload + if (payload !== null && payload !== undefined) { + data.payload = JSON.stringify(payload); + } + Byond.topic(data); +}; + +/** + * Sends an action to `ui_act` on `src_object` that this tgui window + * is associated with. + */ +export const sendAct = (action, payload = {}) => { + // Validate that payload is an object + const isObject = typeof payload === 'object' + && payload !== null + && !Array.isArray(payload); + if (!isObject) { + logger.error(`Payload for act() must be an object, got this:`, payload); + return; + } + sendMessage({ + type: 'act/' + action, + payload, + }); +}; + /** * @typedef BackendState * @type {{ * config: { * title: string, * status: number, - * screen: string, - * style: string, * interface: string, - * fancy: number, - * locked: number, - * observer: number, - * window: string, - * ref: string, + * user: { + * name: string, + * ckey: string, + * observer: number, + * }, + * window: { + * key: string, + * size: [number, number], + * fancy: boolean, + * locked: boolean, + * }, * }, * data: any, + * assets: any, + * shared: any, * visible: boolean, * interactive: boolean, + * suspending: boolean, + * suspended: boolean, * }} */ +/** + * Selects a backend-related slice of Redux state + * + * @return {BackendState} + */ +export const selectBackend = state => state.backend || {}; + /** * A React hook (sort of) for getting tgui state and related functions. * @@ -108,21 +276,16 @@ export const backendReducer = (state, action) => { * be used in functional components. * * @return {BackendState & { - * act: (action: string, params?: object) => void, + * act: sendAct, * }} */ export const useBackend = context => { const { store } = context; - const state = store.getState(); - const ref = state.config.ref; - const act = (action, params = {}) => { - callByond('', { - src: ref, - action, - ...params, - }); + const state = selectBackend(store.getState()); + return { + ...state, + act: sendAct, }; - return { ...state, act }; }; /** @@ -140,7 +303,7 @@ export const useBackend = context => { */ export const useLocalState = (context, key, initialState) => { const { store } = context; - const state = store.getState(); + const state = selectBackend(store.getState()); const sharedStates = state.shared ?? {}; const sharedState = (key in sharedStates) ? sharedStates[key] @@ -148,7 +311,11 @@ export const useLocalState = (context, key, initialState) => { return [ sharedState, nextState => { - store.dispatch(backendSetSharedState(key, nextState)); + store.dispatch(backendSetSharedState(key, ( + typeof nextState === 'function' + ? nextState(sharedState) + : nextState + ))); }, ]; }; @@ -169,8 +336,7 @@ export const useLocalState = (context, key, initialState) => { */ export const useSharedState = (context, key, initialState) => { const { store } = context; - const state = store.getState(); - const ref = state.config.ref; + const state = selectBackend(store.getState()); const sharedStates = state.shared ?? {}; const sharedState = (key in sharedStates) ? sharedStates[key] @@ -178,11 +344,14 @@ export const useSharedState = (context, key, initialState) => { return [ sharedState, nextState => { - callByond('', { - src: ref, - action: 'tgui:setSharedState', + sendMessage({ + type: 'setSharedState', key, - value: JSON.stringify(nextState) || '', + value: JSON.stringify( + typeof nextState === 'function' + ? nextState(sharedState) + : nextState + ) || '', }); }, ]; diff --git a/tgui/packages/tgui/byond.js b/tgui/packages/tgui/byond.js deleted file mode 100644 index fa2b03e7157..00000000000 --- a/tgui/packages/tgui/byond.js +++ /dev/null @@ -1,94 +0,0 @@ -/** - * @file - * @copyright 2020 Aleksej Komarov - * @license MIT - */ - -// Reference a global Byond object -const { Byond } = window; - -/** - * Version of Trident engine used in Internet Explorer. - * An integer number or `null` if this is not a trident engine. - * - * - IE 8 - Trident 4.0 - * - IE 11 - Trident 7.0 - */ -const tridentVersion = (() => { - const groups = navigator.userAgent.match(/Trident\/(\d+).+?;/i); - if (!groups) { - return null; - } - const majorVersion = groups[1]; - if (!majorVersion) { - return null; - } - return parseInt(majorVersion, 10); -})(); - -/** - * True if browser is an Internet Explorer 8 or lower. - * - * (Actually, no, it also includes IE9 and IE10). - */ -export const IS_IE8 = tridentVersion !== null - && tridentVersion <= 6; - -/** - * Makes a BYOND call. - * - * If path is empty, this will trigger a Topic call. - * You can reference a specific object by setting the "src" parameter. - * - * See: https://secure.byond.com/docs/ref/skinparams.html - */ -export const callByond = (path, params = {}) => { - Byond.call(path, params); -}; - -/** - * A high-level abstraction of BYOND calls. Makes a BYOND call and returns - * a promise, which (if endpoint has a callback parameter) resolves - * with the return value of that call. - */ -export const callByondAsync = (path, params = {}) => { - // Create a callback array if it doesn't exist yet - window.__callbacks__ = window.__callbacks__ || []; - // Create a Promise and push its resolve function into callback array - const callbackIndex = window.__callbacks__.length; - const promise = new Promise(resolve => { - // TODO: Fix a potential memory leak - window.__callbacks__.push(resolve); - }); - // Call BYOND client - Byond.call(path, { - ...params, - callback: `__callbacks__[${callbackIndex}]`, - }); - return promise; -}; - -/** - * Runs a BYOND skin command - * - * See: https://secure.byond.com/docs/ref/skinparams.html - */ -export const runCommand = command => callByond('winset', { command }); - -/** - * Calls 'winget' on a BYOND skin element, retrieving value by the 'key'. - */ -export const winget = async (id, key) => { - const obj = await callByondAsync('winget', { - id, - property: key, - }); - return obj[key]; -}; - -/** - * Calls 'winset' on a BYOND skin element, setting 'key' to 'value'. - */ -export const winset = (id, key, value) => callByond('winset', { - [`${id}.${key}`]: value, -}); diff --git a/tgui/packages/tgui/components/Button.js b/tgui/packages/tgui/components/Button.js index 52adf286adf..bb8b4bcbf06 100644 --- a/tgui/packages/tgui/components/Button.js +++ b/tgui/packages/tgui/components/Button.js @@ -6,7 +6,6 @@ import { classes, pureComponentHooks } from 'common/react'; import { Component, createRef } from 'inferno'; -import { IS_IE8 } from '../byond'; import { KEY_ENTER, KEY_ESCAPE, KEY_SPACE } from '../hotkeys'; import { refocusLayout } from '../layouts'; import { createLogger } from '../logging'; @@ -61,7 +60,7 @@ export const Button = props => { className, ])} tabIndex={!disabled && '0'} - unselectable={IS_IE8} + unselectable={Byond.IS_LTE_IE8} onclick={e => { refocusLayout(); if (!disabled && onClick) { @@ -87,7 +86,10 @@ export const Button = props => { }} {...rest}> {icon && ( - + )} {content} {children} diff --git a/tgui/packages/tgui/components/ByondUi.js b/tgui/packages/tgui/components/ByondUi.js index db9c5822ba4..2369cc79936 100644 --- a/tgui/packages/tgui/components/ByondUi.js +++ b/tgui/packages/tgui/components/ByondUi.js @@ -7,7 +7,6 @@ import { shallowDiffers } from 'common/react'; import { debounce } from 'common/timer'; import { Component, createRef } from 'inferno'; -import { callByond, IS_IE8 } from '../byond'; import { createLogger } from '../logging'; import { computeBoxProps } from './Box'; @@ -28,16 +27,12 @@ const createByondUiElement = elementId => { render: params => { logger.log(`rendering '${id}'`); byondUiStack[index] = id; - callByond('winset', { - ...params, - id, - }); + Byond.winset(id, params); }, unmount: () => { logger.log(`unmounting '${id}'`); byondUiStack[index] = null; - callByond('winset', { - id, + Byond.winset(id, { parent: '', }); }, @@ -51,8 +46,7 @@ window.addEventListener('beforeunload', () => { if (typeof id === 'string') { logger.log(`unmounting '${id}' (beforeunload)`); byondUiStack[index] = null; - callByond('winset', { - id, + Byond.winset(id, { parent: '', }); } @@ -83,7 +77,7 @@ export class ByondUi extends Component { this.byondUiElement = createByondUiElement(props.params?.id); this.handleResize = debounce(() => { this.forceUpdate(); - }, 500); + }, 100); } shouldComponentUpdate(nextProps) { @@ -101,16 +95,17 @@ export class ByondUi extends Component { componentDidMount() { // IE8: It probably works, but fuck you anyway. - if (IS_IE8) { + if (Byond.IS_LTE_IE10) { return; } window.addEventListener('resize', this.handleResize); - return this.componentDidUpdate(); + this.componentDidUpdate(); + this.handleResize(); } componentDidUpdate() { // IE8: It probably works, but fuck you anyway. - if (IS_IE8) { + if (Byond.IS_LTE_IE10) { return; } const { @@ -119,6 +114,7 @@ export class ByondUi extends Component { const box = getBoundingBox(this.containerRef.current); logger.log('bounding box', box); this.byondUiElement.render({ + parent: window.__windowId__, ...params, pos: box.pos[0] + ',' + box.pos[1], size: box.size[0] + 'x' + box.size[1], @@ -127,7 +123,7 @@ export class ByondUi extends Component { componentWillUnmount() { // IE8: It probably works, but fuck you anyway. - if (IS_IE8) { + if (Byond.IS_LTE_IE10) { return; } window.removeEventListener('resize', this.handleResize); @@ -135,26 +131,16 @@ export class ByondUi extends Component { } render() { - const { - parent, - params, - ...rest - } = this.props; + const { params, ...rest } = this.props; const type = params?.type; const boxProps = computeBoxProps(rest); return (
- {type === 'button' && } + {/* Filler */} +
); } } - -const ButtonMock = () => ( -
-); diff --git a/tgui/packages/tgui/components/Chart.js b/tgui/packages/tgui/components/Chart.js index 16ed82c3559..77913779db8 100644 --- a/tgui/packages/tgui/components/Chart.js +++ b/tgui/packages/tgui/components/Chart.js @@ -7,7 +7,6 @@ import { map, zipWith } from 'common/collections'; import { pureComponentHooks } from 'common/react'; import { Component, createRef } from 'inferno'; -import { IS_IE8 } from '../byond'; import { Box } from './Box'; const normalizeData = (data, scale, rangeX, rangeY) => { @@ -123,5 +122,5 @@ const Stub = props => null; // IE8: No inline svg support export const Chart = { - Line: IS_IE8 ? Stub : LineChart, + Line: Byond.IS_LTE_IE8 ? Stub : LineChart, }; diff --git a/tgui/packages/tgui/components/Flex.js b/tgui/packages/tgui/components/Flex.js index 4ee69a1902a..02d2fac3148 100644 --- a/tgui/packages/tgui/components/Flex.js +++ b/tgui/packages/tgui/components/Flex.js @@ -5,7 +5,6 @@ */ import { classes, pureComponentHooks } from 'common/react'; -import { IS_IE8 } from '../byond'; import { Box, unit } from './Box'; export const computeFlexProps = props => { @@ -22,10 +21,10 @@ export const computeFlexProps = props => { return { className: classes([ 'Flex', - IS_IE8 && ( + Byond.IS_LTE_IE10 && ( direction === 'column' - ? 'Flex--ie8--column' - : 'Flex--ie8' + ? 'Flex--iefix--column' + : 'Flex--iefix' ), inline && 'Flex--inline', spacing > 0 && 'Flex--spacing--' + spacing, @@ -63,7 +62,7 @@ export const computeFlexItemProps = props => { return { className: classes([ 'Flex__item', - IS_IE8 && 'Flex__item--ie8', + Byond.IS_LTE_IE10 && 'Flex__item--iefix', className, ]), style: { diff --git a/tgui/packages/tgui/components/Knob.js b/tgui/packages/tgui/components/Knob.js index e72b15f1959..4861e71bf3e 100644 --- a/tgui/packages/tgui/components/Knob.js +++ b/tgui/packages/tgui/components/Knob.js @@ -6,7 +6,6 @@ import { keyOfMatchingRange, scale } from 'common/math'; import { classes } from 'common/react'; -import { IS_IE8 } from '../byond'; import { computeBoxClassName, computeBoxProps } from './Box'; import { DraggableControl } from './DraggableControl'; import { NumberInput } from './NumberInput'; @@ -14,7 +13,7 @@ import { NumberInput } from './NumberInput'; export const Knob = props => { // IE8: I don't want to support a yet another component on IE8. // IE8: It also can't handle SVG. - if (IS_IE8) { + if (Byond.IS_LTE_IE8) { return ( ); diff --git a/tgui/packages/tgui/components/NumberInput.js b/tgui/packages/tgui/components/NumberInput.js index 806c81d542e..cba6f5025e5 100644 --- a/tgui/packages/tgui/components/NumberInput.js +++ b/tgui/packages/tgui/components/NumberInput.js @@ -7,7 +7,6 @@ import { clamp } from 'common/math'; import { classes, pureComponentHooks } from 'common/react'; import { Component, createRef } from 'inferno'; -import { IS_IE8 } from '../byond'; import { AnimatedNumber } from './AnimatedNumber'; import { Box } from './Box'; @@ -168,7 +167,7 @@ export class NumberInput extends Component { const renderContentElement = value => (
+ unselectable={Byond.IS_LTE_IE8}> {value + (unit ? ' ' + unit : '')}
); diff --git a/tgui/packages/tgui/components/Section.js b/tgui/packages/tgui/components/Section.js index 2f9fa239b18..af59bc40223 100644 --- a/tgui/packages/tgui/components/Section.js +++ b/tgui/packages/tgui/components/Section.js @@ -5,7 +5,7 @@ */ import { classes, isFalsy, pureComponentHooks } from 'common/react'; -import { Box } from './Box'; +import { computeBoxClassName, computeBoxProps } from './Box'; export const Section = props => { const { @@ -13,20 +13,22 @@ export const Section = props => { title, level = 1, buttons, - content, + fill, children, ...rest } = props; const hasTitle = !isFalsy(title) || !isFalsy(buttons); - const hasContent = !isFalsy(content) || !isFalsy(children); + const hasContent = !isFalsy(children); return ( - + {...computeBoxProps(rest)}> {hasTitle && (
@@ -39,11 +41,10 @@ export const Section = props => { )} {hasContent && (
- {content} {children}
)} - +
); }; diff --git a/tgui/packages/tgui/components/Slider.js b/tgui/packages/tgui/components/Slider.js index 7ae74684fbb..005e6c1f8f7 100644 --- a/tgui/packages/tgui/components/Slider.js +++ b/tgui/packages/tgui/components/Slider.js @@ -6,14 +6,13 @@ import { clamp01, keyOfMatchingRange, scale } from 'common/math'; import { classes } from 'common/react'; -import { IS_IE8 } from '../byond'; import { computeBoxClassName, computeBoxProps } from './Box'; import { DraggableControl } from './DraggableControl'; import { NumberInput } from './NumberInput'; export const Slider = props => { // IE8: I don't want to support a yet another component on IE8. - if (IS_IE8) { + if (Byond.IS_LTE_IE8) { return ( ); diff --git a/tgui/packages/tgui/components/index.js b/tgui/packages/tgui/components/index.js index ba79e2a8fc9..5580cc38fbe 100644 --- a/tgui/packages/tgui/components/index.js +++ b/tgui/packages/tgui/components/index.js @@ -14,6 +14,7 @@ export { Collapsible } from './Collapsible'; export { ColorBox } from './ColorBox'; export { Dimmer } from './Dimmer'; export { Divider } from './Divider'; +export { DraggableControl } from './DraggableControl'; export { Dropdown } from './Dropdown'; export { Flex } from './Flex'; export { Grid } from './Grid'; diff --git a/tgui/packages/tgui/interfaces/manually-routed/KitchenSink.js b/tgui/packages/tgui/debug/KitchenSink.js similarity index 63% rename from tgui/packages/tgui/interfaces/manually-routed/KitchenSink.js rename to tgui/packages/tgui/debug/KitchenSink.js index fcca031fe99..050adcf1935 100644 --- a/tgui/packages/tgui/interfaces/manually-routed/KitchenSink.js +++ b/tgui/packages/tgui/debug/KitchenSink.js @@ -1,10 +1,19 @@ -import { Fragment } from 'inferno'; -import { useBackend, useLocalState } from '../../backend'; -import { BlockQuote, Box, Button, ByondUi, Collapsible, Flex, Icon, Input, Knob, LabeledList, NumberInput, ProgressBar, Section, Slider, Tabs, Tooltip } from '../../components'; -import { DraggableControl } from '../../components/DraggableControl'; -import { Window } from '../../layouts'; +/** + * @file + * @copyright 2020 Aleksej Komarov + * @license MIT + */ -const COLORS_ARBITRARY = [ +import { Fragment } from 'inferno'; +import { useBackend, useLocalState } from '../backend'; +import { BlockQuote, Box, Button, ByondUi, Collapsible, DraggableControl, Flex, Icon, Input, Knob, LabeledList, NoticeBox, NumberInput, ProgressBar, Section, Slider, Tabs, Tooltip } from '../components'; +import { formatSiUnit } from '../format'; +import { Window } from '../layouts'; +import { createLogger } from '../logging'; + +const logger = createLogger('KitchenSink'); + +const COLORS_SPECTRUM = [ 'red', 'orange', 'yellow', @@ -36,6 +45,10 @@ const PAGES = [ title: 'Box', component: () => KitchenSinkBox, }, + { + title: 'Flex & Sections', + component: () => KitchenSinkFlexAndSections, + }, { title: 'ProgressBar', component: () => KitchenSinkProgressBar, @@ -68,6 +81,10 @@ const PAGES = [ title: 'Themes', component: () => KitchenSinkThemes, }, + { + title: 'Storage', + component: () => KitchenSinkStorage, + }, ]; export const KitchenSink = (props, context) => { @@ -76,36 +93,41 @@ export const KitchenSink = (props, context) => { const PageComponent = PAGES[pageIndex].component(); return ( - -
- - - - {PAGES.map((page, i) => ( - setPageIndex(i)}> - {page.title} - - ))} - - - - - - -
-
+ + +
+ {PAGES.map((page, i) => ( + + ))} +
+
+ + + + + +
); }; const KitchenSinkButton = props => { return ( - +
); }; const KitchenSinkBox = props => { return ( - +
bold @@ -177,7 +199,74 @@ const KitchenSinkBox = props => { right - +
+ ); +}; + +const KitchenSinkFlexAndSections = (props, context) => { + const [grow, setGrow] = useLocalState( + context, 'fs_grow', 1); + const [direction, setDirection] = useLocalState( + context, 'fs_direction', 'column'); + const [fill, setFill] = useLocalState( + context, 'fs_fill', true); + const [hasTitle, setHasTitle] = useLocalState( + context, 'fs_title', true); + return ( + + +
+ + + + +
+
+ + + +
+ Content +
+
+ +
+ Content +
+
+
+
+
); }; @@ -186,9 +275,8 @@ const KitchenSinkProgressBar = (props, context) => { progress, setProgress, ] = useLocalState(context, 'progress', 0.5); - return ( - +
{ content="+0.1" onClick={() => setProgress(progress + 0.1)} /> - +
); }; @@ -218,7 +306,7 @@ const KitchenSinkTabs = (props, context) => { const [altSelection, setAltSelection] = useLocalState(context, 'tabAlt'); const TAB_RANGE = [1, 2, 3, 4, 5]; return ( - +
{ ))} - +
); }; @@ -256,7 +344,7 @@ const KitchenSinkTooltip = props => { 'bottom-right', ]; return ( - +
Box (hover me). @@ -276,7 +364,7 @@ const KitchenSinkTooltip = props => { content={position} /> ))} - +
); }; @@ -285,14 +373,12 @@ const KitchenSinkInput = (props, context) => { number, setNumber, ] = useLocalState(context, 'number', 0); - const [ text, setText, ] = useLocalState(context, 'text', "Sample text"); - return ( - +
{ - +
); }; const KitchenSinkCollapsible = props => { return ( - - )}> -
+
+ + )}> -
- + +
); }; @@ -416,34 +502,67 @@ const BoxWithSampleText = props => { const KitchenSinkBlockQuote = props => { return ( -
- -
+
+
+ +
+
); }; const KitchenSinkByondUi = (props, context) => { const { config } = useBackend(context); + const [code, setCode] = useLocalState(context, + 'byondUiEvalCode', + `Byond.winset('${window.__windowId__}', {\n 'is-visible': true,\n})`); return ( - -
+ +
- +
setImmediate(() => { + try { + const result = new Function('return (' + code + ')')(); + if (result && result.then) { + logger.log('Promise'); + result.then(logger.log); + } + else { + logger.log(result); + } + } + catch (err) { + logger.log(err); + } + })}> + Evaluate + + )}> + setCode(e.target.value)}> + {code} + +
+
); }; const KitchenSinkThemes = (props, context) => { const [theme, setTheme] = useLocalState(context, 'kitchenSinkTheme'); return ( - +
{ onInput={(e, value) => setTheme(value)} /> - +
+ ); +}; + +const KitchenSinkStorage = (props, context) => { + if (!window.localStorage) { + return ( + + Local storage is not available. + + ); + } + return ( +
{ + localStorage.clear(); + }}> + Clear + + )}> + + + {localStorage.length} + + + {formatSiUnit(localStorage.remainingSpace, 0, 'B')} + + +
); }; diff --git a/tgui/packages/tgui/debug/index.js b/tgui/packages/tgui/debug/index.js new file mode 100644 index 00000000000..83fc1365483 --- /dev/null +++ b/tgui/packages/tgui/debug/index.js @@ -0,0 +1,49 @@ +/** + * @file + * @copyright 2020 Aleksej Komarov + * @license MIT + */ + +import { subscribeToHotKey } from '../hotkeys'; + +export const toggleKitchenSink = () => ({ + type: 'debug/toggleKitchenSink', +}); + +export const toggleDebugLayout = () => ({ + type: 'debug/toggleDebugLayout', +}); + +subscribeToHotKey('F11', () => toggleDebugLayout()); +subscribeToHotKey('F12', () => toggleKitchenSink()); +subscribeToHotKey('Ctrl+Alt+[8]', () => { + // NOTE: We need to call this in a timeout, because we need a clean + // stack in order for this to be a fatal error. + setTimeout(() => { + throw new Error( + 'OOPSIE WOOPSIE!! UwU We made a fucky wucky!! A wittle' + + ' fucko boingo! The code monkeys at our headquarters are' + + ' working VEWY HAWD to fix this!'); + }); +}); + +export const selectDebug = state => state.debug; + +export const useDebug = context => selectDebug(context.store.getState()); + +export const debugReducer = (state = {}, action) => { + const { type, payload } = action; + if (type === 'debug/toggleKitchenSink') { + return { + ...state, + kitchenSink: !state.kitchenSink, + }; + } + if (type === 'debug/toggleDebugLayout') { + return { + ...state, + debugLayout: !state.debugLayout, + }; + } + return state; +}; diff --git a/tgui/packages/tgui/drag.js b/tgui/packages/tgui/drag.js index 1b735cb8188..99db716410d 100644 --- a/tgui/packages/tgui/drag.js +++ b/tgui/packages/tgui/drag.js @@ -4,79 +4,171 @@ * @license MIT */ -import { vecAdd, vecInverse, vecMultiply } from 'common/vector'; -import { winget, winset } from './byond'; +import { storage } from 'common/storage'; +import { vecAdd, vecInverse, vecMultiply, vecScale } from 'common/vector'; import { createLogger } from './logging'; const logger = createLogger('drag'); -let ref; +let windowKey = window.__windowId__; let dragging = false; let resizing = false; let screenOffset = [0, 0]; +let screenOffsetPromise; let dragPointOffset; let resizeMatrix; let initialSize; let size; -const getWindowPosition = ref => { - return winget(ref, 'pos').then(pos => [pos.x, pos.y]); +export const setWindowKey = key => { + windowKey = key; }; -const setWindowPosition = (ref, vec) => { - return winset(ref, 'pos', vec[0] + ',' + vec[1]); +export const getWindowPosition = () => [ + window.screenLeft, + window.screenTop, +]; + +export const getWindowSize = () => [ + window.innerWidth, + window.innerHeight, +]; + +export const setWindowPosition = vec => { + const byondPos = vecAdd(vec, screenOffset); + return Byond.winset(window.__windowId__, { + pos: byondPos[0] + ',' + byondPos[1], + }); }; -const setWindowSize = (ref, vec) => { - return winset(ref, 'size', vec[0] + ',' + vec[1]); +export const setWindowSize = vec => { + return Byond.winset(window.__windowId__, { + size: vec[0] + 'x' + vec[1], + }); }; -export const setupDrag = async state => { - logger.log('setting up'); - ref = state.config.window; - // Calculate offset caused by windows taskbar - const realPosition = await getWindowPosition(ref); - screenOffset = [ - realPosition[0] - window.screenLeft, - realPosition[1] - window.screenTop, - ]; - // Constraint window position - const [relocated, safePosition] = constraintPosition(realPosition); - if (relocated) { - setWindowPosition(ref, safePosition); +export const getScreenPosition = () => [ + 0 - screenOffset[0], + 0 - screenOffset[1], +]; + +export const getScreenSize = () => [ + window.screen.availWidth, + window.screen.availHeight, +]; + +/** + * Moves an item to the top of the recents array, and keeps its length + * limited to the number in `limit` argument. + * + * Uses a strict equality check for comparisons. + * + * Returns new recents and an item which was trimmed. + */ +const touchRecents = (recents, touchedItem, limit = 50) => { + const nextRecents = [touchedItem]; + let trimmedItem; + for (let i = 0; i < recents.length; i++) { + const item = recents[i]; + if (item === touchedItem) { + continue; + } + if (nextRecents.length < limit) { + nextRecents.push(item); + } + else { + trimmedItem = item; + } } - logger.debug('current state', { ref, screenOffset }); + return [nextRecents, trimmedItem]; +}; + +export const storeWindowGeometry = windowKey => { + logger.log('storing geometry'); + const geometry = { + pos: getWindowPosition(), + size: getWindowSize(), + }; + storage.set(windowKey, geometry); + // Update the list of stored geometries + const [geometries, trimmedKey] = touchRecents( + storage.get('geometries') || [], + windowKey); + if (trimmedKey) { + storage.remove(trimmedKey); + } + storage.set('geometries', geometries); +}; + +export const recallWindowGeometry = async (windowKey, options = {}) => { + // Only recall geometry in fancy mode + const geometry = options.fancy && storage.get(windowKey); + if (geometry) { + logger.log('recalled geometry:', geometry); + } + let pos = geometry?.pos || options.pos; + const size = options.size; + // Set window size + if (size) { + setWindowSize(size); + } + // Set window position + if (pos) { + await screenOffsetPromise; + // Constraint window position if monitor lock was set in preferences. + if (size && options.locked) { + pos = constraintPosition(pos, size)[1]; + } + setWindowPosition(pos); + } + // Set window position at the center of the screen. + else if (size) { + await screenOffsetPromise; + const areaAvailable = [ + window.screen.availWidth - Math.abs(screenOffset[0]), + window.screen.availHeight - Math.abs(screenOffset[1]), + ]; + const pos = vecAdd( + vecScale(areaAvailable, 0.5), + vecScale(size, -0.5), + vecScale(screenOffset, -1.0)); + setWindowPosition(pos); + } +}; + +export const setupDrag = async () => { + // Calculate screen offset caused by the windows taskbar + screenOffsetPromise = Byond.winget(window.__windowId__, 'pos') + .then(pos => [ + pos.x - window.screenLeft, + pos.y - window.screenTop, + ]); + screenOffset = await screenOffsetPromise; + logger.debug('screen offset', screenOffset); }; /** * Constraints window position to safe screen area, accounting for safe * margins which could be a system taskbar. */ -const constraintPosition = position => { - let x = position[0]; - let y = position[1]; +const constraintPosition = (pos, size) => { + const screenPos = getScreenPosition(); + const screenSize = getScreenSize(); + const nextPos = [pos[0], pos[1]]; let relocated = false; - // Left - if (x < 0) { - x = 0; - relocated = true; + for (let i = 0; i < 2; i++) { + const leftBoundary = screenPos[i]; + const rightBoundary = screenPos[i] + screenSize[i]; + if (pos[i] < leftBoundary) { + nextPos[i] = leftBoundary; + relocated = true; + } + else if (pos[i] + size[i] > rightBoundary) { + nextPos[i] = rightBoundary - size[i]; + relocated = true; + } } - // Right - else if (x + window.innerWidth > window.screen.availWidth) { - x = window.screen.availWidth - window.innerWidth; - relocated = true; - } - // Top - if (y < 0) { - y = 0; - relocated = true; - } - // Bottom - else if (y + window.innerHeight > window.screen.availHeight) { - y = window.screen.availHeight - window.innerHeight; - relocated = true; - } - return [relocated, [x, y]]; + return [relocated, nextPos]; }; export const dragStartHandler = event => { @@ -97,6 +189,7 @@ const dragEndHandler = event => { document.removeEventListener('mousemove', dragMoveHandler); document.removeEventListener('mouseup', dragEndHandler); dragging = false; + storeWindowGeometry(windowKey); }; const dragMoveHandler = event => { @@ -104,9 +197,8 @@ const dragMoveHandler = event => { return; } event.preventDefault(); - setWindowPosition(ref, vecAdd( + setWindowPosition(vecAdd( [event.screenX, event.screenY], - screenOffset, dragPointOffset)); }; @@ -133,6 +225,7 @@ const resizeEndHandler = event => { document.removeEventListener('mousemove', resizeMoveHandler); document.removeEventListener('mouseup', resizeEndHandler); resizing = false; + storeWindowGeometry(windowKey); }; const resizeMoveHandler = event => { @@ -146,7 +239,7 @@ const resizeMoveHandler = event => { dragPointOffset, [1, 1]))); // Sane window size values - size[0] = Math.max(size[0], 250); - size[1] = Math.max(size[1], 120); - setWindowSize(ref, size); + size[0] = Math.max(size[0], 150); + size[1] = Math.max(size[1], 50); + setWindowSize(size); }; diff --git a/tgui/packages/tgui/format.js b/tgui/packages/tgui/format.js index 4a726587237..1f8420860e4 100644 --- a/tgui/packages/tgui/format.js +++ b/tgui/packages/tgui/format.js @@ -39,6 +39,9 @@ export const formatSiUnit = ( minBase1000 = -SI_BASE_INDEX, unit = '' ) => { + if (typeof value !== 'number' || !Number.isFinite(value)) { + return value; + } const realBase10 = Math.floor(Math.log10(value)); const base10 = Math.floor(Math.max(minBase1000 * 3, realBase10)); const realBase1000 = Math.floor(realBase10 / 3); diff --git a/tgui/packages/tgui/global.d.ts b/tgui/packages/tgui/global.d.ts new file mode 100644 index 00000000000..ab8870f15c0 --- /dev/null +++ b/tgui/packages/tgui/global.d.ts @@ -0,0 +1,95 @@ +interface ByondType { + /** + * True if javascript is running in BYOND. + */ + IS_BYOND: boolean; + + /** + * True if browser is IE8 or lower. + */ + IS_LTE_IE8: boolean; + + /** + * True if browser is IE9 or lower. + */ + IS_LTE_IE9: boolean; + + /** + * True if browser is IE10 or lower. + */ + IS_LTE_IE10: boolean; + + /** + * True if browser is IE11 or lower. + */ + IS_LTE_IE11: boolean; + + /** + * Makes a BYOND call. + * + * If path is empty, this will trigger a Topic call. + * You can reference a specific object by setting the "src" parameter. + * + * See: https://secure.byond.com/docs/ref/skinparams.html + */ + call(path: string, params: object): void; + + /** + * Makes an asynchronous BYOND call. Returns a promise. + */ + callAsync(path: string, params: object): Promise; + + /** + * Makes a Topic call. + * + * You can reference a specific object by setting the "src" parameter. + */ + topic(params: object): void; + + /** + * Runs a command or a verb. + */ + command(command: string): void; + + /** + * Retrieves all properties of the BYOND skin element. + * + * Returns a promise with a key-value object containing all properties. + */ + winget(id: string): Promise; + + /** + * Retrieves all properties of the BYOND skin element. + * + * Returns a promise with a key-value object containing all properties. + */ + winget(id: string, propName: '*'): Promise; + + /** + * Retrieves an exactly one property of the BYOND skin element, + * as defined in `propName`. + * + * Returns a promise with the value of that property. + */ + winget(id: string, propName: string): Promise; + + /** + * Retrieves multiple properties of the BYOND skin element, + * as listen in the `propNames` array. + * + * Returns a promise with a key-value object containing listed properties. + */ + winget(id: string, propNames: string[]): Promise; + + /** + * Assigns properties to the BYOND skin element. + */ + winset(id: string, props: object): void; + + /** + * Sets a property on the BYOND skin element to a certain value. + */ + winset(id: string, propName: string, propValue: any): void; +}; + +declare const Byond: ByondType; diff --git a/tgui/packages/tgui/hotkeys.js b/tgui/packages/tgui/hotkeys.js index 0cb2083ac59..0beff6b0288 100644 --- a/tgui/packages/tgui/hotkeys.js +++ b/tgui/packages/tgui/hotkeys.js @@ -4,7 +4,6 @@ * @license MIT */ -import { callByond, IS_IE8 } from './byond'; import { createLogger } from './logging'; const logger = createLogger('hotkeys'); @@ -54,6 +53,18 @@ export const KEY_W = 87; export const KEY_X = 88; export const KEY_Y = 89; export const KEY_Z = 90; +export const KEY_F1 = 112; +export const KEY_F2 = 113; +export const KEY_F3 = 114; +export const KEY_F4 = 115; +export const KEY_F5 = 116; +export const KEY_F6 = 117; +export const KEY_F7 = 118; +export const KEY_F8 = 119; +export const KEY_F9 = 120; +export const KEY_F10 = 121; +export const KEY_F11 = 122; +export const KEY_F12 = 123; export const KEY_EQUAL = 187; export const KEY_MINUS = 189; @@ -70,6 +81,18 @@ const NO_PASSTHROUGH_KEYS = [ KEY_TAB, KEY_CTRL, KEY_SHIFT, + KEY_F1, + KEY_F2, + KEY_F3, + KEY_F4, + KEY_F5, + KEY_F6, + KEY_F7, + KEY_F8, + KEY_F9, + KEY_F10, + KEY_F11, + KEY_F12, ]; // Tracks the "pressed" state of keys @@ -89,6 +112,9 @@ const createHotkeyString = (ctrlKey, altKey, shiftKey, keyCode) => { if (keyCode >= 48 && keyCode <= 90) { str += String.fromCharCode(keyCode); } + else if (keyCode >= KEY_F1 && keyCode <= KEY_F12) { + str += 'F' + (keyCode - 111); + } else { str += '[' + keyCode + ']'; } @@ -135,11 +161,11 @@ const handlePassthrough = (e, eventType) => { // Send this keypress to BYOND if (eventType === 'keydown' && !keyState[keyCode]) { logger.debug('passthrough', eventType, keyData); - return callByond('', { __keydown: keyCode }); + return Byond.topic({ __keydown: keyCode }); } if (eventType === 'keyup' && keyState[keyCode]) { logger.debug('passthrough', eventType, keyData); - return callByond('', { __keyup: keyCode }); + return Byond.topic({ __keyup: keyCode }); } }; @@ -152,41 +178,45 @@ export const releaseHeldKeys = () => { if (keyState[keyCode]) { logger.log(`releasing [${keyCode}] key`); keyState[keyCode] = false; - callByond('', { __keyup: keyCode }); + Byond.topic({ __keyup: keyCode }); } } }; -const handleHotKey = (e, eventType, dispatch) => { +const hotKeySubscribers = []; + +/** + * Subscribes to a certain hotkey, and dispatches a redux action returned + * by the callback function. + */ +export const subscribeToHotKey = (keyString, fn) => { + hotKeySubscribers.push((store, keyData) => { + if (keyData.keyString === keyString) { + const action = fn(store); + if (action) { + store.dispatch(action); + } + } + }); +}; + +const handleHotKey = (e, eventType, store) => { if (eventType !== 'keyup') { return; } const keyData = getKeyData(e); const { - ctrlKey, - altKey, keyCode, hasModifierKeys, keyString, } = keyData; // Dispatch a detected hotkey as a store action - if (hasModifierKeys && !MODIFIER_KEYS.includes(keyCode)) { + if (hasModifierKeys && !MODIFIER_KEYS.includes(keyCode) + || keyCode >= KEY_F1 && keyCode <= KEY_F12) { logger.log(keyString); - // Fun stuff - if (ctrlKey && altKey && keyCode === KEY_BACKSPACE) { - // NOTE: We need to call this in a timeout, because we need a clean - // stack in order for this to be a fatal error. - setTimeout(() => { - throw new Error( - 'OOPSIE WOOPSIE!! UwU We made a fucky wucky!! A wittle' - + ' fucko boingo! The code monkeys at our headquarters are' - + ' working VEWY HAWD to fix this!'); - }); + for (let subscriberFn of hotKeySubscribers) { + subscriberFn(store, keyData); } - dispatch({ - type: 'hotKey', - payload: keyData, - }); } }; @@ -224,18 +254,17 @@ const subscribeToKeyPresses = listenerFn => { // Middleware export const hotKeyMiddleware = store => { - const { dispatch } = store; // Subscribe to key events subscribeToKeyPresses((e, eventType) => { // IE8: Can't determine the focused element, so by extension it passes // keypresses when inputs are focused. - if (!IS_IE8) { + if (!Byond.IS_LTE_IE8) { handlePassthrough(e, eventType); } - handleHotKey(e, eventType, dispatch); + handleHotKey(e, eventType, store); }); // IE8: focusin/focusout only available on IE9+ - if (!IS_IE8) { + if (!Byond.IS_LTE_IE8) { // Clean up when browser window completely loses focus subscribeToLossOfFocus(() => { releaseHeldKeys(); @@ -244,27 +273,3 @@ export const hotKeyMiddleware = store => { // Pass through store actions (do nothing) return next => action => next(action); }; - -// Reducer -export const hotKeyReducer = (state, action) => { - const { type, payload } = action; - if (type === 'hotKey') { - const { ctrlKey, altKey, keyCode } = payload; - // Toggle kitchen sink mode - if (ctrlKey && altKey && keyCode === KEY_EQUAL) { - return { - ...state, - showKitchenSink: !state.showKitchenSink, - }; - } - // Toggle layout debugger - if (ctrlKey && altKey && keyCode === KEY_MINUS) { - return { - ...state, - debugLayout: !state.debugLayout, - }; - } - return state; - } - return state; -}; diff --git a/tgui/packages/tgui/index.js b/tgui/packages/tgui/index.js index a8b76c4fc4a..0b2f1a652eb 100644 --- a/tgui/packages/tgui/index.js +++ b/tgui/packages/tgui/index.js @@ -20,85 +20,84 @@ import './polyfills/inferno'; import './styles/main.scss'; import './styles/themes/abductor.scss'; import './styles/themes/cardtable.scss'; +import './styles/themes/hackerman.scss'; import './styles/themes/malfunction.scss'; import './styles/themes/ntos.scss'; import './styles/themes/paper.scss'; -import './styles/themes/hackerman.scss'; import './styles/themes/retro.scss'; import './styles/themes/syndicate.scss'; -import { loadCSS } from 'fg-loadcss'; +import { perf } from 'common/perf'; import { render } from 'inferno'; import { setupHotReloading } from 'tgui-dev-server/link/client'; -import { backendUpdate } from './backend'; -import { IS_IE8 } from './byond'; +import { loadCSS } from './assets'; +import { backendUpdate, backendSuspendSuccess, selectBackend, sendMessage } from './backend'; import { setupDrag } from './drag'; import { logger } from './logging'; import { createStore, StoreProvider } from './store'; -const enteredBundleAt = Date.now(); +perf.mark('inception', window.__inception__); +perf.mark('init'); + const store = createStore(); let reactRoot; let initialRender = true; const renderLayout = () => { - // Mark the beginning of the render - let startedAt; - if (process.env.NODE_ENV !== 'production') { - startedAt = Date.now(); - } - try { - const state = store.getState(); - // Initial render setup - if (initialRender) { - logger.log('initial render', state); - // Setup dragging - setupDrag(state); + perf.mark('render/start'); + const state = store.getState(); + const { suspended, assets } = selectBackend(state); + // Initial render setup + if (initialRender) { + logger.log('initial render', state); + // Setup dragging + if (initialRender !== 'recycled') { + setupDrag(); } - // Start rendering - const { getRoutedComponent } = require('./routes'); - const Component = getRoutedComponent(state); - const element = ( - - - - ); - if (!reactRoot) { - reactRoot = document.getElementById('react-root'); - } - render(element, reactRoot); } - catch (err) { - logger.error('rendering error', err); - throw err; + // Start rendering + const { getRoutedComponent } = require('./routes'); + const Component = getRoutedComponent(state); + const element = ( + + + + ); + if (!reactRoot) { + reactRoot = document.getElementById('react-root'); } + render(element, reactRoot); + if (suspended) { + return; + } + perf.mark('render/finish'); // Report rendering time if (process.env.NODE_ENV !== 'production') { - const finishedAt = Date.now(); - if (initialRender) { + if (initialRender === 'recycled') { + logger.log('rendered in', + perf.measure('render/start', 'render/finish')); + } + else if (initialRender) { logger.debug('serving from:', location.href); - logger.debug('bundle entered in', timeDiff( - window.__inception__, enteredBundleAt)); - logger.debug('initialized in', timeDiff( - enteredBundleAt, startedAt)); - logger.log('rendered in', timeDiff( - startedAt, finishedAt)); - logger.log('fully loaded in', timeDiff( - window.__inception__, finishedAt)); + logger.debug('bundle entered in', + perf.measure('inception', 'init')); + logger.debug('initialized in', + perf.measure('init', 'render/start')); + logger.log('rendered in', + perf.measure('render/start', 'render/finish')); + logger.log('fully loaded in', + perf.measure('inception', 'render/finish')); } else { - logger.debug('rendered in', timeDiff(startedAt, finishedAt)); + logger.debug('rendered in', + perf.measure('render/start', 'render/finish')); } } if (initialRender) { initialRender = false; } -}; - -const timeDiff = (startedAt, finishedAt) => { - const diff = finishedAt - startedAt; - const diffFrames = (diff / 16.6667).toFixed(2); - return `${diff}ms (${diffFrames} frames)`; + // Load assets + assets?.styles?.forEach(filename => loadCSS(filename)); }; // Parse JSON and report all abnormal JSON strings coming from BYOND @@ -113,7 +112,7 @@ const parseStateJson = json => { }; // IE8: No reviver for you! // See: https://stackoverflow.com/questions/1288962 - if (IS_IE8) { + if (Byond.IS_LTE_IE8) { reviver = undefined; } try { @@ -134,14 +133,36 @@ const setupApp = () => { }); // Subscribe for bankend updates - window.update = stateJson => { - // NOTE: stateJson can be an object only if called manually from console. + window.update = messageJson => { + const { suspended } = selectBackend(store.getState()); + // NOTE: messageJson can be an object only if called manually from console. // This is useful for debugging tgui in external browsers, like Chrome. - const state = typeof stateJson === 'string' - ? parseStateJson(stateJson) - : stateJson; - // Backend update dispatches a store action - store.dispatch(backendUpdate(state)); + const message = typeof messageJson === 'string' + ? parseStateJson(messageJson) + : messageJson; + logger.debug(`received message '${message?.type}'`); + const { type, payload } = message; + if (type === 'update') { + window.__ref__ = payload.config.ref; + if (suspended) { + logger.log('reinitializing to:', payload.config.ref); + initialRender = 'recycled'; + } + // Backend update dispatches a store action + store.dispatch(backendUpdate(payload)); + return; + } + if (type === 'suspend') { + store.dispatch(backendSuspendSuccess()); + return; + } + if (type === 'ping') { + sendMessage({ + type: 'pingReply', + }); + return; + } + logger.log('unhandled message', message); }; // Enable hot module reloading @@ -169,6 +190,26 @@ const setupApp = () => { loadCSS('font-awesome.css'); }; +// Setup a fatal error reporter +window.__logger__ = { + fatal: (error, stack) => { + // Get last state for debugging purposes + const backendState = selectBackend(store.getState()); + const reportedState = { + config: backendState.config, + suspended: backendState.suspended, + suspending: backendState.suspending, + }; + // Send to development server + logger.log('FatalError:', error || stack); + logger.log('State:', reportedState); + // Append this data to the stack + stack += '\nState: ' + JSON.stringify(reportedState); + // Return an updated stack + return stack; + }, +}; + if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', setupApp); } diff --git a/tgui/packages/tgui/interfaces/AbductorConsole.js b/tgui/packages/tgui/interfaces/AbductorConsole.js index 7bb189bd6de..de750bc9ca4 100644 --- a/tgui/packages/tgui/interfaces/AbductorConsole.js +++ b/tgui/packages/tgui/interfaces/AbductorConsole.js @@ -9,6 +9,8 @@ export const AbductorConsole = (props, context) => { return ( diff --git a/tgui/packages/tgui/interfaces/Achievements.js b/tgui/packages/tgui/interfaces/Achievements.js index 464708d2484..512c39fb59a 100644 --- a/tgui/packages/tgui/interfaces/Achievements.js +++ b/tgui/packages/tgui/interfaces/Achievements.js @@ -12,7 +12,11 @@ export const Achievements = (props, context) => { const achievements = data.achievements .filter(x => x.category === selectedCategory); return ( - + {categories.map(category => ( diff --git a/tgui/packages/tgui/interfaces/AiAirlock.js b/tgui/packages/tgui/interfaces/AiAirlock.js index 4886e71034e..a48ce24402e 100644 --- a/tgui/packages/tgui/interfaces/AiAirlock.js +++ b/tgui/packages/tgui/interfaces/AiAirlock.js @@ -24,7 +24,9 @@ export const AiAirlock = (props, context) => { const statusBackup = dangerMap[data.power.backup] || dangerMap[0]; const statusElectrify = dangerMap[data.shock] || dangerMap[0]; return ( - +
diff --git a/tgui/packages/tgui/interfaces/AiRestorer.js b/tgui/packages/tgui/interfaces/AiRestorer.js index e91d392d10a..9dfacda0c87 100644 --- a/tgui/packages/tgui/interfaces/AiRestorer.js +++ b/tgui/packages/tgui/interfaces/AiRestorer.js @@ -5,7 +5,10 @@ import { Window } from '../layouts'; export const AiRestorer = () => { return ( - + diff --git a/tgui/packages/tgui/interfaces/AirAlarm.js b/tgui/packages/tgui/interfaces/AirAlarm.js index 741f89e6d04..e669d8d9481 100644 --- a/tgui/packages/tgui/interfaces/AirAlarm.js +++ b/tgui/packages/tgui/interfaces/AirAlarm.js @@ -12,7 +12,10 @@ export const AirAlarm = (props, context) => { const { act, data } = useBackend(context); const locked = data.locked && !data.siliconUser; return ( - + diff --git a/tgui/packages/tgui/interfaces/AirlockElectronics.js b/tgui/packages/tgui/interfaces/AirlockElectronics.js index e291052e25e..a448f55e9b2 100644 --- a/tgui/packages/tgui/interfaces/AirlockElectronics.js +++ b/tgui/packages/tgui/interfaces/AirlockElectronics.js @@ -12,7 +12,9 @@ export const AirlockElectronics = (props, context) => { const regions = data.regions || []; const accesses = data.accesses || []; return ( - +
diff --git a/tgui/packages/tgui/interfaces/Apc.js b/tgui/packages/tgui/interfaces/Apc.js index 72cee0bf83e..42a214cdf96 100644 --- a/tgui/packages/tgui/interfaces/Apc.js +++ b/tgui/packages/tgui/interfaces/Apc.js @@ -6,7 +6,10 @@ import { InterfaceLockNoticeBox } from './common/InterfaceLockNoticeBox'; export const Apc = (props, context) => { return ( - + diff --git a/tgui/packages/tgui/interfaces/ApcControl.js b/tgui/packages/tgui/interfaces/ApcControl.js index 78dd1baf8c1..449101d5293 100644 --- a/tgui/packages/tgui/interfaces/ApcControl.js +++ b/tgui/packages/tgui/interfaces/ApcControl.js @@ -9,11 +9,17 @@ import { AreaCharge, powerRank } from './PowerMonitor'; export const ApcControl = (props, context) => { const { data } = useBackend(context); return ( - - {data.authenticated === 1 - && } - {data.authenticated === 0 - && } + + {data.authenticated === 1 && ( + + )} + {data.authenticated === 0 && ( + + )} ); }; diff --git a/tgui/packages/tgui/interfaces/AtmosAlertConsole.js b/tgui/packages/tgui/interfaces/AtmosAlertConsole.js index 8db992f61b5..1d55ccf5957 100644 --- a/tgui/packages/tgui/interfaces/AtmosAlertConsole.js +++ b/tgui/packages/tgui/interfaces/AtmosAlertConsole.js @@ -7,7 +7,10 @@ export const AtmosAlertConsole = (props, context) => { const priorityAlerts = data.priority || []; const minorAlerts = data.minor || []; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/AtmosControlConsole.js b/tgui/packages/tgui/interfaces/AtmosControlConsole.js index 7a35db6870f..454866aa2f3 100644 --- a/tgui/packages/tgui/interfaces/AtmosControlConsole.js +++ b/tgui/packages/tgui/interfaces/AtmosControlConsole.js @@ -8,7 +8,10 @@ export const AtmosControlConsole = (props, context) => { const { act, data } = useBackend(context); const sensors = data.sensors || []; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/AtmosFilter.js b/tgui/packages/tgui/interfaces/AtmosFilter.js index 1bc7e8f63b1..8b382cbad97 100644 --- a/tgui/packages/tgui/interfaces/AtmosFilter.js +++ b/tgui/packages/tgui/interfaces/AtmosFilter.js @@ -7,7 +7,9 @@ export const AtmosFilter = (props, context) => { const { act, data } = useBackend(context); const filterTypes = data.filter_types || []; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/AtmosMixer.js b/tgui/packages/tgui/interfaces/AtmosMixer.js index 067118dea14..9ac9dbb8787 100644 --- a/tgui/packages/tgui/interfaces/AtmosMixer.js +++ b/tgui/packages/tgui/interfaces/AtmosMixer.js @@ -5,7 +5,9 @@ import { Window } from '../layouts'; export const AtmosMixer = (props, context) => { const { act, data } = useBackend(context); return ( - +
    diff --git a/tgui/packages/tgui/interfaces/AtmosPump.js b/tgui/packages/tgui/interfaces/AtmosPump.js index ec3285cd444..3d3a7de10c0 100644 --- a/tgui/packages/tgui/interfaces/AtmosPump.js +++ b/tgui/packages/tgui/interfaces/AtmosPump.js @@ -5,7 +5,9 @@ import { Window } from '../layouts'; export const AtmosPump = (props, context) => { const { act, data } = useBackend(context); return ( - +
    diff --git a/tgui/packages/tgui/interfaces/AutomatedAnnouncement.js b/tgui/packages/tgui/interfaces/AutomatedAnnouncement.js index d7b517d961f..0baea4de97b 100644 --- a/tgui/packages/tgui/interfaces/AutomatedAnnouncement.js +++ b/tgui/packages/tgui/interfaces/AutomatedAnnouncement.js @@ -17,7 +17,10 @@ export const AutomatedAnnouncement = (props, context) => { newhead, } = data; return ( - +
    { station_name, } = data; return ( - +
    - { amount, } = data; return ( - +
    { processing, } = data; return ( - + {!!processing && ( diff --git a/tgui/packages/tgui/interfaces/BlackMarketUplink.js b/tgui/packages/tgui/interfaces/BlackMarketUplink.js index 0d51cc4c365..8cfcff5756a 100644 --- a/tgui/packages/tgui/interfaces/BlackMarketUplink.js +++ b/tgui/packages/tgui/interfaces/BlackMarketUplink.js @@ -1,5 +1,5 @@ import { useBackend } from '../backend'; -import { AnimatedNumber, Box, Button, Flex, Modal, Section, Table, Tabs } from '../components'; +import { AnimatedNumber, Box, Button, Flex, Modal, Section, Tabs } from '../components'; import { formatMoney } from '../format'; import { Window } from '../layouts'; @@ -15,6 +15,8 @@ export const BlackMarketUplink = (props, context) => { } = data; return ( diff --git a/tgui/packages/tgui/interfaces/BluespaceArtillery.js b/tgui/packages/tgui/interfaces/BluespaceArtillery.js index 6d2d94f7bfb..91f7c50761b 100644 --- a/tgui/packages/tgui/interfaces/BluespaceArtillery.js +++ b/tgui/packages/tgui/interfaces/BluespaceArtillery.js @@ -12,7 +12,9 @@ export const BluespaceArtillery = (props, context) => { target, } = data; return ( - + {!!notice && ( diff --git a/tgui/packages/tgui/interfaces/BluespaceLocator.js b/tgui/packages/tgui/interfaces/BluespaceLocator.js index 4c86f2cbd34..ef063a49428 100644 --- a/tgui/packages/tgui/interfaces/BluespaceLocator.js +++ b/tgui/packages/tgui/interfaces/BluespaceLocator.js @@ -3,20 +3,23 @@ import { Icon, ProgressBar, Tabs } from '../components'; import { Window } from '../layouts'; const directionToIcon = { - "north": 0, - "northeast": 45, - "east": 90, - "southeast": 135, - "south": 180, - "southwest": 225, - "west": 270, - "northwest": 315, + north: 0, + northeast: 45, + east: 90, + southeast: 135, + south: 180, + southwest: 225, + west: 270, + northwest: 315, }; export const BluespaceLocator = (props, context) => { const [tab, setTab] = useSharedState(context, "tab", "implant"); return ( - + { const TeleporterBeacons = (props, context) => { const { data } = useBackend(context); - const { telebeacons } = data; - return ( telebeacons.map(beacon => ( { const TrackingImplants = (props, context) => { const { data } = useBackend(context); - const { trackimplants } = data; - return ( trackimplants.map(implant => ( { const SignalLocator = (props, context) => { const { data } = useBackend(context); - const { trackingrange } = data; - const { name, direction, distance, } = props; - return ( { const ais = data.ais || []; const laws = data.laws || []; return ( - +
    { const { act, data } = useBackend(context); return ( - +
    { nextCameraName, ] = prevNextCamera(cameras, activeCamera); return ( - +
    @@ -81,7 +84,6 @@ export const CameraConsole = (props, context) => { className="CameraConsole__map" params={{ id: mapRef, - parent: config.window, type: 'map', }} />
    diff --git a/tgui/packages/tgui/interfaces/Canister.js b/tgui/packages/tgui/interfaces/Canister.js index e369f798cd2..b94dc8ef8ff 100644 --- a/tgui/packages/tgui/interfaces/Canister.js +++ b/tgui/packages/tgui/interfaces/Canister.js @@ -21,7 +21,9 @@ export const Canister = (props, context) => { restricted, } = data; return ( - +
    this.clickwrapper(e)}> Canvas failed to render. @@ -76,10 +76,20 @@ class PaintCanvas extends Component { } } +const getImageSize = value => { + const width = value.length; + const height = width !== 0 ? value[0].length : 0; + return [width, height]; +}; + export const Canvas = (props, context) => { const { act, data } = useBackend(context); + const [width, height] = getImageSize(data.grid); return ( - + { const cart = data.cart || []; const requests = data.requests || []; return ( - + diff --git a/tgui/packages/tgui/interfaces/CargoBountyConsole.js b/tgui/packages/tgui/interfaces/CargoBountyConsole.js index 320b2a2135c..ad485231ebc 100644 --- a/tgui/packages/tgui/interfaces/CargoBountyConsole.js +++ b/tgui/packages/tgui/interfaces/CargoBountyConsole.js @@ -1,19 +1,18 @@ -import { toArray } from 'common/collections'; -import { Fragment } from 'inferno'; -import { useBackend, useSharedState } from '../backend'; -import { AnimatedNumber, Box, Button, Flex, LabeledList, Section, Table, Tabs, Grid } from '../components'; +import { useBackend } from '../backend'; +import { AnimatedNumber, Box, Button, Section, Table } from '../components'; import { formatMoney } from '../format'; import { Window } from '../layouts'; export const CargoBountyConsole = (props, context) => { const { act, data } = useBackend(context); - const [tab, setTab] = useSharedState(context, 'tab', 'catalog'); const { bountydata = [], - stored_cash, } = data; return ( - +
    } @@ -24,9 +23,9 @@ export const CargoBountyConsole = (props, context) => { onClick={() => act('Print')} /> )}> - @@ -54,31 +53,31 @@ export const CargoBountyConsole = (props, context) => { {bounty.name} - {bounty.description} - {bounty.priority === 1 ? High Priority : ""} {bounty.completion_string} - {bounty.reward_string} - -
    -
    ); diff --git a/tgui/packages/tgui/interfaces/CargoExpress.js b/tgui/packages/tgui/interfaces/CargoExpress.js index 4e4ccf6a881..685569f6d53 100644 --- a/tgui/packages/tgui/interfaces/CargoExpress.js +++ b/tgui/packages/tgui/interfaces/CargoExpress.js @@ -8,7 +8,10 @@ import { InterfaceLockNoticeBox } from './common/InterfaceLockNoticeBox'; export const CargoExpress = (props, context) => { const { act, data } = useBackend(context); return ( - + diff --git a/tgui/packages/tgui/interfaces/CargoHoldTerminal.js b/tgui/packages/tgui/interfaces/CargoHoldTerminal.js index aaf66e701c8..b20c0c9f9bf 100644 --- a/tgui/packages/tgui/interfaces/CargoHoldTerminal.js +++ b/tgui/packages/tgui/interfaces/CargoHoldTerminal.js @@ -12,7 +12,10 @@ export const CargoHoldTerminal = (props, context) => { status_report, } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/CellularEmporium.js b/tgui/packages/tgui/interfaces/CellularEmporium.js index 8e8d58cb94d..07989d8bad2 100644 --- a/tgui/packages/tgui/interfaces/CellularEmporium.js +++ b/tgui/packages/tgui/interfaces/CellularEmporium.js @@ -7,7 +7,10 @@ export const CellularEmporium = (props, context) => { const { act, data } = useBackend(context); const { abilities } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/CentcomPodLauncher.js b/tgui/packages/tgui/interfaces/CentcomPodLauncher.js index 0fb536e9933..05982b2fbf6 100644 --- a/tgui/packages/tgui/interfaces/CentcomPodLauncher.js +++ b/tgui/packages/tgui/interfaces/CentcomPodLauncher.js @@ -6,7 +6,11 @@ import { Window } from '../layouts'; export const CentcomPodLauncher = () => { return ( - + @@ -102,7 +106,7 @@ export const CentcomPodLauncherContent = (props, context) => { disabled={!data.oldArea} onClick={() => act('teleportBack')} /> - +
    )) ) : ( - + No more knowledge can be found )} diff --git a/tgui/packages/tgui/interfaces/GlandDispenser.js b/tgui/packages/tgui/interfaces/GlandDispenser.js index 49b7834d8c3..f572a92f063 100644 --- a/tgui/packages/tgui/interfaces/GlandDispenser.js +++ b/tgui/packages/tgui/interfaces/GlandDispenser.js @@ -8,7 +8,10 @@ export const GlandDispenser = (props, context) => { glands = [], } = data; return ( - +
    {glands.map(gland => ( diff --git a/tgui/packages/tgui/interfaces/Gps.js b/tgui/packages/tgui/interfaces/Gps.js index a5fcb8d1941..beffdad9c4d 100644 --- a/tgui/packages/tgui/interfaces/Gps.js +++ b/tgui/packages/tgui/interfaces/Gps.js @@ -37,7 +37,11 @@ export const Gps = (props, context) => { signal => signal.entrytag), ])(data.signals || []); return ( - +
    { operational, } = data; return ( - + {!operational && ( diff --git a/tgui/packages/tgui/interfaces/GulagItemReclaimer.js b/tgui/packages/tgui/interfaces/GulagItemReclaimer.js index 846b4659988..6f47eed3424 100644 --- a/tgui/packages/tgui/interfaces/GulagItemReclaimer.js +++ b/tgui/packages/tgui/interfaces/GulagItemReclaimer.js @@ -8,7 +8,10 @@ export const GulagItemReclaimer = (props, context) => { mobs = [], } = data; return ( - + {mobs.length === 0 && ( diff --git a/tgui/packages/tgui/interfaces/GulagTeleporterConsole.js b/tgui/packages/tgui/interfaces/GulagTeleporterConsole.js index 3b709cbcb03..abb8da8b647 100644 --- a/tgui/packages/tgui/interfaces/GulagTeleporterConsole.js +++ b/tgui/packages/tgui/interfaces/GulagTeleporterConsole.js @@ -19,7 +19,9 @@ export const GulagTeleporterConsole = (props, context) => { prisoner = {}, } = data; return ( - +
    { program, } = data; return ( - +
    { calling, } = data; return ( - + {!!calling && ( { const { act, data } = useBackend(context); return ( - +
    { const { act, data } = useBackend(context); return ( - +
    { visible, } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/Intellicard.js b/tgui/packages/tgui/interfaces/Intellicard.js index 99e653ed314..1a6e3885d9f 100644 --- a/tgui/packages/tgui/interfaces/Intellicard.js +++ b/tgui/packages/tgui/interfaces/Intellicard.js @@ -16,7 +16,10 @@ export const Intellicard = (props, context) => { } = data; const offline = isDead || isBraindead; return ( - +
    { song => song.name), ])(data.songs || []); return ( - +
    { const { act, data } = useBackend(context); return ( - +
    diff --git a/tgui/packages/tgui/interfaces/LaborClaimConsole.js b/tgui/packages/tgui/interfaces/LaborClaimConsole.js index b3ee427844f..5483b1dd70a 100644 --- a/tgui/packages/tgui/interfaces/LaborClaimConsole.js +++ b/tgui/packages/tgui/interfaces/LaborClaimConsole.js @@ -13,7 +13,9 @@ export const LaborClaimConsole = (props, context) => { unclaimed_points, } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/LanguageMenu.js b/tgui/packages/tgui/interfaces/LanguageMenu.js index 80e0168c424..656d4a818e4 100644 --- a/tgui/packages/tgui/interfaces/LanguageMenu.js +++ b/tgui/packages/tgui/interfaces/LanguageMenu.js @@ -13,7 +13,11 @@ export const LanguageMenu = (props, context) => { unknown_languages = [], } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/LaunchpadConsole.js b/tgui/packages/tgui/interfaces/LaunchpadConsole.js index 1fd24e981dc..83f8d0aa59e 100644 --- a/tgui/packages/tgui/interfaces/LaunchpadConsole.js +++ b/tgui/packages/tgui/interfaces/LaunchpadConsole.js @@ -197,7 +197,10 @@ export const LaunchpadConsole = (props, context) => { selected_id, } = data; return ( - + {launchpads.length === 0 && ( diff --git a/tgui/packages/tgui/interfaces/LaunchpadRemote.js b/tgui/packages/tgui/interfaces/LaunchpadRemote.js index 2720914611e..2173630c081 100644 --- a/tgui/packages/tgui/interfaces/LaunchpadRemote.js +++ b/tgui/packages/tgui/interfaces/LaunchpadRemote.js @@ -10,7 +10,11 @@ export const LaunchpadRemote = (props, context) => { pad_closed, } = data; return ( - + {!has_pad && ( diff --git a/tgui/packages/tgui/interfaces/MafiaPanel.js b/tgui/packages/tgui/interfaces/MafiaPanel.js index e12a33ac087..e3c2c893ecc 100644 --- a/tgui/packages/tgui/interfaces/MafiaPanel.js +++ b/tgui/packages/tgui/interfaces/MafiaPanel.js @@ -1,6 +1,6 @@ -import { useBackend } from '../backend'; -import { Flex, Button, LabeledList, Section, Box, TimeDisplay } from '../components'; import { Fragment } from 'inferno'; +import { useBackend } from '../backend'; +import { Box, Button, Flex, LabeledList, Section, TimeDisplay } from '../components'; import { Window } from '../layouts'; export const MafiaPanel = (props, context) => { @@ -18,7 +18,10 @@ export const MafiaPanel = (props, context) => { } = data; return (
    diff --git a/tgui/packages/tgui/interfaces/MalfunctionModulePicker.js b/tgui/packages/tgui/interfaces/MalfunctionModulePicker.js index 298e56655d2..70a1716ed68 100644 --- a/tgui/packages/tgui/interfaces/MalfunctionModulePicker.js +++ b/tgui/packages/tgui/interfaces/MalfunctionModulePicker.js @@ -9,6 +9,8 @@ export const MalfunctionModulePicker = (props, context) => { } = data; return ( diff --git a/tgui/packages/tgui/interfaces/MechBayPowerConsole.js b/tgui/packages/tgui/interfaces/MechBayPowerConsole.js index bed15d261e0..22a440791c9 100644 --- a/tgui/packages/tgui/interfaces/MechBayPowerConsole.js +++ b/tgui/packages/tgui/interfaces/MechBayPowerConsole.js @@ -8,7 +8,9 @@ export const MechBayPowerConsole = (props, context) => { const mech = recharge_port && recharge_port.mech; const cell = mech && mech.cell; return ( - +
    { active_status_4, } = data; return ( - + @@ -97,7 +100,9 @@ const MedicalKioskScanButton = (props, context) => { tooltipPosition="right" content={name} onClick={() => { - act(`beginScan_${index}`); + if (!paid) { + act(`beginScan_${index}`); + } setScanIndex(index); }} /> diff --git a/tgui/packages/tgui/interfaces/MiningVendor.js b/tgui/packages/tgui/interfaces/MiningVendor.js index 950deb196ba..39ff2969b1f 100644 --- a/tgui/packages/tgui/interfaces/MiningVendor.js +++ b/tgui/packages/tgui/interfaces/MiningVendor.js @@ -9,7 +9,10 @@ export const MiningVendor = (props, context) => { ...data.product_records, ]; return ( - +
    {data.user && ( @@ -27,7 +30,7 @@ export const MiningVendor = (props, context) => { )}
    -
    +
    {inventory.map((product => { return ( diff --git a/tgui/packages/tgui/interfaces/Mint.js b/tgui/packages/tgui/interfaces/Mint.js index 8120f25642a..1b7e1456c3e 100644 --- a/tgui/packages/tgui/interfaces/Mint.js +++ b/tgui/packages/tgui/interfaces/Mint.js @@ -6,7 +6,9 @@ export const Mint = (props, context) => { const { act, data } = useBackend(context); const inserted_materials = data.inserted_materials || []; return ( - +
    { } = data; const locked = data.locked && !data.siliconUser; return ( - +
    { return ( - + diff --git a/tgui/packages/tgui/interfaces/NaniteCloudControl.js b/tgui/packages/tgui/interfaces/NaniteCloudControl.js index 3ecfcef92c4..e9eb5664649 100644 --- a/tgui/packages/tgui/interfaces/NaniteCloudControl.js +++ b/tgui/packages/tgui/interfaces/NaniteCloudControl.js @@ -10,7 +10,6 @@ export const NaniteDiskBox = (props, context) => { has_program, disk, } = data; - if (!has_disk) { return ( @@ -18,7 +17,6 @@ export const NaniteDiskBox = (props, context) => { ); } - if (!has_program) { return ( @@ -26,7 +24,6 @@ export const NaniteDiskBox = (props, context) => { ); } - return ( ); @@ -34,7 +31,6 @@ export const NaniteDiskBox = (props, context) => { export const NaniteInfoBox = (props, context) => { const { program } = props; - const { name, desc, @@ -52,9 +48,7 @@ export const NaniteInfoBox = (props, context) => { timer_trigger, timer_trigger_delay, } = program; - const extra_settings = program.extra_settings || []; - return (
    { export const NaniteCloudBackupList = (props, context) => { const { act, data } = useBackend(context); const cloud_backups = data.cloud_backups || []; - return ( - cloud_backups.map(backup => ( -
    - @@ -54,31 +53,31 @@ export const NtosBountyConsole = (props, context) => { {bounty.name} - {bounty.description} - {bounty.priority === 1 ? High Priority : ""} {bounty.completion_string} - {bounty.reward_string} - -
    +
    +
    { ) )} - { return ( - + diff --git a/tgui/packages/tgui/interfaces/NtosNetDownloader.js b/tgui/packages/tgui/interfaces/NtosNetDownloader.js index 5a25deb9fae..24d127455ac 100644 --- a/tgui/packages/tgui/interfaces/NtosNetDownloader.js +++ b/tgui/packages/tgui/interfaces/NtosNetDownloader.js @@ -14,7 +14,11 @@ export const NtosNetDownloader = (props, context) => { hackedavailable, } = data; return ( - + {!!error && ( diff --git a/tgui/packages/tgui/interfaces/NtosPowerMonitor.js b/tgui/packages/tgui/interfaces/NtosPowerMonitor.js index a9f6d2e8fc2..c178fa76631 100644 --- a/tgui/packages/tgui/interfaces/NtosPowerMonitor.js +++ b/tgui/packages/tgui/interfaces/NtosPowerMonitor.js @@ -3,7 +3,10 @@ import { PowerMonitorContent } from './PowerMonitor'; export const NtosPowerMonitor = () => { return ( - + diff --git a/tgui/packages/tgui/interfaces/NtosRadar.js b/tgui/packages/tgui/interfaces/NtosRadar.js index 1b8cfebaa5a..46b20546fa0 100644 --- a/tgui/packages/tgui/interfaces/NtosRadar.js +++ b/tgui/packages/tgui/interfaces/NtosRadar.js @@ -1,12 +1,14 @@ -import { Fragment } from 'inferno'; -import { useBackend } from '../backend'; import { classes } from 'common/react'; -import { Box, Button, LabeledList, NoticeBox, Section, Table, Flex, Icon } from '../components'; +import { useBackend } from '../backend'; +import { Box, Button, Flex, Icon, NoticeBox, Section } from '../components'; import { NtosWindow } from '../layouts'; export const NtosRadar = (props, context) => { return ( - + ); @@ -20,9 +22,8 @@ export const NtosRadarContent = (props, context) => { target = [], scanning, } = data; - return ( - { return ( - + ); -}; \ No newline at end of file +}; diff --git a/tgui/packages/tgui/interfaces/NtosRequestKiosk.js b/tgui/packages/tgui/interfaces/NtosRequestKiosk.js index 800b29db2bf..63a8dc63f66 100644 --- a/tgui/packages/tgui/interfaces/NtosRequestKiosk.js +++ b/tgui/packages/tgui/interfaces/NtosRequestKiosk.js @@ -3,7 +3,10 @@ import { NtosWindow } from '../layouts'; export const NtosRequestKiosk = (props, context) => { return ( - + diff --git a/tgui/packages/tgui/interfaces/NtosRevelation.js b/tgui/packages/tgui/interfaces/NtosRevelation.js index c4df0fa5b21..64313750114 100644 --- a/tgui/packages/tgui/interfaces/NtosRevelation.js +++ b/tgui/packages/tgui/interfaces/NtosRevelation.js @@ -1,20 +1,23 @@ -import { Section, Button, LabeledList } from "../components"; -import { useBackend } from "../backend"; -import { NtosWindow } from "../layouts"; +import { Section, Button, LabeledList } from '../components'; +import { useBackend } from '../backend'; +import { NtosWindow } from '../layouts'; export const NtosRevelation = (props, context) => { const { act, data } = useBackend(context); - return ( - +
    act('PRG_obfuscate', { new_name: value })} - mb={1} - /> + onCommit={(e, value) => act('PRG_obfuscate', { + new_name: value, + })} + mb={1} /> {
    diff --git a/tgui/packages/tgui/interfaces/NtosRoboControl.js b/tgui/packages/tgui/interfaces/NtosRoboControl.js index 6bab7b99484..7343fadc230 100644 --- a/tgui/packages/tgui/interfaces/NtosRoboControl.js +++ b/tgui/packages/tgui/interfaces/NtosRoboControl.js @@ -15,7 +15,10 @@ export const NtosRoboControl = (props, context) => { has_id, } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/NtosShipping.js b/tgui/packages/tgui/interfaces/NtosShipping.js index ac387b2ef9f..0ff0704cd16 100644 --- a/tgui/packages/tgui/interfaces/NtosShipping.js +++ b/tgui/packages/tgui/interfaces/NtosShipping.js @@ -5,7 +5,10 @@ import { NtosWindow } from '../layouts'; export const NtosShipping = (props, context) => { const { act, data } = useBackend(context); return ( - +
    { return ( - + diff --git a/tgui/packages/tgui/interfaces/NtosSupermatterMonitor.js b/tgui/packages/tgui/interfaces/NtosSupermatterMonitor.js index c62eb5686ff..9975113334b 100644 --- a/tgui/packages/tgui/interfaces/NtosSupermatterMonitor.js +++ b/tgui/packages/tgui/interfaces/NtosSupermatterMonitor.js @@ -10,7 +10,10 @@ const logScale = value => Math.log2(16 + Math.max(0, value)) - 4; export const NtosSupermatterMonitor = (props, context) => { return ( - + diff --git a/tgui/packages/tgui/interfaces/NuclearBomb.js b/tgui/packages/tgui/interfaces/NuclearBomb.js index a7086024697..76c10cf77a7 100644 --- a/tgui/packages/tgui/interfaces/NuclearBomb.js +++ b/tgui/packages/tgui/interfaces/NuclearBomb.js @@ -53,7 +53,10 @@ export const NuclearBomb = (props, context) => { status2, } = data; return ( - + { const [tab, setTab] = useSharedState(context, 'tab', 1); return ( - + { }; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/OreBox.js b/tgui/packages/tgui/interfaces/OreBox.js index fedf59beff3..9f9c5a8ece0 100644 --- a/tgui/packages/tgui/interfaces/OreBox.js +++ b/tgui/packages/tgui/interfaces/OreBox.js @@ -7,7 +7,10 @@ export const OreBox = (props, context) => { const { act, data } = useBackend(context); const { materials } = data; return ( - +
    { hasDisk, } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/Pandemic.js b/tgui/packages/tgui/interfaces/Pandemic.js index 50555525f59..bddf4a2bc01 100644 --- a/tgui/packages/tgui/interfaces/Pandemic.js +++ b/tgui/packages/tgui/interfaces/Pandemic.js @@ -6,16 +6,13 @@ import { Window } from '../layouts'; export const PandemicBeakerDisplay = (props, context) => { const { act, data } = useBackend(context); - const { has_beaker, beaker_empty, has_blood, blood, } = data; - const cant_empty = !has_beaker || beaker_empty; - return (
    { disabled={!has_beaker} onClick={() => act('eject_beaker')} /> - )} > + )}> {has_beaker ? ( !beaker_empty ? ( has_blood ? ( @@ -71,13 +68,10 @@ export const PandemicBeakerDisplay = (props, context) => { export const PandemicDiseaseDisplay = (props, context) => { const { act, data } = useBackend(context); - const { is_ready, } = data; - const viruses = data.viruses || []; - return ( viruses.map(virus => { const symptoms = virus.symptoms || []; @@ -102,7 +96,7 @@ export const PandemicDiseaseDisplay = (props, context) => { onClick={() => act('create_culture_bottle', { index: virus.index, })} /> - )} > + )}> {virus.description} @@ -125,7 +119,7 @@ export const PandemicDiseaseDisplay = (props, context) => {
    + level={2}> @@ -151,11 +145,11 @@ export const PandemicDiseaseDisplay = (props, context) => {
    + level={2}> {symptoms.map(symptom => ( + title={symptom.name}>
    @@ -182,10 +176,8 @@ export const PandemicSymptomDisplay = (props, context) => { level, neutered, } = symptom; - const thresholds = map((desc, label) => ({ desc, label }))( symptom.threshold_desc || {}); - return (
    { buttons={!!neutered && ( + color="bad"> Neutered - )} > + )}> {desc} @@ -224,13 +216,13 @@ export const PandemicSymptomDisplay = (props, context) => { {thresholds.length > 0 && (
    + level={3}> {thresholds.map(threshold => { return ( + label={threshold.label}> {threshold.desc} ); @@ -240,14 +232,11 @@ export const PandemicSymptomDisplay = (props, context) => { )}
    ); - }; export const PandemicAntibodyDisplay = (props, context) => { const { act, data } = useBackend(context); - const resistances = data.resistances || []; - return (
    {resistances.length > 0 ? ( @@ -255,7 +244,7 @@ export const PandemicAntibodyDisplay = (props, context) => { {resistances.map(resistance => ( + label={resistance.name}>
    diff --git a/tgui/packages/tgui/interfaces/ProbingConsole.js b/tgui/packages/tgui/interfaces/ProbingConsole.js index bd266420a86..4115be4e4b0 100644 --- a/tgui/packages/tgui/interfaces/ProbingConsole.js +++ b/tgui/packages/tgui/interfaces/ProbingConsole.js @@ -1,5 +1,5 @@ import { useBackend } from '../backend'; -import { Button, Section, LabeledList, NoticeBox } from '../components'; +import { Button, LabeledList, NoticeBox, Section } from '../components'; import { Window } from '../layouts'; export const ProbingConsole = (props, context) => { @@ -12,7 +12,10 @@ export const ProbingConsole = (props, context) => { occupant_status, } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/ProximitySensor.js b/tgui/packages/tgui/interfaces/ProximitySensor.js index 8227d04802f..c8dd04c3ee5 100644 --- a/tgui/packages/tgui/interfaces/ProximitySensor.js +++ b/tgui/packages/tgui/interfaces/ProximitySensor.js @@ -12,7 +12,9 @@ export const ProximitySensor = (props, context) => { sensitivity, } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/Radio.js b/tgui/packages/tgui/interfaces/Radio.js index 68b48d02308..738826ba63b 100644 --- a/tgui/packages/tgui/interfaces/Radio.js +++ b/tgui/packages/tgui/interfaces/Radio.js @@ -25,8 +25,20 @@ export const Radio = (props, context) => { name: key, status: !!value, }))(data.channels); + // Calculate window height + let height = 106; + if (subspace) { + if (channels.length > 0) { + height += channels.length * 21 + 6; + } + else { + height += 24; + } + } return ( - +
    diff --git a/tgui/packages/tgui/interfaces/RadioactiveMicrolaser.js b/tgui/packages/tgui/interfaces/RadioactiveMicrolaser.js index 40b6794d61b..2fd20aa6587 100644 --- a/tgui/packages/tgui/interfaces/RadioactiveMicrolaser.js +++ b/tgui/packages/tgui/interfaces/RadioactiveMicrolaser.js @@ -14,7 +14,11 @@ export const RadioactiveMicrolaser = (props, context) => { cooldown, } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/RapidPipeDispenser.js b/tgui/packages/tgui/interfaces/RapidPipeDispenser.js index 54b664c57db..0380b7c4a35 100644 --- a/tgui/packages/tgui/interfaces/RapidPipeDispenser.js +++ b/tgui/packages/tgui/interfaces/RapidPipeDispenser.js @@ -72,7 +72,10 @@ export const RapidPipeDispenser = (props, context) => { .find(category => category.cat_name === categoryName) || categories[0]; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/RemoteRobotControl.js b/tgui/packages/tgui/interfaces/RemoteRobotControl.js index eb24bf22f8c..91e0fa5ddf0 100644 --- a/tgui/packages/tgui/interfaces/RemoteRobotControl.js +++ b/tgui/packages/tgui/interfaces/RemoteRobotControl.js @@ -6,7 +6,11 @@ import { Window } from '../layouts'; export const RemoteRobotControl = (props, context) => { return ( - + @@ -19,7 +23,6 @@ export const RemoteRobotControlContent = (props, context) => { const { robots = [], } = data; - if (!robots.length) { return (
    @@ -29,7 +32,6 @@ export const RemoteRobotControlContent = (props, context) => {
    ); } - return robots.map(robot => { return (
    { return ( - + diff --git a/tgui/packages/tgui/interfaces/RoboticsControlConsole.js b/tgui/packages/tgui/interfaces/RoboticsControlConsole.js index e5f4f6f73b3..746cb7ad9cb 100644 --- a/tgui/packages/tgui/interfaces/RoboticsControlConsole.js +++ b/tgui/packages/tgui/interfaces/RoboticsControlConsole.js @@ -12,7 +12,10 @@ export const RoboticsControlConsole = (props, context) => { drones = [], } = data; return ( - + { if (number === 0) { @@ -379,7 +378,10 @@ export const RouletteBetTable = (props, context) => { export const Roulette = (props, context) => { return ( - + diff --git a/tgui/packages/tgui/interfaces/SatelliteControl.js b/tgui/packages/tgui/interfaces/SatelliteControl.js index 26aadee269f..9c163cf671b 100644 --- a/tgui/packages/tgui/interfaces/SatelliteControl.js +++ b/tgui/packages/tgui/interfaces/SatelliteControl.js @@ -1,6 +1,5 @@ import { useBackend } from '../backend'; -import { Button, LabeledList, ProgressBar, Section, Box } from '../components'; -import { Fragment } from 'inferno'; +import { Box, Button, LabeledList, ProgressBar, Section } from '../components'; import { LabeledListItem } from '../components/LabeledList'; import { Window } from '../layouts'; @@ -8,7 +7,9 @@ export const SatelliteControl = (props, context) => { const { act, data } = useBackend(context); const satellites = data.satellites || []; return ( - + {data.meteor_shield && (
    @@ -16,9 +17,9 @@ export const SatelliteControl = (props, context) => { { const { act, data } = useBackend(context); return ( - + act('toggle_lock')} /> diff --git a/tgui/packages/tgui/interfaces/SeedExtractor.js b/tgui/packages/tgui/interfaces/SeedExtractor.js index 3dbdd6da06d..57f2db62a9d 100644 --- a/tgui/packages/tgui/interfaces/SeedExtractor.js +++ b/tgui/packages/tgui/interfaces/SeedExtractor.js @@ -46,11 +46,14 @@ export const SeedExtractor = (props, context) => { const { act, data } = useBackend(context); const seeds = createSeeds(data.seeds); return ( - +
    - + Name Lifespan Endurance diff --git a/tgui/packages/tgui/interfaces/ShuttleManipulator.js b/tgui/packages/tgui/interfaces/ShuttleManipulator.js index 606a0700aa2..6e0260151b2 100644 --- a/tgui/packages/tgui/interfaces/ShuttleManipulator.js +++ b/tgui/packages/tgui/interfaces/ShuttleManipulator.js @@ -7,7 +7,11 @@ import { Window } from '../layouts'; export const ShuttleManipulator = (props, context) => { const [tab, setTab] = useLocalState(context, 'tab', 1); return ( - + { @@ -11,9 +11,10 @@ export const Signaler = (props, context) => { minFrequency, maxFrequency, } = data; - return ( - +
    diff --git a/tgui/packages/tgui/interfaces/SkillPanel.js b/tgui/packages/tgui/interfaces/SkillPanel.js index 636e4f21546..361cd99680a 100644 --- a/tgui/packages/tgui/interfaces/SkillPanel.js +++ b/tgui/packages/tgui/interfaces/SkillPanel.js @@ -1,29 +1,40 @@ import { useBackend } from '../backend'; import { Box, Button, LabeledList, ProgressBar, Section } from '../components'; import { Window } from '../layouts'; + const skillgreen = { color: 'lightgreen', fontWeight: 'bold', }; + const skillyellow = { color: '#FFDB58', fontWeight: 'bold', }; + export const SkillPanel = (props, context) => { const { act, data } = useBackend(context); const skills = data.skills || []; return ( - +
    {skills.map(skill => ( - + {skill.desc}
    - +
    Total Experience: [{skill.exp} XP]
    @@ -33,7 +44,7 @@ export const SkillPanel = (props, context) => { [{skill.exp_prog} / {skill.exp_req}] ) : ( - + [MAXXED] )} @@ -68,31 +79,22 @@ export const SkillPanel = (props, context) => { ); }; -const Level = (props, context) => { - const { act, data } = useBackend(context); + +const Level = props => { const { skill_lvl_num, skill_lvl, } = props; - let textstyle="font-weight:bold; color:hsl("+skill_lvl_num*50+", 50%, 50%)"; return ( - Level: [{skill_lvl}] - ); -}; -const XPToNextLevel = (props, context) => { - const { act, data } = useBackend(context); - const { - xp_req, - xp_prog, - } = props; - if (xp_req === 0) { - return ( - - to next level: MAXXED - - ); - } - return ( - XP to next level: [{xp_prog} / {xp_req}] + + Level: [ + + {skill_lvl} + + ] + ); }; diff --git a/tgui/packages/tgui/interfaces/Sleeper.js b/tgui/packages/tgui/interfaces/Sleeper.js index 3246a8b0676..4b745d7aeaa 100644 --- a/tgui/packages/tgui/interfaces/Sleeper.js +++ b/tgui/packages/tgui/interfaces/Sleeper.js @@ -3,15 +3,32 @@ import { Box, Section, LabeledList, Button, ProgressBar } from '../components'; import { Fragment } from 'inferno'; import { Window } from '../layouts'; +const damageTypes = [ + { + label: 'Brute', + type: 'bruteLoss', + }, + { + label: 'Burn', + type: 'fireLoss', + }, + { + label: 'Toxin', + type: 'toxLoss', + }, + { + label: 'Oxygen', + type: 'oxyLoss', + }, +]; + export const Sleeper = (props, context) => { const { act, data } = useBackend(context); - const { open, occupant = {}, occupied, } = data; - const preSortChems = data.chems || []; const chems = preSortChems.sort((a, b) => { const descA = a.name.toLowerCase(); @@ -24,28 +41,10 @@ export const Sleeper = (props, context) => { } return 0; }); - - const damageTypes = [ - { - label: 'Brute', - type: 'bruteLoss', - }, - { - label: 'Burn', - type: 'fireLoss', - }, - { - label: 'Toxin', - type: 'toxLoss', - }, - { - label: 'Oxygen', - type: 'oxyLoss', - }, - ]; - return ( - +
    { key={chem.name} icon="flask" content={chem.name} - disabled={!(occupied && chem.allowed)} + disabled={!occupied || !chem.allowed} width="140px" onClick={() => act('inject', { chem: chem.id, - })} - /> + })} /> ))}
    diff --git a/tgui/packages/tgui/interfaces/SlimeBodySwapper.js b/tgui/packages/tgui/interfaces/SlimeBodySwapper.js index 51fbd8bce34..723631d7f1b 100644 --- a/tgui/packages/tgui/interfaces/SlimeBodySwapper.js +++ b/tgui/packages/tgui/interfaces/SlimeBodySwapper.js @@ -2,21 +2,20 @@ import { useBackend } from '../backend'; import { Section, LabeledList, Button, Box } from '../components'; import { Window } from '../layouts'; +const statusMap = { + Dead: "bad", + Unconscious: "average", + Conscious: "good", +}; + +const occupiedMap = { + owner: "You Are Here", + stranger: "Occupied", + available: "Swap", +}; + export const BodyEntry = (props, context) => { const { body, swapFunc } = props; - - const statusMap = { - Dead: "bad", - Unconscious: "average", - Conscious: "good", - }; - - const occupiedMap = { - owner: "You Are Here", - stranger: "Occupied", - available: "Swap", - }; - return (
    { export const SlimeBodySwapper = (props, context) => { const { act, data } = useBackend(context); - const { bodies = [], } = data; - return ( - +
    {bodies.map(body => ( diff --git a/tgui/packages/tgui/interfaces/SmartVend.js b/tgui/packages/tgui/interfaces/SmartVend.js index b835c3996ef..2a1dd924dd5 100644 --- a/tgui/packages/tgui/interfaces/SmartVend.js +++ b/tgui/packages/tgui/interfaces/SmartVend.js @@ -6,7 +6,10 @@ import { Window } from '../layouts'; export const SmartVend = (props, context) => { const { act, data } = useBackend(context); return ( - +
    { || 'bad' ); return ( - +
    { maxSetting = [], } = data; return ( - +
    { connected_tracker, } = data; return ( - +
    { const { act, data } = useBackend(context); return ( - +
    { const { act, data } = useBackend(context); const spawners = data.spawners || []; return ( - +
    {spawners.map(spawner => ( diff --git a/tgui/packages/tgui/interfaces/StationAlertConsole.js b/tgui/packages/tgui/interfaces/StationAlertConsole.js index 504467f9850..7d13c85eb7e 100644 --- a/tgui/packages/tgui/interfaces/StationAlertConsole.js +++ b/tgui/packages/tgui/interfaces/StationAlertConsole.js @@ -5,7 +5,10 @@ import { Window } from '../layouts'; export const StationAlertConsole = () => { return ( - + diff --git a/tgui/packages/tgui/interfaces/SuitStorageUnit.js b/tgui/packages/tgui/interfaces/SuitStorageUnit.js index 65c990d7633..c6f66a79d25 100644 --- a/tgui/packages/tgui/interfaces/SuitStorageUnit.js +++ b/tgui/packages/tgui/interfaces/SuitStorageUnit.js @@ -17,7 +17,9 @@ export const SuitStorageUnit = (props, context) => { storage, } = data; return ( - + {!!(occupied && safeties) && ( diff --git a/tgui/packages/tgui/interfaces/SyndContractor.js b/tgui/packages/tgui/interfaces/SyndContractor.js index f717d681e21..70ac59f09ab 100644 --- a/tgui/packages/tgui/interfaces/SyndContractor.js +++ b/tgui/packages/tgui/interfaces/SyndContractor.js @@ -64,6 +64,8 @@ export class FakeTerminal extends Component { export const SyndContractor = (props, context) => { return ( @@ -392,10 +394,7 @@ const HubTab = (props, context) => { buttons={( {limited && ( - + {item.limited} remaining )} diff --git a/tgui/packages/tgui/interfaces/TachyonArray.js b/tgui/packages/tgui/interfaces/TachyonArray.js index f05288b1390..87d45f3041e 100644 --- a/tgui/packages/tgui/interfaces/TachyonArray.js +++ b/tgui/packages/tgui/interfaces/TachyonArray.js @@ -9,7 +9,10 @@ export const TachyonArray = (props, context) => { records = [], } = data; return ( - + {!records.length ? ( diff --git a/tgui/packages/tgui/interfaces/Tank.js b/tgui/packages/tgui/interfaces/Tank.js index bee6deddea0..de43ad3f393 100644 --- a/tgui/packages/tgui/interfaces/Tank.js +++ b/tgui/packages/tgui/interfaces/Tank.js @@ -5,7 +5,9 @@ import { Window } from '../layouts'; export const Tank = (props, context) => { const { act, data } = useBackend(context); return ( - +
    diff --git a/tgui/packages/tgui/interfaces/TankDispenser.js b/tgui/packages/tgui/interfaces/TankDispenser.js index a11476df2c8..e1e2ae6ea08 100644 --- a/tgui/packages/tgui/interfaces/TankDispenser.js +++ b/tgui/packages/tgui/interfaces/TankDispenser.js @@ -5,7 +5,9 @@ import { Window } from '../layouts'; export const TankDispenser = (props, context) => { const { act, data } = useBackend(context); return ( - +
    diff --git a/tgui/packages/tgui/interfaces/Teleporter.js b/tgui/packages/tgui/interfaces/Teleporter.js index 8f61f9d8c4e..22403d24d08 100644 --- a/tgui/packages/tgui/interfaces/Teleporter.js +++ b/tgui/packages/tgui/interfaces/Teleporter.js @@ -13,7 +13,9 @@ export const Teleporter = (props, context) => { target, } = data; return ( - +
    {!power_station && ( diff --git a/tgui/packages/tgui/interfaces/ThermoMachine.js b/tgui/packages/tgui/interfaces/ThermoMachine.js index e79a112c152..69bd39aaaaf 100644 --- a/tgui/packages/tgui/interfaces/ThermoMachine.js +++ b/tgui/packages/tgui/interfaces/ThermoMachine.js @@ -6,7 +6,9 @@ import { Window } from '../layouts'; export const ThermoMachine = (props, context) => { const { act, data } = useBackend(context); return ( - +
    diff --git a/tgui/packages/tgui/interfaces/Timer.js b/tgui/packages/tgui/interfaces/Timer.js index 9ba3366a68d..872a27a3da9 100644 --- a/tgui/packages/tgui/interfaces/Timer.js +++ b/tgui/packages/tgui/interfaces/Timer.js @@ -12,7 +12,9 @@ export const Timer = (props, context) => { loop, } = data; return ( - +
    { valve, } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/TurbineComputer.js b/tgui/packages/tgui/interfaces/TurbineComputer.js index 1f851286822..c9d58c93183 100644 --- a/tgui/packages/tgui/interfaces/TurbineComputer.js +++ b/tgui/packages/tgui/interfaces/TurbineComputer.js @@ -10,7 +10,9 @@ export const TurbineComputer = (props, context) => { && data.turbine && !data.turbine_broke); return ( - +
    { shootCyborgs, } = data; return ( - +
    diff --git a/tgui/packages/tgui/interfaces/Uplink.js b/tgui/packages/tgui/interfaces/Uplink.js index f9f92dee338..1a20833485a 100644 --- a/tgui/packages/tgui/interfaces/Uplink.js +++ b/tgui/packages/tgui/interfaces/Uplink.js @@ -12,6 +12,8 @@ export const Uplink = (props, context) => { const { telecrystals } = data; return ( diff --git a/tgui/packages/tgui/interfaces/VaultController.js b/tgui/packages/tgui/interfaces/VaultController.js index f5fb00add92..510c6029547 100644 --- a/tgui/packages/tgui/interfaces/VaultController.js +++ b/tgui/packages/tgui/interfaces/VaultController.js @@ -6,7 +6,9 @@ import { Window } from '../layouts'; export const VaultController = (props, context) => { const { act, data } = useBackend(context); return ( - +
    { bad: [-Infinity, 0.30], }}> {toFixed(data.stored / 1000) + ' / ' - + toFixed(data.max / 1000) + ' kW'} + + toFixed(data.max / 1000) + ' kW'} diff --git a/tgui/packages/tgui/interfaces/Vendatray.js b/tgui/packages/tgui/interfaces/Vendatray.js index fbf2cc9a3e6..55267be2002 100644 --- a/tgui/packages/tgui/interfaces/Vendatray.js +++ b/tgui/packages/tgui/interfaces/Vendatray.js @@ -1,12 +1,10 @@ -import { useBackend } from '../backend'; import { Fragment } from 'inferno'; -import { Button, LabeledList, Section, Flex, Box } from '../components'; +import { useBackend } from '../backend'; +import { Box, Button, Flex, Section } from '../components'; import { Window } from '../layouts'; -import { InterfaceLockNoticeBox } from './common/InterfaceLockNoticeBox'; export const Vendatray = (props, context) => { const { act, data } = useBackend(context); - const locked = data.locked && !data.siliconUser; const { product_name, product_cost, @@ -15,7 +13,9 @@ export const Vendatray = (props, context) => { owner_name, } = data; return ( - + diff --git a/tgui/packages/tgui/interfaces/Vending.js b/tgui/packages/tgui/interfaces/Vending.js index 0a90e8a7370..8a9bdc0b6e1 100644 --- a/tgui/packages/tgui/interfaces/Vending.js +++ b/tgui/packages/tgui/interfaces/Vending.js @@ -10,27 +10,32 @@ const VendingRow = (props, context) => { productStock, custom, } = props; + const { + onstation, + department, + user, + } = data; const free = ( - !data.onstation + !onstation || product.price === 0 || ( !product.premium - && data.department - && data.user - && data.department === data.user.department + && department + && user + && department === user.department ) ); return ( - {product.base64 ? ( + {product.base64 && ( - ) : ( + ) || ( { + color={( + custom && 'good' + || productStock <= 0 && 'bad' + || productStock <= (product.max_amount / 2) && 'average' + || 'good' + )}> {productStock} in stock @@ -87,52 +91,67 @@ const VendingRow = (props, context) => { export const Vending = (props, context) => { const { act, data } = useBackend(context); + const { + user, + onstation, + product_records = [], + coin_records = [], + hidden_records = [], + stock, + } = data; let inventory; let custom = false; if (data.vending_machine_input) { - inventory = data.vending_machine_input; + inventory = data.vending_machine_input || []; custom = true; - } else if (data.extended_inventory) { - inventory = [ - ...data.product_records, - ...data.coin_records, - ...data.hidden_records, - ]; - } else { - inventory = [ - ...data.product_records, - ...data.coin_records, - ]; } + else { + inventory = [ + ...product_records, + ...coin_records, + ]; + if (data.extended_inventory) { + inventory = [ + ...inventory, + ...hidden_records, + ]; + } + } + // Just in case we still have undefined values in the list + inventory = inventory.filter(item => !!item); return ( - + - {!!data.onstation && ( + {!!onstation && (
    - {data.user && ( + {user && ( - Welcome, {data.user.name}, + Welcome, {user.name}, {' '} - {data.user.job || 'Unemployed'}! + {user.job || 'Unemployed'}!
    - Your balance is {data.user.cash} credits. + Your balance is {user.cash} credits.
    ) || ( - + No registered ID card!
    Please contact your local HoP!
    )}
    )} -
    +
    {inventory.map(product => ( + productStock={stock[product.name]} /> ))}
    diff --git a/tgui/packages/tgui/interfaces/Wires.js b/tgui/packages/tgui/interfaces/Wires.js index 6e9ac9b160b..4f3e16f77f4 100644 --- a/tgui/packages/tgui/interfaces/Wires.js +++ b/tgui/packages/tgui/interfaces/Wires.js @@ -8,7 +8,9 @@ export const Wires = (props, context) => { const wires = data.wires || []; const statuses = data.status || []; return ( - +
    diff --git a/tgui/packages/tgui/layouts/Layout.js b/tgui/packages/tgui/layouts/Layout.js index 4bb0742c683..a00115e5f96 100644 --- a/tgui/packages/tgui/layouts/Layout.js +++ b/tgui/packages/tgui/layouts/Layout.js @@ -5,7 +5,7 @@ */ import { classes } from 'common/react'; -import { IS_IE8 } from '../byond'; +import { computeBoxProps, computeBoxClassName } from '../components/Box'; /** * Brings Layout__content DOM element back to focus. @@ -14,7 +14,7 @@ import { IS_IE8 } from '../byond'; */ export const refocusLayout = () => { // IE8: Focus method is seemingly fucked. - if (IS_IE8) { + if (Byond.IS_LTE_IE8) { return; } const element = document.getElementById('Layout__content'); @@ -47,6 +47,7 @@ const LayoutContent = props => { className, scrollable, children, + ...rest } = props; return (
    { 'Layout__content', scrollable && 'Layout__content--scrollable', className, - ])}> + ...computeBoxClassName(rest), + ])} + {...computeBoxProps(rest)}> {children}
    ); diff --git a/tgui/packages/tgui/layouts/NtosWindow.js b/tgui/packages/tgui/layouts/NtosWindow.js index 3967ffc1ac3..5433b17f2a0 100644 --- a/tgui/packages/tgui/layouts/NtosWindow.js +++ b/tgui/packages/tgui/layouts/NtosWindow.js @@ -11,6 +11,9 @@ import { Window } from './Window'; export const NtosWindow = (props, context) => { const { + title, + width = 575, + height = 700, resizable, theme = 'ntos', children, @@ -29,6 +32,9 @@ export const NtosWindow = (props, context) => { } = data; return (
    diff --git a/tgui/packages/tgui/layouts/Window.js b/tgui/packages/tgui/layouts/Window.js index 0b49cdde3ef..c46a6371e6b 100644 --- a/tgui/packages/tgui/layouts/Window.js +++ b/tgui/packages/tgui/layouts/Window.js @@ -7,19 +7,35 @@ import { classes } from 'common/react'; import { decodeHtmlEntities, toTitleCase } from 'common/string'; import { Component, Fragment } from 'inferno'; -import { useBackend } from '../backend'; -import { IS_IE8, runCommand, winset } from '../byond'; -import { Box, Icon } from '../components'; +import { backendSuspendStart, useBackend } from '../backend'; +import { Icon } from '../components'; import { UI_DISABLED, UI_INTERACTIVE, UI_UPDATE } from '../constants'; -import { dragStartHandler, resizeStartHandler } from '../drag'; -import { releaseHeldKeys } from '../hotkeys'; +import { toggleKitchenSink, useDebug } from '../debug'; +import { dragStartHandler, recallWindowGeometry, resizeStartHandler, setWindowKey } from '../drag'; import { createLogger } from '../logging'; +import { useDispatch } from '../store'; import { Layout, refocusLayout } from './Layout'; const logger = createLogger('Window'); +const DEFAULT_SIZE = [400, 600]; + export class Window extends Component { componentDidMount() { + const { config, suspended } = useBackend(this.context); + if (suspended) { + return; + } + logger.log('mounting'); + const options = { + size: DEFAULT_SIZE, + ...config.window, + }; + if (this.props.width && this.props.height) { + options.size = [this.props.width, this.props.height]; + } + setWindowKey(config.window.key); + recallWindowGeometry(config.window.key, options); refocusLayout(); } @@ -27,14 +43,18 @@ export class Window extends Component { const { resizable, theme, + title, children, } = this.props; const { config, - debugLayout, + suspended, } = useBackend(this.context); + const { debugLayout } = useDebug(this.context); + const dispatch = useDispatch(this.context); + const fancy = config.window?.fancy; // Determine when to show dimmer - const showDimmer = config.observer + const showDimmer = config.user.observer ? config.status < UI_DISABLED : config.status < UI_INTERACTIVE; return ( @@ -43,27 +63,25 @@ export class Window extends Component { theme={theme}> { logger.log('pressed close'); - releaseHeldKeys(); - winset(config.window, 'is-visible', false); - runCommand(`uiclose ${config.ref}`); + dispatch(backendSuspendStart()); }} />
    - {children} + {!suspended && children} {showDimmer && (
    )}
    - {config.fancy && resizable && ( + {fancy && resizable && (
    @@ -79,15 +97,26 @@ export class Window extends Component { } const WindowContent = props => { - const { scrollable, children } = props; + const { + className, + fitted, + children, + ...rest + } = props; // A bit lazy to actually write styles for it, // so we simply include a Box with margins. return ( - - {children} - + className={classes([ + 'Window__content', + className, + ])} + {...rest}> + {fitted && children || ( +
    + {children} +
    + )}
    ); }; @@ -106,7 +135,7 @@ const statusToColor = status => { } }; -const TitleBar = props => { +const TitleBar = (props, context) => { const { className, title, @@ -115,6 +144,7 @@ const TitleBar = props => { onDragStart, onClose, } = props; + const dispatch = useDispatch(context); return (
    { color={statusToColor(status)} name="eye" />
    - {title === title.toLowerCase() - ? toTitleCase(title) - : title} + {typeof title === 'string' + && title === title.toLowerCase() + && toTitleCase(title) + || title}
    fancy && onDragStart(e)} /> + {process.env.NODE_ENV !== 'production' && ( +
    dispatch(toggleKitchenSink())}> + +
    + )} {!!fancy && (
    { // IE8: Use a plain character instead of a unicode symbol. // eslint-disable-next-line react/no-unknown-property onclick={onClose}> - {IS_IE8 ? 'x' : '×'} + {Byond.IS_LTE_IE8 ? 'x' : '×'}
    )}
    diff --git a/tgui/packages/tgui/logging.js b/tgui/packages/tgui/logging.js index 9364d4d9679..95921b881d9 100644 --- a/tgui/packages/tgui/logging.js +++ b/tgui/packages/tgui/logging.js @@ -5,7 +5,6 @@ */ import { sendLogEntry } from 'tgui-dev-server/link/client'; -import { callByond } from './byond'; const LEVEL_DEBUG = 0; const LEVEL_LOG = 1; @@ -33,10 +32,11 @@ const log = (level, ns, ...args) => { .filter(value => value) .join(' ') + '\nUser Agent: ' + navigator.userAgent; - callByond('', { - src: window.__ref__, - action: 'tgui:log', - log: logEntry, + Byond.topic({ + tgui: 1, + window_id: window.__windowId__, + type: 'log', + message: logEntry, }); } }; diff --git a/tgui/packages/tgui/package.json b/tgui/packages/tgui/package.json index cb3c4752a2a..70c0e0c7716 100644 --- a/tgui/packages/tgui/package.json +++ b/tgui/packages/tgui/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "tgui", - "version": "3.0.0", + "version": "3.1.0", "dependencies": { "@babel/core": "^7.6.2", "@babel/plugin-transform-jscript": "^7.2.0", @@ -12,22 +12,22 @@ "core-js": "^3.2.1", "css-loader": "^3.2.0", "cssnano": "^4.1.10", + "dompurify": "^2.0.11", "extract-css-chunks-webpack-plugin": "^4.6.0", "fg-loadcss": "^2.1.0", "file-loader": "^6.0.0", "inferno": "^7.3.2", + "marked": "^1.1.0", "optimize-css-assets-webpack-plugin": "^5.0.3", "regenerator-runtime": "^0.13.3", "sass": "^1.22.12", - "sass-loader": "^8.0.0", + "sass-loader": "^9.0.2", "style-loader": "^1.0.0", - "terser-webpack-plugin": "^2.1.0", + "terser-webpack-plugin": "^3.0.6", "url-loader": "^4.1.0", "webpack": "^4.40.2", "webpack-build-notifier": "^2.0.0", "webpack-bundle-analyzer": "^3.5.1", - "webpack-cli": "^3.3.9", - "marked": "^1.1.0", - "dompurify": "^2.0.11" + "webpack-cli": "^3.3.9" } } diff --git a/tgui/packages/tgui/public/tgui.bundle.css b/tgui/packages/tgui/public/tgui.bundle.css index 5df2de6b9ac..8ad4582aad1 100644 --- a/tgui/packages/tgui/public/tgui.bundle.css +++ b/tgui/packages/tgui/public/tgui.bundle.css @@ -1 +1 @@ -body,html{box-sizing:border-box;height:100%;margin:0;font-size:12px}html{overflow:hidden;cursor:default}body{overflow:auto;font-family:Verdana,Geneva,sans-serif}*,:after,:before{box-sizing:inherit}h1,h2,h3,h4,h5,h6{display:block;margin:0;padding:6px 0}h1{font-size:18px}h2{font-size:16px}h3{font-size:14px}h4{font-size:12px}td,th{vertical-align:baseline;text-align:left}.candystripe:nth-child(odd){background-color:rgba(0,0,0,.25)}.color-black{color:#0d0d0d!important}.color-white{color:#fff!important}.color-red{color:#d33!important}.color-orange{color:#f37827!important}.color-yellow{color:#fbd814!important}.color-olive{color:#c0d919!important}.color-green{color:#22be47!important}.color-teal{color:#00c5bd!important}.color-blue{color:#238cdc!important}.color-violet{color:#6c3fcc!important}.color-purple{color:#a93bcd!important}.color-pink{color:#e2439c!important}.color-brown{color:#af6d43!important}.color-grey{color:#7d7d7d!important}.color-good{color:#62b62a!important}.color-average{color:#f1951d!important}.color-bad{color:#d33!important}.color-label{color:#8496ab!important}.color-bg-black{background-color:#000!important}.color-bg-white{background-color:#d9d9d9!important}.color-bg-red{background-color:#bd2020!important}.color-bg-orange{background-color:#d95e0c!important}.color-bg-yellow{background-color:#d9b804!important}.color-bg-olive{background-color:#9aad14!important}.color-bg-green{background-color:#1b9638!important}.color-bg-teal{background-color:#009a93!important}.color-bg-blue{background-color:#1c71b1!important}.color-bg-violet{background-color:#552dab!important}.color-bg-purple{background-color:#8b2baa!important}.color-bg-pink{background-color:#cf2082!important}.color-bg-brown{background-color:#8c5836!important}.color-bg-grey{background-color:#646464!important}.color-bg-good{background-color:#4d9121!important}.color-bg-average{background-color:#cd7a0d!important}.color-bg-bad{background-color:#bd2020!important}.color-bg-label{background-color:#657a94!important}.debug-layout,.debug-layout :not(g):not(path){color:hsla(0,0%,100%,.9)!important;background:transparent!important;outline:1px solid hsla(0,0%,100%,.5)!important;box-shadow:none!important;filter:none!important}.debug-layout:hover,.debug-layout :not(g):not(path):hover{outline-color:hsla(0,0%,100%,.8)!important}.display-none{display:none}.display-block{display:block}.display-inline{display:inline}.display-inline-block{display:inline-block}.m-0{margin:0}.mx-0{margin-left:0;margin-right:0}.my-0{margin-top:0;margin-bottom:0}.ml-0{margin-left:0}.mt-0{margin-top:0}.mr-0{margin-right:0}.mb-0{margin-bottom:0}.m-1{margin:6px}.mx-1{margin-left:6px;margin-right:6px}.my-1{margin-top:6px;margin-bottom:6px}.ml-1{margin-left:6px}.mt-1{margin-top:6px}.mr-1{margin-right:6px}.mb-1{margin-bottom:6px}.m-2{margin:12px}.mx-2{margin-left:12px;margin-right:12px}.my-2{margin-top:12px;margin-bottom:12px}.ml-2{margin-left:12px}.mt-2{margin-top:12px}.mr-2{margin-right:12px}.mb-2{margin-bottom:12px}.outline-dotted{outline-style:dotted!important;outline-width:2px!important}.outline-dashed{outline-style:dashed!important;outline-width:2px!important}.outline-solid{outline-style:solid!important;outline-width:2px!important}.outline-double{outline-style:double!important;outline-width:2px!important}.outline-groove{outline-style:groove!important;outline-width:2px!important}.outline-ridge{outline-style:ridge!important;outline-width:2px!important}.outline-inset{outline-style:inset!important;outline-width:2px!important}.outline-outset{outline-style:outset!important;outline-width:2px!important}.outline-color-black{outline-color:#0d0d0d!important}.outline-color-white{outline-color:#fff!important}.outline-color-red{outline-color:#d33!important}.outline-color-orange{outline-color:#f37827!important}.outline-color-yellow{outline-color:#fbd814!important}.outline-color-olive{outline-color:#c0d919!important}.outline-color-green{outline-color:#22be47!important}.outline-color-teal{outline-color:#00c5bd!important}.outline-color-blue{outline-color:#238cdc!important}.outline-color-violet{outline-color:#6c3fcc!important}.outline-color-purple{outline-color:#a93bcd!important}.outline-color-pink{outline-color:#e2439c!important}.outline-color-brown{outline-color:#af6d43!important}.outline-color-grey{outline-color:#7d7d7d!important}.outline-color-good{outline-color:#62b62a!important}.outline-color-average{outline-color:#f1951d!important}.outline-color-bad{outline-color:#d33!important}.outline-color-label{outline-color:#8496ab!important}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.position-sticky{position:sticky}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-baseline{text-align:baseline}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-pre{white-space:pre}.text-bold{font-weight:700}.text-italic{font-style:italic}.text-underline{text-decoration:underline}.BlockQuote{color:#8496ab;border-left:2px solid #8496ab;padding-left:6px;margin-bottom:6px}.BlockQuote:last-child{margin-bottom:0}.Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.Button:last-child{margin-right:0}.Button .fa,.Button .far,.Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.Button--hasContent .fa,.Button--hasContent .far,.Button--hasContent .fas{margin-right:3px}.Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.Button--fluid{display:block;margin-left:0;margin-right:0}.Button--color--black{transition:color 50ms,background-color 50ms;background-color:#000;color:#fff}.Button--color--black:hover{transition:color 0ms,background-color 0ms}.Button--color--black:focus{transition:color .1s,background-color .1s}.Button--color--black:focus,.Button--color--black:hover{background-color:#0a0a0a;color:#fff}.Button--color--white{transition:color 50ms,background-color 50ms;background-color:#d9d9d9;color:#000}.Button--color--white:hover{transition:color 0ms,background-color 0ms}.Button--color--white:focus{transition:color .1s,background-color .1s}.Button--color--white:focus,.Button--color--white:hover{background-color:#f3f3f3;color:#000}.Button--color--red{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--red:hover{transition:color 0ms,background-color 0ms}.Button--color--red:focus{transition:color .1s,background-color .1s}.Button--color--red:focus,.Button--color--red:hover{background-color:#d52b2b;color:#fff}.Button--color--orange{transition:color 50ms,background-color 50ms;background-color:#d95e0c;color:#fff}.Button--color--orange:hover{transition:color 0ms,background-color 0ms}.Button--color--orange:focus{transition:color .1s,background-color .1s}.Button--color--orange:focus,.Button--color--orange:hover{background-color:#ed6f1d;color:#fff}.Button--color--yellow{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.Button--color--yellow:hover{transition:color 0ms,background-color 0ms}.Button--color--yellow:focus{transition:color .1s,background-color .1s}.Button--color--yellow:focus,.Button--color--yellow:hover{background-color:#f3d00e;color:#000}.Button--color--olive{transition:color 50ms,background-color 50ms;background-color:#9aad14;color:#fff}.Button--color--olive:hover{transition:color 0ms,background-color 0ms}.Button--color--olive:focus{transition:color .1s,background-color .1s}.Button--color--olive:focus,.Button--color--olive:hover{background-color:#afc41f;color:#fff}.Button--color--green{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.Button--color--green:hover{transition:color 0ms,background-color 0ms}.Button--color--green:focus{transition:color .1s,background-color .1s}.Button--color--green:focus,.Button--color--green:hover{background-color:#27ab46;color:#fff}.Button--color--teal{transition:color 50ms,background-color 50ms;background-color:#009a93;color:#fff}.Button--color--teal:hover{transition:color 0ms,background-color 0ms}.Button--color--teal:focus{transition:color .1s,background-color .1s}.Button--color--teal:focus,.Button--color--teal:hover{background-color:#0aafa8;color:#fff}.Button--color--blue{transition:color 50ms,background-color 50ms;background-color:#1c71b1;color:#fff}.Button--color--blue:hover{transition:color 0ms,background-color 0ms}.Button--color--blue:focus{transition:color .1s,background-color .1s}.Button--color--blue:focus,.Button--color--blue:hover{background-color:#2883c8;color:#fff}.Button--color--violet{transition:color 50ms,background-color 50ms;background-color:#552dab;color:#fff}.Button--color--violet:hover{transition:color 0ms,background-color 0ms}.Button--color--violet:focus{transition:color .1s,background-color .1s}.Button--color--violet:focus,.Button--color--violet:hover{background-color:#653ac1;color:#fff}.Button--color--purple{transition:color 50ms,background-color 50ms;background-color:#8b2baa;color:#fff}.Button--color--purple:hover{transition:color 0ms,background-color 0ms}.Button--color--purple:focus{transition:color .1s,background-color .1s}.Button--color--purple:focus,.Button--color--purple:hover{background-color:#9e38c1;color:#fff}.Button--color--pink{transition:color 50ms,background-color 50ms;background-color:#cf2082;color:#fff}.Button--color--pink:hover{transition:color 0ms,background-color 0ms}.Button--color--pink:focus{transition:color .1s,background-color .1s}.Button--color--pink:focus,.Button--color--pink:hover{background-color:#dd3794;color:#fff}.Button--color--brown{transition:color 50ms,background-color 50ms;background-color:#8c5836;color:#fff}.Button--color--brown:hover{transition:color 0ms,background-color 0ms}.Button--color--brown:focus{transition:color .1s,background-color .1s}.Button--color--brown:focus,.Button--color--brown:hover{background-color:#a06844;color:#fff}.Button--color--grey{transition:color 50ms,background-color 50ms;background-color:#646464;color:#fff}.Button--color--grey:hover{transition:color 0ms,background-color 0ms}.Button--color--grey:focus{transition:color .1s,background-color .1s}.Button--color--grey:focus,.Button--color--grey:hover{background-color:#757575;color:#fff}.Button--color--good{transition:color 50ms,background-color 50ms;background-color:#4d9121;color:#fff}.Button--color--good:hover{transition:color 0ms,background-color 0ms}.Button--color--good:focus{transition:color .1s,background-color .1s}.Button--color--good:focus,.Button--color--good:hover{background-color:#5da52d;color:#fff}.Button--color--average{transition:color 50ms,background-color 50ms;background-color:#cd7a0d;color:#fff}.Button--color--average:hover{transition:color 0ms,background-color 0ms}.Button--color--average:focus{transition:color .1s,background-color .1s}.Button--color--average:focus,.Button--color--average:hover{background-color:#e68d18;color:#fff}.Button--color--bad{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--bad:hover{transition:color 0ms,background-color 0ms}.Button--color--bad:focus{transition:color .1s,background-color .1s}.Button--color--bad:focus,.Button--color--bad:hover{background-color:#d52b2b;color:#fff}.Button--color--label{transition:color 50ms,background-color 50ms;background-color:#657a94;color:#fff}.Button--color--label:hover{transition:color 0ms,background-color 0ms}.Button--color--label:focus{transition:color .1s,background-color .1s}.Button--color--label:focus,.Button--color--label:hover{background-color:#7b8da4;color:#fff}.Button--color--default{transition:color 50ms,background-color 50ms;background-color:#3e6189;color:#fff}.Button--color--default:hover{transition:color 0ms,background-color 0ms}.Button--color--default:focus{transition:color .1s,background-color .1s}.Button--color--default:focus,.Button--color--default:hover{background-color:#4c729d;color:#fff}.Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.Button--color--caution:hover{transition:color 0ms,background-color 0ms}.Button--color--caution:focus{transition:color .1s,background-color .1s}.Button--color--caution:focus,.Button--color--caution:hover{background-color:#f3d00e;color:#000}.Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--danger:hover{transition:color 0ms,background-color 0ms}.Button--color--danger:focus{transition:color .1s,background-color .1s}.Button--color--danger:focus,.Button--color--danger:hover{background-color:#d52b2b;color:#fff}.Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#252525;color:#fff;background-color:rgba(37,37,37,0);color:hsla(0,0%,100%,.5)}.Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.Button--color--transparent:focus{transition:color .1s,background-color .1s}.Button--color--transparent:focus,.Button--color--transparent:hover{background-color:#323232;color:#fff}.Button--disabled{background-color:#999!important}.Button--selected{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.Button--selected:hover{transition:color 0ms,background-color 0ms}.Button--selected:focus{transition:color .1s,background-color .1s}.Button--selected:focus,.Button--selected:hover{background-color:#27ab46;color:#fff}.ColorBox{display:inline-block;width:12px;height:12px;line-height:12px;text-align:center}.Dimmer{display:flex;justify-content:center;align-items:center;position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.75);z-index:1}.Divider--horizontal{margin:6px 0}.Divider--horizontal:not(.Divider--hidden){border-top:2px solid hsla(0,0%,100%,.1)}.Divider--vertical{height:100%;margin:0 6px}.Divider--vertical:not(.Divider--hidden){border-left:2px solid hsla(0,0%,100%,.1)}.Dropdown{position:relative}.Dropdown__control{position:relative;display:inline-block;font-family:Verdana,sans-serif;font-size:12px;width:100px;line-height:17px;user-select:none}.Dropdown__arrow-button{float:right;padding-left:6px;border-left:1px solid #000;border-left:1px solid rgba(0,0,0,.25)}.Dropdown__menu{overflow-y:auto;overflow-y:scroll}.Dropdown__menu,.Dropdown__menu-noscroll{position:absolute;z-index:5;width:100px;max-height:200px;border-radius:0 0 2px 2px;background-color:#000;background-color:rgba(0,0,0,.75)}.Dropdown__menu-noscroll{overflow-y:auto}.Dropdown__menuentry{padding:2px 4px;font-family:Verdana,sans-serif;font-size:12px;line-height:17px;transition:background-color .1s}.Dropdown__menuentry:hover{background-color:#444;transition:background-color 0ms}.Dropdown__over{top:auto;bottom:100%}.FatalError{display:block!important;position:absolute;top:0;left:0;right:0;bottom:0;padding:12px;font-size:12px;font-family:Consolas,monospace;color:#fff;background-color:#00d;z-index:1000;overflow:hidden;text-align:center}.FatalError__logo{display:inline-block;text-align:left;font-size:10px;line-height:8px;position:relative;margin-top:12px;top:0;left:0;animation:FatalError__rainbow 2s linear infinite alternate,FatalError__shadow 4s linear infinite alternate,FatalError__tfmX 3s infinite alternate,FatalError__tfmY 4s infinite alternate;white-space:pre-wrap;word-break:break-all}.FatalError__header{margin-top:12px}.FatalError__stack{text-align:left;white-space:pre-wrap;word-break:break-all;margin-top:24px;margin-bottom:24px}.FatalError__footer{margin-bottom:24px}@keyframes FatalError__rainbow{0%{color:#ff0}50%{color:#0ff}to{color:#f0f}}@keyframes FatalError__shadow{0%{left:-2px;text-shadow:4px 0 #f0f}50%{left:0;text-shadow:0 0 #0ff}to{left:2px;text-shadow:-4px 0 #ff0}}@keyframes FatalError__tfmX{0%{left:15px}to{left:-15px}}@keyframes FatalError__tfmY{to{top:-15px}}.Flex{display:-ms-flexbox;display:flex}.Flex--inline{display:inline-flex}.Flex--ie8{display:table!important}.Flex--ie8--column{display:block!important}.Flex--ie8--column>.Flex__item{display:block!important;margin-left:6px;margin-right:6px}.Flex__item--ie8{display:table-cell!important}.Flex--spacing--1{margin:0 -3px}.Flex--spacing--1>.Flex__item{margin:0 3px}.Flex--spacing--2{margin:0 -6px}.Flex--spacing--2>.Flex__item{margin:0 6px}.Knob{position:relative;font-size:1rem;width:2.6em;height:2.6em;margin:0 auto -.2em;cursor:n-resize}.Knob:after{content:".";color:transparent;line-height:2.5em}.Knob__circle{position:absolute;top:.1em;bottom:.1em;left:.1em;right:.1em;margin:.3em;background-color:#333;background-image:linear-gradient(180deg,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,0));border-radius:50%;box-shadow:0 .05em .5em 0 rgba(0,0,0,.5)}.Knob__cursorBox{position:absolute;top:0;bottom:0;left:0;right:0}.Knob__cursor{position:relative;top:.05em;margin:0 auto;width:.2em;height:.8em;background-color:hsla(0,0%,100%,.9)}.Knob__popupValue{position:absolute;top:-2rem;right:50%;font-size:1rem;text-align:center;padding:.25rem .5rem;background-color:#000;transform:translateX(50%);white-space:nowrap}.Knob__ring{position:absolute;top:0;bottom:0;left:0;right:0;padding:.1em}.Knob__ringTrackPivot{transform:rotate(135deg)}.Knob__ringTrack{fill:transparent;stroke:hsla(0,0%,100%,.1);stroke-width:8;stroke-linecap:round;stroke-dasharray:235.62}.Knob__ringFillPivot{transform:rotate(135deg)}.Knob--bipolar .Knob__ringFillPivot{transform:rotate(270deg)}.Knob__ringFill{fill:transparent;stroke:#6a96c9;stroke-width:8;stroke-linecap:round;stroke-dasharray:314.16;transition:stroke 50ms}.Knob--color--black .Knob__ringFill{stroke:#0d0d0d}.Knob--color--white .Knob__ringFill{stroke:#fff}.Knob--color--red .Knob__ringFill{stroke:#d33}.Knob--color--orange .Knob__ringFill{stroke:#f37827}.Knob--color--yellow .Knob__ringFill{stroke:#fbd814}.Knob--color--olive .Knob__ringFill{stroke:#c0d919}.Knob--color--green .Knob__ringFill{stroke:#22be47}.Knob--color--teal .Knob__ringFill{stroke:#00c5bd}.Knob--color--blue .Knob__ringFill{stroke:#238cdc}.Knob--color--violet .Knob__ringFill{stroke:#6c3fcc}.Knob--color--purple .Knob__ringFill{stroke:#a93bcd}.Knob--color--pink .Knob__ringFill{stroke:#e2439c}.Knob--color--brown .Knob__ringFill{stroke:#af6d43}.Knob--color--grey .Knob__ringFill{stroke:#7d7d7d}.Knob--color--good .Knob__ringFill{stroke:#62b62a}.Knob--color--average .Knob__ringFill{stroke:#f1951d}.Knob--color--bad .Knob__ringFill{stroke:#d33}.Knob--color--label .Knob__ringFill{stroke:#8496ab}.LabeledList{display:table;width:100%;width:calc(100% + 12px);border-collapse:collapse;border-spacing:0;margin:-3px -6px 0;padding:0}.LabeledList__row{display:table-row}.LabeledList__row:last-child .LabeledList__cell{padding-bottom:0}.LabeledList__cell{display:table-cell;margin:0;padding:3px 6px;border:0;text-align:left;vertical-align:baseline}.LabeledList__label{width:1%;white-space:nowrap;min-width:60px}.LabeledList__buttons{width:.1%;white-space:nowrap;text-align:right;padding-top:1px;padding-bottom:0}.Modal{background-color:#252525;max-width:calc(100% - 1rem);padding:1rem}.NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#000;background-color:#bb9b68;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.NoticeBox--color--black{color:#fff;background-color:#000}.NoticeBox--color--white{color:#000;background-color:#b3b3b3}.NoticeBox--color--red{color:#fff;background-color:#701f1f}.NoticeBox--color--orange{color:#fff;background-color:#854114}.NoticeBox--color--yellow{color:#000;background-color:#83710d}.NoticeBox--color--olive{color:#000;background-color:#576015}.NoticeBox--color--green{color:#fff;background-color:#174e24}.NoticeBox--color--teal{color:#fff;background-color:#064845}.NoticeBox--color--blue{color:#fff;background-color:#1b4565}.NoticeBox--color--violet{color:#fff;background-color:#3b2864}.NoticeBox--color--purple{color:#fff;background-color:#542663}.NoticeBox--color--pink{color:#fff;background-color:#802257}.NoticeBox--color--brown{color:#fff;background-color:#4c3729}.NoticeBox--color--grey{color:#fff;background-color:#3e3e3e}.NoticeBox--color--good{color:#fff;background-color:#2e4b1a}.NoticeBox--color--average{color:#fff;background-color:#7b4e13}.NoticeBox--color--bad{color:#fff;background-color:#701f1f}.NoticeBox--color--label{color:#fff;background-color:#53565a}.NoticeBox--type--info{color:#fff;background-color:#235982}.NoticeBox--type--success{color:#fff;background-color:#1e662f}.NoticeBox--type--warning{color:#fff;background-color:#a95219}.NoticeBox--type--danger{color:#fff;background-color:#8f2828}.Input{position:relative;display:inline-block;width:120px;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.Input--fluid{display:block;width:auto}.Input__baseline{display:inline-block;color:transparent}.Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.NumberInput{position:relative;display:inline-block;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:2px;color:#88bfff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.NumberInput--fluid{display:block}.NumberInput__content{margin-left:6px}.NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #88bfff;background-color:#88bfff}.NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:transparent;transition:border-color .5s}.ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.ProgressBar__fill--animated{transition:background-color .5s,width .5s}.ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.ProgressBar--color--default{border:1px solid #3e6189}.ProgressBar--color--default .ProgressBar__fill{background-color:#3e6189}.ProgressBar--color--black{border:1px solid #000!important}.ProgressBar--color--black .ProgressBar__fill{background-color:#000}.ProgressBar--color--white{border:1px solid #d9d9d9!important}.ProgressBar--color--white .ProgressBar__fill{background-color:#d9d9d9}.ProgressBar--color--red{border:1px solid #bd2020!important}.ProgressBar--color--red .ProgressBar__fill{background-color:#bd2020}.ProgressBar--color--orange{border:1px solid #d95e0c!important}.ProgressBar--color--orange .ProgressBar__fill{background-color:#d95e0c}.ProgressBar--color--yellow{border:1px solid #d9b804!important}.ProgressBar--color--yellow .ProgressBar__fill{background-color:#d9b804}.ProgressBar--color--olive{border:1px solid #9aad14!important}.ProgressBar--color--olive .ProgressBar__fill{background-color:#9aad14}.ProgressBar--color--green{border:1px solid #1b9638!important}.ProgressBar--color--green .ProgressBar__fill{background-color:#1b9638}.ProgressBar--color--teal{border:1px solid #009a93!important}.ProgressBar--color--teal .ProgressBar__fill{background-color:#009a93}.ProgressBar--color--blue{border:1px solid #1c71b1!important}.ProgressBar--color--blue .ProgressBar__fill{background-color:#1c71b1}.ProgressBar--color--violet{border:1px solid #552dab!important}.ProgressBar--color--violet .ProgressBar__fill{background-color:#552dab}.ProgressBar--color--purple{border:1px solid #8b2baa!important}.ProgressBar--color--purple .ProgressBar__fill{background-color:#8b2baa}.ProgressBar--color--pink{border:1px solid #cf2082!important}.ProgressBar--color--pink .ProgressBar__fill{background-color:#cf2082}.ProgressBar--color--brown{border:1px solid #8c5836!important}.ProgressBar--color--brown .ProgressBar__fill{background-color:#8c5836}.ProgressBar--color--grey{border:1px solid #646464!important}.ProgressBar--color--grey .ProgressBar__fill{background-color:#646464}.ProgressBar--color--good{border:1px solid #4d9121!important}.ProgressBar--color--good .ProgressBar__fill{background-color:#4d9121}.ProgressBar--color--average{border:1px solid #cd7a0d!important}.ProgressBar--color--average .ProgressBar__fill{background-color:#cd7a0d}.ProgressBar--color--bad{border:1px solid #bd2020!important}.ProgressBar--color--bad .ProgressBar__fill{background-color:#bd2020}.ProgressBar--color--label{border:1px solid #657a94!important}.ProgressBar--color--label .ProgressBar__fill{background-color:#657a94}.Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.Section:last-child{margin-bottom:0}.Section__title{position:relative;padding:6px;border-bottom:2px solid #4972a1}.Section__titleText{font-size:14px;font-weight:700}.Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.Section__content{padding:8px 6px}.Section--level--1 .Section__titleText{font-size:14px}.Section--level--2 .Section__titleText{font-size:13px}.Section--level--3 .Section__titleText{font-size:12px}.Section--level--2,.Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.Slider{cursor:e-resize}.Slider__cursorOffset{position:absolute;top:0;left:0;bottom:0;transition:none!important}.Slider__cursor{position:absolute;top:0;right:-1px;bottom:0;width:0;border-left:2px solid #fff}.Slider__pointer{position:absolute;right:-5px;bottom:-4px;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #fff}.Slider__popupValue{position:absolute;right:0;top:-22px;padding:2px 4px;background-color:#000;transform:translateX(50%);white-space:nowrap}.Table{display:table;width:100%;border-collapse:collapse;border-spacing:0;margin:0}.Table--collapsing{width:auto}.Table__row{display:table-row}.Table__cell{display:table-cell;padding:0 3px}.Table__cell:first-child{padding-left:0}.Table__cell:last-child{padding-right:0}.Table__cell--header,.Table__row--header .Table__cell{font-weight:700;padding-bottom:6px}.Table__cell--collapsing{width:1%;white-space:nowrap}.Tabs--horizontal{border-bottom:2px solid hsla(0,0%,100%,.1);margin-bottom:6px}.Tabs--horizontal .Tabs__tab--altSelection:after{content:"";position:absolute;bottom:0;right:0;left:0;height:2px;width:100%;background-color:#fff;border-radius:2px}.Tabs--vertical{margin-right:9px}.Tabs--vertical .Tabs__tabBox{border-right:2px solid hsla(0,0%,100%,.1);vertical-align:top}.Tabs--vertical .Tabs__tab{display:block!important;margin-right:0!important;margin-bottom:0;padding:1px 9px 0 6px;border-bottom:2px solid hsla(0,0%,100%,.1)}.Tabs--vertical .Tabs__tab:last-child{border-bottom:0}.Tabs--vertical .Tabs__tab--altSelection:after{content:"";position:absolute;top:0;bottom:0;right:0;height:100%;width:3px;background-color:#fff;border-radius:2px}.TextArea{overflow:hidden;position:relative;display:inline-block;height:"100%";border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:2px;background-color:#bb9b68;margin-right:2px;line-height:17px;overflow:visible;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%}.TextArea .TextArea_filler{word-wrap:break-word;box-sizing:border-box;width:100%;padding:2px 2px 1.5em;visibility:hidden}.TextArea .TextArea--fluid{display:block;width:auto;height:auto}.TextArea .TextArea__baseline{display:inline-block;color:transparent}.TextArea .TextArea__textarea{display:block;top:0;bottom:0;left:0;right:0;border:0;outline:0;font-size:12px;line-height:17px;height:17px;margin:0;font-family:inherit;background-color:transparent;color:inherit;word-wrap:break-word;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:2px;width:100%;overflow:hidden;position:absolute;height:100%}.TextArea .TextArea__textarea:-ms-input-placeholder{font-style:italic;color:#777}.Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400}.Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;background-color:#000;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.Tooltip--long:after{width:250px;white-space:normal}.Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.Tooltip--bottom:after,.Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.Tooltip--bottom:after{top:100%;left:50%}.Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.Tooltip--left:hover:after,.Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.Tooltip--right:after{top:50%;left:100%}.Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.CameraConsole__left{position:absolute;top:0;bottom:0;left:0;width:220px}.CameraConsole__right{position:absolute;top:0;bottom:0;left:220px;right:0;background-color:rgba(0,0,0,.33)}.CameraConsole__toolbar{left:0;margin:3px 12px 0}.CameraConsole__toolbar,.CameraConsole__toolbarRight{position:absolute;top:0;right:0;height:24px;line-height:24px}.CameraConsole__toolbarRight{margin:4px 6px 0}.CameraConsole__map{position:absolute;top:26px;bottom:0;left:0;right:0;margin:6px;text-align:center}.CameraConsole__map .NoticeBox{margin-top:calc(50% - 24px)}.NuclearBomb__displayBox{background-color:#002003;border:4px inset #e8e4c9;color:#03e017;font-size:24px;font-family:monospace;padding:6px}.NuclearBomb__Button--keypad{background-color:#e8e4c9;border-color:#e8e4c9}.NuclearBomb__Button--keypad:hover{background-color:#f7f6ee!important;border-color:#f7f6ee!important}.NuclearBomb__Button--1{background-color:#d3cfb7!important;border-color:#d3cfb7!important;color:#a9a692!important}.NuclearBomb__Button--E{background-color:#d9b804!important;border-color:#d9b804!important}.NuclearBomb__Button--E:hover{background-color:#f3d00e!important;border-color:#f3d00e!important}.NuclearBomb__Button--C{background-color:#bd2020!important;border-color:#bd2020!important}.NuclearBomb__Button--C:hover{background-color:#d52b2b!important;border-color:#d52b2b!important}.NuclearBomb__NTIcon{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDQyNSAyMDAiIG9wYWNpdHk9Ii4zMyI+PHBhdGggZD0iTTE3OC4wMDQuMDM5SDEwNi44YTYuNzYxIDYuMDI2IDAgMDAtNi43NjEgNi4wMjV2MTg3Ljg3MmE2Ljc2MSA2LjAyNiAwIDAwNi43NjEgNi4wMjVoNTMuMTA3YTYuNzYxIDYuMDI2IDAgMDA2Ljc2Mi02LjAyNVY5Mi4zOTJsNzIuMjE2IDEwNC43YTYuNzYxIDYuMDI2IDAgMDA1Ljc2IDIuODdIMzE4LjJhNi43NjEgNi4wMjYgMCAwMDYuNzYxLTYuMDI2VjYuMDY0QTYuNzYxIDYuMDI2IDAgMDAzMTguMi4wNGgtNTQuNzE3YTYuNzYxIDYuMDI2IDAgMDAtNi43NiA2LjAyNXYxMDIuNjJMMTgzLjc2MyAyLjkwOWE2Ljc2MSA2LjAyNiAwIDAwLTUuNzYtMi44N3pNNC44NDUgMjIuMTA5QTEzLjQxMiAxMi41MDIgMCAwMTEzLjQ3OC4wMzloNjYuMTE4QTUuMzY1IDUgMCAwMTg0Ljk2IDUuMDR2NzkuODh6TTQyMC4xNTUgMTc3Ljg5MWExMy40MTIgMTIuNTAyIDAgMDEtOC42MzMgMjIuMDdoLTY2LjExOGE1LjM2NSA1IDAgMDEtNS4zNjUtNS4wMDF2LTc5Ljg4eiIvPjwvc3ZnPg==);background-size:70%;background-position:50%;background-repeat:no-repeat}.Roulette{font-family:Palatino}.Roulette__board{display:table;width:100%;border-collapse:collapse;border:2px solid #fff;margin:0}.Roulette__board-row{padding:0;margin:0}.Roulette__board-cell{display:table-cell;padding:0;margin:0;border:2px solid #fff;font-family:Palatino}.Roulette__board-cell:first-child{padding-left:0}.Roulette__board-cell:last-child{padding-right:0}.Roulette__board-extrabutton{text-align:center;font-size:20px;font-weight:700;height:28px;border:none!important;margin:0!important;padding-top:4px!important;color:#fff!important}.Roulette__lowertable{margin-top:8px;margin-left:80px;margin-right:80px;border-collapse:collapse;border:2px solid #fff;border-spacing:0}.Roulette__lowertable--cell{border:2px solid #fff;padding:0;margin:0}.Roulette__lowertable--betscell{vertical-align:top}.Roulette__lowertable--spinresult{text-align:center;font-size:100px;font-weight:700;vertical-align:middle}.Roulette__lowertable--spinresult-black{background-color:#000}.Roulette__lowertable--spinresult-red{background-color:#db2828}.Roulette__lowertable--spinresult-green{background-color:#20b142}.Roulette__lowertable--spinbutton{margin:0!important;border:none!important;font-size:50px;line-height:60px!important;text-align:center;font-weight:700}.Roulette__lowertable--header{width:1%;text-align:center;font-size:20px;font-weight:700}.Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden;margin-bottom:-6px;scrollbar-base-color:#1c1c1c;scrollbar-face-color:#3b3b3b;scrollbar-3dlight-color:#252525;scrollbar-highlight-color:#252525;scrollbar-track-color:#1c1c1c;scrollbar-arrow-color:#929292;scrollbar-shadow-color:#3b3b3b}.Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.NtosHeader__left{position:absolute;left:12px}.NtosHeader__right{position:absolute;right:12px}.NtosHeader__icon{margin-top:-9px;margin-bottom:-6px;vertical-align:middle}.NtosWindow__header{position:absolute;top:0;left:0;right:0;height:28px;line-height:27px;background-color:rgba(0,0,0,.5);font-family:Consolas,monospace;font-size:14px;user-select:none;-ms-user-select:none}.NtosWindow__content .Layout__content{margin-top:28px;font-family:Consolas,monospace;font-size:14px}.TitleBar{background-color:#363636;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#363636;transition:color .25s,background-color .25s}.TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.TitleBar__minimize{position:absolute;top:6px;right:46px}.TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.Window{bottom:0;right:0;color:#fff;background-color:#252525;background-image:linear-gradient(180deg,#2a2a2a 0,#202020)}.Window,.Window__titleBar{position:fixed;top:0;left:0}.Window__titleBar{z-index:1;width:100%;height:32px}.Window__rest{top:32px}.Window__dimmer,.Window__rest{position:fixed;bottom:0;left:0;right:0}.Window__dimmer{top:0;background-color:rgba(62,62,62,.25);pointer-events:none}.Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#131313;color:hsla(0,0%,100%,.8)}.Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.Layout__content{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDQyNSAyMDAiIG9wYWNpdHk9Ii4zMyI+PHBhdGggZD0iTTE3OC4wMDQuMDM5SDEwNi44YTYuNzYxIDYuMDI2IDAgMDAtNi43NjEgNi4wMjV2MTg3Ljg3MmE2Ljc2MSA2LjAyNiAwIDAwNi43NjEgNi4wMjVoNTMuMTA3YTYuNzYxIDYuMDI2IDAgMDA2Ljc2Mi02LjAyNVY5Mi4zOTJsNzIuMjE2IDEwNC43YTYuNzYxIDYuMDI2IDAgMDA1Ljc2IDIuODdIMzE4LjJhNi43NjEgNi4wMjYgMCAwMDYuNzYxLTYuMDI2VjYuMDY0QTYuNzYxIDYuMDI2IDAgMDAzMTguMi4wNGgtNTQuNzE3YTYuNzYxIDYuMDI2IDAgMDAtNi43NiA2LjAyNXYxMDIuNjJMMTgzLjc2MyAyLjkwOWE2Ljc2MSA2LjAyNiAwIDAwLTUuNzYtMi44N3pNNC44NDUgMjIuMTA5QTEzLjQxMiAxMi41MDIgMCAwMTEzLjQ3OC4wMzloNjYuMTE4QTUuMzY1IDUgMCAwMTg0Ljk2IDUuMDR2NzkuODh6TTQyMC4xNTUgMTc3Ljg5MWExMy40MTIgMTIuNTAyIDAgMDEtOC42MzMgMjIuMDdoLTY2LjExOGE1LjM2NSA1IDAgMDEtNS4zNjUtNS4wMDF2LTc5Ljg4eiIvPjwvc3ZnPg==);background-size:70%;background-position:50%;background-repeat:no-repeat}.theme-abductor .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-abductor .Button:last-child{margin-right:0}.theme-abductor .Button .fa,.theme-abductor .Button .far,.theme-abductor .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-abductor .Button--hasContent .fa,.theme-abductor .Button--hasContent .far,.theme-abductor .Button--hasContent .fas{margin-right:3px}.theme-abductor .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-abductor .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-abductor .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#ad2350;color:#fff}.theme-abductor .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--default:focus,.theme-abductor .Button--color--default:hover{background-color:#c42f60;color:#fff}.theme-abductor .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-abductor .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--caution:focus,.theme-abductor .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-abductor .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-abductor .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--danger:focus,.theme-abductor .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-abductor .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#2a314a;color:#fff;background-color:rgba(42,49,74,0);color:hsla(0,0%,100%,.5)}.theme-abductor .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--transparent:focus,.theme-abductor .Button--color--transparent:hover{background-color:#373e59;color:#fff}.theme-abductor .Button--disabled{background-color:#363636!important}.theme-abductor .Button--selected{transition:color 50ms,background-color 50ms;background-color:#465899;color:#fff}.theme-abductor .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--selected:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--selected:focus,.theme-abductor .Button--selected:hover{background-color:#5569ad;color:#fff}.theme-abductor .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#a82d55;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-abductor .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-abductor .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-abductor .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-abductor .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-abductor .Input{position:relative;display:inline-block;width:120px;border:1px solid #404b6e;border:1px solid rgba(64,75,110,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-abductor .Input--fluid{display:block;width:auto}.theme-abductor .Input__baseline{display:inline-block;color:transparent}.theme-abductor .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-abductor .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-abductor .NumberInput{position:relative;display:inline-block;border:1px solid #404b6e;border:1px solid rgba(64,75,110,.75);border-radius:2px;color:#404b6e;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-abductor .NumberInput--fluid{display:block}.theme-abductor .NumberInput__content{margin-left:6px}.theme-abductor .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-abductor .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #404b6e;background-color:#404b6e}.theme-abductor .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-abductor .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-abductor .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-abductor .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-abductor .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-abductor .ProgressBar--color--default{border:1px solid #931e44}.theme-abductor .ProgressBar--color--default .ProgressBar__fill{background-color:#931e44}.theme-abductor .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-abductor .Section:last-child{margin-bottom:0}.theme-abductor .Section__title{position:relative;padding:6px;border-bottom:2px solid #ad2350}.theme-abductor .Section__titleText{font-size:14px;font-weight:700}.theme-abductor .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-abductor .Section__content{padding:8px 6px}.theme-abductor .Section--level--1 .Section__titleText{font-size:14px}.theme-abductor .Section--level--2 .Section__titleText{font-size:13px}.theme-abductor .Section--level--3 .Section__titleText{font-size:12px}.theme-abductor .Section--level--2,.theme-abductor .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-abductor .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400}.theme-abductor .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;background-color:#a82d55;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-abductor .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-abductor .Tooltip--long:after{width:250px;white-space:normal}.theme-abductor .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-abductor .Tooltip--bottom:after,.theme-abductor .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-abductor .Tooltip--bottom:after{top:100%;left:50%}.theme-abductor .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-abductor .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-abductor .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-abductor .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-abductor .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-abductor .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-abductor .Tooltip--left:hover:after,.theme-abductor .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-abductor .Tooltip--right:after{top:50%;left:100%}.theme-abductor .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-abductor .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden;margin-bottom:-6px;scrollbar-base-color:#202538;scrollbar-face-color:#384263;scrollbar-3dlight-color:#2a314a;scrollbar-highlight-color:#2a314a;scrollbar-track-color:#202538;scrollbar-arrow-color:#818db8;scrollbar-shadow-color:#384263}.theme-abductor .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-abductor .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#2a314a;background-image:linear-gradient(180deg,#353e5e 0,#1f2436)}.theme-abductor .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-abductor .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-abductor .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(68,76,104,.25);pointer-events:none}.theme-abductor .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#151925;color:hsla(0,0%,100%,.8)}.theme-abductor .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-abductor .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-abductor .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-abductor .TitleBar{background-color:#9e1b46;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-abductor .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#9e1b46;transition:color .25s,background-color .25s}.theme-abductor .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-abductor .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-abductor .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-abductor .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-abductor .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-abductor .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-abductor .Layout__content{background-image:none}.theme-cardtable .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:0;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-cardtable .Button:last-child{margin-right:0}.theme-cardtable .Button .fa,.theme-cardtable .Button .far,.theme-cardtable .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-cardtable .Button--hasContent .fa,.theme-cardtable .Button--hasContent .far,.theme-cardtable .Button--hasContent .fas{margin-right:3px}.theme-cardtable .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-cardtable .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-cardtable .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#117039;color:#fff}.theme-cardtable .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--default:focus,.theme-cardtable .Button--color--default:hover{background-color:#1c8247;color:#fff}.theme-cardtable .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-cardtable .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--caution:focus,.theme-cardtable .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-cardtable .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-cardtable .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--danger:focus,.theme-cardtable .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-cardtable .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#117039;color:#fff;background-color:rgba(17,112,57,0);color:hsla(0,0%,100%,.5)}.theme-cardtable .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--transparent:focus,.theme-cardtable .Button--color--transparent:hover{background-color:#1c8247;color:#fff}.theme-cardtable .Button--disabled{background-color:#363636!important}.theme-cardtable .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-cardtable .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--selected:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--selected:focus,.theme-cardtable .Button--selected:hover{background-color:#b31212;color:#fff}.theme-cardtable .Input{position:relative;display:inline-block;width:120px;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:0;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-cardtable .Input--fluid{display:block;width:auto}.theme-cardtable .Input__baseline{display:inline-block;color:transparent}.theme-cardtable .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-cardtable .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-cardtable .NumberInput{position:relative;display:inline-block;border:1px solid #fff;border:1px solid hsla(0,0%,100%,.75);border-radius:0;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-cardtable .NumberInput--fluid{display:block}.theme-cardtable .NumberInput__content{margin-left:6px}.theme-cardtable .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-cardtable .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #fff;background-color:#fff}.theme-cardtable .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-cardtable .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:0;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-cardtable .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-cardtable .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-cardtable .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-cardtable .ProgressBar--color--default{border:1px solid #000}.theme-cardtable .ProgressBar--color--default .ProgressBar__fill{background-color:#000}.theme-cardtable .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-cardtable .Section:last-child{margin-bottom:0}.theme-cardtable .Section__title{position:relative;padding:6px;border-bottom:2px solid #000}.theme-cardtable .Section__titleText{font-size:14px;font-weight:700}.theme-cardtable .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-cardtable .Section__content{padding:8px 6px}.theme-cardtable .Section--level--1 .Section__titleText{font-size:14px}.theme-cardtable .Section--level--2 .Section__titleText{font-size:13px}.theme-cardtable .Section--level--3 .Section__titleText{font-size:12px}.theme-cardtable .Section--level--2,.theme-cardtable .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-cardtable .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden;margin-bottom:-6px;scrollbar-base-color:#0d542b;scrollbar-face-color:#16914a;scrollbar-3dlight-color:#117039;scrollbar-highlight-color:#117039;scrollbar-track-color:#0d542b;scrollbar-arrow-color:#5ae695;scrollbar-shadow-color:#16914a}.theme-cardtable .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-cardtable .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#117039;background-image:linear-gradient(180deg,#117039 0,#117039)}.theme-cardtable .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-cardtable .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-cardtable .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(39,148,85,.25);pointer-events:none}.theme-cardtable .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#09381d;color:hsla(0,0%,100%,.8)}.theme-cardtable .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-cardtable .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-cardtable .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-cardtable .TitleBar{background-color:#381608;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-cardtable .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#381608;transition:color .25s,background-color .25s}.theme-cardtable .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-cardtable .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-cardtable .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-cardtable .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-cardtable .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-cardtable .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-cardtable .Button{border:2px solid #fff}.theme-malfunction .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-malfunction .Button:last-child{margin-right:0}.theme-malfunction .Button .fa,.theme-malfunction .Button .far,.theme-malfunction .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-malfunction .Button--hasContent .fa,.theme-malfunction .Button--hasContent .far,.theme-malfunction .Button--hasContent .fas{margin-right:3px}.theme-malfunction .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-malfunction .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-malfunction .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#910101;color:#fff}.theme-malfunction .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--default:focus,.theme-malfunction .Button--color--default:hover{background-color:#a60b0b;color:#fff}.theme-malfunction .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-malfunction .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--caution:focus,.theme-malfunction .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-malfunction .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-malfunction .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--danger:focus,.theme-malfunction .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-malfunction .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#1b3443;color:#fff;background-color:rgba(27,52,67,0);color:hsla(0,0%,100%,.5)}.theme-malfunction .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--transparent:focus,.theme-malfunction .Button--color--transparent:hover{background-color:#274252;color:#fff}.theme-malfunction .Button--disabled{background-color:#363636!important}.theme-malfunction .Button--selected{transition:color 50ms,background-color 50ms;background-color:#1e5881;color:#fff}.theme-malfunction .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--selected:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--selected:focus,.theme-malfunction .Button--selected:hover{background-color:#2a6894;color:#fff}.theme-malfunction .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#1a3f57;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-malfunction .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-malfunction .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-malfunction .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-malfunction .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-malfunction .Input{position:relative;display:inline-block;width:120px;border:1px solid #910101;border:1px solid rgba(145,1,1,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-malfunction .Input--fluid{display:block;width:auto}.theme-malfunction .Input__baseline{display:inline-block;color:transparent}.theme-malfunction .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-malfunction .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-malfunction .NumberInput{position:relative;display:inline-block;border:1px solid #910101;border:1px solid rgba(145,1,1,.75);border-radius:2px;color:#910101;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-malfunction .NumberInput--fluid{display:block}.theme-malfunction .NumberInput__content{margin-left:6px}.theme-malfunction .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-malfunction .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #910101;background-color:#910101}.theme-malfunction .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-malfunction .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-malfunction .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-malfunction .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-malfunction .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-malfunction .ProgressBar--color--default{border:1px solid #7b0101}.theme-malfunction .ProgressBar--color--default .ProgressBar__fill{background-color:#7b0101}.theme-malfunction .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-malfunction .Section:last-child{margin-bottom:0}.theme-malfunction .Section__title{position:relative;padding:6px;border-bottom:2px solid #910101}.theme-malfunction .Section__titleText{font-size:14px;font-weight:700}.theme-malfunction .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-malfunction .Section__content{padding:8px 6px}.theme-malfunction .Section--level--1 .Section__titleText{font-size:14px}.theme-malfunction .Section--level--2 .Section__titleText{font-size:13px}.theme-malfunction .Section--level--3 .Section__titleText{font-size:12px}.theme-malfunction .Section--level--2,.theme-malfunction .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-malfunction .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400}.theme-malfunction .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;background-color:#235577;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-malfunction .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-malfunction .Tooltip--long:after{width:250px;white-space:normal}.theme-malfunction .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-malfunction .Tooltip--bottom:after,.theme-malfunction .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-malfunction .Tooltip--bottom:after{top:100%;left:50%}.theme-malfunction .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-malfunction .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-malfunction .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-malfunction .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-malfunction .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-malfunction .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-malfunction .Tooltip--left:hover:after,.theme-malfunction .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-malfunction .Tooltip--right:after{top:50%;left:100%}.theme-malfunction .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-malfunction .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden;margin-bottom:-6px;scrollbar-base-color:#142732;scrollbar-face-color:#274b61;scrollbar-3dlight-color:#1b3443;scrollbar-highlight-color:#1b3443;scrollbar-track-color:#142732;scrollbar-arrow-color:#6ba2c3;scrollbar-shadow-color:#274b61}.theme-malfunction .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-malfunction .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#1b3443;background-image:linear-gradient(180deg,#244559 0,#12232d)}.theme-malfunction .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-malfunction .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-malfunction .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(50,79,96,.25);pointer-events:none}.theme-malfunction .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#0e1a22;color:hsla(0,0%,100%,.8)}.theme-malfunction .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-malfunction .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-malfunction .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-malfunction .TitleBar{background-color:#1a3f57;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-malfunction .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#1a3f57;transition:color .25s,background-color .25s}.theme-malfunction .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-malfunction .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-malfunction .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-malfunction .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-malfunction .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-malfunction .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-malfunction .Layout__content{background-image:none}.theme-ntos .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-ntos .Button:last-child{margin-right:0}.theme-ntos .Button .fa,.theme-ntos .Button .far,.theme-ntos .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-ntos .Button--hasContent .fa,.theme-ntos .Button--hasContent .far,.theme-ntos .Button--hasContent .fas{margin-right:3px}.theme-ntos .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-ntos .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-ntos .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#384e68;color:#fff}.theme-ntos .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--default:focus,.theme-ntos .Button--color--default:hover{background-color:#465e7a;color:#fff}.theme-ntos .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-ntos .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--caution:focus,.theme-ntos .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-ntos .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-ntos .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--danger:focus,.theme-ntos .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-ntos .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#1f2b39;color:#fff;background-color:rgba(31,43,57,0);color:rgba(227,240,255,.75)}.theme-ntos .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--transparent:focus,.theme-ntos .Button--color--transparent:hover{background-color:#2b3847;color:#fff}.theme-ntos .Button--disabled{background-color:#999!important}.theme-ntos .Button--selected{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.theme-ntos .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--selected:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--selected:focus,.theme-ntos .Button--selected:hover{background-color:#27ab46;color:#fff}.theme-ntos .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-ntos .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-ntos .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-ntos .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-ntos .ProgressBar--color--default{border:1px solid #384e68}.theme-ntos .ProgressBar--color--default .ProgressBar__fill{background-color:#384e68}.theme-ntos .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-ntos .Section:last-child{margin-bottom:0}.theme-ntos .Section__title{position:relative;padding:6px;border-bottom:2px solid #4972a1}.theme-ntos .Section__titleText{font-size:14px;font-weight:700}.theme-ntos .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-ntos .Section__content{padding:8px 6px}.theme-ntos .Section--level--1 .Section__titleText{font-size:14px}.theme-ntos .Section--level--2 .Section__titleText{font-size:13px}.theme-ntos .Section--level--3 .Section__titleText{font-size:12px}.theme-ntos .Section--level--2,.theme-ntos .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-ntos .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden;margin-bottom:-6px;scrollbar-base-color:#17202b;scrollbar-face-color:#2e3f55;scrollbar-3dlight-color:#1f2b39;scrollbar-highlight-color:#1f2b39;scrollbar-track-color:#17202b;scrollbar-arrow-color:#7693b5;scrollbar-shadow-color:#2e3f55}.theme-ntos .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-ntos .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#1f2b39;background-image:linear-gradient(180deg,#223040 0,#1b2633)}.theme-ntos .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-ntos .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-ntos .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(55,69,85,.25);pointer-events:none}.theme-ntos .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#0f151d;color:hsla(0,0%,100%,.8)}.theme-ntos .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-ntos .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-ntos .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-ntos .TitleBar{background-color:#2a3b4e;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-ntos .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#2a3b4e;transition:color .25s,background-color .25s}.theme-ntos .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-ntos .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-ntos .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-ntos .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-ntos .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-ntos .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-paper .Tabs--horizontal{border-bottom:2px solid hsla(0,0%,100%,.1);margin-bottom:6px}.theme-paper .Tabs--horizontal .Tabs__tab--altSelection:after{content:"";position:absolute;bottom:0;right:0;left:0;height:2px;width:100%;background-color:#fff;border-radius:0}.theme-paper .Tabs--vertical{margin-right:9px}.theme-paper .Tabs--vertical .Tabs__tabBox{border-right:2px solid hsla(0,0%,100%,.1);vertical-align:top}.theme-paper .Tabs--vertical .Tabs__tab{display:block!important;margin-right:0!important;margin-bottom:0;padding:1px 9px 0 6px;border-bottom:2px solid hsla(0,0%,100%,.1)}.theme-paper .Tabs--vertical .Tabs__tab:last-child{border-bottom:0}.theme-paper .Tabs--vertical .Tabs__tab--altSelection:after{content:"";position:absolute;top:0;bottom:0;right:0;height:100%;width:3px;background-color:#fff;border-radius:0}.theme-paper .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:0;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-paper .Button:last-child{margin-right:0}.theme-paper .Button .fa,.theme-paper .Button .far,.theme-paper .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-paper .Button--hasContent .fa,.theme-paper .Button--hasContent .far,.theme-paper .Button--hasContent .fas{margin-right:3px}.theme-paper .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-paper .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-paper .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#e8e4c9;color:#000}.theme-paper .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-paper .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-paper .Button--color--default:focus,.theme-paper .Button--color--default:hover{background-color:#f7f6ee;color:#000}.theme-paper .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-paper .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-paper .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-paper .Button--color--caution:focus,.theme-paper .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-paper .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-paper .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-paper .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-paper .Button--color--danger:focus,.theme-paper .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-paper .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#fff;color:#000;background-color:hsla(0,0%,100%,0);color:hsla(0,0%,100%,.5)}.theme-paper .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-paper .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-paper .Button--color--transparent:focus,.theme-paper .Button--color--transparent:hover{background-color:#fff;color:#000}.theme-paper .Button--disabled{background-color:#363636!important}.theme-paper .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-paper .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-paper .Button--selected:focus{transition:color .1s,background-color .1s}.theme-paper .Button--selected:focus,.theme-paper .Button--selected:hover{background-color:#b31212;color:#fff}.theme-paper .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden;margin-bottom:-6px;scrollbar-base-color:#bfbfbf;scrollbar-face-color:#fff;scrollbar-3dlight-color:#fff;scrollbar-highlight-color:#fff;scrollbar-track-color:#bfbfbf;scrollbar-arrow-color:#fff;scrollbar-shadow-color:#fff}.theme-paper .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-paper .Window{position:fixed;top:0;bottom:0;left:0;right:0;background-color:#fff;background-image:linear-gradient(180deg,#fff 0,#fff)}.theme-paper .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-paper .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-paper .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:hsla(0,0%,100%,.25);pointer-events:none}.theme-paper .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:grey;color:hsla(0,0%,100%,.8)}.theme-paper .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-paper .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-paper .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-paper .TitleBar{background-color:#fff;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-paper .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#fff;transition:color .25s,background-color .25s}.theme-paper .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-paper .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-paper .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-paper .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-paper .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-paper .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-paper .PaperInput{position:relative;display:inline-block;width:120px;background:transparent;border:none;border-bottom:1px solid #000;outline:none;background-color:rgba(255,255,62,.8);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-paper .PaperInput__baseline{display:inline-block;color:transparent}.theme-paper .PaperInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-paper .PaperInput__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-paper .Layout__content,.theme-paper .Window{background-image:none}.theme-paper .Window{color:#000}.theme-paper .paper-field,.theme-paper .paper-field input:disabled,.theme-paper .paper-text input,.theme-paper .paper-text input:disabled{position:relative;display:inline-block;background:transparent;border:none;border-bottom:1px solid #000;outline:none;background-color:rgba(255,255,62,.8);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-hackerman .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-hackerman .Button:last-child{margin-right:0}.theme-hackerman .Button .fa,.theme-hackerman .Button .far,.theme-hackerman .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-hackerman .Button--hasContent .fa,.theme-hackerman .Button--hasContent .far,.theme-hackerman .Button--hasContent .fas{margin-right:3px}.theme-hackerman .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-hackerman .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-hackerman .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#0f0;color:#000}.theme-hackerman .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--default:focus,.theme-hackerman .Button--color--default:hover{background-color:#26ff26;color:#000}.theme-hackerman .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-hackerman .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--caution:focus,.theme-hackerman .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-hackerman .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-hackerman .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--danger:focus,.theme-hackerman .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-hackerman .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#121b12;color:#fff;background-color:rgba(18,27,18,0);color:hsla(0,0%,100%,.5)}.theme-hackerman .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--transparent:focus,.theme-hackerman .Button--color--transparent:hover{background-color:#1d271d;color:#fff}.theme-hackerman .Button--disabled{background-color:#4a6a4a!important}.theme-hackerman .Button--selected{transition:color 50ms,background-color 50ms;background-color:#0f0;color:#000}.theme-hackerman .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--selected:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--selected:focus,.theme-hackerman .Button--selected:hover{background-color:#26ff26;color:#000}.theme-hackerman .Input{position:relative;display:inline-block;width:120px;border:1px solid #0f0;border:1px solid rgba(0,255,0,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-hackerman .Input--fluid{display:block;width:auto}.theme-hackerman .Input__baseline{display:inline-block;color:transparent}.theme-hackerman .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-hackerman .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-hackerman .Modal{background-color:#121b12;max-width:calc(100% - 1rem);padding:1rem}.theme-hackerman .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-hackerman .Section:last-child{margin-bottom:0}.theme-hackerman .Section__title{position:relative;padding:6px;border-bottom:2px solid #0f0}.theme-hackerman .Section__titleText{font-size:14px;font-weight:700}.theme-hackerman .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-hackerman .Section__content{padding:8px 6px}.theme-hackerman .Section--level--1 .Section__titleText{font-size:14px}.theme-hackerman .Section--level--2 .Section__titleText{font-size:13px}.theme-hackerman .Section--level--3 .Section__titleText{font-size:12px}.theme-hackerman .Section--level--2,.theme-hackerman .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-hackerman .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden;margin-bottom:-6px;scrollbar-base-color:#0e140e;scrollbar-face-color:#253725;scrollbar-3dlight-color:#121b12;scrollbar-highlight-color:#121b12;scrollbar-track-color:#0e140e;scrollbar-arrow-color:#74a274;scrollbar-shadow-color:#253725}.theme-hackerman .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-hackerman .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#121b12;background-image:linear-gradient(180deg,#121b12 0,#121b12)}.theme-hackerman .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-hackerman .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-hackerman .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(40,50,40,.25);pointer-events:none}.theme-hackerman .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#090e09;color:hsla(0,0%,100%,.8)}.theme-hackerman .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-hackerman .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-hackerman .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-hackerman .TitleBar{background-color:#223d22;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-hackerman .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#223d22;transition:color .25s,background-color .25s}.theme-hackerman .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-hackerman .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-hackerman .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-hackerman .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-hackerman .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-hackerman .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-hackerman .Layout__content{background-image:none}.theme-hackerman .Button{font-family:monospace;border:2px outset #0a0;outline:1px solid #007a00}.theme-hackerman .candystripe:nth-child(odd){background-color:rgba(0,100,0,.5)}.theme-retro .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:0;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-retro .Button:last-child{margin-right:0}.theme-retro .Button .fa,.theme-retro .Button .far,.theme-retro .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-retro .Button--hasContent .fa,.theme-retro .Button--hasContent .far,.theme-retro .Button--hasContent .fas{margin-right:3px}.theme-retro .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-retro .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-retro .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#e8e4c9;color:#000}.theme-retro .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--default:focus,.theme-retro .Button--color--default:hover{background-color:#f7f6ee;color:#000}.theme-retro .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-retro .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--caution:focus,.theme-retro .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-retro .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-retro .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--danger:focus,.theme-retro .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-retro .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#e8e4c9;color:#000;background-color:rgba(232,228,201,0);color:hsla(0,0%,100%,.5)}.theme-retro .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--transparent:focus,.theme-retro .Button--color--transparent:hover{background-color:#f7f6ee;color:#000}.theme-retro .Button--disabled{background-color:#363636!important}.theme-retro .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-retro .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--selected:focus{transition:color .1s,background-color .1s}.theme-retro .Button--selected:focus,.theme-retro .Button--selected:hover{background-color:#b31212;color:#fff}.theme-retro .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:0;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-retro .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-retro .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-retro .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-retro .ProgressBar--color--default{border:1px solid #000}.theme-retro .ProgressBar--color--default .ProgressBar__fill{background-color:#000}.theme-retro .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-retro .Section:last-child{margin-bottom:0}.theme-retro .Section__title{position:relative;padding:6px;border-bottom:2px solid #000}.theme-retro .Section__titleText{font-size:14px;font-weight:700}.theme-retro .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-retro .Section__content{padding:8px 6px}.theme-retro .Section--level--1 .Section__titleText{font-size:14px}.theme-retro .Section--level--2 .Section__titleText{font-size:13px}.theme-retro .Section--level--3 .Section__titleText{font-size:12px}.theme-retro .Section--level--2,.theme-retro .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-retro .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden;margin-bottom:-6px;scrollbar-base-color:#c8be7d;scrollbar-face-color:#eae7ce;scrollbar-3dlight-color:#e8e4c9;scrollbar-highlight-color:#e8e4c9;scrollbar-track-color:#c8be7d;scrollbar-arrow-color:#f4f2e4;scrollbar-shadow-color:#eae7ce}.theme-retro .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-retro .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#e8e4c9;background-image:linear-gradient(180deg,#e8e4c9 0,#e8e4c9)}.theme-retro .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-retro .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-retro .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(251,250,246,.25);pointer-events:none}.theme-retro .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#988d41;color:hsla(0,0%,100%,.8)}.theme-retro .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-retro .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-retro .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-retro .TitleBar{background-color:#585337;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-retro .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#585337;transition:color .25s,background-color .25s}.theme-retro .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-retro .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-retro .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-retro .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-retro .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-retro .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-retro .Button{font-family:monospace;color:#161613;border:8px outset #e8e4c9;outline:3px solid #161613}.theme-retro .Layout__content{background-image:none}.theme-syndicate .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-syndicate .Button:last-child{margin-right:0}.theme-syndicate .Button .fa,.theme-syndicate .Button .far,.theme-syndicate .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-syndicate .Button--hasContent .fa,.theme-syndicate .Button--hasContent .far,.theme-syndicate .Button--hasContent .fas{margin-right:3px}.theme-syndicate .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-syndicate .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-syndicate .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#397439;color:#fff}.theme-syndicate .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--default:focus,.theme-syndicate .Button--color--default:hover{background-color:#478647;color:#fff}.theme-syndicate .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-syndicate .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--caution:focus,.theme-syndicate .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-syndicate .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-syndicate .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--danger:focus,.theme-syndicate .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-syndicate .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#550202;color:#fff;background-color:rgba(85,2,2,0);color:hsla(0,0%,100%,.5)}.theme-syndicate .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--transparent:focus,.theme-syndicate .Button--color--transparent:hover{background-color:#650c0c;color:#fff}.theme-syndicate .Button--disabled{background-color:#363636!important}.theme-syndicate .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-syndicate .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--selected:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--selected:focus,.theme-syndicate .Button--selected:hover{background-color:#b31212;color:#fff}.theme-syndicate .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#910101;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-syndicate .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-syndicate .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-syndicate .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-syndicate .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-syndicate .Input{position:relative;display:inline-block;width:120px;border:1px solid #87ce87;border:1px solid rgba(135,206,135,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-syndicate .Input--fluid{display:block;width:auto}.theme-syndicate .Input__baseline{display:inline-block;color:transparent}.theme-syndicate .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-syndicate .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-syndicate .NumberInput{position:relative;display:inline-block;border:1px solid #87ce87;border:1px solid rgba(135,206,135,.75);border-radius:2px;color:#87ce87;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-syndicate .NumberInput--fluid{display:block}.theme-syndicate .NumberInput__content{margin-left:6px}.theme-syndicate .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-syndicate .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #87ce87;background-color:#87ce87}.theme-syndicate .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-syndicate .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-syndicate .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-syndicate .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-syndicate .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-syndicate .ProgressBar--color--default{border:1px solid #306330}.theme-syndicate .ProgressBar--color--default .ProgressBar__fill{background-color:#306330}.theme-syndicate .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-syndicate .Section:last-child{margin-bottom:0}.theme-syndicate .Section__title{position:relative;padding:6px;border-bottom:2px solid #397439}.theme-syndicate .Section__titleText{font-size:14px;font-weight:700}.theme-syndicate .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-syndicate .Section__content{padding:8px 6px}.theme-syndicate .Section--level--1 .Section__titleText{font-size:14px}.theme-syndicate .Section--level--2 .Section__titleText{font-size:13px}.theme-syndicate .Section--level--3 .Section__titleText{font-size:12px}.theme-syndicate .Section--level--2,.theme-syndicate .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-syndicate .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400}.theme-syndicate .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;background-color:#4a0202;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-syndicate .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-syndicate .Tooltip--long:after{width:250px;white-space:normal}.theme-syndicate .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-syndicate .Tooltip--bottom:after,.theme-syndicate .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-syndicate .Tooltip--bottom:after{top:100%;left:50%}.theme-syndicate .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-syndicate .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-syndicate .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-syndicate .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-syndicate .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-syndicate .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-syndicate .Tooltip--left:hover:after,.theme-syndicate .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-syndicate .Tooltip--right:after{top:50%;left:100%}.theme-syndicate .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-syndicate .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden;margin-bottom:-6px;scrollbar-base-color:#400202;scrollbar-face-color:#7e0303;scrollbar-3dlight-color:#550202;scrollbar-highlight-color:#550202;scrollbar-track-color:#400202;scrollbar-arrow-color:#fa3030;scrollbar-shadow-color:#7e0303}.theme-syndicate .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-syndicate .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#550202;background-image:linear-gradient(180deg,#730303 0,#370101)}.theme-syndicate .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-syndicate .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-syndicate .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(117,22,22,.25);pointer-events:none}.theme-syndicate .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#2b0101;color:hsla(0,0%,100%,.8)}.theme-syndicate .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-syndicate .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-syndicate .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-syndicate .TitleBar{background-color:#910101;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-syndicate .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#910101;transition:color .25s,background-color .25s}.theme-syndicate .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-syndicate .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-syndicate .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-syndicate .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-syndicate .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-syndicate .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-syndicate .Layout__content{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDIwMCAyODkuNzQyIiBvcGFjaXR5PSIuMzMiPjxwYXRoIGQ9Ik05My41MzggMGMtMTguMTEzIDAtMzQuMjIgMy4xMTItNDguMzI0IDkuMzM0LTEzLjk2NSA2LjIyMi0yNC42MTIgMTUuMDcyLTMxLjk0IDI2LjU0N0M2LjA4NCA0Ny4yMiAyLjk3MiA2MC42MzEgMi45NzIgNzYuMTE2YzAgMTAuNjQ3IDIuNzI1IDIwLjQ2NSA4LjE3NSAyOS40NTMgNS42MTYgOC45ODcgMTQuMDM5IDE3LjM1MiAyNS4yNyAyNS4wOTQgMTEuMjMgNy42MDYgMjYuNTA3IDE1LjQxOSA0NS44MyAyMy40MzggMTkuOTg0IDguMjk2IDM0Ljg0OSAxNS41NTUgNDQuNTkzIDIxLjc3NiA5Ljc0NCA2LjIyMyAxNi43NjEgMTIuODU5IDIxLjA1NSAxOS45MSA0LjI5NSA3LjA1MiA2LjQ0MiAxNS43NjQgNi40NDIgMjYuMTM0IDAgMTYuMTc4LTUuMjAyIDI4LjQ4My0xNS42MDYgMzYuOTE3LTEwLjI0IDguNDM1LTI1LjAyMiAxMi42NTMtNDQuMzQ1IDEyLjY1My0xNC4wMzkgMC0yNS41MTYtMS42Ni0zNC40MzQtNC45NzgtOC45MTgtMy40NTctMTYuMTg2LTguNzExLTIxLjgtMTUuNzYzLTUuNjE2LTcuMDUyLTEwLjA3Ni0xNi42NjEtMTMuMzc5LTI4LjgyOUgwdjU2LjgyN2MzMy44NTcgNy4zMjggNjMuNzQ5IDEwLjk5NCA4OS42NzggMTAuOTk0IDE2LjAyIDAgMzAuNzItMS4zODMgNDQuMDk4LTQuMTQ4IDEzLjU0Mi0yLjkwNCAyNS4xMDQtNy40NjcgMzQuNjgzLTEzLjY5IDkuNzQ0LTYuMzU5IDE3LjM0LTE0LjUxOSAyMi43OS0yNC40NzQgNS40NS0xMC4wOTMgOC4xNzUtMjIuNCA4LjE3NS0zNi45MTcgMC0xMi45OTctMy4zMDItMjQuMzM1LTkuOTA4LTM0LjAxNC02LjQ0LTkuODE4LTE1LjUyNS0xOC41MjctMjcuMjUxLTI2LjEzMi0xMS41NjEtNy42MDQtMjcuOTExLTE1LjgzMS00OS4wNTEtMjQuNjgtMTcuNTA2LTcuMTktMzAuNzItMTMuNjktMzkuNjM4LTE5LjQ5N1M1NC45NjkgOTMuNzU2IDQ5LjQ3OSA4Ny4zMTZjLTUuNDI2LTYuMzY2LTkuNjU4LTE1LjA3LTkuNjU4LTI0Ljg4NyAwLTkuMjY0IDIuMDc1LTE3LjIxNCA2LjIyMy0yMy44NUM1Ny4xNDIgMjQuMTggODcuMzMxIDM2Ljc4MiA5MS4xMiA2Mi45MjVjNC44NCA2Ljc3NSA4Ljg1IDE2LjI0NyAxMi4wMyAyOC40MTVoMjAuNTMydi01NmMtNC40NzktNS45MjQtOS45NTUtMTAuNjMxLTE1LjkwOS0xNC4zNzMgMS42NC40NzkgMy4xOSAxLjAyMyA0LjYzOSAxLjY0IDYuNDk4IDIuNjI2IDEyLjE2OCA3LjMyNyAxNy4wMDcgMTQuMTAzIDQuODQgNi43NzUgOC44NSAxNi4yNDYgMTIuMDMgMjguNDE0IDAgMCA4LjQ4LS4xMjkgOC40OS0uMDAyLjQxNyA2LjQxNS0xLjc1NCA5LjQ1My00LjEyNCAxMi41NjEtMi40MTcgMy4xNy01LjE0NSA2Ljc5LTQuMDAzIDEzLjAwMyAxLjUwOCA4LjIwMyAxMC4xODQgMTAuNTk3IDE0LjYyMiA5LjMxMi0zLjMxOC0uNS01LjMxOC0xLjc1LTUuMzE4LTEuNzVzMS44NzYuOTk5IDUuNjUtMS4zNmMtMy4yNzYuOTU2LTEwLjcwNC0uNzk3LTExLjgtNi43NjMtLjk1OC01LjIwOC45NDYtNy4yOTUgMy40LTEwLjUxNCAyLjQ1NS0zLjIyIDUuMjg1LTYuOTU5IDQuNjg1LTE0LjQ4OWwuMDAzLjAwMmg4LjkyN3YtNTZjLTE1LjA3Mi0zLjg3MS0yNy42NTMtNi4zNi0zNy43NDctNy40NjVDMTE0LjI3OS41NTIgMTA0LjA0NiAwIDkzLjUzNyAwem03MC4zMjEgMTcuMzA5bC4yMzggNDAuMzA1YzEuMzE4IDEuMjI2IDIuNDQgMi4yNzggMy4zNDEgMy4xMDYgNC44NCA2Ljc3NSA4Ljg1IDE2LjI0NiAxMi4wMyAyOC40MTRIMjAwdi01NmMtNi42NzctNC41OTQtMTkuODM2LTEwLjQ3My0zNi4xNC0xNS44MjV6bS0yOC4xMiA1LjYwNWw4LjU2NSAxNy43MTdjLTExLjk3LTYuNDY3LTEzLjg0Ny05LjcxNy04LjU2NS0xNy43MTd6bTIyLjc5NyAwYzIuNzcxIDggMS43ODcgMTEuMjUtNC40OTQgMTcuNzE3bDQuNDk0LTE3LjcxN3ptMTUuMjIyIDI0LjAwOWw4LjU2NSAxNy43MTZjLTExLjk3LTYuNDY2LTEzLjg0Ny05LjcxNy04LjU2NS0xNy43MTZ6bTIyLjc5NyAwYzIuNzcxIDggMS43ODcgMTEuMjUtNC40OTQgMTcuNzE2bDQuNDk0LTE3LjcxNnpNOTcuNDQgNDkuMTNsOC41NjUgMTcuNzE2Yy0xMS45Ny02LjQ2Ny0xMy44NDctOS43MTctOC41NjUtMTcuNzE2em0yMi43OTUgMGMyLjc3MiA3Ljk5OSAxLjc4OCAxMS4yNS00LjQ5MyAxNy43MTZsNC40OTMtMTcuNzE2eiIvPjwvc3ZnPg==)} \ No newline at end of file +body,html{box-sizing:border-box;height:100%;margin:0;font-size:12px}html{overflow:hidden;cursor:default}body{overflow:auto;font-family:Verdana,Geneva,sans-serif}*,:after,:before{box-sizing:inherit}h1,h2,h3,h4,h5,h6{display:block;margin:0;padding:6px 0}h1{font-size:18px}h2{font-size:16px}h3{font-size:14px}h4{font-size:12px}td,th{vertical-align:baseline;text-align:left}.candystripe:nth-child(odd){background-color:rgba(0,0,0,.25)}.color-black{color:#0d0d0d!important}.color-white{color:#fff!important}.color-red{color:#d33!important}.color-orange{color:#f37827!important}.color-yellow{color:#fbd814!important}.color-olive{color:#c0d919!important}.color-green{color:#22be47!important}.color-teal{color:#00c5bd!important}.color-blue{color:#238cdc!important}.color-violet{color:#6c3fcc!important}.color-purple{color:#a93bcd!important}.color-pink{color:#e2439c!important}.color-brown{color:#af6d43!important}.color-grey{color:#7d7d7d!important}.color-good{color:#62b62a!important}.color-average{color:#f1951d!important}.color-bad{color:#d33!important}.color-label{color:#8496ab!important}.color-bg-black{background-color:#000!important}.color-bg-white{background-color:#d9d9d9!important}.color-bg-red{background-color:#bd2020!important}.color-bg-orange{background-color:#d95e0c!important}.color-bg-yellow{background-color:#d9b804!important}.color-bg-olive{background-color:#9aad14!important}.color-bg-green{background-color:#1b9638!important}.color-bg-teal{background-color:#009a93!important}.color-bg-blue{background-color:#1c71b1!important}.color-bg-violet{background-color:#552dab!important}.color-bg-purple{background-color:#8b2baa!important}.color-bg-pink{background-color:#cf2082!important}.color-bg-brown{background-color:#8c5836!important}.color-bg-grey{background-color:#646464!important}.color-bg-good{background-color:#4d9121!important}.color-bg-average{background-color:#cd7a0d!important}.color-bg-bad{background-color:#bd2020!important}.color-bg-label{background-color:#657a94!important}.debug-layout,.debug-layout :not(g):not(path){color:hsla(0,0%,100%,.9)!important;background:transparent!important;outline:1px solid hsla(0,0%,100%,.5)!important;box-shadow:none!important;filter:none!important}.debug-layout:hover,.debug-layout :not(g):not(path):hover{outline-color:hsla(0,0%,100%,.8)!important}.display-none{display:none}.display-block{display:block}.display-inline{display:inline}.display-inline-block{display:inline-block}.m-0{margin:0}.mx-0{margin-left:0;margin-right:0}.my-0{margin-top:0;margin-bottom:0}.ml-0{margin-left:0}.mt-0{margin-top:0}.mr-0{margin-right:0}.mb-0{margin-bottom:0}.m-1{margin:6px}.mx-1{margin-left:6px;margin-right:6px}.my-1{margin-top:6px;margin-bottom:6px}.ml-1{margin-left:6px}.mt-1{margin-top:6px}.mr-1{margin-right:6px}.mb-1{margin-bottom:6px}.m-2{margin:12px}.mx-2{margin-left:12px;margin-right:12px}.my-2{margin-top:12px;margin-bottom:12px}.ml-2{margin-left:12px}.mt-2{margin-top:12px}.mr-2{margin-right:12px}.mb-2{margin-bottom:12px}.outline-dotted{outline-style:dotted!important;outline-width:2px!important}.outline-dashed{outline-style:dashed!important;outline-width:2px!important}.outline-solid{outline-style:solid!important;outline-width:2px!important}.outline-double{outline-style:double!important;outline-width:2px!important}.outline-groove{outline-style:groove!important;outline-width:2px!important}.outline-ridge{outline-style:ridge!important;outline-width:2px!important}.outline-inset{outline-style:inset!important;outline-width:2px!important}.outline-outset{outline-style:outset!important;outline-width:2px!important}.outline-color-black{outline-color:#0d0d0d!important}.outline-color-white{outline-color:#fff!important}.outline-color-red{outline-color:#d33!important}.outline-color-orange{outline-color:#f37827!important}.outline-color-yellow{outline-color:#fbd814!important}.outline-color-olive{outline-color:#c0d919!important}.outline-color-green{outline-color:#22be47!important}.outline-color-teal{outline-color:#00c5bd!important}.outline-color-blue{outline-color:#238cdc!important}.outline-color-violet{outline-color:#6c3fcc!important}.outline-color-purple{outline-color:#a93bcd!important}.outline-color-pink{outline-color:#e2439c!important}.outline-color-brown{outline-color:#af6d43!important}.outline-color-grey{outline-color:#7d7d7d!important}.outline-color-good{outline-color:#62b62a!important}.outline-color-average{outline-color:#f1951d!important}.outline-color-bad{outline-color:#d33!important}.outline-color-label{outline-color:#8496ab!important}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.position-sticky{position:sticky}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-baseline{text-align:baseline}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-pre{white-space:pre}.text-bold{font-weight:700}.text-italic{font-style:italic}.text-underline{text-decoration:underline}.BlockQuote{color:#8496ab;border-left:2px solid #8496ab;padding-left:6px;margin-bottom:6px}.BlockQuote:last-child{margin-bottom:0}.Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.Button:last-child{margin-right:0}.Button .fa,.Button .far,.Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.Button--hasContent .fa,.Button--hasContent .far,.Button--hasContent .fas{margin-right:3px}.Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.Button--fluid{display:block;margin-left:0;margin-right:0}.Button--color--black{transition:color 50ms,background-color 50ms;background-color:#000;color:#fff}.Button--color--black:hover{transition:color 0ms,background-color 0ms}.Button--color--black:focus{transition:color .1s,background-color .1s}.Button--color--black:focus,.Button--color--black:hover{background-color:#0a0a0a;color:#fff}.Button--color--white{transition:color 50ms,background-color 50ms;background-color:#d9d9d9;color:#000}.Button--color--white:hover{transition:color 0ms,background-color 0ms}.Button--color--white:focus{transition:color .1s,background-color .1s}.Button--color--white:focus,.Button--color--white:hover{background-color:#f3f3f3;color:#000}.Button--color--red{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--red:hover{transition:color 0ms,background-color 0ms}.Button--color--red:focus{transition:color .1s,background-color .1s}.Button--color--red:focus,.Button--color--red:hover{background-color:#d52b2b;color:#fff}.Button--color--orange{transition:color 50ms,background-color 50ms;background-color:#d95e0c;color:#fff}.Button--color--orange:hover{transition:color 0ms,background-color 0ms}.Button--color--orange:focus{transition:color .1s,background-color .1s}.Button--color--orange:focus,.Button--color--orange:hover{background-color:#ed6f1d;color:#fff}.Button--color--yellow{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.Button--color--yellow:hover{transition:color 0ms,background-color 0ms}.Button--color--yellow:focus{transition:color .1s,background-color .1s}.Button--color--yellow:focus,.Button--color--yellow:hover{background-color:#f3d00e;color:#000}.Button--color--olive{transition:color 50ms,background-color 50ms;background-color:#9aad14;color:#fff}.Button--color--olive:hover{transition:color 0ms,background-color 0ms}.Button--color--olive:focus{transition:color .1s,background-color .1s}.Button--color--olive:focus,.Button--color--olive:hover{background-color:#afc41f;color:#fff}.Button--color--green{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.Button--color--green:hover{transition:color 0ms,background-color 0ms}.Button--color--green:focus{transition:color .1s,background-color .1s}.Button--color--green:focus,.Button--color--green:hover{background-color:#27ab46;color:#fff}.Button--color--teal{transition:color 50ms,background-color 50ms;background-color:#009a93;color:#fff}.Button--color--teal:hover{transition:color 0ms,background-color 0ms}.Button--color--teal:focus{transition:color .1s,background-color .1s}.Button--color--teal:focus,.Button--color--teal:hover{background-color:#0aafa8;color:#fff}.Button--color--blue{transition:color 50ms,background-color 50ms;background-color:#1c71b1;color:#fff}.Button--color--blue:hover{transition:color 0ms,background-color 0ms}.Button--color--blue:focus{transition:color .1s,background-color .1s}.Button--color--blue:focus,.Button--color--blue:hover{background-color:#2883c8;color:#fff}.Button--color--violet{transition:color 50ms,background-color 50ms;background-color:#552dab;color:#fff}.Button--color--violet:hover{transition:color 0ms,background-color 0ms}.Button--color--violet:focus{transition:color .1s,background-color .1s}.Button--color--violet:focus,.Button--color--violet:hover{background-color:#653ac1;color:#fff}.Button--color--purple{transition:color 50ms,background-color 50ms;background-color:#8b2baa;color:#fff}.Button--color--purple:hover{transition:color 0ms,background-color 0ms}.Button--color--purple:focus{transition:color .1s,background-color .1s}.Button--color--purple:focus,.Button--color--purple:hover{background-color:#9e38c1;color:#fff}.Button--color--pink{transition:color 50ms,background-color 50ms;background-color:#cf2082;color:#fff}.Button--color--pink:hover{transition:color 0ms,background-color 0ms}.Button--color--pink:focus{transition:color .1s,background-color .1s}.Button--color--pink:focus,.Button--color--pink:hover{background-color:#dd3794;color:#fff}.Button--color--brown{transition:color 50ms,background-color 50ms;background-color:#8c5836;color:#fff}.Button--color--brown:hover{transition:color 0ms,background-color 0ms}.Button--color--brown:focus{transition:color .1s,background-color .1s}.Button--color--brown:focus,.Button--color--brown:hover{background-color:#a06844;color:#fff}.Button--color--grey{transition:color 50ms,background-color 50ms;background-color:#646464;color:#fff}.Button--color--grey:hover{transition:color 0ms,background-color 0ms}.Button--color--grey:focus{transition:color .1s,background-color .1s}.Button--color--grey:focus,.Button--color--grey:hover{background-color:#757575;color:#fff}.Button--color--good{transition:color 50ms,background-color 50ms;background-color:#4d9121;color:#fff}.Button--color--good:hover{transition:color 0ms,background-color 0ms}.Button--color--good:focus{transition:color .1s,background-color .1s}.Button--color--good:focus,.Button--color--good:hover{background-color:#5da52d;color:#fff}.Button--color--average{transition:color 50ms,background-color 50ms;background-color:#cd7a0d;color:#fff}.Button--color--average:hover{transition:color 0ms,background-color 0ms}.Button--color--average:focus{transition:color .1s,background-color .1s}.Button--color--average:focus,.Button--color--average:hover{background-color:#e68d18;color:#fff}.Button--color--bad{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--bad:hover{transition:color 0ms,background-color 0ms}.Button--color--bad:focus{transition:color .1s,background-color .1s}.Button--color--bad:focus,.Button--color--bad:hover{background-color:#d52b2b;color:#fff}.Button--color--label{transition:color 50ms,background-color 50ms;background-color:#657a94;color:#fff}.Button--color--label:hover{transition:color 0ms,background-color 0ms}.Button--color--label:focus{transition:color .1s,background-color .1s}.Button--color--label:focus,.Button--color--label:hover{background-color:#7b8da4;color:#fff}.Button--color--default{transition:color 50ms,background-color 50ms;background-color:#3e6189;color:#fff}.Button--color--default:hover{transition:color 0ms,background-color 0ms}.Button--color--default:focus{transition:color .1s,background-color .1s}.Button--color--default:focus,.Button--color--default:hover{background-color:#4c729d;color:#fff}.Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.Button--color--caution:hover{transition:color 0ms,background-color 0ms}.Button--color--caution:focus{transition:color .1s,background-color .1s}.Button--color--caution:focus,.Button--color--caution:hover{background-color:#f3d00e;color:#000}.Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--danger:hover{transition:color 0ms,background-color 0ms}.Button--color--danger:focus{transition:color .1s,background-color .1s}.Button--color--danger:focus,.Button--color--danger:hover{background-color:#d52b2b;color:#fff}.Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#252525;color:#fff;background-color:rgba(37,37,37,0);color:hsla(0,0%,100%,.5)}.Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.Button--color--transparent:focus{transition:color .1s,background-color .1s}.Button--color--transparent:focus,.Button--color--transparent:hover{background-color:#323232;color:#fff}.Button--disabled{background-color:#999!important}.Button--selected{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.Button--selected:hover{transition:color 0ms,background-color 0ms}.Button--selected:focus{transition:color .1s,background-color .1s}.Button--selected:focus,.Button--selected:hover{background-color:#27ab46;color:#fff}.ColorBox{display:inline-block;width:12px;height:12px;line-height:12px;text-align:center}.Dimmer{display:flex;justify-content:center;align-items:center;position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.75);z-index:1}.Divider--horizontal{margin:6px 0}.Divider--horizontal:not(.Divider--hidden){border-top:2px solid hsla(0,0%,100%,.1)}.Divider--vertical{height:100%;margin:0 6px}.Divider--vertical:not(.Divider--hidden){border-left:2px solid hsla(0,0%,100%,.1)}.Dropdown{position:relative}.Dropdown__control{position:relative;display:inline-block;font-family:Verdana,sans-serif;font-size:12px;width:100px;line-height:17px;user-select:none}.Dropdown__arrow-button{float:right;padding-left:6px;border-left:1px solid #000;border-left:1px solid rgba(0,0,0,.25)}.Dropdown__menu{overflow-y:auto;overflow-y:scroll}.Dropdown__menu,.Dropdown__menu-noscroll{position:absolute;z-index:5;width:100px;max-height:200px;border-radius:0 0 2px 2px;background-color:#000;background-color:rgba(0,0,0,.75)}.Dropdown__menu-noscroll{overflow-y:auto}.Dropdown__menuentry{padding:2px 4px;font-family:Verdana,sans-serif;font-size:12px;line-height:17px;transition:background-color .1s}.Dropdown__menuentry:hover{background-color:#444;transition:background-color 0ms}.Dropdown__over{top:auto;bottom:100%}.FatalError{display:block!important;position:absolute;top:0;left:0;right:0;bottom:0;padding:12px;font-size:12px;font-family:Consolas,monospace;color:#fff;background-color:#00d;z-index:1000;overflow:hidden;text-align:center}.FatalError__logo{display:inline-block;text-align:left;font-size:10px;line-height:8px;position:relative;margin-top:12px;top:0;left:0;animation:FatalError__rainbow 2s linear infinite alternate,FatalError__shadow 4s linear infinite alternate,FatalError__tfmX 3s infinite alternate,FatalError__tfmY 4s infinite alternate;white-space:pre-wrap;word-break:break-all}.FatalError__header{margin-top:12px}.FatalError__stack{text-align:left;white-space:pre-wrap;word-break:break-all;margin-top:24px;margin-bottom:24px}.FatalError__footer{margin-bottom:24px}@keyframes FatalError__rainbow{0%{color:#ff0}50%{color:#0ff}to{color:#f0f}}@keyframes FatalError__shadow{0%{left:-2px;text-shadow:4px 0 #f0f}50%{left:0;text-shadow:0 0 #0ff}to{left:2px;text-shadow:-4px 0 #ff0}}@keyframes FatalError__tfmX{0%{left:15px}to{left:-15px}}@keyframes FatalError__tfmY{to{top:-15px}}.Flex{display:-ms-flexbox;display:flex}.Flex--inline{display:inline-flex}.Flex--iefix{display:table!important}.Flex--iefix--column{display:block!important}.Flex--iefix--column>.Flex__item{display:block!important;margin-left:6px;margin-right:6px}.Flex__item--iefix{display:table-cell!important}.Flex--spacing--1{margin:0 -3px}.Flex--spacing--1>.Flex__item{margin:0 3px}.Flex--spacing--2{margin:0 -6px}.Flex--spacing--2>.Flex__item{margin:0 6px}.Knob{position:relative;font-size:1rem;width:2.6em;height:2.6em;margin:0 auto -.2em;cursor:n-resize}.Knob:after{content:".";color:transparent;line-height:2.5em}.Knob__circle{position:absolute;top:.1em;bottom:.1em;left:.1em;right:.1em;margin:.3em;background-color:#333;background-image:linear-gradient(180deg,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,0));border-radius:50%;box-shadow:0 .05em .5em 0 rgba(0,0,0,.5)}.Knob__cursorBox{position:absolute;top:0;bottom:0;left:0;right:0}.Knob__cursor{position:relative;top:.05em;margin:0 auto;width:.2em;height:.8em;background-color:hsla(0,0%,100%,.9)}.Knob__popupValue{position:absolute;top:-2rem;right:50%;font-size:1rem;text-align:center;padding:.25rem .5rem;background-color:#000;transform:translateX(50%);white-space:nowrap}.Knob__ring{position:absolute;top:0;bottom:0;left:0;right:0;padding:.1em}.Knob__ringTrackPivot{transform:rotate(135deg)}.Knob__ringTrack{fill:transparent;stroke:hsla(0,0%,100%,.1);stroke-width:8;stroke-linecap:round;stroke-dasharray:235.62}.Knob__ringFillPivot{transform:rotate(135deg)}.Knob--bipolar .Knob__ringFillPivot{transform:rotate(270deg)}.Knob__ringFill{fill:transparent;stroke:#6a96c9;stroke-width:8;stroke-linecap:round;stroke-dasharray:314.16;transition:stroke 50ms}.Knob--color--black .Knob__ringFill{stroke:#0d0d0d}.Knob--color--white .Knob__ringFill{stroke:#fff}.Knob--color--red .Knob__ringFill{stroke:#d33}.Knob--color--orange .Knob__ringFill{stroke:#f37827}.Knob--color--yellow .Knob__ringFill{stroke:#fbd814}.Knob--color--olive .Knob__ringFill{stroke:#c0d919}.Knob--color--green .Knob__ringFill{stroke:#22be47}.Knob--color--teal .Knob__ringFill{stroke:#00c5bd}.Knob--color--blue .Knob__ringFill{stroke:#238cdc}.Knob--color--violet .Knob__ringFill{stroke:#6c3fcc}.Knob--color--purple .Knob__ringFill{stroke:#a93bcd}.Knob--color--pink .Knob__ringFill{stroke:#e2439c}.Knob--color--brown .Knob__ringFill{stroke:#af6d43}.Knob--color--grey .Knob__ringFill{stroke:#7d7d7d}.Knob--color--good .Knob__ringFill{stroke:#62b62a}.Knob--color--average .Knob__ringFill{stroke:#f1951d}.Knob--color--bad .Knob__ringFill{stroke:#d33}.Knob--color--label .Knob__ringFill{stroke:#8496ab}.LabeledList{display:table;width:100%;width:calc(100% + 12px);border-collapse:collapse;border-spacing:0;margin:-3px -6px 0;padding:0}.LabeledList__row{display:table-row}.LabeledList__row:last-child .LabeledList__cell{padding-bottom:0}.LabeledList__cell{display:table-cell;margin:0;padding:3px 6px;border:0;text-align:left;vertical-align:baseline}.LabeledList__label{width:1%;white-space:nowrap;min-width:60px}.LabeledList__buttons{width:.1%;white-space:nowrap;text-align:right;padding-top:1px;padding-bottom:0}.Modal{background-color:#252525;max-width:calc(100% - 1rem);padding:1rem}.NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#000;background-color:#bb9b68;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.NoticeBox--color--black{color:#fff;background-color:#000}.NoticeBox--color--white{color:#000;background-color:#b3b3b3}.NoticeBox--color--red{color:#fff;background-color:#701f1f}.NoticeBox--color--orange{color:#fff;background-color:#854114}.NoticeBox--color--yellow{color:#000;background-color:#83710d}.NoticeBox--color--olive{color:#000;background-color:#576015}.NoticeBox--color--green{color:#fff;background-color:#174e24}.NoticeBox--color--teal{color:#fff;background-color:#064845}.NoticeBox--color--blue{color:#fff;background-color:#1b4565}.NoticeBox--color--violet{color:#fff;background-color:#3b2864}.NoticeBox--color--purple{color:#fff;background-color:#542663}.NoticeBox--color--pink{color:#fff;background-color:#802257}.NoticeBox--color--brown{color:#fff;background-color:#4c3729}.NoticeBox--color--grey{color:#fff;background-color:#3e3e3e}.NoticeBox--color--good{color:#fff;background-color:#2e4b1a}.NoticeBox--color--average{color:#fff;background-color:#7b4e13}.NoticeBox--color--bad{color:#fff;background-color:#701f1f}.NoticeBox--color--label{color:#fff;background-color:#53565a}.NoticeBox--type--info{color:#fff;background-color:#235982}.NoticeBox--type--success{color:#fff;background-color:#1e662f}.NoticeBox--type--warning{color:#fff;background-color:#a95219}.NoticeBox--type--danger{color:#fff;background-color:#8f2828}.Input{position:relative;display:inline-block;width:120px;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.Input--fluid{display:block;width:auto}.Input__baseline{display:inline-block;color:transparent}.Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.NumberInput{position:relative;display:inline-block;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:2px;color:#88bfff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.NumberInput--fluid{display:block}.NumberInput__content{margin-left:6px}.NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #88bfff;background-color:#88bfff}.NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:transparent;transition:border-color .5s}.ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.ProgressBar__fill--animated{transition:background-color .5s,width .5s}.ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.ProgressBar--color--default{border:1px solid #3e6189}.ProgressBar--color--default .ProgressBar__fill{background-color:#3e6189}.ProgressBar--color--black{border:1px solid #000!important}.ProgressBar--color--black .ProgressBar__fill{background-color:#000}.ProgressBar--color--white{border:1px solid #d9d9d9!important}.ProgressBar--color--white .ProgressBar__fill{background-color:#d9d9d9}.ProgressBar--color--red{border:1px solid #bd2020!important}.ProgressBar--color--red .ProgressBar__fill{background-color:#bd2020}.ProgressBar--color--orange{border:1px solid #d95e0c!important}.ProgressBar--color--orange .ProgressBar__fill{background-color:#d95e0c}.ProgressBar--color--yellow{border:1px solid #d9b804!important}.ProgressBar--color--yellow .ProgressBar__fill{background-color:#d9b804}.ProgressBar--color--olive{border:1px solid #9aad14!important}.ProgressBar--color--olive .ProgressBar__fill{background-color:#9aad14}.ProgressBar--color--green{border:1px solid #1b9638!important}.ProgressBar--color--green .ProgressBar__fill{background-color:#1b9638}.ProgressBar--color--teal{border:1px solid #009a93!important}.ProgressBar--color--teal .ProgressBar__fill{background-color:#009a93}.ProgressBar--color--blue{border:1px solid #1c71b1!important}.ProgressBar--color--blue .ProgressBar__fill{background-color:#1c71b1}.ProgressBar--color--violet{border:1px solid #552dab!important}.ProgressBar--color--violet .ProgressBar__fill{background-color:#552dab}.ProgressBar--color--purple{border:1px solid #8b2baa!important}.ProgressBar--color--purple .ProgressBar__fill{background-color:#8b2baa}.ProgressBar--color--pink{border:1px solid #cf2082!important}.ProgressBar--color--pink .ProgressBar__fill{background-color:#cf2082}.ProgressBar--color--brown{border:1px solid #8c5836!important}.ProgressBar--color--brown .ProgressBar__fill{background-color:#8c5836}.ProgressBar--color--grey{border:1px solid #646464!important}.ProgressBar--color--grey .ProgressBar__fill{background-color:#646464}.ProgressBar--color--good{border:1px solid #4d9121!important}.ProgressBar--color--good .ProgressBar__fill{background-color:#4d9121}.ProgressBar--color--average{border:1px solid #cd7a0d!important}.ProgressBar--color--average .ProgressBar__fill{background-color:#cd7a0d}.ProgressBar--color--bad{border:1px solid #bd2020!important}.ProgressBar--color--bad .ProgressBar__fill{background-color:#bd2020}.ProgressBar--color--label{border:1px solid #657a94!important}.ProgressBar--color--label .ProgressBar__fill{background-color:#657a94}.Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.Section:last-child{margin-bottom:0}.Section__title{position:relative;padding:6px;border-bottom:2px solid #4972a1}.Section__titleText{font-size:14px;font-weight:700}.Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.Section__content{padding:8px 6px}.Section--fill{display:flex;flex-direction:column;height:100%}.Section--fill .Section__content{flex-grow:1}.Section--level--1 .Section__titleText{font-size:14px}.Section--level--2 .Section__titleText{font-size:13px}.Section--level--3 .Section__titleText{font-size:12px}.Section--level--2,.Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.Slider{cursor:e-resize}.Slider__cursorOffset{position:absolute;top:0;left:0;bottom:0;transition:none!important}.Slider__cursor{position:absolute;top:0;right:-1px;bottom:0;width:0;border-left:2px solid #fff}.Slider__pointer{position:absolute;right:-5px;bottom:-4px;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #fff}.Slider__popupValue{position:absolute;right:0;top:-22px;padding:2px 4px;background-color:#000;transform:translateX(50%);white-space:nowrap}.Table{display:table;width:100%;border-collapse:collapse;border-spacing:0;margin:0}.Table--collapsing{width:auto}.Table__row{display:table-row}.Table__cell{display:table-cell;padding:0 3px}.Table__cell:first-child{padding-left:0}.Table__cell:last-child{padding-right:0}.Table__cell--header,.Table__row--header .Table__cell{font-weight:700;padding-bottom:6px}.Table__cell--collapsing{width:1%;white-space:nowrap}.Tabs--horizontal{border-bottom:2px solid hsla(0,0%,100%,.1);margin-bottom:6px}.Tabs--horizontal .Tabs__tab--altSelection:after{content:"";position:absolute;bottom:0;right:0;left:0;height:2px;width:100%;background-color:#fff;border-radius:2px}.Tabs--vertical{margin-right:9px}.Tabs--vertical .Tabs__tabBox{border-right:2px solid hsla(0,0%,100%,.1);vertical-align:top}.Tabs--vertical .Tabs__tab{display:block!important;margin-right:0!important;margin-bottom:0;padding:1px 9px 0 6px;border-bottom:2px solid hsla(0,0%,100%,.1)}.Tabs--vertical .Tabs__tab:last-child{border-bottom:0}.Tabs--vertical .Tabs__tab--altSelection:after{content:"";position:absolute;top:0;bottom:0;right:0;height:100%;width:3px;background-color:#fff;border-radius:2px}.TextArea{overflow:hidden;position:relative;display:inline-block;height:"100%";border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:2px;background-color:#bb9b68;margin-right:2px;line-height:17px;overflow:visible;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%}.TextArea .TextArea_filler{word-wrap:break-word;box-sizing:border-box;width:100%;padding:2px 2px 1.5em;visibility:hidden}.TextArea .TextArea--fluid{display:block;width:auto;height:auto}.TextArea .TextArea__baseline{display:inline-block;color:transparent}.TextArea .TextArea__textarea{display:block;top:0;bottom:0;left:0;right:0;border:0;outline:0;font-size:12px;line-height:17px;height:17px;margin:0;font-family:inherit;background-color:transparent;color:inherit;word-wrap:break-word;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:2px;width:100%;overflow:hidden;position:absolute;height:100%}.TextArea .TextArea__textarea:-ms-input-placeholder{font-style:italic;color:#777}.Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400}.Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;background-color:#000;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.Tooltip--long:after{width:250px;white-space:normal}.Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.Tooltip--bottom:after,.Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.Tooltip--bottom:after{top:100%;left:50%}.Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.Tooltip--left:hover:after,.Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.Tooltip--right:after{top:50%;left:100%}.Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.CameraConsole__left{position:absolute;top:0;bottom:0;left:0;width:220px}.CameraConsole__right{position:absolute;top:0;bottom:0;left:220px;right:0;background-color:rgba(0,0,0,.33)}.CameraConsole__toolbar{left:0;margin:3px 12px 0}.CameraConsole__toolbar,.CameraConsole__toolbarRight{position:absolute;top:0;right:0;height:24px;line-height:24px}.CameraConsole__toolbarRight{margin:4px 6px 0}.CameraConsole__map{position:absolute;top:26px;bottom:0;left:0;right:0;margin:6px;text-align:center}.CameraConsole__map .NoticeBox{margin-top:calc(50% - 24px)}.NuclearBomb__displayBox{background-color:#002003;border:4px inset #e8e4c9;color:#03e017;font-size:24px;font-family:monospace;padding:6px}.NuclearBomb__Button--keypad{background-color:#e8e4c9;border-color:#e8e4c9}.NuclearBomb__Button--keypad:hover{background-color:#f7f6ee!important;border-color:#f7f6ee!important}.NuclearBomb__Button--1{background-color:#d3cfb7!important;border-color:#d3cfb7!important;color:#a9a692!important}.NuclearBomb__Button--E{background-color:#d9b804!important;border-color:#d9b804!important}.NuclearBomb__Button--E:hover{background-color:#f3d00e!important;border-color:#f3d00e!important}.NuclearBomb__Button--C{background-color:#bd2020!important;border-color:#bd2020!important}.NuclearBomb__Button--C:hover{background-color:#d52b2b!important;border-color:#d52b2b!important}.NuclearBomb__NTIcon{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDQyNSAyMDAiIG9wYWNpdHk9Ii4zMyI+PHBhdGggZD0iTTE3OC4wMDQuMDM5SDEwNi44YTYuNzYxIDYuMDI2IDAgMDAtNi43NjEgNi4wMjV2MTg3Ljg3MmE2Ljc2MSA2LjAyNiAwIDAwNi43NjEgNi4wMjVoNTMuMTA3YTYuNzYxIDYuMDI2IDAgMDA2Ljc2Mi02LjAyNVY5Mi4zOTJsNzIuMjE2IDEwNC43YTYuNzYxIDYuMDI2IDAgMDA1Ljc2IDIuODdIMzE4LjJhNi43NjEgNi4wMjYgMCAwMDYuNzYxLTYuMDI2VjYuMDY0QTYuNzYxIDYuMDI2IDAgMDAzMTguMi4wNGgtNTQuNzE3YTYuNzYxIDYuMDI2IDAgMDAtNi43NiA2LjAyNXYxMDIuNjJMMTgzLjc2MyAyLjkwOWE2Ljc2MSA2LjAyNiAwIDAwLTUuNzYtMi44N3pNNC44NDUgMjIuMTA5QTEzLjQxMiAxMi41MDIgMCAwMTEzLjQ3OC4wMzloNjYuMTE4QTUuMzY1IDUgMCAwMTg0Ljk2IDUuMDR2NzkuODh6TTQyMC4xNTUgMTc3Ljg5MWExMy40MTIgMTIuNTAyIDAgMDEtOC42MzMgMjIuMDdoLTY2LjExOGE1LjM2NSA1IDAgMDEtNS4zNjUtNS4wMDF2LTc5Ljg4eiIvPjwvc3ZnPg==);background-size:70%;background-position:50%;background-repeat:no-repeat}.Roulette{font-family:Palatino}.Roulette__board{display:table;width:100%;border-collapse:collapse;border:2px solid #fff;margin:0}.Roulette__board-row{padding:0;margin:0}.Roulette__board-cell{display:table-cell;padding:0;margin:0;border:2px solid #fff;font-family:Palatino}.Roulette__board-cell:first-child{padding-left:0}.Roulette__board-cell:last-child{padding-right:0}.Roulette__board-extrabutton{text-align:center;font-size:20px;font-weight:700;height:28px;border:none!important;margin:0!important;padding-top:4px!important;color:#fff!important}.Roulette__lowertable{margin-top:8px;margin-left:80px;margin-right:80px;border-collapse:collapse;border:2px solid #fff;border-spacing:0}.Roulette__lowertable--cell{border:2px solid #fff;padding:0;margin:0}.Roulette__lowertable--betscell{vertical-align:top}.Roulette__lowertable--spinresult{text-align:center;font-size:100px;font-weight:700;vertical-align:middle}.Roulette__lowertable--spinresult-black{background-color:#000}.Roulette__lowertable--spinresult-red{background-color:#db2828}.Roulette__lowertable--spinresult-green{background-color:#20b142}.Roulette__lowertable--spinbutton{margin:0!important;border:none!important;font-size:50px;line-height:60px!important;text-align:center;font-weight:700}.Roulette__lowertable--header{width:1%;text-align:center;font-size:20px;font-weight:700}.Layout,.Layout *{scrollbar-base-color:#1c1c1c;scrollbar-face-color:#3b3b3b;scrollbar-3dlight-color:#252525;scrollbar-highlight-color:#252525;scrollbar-track-color:#1c1c1c;scrollbar-arrow-color:#929292;scrollbar-shadow-color:#3b3b3b}.Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden}.Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.NtosHeader__left{position:absolute;left:12px}.NtosHeader__right{position:absolute;right:12px}.NtosHeader__icon{margin-top:-9px;margin-bottom:-6px;vertical-align:middle}.NtosWindow__header{position:absolute;top:0;left:0;right:0;height:28px;line-height:27px;background-color:rgba(0,0,0,.5);font-family:Consolas,monospace;font-size:14px;user-select:none;-ms-user-select:none}.NtosWindow__content .Layout__content{margin-top:28px;font-family:Consolas,monospace;font-size:14px}.TitleBar{background-color:#363636;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#363636;transition:color .25s,background-color .25s}.TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.TitleBar__minimize{position:absolute;top:6px;right:46px}.TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.TitleBar__devBuildIndicator{position:absolute;top:6px;right:52px;min-width:20px;padding:2px 4px;background-color:rgba(91,170,39,.75);color:#fff;text-align:center}.Window{bottom:0;right:0;color:#fff;background-color:#252525;background-image:linear-gradient(180deg,#2a2a2a 0,#202020)}.Window,.Window__titleBar{position:fixed;top:0;left:0}.Window__titleBar{z-index:1;width:100%;height:32px}.Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.Window__contentPadding{margin:6px;height:calc(100% - 12px)}.Window__contentPadding:after{height:0}.Layout__content--scrollable .Window__contentPadding:after{display:block;content:"";height:6px}.Window__dimmer{top:0;background-color:rgba(62,62,62,.25);pointer-events:none}.Window__dimmer,.Window__toast{position:fixed;bottom:0;left:0;right:0}.Window__toast{font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#131313;color:hsla(0,0%,100%,.8)}.Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.Layout__content{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDQyNSAyMDAiIG9wYWNpdHk9Ii4zMyI+PHBhdGggZD0iTTE3OC4wMDQuMDM5SDEwNi44YTYuNzYxIDYuMDI2IDAgMDAtNi43NjEgNi4wMjV2MTg3Ljg3MmE2Ljc2MSA2LjAyNiAwIDAwNi43NjEgNi4wMjVoNTMuMTA3YTYuNzYxIDYuMDI2IDAgMDA2Ljc2Mi02LjAyNVY5Mi4zOTJsNzIuMjE2IDEwNC43YTYuNzYxIDYuMDI2IDAgMDA1Ljc2IDIuODdIMzE4LjJhNi43NjEgNi4wMjYgMCAwMDYuNzYxLTYuMDI2VjYuMDY0QTYuNzYxIDYuMDI2IDAgMDAzMTguMi4wNGgtNTQuNzE3YTYuNzYxIDYuMDI2IDAgMDAtNi43NiA2LjAyNXYxMDIuNjJMMTgzLjc2MyAyLjkwOWE2Ljc2MSA2LjAyNiAwIDAwLTUuNzYtMi44N3pNNC44NDUgMjIuMTA5QTEzLjQxMiAxMi41MDIgMCAwMTEzLjQ3OC4wMzloNjYuMTE4QTUuMzY1IDUgMCAwMTg0Ljk2IDUuMDR2NzkuODh6TTQyMC4xNTUgMTc3Ljg5MWExMy40MTIgMTIuNTAyIDAgMDEtOC42MzMgMjIuMDdoLTY2LjExOGE1LjM2NSA1IDAgMDEtNS4zNjUtNS4wMDF2LTc5Ljg4eiIvPjwvc3ZnPg==);background-size:70%;background-position:50%;background-repeat:no-repeat}.theme-abductor .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-abductor .Button:last-child{margin-right:0}.theme-abductor .Button .fa,.theme-abductor .Button .far,.theme-abductor .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-abductor .Button--hasContent .fa,.theme-abductor .Button--hasContent .far,.theme-abductor .Button--hasContent .fas{margin-right:3px}.theme-abductor .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-abductor .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-abductor .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#ad2350;color:#fff}.theme-abductor .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--default:focus,.theme-abductor .Button--color--default:hover{background-color:#c42f60;color:#fff}.theme-abductor .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-abductor .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--caution:focus,.theme-abductor .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-abductor .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-abductor .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--danger:focus,.theme-abductor .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-abductor .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#2a314a;color:#fff;background-color:rgba(42,49,74,0);color:hsla(0,0%,100%,.5)}.theme-abductor .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--transparent:focus,.theme-abductor .Button--color--transparent:hover{background-color:#373e59;color:#fff}.theme-abductor .Button--disabled{background-color:#363636!important}.theme-abductor .Button--selected{transition:color 50ms,background-color 50ms;background-color:#465899;color:#fff}.theme-abductor .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--selected:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--selected:focus,.theme-abductor .Button--selected:hover{background-color:#5569ad;color:#fff}.theme-abductor .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#a82d55;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-abductor .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-abductor .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-abductor .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-abductor .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-abductor .Input{position:relative;display:inline-block;width:120px;border:1px solid #404b6e;border:1px solid rgba(64,75,110,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-abductor .Input--fluid{display:block;width:auto}.theme-abductor .Input__baseline{display:inline-block;color:transparent}.theme-abductor .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-abductor .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-abductor .NumberInput{position:relative;display:inline-block;border:1px solid #404b6e;border:1px solid rgba(64,75,110,.75);border-radius:2px;color:#404b6e;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-abductor .NumberInput--fluid{display:block}.theme-abductor .NumberInput__content{margin-left:6px}.theme-abductor .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-abductor .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #404b6e;background-color:#404b6e}.theme-abductor .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-abductor .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-abductor .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-abductor .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-abductor .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-abductor .ProgressBar--color--default{border:1px solid #931e44}.theme-abductor .ProgressBar--color--default .ProgressBar__fill{background-color:#931e44}.theme-abductor .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-abductor .Section:last-child{margin-bottom:0}.theme-abductor .Section__title{position:relative;padding:6px;border-bottom:2px solid #ad2350}.theme-abductor .Section__titleText{font-size:14px;font-weight:700}.theme-abductor .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-abductor .Section__content{padding:8px 6px}.theme-abductor .Section--fill{display:flex;flex-direction:column;height:100%}.theme-abductor .Section--fill .Section__content{flex-grow:1}.theme-abductor .Section--level--1 .Section__titleText{font-size:14px}.theme-abductor .Section--level--2 .Section__titleText{font-size:13px}.theme-abductor .Section--level--3 .Section__titleText{font-size:12px}.theme-abductor .Section--level--2,.theme-abductor .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-abductor .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400}.theme-abductor .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;background-color:#a82d55;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-abductor .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-abductor .Tooltip--long:after{width:250px;white-space:normal}.theme-abductor .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-abductor .Tooltip--bottom:after,.theme-abductor .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-abductor .Tooltip--bottom:after{top:100%;left:50%}.theme-abductor .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-abductor .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-abductor .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-abductor .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-abductor .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-abductor .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-abductor .Tooltip--left:hover:after,.theme-abductor .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-abductor .Tooltip--right:after{top:50%;left:100%}.theme-abductor .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-abductor .Layout,.theme-abductor .Layout *{scrollbar-base-color:#202538;scrollbar-face-color:#384263;scrollbar-3dlight-color:#2a314a;scrollbar-highlight-color:#2a314a;scrollbar-track-color:#202538;scrollbar-arrow-color:#818db8;scrollbar-shadow-color:#384263}.theme-abductor .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden}.theme-abductor .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-abductor .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#2a314a;background-image:linear-gradient(180deg,#353e5e 0,#1f2436)}.theme-abductor .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-abductor .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-abductor .Window__contentPadding{margin:6px;height:calc(100% - 12px)}.theme-abductor .Window__contentPadding:after{height:0}.theme-abductor .Layout__content--scrollable .Window__contentPadding:after{display:block;content:"";height:6px}.theme-abductor .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(68,76,104,.25);pointer-events:none}.theme-abductor .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#151925;color:hsla(0,0%,100%,.8)}.theme-abductor .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-abductor .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-abductor .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-abductor .TitleBar{background-color:#9e1b46;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-abductor .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#9e1b46;transition:color .25s,background-color .25s}.theme-abductor .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-abductor .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-abductor .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-abductor .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-abductor .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-abductor .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-abductor .TitleBar__devBuildIndicator{position:absolute;top:6px;right:52px;min-width:20px;padding:2px 4px;background-color:rgba(91,170,39,.75);color:#fff;text-align:center}.theme-abductor .Layout__content{background-image:none}.theme-cardtable .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:0;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-cardtable .Button:last-child{margin-right:0}.theme-cardtable .Button .fa,.theme-cardtable .Button .far,.theme-cardtable .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-cardtable .Button--hasContent .fa,.theme-cardtable .Button--hasContent .far,.theme-cardtable .Button--hasContent .fas{margin-right:3px}.theme-cardtable .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-cardtable .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-cardtable .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#117039;color:#fff}.theme-cardtable .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--default:focus,.theme-cardtable .Button--color--default:hover{background-color:#1c8247;color:#fff}.theme-cardtable .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-cardtable .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--caution:focus,.theme-cardtable .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-cardtable .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-cardtable .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--danger:focus,.theme-cardtable .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-cardtable .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#117039;color:#fff;background-color:rgba(17,112,57,0);color:hsla(0,0%,100%,.5)}.theme-cardtable .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--transparent:focus,.theme-cardtable .Button--color--transparent:hover{background-color:#1c8247;color:#fff}.theme-cardtable .Button--disabled{background-color:#363636!important}.theme-cardtable .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-cardtable .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--selected:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--selected:focus,.theme-cardtable .Button--selected:hover{background-color:#b31212;color:#fff}.theme-cardtable .Input{position:relative;display:inline-block;width:120px;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:0;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-cardtable .Input--fluid{display:block;width:auto}.theme-cardtable .Input__baseline{display:inline-block;color:transparent}.theme-cardtable .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-cardtable .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-cardtable .NumberInput{position:relative;display:inline-block;border:1px solid #fff;border:1px solid hsla(0,0%,100%,.75);border-radius:0;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-cardtable .NumberInput--fluid{display:block}.theme-cardtable .NumberInput__content{margin-left:6px}.theme-cardtable .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-cardtable .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #fff;background-color:#fff}.theme-cardtable .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-cardtable .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:0;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-cardtable .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-cardtable .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-cardtable .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-cardtable .ProgressBar--color--default{border:1px solid #000}.theme-cardtable .ProgressBar--color--default .ProgressBar__fill{background-color:#000}.theme-cardtable .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-cardtable .Section:last-child{margin-bottom:0}.theme-cardtable .Section__title{position:relative;padding:6px;border-bottom:2px solid #000}.theme-cardtable .Section__titleText{font-size:14px;font-weight:700}.theme-cardtable .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-cardtable .Section__content{padding:8px 6px}.theme-cardtable .Section--fill{display:flex;flex-direction:column;height:100%}.theme-cardtable .Section--fill .Section__content{flex-grow:1}.theme-cardtable .Section--level--1 .Section__titleText{font-size:14px}.theme-cardtable .Section--level--2 .Section__titleText{font-size:13px}.theme-cardtable .Section--level--3 .Section__titleText{font-size:12px}.theme-cardtable .Section--level--2,.theme-cardtable .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-cardtable .Layout,.theme-cardtable .Layout *{scrollbar-base-color:#0d542b;scrollbar-face-color:#16914a;scrollbar-3dlight-color:#117039;scrollbar-highlight-color:#117039;scrollbar-track-color:#0d542b;scrollbar-arrow-color:#5ae695;scrollbar-shadow-color:#16914a}.theme-cardtable .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden}.theme-cardtable .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-cardtable .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#117039;background-image:linear-gradient(180deg,#117039 0,#117039)}.theme-cardtable .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-cardtable .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-cardtable .Window__contentPadding{margin:6px;height:calc(100% - 12px)}.theme-cardtable .Window__contentPadding:after{height:0}.theme-cardtable .Layout__content--scrollable .Window__contentPadding:after{display:block;content:"";height:6px}.theme-cardtable .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(39,148,85,.25);pointer-events:none}.theme-cardtable .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#09381d;color:hsla(0,0%,100%,.8)}.theme-cardtable .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-cardtable .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-cardtable .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-cardtable .TitleBar{background-color:#381608;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-cardtable .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#381608;transition:color .25s,background-color .25s}.theme-cardtable .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-cardtable .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-cardtable .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-cardtable .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-cardtable .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-cardtable .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-cardtable .TitleBar__devBuildIndicator{position:absolute;top:6px;right:52px;min-width:20px;padding:2px 4px;background-color:rgba(91,170,39,.75);color:#fff;text-align:center}.theme-cardtable .Button{border:2px solid #fff}.theme-hackerman .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-hackerman .Button:last-child{margin-right:0}.theme-hackerman .Button .fa,.theme-hackerman .Button .far,.theme-hackerman .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-hackerman .Button--hasContent .fa,.theme-hackerman .Button--hasContent .far,.theme-hackerman .Button--hasContent .fas{margin-right:3px}.theme-hackerman .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-hackerman .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-hackerman .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#0f0;color:#000}.theme-hackerman .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--default:focus,.theme-hackerman .Button--color--default:hover{background-color:#26ff26;color:#000}.theme-hackerman .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-hackerman .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--caution:focus,.theme-hackerman .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-hackerman .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-hackerman .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--danger:focus,.theme-hackerman .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-hackerman .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#121b12;color:#fff;background-color:rgba(18,27,18,0);color:hsla(0,0%,100%,.5)}.theme-hackerman .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--transparent:focus,.theme-hackerman .Button--color--transparent:hover{background-color:#1d271d;color:#fff}.theme-hackerman .Button--disabled{background-color:#4a6a4a!important}.theme-hackerman .Button--selected{transition:color 50ms,background-color 50ms;background-color:#0f0;color:#000}.theme-hackerman .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--selected:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--selected:focus,.theme-hackerman .Button--selected:hover{background-color:#26ff26;color:#000}.theme-hackerman .Input{position:relative;display:inline-block;width:120px;border:1px solid #0f0;border:1px solid rgba(0,255,0,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-hackerman .Input--fluid{display:block;width:auto}.theme-hackerman .Input__baseline{display:inline-block;color:transparent}.theme-hackerman .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-hackerman .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-hackerman .Modal{background-color:#121b12;max-width:calc(100% - 1rem);padding:1rem}.theme-hackerman .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-hackerman .Section:last-child{margin-bottom:0}.theme-hackerman .Section__title{position:relative;padding:6px;border-bottom:2px solid #0f0}.theme-hackerman .Section__titleText{font-size:14px;font-weight:700}.theme-hackerman .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-hackerman .Section__content{padding:8px 6px}.theme-hackerman .Section--fill{display:flex;flex-direction:column;height:100%}.theme-hackerman .Section--fill .Section__content{flex-grow:1}.theme-hackerman .Section--level--1 .Section__titleText{font-size:14px}.theme-hackerman .Section--level--2 .Section__titleText{font-size:13px}.theme-hackerman .Section--level--3 .Section__titleText{font-size:12px}.theme-hackerman .Section--level--2,.theme-hackerman .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-hackerman .Layout,.theme-hackerman .Layout *{scrollbar-base-color:#0e140e;scrollbar-face-color:#253725;scrollbar-3dlight-color:#121b12;scrollbar-highlight-color:#121b12;scrollbar-track-color:#0e140e;scrollbar-arrow-color:#74a274;scrollbar-shadow-color:#253725}.theme-hackerman .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden}.theme-hackerman .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-hackerman .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#121b12;background-image:linear-gradient(180deg,#121b12 0,#121b12)}.theme-hackerman .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-hackerman .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-hackerman .Window__contentPadding{margin:6px;height:calc(100% - 12px)}.theme-hackerman .Window__contentPadding:after{height:0}.theme-hackerman .Layout__content--scrollable .Window__contentPadding:after{display:block;content:"";height:6px}.theme-hackerman .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(40,50,40,.25);pointer-events:none}.theme-hackerman .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#090e09;color:hsla(0,0%,100%,.8)}.theme-hackerman .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-hackerman .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-hackerman .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-hackerman .TitleBar{background-color:#223d22;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-hackerman .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#223d22;transition:color .25s,background-color .25s}.theme-hackerman .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-hackerman .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-hackerman .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-hackerman .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-hackerman .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-hackerman .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-hackerman .TitleBar__devBuildIndicator{position:absolute;top:6px;right:52px;min-width:20px;padding:2px 4px;background-color:rgba(91,170,39,.75);color:#fff;text-align:center}.theme-hackerman .Layout__content{background-image:none}.theme-hackerman .Button{font-family:monospace;border:2px outset #0a0;outline:1px solid #007a00}.theme-hackerman .candystripe:nth-child(odd){background-color:rgba(0,100,0,.5)}.theme-malfunction .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-malfunction .Button:last-child{margin-right:0}.theme-malfunction .Button .fa,.theme-malfunction .Button .far,.theme-malfunction .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-malfunction .Button--hasContent .fa,.theme-malfunction .Button--hasContent .far,.theme-malfunction .Button--hasContent .fas{margin-right:3px}.theme-malfunction .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-malfunction .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-malfunction .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#910101;color:#fff}.theme-malfunction .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--default:focus,.theme-malfunction .Button--color--default:hover{background-color:#a60b0b;color:#fff}.theme-malfunction .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-malfunction .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--caution:focus,.theme-malfunction .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-malfunction .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-malfunction .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--danger:focus,.theme-malfunction .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-malfunction .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#1b3443;color:#fff;background-color:rgba(27,52,67,0);color:hsla(0,0%,100%,.5)}.theme-malfunction .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--transparent:focus,.theme-malfunction .Button--color--transparent:hover{background-color:#274252;color:#fff}.theme-malfunction .Button--disabled{background-color:#363636!important}.theme-malfunction .Button--selected{transition:color 50ms,background-color 50ms;background-color:#1e5881;color:#fff}.theme-malfunction .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--selected:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--selected:focus,.theme-malfunction .Button--selected:hover{background-color:#2a6894;color:#fff}.theme-malfunction .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#1a3f57;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-malfunction .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-malfunction .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-malfunction .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-malfunction .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-malfunction .Input{position:relative;display:inline-block;width:120px;border:1px solid #910101;border:1px solid rgba(145,1,1,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-malfunction .Input--fluid{display:block;width:auto}.theme-malfunction .Input__baseline{display:inline-block;color:transparent}.theme-malfunction .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-malfunction .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-malfunction .NumberInput{position:relative;display:inline-block;border:1px solid #910101;border:1px solid rgba(145,1,1,.75);border-radius:2px;color:#910101;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-malfunction .NumberInput--fluid{display:block}.theme-malfunction .NumberInput__content{margin-left:6px}.theme-malfunction .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-malfunction .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #910101;background-color:#910101}.theme-malfunction .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-malfunction .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-malfunction .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-malfunction .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-malfunction .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-malfunction .ProgressBar--color--default{border:1px solid #7b0101}.theme-malfunction .ProgressBar--color--default .ProgressBar__fill{background-color:#7b0101}.theme-malfunction .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-malfunction .Section:last-child{margin-bottom:0}.theme-malfunction .Section__title{position:relative;padding:6px;border-bottom:2px solid #910101}.theme-malfunction .Section__titleText{font-size:14px;font-weight:700}.theme-malfunction .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-malfunction .Section__content{padding:8px 6px}.theme-malfunction .Section--fill{display:flex;flex-direction:column;height:100%}.theme-malfunction .Section--fill .Section__content{flex-grow:1}.theme-malfunction .Section--level--1 .Section__titleText{font-size:14px}.theme-malfunction .Section--level--2 .Section__titleText{font-size:13px}.theme-malfunction .Section--level--3 .Section__titleText{font-size:12px}.theme-malfunction .Section--level--2,.theme-malfunction .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-malfunction .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400}.theme-malfunction .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;background-color:#235577;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-malfunction .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-malfunction .Tooltip--long:after{width:250px;white-space:normal}.theme-malfunction .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-malfunction .Tooltip--bottom:after,.theme-malfunction .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-malfunction .Tooltip--bottom:after{top:100%;left:50%}.theme-malfunction .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-malfunction .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-malfunction .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-malfunction .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-malfunction .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-malfunction .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-malfunction .Tooltip--left:hover:after,.theme-malfunction .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-malfunction .Tooltip--right:after{top:50%;left:100%}.theme-malfunction .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-malfunction .Layout,.theme-malfunction .Layout *{scrollbar-base-color:#142732;scrollbar-face-color:#274b61;scrollbar-3dlight-color:#1b3443;scrollbar-highlight-color:#1b3443;scrollbar-track-color:#142732;scrollbar-arrow-color:#6ba2c3;scrollbar-shadow-color:#274b61}.theme-malfunction .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden}.theme-malfunction .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-malfunction .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#1b3443;background-image:linear-gradient(180deg,#244559 0,#12232d)}.theme-malfunction .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-malfunction .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-malfunction .Window__contentPadding{margin:6px;height:calc(100% - 12px)}.theme-malfunction .Window__contentPadding:after{height:0}.theme-malfunction .Layout__content--scrollable .Window__contentPadding:after{display:block;content:"";height:6px}.theme-malfunction .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(50,79,96,.25);pointer-events:none}.theme-malfunction .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#0e1a22;color:hsla(0,0%,100%,.8)}.theme-malfunction .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-malfunction .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-malfunction .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-malfunction .TitleBar{background-color:#1a3f57;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-malfunction .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#1a3f57;transition:color .25s,background-color .25s}.theme-malfunction .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-malfunction .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-malfunction .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-malfunction .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-malfunction .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-malfunction .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-malfunction .TitleBar__devBuildIndicator{position:absolute;top:6px;right:52px;min-width:20px;padding:2px 4px;background-color:rgba(91,170,39,.75);color:#fff;text-align:center}.theme-malfunction .Layout__content{background-image:none}.theme-ntos .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-ntos .Button:last-child{margin-right:0}.theme-ntos .Button .fa,.theme-ntos .Button .far,.theme-ntos .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-ntos .Button--hasContent .fa,.theme-ntos .Button--hasContent .far,.theme-ntos .Button--hasContent .fas{margin-right:3px}.theme-ntos .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-ntos .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-ntos .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#384e68;color:#fff}.theme-ntos .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--default:focus,.theme-ntos .Button--color--default:hover{background-color:#465e7a;color:#fff}.theme-ntos .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-ntos .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--caution:focus,.theme-ntos .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-ntos .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-ntos .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--danger:focus,.theme-ntos .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-ntos .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#1f2b39;color:#fff;background-color:rgba(31,43,57,0);color:rgba(227,240,255,.75)}.theme-ntos .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--transparent:focus,.theme-ntos .Button--color--transparent:hover{background-color:#2b3847;color:#fff}.theme-ntos .Button--disabled{background-color:#999!important}.theme-ntos .Button--selected{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.theme-ntos .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--selected:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--selected:focus,.theme-ntos .Button--selected:hover{background-color:#27ab46;color:#fff}.theme-ntos .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-ntos .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-ntos .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-ntos .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-ntos .ProgressBar--color--default{border:1px solid #384e68}.theme-ntos .ProgressBar--color--default .ProgressBar__fill{background-color:#384e68}.theme-ntos .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-ntos .Section:last-child{margin-bottom:0}.theme-ntos .Section__title{position:relative;padding:6px;border-bottom:2px solid #4972a1}.theme-ntos .Section__titleText{font-size:14px;font-weight:700}.theme-ntos .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-ntos .Section__content{padding:8px 6px}.theme-ntos .Section--fill{display:flex;flex-direction:column;height:100%}.theme-ntos .Section--fill .Section__content{flex-grow:1}.theme-ntos .Section--level--1 .Section__titleText{font-size:14px}.theme-ntos .Section--level--2 .Section__titleText{font-size:13px}.theme-ntos .Section--level--3 .Section__titleText{font-size:12px}.theme-ntos .Section--level--2,.theme-ntos .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-ntos .Layout,.theme-ntos .Layout *{scrollbar-base-color:#17202b;scrollbar-face-color:#2e3f55;scrollbar-3dlight-color:#1f2b39;scrollbar-highlight-color:#1f2b39;scrollbar-track-color:#17202b;scrollbar-arrow-color:#7693b5;scrollbar-shadow-color:#2e3f55}.theme-ntos .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden}.theme-ntos .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-ntos .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#1f2b39;background-image:linear-gradient(180deg,#223040 0,#1b2633)}.theme-ntos .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-ntos .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-ntos .Window__contentPadding{margin:6px;height:calc(100% - 12px)}.theme-ntos .Window__contentPadding:after{height:0}.theme-ntos .Layout__content--scrollable .Window__contentPadding:after{display:block;content:"";height:6px}.theme-ntos .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(55,69,85,.25);pointer-events:none}.theme-ntos .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#0f151d;color:hsla(0,0%,100%,.8)}.theme-ntos .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-ntos .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-ntos .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-ntos .TitleBar{background-color:#2a3b4e;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-ntos .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#2a3b4e;transition:color .25s,background-color .25s}.theme-ntos .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-ntos .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-ntos .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-ntos .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-ntos .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-ntos .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-ntos .TitleBar__devBuildIndicator{position:absolute;top:6px;right:52px;min-width:20px;padding:2px 4px;background-color:rgba(91,170,39,.75);color:#fff;text-align:center}.theme-paper .Tabs--horizontal{border-bottom:2px solid hsla(0,0%,100%,.1);margin-bottom:6px}.theme-paper .Tabs--horizontal .Tabs__tab--altSelection:after{content:"";position:absolute;bottom:0;right:0;left:0;height:2px;width:100%;background-color:#fff;border-radius:2px}.theme-paper .Tabs--vertical{margin-right:9px}.theme-paper .Tabs--vertical .Tabs__tabBox{border-right:2px solid hsla(0,0%,100%,.1);vertical-align:top}.theme-paper .Tabs--vertical .Tabs__tab{display:block!important;margin-right:0!important;margin-bottom:0;padding:1px 9px 0 6px;border-bottom:2px solid hsla(0,0%,100%,.1)}.theme-paper .Tabs--vertical .Tabs__tab:last-child{border-bottom:0}.theme-paper .Tabs--vertical .Tabs__tab--altSelection:after{content:"";position:absolute;top:0;bottom:0;right:0;height:100%;width:3px;background-color:#fff;border-radius:2px}.theme-paper .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.1);box-shadow:inset 0 0 5px rgba(0,0,0,.2);box-sizing:border-box}.theme-paper .Section:last-child{margin-bottom:0}.theme-paper .Section__title{position:relative;padding:6px;border-bottom:2px solid #fff}.theme-paper .Section__titleText{font-size:14px;font-weight:700}.theme-paper .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-paper .Section__content{padding:8px 6px}.theme-paper .Section--fill{display:flex;flex-direction:column;height:100%}.theme-paper .Section--fill .Section__content{flex-grow:1}.theme-paper .Section--level--1 .Section__titleText{font-size:14px}.theme-paper .Section--level--2 .Section__titleText{font-size:13px}.theme-paper .Section--level--3 .Section__titleText{font-size:12px}.theme-paper .Section--level--2,.theme-paper .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-paper .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-paper .Button:last-child{margin-right:0}.theme-paper .Button .fa,.theme-paper .Button .far,.theme-paper .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-paper .Button--hasContent .fa,.theme-paper .Button--hasContent .far,.theme-paper .Button--hasContent .fas{margin-right:3px}.theme-paper .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-paper .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-paper .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#e8e4c9;color:#000}.theme-paper .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-paper .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-paper .Button--color--default:focus,.theme-paper .Button--color--default:hover{background-color:#f7f6ee;color:#000}.theme-paper .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-paper .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-paper .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-paper .Button--color--caution:focus,.theme-paper .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-paper .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-paper .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-paper .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-paper .Button--color--danger:focus,.theme-paper .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-paper .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#fff;color:#000;background-color:hsla(0,0%,100%,0);color:rgba(0,0,0,.5)}.theme-paper .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-paper .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-paper .Button--color--transparent:focus,.theme-paper .Button--color--transparent:hover{background-color:#fff;color:#000}.theme-paper .Button--disabled{background-color:#363636!important}.theme-paper .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-paper .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-paper .Button--selected:focus{transition:color .1s,background-color .1s}.theme-paper .Button--selected:focus,.theme-paper .Button--selected:hover{background-color:#b31212;color:#fff}.theme-paper .Layout,.theme-paper .Layout *{scrollbar-base-color:#bfbfbf;scrollbar-face-color:#fff;scrollbar-3dlight-color:#fff;scrollbar-highlight-color:#fff;scrollbar-track-color:#bfbfbf;scrollbar-arrow-color:#fff;scrollbar-shadow-color:#fff}.theme-paper .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden}.theme-paper .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-paper .Window{position:fixed;top:0;bottom:0;left:0;right:0;background-color:#fff;background-image:linear-gradient(180deg,#fff 0,#fff)}.theme-paper .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-paper .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-paper .Window__contentPadding{margin:6px;height:calc(100% - 12px)}.theme-paper .Window__contentPadding:after{height:0}.theme-paper .Layout__content--scrollable .Window__contentPadding:after{display:block;content:"";height:6px}.theme-paper .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:hsla(0,0%,100%,.25);pointer-events:none}.theme-paper .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:grey;color:hsla(0,0%,100%,.8)}.theme-paper .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-paper .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-paper .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-paper .TitleBar{background-color:#fff;border-bottom:1px solid rgba(0,0,0,.25);box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-paper .TitleBar__clickable{color:rgba(0,0,0,.5);background-color:#fff;transition:color .25s,background-color .25s}.theme-paper .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-paper .TitleBar__title{position:absolute;top:0;left:46px;color:rgba(0,0,0,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-paper .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-paper .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-paper .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-paper .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-paper .TitleBar__devBuildIndicator{position:absolute;top:6px;right:52px;min-width:20px;padding:2px 4px;background-color:rgba(91,170,39,.75);color:#fff;text-align:center}.theme-paper .PaperInput{position:relative;display:inline-block;width:120px;background:transparent;border:none;border-bottom:1px solid #000;outline:none;background-color:rgba(255,255,62,.8);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-paper .PaperInput__baseline{display:inline-block;color:transparent}.theme-paper .PaperInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-paper .PaperInput__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-paper .Layout__content,.theme-paper .Window{background-image:none}.theme-paper .Window{color:#000}.theme-paper .paper-field,.theme-paper .paper-field input:disabled,.theme-paper .paper-text input,.theme-paper .paper-text input:disabled{position:relative;display:inline-block;background:transparent;border:none;border-bottom:1px solid #000;outline:none;background-color:rgba(255,255,62,.8);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-retro .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:0;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-retro .Button:last-child{margin-right:0}.theme-retro .Button .fa,.theme-retro .Button .far,.theme-retro .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-retro .Button--hasContent .fa,.theme-retro .Button--hasContent .far,.theme-retro .Button--hasContent .fas{margin-right:3px}.theme-retro .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-retro .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-retro .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#e8e4c9;color:#000}.theme-retro .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--default:focus,.theme-retro .Button--color--default:hover{background-color:#f7f6ee;color:#000}.theme-retro .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-retro .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--caution:focus,.theme-retro .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-retro .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-retro .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--danger:focus,.theme-retro .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-retro .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#e8e4c9;color:#000;background-color:rgba(232,228,201,0);color:hsla(0,0%,100%,.5)}.theme-retro .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--transparent:focus,.theme-retro .Button--color--transparent:hover{background-color:#f7f6ee;color:#000}.theme-retro .Button--disabled{background-color:#363636!important}.theme-retro .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-retro .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--selected:focus{transition:color .1s,background-color .1s}.theme-retro .Button--selected:focus,.theme-retro .Button--selected:hover{background-color:#b31212;color:#fff}.theme-retro .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:0;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-retro .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-retro .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-retro .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-retro .ProgressBar--color--default{border:1px solid #000}.theme-retro .ProgressBar--color--default .ProgressBar__fill{background-color:#000}.theme-retro .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-retro .Section:last-child{margin-bottom:0}.theme-retro .Section__title{position:relative;padding:6px;border-bottom:2px solid #000}.theme-retro .Section__titleText{font-size:14px;font-weight:700}.theme-retro .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-retro .Section__content{padding:8px 6px}.theme-retro .Section--fill{display:flex;flex-direction:column;height:100%}.theme-retro .Section--fill .Section__content{flex-grow:1}.theme-retro .Section--level--1 .Section__titleText{font-size:14px}.theme-retro .Section--level--2 .Section__titleText{font-size:13px}.theme-retro .Section--level--3 .Section__titleText{font-size:12px}.theme-retro .Section--level--2,.theme-retro .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-retro .Layout,.theme-retro .Layout *{scrollbar-base-color:#c8be7d;scrollbar-face-color:#eae7ce;scrollbar-3dlight-color:#e8e4c9;scrollbar-highlight-color:#e8e4c9;scrollbar-track-color:#c8be7d;scrollbar-arrow-color:#f4f2e4;scrollbar-shadow-color:#eae7ce}.theme-retro .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden}.theme-retro .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-retro .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#e8e4c9;background-image:linear-gradient(180deg,#e8e4c9 0,#e8e4c9)}.theme-retro .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-retro .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-retro .Window__contentPadding{margin:6px;height:calc(100% - 12px)}.theme-retro .Window__contentPadding:after{height:0}.theme-retro .Layout__content--scrollable .Window__contentPadding:after{display:block;content:"";height:6px}.theme-retro .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(251,250,246,.25);pointer-events:none}.theme-retro .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#988d41;color:hsla(0,0%,100%,.8)}.theme-retro .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-retro .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-retro .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-retro .TitleBar{background-color:#585337;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-retro .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#585337;transition:color .25s,background-color .25s}.theme-retro .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-retro .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-retro .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-retro .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-retro .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-retro .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-retro .TitleBar__devBuildIndicator{position:absolute;top:6px;right:52px;min-width:20px;padding:2px 4px;background-color:rgba(91,170,39,.75);color:#fff;text-align:center}.theme-retro .Button{font-family:monospace;color:#161613;border:8px outset #e8e4c9;outline:3px solid #161613}.theme-retro .Layout__content{background-image:none}.theme-syndicate .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-syndicate .Button:last-child{margin-right:0}.theme-syndicate .Button .fa,.theme-syndicate .Button .far,.theme-syndicate .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-syndicate .Button--hasContent .fa,.theme-syndicate .Button--hasContent .far,.theme-syndicate .Button--hasContent .fas{margin-right:3px}.theme-syndicate .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-syndicate .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-syndicate .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#397439;color:#fff}.theme-syndicate .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--default:focus,.theme-syndicate .Button--color--default:hover{background-color:#478647;color:#fff}.theme-syndicate .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-syndicate .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--caution:focus,.theme-syndicate .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-syndicate .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-syndicate .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--danger:focus,.theme-syndicate .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-syndicate .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#550202;color:#fff;background-color:rgba(85,2,2,0);color:hsla(0,0%,100%,.5)}.theme-syndicate .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--transparent:focus,.theme-syndicate .Button--color--transparent:hover{background-color:#650c0c;color:#fff}.theme-syndicate .Button--disabled{background-color:#363636!important}.theme-syndicate .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-syndicate .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--selected:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--selected:focus,.theme-syndicate .Button--selected:hover{background-color:#b31212;color:#fff}.theme-syndicate .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#910101;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-syndicate .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-syndicate .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-syndicate .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-syndicate .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-syndicate .Input{position:relative;display:inline-block;width:120px;border:1px solid #87ce87;border:1px solid rgba(135,206,135,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible}.theme-syndicate .Input--fluid{display:block;width:auto}.theme-syndicate .Input__baseline{display:inline-block;color:transparent}.theme-syndicate .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-syndicate .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-syndicate .NumberInput{position:relative;display:inline-block;border:1px solid #87ce87;border:1px solid rgba(135,206,135,.75);border-radius:2px;color:#87ce87;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-syndicate .NumberInput--fluid{display:block}.theme-syndicate .NumberInput__content{margin-left:6px}.theme-syndicate .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-syndicate .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #87ce87;background-color:#87ce87}.theme-syndicate .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-syndicate .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-syndicate .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-syndicate .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-syndicate .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-syndicate .ProgressBar--color--default{border:1px solid #306330}.theme-syndicate .ProgressBar--color--default .ProgressBar__fill{background-color:#306330}.theme-syndicate .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-syndicate .Section:last-child{margin-bottom:0}.theme-syndicate .Section__title{position:relative;padding:6px;border-bottom:2px solid #397439}.theme-syndicate .Section__titleText{font-size:14px;font-weight:700}.theme-syndicate .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-syndicate .Section__content{padding:8px 6px}.theme-syndicate .Section--fill{display:flex;flex-direction:column;height:100%}.theme-syndicate .Section--fill .Section__content{flex-grow:1}.theme-syndicate .Section--level--1 .Section__titleText{font-size:14px}.theme-syndicate .Section--level--2 .Section__titleText{font-size:13px}.theme-syndicate .Section--level--3 .Section__titleText{font-size:12px}.theme-syndicate .Section--level--2,.theme-syndicate .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-syndicate .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400}.theme-syndicate .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;background-color:#4a0202;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-syndicate .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-syndicate .Tooltip--long:after{width:250px;white-space:normal}.theme-syndicate .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-syndicate .Tooltip--bottom:after,.theme-syndicate .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-syndicate .Tooltip--bottom:after{top:100%;left:50%}.theme-syndicate .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-syndicate .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-syndicate .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-syndicate .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-syndicate .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-syndicate .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-syndicate .Tooltip--left:hover:after,.theme-syndicate .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-syndicate .Tooltip--right:after{top:50%;left:100%}.theme-syndicate .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-syndicate .Layout,.theme-syndicate .Layout *{scrollbar-base-color:#400202;scrollbar-face-color:#7e0303;scrollbar-3dlight-color:#550202;scrollbar-highlight-color:#550202;scrollbar-track-color:#400202;scrollbar-arrow-color:#fa3030;scrollbar-shadow-color:#7e0303}.theme-syndicate .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow-x:hidden;overflow-y:hidden}.theme-syndicate .Layout__content--scrollable{overflow-y:scroll;margin-bottom:0}.theme-syndicate .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#550202;background-image:linear-gradient(180deg,#730303 0,#370101)}.theme-syndicate .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-syndicate .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-syndicate .Window__contentPadding{margin:6px;height:calc(100% - 12px)}.theme-syndicate .Window__contentPadding:after{height:0}.theme-syndicate .Layout__content--scrollable .Window__contentPadding:after{display:block;content:"";height:6px}.theme-syndicate .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(117,22,22,.25);pointer-events:none}.theme-syndicate .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#2b0101;color:hsla(0,0%,100%,.8)}.theme-syndicate .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-syndicate .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-syndicate .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-syndicate .TitleBar{background-color:#910101;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-syndicate .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#910101;transition:color .25s,background-color .25s}.theme-syndicate .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-syndicate .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-syndicate .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-syndicate .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-syndicate .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-syndicate .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-syndicate .TitleBar__devBuildIndicator{position:absolute;top:6px;right:52px;min-width:20px;padding:2px 4px;background-color:rgba(91,170,39,.75);color:#fff;text-align:center}.theme-syndicate .Layout__content{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDIwMCAyODkuNzQyIiBvcGFjaXR5PSIuMzMiPjxwYXRoIGQ9Ik05My41MzggMGMtMTguMTEzIDAtMzQuMjIgMy4xMTItNDguMzI0IDkuMzM0LTEzLjk2NSA2LjIyMi0yNC42MTIgMTUuMDcyLTMxLjk0IDI2LjU0N0M2LjA4NCA0Ny4yMiAyLjk3MiA2MC42MzEgMi45NzIgNzYuMTE2YzAgMTAuNjQ3IDIuNzI1IDIwLjQ2NSA4LjE3NSAyOS40NTMgNS42MTYgOC45ODcgMTQuMDM5IDE3LjM1MiAyNS4yNyAyNS4wOTQgMTEuMjMgNy42MDYgMjYuNTA3IDE1LjQxOSA0NS44MyAyMy40MzggMTkuOTg0IDguMjk2IDM0Ljg0OSAxNS41NTUgNDQuNTkzIDIxLjc3NiA5Ljc0NCA2LjIyMyAxNi43NjEgMTIuODU5IDIxLjA1NSAxOS45MSA0LjI5NSA3LjA1MiA2LjQ0MiAxNS43NjQgNi40NDIgMjYuMTM0IDAgMTYuMTc4LTUuMjAyIDI4LjQ4My0xNS42MDYgMzYuOTE3LTEwLjI0IDguNDM1LTI1LjAyMiAxMi42NTMtNDQuMzQ1IDEyLjY1My0xNC4wMzkgMC0yNS41MTYtMS42Ni0zNC40MzQtNC45NzgtOC45MTgtMy40NTctMTYuMTg2LTguNzExLTIxLjgtMTUuNzYzLTUuNjE2LTcuMDUyLTEwLjA3Ni0xNi42NjEtMTMuMzc5LTI4LjgyOUgwdjU2LjgyN2MzMy44NTcgNy4zMjggNjMuNzQ5IDEwLjk5NCA4OS42NzggMTAuOTk0IDE2LjAyIDAgMzAuNzItMS4zODMgNDQuMDk4LTQuMTQ4IDEzLjU0Mi0yLjkwNCAyNS4xMDQtNy40NjcgMzQuNjgzLTEzLjY5IDkuNzQ0LTYuMzU5IDE3LjM0LTE0LjUxOSAyMi43OS0yNC40NzQgNS40NS0xMC4wOTMgOC4xNzUtMjIuNCA4LjE3NS0zNi45MTcgMC0xMi45OTctMy4zMDItMjQuMzM1LTkuOTA4LTM0LjAxNC02LjQ0LTkuODE4LTE1LjUyNS0xOC41MjctMjcuMjUxLTI2LjEzMi0xMS41NjEtNy42MDQtMjcuOTExLTE1LjgzMS00OS4wNTEtMjQuNjgtMTcuNTA2LTcuMTktMzAuNzItMTMuNjktMzkuNjM4LTE5LjQ5N1M1NC45NjkgOTMuNzU2IDQ5LjQ3OSA4Ny4zMTZjLTUuNDI2LTYuMzY2LTkuNjU4LTE1LjA3LTkuNjU4LTI0Ljg4NyAwLTkuMjY0IDIuMDc1LTE3LjIxNCA2LjIyMy0yMy44NUM1Ny4xNDIgMjQuMTggODcuMzMxIDM2Ljc4MiA5MS4xMiA2Mi45MjVjNC44NCA2Ljc3NSA4Ljg1IDE2LjI0NyAxMi4wMyAyOC40MTVoMjAuNTMydi01NmMtNC40NzktNS45MjQtOS45NTUtMTAuNjMxLTE1LjkwOS0xNC4zNzMgMS42NC40NzkgMy4xOSAxLjAyMyA0LjYzOSAxLjY0IDYuNDk4IDIuNjI2IDEyLjE2OCA3LjMyNyAxNy4wMDcgMTQuMTAzIDQuODQgNi43NzUgOC44NSAxNi4yNDYgMTIuMDMgMjguNDE0IDAgMCA4LjQ4LS4xMjkgOC40OS0uMDAyLjQxNyA2LjQxNS0xLjc1NCA5LjQ1My00LjEyNCAxMi41NjEtMi40MTcgMy4xNy01LjE0NSA2Ljc5LTQuMDAzIDEzLjAwMyAxLjUwOCA4LjIwMyAxMC4xODQgMTAuNTk3IDE0LjYyMiA5LjMxMi0zLjMxOC0uNS01LjMxOC0xLjc1LTUuMzE4LTEuNzVzMS44NzYuOTk5IDUuNjUtMS4zNmMtMy4yNzYuOTU2LTEwLjcwNC0uNzk3LTExLjgtNi43NjMtLjk1OC01LjIwOC45NDYtNy4yOTUgMy40LTEwLjUxNCAyLjQ1NS0zLjIyIDUuMjg1LTYuOTU5IDQuNjg1LTE0LjQ4OWwuMDAzLjAwMmg4LjkyN3YtNTZjLTE1LjA3Mi0zLjg3MS0yNy42NTMtNi4zNi0zNy43NDctNy40NjVDMTE0LjI3OS41NTIgMTA0LjA0NiAwIDkzLjUzNyAwem03MC4zMjEgMTcuMzA5bC4yMzggNDAuMzA1YzEuMzE4IDEuMjI2IDIuNDQgMi4yNzggMy4zNDEgMy4xMDYgNC44NCA2Ljc3NSA4Ljg1IDE2LjI0NiAxMi4wMyAyOC40MTRIMjAwdi01NmMtNi42NzctNC41OTQtMTkuODM2LTEwLjQ3My0zNi4xNC0xNS44MjV6bS0yOC4xMiA1LjYwNWw4LjU2NSAxNy43MTdjLTExLjk3LTYuNDY3LTEzLjg0Ny05LjcxNy04LjU2NS0xNy43MTd6bTIyLjc5NyAwYzIuNzcxIDggMS43ODcgMTEuMjUtNC40OTQgMTcuNzE3bDQuNDk0LTE3LjcxN3ptMTUuMjIyIDI0LjAwOWw4LjU2NSAxNy43MTZjLTExLjk3LTYuNDY2LTEzLjg0Ny05LjcxNy04LjU2NS0xNy43MTZ6bTIyLjc5NyAwYzIuNzcxIDggMS43ODcgMTEuMjUtNC40OTQgMTcuNzE2bDQuNDk0LTE3LjcxNnpNOTcuNDQgNDkuMTNsOC41NjUgMTcuNzE2Yy0xMS45Ny02LjQ2Ny0xMy44NDctOS43MTctOC41NjUtMTcuNzE2em0yMi43OTUgMGMyLjc3MiA3Ljk5OSAxLjc4OCAxMS4yNS00LjQ5MyAxNy43MTZsNC40OTMtMTcuNzE2eiIvPjwvc3ZnPg==)} \ No newline at end of file diff --git a/tgui/packages/tgui/public/tgui.bundle.js b/tgui/packages/tgui/public/tgui.bundle.js index d6f31e69faf..cd4ce30d44d 100644 --- a/tgui/packages/tgui/public/tgui.bundle.js +++ b/tgui/packages/tgui/public/tgui.bundle.js @@ -1 +1 @@ -!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=184)}([function(e,t,n){"use strict";t.__esModule=!0;var o=n(399);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(t[e]=o[e])}))},function(e,t,n){"use strict";t.__esModule=!0,t.useSharedState=t.useLocalState=t.useBackend=t.backendReducer=t.backendSetSharedState=t.backendUpdate=void 0;var o=n(39),r=n(26);t.backendUpdate=function(e){return{type:"backend/update",payload:e}};var a=function(e,t){return{type:"backend/setSharedState",payload:{key:e,nextState:t}}};t.backendSetSharedState=a;t.backendReducer=function(e,t){var n=t.type,r=t.payload;if("backend/update"===n){var a=Object.assign({},e.config,r.config),i=Object.assign({},e.data,r.static_data,r.data),c=Object.assign({},e.shared);if(r.shared)for(var l=0,d=Object.keys(r.shared);l0?r(o(e),9007199254740991):0}},function(e,t,n){"use strict";var o=n(7),r=n(93),a=n(20),i=n(63),c=n(97),l=n(134),d=r("wks"),u=o.Symbol,s=l?u:u&&u.withoutSetter||i;e.exports=function(e){return a(d,e)||(c&&a(u,e)?d[e]=u[e]:d[e]=s("Symbol."+e)),d[e]}},function(e,t,n){"use strict";t.__esModule=!0,t.zipWith=t.zip=t.uniqBy=t.reduce=t.sortBy=t.map=t.filter=t.toKeyedArray=t.toArray=void 0;t.toArray=function(e){if(Array.isArray(e))return e;if("object"==typeof e){var t=Object.prototype.hasOwnProperty,n=[];for(var o in e)t.call(e,o)&&n.push(e[o]);return n}return[]};t.toKeyedArray=function(e,t){return void 0===t&&(t="key"),o((function(e,n){var o;return Object.assign(((o={})[t]=n,o),e)}))(e)};t.filter=function(e){return function(t){if(null===t&&t===undefined)return t;if(Array.isArray(t)){for(var n=[],o=0;oc)return 1}return 0};t.sortBy=function(){for(var e=arguments.length,t=new Array(e),n=0;nn?n:e};t.clamp01=function(e){return e<0?0:e>1?1:e};t.scale=function(e,t,n){return(e-t)/(n-t)};t.round=function(e,t){return!e||isNaN(e)?e:(t|=0,a=(e*=n=Math.pow(10,t))>0|-(e<0),r=Math.abs(e%1)>=.4999999999854481,o=Math.floor(e),r&&(e=o+(a>0)),(r?e:Math.round(e))/n);var n,o,r,a};t.toFixed=function(e,t){return void 0===t&&(t=0),Number(e).toFixed(Math.max(t,0))};var o=function(e,t){return t&&e>=t[0]&&e<=t[1]};t.inRange=o;t.keyOfMatchingRange=function(e,t){for(var n=0,r=Object.keys(t);n0&&(t.style=l),t};t.computeBoxProps=C;var g=function(e){var t=e.textColor||e.color,n=e.backgroundColor;return(0,o.classes)([d(t)&&"color-"+t,d(n)&&"color-bg-"+n])};t.computeBoxClassName=g;var b=function(e){var t=e.as,n=void 0===t?"div":t,o=e.className,i=e.children,c=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["as","className","children"]);if("function"==typeof i)return i(C(e));var l="string"==typeof o?o+" "+g(c):g(c),d=C(c);return(0,r.createVNode)(a.VNodeFlags.HtmlElement,n,l,i,a.ChildFlags.UnknownChildren,d)};t.Box=b,b.defaultHooks=o.pureComponentHooks},function(e,t,n){"use strict";function o(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n",apos:"'"};return e.replace(/
    /gi,"\n").replace(/<\/?[a-z0-9-_]+[^>]*>/gi,"").replace(/&(nbsp|amp|quot|lt|gt|apos);/g,(function(e,n){return t[n]})).replace(/&#?([0-9]+);/gi,(function(e,t){var n=parseInt(t,10);return String.fromCharCode(n)})).replace(/&#x?([0-9a-f]+);/gi,(function(e,t){var n=parseInt(t,16);return String.fromCharCode(n)}))};t.buildQueryString=function(e){return Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&")}},function(e,t,n){"use strict";var o={}.hasOwnProperty;e.exports=function(e,t){return o.call(e,t)}},function(e,t,n){"use strict";var o=n(53),r=n(62),a=n(17),i=n(12),c=n(68),l=[].push,d=function(e){var t=1==e,n=2==e,d=3==e,u=4==e,s=6==e,p=5==e||s;return function(m,f,h,C){for(var g,b,N=a(m),v=r(N),V=o(f,h,3),y=i(v.length),k=0,x=C||c,_=t?x(m,y):n?x(m,0):undefined;y>k;k++)if((p||k in v)&&(b=V(g=v[k],k,N),e))if(t)_[k]=b;else if(b)switch(e){case 3:return!0;case 5:return g;case 6:return k;case 2:l.call(_,g)}else if(u)return!1;return s?-1:d||u?u:_}};e.exports={forEach:d(0),map:d(1),filter:d(2),some:d(3),every:d(4),find:d(5),findIndex:d(6)}},function(e,t,n){"use strict";var o=n(9),r=n(74),a=n(51),i=n(27),c=n(36),l=n(20),d=n(128),u=Object.getOwnPropertyDescriptor;t.f=o?u:function(e,t){if(e=i(e),t=c(t,!0),d)try{return u(e,t)}catch(n){}if(l(e,t))return a(!r.f.call(e,t),e[t])}},function(e,t,n){"use strict";e.exports=function(e){if(e==undefined)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){"use strict";var o=n(7),r=n(32),a=n(20),i=n(91),c=n(92),l=n(37),d=l.get,u=l.enforce,s=String(String).split("String");(e.exports=function(e,t,n,c){var l=!!c&&!!c.unsafe,d=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof t||a(n,"name")||r(n,"name",t),u(n).source=s.join("string"==typeof t?t:"")),e!==o?(l?!p&&e[t]&&(d=!0):delete e[t],d?e[t]=n:r(e,t,n)):d?e[t]=n:i(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&d(this).source||c(this)}))},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(20),i=Object.defineProperty,c={},l=function(e){throw e};e.exports=function(e,t){if(a(c,e))return c[e];t||(t={});var n=[][e],d=!!a(t,"ACCESSORS")&&t.ACCESSORS,u=a(t,0)?t[0]:l,s=a(t,1)?t[1]:undefined;return c[e]=!!n&&!r((function(){if(d&&!o)return!0;var e={length:-1};d?i(e,1,{enumerable:!0,get:l}):e[1]=1,n.call(e,u,s)}))}},function(e,t,n){"use strict";function o(e,t,n,o,r,a,i){try{var c=e[a](i),l=c.value}catch(d){return void n(d)}c.done?t(l):Promise.resolve(l).then(o,r)}t.__esModule=!0,t.winset=t.winget=t.runCommand=t.callByondAsync=t.callByond=t.IS_IE8=void 0;var r=window.Byond,a=function(){var e=navigator.userAgent.match(/Trident\/(\d+).+?;/i);if(!e)return null;var t=e[1];return t?parseInt(t,10):null}(),i=null!==a&&a<=6;t.IS_IE8=i;var c=function(e,t){void 0===t&&(t={}),r.call(e,t)};t.callByond=c;var l=function(e,t){void 0===t&&(t={}),window.__callbacks__=window.__callbacks__||[];var n=window.__callbacks__.length,o=new Promise((function(e){window.__callbacks__.push(e)}));return r.call(e,Object.assign({},t,{callback:"__callbacks__["+n+"]"})),o};t.callByondAsync=l;t.runCommand=function(e){return c("winset",{command:e})};var d=function(){var e,t=(e=regeneratorRuntime.mark((function n(e,t){var o;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,l("winget",{id:e,property:t});case 2:return o=n.sent,n.abrupt("return",o[t]);case 4:case"end":return n.stop()}}),n)})),function(){var t=this,n=arguments;return new Promise((function(r,a){var i=e.apply(t,n);function c(e){o(i,r,a,c,l,"next",e)}function l(e){o(i,r,a,c,l,"throw",e)}c(undefined)}))});return function(e,n){return t.apply(this,arguments)}}();t.winget=d;t.winset=function(e,t,n){var o;return c("winset",((o={})[e+"."+t]=n,o))}},function(e,t,n){"use strict";var o=n(62),r=n(23);e.exports=function(e){return o(r(e))}},function(e,t,n){"use strict";var o=n(132),r=n(20),a=n(138),i=n(16).f;e.exports=function(e){var t=o.Symbol||(o.Symbol={});r(t,e)||i(t,e,{value:a.f(e)})}},function(e,t,n){"use strict";var o=n(23),r=/"/g;e.exports=function(e,t,n,a){var i=String(o(e)),c="<"+t;return""!==n&&(c+=" "+n+'="'+String(a).replace(r,""")+'"'),c+">"+i+""}},function(e,t,n){"use strict";var o=n(5);e.exports=function(e){return o((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}},function(e,t,n){"use strict";function o(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n1?r-1:0),c=1;c1?o-1:0),a=1;a0?r:o)(e)}},function(e,t,n){"use strict";e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,t,n){"use strict";var o={}.toString;e.exports=function(e){return o.call(e).slice(8,-1)}},function(e,t,n){"use strict";var o=n(8);e.exports=function(e,t){if(!o(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!o(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){"use strict";var o,r,a,i=n(130),c=n(7),l=n(8),d=n(32),u=n(20),s=n(75),p=n(64),m=c.WeakMap;if(i){var f=new m,h=f.get,C=f.has,g=f.set;o=function(e,t){return g.call(f,e,t),t},r=function(e){return h.call(f,e)||{}},a=function(e){return C.call(f,e)}}else{var b=s("state");p[b]=!0,o=function(e,t){return d(e,b,t),t},r=function(e){return u(e,b)?e[b]:{}},a=function(e){return u(e,b)}}e.exports={set:o,get:r,has:a,enforce:function(e){return a(e)?r(e):o(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=r(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){"use strict";var o=n(20),r=n(17),a=n(75),i=n(104),c=a("IE_PROTO"),l=Object.prototype;e.exports=i?Object.getPrototypeOf:function(e){return e=r(e),o(e,c)?e[c]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?l:null}},function(e,t,n){"use strict";t.__esModule=!0,t.getGasColor=t.getGasLabel=t.RADIO_CHANNELS=t.CSS_COLORS=t.COLORS=t.UI_CLOSE=t.UI_DISABLED=t.UI_UPDATE=t.UI_INTERACTIVE=void 0;t.UI_INTERACTIVE=2;t.UI_UPDATE=1;t.UI_DISABLED=0;t.UI_CLOSE=-1;t.COLORS={department:{captain:"#c06616",security:"#e74c3c",medbay:"#3498db",science:"#9b59b6",engineering:"#f1c40f",cargo:"#f39c12",centcom:"#00c100",other:"#c38312"},damageType:{oxy:"#3498db",toxin:"#2ecc71",burn:"#e67e22",brute:"#e74c3c"}};t.CSS_COLORS=["black","white","red","orange","yellow","olive","green","teal","blue","violet","purple","pink","brown","grey","good","average","bad","label"];t.RADIO_CHANNELS=[{name:"Syndicate",freq:1213,color:"#a52a2a"},{name:"Red Team",freq:1215,color:"#ff4444"},{name:"Blue Team",freq:1217,color:"#3434fd"},{name:"CentCom",freq:1337,color:"#2681a5"},{name:"Supply",freq:1347,color:"#b88646"},{name:"Service",freq:1349,color:"#6ca729"},{name:"Science",freq:1351,color:"#c68cfa"},{name:"Command",freq:1353,color:"#5177ff"},{name:"Medical",freq:1355,color:"#57b8f0"},{name:"Engineering",freq:1357,color:"#f37746"},{name:"Security",freq:1359,color:"#dd3535"},{name:"AI Private",freq:1447,color:"#d65d95"},{name:"Common",freq:1459,color:"#1ecc43"}];var o=[{id:"o2",name:"Oxygen",label:"O\u2082",color:"blue"},{id:"n2",name:"Nitrogen",label:"N\u2082",color:"red"},{id:"co2",name:"Carbon Dioxide",label:"CO\u2082",color:"grey"},{id:"plasma",name:"Plasma",label:"Plasma",color:"pink"},{id:"water_vapor",name:"Water Vapor",label:"H\u2082O",color:"grey"},{id:"nob",name:"Hyper-noblium",label:"Hyper-nob",color:"teal"},{id:"n2o",name:"Nitrous Oxide",label:"N\u2082O",color:"red"},{id:"no2",name:"Nitryl",label:"NO\u2082",color:"brown"},{id:"tritium",name:"Tritium",label:"Tritium",color:"green"},{id:"bz",name:"BZ",label:"BZ",color:"purple"},{id:"stim",name:"Stimulum",label:"Stimulum",color:"purple"},{id:"pluox",name:"Pluoxium",label:"Pluoxium",color:"blue"},{id:"miasma",name:"Miasma",label:"Miasma",color:"olive"},{id:"hydrogen",name:"Hydrogen",label:"H\u2082",color:"white"}];t.getGasLabel=function(e,t){var n=String(e).toLowerCase(),r=o.find((function(e){return e.id===n||e.name.toLowerCase()===n}));return r&&r.label||t||e};t.getGasColor=function(e){var t=String(e).toLowerCase(),n=o.find((function(e){return e.id===t||e.name.toLowerCase()===t}));return n&&n.color}},function(e,t,n){"use strict";var o=n(132),r=n(7),a=function(e){return"function"==typeof e?e:undefined};e.exports=function(e,t){return arguments.length<2?a(o[e])||a(r[e]):o[e]&&o[e][t]||r[e]&&r[e][t]}},function(e,t,n){"use strict";e.exports=!1},function(e,t,n){"use strict";var o=n(5);e.exports=function(e,t){var n=[][e];return!!n&&o((function(){n.call(null,t||function(){throw 1},1)}))}},function(e,t,n){"use strict";var o=n(4),r=n(7),a=n(9),i=n(117),c=n(11),l=n(80),d=n(60),u=n(51),s=n(32),p=n(12),m=n(146),f=n(161),h=n(36),C=n(20),g=n(77),b=n(8),N=n(47),v=n(55),V=n(52).f,y=n(162),k=n(21).forEach,x=n(59),_=n(16),w=n(22),B=n(37),L=n(82),S=B.get,I=B.set,T=_.f,A=w.f,E=Math.round,M=r.RangeError,P=l.ArrayBuffer,R=l.DataView,O=c.NATIVE_ARRAY_BUFFER_VIEWS,j=c.TYPED_ARRAY_TAG,D=c.TypedArray,F=c.TypedArrayPrototype,z=c.aTypedArrayConstructor,W=c.isTypedArray,H=function(e,t){for(var n=0,o=t.length,r=new(z(e))(o);o>n;)r[n]=t[n++];return r},U=function(e,t){T(e,t,{get:function(){return S(this)[t]}})},G=function(e){var t;return e instanceof P||"ArrayBuffer"==(t=g(e))||"SharedArrayBuffer"==t},K=function(e,t){return W(e)&&"symbol"!=typeof t&&t in e&&String(+t)==String(t)},q=function(e,t){return K(e,t=h(t,!0))?u(2,e[t]):A(e,t)},$=function(e,t,n){return!(K(e,t=h(t,!0))&&b(n)&&C(n,"value"))||C(n,"get")||C(n,"set")||n.configurable||C(n,"writable")&&!n.writable||C(n,"enumerable")&&!n.enumerable?T(e,t,n):(e[t]=n.value,e)};a?(O||(w.f=q,_.f=$,U(F,"buffer"),U(F,"byteOffset"),U(F,"byteLength"),U(F,"length")),o({target:"Object",stat:!0,forced:!O},{getOwnPropertyDescriptor:q,defineProperty:$}),e.exports=function(e,t,n){var a=e.match(/\d+$/)[0]/8,c=e+(n?"Clamped":"")+"Array",l="get"+e,u="set"+e,h=r[c],C=h,g=C&&C.prototype,_={},w=function(e,t){T(e,t,{get:function(){return function(e,t){var n=S(e);return n.view[l](t*a+n.byteOffset,!0)}(this,t)},set:function(e){return function(e,t,o){var r=S(e);n&&(o=(o=E(o))<0?0:o>255?255:255&o),r.view[u](t*a+r.byteOffset,o,!0)}(this,t,e)},enumerable:!0})};O?i&&(C=t((function(e,t,n,o){return d(e,C,c),L(b(t)?G(t)?o!==undefined?new h(t,f(n,a),o):n!==undefined?new h(t,f(n,a)):new h(t):W(t)?H(C,t):y.call(C,t):new h(m(t)),e,C)})),v&&v(C,D),k(V(h),(function(e){e in C||s(C,e,h[e])})),C.prototype=g):(C=t((function(e,t,n,o){d(e,C,c);var r,i,l,u=0,s=0;if(b(t)){if(!G(t))return W(t)?H(C,t):y.call(C,t);r=t,s=f(n,a);var h=t.byteLength;if(o===undefined){if(h%a)throw M("Wrong length");if((i=h-s)<0)throw M("Wrong length")}else if((i=p(o)*a)+s>h)throw M("Wrong length");l=i/a}else l=m(t),r=new P(i=l*a);for(I(e,{buffer:r,byteOffset:s,byteLength:i,length:l,view:new R(r)});u2?n-2:0),a=2;a=i){var c=[t].concat(r).map((function(e){return"string"==typeof e?e:e instanceof Error?e.stack||String(e):JSON.stringify(e)})).filter((function(e){return e})).join(" ")+"\nUser Agent: "+navigator.userAgent;(0,o.callByond)("",{src:window.__ref__,action:"tgui:log",log:c})}},u=function(e){return{debug:function(){for(var t=arguments.length,n=new Array(t),o=0;ot?2+3*d-c:0;return((0,o.toFixed)(p,m)+" "+s+n).trim()};t.formatSiUnit=i;t.formatPower=function(e,t){return void 0===t&&(t=0),i(e,t,"W")};t.formatMoney=function(e,t){if(void 0===t&&(t=0),!Number.isFinite(e))return e;var n=(0,o.round)(e,t);t>0&&(n=(0,o.toFixed)(e,t));var r=(n=String(n)).length,a=n.indexOf(".");-1===a&&(a=r);for(var i="",c=0;c0&&c"+e+"<\/script>"},f=function(){try{o=document.domain&&new ActiveXObject("htmlfile")}catch(r){}var e,t;f=o?function(e){e.write(m("")),e.close();var t=e.parentWindow.Object;return e=null,t}(o):((t=d("iframe")).style.display="none",l.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(m("document.F=Object")),e.close(),e.F);for(var n=i.length;n--;)delete f.prototype[i[n]];return f()};c[s]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(p.prototype=r(e),n=new p,p.prototype=null,n[s]=e):n=f(),t===undefined?n:a(n,t)}},function(e,t,n){"use strict";var o=n(16).f,r=n(20),a=n(13)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,a)&&o(e,a,{configurable:!0,value:t})}},function(e,t,n){"use strict";var o=n(13),r=n(47),a=n(16),i=o("unscopables"),c=Array.prototype;c[i]==undefined&&a.f(c,i,{configurable:!0,value:r(null)}),e.exports=function(e){c[i][e]=!0}},function(e,t,n){"use strict";var o=n(10),r=n(34),a=n(13)("species");e.exports=function(e,t){var n,i=o(e).constructor;return i===undefined||(n=o(i)[a])==undefined?t:r(n)}},function(e,t,n){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){"use strict";var o=n(133),r=n(95).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(34);e.exports=function(e,t,n){if(o(e),t===undefined)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,o){return e.call(t,n,o)};case 3:return function(n,o,r){return e.call(t,n,o,r)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){"use strict";var o=n(36),r=n(16),a=n(51);e.exports=function(e,t,n){var i=o(t);i in e?r.f(e,i,a(0,n)):e[i]=n}},function(e,t,n){"use strict";var o=n(10),r=n(144);e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(a){}return function(n,a){return o(n),r(a),t?e.call(n,a):n.__proto__=a,n}}():undefined)},function(e,t,n){"use strict";var o=n(64),r=n(8),a=n(20),i=n(16).f,c=n(63),l=n(72),d=c("meta"),u=0,s=Object.isExtensible||function(){return!0},p=function(e){i(e,d,{value:{objectID:"O"+ ++u,weakData:{}}})},m=e.exports={REQUIRED:!1,fastKey:function(e,t){if(!r(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!a(e,d)){if(!s(e))return"F";if(!t)return"E";p(e)}return e[d].objectID},getWeakData:function(e,t){if(!a(e,d)){if(!s(e))return!0;if(!t)return!1;p(e)}return e[d].weakData},onFreeze:function(e){return l&&m.REQUIRED&&s(e)&&!a(e,d)&&p(e),e}};o[d]=!0},function(e,t,n){"use strict";t.__esModule=!0,t.InterfaceLockNoticeBox=void 0;var o=n(0),r=n(1),a=n(3);t.InterfaceLockNoticeBox=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=e.siliconUser,d=void 0===l?c.siliconUser:l,u=e.locked,s=void 0===u?c.locked:u,p=e.onLockStatusChange,m=void 0===p?function(){return i("lock")}:p,f=e.accessText,h=void 0===f?"an ID card":f;return d?(0,o.createComponentVNode)(2,a.NoticeBox,{color:d&&"grey",children:(0,o.createComponentVNode)(2,a.Flex,{align:"center",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:"Interface lock status:"}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1}),(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Button,{m:0,color:s?"red":"green",icon:s?"lock":"unlock",content:s?"Locked":"Unlocked",onClick:function(){m&&m(!s)}})})]})}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:["Swipe ",h," ","to ",s?"unlock":"lock"," this interface."]})}},function(e,t,n){"use strict";var o=n(35);e.exports=Array.isArray||function(e){return"Array"==o(e)}},function(e,t,n){"use strict";var o=n(40),r=n(16),a=n(13),i=n(9),c=a("species");e.exports=function(e){var t=o(e),n=r.f;i&&t&&!t[c]&&n(t,c,{configurable:!0,get:function(){return this}})}},function(e,t,n){"use strict";e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},function(e,t,n){"use strict";var o=n(23),r="["+n(84)+"]",a=RegExp("^"+r+r+"*"),i=RegExp(r+r+"*$"),c=function(e){return function(t){var n=String(o(t));return 1&e&&(n=n.replace(a,"")),2&e&&(n=n.replace(i,"")),n}};e.exports={start:c(1),end:c(2),trim:c(3)}},function(e,t,n){"use strict";var o=n(5),r=n(35),a="".split;e.exports=o((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==r(e)?a.call(e,""):Object(e)}:Object},function(e,t,n){"use strict";var o=0,r=Math.random();e.exports=function(e){return"Symbol("+String(e===undefined?"":e)+")_"+(++o+r).toString(36)}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var o=n(27),r=n(12),a=n(46),i=function(e){return function(t,n,i){var c,l=o(t),d=r(l.length),u=a(i,d);if(e&&n!=n){for(;d>u;)if((c=l[u++])!=c)return!0}else for(;d>u;u++)if((e||u in l)&&l[u]===n)return e||u||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},function(e,t,n){"use strict";var o=n(5),r=/#|\.prototype\./,a=function(e,t){var n=c[i(e)];return n==d||n!=l&&("function"==typeof t?o(t):!!t)},i=a.normalize=function(e){return String(e).replace(r,".").toLowerCase()},c=a.data={},l=a.NATIVE="N",d=a.POLYFILL="P";e.exports=a},function(e,t,n){"use strict";var o=n(133),r=n(95);e.exports=Object.keys||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(8),r=n(58),a=n(13)("species");e.exports=function(e,t){var n;return r(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!r(n.prototype)?o(n)&&null===(n=n[a])&&(n=undefined):n=undefined),new(n===undefined?Array:n)(0===t?0:t)}},function(e,t,n){"use strict";var o=n(5),r=n(13),a=n(98),i=r("species");e.exports=function(e){return a>=51||!o((function(){var t=[];return(t.constructor={})[i]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var o=n(24);e.exports=function(e,t,n){for(var r in t)o(e,r,t[r],n);return e}},function(e,t,n){"use strict";var o=n(5);e.exports=!o((function(){return Object.isExtensible(Object.preventExtensions({}))}))},function(e,t,n){"use strict";var o=n(10),r=n(100),a=n(12),i=n(53),c=n(101),l=n(141),d=function(e,t){this.stopped=e,this.result=t};(e.exports=function(e,t,n,u,s){var p,m,f,h,C,g,b,N=i(t,n,u?2:1);if(s)p=e;else{if("function"!=typeof(m=c(e)))throw TypeError("Target is not iterable");if(r(m)){for(f=0,h=a(e.length);h>f;f++)if((C=u?N(o(b=e[f])[0],b[1]):N(e[f]))&&C instanceof d)return C;return new d(!1)}p=m.call(e)}for(g=p.next;!(b=g.call(p)).done;)if("object"==typeof(C=l(p,N,b.value,u))&&C&&C instanceof d)return C;return new d(!1)}).stop=function(e){return new d(!0,e)}},function(e,t,n){"use strict";var o={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,a=r&&!o.call({1:2},1);t.f=a?function(e){var t=r(this,e);return!!t&&t.enumerable}:o},function(e,t,n){"use strict";var o=n(93),r=n(63),a=o("keys");e.exports=function(e){return a[e]||(a[e]=r(e))}},function(e,t,n){"use strict";var o=n(40);e.exports=o("navigator","userAgent")||""},function(e,t,n){"use strict";var o=n(102),r=n(35),a=n(13)("toStringTag"),i="Arguments"==r(function(){return arguments}());e.exports=o?r:function(e){var t,n,o;return e===undefined?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(n){}}(t=Object(e),a))?n:i?r(t):"Object"==(o=r(t))&&"function"==typeof t.callee?"Arguments":o}},function(e,t,n){"use strict";var o=n(13)("iterator"),r=!1;try{var a=0,i={next:function(){return{done:!!a++}},"return":function(){r=!0}};i[o]=function(){return this},Array.from(i,(function(){throw 2}))}catch(c){}e.exports=function(e,t){if(!t&&!r)return!1;var n=!1;try{var a={};a[o]=function(){return{next:function(){return{done:n=!0}}}},e(a)}catch(c){}return n}},function(e,t,n){"use strict";var o=n(34),r=n(17),a=n(62),i=n(12),c=function(e){return function(t,n,c,l){o(n);var d=r(t),u=a(d),s=i(d.length),p=e?s-1:0,m=e?-1:1;if(c<2)for(;;){if(p in u){l=u[p],p+=m;break}if(p+=m,e?p<0:s<=p)throw TypeError("Reduce of empty array with no initial value")}for(;e?p>=0:s>p;p+=m)p in u&&(l=n(l,u[p],p,d));return l}};e.exports={left:c(!1),right:c(!0)}},function(e,t,n){"use strict";var o=n(7),r=n(9),a=n(105),i=n(32),c=n(71),l=n(5),d=n(60),u=n(33),s=n(12),p=n(146),m=n(231),f=n(38),h=n(55),C=n(52).f,g=n(16).f,b=n(99),N=n(48),v=n(37),V=v.get,y=v.set,k=o.ArrayBuffer,x=k,_=o.DataView,w=_&&_.prototype,B=Object.prototype,L=o.RangeError,S=m.pack,I=m.unpack,T=function(e){return[255&e]},A=function(e){return[255&e,e>>8&255]},E=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},M=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},P=function(e){return S(e,23,4)},R=function(e){return S(e,52,8)},O=function(e,t){g(e.prototype,t,{get:function(){return V(this)[t]}})},j=function(e,t,n,o){var r=p(n),a=V(e);if(r+t>a.byteLength)throw L("Wrong index");var i=V(a.buffer).bytes,c=r+a.byteOffset,l=i.slice(c,c+t);return o?l:l.reverse()},D=function(e,t,n,o,r,a){var i=p(n),c=V(e);if(i+t>c.byteLength)throw L("Wrong index");for(var l=V(c.buffer).bytes,d=i+c.byteOffset,u=o(+r),s=0;sH;)(F=W[H++])in x||i(x,F,k[F]);z.constructor=x}h&&f(w)!==B&&h(w,B);var U=new _(new x(2)),G=w.setInt8;U.setInt8(0,2147483648),U.setInt8(1,2147483649),!U.getInt8(0)&&U.getInt8(1)||c(w,{setInt8:function(e,t){G.call(this,e,t<<24>>24)},setUint8:function(e,t){G.call(this,e,t<<24>>24)}},{unsafe:!0})}else x=function(e){d(this,x,"ArrayBuffer");var t=p(e);y(this,{bytes:b.call(new Array(t),0),byteLength:t}),r||(this.byteLength=t)},_=function(e,t,n){d(this,_,"DataView"),d(e,x,"DataView");var o=V(e).byteLength,a=u(t);if(a<0||a>o)throw L("Wrong offset");if(a+(n=n===undefined?o-a:s(n))>o)throw L("Wrong length");y(this,{buffer:e,byteLength:n,byteOffset:a}),r||(this.buffer=e,this.byteLength=n,this.byteOffset=a)},r&&(O(x,"byteLength"),O(_,"buffer"),O(_,"byteLength"),O(_,"byteOffset")),c(_.prototype,{getInt8:function(e){return j(this,1,e)[0]<<24>>24},getUint8:function(e){return j(this,1,e)[0]},getInt16:function(e){var t=j(this,2,e,arguments.length>1?arguments[1]:undefined);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=j(this,2,e,arguments.length>1?arguments[1]:undefined);return t[1]<<8|t[0]},getInt32:function(e){return M(j(this,4,e,arguments.length>1?arguments[1]:undefined))},getUint32:function(e){return M(j(this,4,e,arguments.length>1?arguments[1]:undefined))>>>0},getFloat32:function(e){return I(j(this,4,e,arguments.length>1?arguments[1]:undefined),23)},getFloat64:function(e){return I(j(this,8,e,arguments.length>1?arguments[1]:undefined),52)},setInt8:function(e,t){D(this,1,e,T,t)},setUint8:function(e,t){D(this,1,e,T,t)},setInt16:function(e,t){D(this,2,e,A,t,arguments.length>2?arguments[2]:undefined)},setUint16:function(e,t){D(this,2,e,A,t,arguments.length>2?arguments[2]:undefined)},setInt32:function(e,t){D(this,4,e,E,t,arguments.length>2?arguments[2]:undefined)},setUint32:function(e,t){D(this,4,e,E,t,arguments.length>2?arguments[2]:undefined)},setFloat32:function(e,t){D(this,4,e,P,t,arguments.length>2?arguments[2]:undefined)},setFloat64:function(e,t){D(this,8,e,R,t,arguments.length>2?arguments[2]:undefined)}});N(x,"ArrayBuffer"),N(_,"DataView"),e.exports={ArrayBuffer:x,DataView:_}},function(e,t,n){"use strict";var o=n(4),r=n(7),a=n(66),i=n(24),c=n(56),l=n(73),d=n(60),u=n(8),s=n(5),p=n(78),m=n(48),f=n(82);e.exports=function(e,t,n){var h=-1!==e.indexOf("Map"),C=-1!==e.indexOf("Weak"),g=h?"set":"add",b=r[e],N=b&&b.prototype,v=b,V={},y=function(e){var t=N[e];i(N,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(C&&!u(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return C&&!u(e)?undefined:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(C&&!u(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(a(e,"function"!=typeof b||!(C||N.forEach&&!s((function(){(new b).entries().next()})))))v=n.getConstructor(t,e,h,g),c.REQUIRED=!0;else if(a(e,!0)){var k=new v,x=k[g](C?{}:-0,1)!=k,_=s((function(){k.has(1)})),w=p((function(e){new b(e)})),B=!C&&s((function(){for(var e=new b,t=5;t--;)e[g](t,t);return!e.has(-0)}));w||((v=t((function(t,n){d(t,v,e);var o=f(new b,t,v);return n!=undefined&&l(n,o[g],o,h),o}))).prototype=N,N.constructor=v),(_||B)&&(y("delete"),y("has"),h&&y("get")),(B||x)&&y(g),C&&N.clear&&delete N.clear}return V[e]=v,o({global:!0,forced:v!=b},V),m(v,e),C||n.setStrong(v,e,h),v}},function(e,t,n){"use strict";var o=n(8),r=n(55);e.exports=function(e,t,n){var a,i;return r&&"function"==typeof(a=t.constructor)&&a!==n&&o(i=a.prototype)&&i!==n.prototype&&r(e,i),e}},function(e,t,n){"use strict";var o=Math.expm1,r=Math.exp;e.exports=!o||o(10)>22025.465794806718||o(10)<22025.465794806718||-2e-17!=o(-2e-17)?function(e){return 0==(e=+e)?e:e>-1e-6&&e<1e-6?e+e*e/2:r(e)-1}:o},function(e,t,n){"use strict";e.exports="\t\n\x0B\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},function(e,t,n){"use strict";var o=n(41),r=n(7),a=n(5);e.exports=o||!a((function(){var e=Math.random();__defineSetter__.call(null,e,(function(){})),delete r[e]}))},function(e,t,n){"use strict";var o=n(10);e.exports=function(){var e=o(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},function(e,t,n){"use strict";var o,r,a=n(86),i=n(111),c=RegExp.prototype.exec,l=String.prototype.replace,d=c,u=(o=/a/,r=/b*/g,c.call(o,"a"),c.call(r,"a"),0!==o.lastIndex||0!==r.lastIndex),s=i.UNSUPPORTED_Y||i.BROKEN_CARET,p=/()??/.exec("")[1]!==undefined;(u||p||s)&&(d=function(e){var t,n,o,r,i=this,d=s&&i.sticky,m=a.call(i),f=i.source,h=0,C=e;return d&&(-1===(m=m.replace("y","")).indexOf("g")&&(m+="g"),C=String(e).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==e[i.lastIndex-1])&&(f="(?: "+f+")",C=" "+C,h++),n=new RegExp("^(?:"+f+")",m)),p&&(n=new RegExp("^"+f+"$(?!\\s)",m)),u&&(t=i.lastIndex),o=c.call(d?n:i,C),d?o?(o.input=o.input.slice(h),o[0]=o[0].slice(h),o.index=i.lastIndex,i.lastIndex+=o[0].length):i.lastIndex=0:u&&o&&(i.lastIndex=i.global?o.index+o[0].length:t),p&&o&&o.length>1&&l.call(o[0],n,(function(){for(r=1;r")})),u="$0"==="a".replace(/./,"$0"),s=a("replace"),p=!!/./[s]&&""===/./[s]("a","$0"),m=!r((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));e.exports=function(e,t,n,s){var f=a(e),h=!r((function(){var t={};return t[f]=function(){return 7},7!=""[e](t)})),C=h&&!r((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[l]=function(){return n},n.flags="",n[f]=/./[f]),n.exec=function(){return t=!0,null},n[f](""),!t}));if(!h||!C||"replace"===e&&(!d||!u||p)||"split"===e&&!m){var g=/./[f],b=n(f,""[e],(function(e,t,n,o,r){return t.exec===i?h&&!r?{done:!0,value:g.call(t,n,o)}:{done:!0,value:e.call(n,t,o)}:{done:!1}}),{REPLACE_KEEPS_$0:u,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:p}),N=b[0],v=b[1];o(String.prototype,e,N),o(RegExp.prototype,f,2==t?function(e,t){return v.call(e,this,t)}:function(e){return v.call(e,this)})}s&&c(RegExp.prototype[f],"sham",!0)}},function(e,t,n){"use strict";var o=n(35),r=n(87);e.exports=function(e,t){var n=e.exec;if("function"==typeof n){var a=n.call(e,t);if("object"!=typeof a)throw TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==o(e))throw TypeError("RegExp#exec called on incompatible receiver");return r.call(e,t)}},function(e,t,n){"use strict";var o=n(7),r=n(8),a=o.document,i=r(a)&&r(a.createElement);e.exports=function(e){return i?a.createElement(e):{}}},function(e,t,n){"use strict";var o=n(7),r=n(32);e.exports=function(e,t){try{r(o,e,t)}catch(n){o[e]=t}return t}},function(e,t,n){"use strict";var o=n(129),r=Function.toString;"function"!=typeof o.inspectSource&&(o.inspectSource=function(e){return r.call(e)}),e.exports=o.inspectSource},function(e,t,n){"use strict";var o=n(41),r=n(129);(e.exports=function(e,t){return r[e]||(r[e]=t!==undefined?t:{})})("versions",[]).push({version:"3.6.5",mode:o?"pure":"global",copyright:"\xa9 2020 Denis Pushkarev (zloirock.ru)"})},function(e,t,n){"use strict";var o=n(40),r=n(52),a=n(96),i=n(10);e.exports=o("Reflect","ownKeys")||function(e){var t=r.f(i(e)),n=a.f;return n?t.concat(n(e)):t}},function(e,t,n){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(e,t,n){"use strict";t.f=Object.getOwnPropertySymbols},function(e,t,n){"use strict";var o=n(5);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){return!String(Symbol())}))},function(e,t,n){"use strict";var o,r,a=n(7),i=n(76),c=a.process,l=c&&c.versions,d=l&&l.v8;d?r=(o=d.split("."))[0]+o[1]:i&&(!(o=i.match(/Edge\/(\d+)/))||o[1]>=74)&&(o=i.match(/Chrome\/(\d+)/))&&(r=o[1]),e.exports=r&&+r},function(e,t,n){"use strict";var o=n(17),r=n(46),a=n(12);e.exports=function(e){for(var t=o(this),n=a(t.length),i=arguments.length,c=r(i>1?arguments[1]:undefined,n),l=i>2?arguments[2]:undefined,d=l===undefined?n:r(l,n);d>c;)t[c++]=e;return t}},function(e,t,n){"use strict";var o=n(13),r=n(70),a=o("iterator"),i=Array.prototype;e.exports=function(e){return e!==undefined&&(r.Array===e||i[a]===e)}},function(e,t,n){"use strict";var o=n(77),r=n(70),a=n(13)("iterator");e.exports=function(e){if(e!=undefined)return e[a]||e["@@iterator"]||r[o(e)]}},function(e,t,n){"use strict";var o={};o[n(13)("toStringTag")]="z",e.exports="[object z]"===String(o)},function(e,t,n){"use strict";var o=n(4),r=n(216),a=n(38),i=n(55),c=n(48),l=n(32),d=n(24),u=n(13),s=n(41),p=n(70),m=n(143),f=m.IteratorPrototype,h=m.BUGGY_SAFARI_ITERATORS,C=u("iterator"),g=function(){return this};e.exports=function(e,t,n,u,m,b,N){r(n,t,u);var v,V,y,k=function(e){if(e===m&&L)return L;if(!h&&e in w)return w[e];switch(e){case"keys":case"values":case"entries":return function(){return new n(this,e)}}return function(){return new n(this)}},x=t+" Iterator",_=!1,w=e.prototype,B=w[C]||w["@@iterator"]||m&&w[m],L=!h&&B||k(m),S="Array"==t&&w.entries||B;if(S&&(v=a(S.call(new e)),f!==Object.prototype&&v.next&&(s||a(v)===f||(i?i(v,f):"function"!=typeof v[C]&&l(v,C,g)),c(v,x,!0,!0),s&&(p[x]=g))),"values"==m&&B&&"values"!==B.name&&(_=!0,L=function(){return B.call(this)}),s&&!N||w[C]===L||l(w,C,L),p[t]=L,m)if(V={values:k("values"),keys:b?L:k("keys"),entries:k("entries")},N)for(y in V)(h||_||!(y in w))&&d(w,y,V[y]);else o({target:t,proto:!0,forced:h||_},V);return V}},function(e,t,n){"use strict";var o=n(5);e.exports=!o((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},function(e,t,n){"use strict";e.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},function(e,t,n){"use strict";var o=n(12),r=n(107),a=n(23),i=Math.ceil,c=function(e){return function(t,n,c){var l,d,u=String(a(t)),s=u.length,p=c===undefined?" ":String(c),m=o(n);return m<=s||""==p?u:(l=m-s,(d=r.call(p,i(l/p.length))).length>l&&(d=d.slice(0,l)),e?u+d:d+u)}};e.exports={start:c(!1),end:c(!0)}},function(e,t,n){"use strict";var o=n(33),r=n(23);e.exports="".repeat||function(e){var t=String(r(this)),n="",a=o(e);if(a<0||a==Infinity)throw RangeError("Wrong number of repetitions");for(;a>0;(a>>>=1)&&(t+=t))1&a&&(n+=t);return n}},function(e,t,n){"use strict";e.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},function(e,t,n){"use strict";var o,r,a,i=n(7),c=n(5),l=n(35),d=n(53),u=n(136),s=n(90),p=n(155),m=i.location,f=i.setImmediate,h=i.clearImmediate,C=i.process,g=i.MessageChannel,b=i.Dispatch,N=0,v={},V=function(e){if(v.hasOwnProperty(e)){var t=v[e];delete v[e],t()}},y=function(e){return function(){V(e)}},k=function(e){V(e.data)},x=function(e){i.postMessage(e+"",m.protocol+"//"+m.host)};f&&h||(f=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return v[++N]=function(){("function"==typeof e?e:Function(e)).apply(undefined,t)},o(N),N},h=function(e){delete v[e]},"process"==l(C)?o=function(e){C.nextTick(y(e))}:b&&b.now?o=function(e){b.now(y(e))}:g&&!p?(a=(r=new g).port2,r.port1.onmessage=k,o=d(a.postMessage,a,1)):!i.addEventListener||"function"!=typeof postMessage||i.importScripts||c(x)||"file:"===m.protocol?o="onreadystatechange"in s("script")?function(e){u.appendChild(s("script")).onreadystatechange=function(){u.removeChild(this),V(e)}}:function(e){setTimeout(y(e),0)}:(o=x,i.addEventListener("message",k,!1))),e.exports={set:f,clear:h}},function(e,t,n){"use strict";var o=n(8),r=n(35),a=n(13)("match");e.exports=function(e){var t;return o(e)&&((t=e[a])!==undefined?!!t:"RegExp"==r(e))}},function(e,t,n){"use strict";var o=n(5);function r(e,t){return RegExp(e,t)}t.UNSUPPORTED_Y=o((function(){var e=r("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),t.BROKEN_CARET=o((function(){var e=r("^r","gy");return e.lastIndex=2,null!=e.exec("str")}))},function(e,t,n){"use strict";var o=n(33),r=n(23),a=function(e){return function(t,n){var a,i,c=String(r(t)),l=o(n),d=c.length;return l<0||l>=d?e?"":undefined:(a=c.charCodeAt(l))<55296||a>56319||l+1===d||(i=c.charCodeAt(l+1))<56320||i>57343?e?c.charAt(l):a:e?c.slice(l,l+2):i-56320+(a-55296<<10)+65536}};e.exports={codeAt:a(!1),charAt:a(!0)}},function(e,t,n){"use strict";var o=n(110);e.exports=function(e){if(o(e))throw TypeError("The method doesn't accept regular expressions");return e}},function(e,t,n){"use strict";var o=n(13)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[o]=!1,"/./"[e](t)}catch(r){}}return!1}},function(e,t,n){"use strict";var o=n(112).charAt;e.exports=function(e,t,n){return t+(n?o(e,t).length:1)}},function(e,t,n){"use strict";var o=n(5),r=n(84);e.exports=function(e){return o((function(){return!!r[e]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[e]()||r[e].name!==e}))}},function(e,t,n){"use strict";var o=n(7),r=n(5),a=n(78),i=n(11).NATIVE_ARRAY_BUFFER_VIEWS,c=o.ArrayBuffer,l=o.Int8Array;e.exports=!i||!r((function(){l(1)}))||!r((function(){new l(-1)}))||!a((function(e){new l,new l(null),new l(1.5),new l(e)}),!0)||r((function(){return 1!==new l(new c(2),1,undefined).length}))},function(e,t,n){"use strict";t.__esModule=!0,t.vecNormalize=t.vecLength=t.vecInverse=t.vecScale=t.vecDivide=t.vecMultiply=t.vecSubtract=t.vecAdd=t.vecCreate=void 0;var o=n(14);t.vecCreate=function(){for(var e=arguments.length,t=new Array(e),n=0;n=48&&o<=90?String.fromCharCode(o):"["+o+"]"},d=function(e){var t=window.event?e.which:e.keyCode,n=e.ctrlKey,o=e.altKey,r=e.shiftKey;return{keyCode:t,ctrlKey:n,altKey:o,shiftKey:r,hasModifierKeys:n||o||r,keyString:l(n,o,r,t)}},u=function(){for(var e=0,t=Object.keys(c);e=0||(r[n]=e[n]);return r}var f=(0,l.createLogger)("Button"),h=function(e){var t=e.className,n=e.fluid,l=e.icon,p=e.color,h=e.disabled,C=e.selected,g=e.tooltip,b=e.tooltipPosition,N=e.ellipsis,v=e.content,V=e.iconRotation,y=e.iconSpin,k=e.children,x=e.onclick,_=e.onClick,w=m(e,["className","fluid","icon","color","disabled","selected","tooltip","tooltipPosition","ellipsis","content","iconRotation","iconSpin","children","onclick","onClick"]),B=!(!v&&!k);return x&&f.warn("Lowercase 'onclick' is not supported on Button and lowercase prop names are discouraged in general. Please use a camelCase'onClick' instead and read: https://infernojs.org/docs/guides/event-handling"),(0,o.normalizeProps)((0,o.createComponentVNode)(2,d.Box,Object.assign({className:(0,r.classes)(["Button",n&&"Button--fluid",h&&"Button--disabled",C&&"Button--selected",B&&"Button--hasContent",N&&"Button--ellipsis",p&&"string"==typeof p?"Button--color--"+p:"Button--color--default",t]),tabIndex:!h&&"0",unselectable:a.IS_IE8,onclick:function(e){(0,c.refocusLayout)(),!h&&_&&_(e)},onKeyDown:function(e){var t=window.event?e.which:e.keyCode;return t===i.KEY_SPACE||t===i.KEY_ENTER?(e.preventDefault(),void(!h&&_&&_(e))):t===i.KEY_ESCAPE?(e.preventDefault(),void(0,c.refocusLayout)()):void 0}},w,{children:[l&&(0,o.createComponentVNode)(2,u.Icon,{name:l,rotation:V,spin:y}),v,k,g&&(0,o.createComponentVNode)(2,s.Tooltip,{content:g,position:b})]})))};t.Button=h,h.defaultHooks=r.pureComponentHooks;var C=function(e){var t=e.checked,n=m(e,["checked"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({color:"transparent",icon:t?"check-square-o":"square-o",selected:t},n)))};t.ButtonCheckbox=C,h.Checkbox=C;var g=function(e){function t(){var t;return(t=e.call(this)||this).state={clickedOnce:!1},t.handleClick=function(){t.state.clickedOnce&&t.setClickedOnce(!1)},t}p(t,e);var n=t.prototype;return n.setClickedOnce=function(e){var t=this;this.setState({clickedOnce:e}),e?setTimeout((function(){return window.addEventListener("click",t.handleClick)})):window.removeEventListener("click",this.handleClick)},n.render=function(){var e=this,t=this.props,n=t.confirmContent,r=void 0===n?"Confirm?":n,a=t.confirmColor,i=void 0===a?"bad":a,c=t.confirmIcon,l=t.icon,d=t.color,u=t.content,s=t.onClick,p=m(t,["confirmContent","confirmColor","confirmIcon","icon","color","content","onClick"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({content:this.state.clickedOnce?r:u,icon:this.state.clickedOnce?c:l,color:this.state.clickedOnce?i:d,onClick:function(){return e.state.clickedOnce?s():e.setClickedOnce(!0)}},p)))},t}(o.Component);t.ButtonConfirm=g,h.Confirm=g;var b=function(e){function t(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={inInput:!1},t}p(t,e);var n=t.prototype;return n.setInInput=function(e){if(this.setState({inInput:e}),this.inputRef){var t=this.inputRef.current;if(e){t.value=this.props.currentValue||"";try{t.focus(),t.select()}catch(n){}}}},n.commitResult=function(e){if(this.inputRef){var t=this.inputRef.current;if(""!==t.value)return void this.props.onCommit(e,t.value);if(!this.props.defaultValue)return;this.props.onCommit(e,this.props.defaultValue)}},n.render=function(){var e=this,t=this.props,n=t.fluid,a=t.content,c=t.icon,l=t.iconRotation,p=t.iconSpin,f=t.tooltip,h=t.tooltipPosition,C=t.color,g=void 0===C?"default":C,b=(t.placeholder,t.maxLength,m(t,["fluid","content","icon","iconRotation","iconSpin","tooltip","tooltipPosition","color","placeholder","maxLength"]));return(0,o.normalizeProps)((0,o.createComponentVNode)(2,d.Box,Object.assign({className:(0,r.classes)(["Button",n&&"Button--fluid","Button--color--"+g])},b,{onClick:function(){return e.setInInput(!0)},children:[c&&(0,o.createComponentVNode)(2,u.Icon,{name:c,rotation:l,spin:p}),(0,o.createVNode)(1,"div",null,a,0),(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:this.state.inInput?undefined:"none","text-align":"left"},onBlur:function(t){e.state.inInput&&(e.setInInput(!1),e.commitResult(t))},onKeyDown:function(t){if(t.keyCode===i.KEY_ENTER)return e.setInInput(!1),void e.commitResult(t);t.keyCode===i.KEY_ESCAPE&&e.setInInput(!1)}},null,this.inputRef),f&&(0,o.createComponentVNode)(2,s.Tooltip,{content:f,position:h})]})))},t}(o.Component);t.ButtonInput=b,h.Input=b},function(e,t,n){"use strict";t.__esModule=!0,t.Icon=void 0;var o=n(0),r=n(6),a=n(18);var i=/-o$/,c=function(e){var t=e.name,n=e.size,c=e.spin,l=e.className,d=e.style,u=void 0===d?{}:d,s=e.rotation,p=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["name","size","spin","className","style","rotation"]);n&&(u["font-size"]=100*n+"%"),"number"==typeof s&&(u.transform="rotate("+s+"deg)");var m=i.test(t),f=t.replace(i,"");return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"i",className:(0,r.classes)([l,m?"far":"fas","fa-"+f,c&&"fa-spin"]),style:u},p)))};t.Icon=c,c.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.NumberInput=void 0;var o=n(0),r=n(15),a=n(6),i=n(26),c=n(121),l=n(18);var d=function(e){var t,n;function d(t){var n;n=e.call(this,t)||this;var a=t.value;return n.inputRef=(0,o.createRef)(),n.state={value:a,dragging:!1,editing:!1,internalValue:null,origin:null,suppressingFlicker:!1},n.flickerTimer=null,n.suppressFlicker=function(){var e=n.props.suppressFlicker;e>0&&(n.setState({suppressingFlicker:!0}),clearTimeout(n.flickerTimer),n.flickerTimer=setTimeout((function(){return n.setState({suppressingFlicker:!1})}),e))},n.handleDragStart=function(e){var t=n.props.value;n.state.editing||(document.body.style["pointer-events"]="none",n.ref=e.target,n.setState({dragging:!1,origin:e.screenY,value:t,internalValue:t}),n.timer=setTimeout((function(){n.setState({dragging:!0})}),250),n.dragInterval=setInterval((function(){var t=n.state,o=t.dragging,r=t.value,a=n.props.onDrag;o&&a&&a(e,r)}),500),document.addEventListener("mousemove",n.handleDragMove),document.addEventListener("mouseup",n.handleDragEnd))},n.handleDragMove=function(e){var t=n.props,o=t.minValue,a=t.maxValue,i=t.step,c=t.stepPixelSize;n.setState((function(t){var n=Object.assign({},t),l=n.origin-e.screenY;if(t.dragging){var d=Number.isFinite(o)?o%i:0;n.internalValue=(0,r.clamp)(n.internalValue+l*i/c,o-i,a+i),n.value=(0,r.clamp)(n.internalValue-n.internalValue%i+d,o,a),n.origin=e.screenY}else Math.abs(l)>4&&(n.dragging=!0);return n}))},n.handleDragEnd=function(e){var t=n.props,o=t.onChange,r=t.onDrag,a=n.state,i=a.dragging,c=a.value,l=a.internalValue;if(document.body.style["pointer-events"]="auto",clearTimeout(n.timer),clearInterval(n.dragInterval),n.setState({dragging:!1,editing:!i,origin:null}),document.removeEventListener("mousemove",n.handleDragMove),document.removeEventListener("mouseup",n.handleDragEnd),i)n.suppressFlicker(),o&&o(e,c),r&&r(e,c);else if(n.inputRef){var d=n.inputRef.current;d.value=l;try{d.focus(),d.select()}catch(u){}}},n}return n=e,(t=d).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,d.prototype.render=function(){var e=this,t=this.state,n=t.dragging,d=t.editing,u=t.value,s=t.suppressingFlicker,p=this.props,m=p.className,f=p.fluid,h=p.animated,C=p.value,g=p.unit,b=p.minValue,N=p.maxValue,v=p.height,V=p.width,y=p.lineHeight,k=p.fontSize,x=p.format,_=p.onChange,w=p.onDrag,B=C;(n||s)&&(B=u);var L=function(e){return(0,o.createVNode)(1,"div","NumberInput__content",e+(g?" "+g:""),0,{unselectable:i.IS_IE8})},S=h&&!n&&!s&&(0,o.createComponentVNode)(2,c.AnimatedNumber,{value:B,format:x,children:L})||L(x?x(B):B);return(0,o.createComponentVNode)(2,l.Box,{className:(0,a.classes)(["NumberInput",f&&"NumberInput--fluid",m]),minWidth:V,minHeight:v,lineHeight:y,fontSize:k,onMouseDown:this.handleDragStart,children:[(0,o.createVNode)(1,"div","NumberInput__barContainer",(0,o.createVNode)(1,"div","NumberInput__bar",null,1,{style:{height:(0,r.clamp)((B-b)/(N-b)*100,0,100)+"%"}}),2),S,(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:d?undefined:"none",height:v,"line-height":y,"font-size":k},onBlur:function(t){if(d){var n=(0,r.clamp)(t.target.value,b,N);e.setState({editing:!1,value:n}),e.suppressFlicker(),_&&_(t,n),w&&w(t,n)}},onKeyDown:function(t){if(13===t.keyCode){var n=(0,r.clamp)(t.target.value,b,N);return e.setState({editing:!1,value:n}),e.suppressFlicker(),_&&_(t,n),void(w&&w(t,n))}27!==t.keyCode||e.setState({editing:!1})}},null,this.inputRef)]})},d}(o.Component);t.NumberInput=d,d.defaultHooks=a.pureComponentHooks,d.defaultProps={minValue:-Infinity,maxValue:+Infinity,step:1,stepPixelSize:1,suppressFlicker:50}},function(e,t,n){"use strict";t.__esModule=!0,t.GenericUplink=t.Uplink=void 0;var o=n(0),r=n(19),a=n(1),i=n(3),c=n(45),l=n(2);t.Uplink=function(e,t){var n=(0,a.useBackend)(t).data.telecrystals;return(0,o.createComponentVNode)(2,l.Window,{theme:"syndicate",resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,d,{currencyAmount:n,currencySymbol:"TC"})})})};var d=function(e,t){var n,l,d=e.currencyAmount,s=void 0===d?0:d,p=e.currencySymbol,m=void 0===p?"cr":p,f=(0,a.useBackend)(t),h=f.act,C=f.data,g=C.compactMode,b=C.lockable,N=C.categories,v=void 0===N?[]:N,V=(0,a.useLocalState)(t,"searchText",""),y=V[0],k=V[1],x=(0,a.useLocalState)(t,"category",null==(n=v[0])?void 0:n.name),_=x[0],w=x[1],B=(0,r.createSearch)(y,(function(e){return e.name+e.desc})),L=y.length>0&&v.flatMap((function(e){return e.items||[]})).filter(B).filter((function(e,t){return t<25}))||(null==(l=v.find((function(e){return e.name===_})))?void 0:l.items)||[];return(0,o.createComponentVNode)(2,i.Section,{title:(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:s>0?"good":"bad",children:[(0,c.formatMoney)(s)," ",m]}),buttons:(0,o.createFragment)([(0,o.createTextVNode)("Search"),(0,o.createComponentVNode)(2,i.Input,{autoFocus:!0,value:y,onInput:function(e,t){return k(t)},mx:1}),(0,o.createComponentVNode)(2,i.Button,{icon:g?"list":"info",content:g?"Compact":"Detailed",onClick:function(){return h("compact_toggle")}}),!!b&&(0,o.createComponentVNode)(2,i.Button,{icon:"lock",content:"Lock",onClick:function(){return h("lock")}})],0),children:(0,o.createComponentVNode)(2,i.Flex,{children:[0===y.length&&(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:v.map((function(e){var t;return(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:e.name===_,onClick:function(){return w(e.name)},children:[e.name," (",(null==(t=e.items)?void 0:t.length)||0,")"]},e.name)}))})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:[0===L.length&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:0===y.length?"No items in this category.":"No results found."}),(0,o.createComponentVNode)(2,u,{compactMode:y.length>0||g,currencyAmount:s,currencySymbol:m,items:L})]})]})})};t.GenericUplink=d;var u=function(e,t){var n=e.compactMode,l=e.currencyAmount,d=e.currencySymbol,u=(0,a.useBackend)(t).act,s=(0,a.useLocalState)(t,"hoveredItem",{}),p=s[0],m=s[1],f=p&&p.cost||0,h=e.items.map((function(e){var t=p&&p.name!==e.name,n=l-f50?"battery-half":"battery-quarter")||1===t&&"bolt"||2===t&&"battery-full",color:0===t&&(n>50?"yellow":"red")||1===t&&"yellow"||2===t&&"green"}),(0,o.createComponentVNode)(2,l.Box,{inline:!0,width:"36px",textAlign:"right",children:(0,i.toFixed)(n)+"%"})],4)};t.AreaCharge=f,f.defaultHooks=c.pureComponentHooks;var h=function(e){var t=e.status,n=Boolean(2&t),r=Boolean(1&t),a=(n?"On":"Off")+" ["+(r?"auto":"manual")+"]";return(0,o.createComponentVNode)(2,l.ColorBox,{color:n?"good":"bad",content:r?undefined:"M",title:a})};h.defaultHooks=c.pureComponentHooks},function(e,t,n){"use strict";var o;o=function(){return this}();try{o=o||new Function("return this")()}catch(r){"object"==typeof window&&(o=window)}e.exports=o},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(90);e.exports=!o&&!r((function(){return 7!=Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var o=n(7),r=n(91),a=o["__core-js_shared__"]||r("__core-js_shared__",{});e.exports=a},function(e,t,n){"use strict";var o=n(7),r=n(92),a=o.WeakMap;e.exports="function"==typeof a&&/native code/.test(r(a))},function(e,t,n){"use strict";var o=n(20),r=n(94),a=n(22),i=n(16);e.exports=function(e,t){for(var n=r(t),c=i.f,l=a.f,d=0;dl;)o(c,n=t[l++])&&(~a(d,n)||d.push(n));return d}},function(e,t,n){"use strict";var o=n(97);e.exports=o&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(e,t,n){"use strict";var o=n(9),r=n(16),a=n(10),i=n(67);e.exports=o?Object.defineProperties:function(e,t){a(e);for(var n,o=i(t),c=o.length,l=0;c>l;)r.f(e,n=o[l++],t[n]);return e}},function(e,t,n){"use strict";var o=n(40);e.exports=o("document","documentElement")},function(e,t,n){"use strict";var o=n(27),r=n(52).f,a={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function(e){return i&&"[object Window]"==a.call(e)?function(e){try{return r(e)}catch(t){return i.slice()}}(e):r(o(e))}},function(e,t,n){"use strict";var o=n(13);t.f=o},function(e,t,n){"use strict";var o=n(17),r=n(46),a=n(12),i=Math.min;e.exports=[].copyWithin||function(e,t){var n=o(this),c=a(n.length),l=r(e,c),d=r(t,c),u=arguments.length>2?arguments[2]:undefined,s=i((u===undefined?c:r(u,c))-d,c-l),p=1;for(d0;)d in n?n[l]=n[d]:delete n[l],l+=p,d+=p;return n}},function(e,t,n){"use strict";var o=n(58),r=n(12),a=n(53);e.exports=function i(e,t,n,c,l,d,u,s){for(var p,m=l,f=0,h=!!u&&a(u,s,3);f0&&o(p))m=i(e,t,p,r(p.length),m,d-1)-1;else{if(m>=9007199254740991)throw TypeError("Exceed the acceptable array length");e[m]=p}m++}f++}return m}},function(e,t,n){"use strict";var o=n(10);e.exports=function(e,t,n,r){try{return r?t(o(n)[0],n[1]):t(n)}catch(i){var a=e["return"];throw a!==undefined&&o(a.call(e)),i}}},function(e,t,n){"use strict";var o=n(27),r=n(49),a=n(70),i=n(37),c=n(103),l=i.set,d=i.getterFor("Array Iterator");e.exports=c(Array,"Array",(function(e,t){l(this,{type:"Array Iterator",target:o(e),index:0,kind:t})}),(function(){var e=d(this),t=e.target,n=e.kind,o=e.index++;return!t||o>=t.length?(e.target=undefined,{value:undefined,done:!0}):"keys"==n?{value:o,done:!1}:"values"==n?{value:t[o],done:!1}:{value:[o,t[o]],done:!1}}),"values"),a.Arguments=a.Array,r("keys"),r("values"),r("entries")},function(e,t,n){"use strict";var o,r,a,i=n(38),c=n(32),l=n(20),d=n(13),u=n(41),s=d("iterator"),p=!1;[].keys&&("next"in(a=[].keys())?(r=i(i(a)))!==Object.prototype&&(o=r):p=!0),o==undefined&&(o={}),u||l(o,s)||c(o,s,(function(){return this})),e.exports={IteratorPrototype:o,BUGGY_SAFARI_ITERATORS:p}},function(e,t,n){"use strict";var o=n(8);e.exports=function(e){if(!o(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},function(e,t,n){"use strict";var o=n(27),r=n(33),a=n(12),i=n(42),c=n(25),l=Math.min,d=[].lastIndexOf,u=!!d&&1/[1].lastIndexOf(1,-0)<0,s=i("lastIndexOf"),p=c("indexOf",{ACCESSORS:!0,1:0}),m=u||!s||!p;e.exports=m?function(e){if(u)return d.apply(this,arguments)||0;var t=o(this),n=a(t.length),i=n-1;for(arguments.length>1&&(i=l(i,r(arguments[1]))),i<0&&(i=n+i);i>=0;i--)if(i in t&&t[i]===e)return i||0;return-1}:d},function(e,t,n){"use strict";var o=n(33),r=n(12);e.exports=function(e){if(e===undefined)return 0;var t=o(e),n=r(t);if(t!==n)throw RangeError("Wrong length or index");return n}},function(e,t,n){"use strict";var o=n(34),r=n(8),a=[].slice,i={},c=function(e,t,n){if(!(t in i)){for(var o=[],r=0;r1?arguments[1]:undefined,3);t=t?t.next:n.first;)for(o(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!g(this,e)}}),a(u.prototype,n?{get:function(e){var t=g(this,e);return t&&t.value},set:function(e,t){return C(this,0===e?0:e,t)}}:{add:function(e){return C(this,e=0===e?0:e,e)}}),s&&o(u.prototype,"size",{get:function(){return m(this).size}}),u},setStrong:function(e,t,n){var o=t+" Iterator",r=h(t),a=h(o);d(e,t,(function(e,t){f(this,{type:o,target:e,state:r(e),kind:t,last:undefined})}),(function(){for(var e=a(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=undefined,{value:undefined,done:!0})}),n?"entries":"values",!n,!0),u(t)}}},function(e,t,n){"use strict";var o=Math.log;e.exports=Math.log1p||function(e){return(e=+e)>-1e-8&&e<1e-8?e-e*e/2:o(1+e)}},function(e,t,n){"use strict";var o=n(8),r=Math.floor;e.exports=function(e){return!o(e)&&isFinite(e)&&r(e)===e}},function(e,t,n){"use strict";var o=n(7),r=n(61).trim,a=n(84),i=o.parseInt,c=/^[+-]?0[Xx]/,l=8!==i(a+"08")||22!==i(a+"0x16");e.exports=l?function(e,t){var n=r(String(e));return i(n,t>>>0||(c.test(n)?16:10))}:i},function(e,t,n){"use strict";var o=n(9),r=n(67),a=n(27),i=n(74).f,c=function(e){return function(t){for(var n,c=a(t),l=r(c),d=l.length,u=0,s=[];d>u;)n=l[u++],o&&!i.call(c,n)||s.push(e?[n,c[n]]:c[n]);return s}};e.exports={entries:c(!0),values:c(!1)}},function(e,t,n){"use strict";e.exports=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},function(e,t,n){"use strict";var o=n(7);e.exports=o.Promise},function(e,t,n){"use strict";var o=n(76);e.exports=/(iphone|ipod|ipad).*applewebkit/i.test(o)},function(e,t,n){"use strict";var o,r,a,i,c,l,d,u,s=n(7),p=n(22).f,m=n(35),f=n(109).set,h=n(155),C=s.MutationObserver||s.WebKitMutationObserver,g=s.process,b=s.Promise,N="process"==m(g),v=p(s,"queueMicrotask"),V=v&&v.value;V||(o=function(){var e,t;for(N&&(e=g.domain)&&e.exit();r;){t=r.fn,r=r.next;try{t()}catch(n){throw r?i():a=undefined,n}}a=undefined,e&&e.enter()},N?i=function(){g.nextTick(o)}:C&&!h?(c=!0,l=document.createTextNode(""),new C(o).observe(l,{characterData:!0}),i=function(){l.data=c=!c}):b&&b.resolve?(d=b.resolve(undefined),u=d.then,i=function(){u.call(d,o)}):i=function(){f.call(s,o)}),e.exports=V||function(e){var t={fn:e,next:undefined};a&&(a.next=t),r||(r=t,i()),a=t}},function(e,t,n){"use strict";var o=n(10),r=n(8),a=n(158);e.exports=function(e,t){if(o(e),r(t)&&t.constructor===e)return t;var n=a.f(e);return(0,n.resolve)(t),n.promise}},function(e,t,n){"use strict";var o=n(34),r=function(e){var t,n;this.promise=new e((function(e,o){if(t!==undefined||n!==undefined)throw TypeError("Bad Promise constructor");t=e,n=o})),this.resolve=o(t),this.reject=o(n)};e.exports.f=function(e){return new r(e)}},function(e,t,n){"use strict";var o=n(4),r=n(87);o({target:"RegExp",proto:!0,forced:/./.exec!==r},{exec:r})},function(e,t,n){"use strict";var o=n(76);e.exports=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(o)},function(e,t,n){"use strict";var o=n(360);e.exports=function(e,t){var n=o(e);if(n%t)throw RangeError("Wrong offset");return n}},function(e,t,n){"use strict";var o=n(17),r=n(12),a=n(101),i=n(100),c=n(53),l=n(11).aTypedArrayConstructor;e.exports=function(e){var t,n,d,u,s,p,m=o(e),f=arguments.length,h=f>1?arguments[1]:undefined,C=h!==undefined,g=a(m);if(g!=undefined&&!i(g))for(p=(s=g.call(m)).next,m=[];!(u=p.call(s)).done;)m.push(u.value);for(C&&f>2&&(h=c(h,arguments[2],2)),n=r(m.length),d=new(l(this))(n),t=0;n>t;t++)d[t]=C?h(m[t],t):m[t];return d}},function(e,t,n){"use strict";var o=n(71),r=n(56).getWeakData,a=n(10),i=n(8),c=n(60),l=n(73),d=n(21),u=n(20),s=n(37),p=s.set,m=s.getterFor,f=d.find,h=d.findIndex,C=0,g=function(e){return e.frozen||(e.frozen=new b)},b=function(){this.entries=[]},N=function(e,t){return f(e.entries,(function(e){return e[0]===t}))};b.prototype={get:function(e){var t=N(this,e);if(t)return t[1]},has:function(e){return!!N(this,e)},set:function(e,t){var n=N(this,e);n?n[1]=t:this.entries.push([e,t])},"delete":function(e){var t=h(this.entries,(function(t){return t[0]===e}));return~t&&this.entries.splice(t,1),!!~t}},e.exports={getConstructor:function(e,t,n,d){var s=e((function(e,o){c(e,s,t),p(e,{type:t,id:C++,frozen:undefined}),o!=undefined&&l(o,e[d],e,n)})),f=m(t),h=function(e,t,n){var o=f(e),i=r(a(t),!0);return!0===i?g(o).set(t,n):i[o.id]=n,e};return o(s.prototype,{"delete":function(e){var t=f(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t)["delete"](e):n&&u(n,t.id)&&delete n[t.id]},has:function(e){var t=f(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t).has(e):n&&u(n,t.id)}}),o(s.prototype,n?{get:function(e){var t=f(this);if(i(e)){var n=r(e);return!0===n?g(t).get(e):n?n[t.id]:undefined}},set:function(e,t){return h(this,e,t)}}:{add:function(e){return h(this,e,!0)}}),s}}},function(e,t,n){"use strict";t.__esModule=!0,t.setupHotReloading=t.sendLogEntry=void 0;t.sendLogEntry=function(e,t){};t.setupHotReloading=function(){0}},function(e,t,n){"use strict";t.__esModule=!0,t.resizeStartHandler=t.dragStartHandler=t.setupDrag=void 0;var o=n(118),r=n(26);function a(e,t,n,o,r,a,i){try{var c=e[a](i),l=c.value}catch(d){return void n(d)}c.done?t(l):Promise.resolve(l).then(o,r)}var i,c,l,d,u,s=(0,n(44).createLogger)("drag"),p=!1,m=!1,f=[0,0],h=function(e){return(0,r.winget)(e,"pos").then((function(e){return[e.x,e.y]}))},C=function(e,t){return(0,r.winset)(e,"pos",t[0]+","+t[1])},g=function(){var e,t=(e=regeneratorRuntime.mark((function n(e){var t,o,r,a;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return s.log("setting up"),i=e.config.window,n.next=4,h(i);case 4:t=n.sent,f=[t[0]-window.screenLeft,t[1]-window.screenTop],o=b(t),r=o[0],a=o[1],r&&C(i,a),s.debug("current state",{ref:i,screenOffset:f});case 9:case"end":return n.stop()}}),n)})),function(){var t=this,n=arguments;return new Promise((function(o,r){var i=e.apply(t,n);function c(e){a(i,o,r,c,l,"next",e)}function l(e){a(i,o,r,c,l,"throw",e)}c(undefined)}))});return function(e){return t.apply(this,arguments)}}();t.setupDrag=g;var b=function(e){var t=e[0],n=e[1],o=!1;return t<0?(t=0,o=!0):t+window.innerWidth>window.screen.availWidth&&(t=window.screen.availWidth-window.innerWidth,o=!0),n<0?(n=0,o=!0):n+window.innerHeight>window.screen.availHeight&&(n=window.screen.availHeight-window.innerHeight,o=!0),[o,[t,n]]};t.dragStartHandler=function(e){s.log("drag start"),p=!0,c=[window.screenLeft-e.screenX,window.screenTop-e.screenY],document.addEventListener("mousemove",v),document.addEventListener("mouseup",N),v(e)};var N=function k(e){s.log("drag end"),v(e),document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",k),p=!1},v=function(e){p&&(e.preventDefault(),C(i,(0,o.vecAdd)([e.screenX,e.screenY],f,c)))};t.resizeStartHandler=function(e,t){return function(n){l=[e,t],s.log("resize start",l),m=!0,c=[window.screenLeft-n.screenX,window.screenTop-n.screenY],d=[window.innerWidth,window.innerHeight],document.addEventListener("mousemove",y),document.addEventListener("mouseup",V),y(n)}};var V=function x(e){s.log("resize end",u),y(e),document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",x),m=!1},y=function(e){m&&(e.preventDefault(),(u=(0,o.vecAdd)(d,(0,o.vecMultiply)(l,(0,o.vecAdd)([e.screenX,e.screenY],(0,o.vecInverse)([window.screenLeft,window.screenTop]),c,[1,1]))))[0]=Math.max(u[0],250),u[1]=Math.max(u[1],120),function(e,t){(0,r.winset)(e,"size",t[0]+","+t[1])}(i,u))}},function(e,t,n){"use strict";t.__esModule=!0,t.Tooltip=void 0;var o=n(0),r=n(6);t.Tooltip=function(e){var t=e.content,n=e.position,a=void 0===n?"bottom":n,i="string"==typeof t&&t.length>35;return(0,o.createVNode)(1,"div",(0,r.classes)(["Tooltip",i&&"Tooltip--long",a&&"Tooltip--"+a]),null,1,{"data-tooltip":t})}},function(e,t,n){"use strict";t.__esModule=!0,t.Dimmer=void 0;var o=n(0),r=n(6),a=n(18);t.Dimmer=function(e){var t=e.className,n=e.children,i=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className","children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Dimmer"].concat(t))},i,{children:(0,o.createVNode)(1,"div","Dimmer__inner",n,0)})))}},function(e,t,n){"use strict";t.__esModule=!0,t.Divider=void 0;var o=n(0),r=n(6);t.Divider=function(e){var t=e.vertical,n=e.hidden;return(0,o.createVNode)(1,"div",(0,r.classes)(["Divider",n&&"Divider--hidden",t?"Divider--vertical":"Divider--horizontal"]))}},function(e,t,n){"use strict";t.__esModule=!0,t.FlexItem=t.computeFlexItemProps=t.Flex=t.computeFlexProps=void 0;var o=n(0),r=n(6),a=n(26),i=n(18);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t=e.className,n=e.direction,o=e.wrap,i=e.align,l=e.justify,d=e.inline,u=e.spacing,s=void 0===u?0:u,p=c(e,["className","direction","wrap","align","justify","inline","spacing"]);return Object.assign({className:(0,r.classes)(["Flex",a.IS_IE8&&("column"===n?"Flex--ie8--column":"Flex--ie8"),d&&"Flex--inline",s>0&&"Flex--spacing--"+s,t]),style:Object.assign({},p.style,{"flex-direction":n,"flex-wrap":o,"align-items":i,"justify-content":l})},p)};t.computeFlexProps=l;var d=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({},l(e))))};t.Flex=d,d.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.className,n=e.grow,o=e.order,l=e.shrink,d=e.basis,u=void 0===d?e.width:d,s=e.align,p=c(e,["className","grow","order","shrink","basis","align"]);return Object.assign({className:(0,r.classes)(["Flex__item",a.IS_IE8&&"Flex__item--ie8",t]),style:Object.assign({},p.style,{"flex-grow":n,"flex-shrink":l,"flex-basis":(0,i.unit)(u),order:o,"align-self":s})},p)};t.computeFlexItemProps=u;var s=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({},u(e))))};t.FlexItem=s,s.defaultHooks=r.pureComponentHooks,d.Item=s},function(e,t,n){"use strict";t.__esModule=!0,t.TableCell=t.TableRow=t.Table=void 0;var o=n(0),r=n(6),a=n(18);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.className,n=e.collapsing,c=e.children,l=i(e,["className","collapsing","children"]);return(0,o.normalizeProps)((0,o.createVNode)(1,"table",(0,r.classes)(["Table",n&&"Table--collapsing",t,(0,a.computeBoxClassName)(l)]),(0,o.createVNode)(1,"tbody",null,c,0),2,Object.assign({},(0,a.computeBoxProps)(l))))};t.Table=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.className,n=e.header,c=i(e,["className","header"]);return(0,o.normalizeProps)((0,o.createVNode)(1,"tr",(0,r.classes)(["Table__row",n&&"Table__row--header",t,(0,a.computeBoxClassName)(e)]),null,1,Object.assign({},(0,a.computeBoxProps)(c))))};t.TableRow=l,l.defaultHooks=r.pureComponentHooks;var d=function(e){var t=e.className,n=e.collapsing,c=e.header,l=i(e,["className","collapsing","header"]);return(0,o.normalizeProps)((0,o.createVNode)(1,"td",(0,r.classes)(["Table__cell",n&&"Table__cell--collapsing",c&&"Table__cell--header",t,(0,a.computeBoxClassName)(e)]),null,1,Object.assign({},(0,a.computeBoxProps)(l))))};t.TableCell=d,d.defaultHooks=r.pureComponentHooks,c.Row=l,c.Cell=d},function(e,t,n){"use strict";t.__esModule=!0,t.DraggableControl=void 0;var o=n(0),r=n(15),a=n(6),i=n(121);var c=function(e,t){return e.screenX*t[0]+e.screenY*t[1]},l=function(e){var t,n;function a(t){var n;return(n=e.call(this,t)||this).inputRef=(0,o.createRef)(),n.state={value:t.value,dragging:!1,editing:!1,internalValue:null,origin:null,suppressingFlicker:!1},n.flickerTimer=null,n.suppressFlicker=function(){var e=n.props.suppressFlicker;e>0&&(n.setState({suppressingFlicker:!0}),clearTimeout(n.flickerTimer),n.flickerTimer=setTimeout((function(){return n.setState({suppressingFlicker:!1})}),e))},n.handleDragStart=function(e){var t=n.props,o=t.value,r=t.dragMatrix;n.state.editing||(document.body.style["pointer-events"]="none",n.ref=e.target,n.setState({dragging:!1,origin:c(e,r),value:o,internalValue:o}),n.timer=setTimeout((function(){n.setState({dragging:!0})}),250),n.dragInterval=setInterval((function(){var t=n.state,o=t.dragging,r=t.value,a=n.props.onDrag;o&&a&&a(e,r)}),500),document.addEventListener("mousemove",n.handleDragMove),document.addEventListener("mouseup",n.handleDragEnd))},n.handleDragMove=function(e){var t=n.props,o=t.minValue,a=t.maxValue,i=t.step,l=t.stepPixelSize,d=t.dragMatrix;n.setState((function(t){var n=Object.assign({},t),u=c(e,d)-n.origin;if(t.dragging){var s=Number.isFinite(o)?o%i:0;n.internalValue=(0,r.clamp)(n.internalValue+u*i/l,o-i,a+i),n.value=(0,r.clamp)(n.internalValue-n.internalValue%i+s,o,a),n.origin=c(e,d)}else Math.abs(u)>4&&(n.dragging=!0);return n}))},n.handleDragEnd=function(e){var t=n.props,o=t.onChange,r=t.onDrag,a=n.state,i=a.dragging,c=a.value,l=a.internalValue;if(document.body.style["pointer-events"]="auto",clearTimeout(n.timer),clearInterval(n.dragInterval),n.setState({dragging:!1,editing:!i,origin:null}),document.removeEventListener("mousemove",n.handleDragMove),document.removeEventListener("mouseup",n.handleDragEnd),i)n.suppressFlicker(),o&&o(e,c),r&&r(e,c);else if(n.inputRef){var d=n.inputRef.current;d.value=l;try{d.focus(),d.select()}catch(u){}}},n}return n=e,(t=a).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,a.prototype.render=function(){var e=this,t=this.state,n=t.dragging,a=t.editing,c=t.value,l=t.suppressingFlicker,d=this.props,u=d.animated,s=d.value,p=d.unit,m=d.minValue,f=d.maxValue,h=d.format,C=d.onChange,g=d.onDrag,b=d.children,N=d.height,v=d.lineHeight,V=d.fontSize,y=s;(n||l)&&(y=c);var k=function(e){return e+(p?" "+p:"")},x=u&&!n&&!l&&(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:y,format:h,children:k})||k(h?h(y):y),_=(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:a?undefined:"none",height:N,"line-height":v,"font-size":V},onBlur:function(t){if(a){var n=(0,r.clamp)(t.target.value,m,f);e.setState({editing:!1,value:n}),e.suppressFlicker(),C&&C(t,n),g&&g(t,n)}},onKeyDown:function(t){if(13===t.keyCode){var n=(0,r.clamp)(t.target.value,m,f);return e.setState({editing:!1,value:n}),e.suppressFlicker(),C&&C(t,n),void(g&&g(t,n))}27!==t.keyCode||e.setState({editing:!1})}},null,this.inputRef);return b({dragging:n,editing:a,value:s,displayValue:y,displayElement:x,inputElement:_,handleDragStart:this.handleDragStart})},a}(o.Component);t.DraggableControl=l,l.defaultHooks=a.pureComponentHooks,l.defaultProps={minValue:-Infinity,maxValue:+Infinity,step:1,stepPixelSize:1,suppressFlicker:50,dragMatrix:[1,0]}},function(e,t,n){"use strict";t.__esModule=!0,t.LabeledListDivider=t.LabeledListItem=t.LabeledList=void 0;var o=n(0),r=n(6),a=n(18),i=n(168),c=function(e){var t=e.children;return(0,o.createVNode)(1,"table","LabeledList",t,0)};t.LabeledList=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.className,n=e.label,i=e.labelColor,c=void 0===i?"label":i,l=e.color,d=e.textAlign,u=e.buttons,s=e.content,p=e.children;return(0,o.createVNode)(1,"tr",(0,r.classes)(["LabeledList__row",t]),[(0,o.createComponentVNode)(2,a.Box,{as:"td",color:c,className:(0,r.classes)(["LabeledList__cell","LabeledList__label"]),children:n?n+":":null}),(0,o.createComponentVNode)(2,a.Box,{as:"td",color:l,textAlign:d,className:(0,r.classes)(["LabeledList__cell","LabeledList__content"]),colSpan:u?undefined:2,children:[s,p]}),u&&(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",u,0)],0)};t.LabeledListItem=l,l.defaultHooks=r.pureComponentHooks;var d=function(e){var t=e.size?(0,a.unit)(Math.max(0,e.size-1)):0;return(0,o.createVNode)(1,"tr","LabeledList__row",(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,i.Divider),2,{colSpan:3,style:{"padding-top":t,"padding-bottom":t}}),2)};t.LabeledListDivider=d,d.defaultHooks=r.pureComponentHooks,c.Item=l,c.Divider=d},function(e,t,n){"use strict";t.__esModule=!0,t.Window=void 0;var o=n(0),r=n(6),a=n(19),i=n(1),c=n(26),l=n(3),d=n(39),u=n(165),s=n(119),p=n(44),m=n(120);var f=(0,p.createLogger)("Window"),h=function(e){var t,n;function l(){return e.apply(this,arguments)||this}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var p=l.prototype;return p.componentDidMount=function(){(0,m.refocusLayout)()},p.render=function(){var e=this.props,t=e.resizable,n=e.theme,l=e.children,p=(0,i.useBackend)(this.context),h=p.config,C=p.debugLayout,b=h.observer?h.status=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n0&&"yellow",selected:"requests"===p,onClick:function(){return f("requests")},children:["Requests (",g.length,")"]}),!h&&(0,o.createComponentVNode)(2,i.Tabs.Tab,{icon:"shopping-cart",textColor:"cart"!==p&&C.length>0&&"yellow",selected:"cart"===p,onClick:function(){return f("cart")},children:["Checkout (",C.length,")"]})]}),"catalog"===p&&(0,o.createComponentVNode)(2,u),"requests"===p&&(0,o.createComponentVNode)(2,s),"cart"===p&&(0,o.createComponentVNode)(2,m)]})})};var d=function(e,t){var n=(0,a.useBackend)(t),r=n.act,l=n.data,d=l.away,u=l.docked,s=l.loan,p=l.loan_dispatched,m=l.location,f=l.message,h=l.points,C=l.requestonly;return(0,o.createComponentVNode)(2,i.Section,{title:"Cargo",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:h,format:function(e){return(0,c.formatMoney)(e)}})," credits"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shuttle",children:u&&!C&&(0,o.createComponentVNode)(2,i.Button,{content:m,onClick:function(){return r("send")}})||m}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"CentCom Message",children:f}),!!s&&!C&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Loan",children:!p&&(0,o.createComponentVNode)(2,i.Button,{content:"Loan Shuttle",disabled:!(d&&u),onClick:function(){return r("loan")}})||(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Loaned to Centcom"})})]})})},u=function(e,t){var n,l=e.express,d=(0,a.useBackend)(t),u=d.act,s=d.data,m=s.self_paid,f=(0,r.toArray)(s.supplies),h=(0,a.useSharedState)(t,"supply",null==(n=f[0])?void 0:n.name),C=h[0],g=h[1],b=f.find((function(e){return e.name===C}));return(0,o.createComponentVNode)(2,i.Section,{title:"Catalog",buttons:!l&&(0,o.createFragment)([(0,o.createComponentVNode)(2,p),(0,o.createComponentVNode)(2,i.Button.Checkbox,{ml:2,content:"Buy Privately",checked:m,onClick:function(){return u("toggleprivate")}})],4),children:(0,o.createComponentVNode)(2,i.Flex,{children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:e.name===C,onClick:function(){return g(e.name)},children:[e.name," (",e.packs.length,")"]},e.name)}))})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,i.Table,{children:null==b?void 0:b.packs.map((function(e){var t=[];return e.small_item&&t.push("Small"),e.access&&t.push("Restricted"),(0,o.createComponentVNode)(2,i.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,color:"label",textAlign:"right",children:t.join(", ")}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,tooltip:e.desc,tooltipPosition:"left",onClick:function(){return u("add",{id:e.id})},children:[(0,c.formatMoney)(m&&!e.goody?Math.round(1.1*e.cost):e.cost)," cr"]})})]},e.name)}))})})]})})};t.CargoCatalog=u;var s=function(e,t){var n=(0,a.useBackend)(t),r=n.act,l=n.data,d=l.requestonly,u=l.requests||[];return(0,o.createComponentVNode)(2,i.Section,{title:"Active Requests",buttons:!d&&(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Clear",color:"transparent",onClick:function(){return r("denyall")}}),children:[0===u.length&&(0,o.createComponentVNode)(2,i.Box,{color:"good",children:"No Requests"}),u.length>0&&(0,o.createComponentVNode)(2,i.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,color:"label",children:["#",e.id]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.object}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createVNode)(1,"b",null,e.orderer,0)}),(0,o.createComponentVNode)(2,i.Table.Cell,{width:"25%",children:(0,o.createVNode)(1,"i",null,e.reason,0)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:[(0,c.formatMoney)(e.cost)," cr"]}),!d&&(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.Button,{icon:"check",color:"good",onClick:function(){return r("approve",{id:e.id})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",color:"bad",onClick:function(){return r("deny",{id:e.id})}})]})]},e.id)}))})]})},p=function(e,t){var n=(0,a.useBackend)(t),r=n.act,l=n.data,d=l.requestonly,u=l.cart||[],s=u.reduce((function(e,t){return e+t.cost}),0);return d?null:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,mx:1,children:[0===u.length&&"Cart is empty",1===u.length&&"1 item",u.length>=2&&u.length+" items"," ",s>0&&"("+(0,c.formatMoney)(s)+" cr)"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",color:"transparent",content:"Clear",onClick:function(){return r("clear")}})],4)},m=function(e,t){var n=(0,a.useBackend)(t),r=n.act,l=n.data,d=l.requestonly,u=l.away,s=l.docked,m=l.location,f=l.cart||[];return(0,o.createComponentVNode)(2,i.Section,{title:"Current Cart",buttons:(0,o.createComponentVNode)(2,p),children:[0===f.length&&(0,o.createComponentVNode)(2,i.Box,{color:"label",children:"Nothing in cart"}),f.length>0&&(0,o.createComponentVNode)(2,i.Table,{children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,color:"label",children:["#",e.id]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.object}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:!!e.paid&&(0,o.createVNode)(1,"b",null,"[Paid Privately]",16)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:[(0,c.formatMoney)(e.cost)," cr"]}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,i.Button,{icon:"minus",onClick:function(){return r("remove",{id:e.id})}})})]},e.id)}))}),f.length>0&&!d&&(0,o.createComponentVNode)(2,i.Box,{mt:2,children:1===u&&1===s&&(0,o.createComponentVNode)(2,i.Button,{color:"green",style:{"line-height":"28px",padding:"0 12px"},content:"Confirm the order",onClick:function(){return r("send")}})||(0,o.createComponentVNode)(2,i.Box,{opacity:.5,children:["Shuttle in ",m,"."]})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BeakerContents=void 0;var o=n(0),r=n(3);t.BeakerContents=function(e){var t=e.beakerLoaded,n=e.beakerContents;return(0,o.createComponentVNode)(2,r.Box,{children:[!t&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"No beaker loaded."})||0===n.length&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"Beaker is empty."}),n.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{color:"label",children:[e.volume," units of ",e.name]},e.name)}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.LaunchpadConsole=t.LaunchpadControl=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=function(e,t){var n=(0,r.useBackend)(t).act;return(0,o.createComponentVNode)(2,a.Grid,{width:"1px",children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-left",iconRotation:45,mb:1,onClick:function(){return n("move_pos",{x:-1,y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-left",mb:1,onClick:function(){return n("move_pos",{x:-1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",iconRotation:45,mb:1,onClick:function(){return n("move_pos",{x:-1,y:-1})}})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",mb:1,onClick:function(){return n("move_pos",{y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"R",mb:1,onClick:function(){return n("set_pos",{x:0,y:0})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",mb:1,onClick:function(){return n("move_pos",{y:-1})}})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",iconRotation:45,mb:1,onClick:function(){return n("move_pos",{x:1,y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-right",mb:1,onClick:function(){return n("move_pos",{x:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-right",iconRotation:45,mb:1,onClick:function(){return n("move_pos",{x:1,y:-1})}})]})]})},l=function(e,t){var n=e.topLevel,i=(0,r.useBackend)(t),l=i.act,d=i.data,u=d.x,s=d.y,p=d.pad_name,m=d.range;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Input,{value:p,width:"170px",onChange:function(e,t){return l("rename",{name:t})}}),level:n?1:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Remove",color:"bad",onClick:function(){return l("remove")}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Controls",level:2,children:(0,o.createComponentVNode)(2,c)})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Target",level:2,children:(0,o.createComponentVNode)(2,a.Box,{fontSize:"26px",children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"X:"}),(0,o.createComponentVNode)(2,a.NumberInput,{value:u,minValue:-m,maxValue:m,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",stepPixelSize:10,onChange:function(e,t){return l("set_pos",{x:t})}})]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"Y:"}),(0,o.createComponentVNode)(2,a.NumberInput,{value:s,minValue:-m,maxValue:m,stepPixelSize:10,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",onChange:function(e,t){return l("set_pos",{y:t})}})]})]})})})]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"upload",content:"Launch",textAlign:"center",onClick:function(){return l("launch")}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"download",content:"Pull",textAlign:"center",onClick:function(){return l("pull")}})})]})]})};t.LaunchpadControl=l;t.LaunchpadConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,d=n.data,u=d.launchpads,s=void 0===u?[]:u,p=d.selected_id;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:0===s.length&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Pads Connected"})||(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Flex,{minHeight:"190px",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{width:"140px",minHeight:"190px",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,ellipsis:!0,content:e.name,selected:p===e.id,color:"transparent",onClick:function(){return c("select_pad",{id:e.id})}},e.name)}))}),(0,o.createComponentVNode)(2,a.Flex.Item,{minHeight:"100%",children:(0,o.createComponentVNode)(2,a.Divider,{vertical:!0})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,minHeight:"100%",children:p&&(0,o.createComponentVNode)(2,l)||(0,o.createComponentVNode)(2,a.Box,{children:"Please select a pad"})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosCyborgRemoteMonitorContent=t.NtosCyborgRemoteMonitor=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NtosCyborgRemoteMonitor=function(e,t){(0,r.useBackend)(t).data;return(0,o.createComponentVNode)(2,i.NtosWindow,{theme:"ntos",children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.card,d=c.cyborgs,u=void 0===d?[]:d;return u.length?(0,o.createFragment)([!l&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Certain features require an ID card login."}),u.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"terminal",content:"Send Message",color:"blue",disabled:!l,onClick:function(){return i("messagebot",{ref:e.ref})}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:(0,o.createComponentVNode)(2,a.Box,{color:e.status?"bad":e.locked_down?"average":"good",children:e.status?"Not Responding":e.locked_down?"Locked Down":e.shell_discon?"Nominal/Disconnected":"Nominal"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge",children:(0,o.createComponentVNode)(2,a.Box,{color:e.charge<=30?"bad":e.charge<=70?"average":"good",children:"number"==typeof e.charge?e.charge+"%":"Not Found"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Module",children:e.module}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Upgrades",children:e.upgrades})]})},e.ref)}))],0):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No cyborg units detected."})};t.NtosCyborgRemoteMonitorContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.NtosRadarContent=t.NtosRadar=void 0;var o=n(0),r=n(1),a=n(6),i=n(3),c=n(2);t.NtosRadar=function(e,t){return(0,o.createComponentVNode)(2,c.NtosWindow,{theme:"ntos",children:(0,o.createComponentVNode)(2,l)})};var l=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.selected,s=d.object,p=void 0===s?[]:s,m=d.target,f=void 0===m?[]:m,h=d.scanning;return(0,o.createComponentVNode)(2,i.Flex,{direction:"row",hight:"100%",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{position:"relative",width:20.5,hight:"100%",children:(0,o.createComponentVNode)(2,c.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Button,{icon:"redo-alt",content:h?"Scanning...":"Scan",color:"blue",disabled:h,onClick:function(){return l("scan")}}),!p.length&&!h&&(0,o.createVNode)(1,"div",null,"No trackable signals found",16),!h&&p.map((function(e){return(0,o.createVNode)(1,"div",(0,a.classes)(["Button","Button--fluid","Button--color--transparent","Button--ellipsis",e.ref===u&&"Button--selected"]),e.name,0,{title:e.name,onClick:function(){l("selecttarget",{ref:e.ref})}},e.dev)}))]})})}),(0,o.createComponentVNode)(2,i.Flex.Item,{style:{"background-image":'url("ntosradarbackground.png")',"background-position":"center","background-repeat":"no-repeat",top:"20px"},position:"relative",m:1.5,width:45,height:45,children:0===Object.keys(f).length?!!u&&(0,o.createComponentVNode)(2,i.NoticeBox,{position:"absolute",top:20.6,left:1.35,width:42,fontSize:"30px",textAlign:"center",children:"Signal Lost"}):!!f.userot&&(0,o.createComponentVNode)(2,i.Box,{as:"img",src:f.arrowstyle,position:"absolute",top:"20px",left:"243px",style:{transform:"rotate("+f.rot+"deg)"}})||(0,o.createComponentVNode)(2,i.Icon,{name:f.pointer,position:"absolute",size:2,color:f.color,top:10*f.locy+19+"px",left:10*f.locx+16+"px"})})]})};t.NtosRadarContent=l},function(e,t,n){"use strict";t.__esModule=!0,t.RequestKioskContent=t.RequestKiosk=void 0;var o=n(0),r=(n(14),n(31),n(6),n(1)),a=n(3),i=n(45),c=n(2);t.RequestKiosk=function(e,t){return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,l)})})};var l=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.accountName,u=l.requests,s=void 0===u?[]:u,p=l.applicants,m=void 0===p?[]:p,f=l.bountyValue;l.bountyText;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Account",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:"Log out",onClick:function(){return c("clear")}}),children:d||"N/A"})})}),(0,o.createComponentVNode)(2,a.Flex,{mb:1,children:[(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:null==s?void 0:s.map((function(e){return(0,o.createComponentVNode)(2,a.Collapsible,{title:e.owner,width:"300px",children:(0,o.createComponentVNode)(2,a.Section,{width:"300px",children:[(0,o.createComponentVNode)(2,a.Flex,{spacing:1,align:"baseline",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{bold:!0,width:"310px",children:e.owner}),(0,o.createComponentVNode)(2,a.Flex.Item,{width:"100px",children:(0,i.formatMoney)(e.value)+" cr"}),(0,o.createComponentVNode)(2,a.Flex.Item,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"pen-fancy",content:"Apply",onClick:function(){return c("apply",{request:e.acc_number})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"trash-alt",content:"Delete",color:"red",onClick:function(){return c("deleteRequest",{request:e.acc_number})}})]})]}),(0,o.createComponentVNode)(2,a.Section,{align:"center",children:(0,o.createVNode)(1,"i",null,[(0,o.createTextVNode)('"'),e.description,(0,o.createTextVNode)('"')],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Request Applicants",children:null==m?void 0:m.map((function(t){return t.request_id===e.acc_number&&(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,p:.5,backgroundColor:"rgba(0, 0, 69, 0.5)",width:"510px",style:{border:"2px solid rgba(13, 13, 213, 0.7)"},children:t.name}),(0,o.createComponentVNode)(2,a.Flex.Item,{align:"end",children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"cash-register",onClick:function(){return c("payApplicant",{applicant:t.requestee_id,request:e.acc_number})}})})]})}))})]},e.name)},e.name)}))}),(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Collapsible,{title:"New Bounty",width:"220px",color:"green",children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.TextArea,{fluid:!0,height:"250px",width:"200px",backgroundColor:"black",textColor:"white",onChange:function(e,t){return c("bountyText",{bountytext:t})}}),(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.NumberInput,{animate:!0,unit:"cr",minValue:1,maxValue:1e3,value:f,width:"80px",onChange:function(e,t){return c("bountyVal",{bountyval:t})}})}),(0,o.createComponentVNode)(2,a.Button,{icon:"print",content:"Submit bounty",onClick:function(){return c("createBounty")}})]})})})]})],4)};t.RequestKioskContent=l},function(e,t,n){"use strict";t.__esModule=!0,t.StationAlertConsoleContent=t.StationAlertConsole=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.StationAlertConsole=function(){return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t).data.alarms||[],i=n.Fire||[],c=n.Atmosphere||[],l=n.Power||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Fire Alarms",children:(0,o.createVNode)(1,"ul",null,[0===i.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),i.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Atmospherics Alarms",children:(0,o.createVNode)(1,"ul",null,[0===c.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),c.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Alarms",children:(0,o.createVNode)(1,"ul",null,[0===l.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),l.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)})],4)};t.StationAlertConsoleContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.PortableBasicInfo=void 0;var o=n(0),r=n(1),a=n(3);t.PortableBasicInfo=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.connected,d=c.holding,u=c.on,s=c.pressure;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return i("power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:s})," kPa"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Port",color:l?"good":"average",children:l?"Connected":"Not Connected"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holding Tank",minHeight:"82px",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!d,onClick:function(){return i("eject")}}),children:d?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Label",children:d.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d.pressure})," kPa"]})]}):(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No holding tank"})})],4)}},function(e,t,n){e.exports=n(185)},function(e,t,n){"use strict";n(186),n(187),n(188),n(189),n(190),n(191),n(192),n(193),n(194),n(195),n(196),n(197),n(198),n(199),n(200),n(201),n(202),n(203),n(204),n(205),n(206),n(207),n(208),n(209),n(211),n(213),n(214),n(215),n(142),n(217),n(218),n(219),n(220),n(221),n(222),n(223),n(224),n(225),n(226),n(227),n(228),n(229),n(230),n(232),n(233),n(234),n(235),n(236),n(238),n(239),n(241),n(242),n(243),n(244),n(245),n(246),n(247),n(248),n(249),n(250),n(251),n(252),n(253),n(254),n(256),n(257),n(258),n(259),n(260),n(261),n(262),n(263),n(264),n(265),n(266),n(267),n(268),n(270),n(271),n(272),n(273),n(274),n(275),n(277),n(278),n(280),n(282),n(283),n(284),n(285),n(286),n(287),n(288),n(289),n(290),n(291),n(292),n(293),n(294),n(295),n(296),n(297),n(298),n(299),n(300),n(301),n(302),n(303),n(304),n(306),n(307),n(308),n(311),n(312),n(313),n(314),n(315),n(316),n(317),n(318),n(319),n(320),n(321),n(322),n(323),n(324),n(325),n(159),n(326),n(327),n(328),n(329),n(330),n(331),n(332),n(333),n(334),n(335),n(336),n(337),n(338),n(339),n(340),n(341),n(342),n(343),n(344),n(345),n(346),n(347),n(348),n(349),n(350),n(351),n(352),n(353),n(354),n(355),n(356),n(357),n(358),n(359),n(361),n(362),n(363),n(364),n(365),n(366),n(367),n(368),n(369),n(370),n(371),n(372),n(373),n(374),n(375),n(376),n(377),n(378),n(379),n(380),n(381),n(382),n(383),n(384),n(385),n(386),n(387),n(388),n(389),n(390),n(391),n(392),n(393),n(394),n(395),n(396),n(397),n(398);var o=n(0);n(400),n(401),n(402),n(403),n(404),n(405),n(406),n(407),n(408),n(409),n(410),n(411),n(412),n(413),n(414);var r,a=n(415),i=(n(164),n(1)),c=n(26),l=n(165),d=n(44),u=n(416),s=(Date.now(),(0,u.createStore)()),p=!0,m=function(){for(s.subscribe((function(){!function(){try{var e=s.getState();p&&(d.logger.log("initial render",e),(0,l.setupDrag)(e));var t=(0,n(418).getRoutedComponent)(e),a=(0,o.createComponentVNode)(2,u.StoreProvider,{store:s,children:(0,o.createComponentVNode)(2,t)});r||(r=document.getElementById("react-root")),(0,o.render)(a,r)}catch(i){throw d.logger.error("rendering error",i),i}p&&(p=!1)}()})),window.update=function(e){var t="string"==typeof e?function(e){var t=function(e,t){return"object"==typeof t&&null!==t&&t.__number__?parseFloat(t.__number__):t};c.IS_IE8&&(t=undefined);try{return JSON.parse(e,t)}catch(o){d.logger.log(o),d.logger.log("What we got:",e);var n=o&&o.message;throw new Error("JSON parsing error: "+n)}}(e):e;s.dispatch((0,i.backendUpdate)(t))};;){var e=window.__updateQueue__.shift();if(!e)break;window.update(e)}(0,a.loadCSS)("font-awesome.css")};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",m):m()},function(e,t,n){"use strict";var o=n(4),r=n(7),a=n(40),i=n(41),c=n(9),l=n(97),d=n(134),u=n(5),s=n(20),p=n(58),m=n(8),f=n(10),h=n(17),C=n(27),g=n(36),b=n(51),N=n(47),v=n(67),V=n(52),y=n(137),k=n(96),x=n(22),_=n(16),w=n(74),B=n(32),L=n(24),S=n(93),I=n(75),T=n(64),A=n(63),E=n(13),M=n(138),P=n(28),R=n(48),O=n(37),j=n(21).forEach,D=I("hidden"),F=E("toPrimitive"),z=O.set,W=O.getterFor("Symbol"),H=Object.prototype,U=r.Symbol,G=a("JSON","stringify"),K=x.f,q=_.f,$=y.f,Y=w.f,X=S("symbols"),Q=S("op-symbols"),J=S("string-to-symbol-registry"),Z=S("symbol-to-string-registry"),ee=S("wks"),te=r.QObject,ne=!te||!te.prototype||!te.prototype.findChild,oe=c&&u((function(){return 7!=N(q({},"a",{get:function(){return q(this,"a",{value:7}).a}})).a}))?function(e,t,n){var o=K(H,t);o&&delete H[t],q(e,t,n),o&&e!==H&&q(H,t,o)}:q,re=function(e,t){var n=X[e]=N(U.prototype);return z(n,{type:"Symbol",tag:e,description:t}),c||(n.description=t),n},ae=d?function(e){return"symbol"==typeof e}:function(e){return Object(e)instanceof U},ie=function(e,t,n){e===H&&ie(Q,t,n),f(e);var o=g(t,!0);return f(n),s(X,o)?(n.enumerable?(s(e,D)&&e[D][o]&&(e[D][o]=!1),n=N(n,{enumerable:b(0,!1)})):(s(e,D)||q(e,D,b(1,{})),e[D][o]=!0),oe(e,o,n)):q(e,o,n)},ce=function(e,t){f(e);var n=C(t),o=v(n).concat(pe(n));return j(o,(function(t){c&&!de.call(n,t)||ie(e,t,n[t])})),e},le=function(e,t){return t===undefined?N(e):ce(N(e),t)},de=function(e){var t=g(e,!0),n=Y.call(this,t);return!(this===H&&s(X,t)&&!s(Q,t))&&(!(n||!s(this,t)||!s(X,t)||s(this,D)&&this[D][t])||n)},ue=function(e,t){var n=C(e),o=g(t,!0);if(n!==H||!s(X,o)||s(Q,o)){var r=K(n,o);return!r||!s(X,o)||s(n,D)&&n[D][o]||(r.enumerable=!0),r}},se=function(e){var t=$(C(e)),n=[];return j(t,(function(e){s(X,e)||s(T,e)||n.push(e)})),n},pe=function(e){var t=e===H,n=$(t?Q:C(e)),o=[];return j(n,(function(e){!s(X,e)||t&&!s(H,e)||o.push(X[e])})),o};(l||(L((U=function(){if(this instanceof U)throw TypeError("Symbol is not a constructor");var e=arguments.length&&arguments[0]!==undefined?String(arguments[0]):undefined,t=A(e),n=function o(e){this===H&&o.call(Q,e),s(this,D)&&s(this[D],t)&&(this[D][t]=!1),oe(this,t,b(1,e))};return c&&ne&&oe(H,t,{configurable:!0,set:n}),re(t,e)}).prototype,"toString",(function(){return W(this).tag})),L(U,"withoutSetter",(function(e){return re(A(e),e)})),w.f=de,_.f=ie,x.f=ue,V.f=y.f=se,k.f=pe,M.f=function(e){return re(E(e),e)},c&&(q(U.prototype,"description",{configurable:!0,get:function(){return W(this).description}}),i||L(H,"propertyIsEnumerable",de,{unsafe:!0}))),o({global:!0,wrap:!0,forced:!l,sham:!l},{Symbol:U}),j(v(ee),(function(e){P(e)})),o({target:"Symbol",stat:!0,forced:!l},{"for":function(e){var t=String(e);if(s(J,t))return J[t];var n=U(t);return J[t]=n,Z[n]=t,n},keyFor:function(e){if(!ae(e))throw TypeError(e+" is not a symbol");if(s(Z,e))return Z[e]},useSetter:function(){ne=!0},useSimple:function(){ne=!1}}),o({target:"Object",stat:!0,forced:!l,sham:!c},{create:le,defineProperty:ie,defineProperties:ce,getOwnPropertyDescriptor:ue}),o({target:"Object",stat:!0,forced:!l},{getOwnPropertyNames:se,getOwnPropertySymbols:pe}),o({target:"Object",stat:!0,forced:u((function(){k.f(1)}))},{getOwnPropertySymbols:function(e){return k.f(h(e))}}),G)&&o({target:"JSON",stat:!0,forced:!l||u((function(){var e=U();return"[null]"!=G([e])||"{}"!=G({a:e})||"{}"!=G(Object(e))}))},{stringify:function(e,t,n){for(var o,r=[e],a=1;arguments.length>a;)r.push(arguments[a++]);if(o=t,(m(t)||e!==undefined)&&!ae(e))return p(t)||(t=function(e,t){if("function"==typeof o&&(t=o.call(this,e,t)),!ae(t))return t}),r[1]=t,G.apply(null,r)}});U.prototype[F]||B(U.prototype,F,U.prototype.valueOf),R(U,"Symbol"),T[D]=!0},function(e,t,n){"use strict";var o=n(4),r=n(9),a=n(7),i=n(20),c=n(8),l=n(16).f,d=n(131),u=a.Symbol;if(r&&"function"==typeof u&&(!("description"in u.prototype)||u().description!==undefined)){var s={},p=function(){var e=arguments.length<1||arguments[0]===undefined?undefined:String(arguments[0]),t=this instanceof p?new u(e):e===undefined?u():u(e);return""===e&&(s[t]=!0),t};d(p,u);var m=p.prototype=u.prototype;m.constructor=p;var f=m.toString,h="Symbol(test)"==String(u("test")),C=/^Symbol\((.*)\)[^)]+$/;l(m,"description",{configurable:!0,get:function(){var e=c(this)?this.valueOf():this,t=f.call(e);if(i(s,e))return"";var n=h?t.slice(7,-1):t.replace(C,"$1");return""===n?undefined:n}}),o({global:!0,forced:!0},{Symbol:p})}},function(e,t,n){"use strict";n(28)("asyncIterator")},function(e,t,n){"use strict";n(28)("hasInstance")},function(e,t,n){"use strict";n(28)("isConcatSpreadable")},function(e,t,n){"use strict";n(28)("iterator")},function(e,t,n){"use strict";n(28)("match")},function(e,t,n){"use strict";n(28)("replace")},function(e,t,n){"use strict";n(28)("search")},function(e,t,n){"use strict";n(28)("species")},function(e,t,n){"use strict";n(28)("split")},function(e,t,n){"use strict";n(28)("toPrimitive")},function(e,t,n){"use strict";n(28)("toStringTag")},function(e,t,n){"use strict";n(28)("unscopables")},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(58),i=n(8),c=n(17),l=n(12),d=n(54),u=n(68),s=n(69),p=n(13),m=n(98),f=p("isConcatSpreadable"),h=m>=51||!r((function(){var e=[];return e[f]=!1,e.concat()[0]!==e})),C=s("concat"),g=function(e){if(!i(e))return!1;var t=e[f];return t!==undefined?!!t:a(e)};o({target:"Array",proto:!0,forced:!h||!C},{concat:function(e){var t,n,o,r,a,i=c(this),s=u(i,0),p=0;for(t=-1,o=arguments.length;t9007199254740991)throw TypeError("Maximum allowed index exceeded");for(n=0;n=9007199254740991)throw TypeError("Maximum allowed index exceeded");d(s,p++,a)}return s.length=p,s}})},function(e,t,n){"use strict";var o=n(4),r=n(139),a=n(49);o({target:"Array",proto:!0},{copyWithin:r}),a("copyWithin")},function(e,t,n){"use strict";var o=n(4),r=n(21).every,a=n(42),i=n(25),c=a("every"),l=i("every");o({target:"Array",proto:!0,forced:!c||!l},{every:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(99),a=n(49);o({target:"Array",proto:!0},{fill:r}),a("fill")},function(e,t,n){"use strict";var o=n(4),r=n(21).filter,a=n(69),i=n(25),c=a("filter"),l=i("filter");o({target:"Array",proto:!0,forced:!c||!l},{filter:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(21).find,a=n(49),i=n(25),c=!0,l=i("find");"find"in[]&&Array(1).find((function(){c=!1})),o({target:"Array",proto:!0,forced:c||!l},{find:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("find")},function(e,t,n){"use strict";var o=n(4),r=n(21).findIndex,a=n(49),i=n(25),c=!0,l=i("findIndex");"findIndex"in[]&&Array(1).findIndex((function(){c=!1})),o({target:"Array",proto:!0,forced:c||!l},{findIndex:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("findIndex")},function(e,t,n){"use strict";var o=n(4),r=n(140),a=n(17),i=n(12),c=n(33),l=n(68);o({target:"Array",proto:!0},{flat:function(){var e=arguments.length?arguments[0]:undefined,t=a(this),n=i(t.length),o=l(t,0);return o.length=r(o,t,t,n,0,e===undefined?1:c(e)),o}})},function(e,t,n){"use strict";var o=n(4),r=n(140),a=n(17),i=n(12),c=n(34),l=n(68);o({target:"Array",proto:!0},{flatMap:function(e){var t,n=a(this),o=i(n.length);return c(e),(t=l(n,0)).length=r(t,n,n,o,0,1,e,arguments.length>1?arguments[1]:undefined),t}})},function(e,t,n){"use strict";var o=n(4),r=n(210);o({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},function(e,t,n){"use strict";var o=n(21).forEach,r=n(42),a=n(25),i=r("forEach"),c=a("forEach");e.exports=i&&c?[].forEach:function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}},function(e,t,n){"use strict";var o=n(4),r=n(212);o({target:"Array",stat:!0,forced:!n(78)((function(e){Array.from(e)}))},{from:r})},function(e,t,n){"use strict";var o=n(53),r=n(17),a=n(141),i=n(100),c=n(12),l=n(54),d=n(101);e.exports=function(e){var t,n,u,s,p,m,f=r(e),h="function"==typeof this?this:Array,C=arguments.length,g=C>1?arguments[1]:undefined,b=g!==undefined,N=d(f),v=0;if(b&&(g=o(g,C>2?arguments[2]:undefined,2)),N==undefined||h==Array&&i(N))for(n=new h(t=c(f.length));t>v;v++)m=b?g(f[v],v):f[v],l(n,v,m);else for(p=(s=N.call(f)).next,n=new h;!(u=p.call(s)).done;v++)m=b?a(s,g,[u.value,v],!0):u.value,l(n,v,m);return n.length=v,n}},function(e,t,n){"use strict";var o=n(4),r=n(65).includes,a=n(49);o({target:"Array",proto:!0,forced:!n(25)("indexOf",{ACCESSORS:!0,1:0})},{includes:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("includes")},function(e,t,n){"use strict";var o=n(4),r=n(65).indexOf,a=n(42),i=n(25),c=[].indexOf,l=!!c&&1/[1].indexOf(1,-0)<0,d=a("indexOf"),u=i("indexOf",{ACCESSORS:!0,1:0});o({target:"Array",proto:!0,forced:l||!d||!u},{indexOf:function(e){return l?c.apply(this,arguments)||0:r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";n(4)({target:"Array",stat:!0},{isArray:n(58)})},function(e,t,n){"use strict";var o=n(143).IteratorPrototype,r=n(47),a=n(51),i=n(48),c=n(70),l=function(){return this};e.exports=function(e,t,n){var d=t+" Iterator";return e.prototype=r(o,{next:a(1,n)}),i(e,d,!1,!0),c[d]=l,e}},function(e,t,n){"use strict";var o=n(4),r=n(62),a=n(27),i=n(42),c=[].join,l=r!=Object,d=i("join",",");o({target:"Array",proto:!0,forced:l||!d},{join:function(e){return c.call(a(this),e===undefined?",":e)}})},function(e,t,n){"use strict";var o=n(4),r=n(145);o({target:"Array",proto:!0,forced:r!==[].lastIndexOf},{lastIndexOf:r})},function(e,t,n){"use strict";var o=n(4),r=n(21).map,a=n(69),i=n(25),c=a("map"),l=i("map");o({target:"Array",proto:!0,forced:!c||!l},{map:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(54);o({target:"Array",stat:!0,forced:r((function(){function e(){}return!(Array.of.call(e)instanceof e)}))},{of:function(){for(var e=0,t=arguments.length,n=new("function"==typeof this?this:Array)(t);t>e;)a(n,e,arguments[e++]);return n.length=t,n}})},function(e,t,n){"use strict";var o=n(4),r=n(79).left,a=n(42),i=n(25),c=a("reduce"),l=i("reduce",{1:0});o({target:"Array",proto:!0,forced:!c||!l},{reduce:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(79).right,a=n(42),i=n(25),c=a("reduceRight"),l=i("reduce",{1:0});o({target:"Array",proto:!0,forced:!c||!l},{reduceRight:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(8),a=n(58),i=n(46),c=n(12),l=n(27),d=n(54),u=n(13),s=n(69),p=n(25),m=s("slice"),f=p("slice",{ACCESSORS:!0,0:0,1:2}),h=u("species"),C=[].slice,g=Math.max;o({target:"Array",proto:!0,forced:!m||!f},{slice:function(e,t){var n,o,u,s=l(this),p=c(s.length),m=i(e,p),f=i(t===undefined?p:t,p);if(a(s)&&("function"!=typeof(n=s.constructor)||n!==Array&&!a(n.prototype)?r(n)&&null===(n=n[h])&&(n=undefined):n=undefined,n===Array||n===undefined))return C.call(s,m,f);for(o=new(n===undefined?Array:n)(g(f-m,0)),u=0;m1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(34),a=n(17),i=n(5),c=n(42),l=[],d=l.sort,u=i((function(){l.sort(undefined)})),s=i((function(){l.sort(null)})),p=c("sort");o({target:"Array",proto:!0,forced:u||!s||!p},{sort:function(e){return e===undefined?d.call(a(this)):d.call(a(this),r(e))}})},function(e,t,n){"use strict";n(59)("Array")},function(e,t,n){"use strict";var o=n(4),r=n(46),a=n(33),i=n(12),c=n(17),l=n(68),d=n(54),u=n(69),s=n(25),p=u("splice"),m=s("splice",{ACCESSORS:!0,0:0,1:2}),f=Math.max,h=Math.min;o({target:"Array",proto:!0,forced:!p||!m},{splice:function(e,t){var n,o,u,s,p,m,C=c(this),g=i(C.length),b=r(e,g),N=arguments.length;if(0===N?n=o=0:1===N?(n=0,o=g-b):(n=N-2,o=h(f(a(t),0),g-b)),g+n-o>9007199254740991)throw TypeError("Maximum allowed length exceeded");for(u=l(C,o),s=0;sg-o+n;s--)delete C[s-1]}else if(n>o)for(s=g-o;s>b;s--)m=s+n-1,(p=s+o-1)in C?C[m]=C[p]:delete C[m];for(s=0;s>1,h=23===t?r(2,-24)-r(2,-77):0,C=e<0||0===e&&1/e<0?1:0,g=0;for((e=o(e))!=e||e===1/0?(d=e!=e?1:0,l=m):(l=a(i(e)/c),e*(u=r(2,-l))<1&&(l--,u*=2),(e+=l+f>=1?h/u:h*r(2,1-f))*u>=2&&(l++,u/=2),l+f>=m?(d=0,l=m):l+f>=1?(d=(e*u-1)*r(2,t),l+=f):(d=e*r(2,f-1)*r(2,t),l=0));t>=8;s[g++]=255&d,d/=256,t-=8);for(l=l<0;s[g++]=255&l,l/=256,p-=8);return s[--g]|=128*C,s},unpack:function(e,t){var n,o=e.length,a=8*o-t-1,i=(1<>1,l=a-7,d=o-1,u=e[d--],s=127&u;for(u>>=7;l>0;s=256*s+e[d],d--,l-=8);for(n=s&(1<<-l)-1,s>>=-l,l+=t;l>0;n=256*n+e[d],d--,l-=8);if(0===s)s=1-c;else{if(s===i)return n?NaN:u?-1/0:1/0;n+=r(2,t),s-=c}return(u?-1:1)*n*r(2,s-t)}}},function(e,t,n){"use strict";var o=n(4),r=n(11);o({target:"ArrayBuffer",stat:!0,forced:!r.NATIVE_ARRAY_BUFFER_VIEWS},{isView:r.isView})},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(80),i=n(10),c=n(46),l=n(12),d=n(50),u=a.ArrayBuffer,s=a.DataView,p=u.prototype.slice;o({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:r((function(){return!new u(2).slice(1,undefined).byteLength}))},{slice:function(e,t){if(p!==undefined&&t===undefined)return p.call(i(this),e);for(var n=i(this).byteLength,o=c(e,n),r=c(t===undefined?n:t,n),a=new(d(this,u))(l(r-o)),m=new s(this),f=new s(a),h=0;o9999?"+":"";return n+r(a(e),n?6:4,0)+"-"+r(this.getUTCMonth()+1,2,0)+"-"+r(this.getUTCDate(),2,0)+"T"+r(this.getUTCHours(),2,0)+":"+r(this.getUTCMinutes(),2,0)+":"+r(this.getUTCSeconds(),2,0)+"."+r(t,3,0)+"Z"}:l},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(17),i=n(36);o({target:"Date",proto:!0,forced:r((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(e){var t=a(this),n=i(t);return"number"!=typeof n||isFinite(n)?t.toISOString():null}})},function(e,t,n){"use strict";var o=n(32),r=n(240),a=n(13)("toPrimitive"),i=Date.prototype;a in i||o(i,a,r)},function(e,t,n){"use strict";var o=n(10),r=n(36);e.exports=function(e){if("string"!==e&&"number"!==e&&"default"!==e)throw TypeError("Incorrect hint");return r(o(this),"number"!==e)}},function(e,t,n){"use strict";var o=n(24),r=Date.prototype,a=r.toString,i=r.getTime;new Date(NaN)+""!="Invalid Date"&&o(r,"toString",(function(){var e=i.call(this);return e==e?a.call(this):"Invalid Date"}))},function(e,t,n){"use strict";n(4)({target:"Function",proto:!0},{bind:n(147)})},function(e,t,n){"use strict";var o=n(8),r=n(16),a=n(38),i=n(13)("hasInstance"),c=Function.prototype;i in c||r.f(c,i,{value:function(e){if("function"!=typeof this||!o(e))return!1;if(!o(this.prototype))return e instanceof this;for(;e=a(e);)if(this.prototype===e)return!0;return!1}})},function(e,t,n){"use strict";var o=n(9),r=n(16).f,a=Function.prototype,i=a.toString,c=/^\s*function ([^ (]*)/;o&&!("name"in a)&&r(a,"name",{configurable:!0,get:function(){try{return i.call(this).match(c)[1]}catch(e){return""}}})},function(e,t,n){"use strict";var o=n(7);n(48)(o.JSON,"JSON",!0)},function(e,t,n){"use strict";var o=n(81),r=n(148);e.exports=o("Map",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(4),r=n(149),a=Math.acosh,i=Math.log,c=Math.sqrt,l=Math.LN2;o({target:"Math",stat:!0,forced:!a||710!=Math.floor(a(Number.MAX_VALUE))||a(Infinity)!=Infinity},{acosh:function(e){return(e=+e)<1?NaN:e>94906265.62425156?i(e)+l:r(e-1+c(e-1)*c(e+1))}})},function(e,t,n){"use strict";var o=n(4),r=Math.asinh,a=Math.log,i=Math.sqrt;o({target:"Math",stat:!0,forced:!(r&&1/r(0)>0)},{asinh:function c(e){return isFinite(e=+e)&&0!=e?e<0?-c(-e):a(e+i(e*e+1)):e}})},function(e,t,n){"use strict";var o=n(4),r=Math.atanh,a=Math.log;o({target:"Math",stat:!0,forced:!(r&&1/r(-0)<0)},{atanh:function(e){return 0==(e=+e)?e:a((1+e)/(1-e))/2}})},function(e,t,n){"use strict";var o=n(4),r=n(108),a=Math.abs,i=Math.pow;o({target:"Math",stat:!0},{cbrt:function(e){return r(e=+e)*i(a(e),1/3)}})},function(e,t,n){"use strict";var o=n(4),r=Math.floor,a=Math.log,i=Math.LOG2E;o({target:"Math",stat:!0},{clz32:function(e){return(e>>>=0)?31-r(a(e+.5)*i):32}})},function(e,t,n){"use strict";var o=n(4),r=n(83),a=Math.cosh,i=Math.abs,c=Math.E;o({target:"Math",stat:!0,forced:!a||a(710)===Infinity},{cosh:function(e){var t=r(i(e)-1)+1;return(t+1/(t*c*c))*(c/2)}})},function(e,t,n){"use strict";var o=n(4),r=n(83);o({target:"Math",stat:!0,forced:r!=Math.expm1},{expm1:r})},function(e,t,n){"use strict";n(4)({target:"Math",stat:!0},{fround:n(255)})},function(e,t,n){"use strict";var o=n(108),r=Math.abs,a=Math.pow,i=a(2,-52),c=a(2,-23),l=a(2,127)*(2-c),d=a(2,-126);e.exports=Math.fround||function(e){var t,n,a=r(e),u=o(e);return al||n!=n?u*Infinity:u*n}},function(e,t,n){"use strict";var o=n(4),r=Math.hypot,a=Math.abs,i=Math.sqrt;o({target:"Math",stat:!0,forced:!!r&&r(Infinity,NaN)!==Infinity},{hypot:function(e,t){for(var n,o,r=0,c=0,l=arguments.length,d=0;c0?(o=n/d)*o:n;return d===Infinity?Infinity:d*i(r)}})},function(e,t,n){"use strict";var o=n(4),r=n(5),a=Math.imul;o({target:"Math",stat:!0,forced:r((function(){return-5!=a(4294967295,5)||2!=a.length}))},{imul:function(e,t){var n=+e,o=+t,r=65535&n,a=65535&o;return 0|r*a+((65535&n>>>16)*a+r*(65535&o>>>16)<<16>>>0)}})},function(e,t,n){"use strict";var o=n(4),r=Math.log,a=Math.LOG10E;o({target:"Math",stat:!0},{log10:function(e){return r(e)*a}})},function(e,t,n){"use strict";n(4)({target:"Math",stat:!0},{log1p:n(149)})},function(e,t,n){"use strict";var o=n(4),r=Math.log,a=Math.LN2;o({target:"Math",stat:!0},{log2:function(e){return r(e)/a}})},function(e,t,n){"use strict";n(4)({target:"Math",stat:!0},{sign:n(108)})},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(83),i=Math.abs,c=Math.exp,l=Math.E;o({target:"Math",stat:!0,forced:r((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(e){return i(e=+e)<1?(a(e)-a(-e))/2:(c(e-1)-c(-e-1))*(l/2)}})},function(e,t,n){"use strict";var o=n(4),r=n(83),a=Math.exp;o({target:"Math",stat:!0},{tanh:function(e){var t=r(e=+e),n=r(-e);return t==Infinity?1:n==Infinity?-1:(t-n)/(a(e)+a(-e))}})},function(e,t,n){"use strict";n(48)(Math,"Math",!0)},function(e,t,n){"use strict";var o=n(4),r=Math.ceil,a=Math.floor;o({target:"Math",stat:!0},{trunc:function(e){return(e>0?a:r)(e)}})},function(e,t,n){"use strict";var o=n(9),r=n(7),a=n(66),i=n(24),c=n(20),l=n(35),d=n(82),u=n(36),s=n(5),p=n(47),m=n(52).f,f=n(22).f,h=n(16).f,C=n(61).trim,g=r.Number,b=g.prototype,N="Number"==l(p(b)),v=function(e){var t,n,o,r,a,i,c,l,d=u(e,!1);if("string"==typeof d&&d.length>2)if(43===(t=(d=C(d)).charCodeAt(0))||45===t){if(88===(n=d.charCodeAt(2))||120===n)return NaN}else if(48===t){switch(d.charCodeAt(1)){case 66:case 98:o=2,r=49;break;case 79:case 111:o=8,r=55;break;default:return+d}for(i=(a=d.slice(2)).length,c=0;cr)return NaN;return parseInt(a,o)}return+d};if(a("Number",!g(" 0o1")||!g("0b1")||g("+0x1"))){for(var V,y=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof y&&(N?s((function(){b.valueOf.call(n)})):"Number"!=l(n))?d(new g(v(t)),n,y):v(t)},k=o?m(g):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),x=0;k.length>x;x++)c(g,V=k[x])&&!c(y,V)&&h(y,V,f(g,V));y.prototype=b,b.constructor=y,i(r,"Number",y)}},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{isFinite:n(269)})},function(e,t,n){"use strict";var o=n(7).isFinite;e.exports=Number.isFinite||function(e){return"number"==typeof e&&o(e)}},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{isInteger:n(150)})},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{isNaN:function(e){return e!=e}})},function(e,t,n){"use strict";var o=n(4),r=n(150),a=Math.abs;o({target:"Number",stat:!0},{isSafeInteger:function(e){return r(e)&&a(e)<=9007199254740991}})},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{MAX_SAFE_INTEGER:9007199254740991})},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},function(e,t,n){"use strict";var o=n(4),r=n(276);o({target:"Number",stat:!0,forced:Number.parseFloat!=r},{parseFloat:r})},function(e,t,n){"use strict";var o=n(7),r=n(61).trim,a=n(84),i=o.parseFloat,c=1/i(a+"-0")!=-Infinity;e.exports=c?function(e){var t=r(String(e)),n=i(t);return 0===n&&"-"==t.charAt(0)?-0:n}:i},function(e,t,n){"use strict";var o=n(4),r=n(151);o({target:"Number",stat:!0,forced:Number.parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o=n(4),r=n(33),a=n(279),i=n(107),c=n(5),l=1..toFixed,d=Math.floor,u=function s(e,t,n){return 0===t?n:t%2==1?s(e,t-1,n*e):s(e*e,t/2,n)};o({target:"Number",proto:!0,forced:l&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!c((function(){l.call({})}))},{toFixed:function(e){var t,n,o,c,l=a(this),s=r(e),p=[0,0,0,0,0,0],m="",f="0",h=function(e,t){for(var n=-1,o=t;++n<6;)o+=e*p[n],p[n]=o%1e7,o=d(o/1e7)},C=function(e){for(var t=6,n=0;--t>=0;)n+=p[t],p[t]=d(n/e),n=n%e*1e7},g=function(){for(var e=6,t="";--e>=0;)if(""!==t||0===e||0!==p[e]){var n=String(p[e]);t=""===t?n:t+i.call("0",7-n.length)+n}return t};if(s<0||s>20)throw RangeError("Incorrect fraction digits");if(l!=l)return"NaN";if(l<=-1e21||l>=1e21)return String(l);if(l<0&&(m="-",l=-l),l>1e-21)if(n=(t=function(e){for(var t=0,n=e;n>=4096;)t+=12,n/=4096;for(;n>=2;)t+=1,n/=2;return t}(l*u(2,69,1))-69)<0?l*u(2,-t,1):l/u(2,t,1),n*=4503599627370496,(t=52-t)>0){for(h(0,n),o=s;o>=7;)h(1e7,0),o-=7;for(h(u(10,o,1),0),o=t-1;o>=23;)C(1<<23),o-=23;C(1<0?m+((c=f.length)<=s?"0."+i.call("0",s-c)+f:f.slice(0,c-s)+"."+f.slice(c-s)):m+f}})},function(e,t,n){"use strict";var o=n(35);e.exports=function(e){if("number"!=typeof e&&"Number"!=o(e))throw TypeError("Incorrect invocation");return+e}},function(e,t,n){"use strict";var o=n(4),r=n(281);o({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(67),i=n(96),c=n(74),l=n(17),d=n(62),u=Object.assign,s=Object.defineProperty;e.exports=!u||r((function(){if(o&&1!==u({b:1},u(s({},"a",{enumerable:!0,get:function(){s(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol();return e[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(e){t[e]=e})),7!=u({},e)[n]||"abcdefghijklmnopqrst"!=a(u({},t)).join("")}))?function(e,t){for(var n=l(e),r=arguments.length,u=1,s=i.f,p=c.f;r>u;)for(var m,f=d(arguments[u++]),h=s?a(f).concat(s(f)):a(f),C=h.length,g=0;C>g;)m=h[g++],o&&!p.call(f,m)||(n[m]=f[m]);return n}:u},function(e,t,n){"use strict";n(4)({target:"Object",stat:!0,sham:!n(9)},{create:n(47)})},function(e,t,n){"use strict";var o=n(4),r=n(9),a=n(85),i=n(17),c=n(34),l=n(16);r&&o({target:"Object",proto:!0,forced:a},{__defineGetter__:function(e,t){l.f(i(this),e,{get:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(4),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperties:n(135)})},function(e,t,n){"use strict";var o=n(4),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperty:n(16).f})},function(e,t,n){"use strict";var o=n(4),r=n(9),a=n(85),i=n(17),c=n(34),l=n(16);r&&o({target:"Object",proto:!0,forced:a},{__defineSetter__:function(e,t){l.f(i(this),e,{set:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(4),r=n(152).entries;o({target:"Object",stat:!0},{entries:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(4),r=n(72),a=n(5),i=n(8),c=n(56).onFreeze,l=Object.freeze;o({target:"Object",stat:!0,forced:a((function(){l(1)})),sham:!r},{freeze:function(e){return l&&i(e)?l(c(e)):e}})},function(e,t,n){"use strict";var o=n(4),r=n(73),a=n(54);o({target:"Object",stat:!0},{fromEntries:function(e){var t={};return r(e,(function(e,n){a(t,e,n)}),undefined,!0),t}})},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(27),i=n(22).f,c=n(9),l=r((function(){i(1)}));o({target:"Object",stat:!0,forced:!c||l,sham:!c},{getOwnPropertyDescriptor:function(e,t){return i(a(e),t)}})},function(e,t,n){"use strict";var o=n(4),r=n(9),a=n(94),i=n(27),c=n(22),l=n(54);o({target:"Object",stat:!0,sham:!r},{getOwnPropertyDescriptors:function(e){for(var t,n,o=i(e),r=c.f,d=a(o),u={},s=0;d.length>s;)(n=r(o,t=d[s++]))!==undefined&&l(u,t,n);return u}})},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(137).f;o({target:"Object",stat:!0,forced:r((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:a})},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(17),i=n(38),c=n(104);o({target:"Object",stat:!0,forced:r((function(){i(1)})),sham:!c},{getPrototypeOf:function(e){return i(a(e))}})},function(e,t,n){"use strict";n(4)({target:"Object",stat:!0},{is:n(153)})},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(8),i=Object.isExtensible;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isExtensible:function(e){return!!a(e)&&(!i||i(e))}})},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(8),i=Object.isFrozen;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isFrozen:function(e){return!a(e)||!!i&&i(e)}})},function(e,t,n){"use strict";var o=n(4),r=n(5),a=n(8),i=Object.isSealed;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isSealed:function(e){return!a(e)||!!i&&i(e)}})},function(e,t,n){"use strict";var o=n(4),r=n(17),a=n(67);o({target:"Object",stat:!0,forced:n(5)((function(){a(1)}))},{keys:function(e){return a(r(e))}})},function(e,t,n){"use strict";var o=n(4),r=n(9),a=n(85),i=n(17),c=n(36),l=n(38),d=n(22).f;r&&o({target:"Object",proto:!0,forced:a},{__lookupGetter__:function(e){var t,n=i(this),o=c(e,!0);do{if(t=d(n,o))return t.get}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(4),r=n(9),a=n(85),i=n(17),c=n(36),l=n(38),d=n(22).f;r&&o({target:"Object",proto:!0,forced:a},{__lookupSetter__:function(e){var t,n=i(this),o=c(e,!0);do{if(t=d(n,o))return t.set}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(4),r=n(8),a=n(56).onFreeze,i=n(72),c=n(5),l=Object.preventExtensions;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!i},{preventExtensions:function(e){return l&&r(e)?l(a(e)):e}})},function(e,t,n){"use strict";var o=n(4),r=n(8),a=n(56).onFreeze,i=n(72),c=n(5),l=Object.seal;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!i},{seal:function(e){return l&&r(e)?l(a(e)):e}})},function(e,t,n){"use strict";n(4)({target:"Object",stat:!0},{setPrototypeOf:n(55)})},function(e,t,n){"use strict";var o=n(102),r=n(24),a=n(305);o||r(Object.prototype,"toString",a,{unsafe:!0})},function(e,t,n){"use strict";var o=n(102),r=n(77);e.exports=o?{}.toString:function(){return"[object "+r(this)+"]"}},function(e,t,n){"use strict";var o=n(4),r=n(152).values;o({target:"Object",stat:!0},{values:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(4),r=n(151);o({global:!0,forced:parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o,r,a,i,c=n(4),l=n(41),d=n(7),u=n(40),s=n(154),p=n(24),m=n(71),f=n(48),h=n(59),C=n(8),g=n(34),b=n(60),N=n(35),v=n(92),V=n(73),y=n(78),k=n(50),x=n(109).set,_=n(156),w=n(157),B=n(309),L=n(158),S=n(310),I=n(37),T=n(66),A=n(13),E=n(98),M=A("species"),P="Promise",R=I.get,O=I.set,j=I.getterFor(P),D=s,F=d.TypeError,z=d.document,W=d.process,H=u("fetch"),U=L.f,G=U,K="process"==N(W),q=!!(z&&z.createEvent&&d.dispatchEvent),$=T(P,(function(){if(!(v(D)!==String(D))){if(66===E)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(l&&!D.prototype["finally"])return!0;if(E>=51&&/native code/.test(D))return!1;var e=D.resolve(1),t=function(e){e((function(){}),(function(){}))};return(e.constructor={})[M]=t,!(e.then((function(){}))instanceof t)})),Y=$||!y((function(e){D.all(e)["catch"]((function(){}))})),X=function(e){var t;return!(!C(e)||"function"!=typeof(t=e.then))&&t},Q=function(e,t,n){if(!t.notified){t.notified=!0;var o=t.reactions;_((function(){for(var r=t.value,a=1==t.state,i=0;o.length>i;){var c,l,d,u=o[i++],s=a?u.ok:u.fail,p=u.resolve,m=u.reject,f=u.domain;try{s?(a||(2===t.rejection&&te(e,t),t.rejection=1),!0===s?c=r:(f&&f.enter(),c=s(r),f&&(f.exit(),d=!0)),c===u.promise?m(F("Promise-chain cycle")):(l=X(c))?l.call(c,p,m):p(c)):m(r)}catch(h){f&&!d&&f.exit(),m(h)}}t.reactions=[],t.notified=!1,n&&!t.rejection&&Z(e,t)}))}},J=function(e,t,n){var o,r;q?((o=z.createEvent("Event")).promise=t,o.reason=n,o.initEvent(e,!1,!0),d.dispatchEvent(o)):o={promise:t,reason:n},(r=d["on"+e])?r(o):"unhandledrejection"===e&&B("Unhandled promise rejection",n)},Z=function(e,t){x.call(d,(function(){var n,o=t.value;if(ee(t)&&(n=S((function(){K?W.emit("unhandledRejection",o,e):J("unhandledrejection",e,o)})),t.rejection=K||ee(t)?2:1,n.error))throw n.value}))},ee=function(e){return 1!==e.rejection&&!e.parent},te=function(e,t){x.call(d,(function(){K?W.emit("rejectionHandled",e):J("rejectionhandled",e,t.value)}))},ne=function(e,t,n,o){return function(r){e(t,n,r,o)}},oe=function(e,t,n,o){t.done||(t.done=!0,o&&(t=o),t.value=n,t.state=2,Q(e,t,!0))},re=function ae(e,t,n,o){if(!t.done){t.done=!0,o&&(t=o);try{if(e===n)throw F("Promise can't be resolved itself");var r=X(n);r?_((function(){var o={done:!1};try{r.call(n,ne(ae,e,o,t),ne(oe,e,o,t))}catch(a){oe(e,o,a,t)}})):(t.value=n,t.state=1,Q(e,t,!1))}catch(a){oe(e,{done:!1},a,t)}}};$&&(D=function(e){b(this,D,P),g(e),o.call(this);var t=R(this);try{e(ne(re,this,t),ne(oe,this,t))}catch(n){oe(this,t,n)}},(o=function(e){O(this,{type:P,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:undefined})}).prototype=m(D.prototype,{then:function(e,t){var n=j(this),o=U(k(this,D));return o.ok="function"!=typeof e||e,o.fail="function"==typeof t&&t,o.domain=K?W.domain:undefined,n.parent=!0,n.reactions.push(o),0!=n.state&&Q(this,n,!1),o.promise},"catch":function(e){return this.then(undefined,e)}}),r=function(){var e=new o,t=R(e);this.promise=e,this.resolve=ne(re,e,t),this.reject=ne(oe,e,t)},L.f=U=function(e){return e===D||e===a?new r(e):G(e)},l||"function"!=typeof s||(i=s.prototype.then,p(s.prototype,"then",(function(e,t){var n=this;return new D((function(e,t){i.call(n,e,t)})).then(e,t)}),{unsafe:!0}),"function"==typeof H&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(e){return w(D,H.apply(d,arguments))}}))),c({global:!0,wrap:!0,forced:$},{Promise:D}),f(D,P,!1,!0),h(P),a=u(P),c({target:P,stat:!0,forced:$},{reject:function(e){var t=U(this);return t.reject.call(undefined,e),t.promise}}),c({target:P,stat:!0,forced:l||$},{resolve:function(e){return w(l&&this===a?D:this,e)}}),c({target:P,stat:!0,forced:Y},{all:function(e){var t=this,n=U(t),o=n.resolve,r=n.reject,a=S((function(){var n=g(t.resolve),a=[],i=0,c=1;V(e,(function(e){var l=i++,d=!1;a.push(undefined),c++,n.call(t,e).then((function(e){d||(d=!0,a[l]=e,--c||o(a))}),r)})),--c||o(a)}));return a.error&&r(a.value),n.promise},race:function(e){var t=this,n=U(t),o=n.reject,r=S((function(){var r=g(t.resolve);V(e,(function(e){r.call(t,e).then(n.resolve,o)}))}));return r.error&&o(r.value),n.promise}})},function(e,t,n){"use strict";var o=n(7);e.exports=function(e,t){var n=o.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))}},function(e,t,n){"use strict";e.exports=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}}},function(e,t,n){"use strict";var o=n(4),r=n(41),a=n(154),i=n(5),c=n(40),l=n(50),d=n(157),u=n(24);o({target:"Promise",proto:!0,real:!0,forced:!!a&&i((function(){a.prototype["finally"].call({then:function(){}},(function(){}))}))},{"finally":function(e){var t=l(this,c("Promise")),n="function"==typeof e;return this.then(n?function(n){return d(t,e()).then((function(){return n}))}:e,n?function(n){return d(t,e()).then((function(){throw n}))}:e)}}),r||"function"!=typeof a||a.prototype["finally"]||u(a.prototype,"finally",c("Promise").prototype["finally"])},function(e,t,n){"use strict";var o=n(4),r=n(40),a=n(34),i=n(10),c=n(5),l=r("Reflect","apply"),d=Function.apply;o({target:"Reflect",stat:!0,forced:!c((function(){l((function(){}))}))},{apply:function(e,t,n){return a(e),i(n),l?l(e,t,n):d.call(e,t,n)}})},function(e,t,n){"use strict";var o=n(4),r=n(40),a=n(34),i=n(10),c=n(8),l=n(47),d=n(147),u=n(5),s=r("Reflect","construct"),p=u((function(){function e(){}return!(s((function(){}),[],e)instanceof e)})),m=!u((function(){s((function(){}))})),f=p||m;o({target:"Reflect",stat:!0,forced:f,sham:f},{construct:function(e,t){a(e),i(t);var n=arguments.length<3?e:a(arguments[2]);if(m&&!p)return s(e,t,n);if(e==n){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var o=[null];return o.push.apply(o,t),new(d.apply(e,o))}var r=n.prototype,u=l(c(r)?r:Object.prototype),f=Function.apply.call(e,u,t);return c(f)?f:u}})},function(e,t,n){"use strict";var o=n(4),r=n(9),a=n(10),i=n(36),c=n(16);o({target:"Reflect",stat:!0,forced:n(5)((function(){Reflect.defineProperty(c.f({},1,{value:1}),1,{value:2})})),sham:!r},{defineProperty:function(e,t,n){a(e);var o=i(t,!0);a(n);try{return c.f(e,o,n),!0}catch(r){return!1}}})},function(e,t,n){"use strict";var o=n(4),r=n(10),a=n(22).f;o({target:"Reflect",stat:!0},{deleteProperty:function(e,t){var n=a(r(e),t);return!(n&&!n.configurable)&&delete e[t]}})},function(e,t,n){"use strict";var o=n(4),r=n(8),a=n(10),i=n(20),c=n(22),l=n(38);o({target:"Reflect",stat:!0},{get:function d(e,t){var n,o,u=arguments.length<3?e:arguments[2];return a(e)===u?e[t]:(n=c.f(e,t))?i(n,"value")?n.value:n.get===undefined?undefined:n.get.call(u):r(o=l(e))?d(o,t,u):void 0}})},function(e,t,n){"use strict";var o=n(4),r=n(9),a=n(10),i=n(22);o({target:"Reflect",stat:!0,sham:!r},{getOwnPropertyDescriptor:function(e,t){return i.f(a(e),t)}})},function(e,t,n){"use strict";var o=n(4),r=n(10),a=n(38);o({target:"Reflect",stat:!0,sham:!n(104)},{getPrototypeOf:function(e){return a(r(e))}})},function(e,t,n){"use strict";n(4)({target:"Reflect",stat:!0},{has:function(e,t){return t in e}})},function(e,t,n){"use strict";var o=n(4),r=n(10),a=Object.isExtensible;o({target:"Reflect",stat:!0},{isExtensible:function(e){return r(e),!a||a(e)}})},function(e,t,n){"use strict";n(4)({target:"Reflect",stat:!0},{ownKeys:n(94)})},function(e,t,n){"use strict";var o=n(4),r=n(40),a=n(10);o({target:"Reflect",stat:!0,sham:!n(72)},{preventExtensions:function(e){a(e);try{var t=r("Object","preventExtensions");return t&&t(e),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(4),r=n(10),a=n(8),i=n(20),c=n(5),l=n(16),d=n(22),u=n(38),s=n(51);o({target:"Reflect",stat:!0,forced:c((function(){var e=l.f({},"a",{configurable:!0});return!1!==Reflect.set(u(e),"a",1,e)}))},{set:function p(e,t,n){var o,c,m=arguments.length<4?e:arguments[3],f=d.f(r(e),t);if(!f){if(a(c=u(e)))return p(c,t,n,m);f=s(0)}if(i(f,"value")){if(!1===f.writable||!a(m))return!1;if(o=d.f(m,t)){if(o.get||o.set||!1===o.writable)return!1;o.value=n,l.f(m,t,o)}else l.f(m,t,s(0,n));return!0}return f.set!==undefined&&(f.set.call(m,n),!0)}})},function(e,t,n){"use strict";var o=n(4),r=n(10),a=n(144),i=n(55);i&&o({target:"Reflect",stat:!0},{setPrototypeOf:function(e,t){r(e),a(t);try{return i(e,t),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(9),r=n(7),a=n(66),i=n(82),c=n(16).f,l=n(52).f,d=n(110),u=n(86),s=n(111),p=n(24),m=n(5),f=n(37).set,h=n(59),C=n(13)("match"),g=r.RegExp,b=g.prototype,N=/a/g,v=/a/g,V=new g(N)!==N,y=s.UNSUPPORTED_Y;if(o&&a("RegExp",!V||y||m((function(){return v[C]=!1,g(N)!=N||g(v)==v||"/a/i"!=g(N,"i")})))){for(var k=function(e,t){var n,o=this instanceof k,r=d(e),a=t===undefined;if(!o&&r&&e.constructor===k&&a)return e;V?r&&!a&&(e=e.source):e instanceof k&&(a&&(t=u.call(e)),e=e.source),y&&(n=!!t&&t.indexOf("y")>-1)&&(t=t.replace(/y/g,""));var c=i(V?new g(e,t):g(e,t),o?this:b,k);return y&&n&&f(c,{sticky:n}),c},x=function(e){e in k||c(k,e,{configurable:!0,get:function(){return g[e]},set:function(t){g[e]=t}})},_=l(g),w=0;_.length>w;)x(_[w++]);b.constructor=k,k.prototype=b,p(r,"RegExp",k)}h("RegExp")},function(e,t,n){"use strict";var o=n(9),r=n(16),a=n(86),i=n(111).UNSUPPORTED_Y;o&&("g"!=/./g.flags||i)&&r.f(RegExp.prototype,"flags",{configurable:!0,get:a})},function(e,t,n){"use strict";var o=n(24),r=n(10),a=n(5),i=n(86),c=RegExp.prototype,l=c.toString,d=a((function(){return"/a/b"!=l.call({source:"a",flags:"b"})})),u="toString"!=l.name;(d||u)&&o(RegExp.prototype,"toString",(function(){var e=r(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(n===undefined&&e instanceof RegExp&&!("flags"in c)?i.call(e):n)}),{unsafe:!0})},function(e,t,n){"use strict";var o=n(81),r=n(148);e.exports=o("Set",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(4),r=n(112).codeAt;o({target:"String",proto:!0},{codePointAt:function(e){return r(this,e)}})},function(e,t,n){"use strict";var o,r=n(4),a=n(22).f,i=n(12),c=n(113),l=n(23),d=n(114),u=n(41),s="".endsWith,p=Math.min,m=d("endsWith");r({target:"String",proto:!0,forced:!!(u||m||(o=a(String.prototype,"endsWith"),!o||o.writable))&&!m},{endsWith:function(e){var t=String(l(this));c(e);var n=arguments.length>1?arguments[1]:undefined,o=i(t.length),r=n===undefined?o:p(i(n),o),a=String(e);return s?s.call(t,a,r):t.slice(r-a.length,r)===a}})},function(e,t,n){"use strict";var o=n(4),r=n(46),a=String.fromCharCode,i=String.fromCodePoint;o({target:"String",stat:!0,forced:!!i&&1!=i.length},{fromCodePoint:function(e){for(var t,n=[],o=arguments.length,i=0;o>i;){if(t=+arguments[i++],r(t,1114111)!==t)throw RangeError(t+" is not a valid code point");n.push(t<65536?a(t):a(55296+((t-=65536)>>10),t%1024+56320))}return n.join("")}})},function(e,t,n){"use strict";var o=n(4),r=n(113),a=n(23);o({target:"String",proto:!0,forced:!n(114)("includes")},{includes:function(e){return!!~String(a(this)).indexOf(r(e),arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(112).charAt,r=n(37),a=n(103),i=r.set,c=r.getterFor("String Iterator");a(String,"String",(function(e){i(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,t=c(this),n=t.string,r=t.index;return r>=n.length?{value:undefined,done:!0}:(e=o(n,r),t.index+=e.length,{value:e,done:!1})}))},function(e,t,n){"use strict";var o=n(88),r=n(10),a=n(12),i=n(23),c=n(115),l=n(89);o("match",1,(function(e,t,n){return[function(t){var n=i(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var i=r(e),d=String(this);if(!i.global)return l(i,d);var u=i.unicode;i.lastIndex=0;for(var s,p=[],m=0;null!==(s=l(i,d));){var f=String(s[0]);p[m]=f,""===f&&(i.lastIndex=c(d,a(i.lastIndex),u)),m++}return 0===m?null:p}]}))},function(e,t,n){"use strict";var o=n(4),r=n(106).end;o({target:"String",proto:!0,forced:n(160)},{padEnd:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(106).start;o({target:"String",proto:!0,forced:n(160)},{padStart:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(27),a=n(12);o({target:"String",stat:!0},{raw:function(e){for(var t=r(e.raw),n=a(t.length),o=arguments.length,i=[],c=0;n>c;)i.push(String(t[c++])),c]*>)/g,h=/\$([$&'`]|\d\d?)/g;o("replace",2,(function(e,t,n,o){var C=o.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,g=o.REPLACE_KEEPS_$0,b=C?"$":"$0";return[function(n,o){var r=l(this),a=n==undefined?undefined:n[e];return a!==undefined?a.call(n,r,o):t.call(String(r),n,o)},function(e,o){if(!C&&g||"string"==typeof o&&-1===o.indexOf(b)){var a=n(t,e,this,o);if(a.done)return a.value}var l=r(e),m=String(this),f="function"==typeof o;f||(o=String(o));var h=l.global;if(h){var v=l.unicode;l.lastIndex=0}for(var V=[];;){var y=u(l,m);if(null===y)break;if(V.push(y),!h)break;""===String(y[0])&&(l.lastIndex=d(m,i(l.lastIndex),v))}for(var k,x="",_=0,w=0;w=_&&(x+=m.slice(_,L)+E,_=L+B.length)}return x+m.slice(_)}];function N(e,n,o,r,i,c){var l=o+e.length,d=r.length,u=h;return i!==undefined&&(i=a(i),u=f),t.call(c,u,(function(t,a){var c;switch(a.charAt(0)){case"$":return"$";case"&":return e;case"`":return n.slice(0,o);case"'":return n.slice(l);case"<":c=i[a.slice(1,-1)];break;default:var u=+a;if(0===u)return t;if(u>d){var s=m(u/10);return 0===s?t:s<=d?r[s-1]===undefined?a.charAt(1):r[s-1]+a.charAt(1):t}c=r[u-1]}return c===undefined?"":c}))}}))},function(e,t,n){"use strict";var o=n(88),r=n(10),a=n(23),i=n(153),c=n(89);o("search",1,(function(e,t,n){return[function(t){var n=a(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var a=r(e),l=String(this),d=a.lastIndex;i(d,0)||(a.lastIndex=0);var u=c(a,l);return i(a.lastIndex,d)||(a.lastIndex=d),null===u?-1:u.index}]}))},function(e,t,n){"use strict";var o=n(88),r=n(110),a=n(10),i=n(23),c=n(50),l=n(115),d=n(12),u=n(89),s=n(87),p=n(5),m=[].push,f=Math.min,h=!p((function(){return!RegExp(4294967295,"y")}));o("split",2,(function(e,t,n){var o;return o="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var o=String(i(this)),a=n===undefined?4294967295:n>>>0;if(0===a)return[];if(e===undefined)return[o];if(!r(e))return t.call(o,e,a);for(var c,l,d,u=[],p=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,h=new RegExp(e.source,p+"g");(c=s.call(h,o))&&!((l=h.lastIndex)>f&&(u.push(o.slice(f,c.index)),c.length>1&&c.index=a));)h.lastIndex===c.index&&h.lastIndex++;return f===o.length?!d&&h.test("")||u.push(""):u.push(o.slice(f)),u.length>a?u.slice(0,a):u}:"0".split(undefined,0).length?function(e,n){return e===undefined&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=i(this),a=t==undefined?undefined:t[e];return a!==undefined?a.call(t,r,n):o.call(String(r),t,n)},function(e,r){var i=n(o,e,this,r,o!==t);if(i.done)return i.value;var s=a(e),p=String(this),m=c(s,RegExp),C=s.unicode,g=(s.ignoreCase?"i":"")+(s.multiline?"m":"")+(s.unicode?"u":"")+(h?"y":"g"),b=new m(h?s:"^(?:"+s.source+")",g),N=r===undefined?4294967295:r>>>0;if(0===N)return[];if(0===p.length)return null===u(b,p)?[p]:[];for(var v=0,V=0,y=[];V1?arguments[1]:undefined,t.length)),o=String(e);return s?s.call(t,o,n):t.slice(n,n+o.length)===o}})},function(e,t,n){"use strict";var o=n(4),r=n(61).trim;o({target:"String",proto:!0,forced:n(116)("trim")},{trim:function(){return r(this)}})},function(e,t,n){"use strict";var o=n(4),r=n(61).end,a=n(116)("trimEnd"),i=a?function(){return r(this)}:"".trimEnd;o({target:"String",proto:!0,forced:a},{trimEnd:i,trimRight:i})},function(e,t,n){"use strict";var o=n(4),r=n(61).start,a=n(116)("trimStart"),i=a?function(){return r(this)}:"".trimStart;o({target:"String",proto:!0,forced:a},{trimStart:i,trimLeft:i})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("anchor")},{anchor:function(e){return r(this,"a","name",e)}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("big")},{big:function(){return r(this,"big","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("blink")},{blink:function(){return r(this,"blink","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("bold")},{bold:function(){return r(this,"b","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("fixed")},{fixed:function(){return r(this,"tt","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("fontcolor")},{fontcolor:function(e){return r(this,"font","color",e)}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("fontsize")},{fontsize:function(e){return r(this,"font","size",e)}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("italics")},{italics:function(){return r(this,"i","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("link")},{link:function(e){return r(this,"a","href",e)}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("small")},{small:function(){return r(this,"small","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("strike")},{strike:function(){return r(this,"strike","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("sub")},{sub:function(){return r(this,"sub","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(29);o({target:"String",proto:!0,forced:n(30)("sup")},{sup:function(){return r(this,"sup","","")}})},function(e,t,n){"use strict";n(43)("Float32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(33);e.exports=function(e){var t=o(e);if(t<0)throw RangeError("The argument can't be less than 0");return t}},function(e,t,n){"use strict";n(43)("Float64",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(43)("Int8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(43)("Int16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(43)("Int32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(43)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(43)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}),!0)},function(e,t,n){"use strict";n(43)("Uint16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(43)("Uint32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(11),r=n(139),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("copyWithin",(function(e,t){return r.call(a(this),e,t,arguments.length>2?arguments[2]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(21).every,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("every",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(99),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("fill",(function(e){return r.apply(a(this),arguments)}))},function(e,t,n){"use strict";var o=n(11),r=n(21).filter,a=n(50),i=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("filter",(function(e){for(var t=r(i(this),e,arguments.length>1?arguments[1]:undefined),n=a(this,this.constructor),o=0,l=t.length,d=new(c(n))(l);l>o;)d[o]=t[o++];return d}))},function(e,t,n){"use strict";var o=n(11),r=n(21).find,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("find",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(21).findIndex,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("findIndex",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(21).forEach,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("forEach",(function(e){r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(117);(0,n(11).exportTypedArrayStaticMethod)("from",n(162),o)},function(e,t,n){"use strict";var o=n(11),r=n(65).includes,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("includes",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(65).indexOf,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("indexOf",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(11),a=n(142),i=n(13)("iterator"),c=o.Uint8Array,l=a.values,d=a.keys,u=a.entries,s=r.aTypedArray,p=r.exportTypedArrayMethod,m=c&&c.prototype[i],f=!!m&&("values"==m.name||m.name==undefined),h=function(){return l.call(s(this))};p("entries",(function(){return u.call(s(this))})),p("keys",(function(){return d.call(s(this))})),p("values",h,!f),p(i,h,!f)},function(e,t,n){"use strict";var o=n(11),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=[].join;a("join",(function(e){return i.apply(r(this),arguments)}))},function(e,t,n){"use strict";var o=n(11),r=n(145),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("lastIndexOf",(function(e){return r.apply(a(this),arguments)}))},function(e,t,n){"use strict";var o=n(11),r=n(21).map,a=n(50),i=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("map",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined,(function(e,t){return new(c(a(e,e.constructor)))(t)}))}))},function(e,t,n){"use strict";var o=n(11),r=n(117),a=o.aTypedArrayConstructor;(0,o.exportTypedArrayStaticMethod)("of",(function(){for(var e=0,t=arguments.length,n=new(a(this))(t);t>e;)n[e]=arguments[e++];return n}),r)},function(e,t,n){"use strict";var o=n(11),r=n(79).left,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduce",(function(e){return r(a(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(79).right,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduceRight",(function(e){return r(a(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=Math.floor;a("reverse",(function(){for(var e,t=r(this).length,n=i(t/2),o=0;o1?arguments[1]:undefined,1),n=this.length,o=i(e),c=r(o.length),d=0;if(c+t>n)throw RangeError("Wrong length");for(;da;)u[a]=n[a++];return u}),a((function(){new Int8Array(1).slice()})))},function(e,t,n){"use strict";var o=n(11),r=n(21).some,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("some",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=[].sort;a("sort",(function(e){return i.call(r(this),e)}))},function(e,t,n){"use strict";var o=n(11),r=n(12),a=n(46),i=n(50),c=o.aTypedArray;(0,o.exportTypedArrayMethod)("subarray",(function(e,t){var n=c(this),o=n.length,l=a(e,o);return new(i(n,n.constructor))(n.buffer,n.byteOffset+l*n.BYTES_PER_ELEMENT,r((t===undefined?o:a(t,o))-l))}))},function(e,t,n){"use strict";var o=n(7),r=n(11),a=n(5),i=o.Int8Array,c=r.aTypedArray,l=r.exportTypedArrayMethod,d=[].toLocaleString,u=[].slice,s=!!i&&a((function(){d.call(new i(1))}));l("toLocaleString",(function(){return d.apply(s?u.call(c(this)):c(this),arguments)}),a((function(){return[1,2].toLocaleString()!=new i([1,2]).toLocaleString()}))||!a((function(){i.prototype.toLocaleString.call([1,2])})))},function(e,t,n){"use strict";var o=n(11).exportTypedArrayMethod,r=n(5),a=n(7).Uint8Array,i=a&&a.prototype||{},c=[].toString,l=[].join;r((function(){c.call({})}))&&(c=function(){return l.call(this)});var d=i.toString!=c;o("toString",c,d)},function(e,t,n){"use strict";var o,r=n(7),a=n(71),i=n(56),c=n(81),l=n(163),d=n(8),u=n(37).enforce,s=n(130),p=!r.ActiveXObject&&"ActiveXObject"in r,m=Object.isExtensible,f=function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}},h=e.exports=c("WeakMap",f,l);if(s&&p){o=l.getConstructor(f,"WeakMap",!0),i.REQUIRED=!0;var C=h.prototype,g=C["delete"],b=C.has,N=C.get,v=C.set;a(C,{"delete":function(e){if(d(e)&&!m(e)){var t=u(this);return t.frozen||(t.frozen=new o),g.call(this,e)||t.frozen["delete"](e)}return g.call(this,e)},has:function(e){if(d(e)&&!m(e)){var t=u(this);return t.frozen||(t.frozen=new o),b.call(this,e)||t.frozen.has(e)}return b.call(this,e)},get:function(e){if(d(e)&&!m(e)){var t=u(this);return t.frozen||(t.frozen=new o),b.call(this,e)?N.call(this,e):t.frozen.get(e)}return N.call(this,e)},set:function(e,t){if(d(e)&&!m(e)){var n=u(this);n.frozen||(n.frozen=new o),b.call(this,e)?v.call(this,e,t):n.frozen.set(e,t)}else v.call(this,e,t);return this}})}},function(e,t,n){"use strict";n(81)("WeakSet",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),n(163))},function(e,t,n){"use strict";var o=n(4),r=n(7),a=n(109);o({global:!0,bind:!0,enumerable:!0,forced:!r.setImmediate||!r.clearImmediate},{setImmediate:a.set,clearImmediate:a.clear})},function(e,t,n){"use strict";var o=n(4),r=n(7),a=n(156),i=n(35),c=r.process,l="process"==i(c);o({global:!0,enumerable:!0,noTargetGet:!0},{queueMicrotask:function(e){var t=l&&c.domain;a(t?t.bind(e):e)}})},function(e,t,n){"use strict";var o=n(4),r=n(7),a=n(76),i=[].slice,c=function(e){return function(t,n){var o=arguments.length>2,r=o?i.call(arguments,2):undefined;return e(o?function(){("function"==typeof t?t:Function(t)).apply(this,r)}:t,n)}};o({global:!0,bind:!0,forced:/MSIE .\./.test(a)},{setTimeout:c(r.setTimeout),setInterval:c(r.setInterval)})},function(e,t,n){"use strict";t.__esModule=!0,t._CI=Le,t._HI=O,t._M=Se,t._MCCC=Ee,t._ME=Te,t._MFCC=Me,t._MP=we,t._MR=be,t.__render=De,t.createComponentVNode=function(e,t,n,o,r){var i=new S(1,null,null,e=function(e,t){if(12&e)return e;if(t.prototype&&t.prototype.render)return 4;if(t.render)return 32776;return 8}(e,t),o,function(e,t,n){var o=(32768&e?t.render:t).defaultProps;if(a(o))return n;if(a(n))return u(o,null);return B(n,o)}(e,t,n),function(e,t,n){if(4&e)return n;var o=(32768&e?t.render:t).defaultHooks;if(a(o))return n;if(a(n))return o;return B(n,o)}(e,t,r),t);x.createVNode&&x.createVNode(i);return i},t.createFragment=A,t.createPortal=function(e,t){var n=O(e);return I(1024,1024,null,n,0,null,n.key,t)},t.createRef=function(){return{current:null}},t.createRenderer=function(e){return function(t,n,o,r){e||(e=t),Fe(n,e,o,r)}},t.createTextVNode=T,t.createVNode=I,t.directClone=E,t.findDOMfromVNode=N,t.forwardRef=function(e){return{render:e}},t.getFlagsForElementVnode=function(e){switch(e){case"svg":return 32;case"input":return 64;case"select":return 256;case"textarea":return 128;case"$F":return 8192;default:return 1}},t.linkEvent=function(e,t){if(c(t))return{data:e,event:t};return null},t.normalizeProps=function(e){var t=e.props;if(t){var n=e.flags;481&n&&(void 0!==t.children&&a(e.children)&&R(e,t.children),void 0!==t.className&&(e.className=t.className||null,t.className=undefined)),void 0!==t.key&&(e.key=t.key,t.key=undefined),void 0!==t.ref&&(e.ref=8&n?u(e.ref,t.ref):t.ref,t.ref=undefined)}return e},t.render=Fe,t.rerender=Ke,t.version=t.options=t.Fragment=t.EMPTY_OBJ=t.Component=void 0;var o=Array.isArray;function r(e){var t=typeof e;return"string"===t||"number"===t}function a(e){return null==e}function i(e){return null===e||!1===e||!0===e||void 0===e}function c(e){return"function"==typeof e}function l(e){return"string"==typeof e}function d(e){return null===e}function u(e,t){var n={};if(e)for(var o in e)n[o]=e[o];if(t)for(var r in t)n[r]=t[r];return n}function s(e){return!d(e)&&"object"==typeof e}var p={};t.EMPTY_OBJ=p;function m(e){return e.substr(2).toLowerCase()}function f(e,t){e.appendChild(t)}function h(e,t,n){d(n)?f(e,t):e.insertBefore(t,n)}function C(e,t){e.removeChild(t)}function g(e){for(var t=0;t0,f=d(p),h=l(p)&&"$"===p[0];m||f||h?(n=n||t.slice(0,u),(m||h)&&(s=E(s)),(f||h)&&(s.key="$"+u),n.push(s)):n&&n.push(s),s.flags|=65536}}a=0===(n=n||t).length?1:8}else(n=t).flags|=65536,81920&t.flags&&(n=E(t)),a=2;return e.children=n,e.childFlags=a,e}function O(e){return i(e)||r(e)?T(e,null):o(e)?A(e,0,null):16384&e.flags?E(e):e}var j="http://www.w3.org/1999/xlink",D="http://www.w3.org/XML/1998/namespace",F={"xlink:actuate":j,"xlink:arcrole":j,"xlink:href":j,"xlink:role":j,"xlink:show":j,"xlink:title":j,"xlink:type":j,"xml:base":D,"xml:lang":D,"xml:space":D};function z(e){return{onClick:e,onDblClick:e,onFocusIn:e,onFocusOut:e,onKeyDown:e,onKeyPress:e,onKeyUp:e,onMouseDown:e,onMouseMove:e,onMouseUp:e,onTouchEnd:e,onTouchMove:e,onTouchStart:e}}var W=z(0),H=z(null),U=z(!0);function G(e,t){var n=t.$EV;return n||(n=t.$EV=z(null)),n[e]||1==++W[e]&&(H[e]=function(e){var t="onClick"===e||"onDblClick"===e?function(e){return function(t){0===t.button?q(t,!0,e,Q(t)):t.stopPropagation()}}(e):function(e){return function(t){q(t,!1,e,Q(t))}}(e);return document.addEventListener(m(e),t),t}(e)),n}function K(e,t){var n=t.$EV;n&&n[e]&&(0==--W[e]&&(document.removeEventListener(m(e),H[e]),H[e]=null),n[e]=null)}function q(e,t,n,o){var r=function(e){return c(e.composedPath)?e.composedPath()[0]:e.target}(e);do{if(t&&r.disabled)return;var a=r.$EV;if(a){var i=a[n];if(i&&(o.dom=r,i.event?i.event(i.data,e):i(e),e.cancelBubble))return}r=r.parentNode}while(!d(r))}function $(){this.cancelBubble=!0,this.immediatePropagationStopped||this.stopImmediatePropagation()}function Y(){return this.defaultPrevented}function X(){return this.cancelBubble}function Q(e){var t={dom:document};return e.isDefaultPrevented=Y,e.isPropagationStopped=X,e.stopPropagation=$,Object.defineProperty(e,"currentTarget",{configurable:!0,get:function(){return t.dom}}),t}function J(e,t,n){if(e[t]){var o=e[t];o.event?o.event(o.data,n):o(n)}else{var r=t.toLowerCase();e[r]&&e[r](n)}}function Z(e,t){var n=function(n){var o=this.$V;if(o){var r=o.props||p,a=o.dom;if(l(e))J(r,e,n);else for(var i=0;i-1&&t.options[i]&&(c=t.options[i].value),n&&a(c)&&(c=e.defaultValue),ie(o,c)}}var de,ue,se=Z("onInput",me),pe=Z("onChange");function me(e,t,n){var o=e.value,r=t.value;if(a(o)){if(n){var i=e.defaultValue;a(i)||i===r||(t.defaultValue=i,t.value=i)}}else r!==o&&(t.defaultValue=o,t.value=o)}function fe(e,t,n,o,r,a){64&e?ae(o,n):256&e?le(o,n,r,t):128&e&&me(o,n,r),a&&(n.$V=t)}function he(e,t,n){64&e?function(e,t){te(t.type)?(ee(e,"change",oe),ee(e,"click",re)):ee(e,"input",ne)}(t,n):256&e?function(e){ee(e,"change",ce)}(t):128&e&&function(e,t){ee(e,"input",se),t.onChange&&ee(e,"change",pe)}(t,n)}function Ce(e){return e.type&&te(e.type)?!a(e.checked):!a(e.value)}function ge(e){e&&!L(e,null)&&e.current&&(e.current=null)}function be(e,t,n){e&&(c(e)||void 0!==e.current)&&n.push((function(){L(e,t)||void 0===e.current||(e.current=t)}))}function Ne(e,t){ve(e),v(e,t)}function ve(e){var t,n=e.flags,o=e.children;if(481&n){t=e.ref;var r=e.props;ge(t);var i=e.childFlags;if(!d(r))for(var l=Object.keys(r),u=0,s=l.length;u0;for(var c in i&&(a=Ce(n))&&he(t,o,n),n)_e(c,null,n[c],o,r,a,null);i&&fe(t,e,o,n,!0,a)}function Be(e,t,n){var o=O(e.render(t,e.state,n)),r=n;return c(e.getChildContext)&&(r=u(n,e.getChildContext())),e.$CX=r,o}function Le(e,t,n,o,r,a){var i=new t(n,o),l=i.$N=Boolean(t.getDerivedStateFromProps||i.getSnapshotBeforeUpdate);if(i.$SVG=r,i.$L=a,e.children=i,i.$BS=!1,i.context=o,i.props===p&&(i.props=n),l)i.state=y(i,n,i.state);else if(c(i.componentWillMount)){i.$BR=!0,i.componentWillMount();var u=i.$PS;if(!d(u)){var s=i.state;if(d(s))i.state=u;else for(var m in u)s[m]=u[m];i.$PS=null}i.$BR=!1}return i.$LI=Be(i,n,o),i}function Se(e,t,n,o,r,a){var i=e.flags|=16384;481&i?Te(e,t,n,o,r,a):4&i?function(e,t,n,o,r,a){var i=Le(e,e.type,e.props||p,n,o,a);Se(i.$LI,t,i.$CX,o,r,a),Ee(e.ref,i,a)}(e,t,n,o,r,a):8&i?(!function(e,t,n,o,r,a){Se(e.children=O(function(e,t){return 32768&e.flags?e.type.render(e.props||p,e.ref,t):e.type(e.props||p,t)}(e,n)),t,n,o,r,a)}(e,t,n,o,r,a),Me(e,a)):512&i||16&i?Ie(e,t,r):8192&i?function(e,t,n,o,r,a){var i=e.children,c=e.childFlags;12&c&&0===i.length&&(c=e.childFlags=2,i=e.children=M());2===c?Se(i,n,r,o,r,a):Ae(i,n,t,o,r,a)}(e,n,t,o,r,a):1024&i&&function(e,t,n,o,r){Se(e.children,e.ref,t,!1,null,r);var a=M();Ie(a,n,o),e.dom=a.dom}(e,n,t,r,a)}function Ie(e,t,n){var o=e.dom=document.createTextNode(e.children);d(t)||h(t,o,n)}function Te(e,t,n,o,r,i){var c=e.flags,l=e.props,u=e.className,s=e.children,p=e.childFlags,m=e.dom=function(e,t){return t?document.createElementNS("http://www.w3.org/2000/svg",e):document.createElement(e)}(e.type,o=o||(32&c)>0);if(a(u)||""===u||(o?m.setAttribute("class",u):m.className=u),16===p)_(m,s);else if(1!==p){var f=o&&"foreignObject"!==e.type;2===p?(16384&s.flags&&(e.children=s=E(s)),Se(s,m,n,f,null,i)):8!==p&&4!==p||Ae(s,m,n,f,null,i)}d(t)||h(t,m,r),d(l)||we(e,c,l,m,o),be(e.ref,m,i)}function Ae(e,t,n,o,r,a){for(var i=0;i0,d!==u){var f=d||p;if((c=u||p)!==p)for(var h in(s=(448&r)>0)&&(m=Ce(c)),c){var C=f[h],g=c[h];C!==g&&_e(h,C,g,l,o,m,e)}if(f!==p)for(var b in f)a(c[b])&&!a(f[b])&&_e(b,f[b],null,l,o,m,e)}var N=t.children,v=t.className;e.className!==v&&(a(v)?l.removeAttribute("class"):o?l.setAttribute("class",v):l.className=v);4096&r?function(e,t){e.textContent!==t&&(e.textContent=t)}(l,N):Re(e.childFlags,t.childFlags,e.children,N,l,n,o&&"foreignObject"!==t.type,null,e,i);s&&fe(r,t,l,c,!1,m);var V=t.ref,y=e.ref;y!==V&&(ge(y),be(V,l,i))}(e,t,o,r,m,s):4&m?function(e,t,n,o,r,a,i){var l=t.children=e.children;if(d(l))return;l.$L=i;var s=t.props||p,m=t.ref,f=e.ref,h=l.state;if(!l.$N){if(c(l.componentWillReceiveProps)){if(l.$BR=!0,l.componentWillReceiveProps(s,o),l.$UN)return;l.$BR=!1}d(l.$PS)||(h=u(h,l.$PS),l.$PS=null)}Oe(l,h,s,n,o,r,!1,a,i),f!==m&&(ge(f),be(m,l,i))}(e,t,n,o,r,l,s):8&m?function(e,t,n,o,r,i,l){var d=!0,u=t.props||p,s=t.ref,m=e.props,f=!a(s),h=e.children;f&&c(s.onComponentShouldUpdate)&&(d=s.onComponentShouldUpdate(m,u));if(!1!==d){f&&c(s.onComponentWillUpdate)&&s.onComponentWillUpdate(m,u);var C=t.type,g=O(32768&t.flags?C.render(u,s,o):C(u,o));Pe(h,g,n,o,r,i,l),t.children=g,f&&c(s.onComponentDidUpdate)&&s.onComponentDidUpdate(m,u)}else t.children=h}(e,t,n,o,r,l,s):16&m?function(e,t){var n=t.children,o=t.dom=e.dom;n!==e.children&&(o.nodeValue=n)}(e,t):512&m?t.dom=e.dom:8192&m?function(e,t,n,o,r,a){var i=e.children,c=t.children,l=e.childFlags,d=t.childFlags,u=null;12&d&&0===c.length&&(d=t.childFlags=2,c=t.children=M());var s=0!=(2&d);if(12&l){var p=i.length;(8&l&&8&d||s||!s&&c.length>p)&&(u=N(i[p-1],!1).nextSibling)}Re(l,d,i,c,n,o,r,u,e,a)}(e,t,n,o,r,s):function(e,t,n,o){var r=e.ref,a=t.ref,c=t.children;if(Re(e.childFlags,t.childFlags,e.children,c,r,n,!1,null,e,o),t.dom=e.dom,r!==a&&!i(c)){var l=c.dom;C(r,l),f(a,l)}}(e,t,o,s)}function Re(e,t,n,o,r,a,i,c,l,d){switch(e){case 2:switch(t){case 2:Pe(n,o,r,a,i,c,d);break;case 1:Ne(n,r);break;case 16:ve(n),_(r,o);break;default:!function(e,t,n,o,r,a){ve(e),Ae(t,n,o,r,N(e,!0),a),v(e,n)}(n,o,r,a,i,d)}break;case 1:switch(t){case 2:Se(o,r,a,i,c,d);break;case 1:break;case 16:_(r,o);break;default:Ae(o,r,a,i,c,d)}break;case 16:switch(t){case 16:!function(e,t,n){e!==t&&(""!==e?n.firstChild.nodeValue=t:_(n,t))}(n,o,r);break;case 2:ye(r),Se(o,r,a,i,c,d);break;case 1:ye(r);break;default:ye(r),Ae(o,r,a,i,c,d)}break;default:switch(t){case 16:Ve(n),_(r,o);break;case 2:ke(r,l,n),Se(o,r,a,i,c,d);break;case 1:ke(r,l,n);break;default:var u=0|n.length,s=0|o.length;0===u?s>0&&Ae(o,r,a,i,c,d):0===s?ke(r,l,n):8===t&&8===e?function(e,t,n,o,r,a,i,c,l,d){var u,s,p=a-1,m=i-1,f=0,h=e[f],C=t[f];e:{for(;h.key===C.key;){if(16384&C.flags&&(t[f]=C=E(C)),Pe(h,C,n,o,r,c,d),e[f]=C,++f>p||f>m)break e;h=e[f],C=t[f]}for(h=e[p],C=t[m];h.key===C.key;){if(16384&C.flags&&(t[m]=C=E(C)),Pe(h,C,n,o,r,c,d),e[p]=C,p--,m--,f>p||f>m)break e;h=e[p],C=t[m]}}if(f>p){if(f<=m)for(s=(u=m+1)m)for(;f<=p;)Ne(e[f++],n);else!function(e,t,n,o,r,a,i,c,l,d,u,s,p){var m,f,h,C=0,g=c,b=c,v=a-c+1,y=i-c+1,k=new Int32Array(y+1),x=v===o,_=!1,w=0,B=0;if(r<4||(v|y)<32)for(C=g;C<=a;++C)if(m=e[C],Bc?_=!0:w=c,16384&f.flags&&(t[c]=f=E(f)),Pe(m,f,l,n,d,u,p),++B;break}!x&&c>i&&Ne(m,l)}else x||Ne(m,l);else{var L={};for(C=b;C<=i;++C)L[t[C].key]=C;for(C=g;C<=a;++C)if(m=e[C],Bg;)Ne(e[g++],l);k[c-b]=C+1,w>c?_=!0:w=c,16384&(f=t[c]).flags&&(t[c]=f=E(f)),Pe(m,f,l,n,d,u,p),++B}else x||Ne(m,l);else x||Ne(m,l)}if(x)ke(l,s,e),Ae(t,l,n,d,u,p);else if(_){var S=function(e){var t=0,n=0,o=0,r=0,a=0,i=0,c=0,l=e.length;l>je&&(je=l,de=new Int32Array(l),ue=new Int32Array(l));for(;n>1]]0&&(ue[n]=de[a-1]),de[a]=n)}a=r+1;var d=new Int32Array(a);i=de[a-1];for(;a-- >0;)d[a]=i,i=ue[i],de[a]=0;return d}(k);for(c=S.length-1,C=y-1;C>=0;C--)0===k[C]?(16384&(f=t[w=C+b]).flags&&(t[w]=f=E(f)),Se(f,l,n,d,(h=w+1)=0;C--)0===k[C]&&(16384&(f=t[w=C+b]).flags&&(t[w]=f=E(f)),Se(f,l,n,d,(h=w+1)i?i:a,p=0;pi)for(p=s;p=0;--r){var a=this.tryEntries[r],i=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var c=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(c&&l){if(this.prev=0;--o){var r=this.tryEntries[o];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),V(n),d}},"catch":function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var o=n.completion;if("throw"===o.type){var r=o.arg;V(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:k(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},e}(e.exports);try{regeneratorRuntime=o}catch(r){Function("r","regeneratorRuntime = r")(o)}},function(e,t,n){"use strict";!function(t,n){var o,r,a=t.html5||{},i=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,c=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,l=0,d={};function u(){var e=f.elements;return"string"==typeof e?e.split(" "):e}function s(e){var t=d[e._html5shiv];return t||(t={},l++,e._html5shiv=l,d[l]=t),t}function p(e,t,o){return t||(t=n),r?t.createElement(e):(o||(o=s(t)),!(a=o.cache[e]?o.cache[e].cloneNode():c.test(e)?(o.cache[e]=o.createElem(e)).cloneNode():o.createElem(e)).canHaveChildren||i.test(e)||a.tagUrn?a:o.frag.appendChild(a));var a}function m(e){e||(e=n);var t=s(e);return!f.shivCSS||o||t.hasCSS||(t.hasCSS=!!function(e,t){var n=e.createElement("p"),o=e.getElementsByTagName("head")[0]||e.documentElement;return n.innerHTML="x",o.insertBefore(n.lastChild,o.firstChild)}(e,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),r||function(e,t){t.cache||(t.cache={},t.createElem=e.createElement,t.createFrag=e.createDocumentFragment,t.frag=t.createFrag()),e.createElement=function(n){return f.shivMethods?p(n,e,t):t.createElem(n)},e.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+u().join().replace(/[\w\-:]+/g,(function(e){return t.createElem(e),t.frag.createElement(e),'c("'+e+'")'}))+");return n}")(f,t.frag)}(e,t),e}!function(){try{var e=n.createElement("a");e.innerHTML="",o="hidden"in e,r=1==e.childNodes.length||function(){n.createElement("a");var e=n.createDocumentFragment();return"undefined"==typeof e.cloneNode||"undefined"==typeof e.createDocumentFragment||"undefined"==typeof e.createElement}()}catch(t){o=!0,r=!0}}();var f={elements:a.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:"3.7.3",shivCSS:!1!==a.shivCSS,supportsUnknownElements:r,shivMethods:!1!==a.shivMethods,type:"default",shivDocument:m,createElement:p,createDocumentFragment:function(e,t){if(e||(e=n),r)return e.createDocumentFragment();for(var o=(t=t||s(e)).frag.cloneNode(),a=0,i=u(),c=i.length;a3?c(i):null,N=String(i.key),v=String(i.char),V=i.location,y=i.keyCode||(i.keyCode=N)&&N.charCodeAt(0)||0,k=i.charCode||(i.charCode=v)&&v.charCodeAt(0)||0,x=i.bubbles,_=i.cancelable,w=i.repeat,B=i.locale,L=i.view||e;if(i.which||(i.which=i.keyCode),"initKeyEvent"in p)p.initKeyEvent(t,x,_,L,m,h,f,C,y,k);else if(0>>0),t=Element.prototype,n=t.querySelector,o=t.querySelectorAll;function r(t,n,o){t.setAttribute(e,null);var r=n.call(t,String(o).replace(/(^|,\s*)(:scope([ >]|$))/g,(function(t,n,o,r){return n+"["+e+"]"+(r||" ")})));return t.removeAttribute(e),r}t.querySelector=function(e){return r(this,n,e)},t.querySelectorAll=function(e){return r(this,o,e)}}()}}(window),function(e){var t=e.WeakMap||function(){var e,t=0,n=!1,o=!1;function r(t,r,a){o=a,n=!1,e=undefined,t.dispatchEvent(r)}function a(e){this.value=e}function c(){t++,this.__ce__=new i("@DOMMap:"+t+Math.random())}return a.prototype.handleEvent=function(t){n=!0,o?t.currentTarget.removeEventListener(t.type,this,!1):e=this.value},c.prototype={constructor:c,"delete":function(e){return r(e,this.__ce__,!0),n},get:function(t){r(t,this.__ce__,!1);var n=e;return e=undefined,n},has:function(e){return r(e,this.__ce__,!1),n},set:function(e,t){return r(e,this.__ce__,!0),e.addEventListener(this.__ce__.type,new a(t),!1),this}},c}();function n(){}function o(e,t,n){function r(e){r.once&&(e.currentTarget.removeEventListener(e.type,t,r),r.removed=!0),r.passive&&(e.preventDefault=o.preventDefault),"function"==typeof r.callback?r.callback.call(this,e):r.callback&&r.callback.handleEvent(e),r.passive&&delete e.preventDefault}return r.type=e,r.callback=t,r.capture=!!n.capture,r.passive=!!n.passive,r.once=!!n.once,r.removed=!1,r}n.prototype=(Object.create||Object)(null),o.preventDefault=function(){};var r,a,i=e.CustomEvent,c=e.dispatchEvent,l=e.addEventListener,d=e.removeEventListener,u=0,s=function(){u++},p=[].indexOf||function(e){for(var t=this.length;t--&&this[t]!==e;);return t},m=function(e){return"".concat(e.capture?"1":"0",e.passive?"1":"0",e.once?"1":"0")};try{l("_",s,{once:!0}),c(new i("_")),c(new i("_")),d("_",s,{once:!0})}catch(f){}1!==u&&(a=new t,r=function(e){if(e){var t=e.prototype;t.addEventListener=function(e){return function(t,r,i){if(i&&"boolean"!=typeof i){var c,l,d,u=a.get(this),s=m(i);u||a.set(this,u=new n),t in u||(u[t]={handler:[],wrap:[]}),l=u[t],(c=p.call(l.handler,r))<0?(c=l.handler.push(r)-1,l.wrap[c]=d=new n):d=l.wrap[c],s in d||(d[s]=o(t,r,i),e.call(this,t,d[s],d[s].capture))}else e.call(this,t,r,i)}}(t.addEventListener),t.removeEventListener=function(e){return function(t,n,o){if(o&&"boolean"!=typeof o){var r,i,c,l,d=a.get(this);if(d&&t in d&&(c=d[t],-1<(i=p.call(c.handler,n))&&(r=m(o))in(l=c.wrap[i]))){for(r in e.call(this,t,l[r],l[r].capture),delete l[r],l)return;c.handler.splice(i,1),c.wrap.splice(i,1),0===c.handler.length&&delete d[t]}}else e.call(this,t,n,o)}}(t.removeEventListener)}},e.EventTarget?r(EventTarget):(r(e.Text),r(e.Element||e.HTMLElement),r(e.HTMLDocument),r(e.Window||{prototype:e}),r(e.XMLHttpRequest)))}(window)},function(e,t,n){"use strict";!function(e){if("undefined"!=typeof e.setAttribute){var t=function(e){return e.replace(/-[a-z]/g,(function(e){return e[1].toUpperCase()}))};e.setProperty=function(e,n){var o=t(e);if(!n)return this.removeAttribute(o);var r=String(n);return this.setAttribute(o,r)},e.getPropertyValue=function(e){var n=t(e);return this.getAttribute(n)||null},e.removeProperty=function(e){var n=t(e),o=this.getAttribute(n);return this.removeAttribute(n),o}}}(CSSStyleDeclaration.prototype)},function(e,t,n){"use strict";window.Int32Array||(window.Int32Array=Array)},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){"use strict";(function(e){var n;n=void 0!==e?e:void 0,t.loadCSS=function(e,t,o,r){var a,i=n.document,c=i.createElement("link");if(t)a=t;else{var l=(i.body||i.getElementsByTagName("head")[0]).childNodes;a=l[l.length-1]}var d=i.styleSheets;if(r)for(var u in r)r.hasOwnProperty(u)&&c.setAttribute(u,r[u]);c.rel="stylesheet",c.href=e,c.media="only x",function m(e){if(i.body)return e();setTimeout((function(){m(e)}))}((function(){a.parentNode.insertBefore(c,t?a:a.nextSibling)}));var s=function f(e){for(var t=c.href,n=d.length;n--;)if(d[n].href===t)return e();setTimeout((function(){f(e)}))};function p(){c.addEventListener&&c.removeEventListener("load",p),c.media=o||"all"}return c.addEventListener&&c.addEventListener("load",p),c.onloadcssdefined=s,s(p),c}}).call(this,n(127))},function(e,t,n){"use strict";t.__esModule=!0,t.useDispatch=t.StoreProvider=t.createStore=void 0;var o=n(31),r=n(417),a=n(0),i=n(1),c=n(119);t.createStore=function(){var e=(0,o.flow)([function(e,t){return void 0===e&&(e={}),e},i.backendReducer,c.hotKeyReducer]),t=[c.hotKeyMiddleware];return(0,r.createStore)(e,r.applyMiddleware.apply(void 0,t))};var l=function(e){var t,n;function o(){return e.apply(this,arguments)||this}n=e,(t=o).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var r=o.prototype;return r.getChildContext=function(){return{store:this.props.store}},r.render=function(){return this.props.children},o}(a.Component);t.StoreProvider=l;t.useDispatch=function(e){return e.store.dispatch}},function(e,t,n){"use strict";t.__esModule=!0,t.applyMiddleware=t.createStore=void 0;var o=n(31);t.createStore=function r(e,t){if(t)return t(r)(e);var n,o=[],a=function(t){n=e(n,t),o.forEach((function(e){return e()}))};return a({type:"@@INIT"}),{dispatch:a,subscribe:function(e){o.push(e)},getState:function(){return n}}};t.applyMiddleware=function(){for(var e=arguments.length,t=new Array(e),n=0;n1?r-1:0),i=1;i1?t-1:0),o=1;o=0||(r[n]=e[n]);return r}(e,["className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["BlockQuote",t])},n)))}},function(e,t,n){"use strict";var o,r;t.__esModule=!0,t.VNodeFlags=t.ChildFlags=void 0,t.VNodeFlags=o,function(e){e[e.HtmlElement=1]="HtmlElement",e[e.ComponentUnknown=2]="ComponentUnknown",e[e.ComponentClass=4]="ComponentClass",e[e.ComponentFunction=8]="ComponentFunction",e[e.Text=16]="Text",e[e.SvgElement=32]="SvgElement",e[e.InputElement=64]="InputElement",e[e.TextareaElement=128]="TextareaElement",e[e.SelectElement=256]="SelectElement",e[e.Void=512]="Void",e[e.Portal=1024]="Portal",e[e.ReCreate=2048]="ReCreate",e[e.ContentEditable=4096]="ContentEditable",e[e.Fragment=8192]="Fragment",e[e.InUse=16384]="InUse",e[e.ForwardRef=32768]="ForwardRef",e[e.Normalized=65536]="Normalized",e[e.ForwardRefComponent=32776]="ForwardRefComponent",e[e.FormElement=448]="FormElement",e[e.Element=481]="Element",e[e.Component=14]="Component",e[e.DOMRef=2033]="DOMRef",e[e.InUseOrNormalized=81920]="InUseOrNormalized",e[e.ClearInUse=-16385]="ClearInUse",e[e.ComponentKnown=12]="ComponentKnown"}(o||(t.VNodeFlags=o={})),t.ChildFlags=r,function(e){e[e.UnknownChildren=0]="UnknownChildren",e[e.HasInvalidChildren=1]="HasInvalidChildren",e[e.HasVNodeChildren=2]="HasVNodeChildren",e[e.HasNonKeyedChildren=4]="HasNonKeyedChildren",e[e.HasKeyedChildren=8]="HasKeyedChildren",e[e.HasTextChildren=16]="HasTextChildren",e[e.MultipleChildren=12]="MultipleChildren"}(r||(t.ChildFlags=r={}))},function(e,t,n){"use strict";t.__esModule=!0,t.ByondUi=void 0;var o=n(0),r=n(6),a=n(423),i=n(26),c=n(44),l=n(18);function d(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var u=(0,c.createLogger)("ByondUi"),s=[];window.addEventListener("beforeunload",(function(){for(var e=0;e=0||(r[n]=e[n]);return r}(t,["data","rangeX","rangeY","fillColor","strokeColor","strokeWidth"]),C=this.state.viewBox,g=function(e,t,n,o){if(0===e.length)return[];var a=(0,r.zipWith)(Math.min).apply(void 0,e),i=(0,r.zipWith)(Math.max).apply(void 0,e);return n!==undefined&&(a[0]=n[0],i[0]=n[1]),o!==undefined&&(a[1]=o[0],i[1]=o[1]),(0,r.map)((function(e){return(0,r.zipWith)((function(e,t,n,o){return(e-t)/(n-t)*o}))(e,a,i,t)}))(e)}(a,C,i,l);if(g.length>0){var b=g[0],N=g[g.length-1];g.push([C[0]+f,N[1]]),g.push([C[0]+f,-f]),g.push([-f,-f]),g.push([-f,b[1]])}var v=function(e){for(var t="",n=0;n=0||(r[n]=e[n]);return r}(t,["children","color","title","buttons"]);return(0,o.createComponentVNode)(2,r.Box,{mb:1,children:[(0,o.createVNode)(1,"div","Table",[(0,o.createVNode)(1,"div","Table__cell",(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Button,Object.assign({fluid:!0,color:l,icon:n?"chevron-down":"chevron-right",onClick:function(){return e.setState({open:!n})}},s,{children:d}))),2),u&&(0,o.createVNode)(1,"div","Table__cell Table__cell--collapsing",u,0)],0),n&&(0,o.createComponentVNode)(2,r.Box,{mt:1,children:i})]})},i}(o.Component);t.Collapsible=i},function(e,t,n){"use strict";t.__esModule=!0,t.ColorBox=void 0;var o=n(0),r=n(6),a=n(18);var i=function(e){var t=e.content,n=(e.children,e.className),i=e.color,c=e.backgroundColor,l=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["content","children","className","color","backgroundColor"]);return l.color=t?null:"transparent",l.backgroundColor=i||c,(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,r.classes)(["ColorBox",n,(0,a.computeBoxClassName)(l)]),t||".",0,Object.assign({},(0,a.computeBoxProps)(l))))};t.ColorBox=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Dropdown=void 0;var o=n(0),r=n(6),a=n(18),i=n(123);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t,n;function l(t){var n;return(n=e.call(this,t)||this).state={selected:t.selected,open:!1},n.handleClick=function(){n.state.open&&n.setOpen(!1)},n}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var d=l.prototype;return d.componentWillUnmount=function(){window.removeEventListener("click",this.handleClick)},d.setOpen=function(e){var t=this;this.setState({open:e}),e?(setTimeout((function(){return window.addEventListener("click",t.handleClick)})),this.menuRef.focus()):window.removeEventListener("click",this.handleClick)},d.setSelected=function(e){this.setState({selected:e}),this.setOpen(!1),this.props.onSelected(e)},d.buildMenu=function(){var e=this,t=this.props.options,n=(void 0===t?[]:t).map((function(t){return(0,o.createVNode)(1,"div","Dropdown__menuentry",t,0,{onClick:function(){e.setSelected(t)}},t)}));return n.length?n:"No Options Found"},d.render=function(){var e=this,t=this.props,n=t.color,l=void 0===n?"default":n,d=t.over,u=t.noscroll,s=t.nochevron,p=t.width,m=(t.onClick,t.selected,t.disabled),f=c(t,["color","over","noscroll","nochevron","width","onClick","selected","disabled"]),h=f.className,C=c(f,["className"]),g=d?!this.state.open:this.state.open,b=this.state.open?(0,o.createVNode)(1,"div",(0,r.classes)([u?"Dropdown__menu-noscroll":"Dropdown__menu",d&&"Dropdown__over"]),this.buildMenu(),0,{tabIndex:"-1",style:{width:p}},null,(function(t){e.menuRef=t})):null;return(0,o.createVNode)(1,"div","Dropdown",[(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({width:p,className:(0,r.classes)(["Dropdown__control","Button","Button--color--"+l,m&&"Button--disabled",h])},C,{onClick:function(){m&&!e.state.open||e.setOpen(!e.state.open)},children:[(0,o.createVNode)(1,"span","Dropdown__selected-text",this.state.selected,0),!!s||(0,o.createVNode)(1,"span","Dropdown__arrow-button",(0,o.createComponentVNode)(2,i.Icon,{name:g?"chevron-up":"chevron-down"}),2)]}))),b],0)},l}(o.Component);t.Dropdown=l},function(e,t,n){"use strict";t.__esModule=!0,t.GridColumn=t.Grid=void 0;var o=n(0),r=n(170),a=n(6);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.children,n=i(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table,Object.assign({},n,{children:(0,o.createComponentVNode)(2,r.Table.Row,{children:t})})))};t.Grid=c,c.defaultHooks=a.pureComponentHooks;var l=function(e){var t=e.size,n=void 0===t?1:t,a=e.style,c=i(e,["size","style"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table.Cell,Object.assign({style:Object.assign({width:n+"%"},a)},c)))};t.GridColumn=l,c.defaultHooks=a.pureComponentHooks,c.Column=l},function(e,t,n){"use strict";t.__esModule=!0,t.Input=void 0;var o=n(0),r=n(6),a=n(18);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){return(0,r.isFalsy)(e)?"":e},l=function(e){var t,n;function l(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={editing:!1},t.handleInput=function(e){var n=t.state.editing,o=t.props.onInput;n||t.setEditing(!0),o&&o(e,e.target.value)},t.handleFocus=function(e){t.state.editing||t.setEditing(!0)},t.handleBlur=function(e){var n=t.state.editing,o=t.props.onChange;n&&(t.setEditing(!1),o&&o(e,e.target.value))},t.handleKeyDown=function(e){var n=t.props,o=n.onInput,r=n.onChange,a=n.onEnter;return 13===e.keyCode?(t.setEditing(!1),r&&r(e,e.target.value),o&&o(e,e.target.value),a&&a(e,e.target.value),void(t.props.selfClear?e.target.value="":e.target.blur())):27===e.keyCode?(t.setEditing(!1),e.target.value=c(t.props.value),void e.target.blur()):void 0},t}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var d=l.prototype;return d.componentDidMount=function(){var e=this.props.value,t=this.inputRef.current;t&&(t.value=c(e)),this.props.autoFocus&&setTimeout((function(){return t.focus()}),1)},d.componentDidUpdate=function(e,t){var n=this.state.editing,o=e.value,r=this.props.value,a=this.inputRef.current;a&&!n&&o!==r&&(a.value=c(r))},d.setEditing=function(e){this.setState({editing:e})},d.render=function(){var e=this.props,t=(e.selfClear,e.onInput,e.onChange,e.onEnter,e.value,e.maxLength),n=e.placeholder,c=i(e,["selfClear","onInput","onChange","onEnter","value","maxLength","placeholder"]),l=c.className,d=c.fluid,u=i(c,["className","fluid"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Input",d&&"Input--fluid",l])},u,{children:[(0,o.createVNode)(1,"div","Input__baseline",".",16),(0,o.createVNode)(64,"input","Input__input",null,1,{placeholder:n,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,maxLength:t},null,this.inputRef)]})))},l}(o.Component);t.Input=l},function(e,t,n){"use strict";t.__esModule=!0,t.Knob=void 0;var o=n(0),r=n(15),a=n(6),i=n(26),c=n(18),l=n(171),d=n(124);t.Knob=function(e){if(i.IS_IE8)return(0,o.normalizeProps)((0,o.createComponentVNode)(2,d.NumberInput,Object.assign({},e)));var t=e.animated,n=e.format,u=e.maxValue,s=e.minValue,p=e.onChange,m=e.onDrag,f=e.step,h=e.stepPixelSize,C=e.suppressFlicker,g=e.unit,b=e.value,N=e.className,v=e.style,V=e.fillValue,y=e.color,k=e.ranges,x=void 0===k?{}:k,_=e.size,w=e.bipolar,B=(e.children,function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["animated","format","maxValue","minValue","onChange","onDrag","step","stepPixelSize","suppressFlicker","unit","value","className","style","fillValue","color","ranges","size","bipolar","children"]));return(0,o.normalizeProps)((0,o.createComponentVNode)(2,l.DraggableControl,Object.assign({dragMatrix:[0,-1]},{animated:t,format:n,maxValue:u,minValue:s,onChange:p,onDrag:m,step:f,stepPixelSize:h,suppressFlicker:C,unit:g,value:b},{children:function(e){var t=e.dragging,n=(e.editing,e.value),i=e.displayValue,l=e.displayElement,d=e.inputElement,p=e.handleDragStart,m=(0,r.scale)(null!=V?V:i,s,u),f=(0,r.scale)(i,s,u),h=y||(0,r.keyOfMatchingRange)(null!=V?V:n,x)||"default",C=270*(f-.5);return(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,a.classes)(["Knob","Knob--color--"+h,w&&"Knob--bipolar",N,(0,c.computeBoxClassName)(B)]),[(0,o.createVNode)(1,"div","Knob__circle",(0,o.createVNode)(1,"div","Knob__cursorBox",(0,o.createVNode)(1,"div","Knob__cursor"),2,{style:{transform:"rotate("+C+"deg)"}}),2),t&&(0,o.createVNode)(1,"div","Knob__popupValue",l,0),(0,o.createVNode)(32,"svg","Knob__ring Knob__ringTrackPivot",(0,o.createVNode)(32,"circle","Knob__ringTrack",null,1,{cx:"50",cy:"50",r:"50"}),2,{viewBox:"0 0 100 100"}),(0,o.createVNode)(32,"svg","Knob__ring Knob__ringFillPivot",(0,o.createVNode)(32,"circle","Knob__ringFill",null,1,{style:{"stroke-dashoffset":((w?2.75:2)-1.5*m)*Math.PI*50},cx:"50",cy:"50",r:"50"}),2,{viewBox:"0 0 100 100"}),d],0,Object.assign({},(0,c.computeBoxProps)(Object.assign({style:Object.assign({"font-size":_+"rem"},v)},B)),{onMouseDown:p})))}})))}},function(e,t,n){"use strict";t.__esModule=!0,t.LabeledControls=void 0;var o=n(0),r=n(169);function a(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var i=function(e){var t=e.children,n=a(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Flex,Object.assign({mx:-.5,align:"stretch",justify:"space-between"},n,{children:t})))};t.LabeledControls=i;i.Item=function(e){var t=e.label,n=e.children,i=a(e,["label","children"]);return(0,o.createComponentVNode)(2,r.Flex.Item,{mx:1,children:(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Flex,Object.assign({minWidth:"52px",height:"100%",direction:"column",align:"center",textAlign:"center",justify:"space-between"},i,{children:[(0,o.createComponentVNode)(2,r.Flex.Item),(0,o.createComponentVNode)(2,r.Flex.Item,{children:n}),(0,o.createComponentVNode)(2,r.Flex.Item,{color:"label",children:t})]})))})}},function(e,t,n){"use strict";t.__esModule=!0,t.Modal=void 0;var o=n(0),r=n(6),a=n(18),i=n(167);t.Modal=function(e){var t=e.className,n=e.children,c=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className","children"]);return(0,o.createComponentVNode)(2,i.Dimmer,{children:(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,r.classes)(["Modal",t,(0,a.computeBoxClassName)(c)]),n,0,Object.assign({},(0,a.computeBoxProps)(c))))})}},function(e,t,n){"use strict";t.__esModule=!0,t.NoticeBox=void 0;var o=n(0),r=n(6),a=n(18);var i=function(e){var t=e.className,n=e.color,i=e.info,c=(e.warning,e.success),l=e.danger,d=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className","color","info","warning","success","danger"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["NoticeBox",n&&"NoticeBox--color--"+n,i&&"NoticeBox--type--info",c&&"NoticeBox--type--success",l&&"NoticeBox--type--danger",t])},d)))};t.NoticeBox=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.ProgressBar=void 0;var o=n(0),r=n(15),a=n(6),i=n(18);var c=function(e){var t=e.className,n=e.value,c=e.minValue,l=void 0===c?0:c,d=e.maxValue,u=void 0===d?1:d,s=e.color,p=e.ranges,m=void 0===p?{}:p,f=e.children,h=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className","value","minValue","maxValue","color","ranges","children"]),C=(0,r.scale)(n,l,u),g=f!==undefined,b=s||(0,r.keyOfMatchingRange)(n,m)||"default";return(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,a.classes)(["ProgressBar","ProgressBar--color--"+b,t,(0,i.computeBoxClassName)(h)]),[(0,o.createVNode)(1,"div","ProgressBar__fill ProgressBar__fill--animated",null,1,{style:{width:100*(0,r.clamp01)(C)+"%"}}),(0,o.createVNode)(1,"div","ProgressBar__content",g?f:(0,r.toFixed)(100*C)+"%",0)],4,Object.assign({},(0,i.computeBoxProps)(h))))};t.ProgressBar=c,c.defaultHooks=a.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Section=void 0;var o=n(0),r=n(6),a=n(18);var i=function(e){var t=e.className,n=e.title,i=e.level,c=void 0===i?1:i,l=e.buttons,d=e.content,u=e.children,s=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className","title","level","buttons","content","children"]),p=!(0,r.isFalsy)(n)||!(0,r.isFalsy)(l),m=!(0,r.isFalsy)(d)||!(0,r.isFalsy)(u);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Section","Section--level--"+c,t])},s,{children:[p&&(0,o.createVNode)(1,"div","Section__title",[(0,o.createVNode)(1,"span","Section__titleText",n,0),(0,o.createVNode)(1,"div","Section__buttons",l,0)],4),m&&(0,o.createVNode)(1,"div","Section__content",[d,u],0)]})))};t.Section=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Slider=void 0;var o=n(0),r=n(15),a=n(6),i=n(26),c=n(18),l=n(171),d=n(124);t.Slider=function(e){if(i.IS_IE8)return(0,o.normalizeProps)((0,o.createComponentVNode)(2,d.NumberInput,Object.assign({},e)));var t=e.animated,n=e.format,u=e.maxValue,s=e.minValue,p=e.onChange,m=e.onDrag,f=e.step,h=e.stepPixelSize,C=e.suppressFlicker,g=e.unit,b=e.value,N=e.className,v=e.fillValue,V=e.color,y=e.ranges,k=void 0===y?{}:y,x=e.children,_=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["animated","format","maxValue","minValue","onChange","onDrag","step","stepPixelSize","suppressFlicker","unit","value","className","fillValue","color","ranges","children"]),w=x!==undefined;return(0,o.normalizeProps)((0,o.createComponentVNode)(2,l.DraggableControl,Object.assign({dragMatrix:[1,0]},{animated:t,format:n,maxValue:u,minValue:s,onChange:p,onDrag:m,step:f,stepPixelSize:h,suppressFlicker:C,unit:g,value:b},{children:function(e){var t=e.dragging,n=(e.editing,e.value),i=e.displayValue,l=e.displayElement,d=e.inputElement,p=e.handleDragStart,m=v!==undefined&&null!==v,f=((0,r.scale)(n,s,u),(0,r.scale)(null!=v?v:i,s,u)),h=(0,r.scale)(i,s,u),C=V||(0,r.keyOfMatchingRange)(null!=v?v:n,k)||"default";return(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,a.classes)(["Slider","ProgressBar","ProgressBar--color--"+C,N,(0,c.computeBoxClassName)(_)]),[(0,o.createVNode)(1,"div",(0,a.classes)(["ProgressBar__fill",m&&"ProgressBar__fill--animated"]),null,1,{style:{width:100*(0,r.clamp01)(f)+"%",opacity:.4}}),(0,o.createVNode)(1,"div","ProgressBar__fill",null,1,{style:{width:100*(0,r.clamp01)(Math.min(f,h))+"%"}}),(0,o.createVNode)(1,"div","Slider__cursorOffset",[(0,o.createVNode)(1,"div","Slider__cursor"),(0,o.createVNode)(1,"div","Slider__pointer"),t&&(0,o.createVNode)(1,"div","Slider__popupValue",l,0)],0,{style:{width:100*(0,r.clamp01)(h)+"%"}}),(0,o.createVNode)(1,"div","ProgressBar__content",w?x:l,0),d],0,Object.assign({},(0,c.computeBoxProps)(_),{onMouseDown:p})))}})))}},function(e,t,n){"use strict";t.__esModule=!0,t.TextArea=void 0;var o=n(0),r=n(6),a=n(18);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){return(0,r.isFalsy)(e)?"":e},l=function(e){var t,n;function l(t,n){var r;(r=e.call(this,t,n)||this).textareaRef=(0,o.createRef)(),r.fillerRef=(0,o.createRef)(),r.state={editing:!1};var a=t.dontUseTabForIndent,i=void 0!==a&&a;return r.autoresize=function(){r.fillerRef&&r.textareaRef},r.handleOnInput=function(e){var t=r.state.editing,n=r.props.onInput;t||r.setEditing(!0),n&&n(e,e.target.value),r.autoresize()},r.handleOnChange=function(e){var t=r.state.editing,n=r.props.onChange;t&&r.setEditing(!1),n&&n(e,e.target.value),r.autoresize()},r.handleKeyPress=function(e){var t=r.state.editing,n=r.props.onKeyPress;t||r.setEditing(!0),n&&n(e,e.target.value),r.autoresize()},r.handleKeyDown=function(e){var t=r.state.editing,n=r.props.onKeyDown;if((t||r.setEditing(!0),!i)&&9===(e.keyCode||e.which)){e.preventDefault();var o=e.target.selectionStart;e.target.value=e.target.value.substring(0,e.target.selectionStart)+"\t"+e.target.value.substring(e.target.selectionEnd),e.target.selectionEnd=o+1}n&&n(e,e.target.value),r.autoresize()},r.handleFocus=function(e){r.state.editing||r.setEditing(!0)},r.handleBlur=function(e){var t=r.state.editing,n=r.props.onChange;t&&(r.setEditing(!1),n&&n(e,e.target.value))},r}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var d=l.prototype;return d.componentDidMount=function(){var e=this.props.value,t=this.textareaRef.current;t&&(t.value=c(e),this.autoresize())},d.componentDidUpdate=function(e,t){var n=this.state.editing,o=e.value,r=this.props.value,a=this.textareaRef.current;a&&!n&&o!==r&&(a.value=c(r),this.autoresize())},d.setEditing=function(e){this.setState({editing:e})},d.getValue=function(){return this.textareaRef.current&&this.textareaRef.current.value},d.render=function(){this.props;var e=this.props,t=(e.onChange,e.onKeyDown,e.onKeyPress,e.onInput,e.onFocus,e.onBlur,e.onEnter,e.value),n=e.placeholder,c=i(e,["onChange","onKeyDown","onKeyPress","onInput","onFocus","onBlur","onEnter","value","placeholder"]),l=c.className,d=c.fluid,u=i(c,["className","fluid"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["TextArea",d&&"TextArea--fluid",l])},u,{children:(0,o.createVNode)(128,"textarea","TextArea__textarea",null,1,{value:t,placeholder:n,onChange:this.handleOnChange,onKeyDown:this.handleKeyDown,onKeyPress:this.handleKeyPress,onInput:this.handleOnInput,onFocus:this.handleFocus,onBlur:this.handleBlur},null,this.textareaRef)})))},l}(o.Component);t.TextArea=l},function(e,t,n){"use strict";t.__esModule=!0,t.Tabs=void 0;var o=n(0),r=n(6),a=n(18),i=n(122);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t=e.className,n=e.vertical,i=e.children,l=c(e,["className","vertical","children"]);return(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,r.classes)(["Tabs",n?"Tabs--vertical":"Tabs--horizontal",t,(0,a.computeBoxClassName)(l)]),(0,o.createVNode)(1,"div","Tabs__tabBox",i,0),2,Object.assign({},(0,a.computeBoxProps)(l))))};t.Tabs=l;l.Tab=function(e){var t=e.className,n=e.selected,a=e.altSelection,l=c(e,["className","selected","altSelection"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Button,Object.assign({className:(0,r.classes)(["Tabs__tab",n&&"Tabs__tab--selected",a&&n&&"Tabs__tab--altSelection",t]),selected:!a&&n,color:"transparent"},l)))}},function(e,t,n){"use strict";t.__esModule=!0,t.TimeDisplay=void 0;var o=n(15),r=n(0);var a=function(e){return"number"==typeof e&&Number.isFinite(e)&&!Number.isNaN(e)},i=function(e){var t,n;function r(t){var n;return(n=e.call(this,t)||this).timer=null,n.last_seen_value=undefined,n.state={value:0},a(t.value)&&(n.state.value=Number(t.value),n.last_seen_value=Number(t.value)),n}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var i=r.prototype;return i.componentDidUpdate=function(){var e=this;this.props.auto!==undefined&&(clearInterval(this.timer),this.timer=setInterval((function(){return e.tick()}),1e3))},i.tick=function(){var e=Number(this.state.value);this.props.value!==this.last_seen_value&&(this.last_seen_value=this.props.value,e=this.props.value);var t="up"===this.props.auto?10:-10,n=Math.max(0,e+t);this.setState({value:n})},i.componentDidMount=function(){var e=this;this.props.auto!==undefined&&(this.timer=setInterval((function(){return e.tick()}),1e3))},i.componentWillUnmount=function(){clearInterval(this.timer)},i.render=function(){var e=this.state.value;if(!a(e))return this.state.value||null;var t=(0,o.toFixed)(Math.floor(e/10%60)).padStart(2,"0"),n=(0,o.toFixed)(Math.floor(e/600%60)).padStart(2,"0");return(0,o.toFixed)(Math.floor(e/36e3%24)).padStart(2,"0")+":"+n+":"+t},r}(r.Component);t.TimeDisplay=i},function(e,t,n){var o={"./AbductorConsole.js":441,"./Achievements.js":442,"./AiAirlock.js":443,"./AiRestorer.js":174,"./AirAlarm.js":444,"./AirlockElectronics.js":446,"./Apc.js":447,"./ApcControl.js":448,"./AtmosAlertConsole.js":449,"./AtmosControlConsole.js":450,"./AtmosFilter.js":451,"./AtmosMixer.js":452,"./AtmosPump.js":453,"./AutomatedAnnouncement.js":454,"./BankMachine.js":455,"./Bepis.js":456,"./Biogenerator.js":457,"./BlackMarketUplink.js":458,"./BluespaceArtillery.js":459,"./BluespaceLocator.js":460,"./BorgPanel.js":461,"./BrigTimer.js":462,"./CameraConsole.js":463,"./Canister.js":464,"./Canvas.js":465,"./Cargo.js":176,"./CargoBountyConsole.js":466,"./CargoExpress.js":467,"./CargoHoldTerminal.js":468,"./CellularEmporium.js":469,"./CentcomPodLauncher.js":470,"./ChemAcclimator.js":471,"./ChemDebugSynthesizer.js":472,"./ChemDispenser.js":473,"./ChemFilter.js":474,"./ChemHeater.js":475,"./ChemMaster.js":476,"./ChemPress.js":477,"./ChemReactionChamber.js":478,"./ChemSplitter.js":479,"./ChemSynthesizer.js":480,"./CodexGigas.js":481,"./ComputerFabricator.js":482,"./Crayon.js":483,"./CrewConsole.js":484,"./Cryo.js":485,"./DecalPainter.js":486,"./DisposalUnit.js":487,"./DnaConsole.js":488,"./DnaVault.js":489,"./EightBallVote.js":490,"./Electrolyzer.js":491,"./Electropack.js":492,"./EmergencyShuttleConsole.js":493,"./EngravedMessage.js":494,"./ExosuitControlConsole.js":495,"./ForbiddenLore.js":496,"./Gateway.js":497,"./GlandDispenser.js":498,"./Gps.js":499,"./GravityGenerator.js":500,"./GulagItemReclaimer.js":501,"./GulagTeleporterConsole.js":502,"./Holodeck.js":503,"./Holopad.js":504,"./HypnoChair.js":505,"./ImplantChair.js":506,"./InfraredEmitter.js":507,"./Intellicard.js":508,"./Jukebox.js":509,"./KeycardAuth.js":510,"./LaborClaimConsole.js":511,"./LanguageMenu.js":512,"./LaunchpadConsole.js":178,"./LaunchpadRemote.js":513,"./MafiaPanel.js":514,"./MalfunctionModulePicker.js":515,"./MechBayPowerConsole.js":516,"./MedicalKiosk.js":517,"./MiningVendor.js":518,"./Mint.js":519,"./Mule.js":520,"./NaniteChamberControl.js":521,"./NaniteCloudControl.js":522,"./NaniteProgramHub.js":523,"./NaniteProgrammer.js":524,"./NaniteRemote.js":525,"./NotificationPreferences.js":526,"./NtnetRelay.js":527,"./NtosAiRestorer.js":528,"./NtosArcade.js":529,"./NtosAtmos.js":530,"./NtosBountyConsole.js":531,"./NtosCard.js":532,"./NtosConfiguration.js":533,"./NtosCrewManifest.js":534,"./NtosCyborgRemoteMonitor.js":179,"./NtosCyborgRemoteMonitorSyndicate.js":535,"./NtosFileManager.js":536,"./NtosJobManager.js":537,"./NtosMain.js":538,"./NtosNetChat.js":539,"./NtosNetDos.js":540,"./NtosNetDownloader.js":541,"./NtosNetMonitor.js":542,"./NtosPowerMonitor.js":543,"./NtosRadar.js":180,"./NtosRadarSyndicate.js":544,"./NtosRequestKiosk.js":545,"./NtosRevelation.js":546,"./NtosRoboControl.js":547,"./NtosShipping.js":548,"./NtosStationAlertConsole.js":549,"./NtosSupermatterMonitor.js":550,"./NuclearBomb.js":551,"./OperatingComputer.js":552,"./Orbit.js":553,"./OreBox.js":554,"./OreRedemptionMachine.js":555,"./Pandemic.js":556,"./PaperSheet.js":557,"./ParticleAccelerator.js":560,"./PersonalCrafting.js":561,"./PortableChemMixer.js":562,"./PortableGenerator.js":563,"./PortablePump.js":564,"./PortableScrubber.js":565,"./PortableTurret.js":566,"./PowerMonitor.js":126,"./ProbingConsole.js":567,"./ProximitySensor.js":568,"./Radio.js":569,"./RadioactiveMicrolaser.js":570,"./RapidPipeDispenser.js":571,"./RemoteRobotControl.js":572,"./RequestKiosk.js":181,"./RoboticsControlConsole.js":573,"./Roulette.js":574,"./SatelliteControl.js":575,"./ScannerGate.js":576,"./SeedExtractor.js":577,"./ShuttleManipulator.js":578,"./Signaler.js":579,"./SkillPanel.js":580,"./Sleeper.js":581,"./SlimeBodySwapper.js":582,"./SmartVend.js":583,"./Smes.js":584,"./SmokeMachine.js":585,"./SolarControl.js":586,"./SpaceHeater.js":587,"./SpawnersMenu.js":588,"./StationAlertConsole.js":182,"./SuitStorageUnit.js":589,"./SyndContractor.js":590,"./TachyonArray.js":591,"./Tank.js":592,"./TankDispenser.js":593,"./Teleporter.js":594,"./ThermoMachine.js":595,"./Timer.js":596,"./TransferValve.js":597,"./TurbineComputer.js":598,"./TurretControl.js":599,"./Uplink.js":125,"./VaultController.js":600,"./Vendatray.js":601,"./Vending.js":602,"./Wires.js":603};function r(e){var t=a(e);return n(t)}function a(e){if(!n.o(o,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return o[e]}r.keys=function(){return Object.keys(o)},r.resolve=a,e.exports=r,r.id=440},function(e,t,n){"use strict";t.__esModule=!0,t.AbductorConsole=void 0;var o=n(0),r=n(125),a=n(1),i=n(3),c=n(2);t.AbductorConsole=function(e,t){var n=(0,a.useSharedState)(t,"tab",1),r=n[0],s=n[1];return(0,o.createComponentVNode)(2,c.Window,{theme:"abductor",resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{icon:"list",lineHeight:"23px",selected:1===r,onClick:function(){return s(1)},children:"Abductsoft 3000"}),(0,o.createComponentVNode)(2,i.Tabs.Tab,{icon:"list",lineHeight:"23px",selected:2===r,onClick:function(){return s(2)},children:"Mission Settings"})]}),1===r&&(0,o.createComponentVNode)(2,l),2===r&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d),(0,o.createComponentVNode)(2,u)],4)]})})};var l=function(e,t){var n=(0,a.useBackend)(t),c=(n.act,n.data),l=c.experiment,d=c.points,u=c.credits;return l?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Collected Samples",children:d})})}),(0,o.createComponentVNode)(2,r.GenericUplink,{currencyAmount:u,currencySymbol:"Credits"})],4):(0,o.createComponentVNode)(2,i.NoticeBox,{danger:!0,children:"No Experiment Machine Detected"})},d=function(e,t){var n=(0,a.useBackend)(t),r=n.act,c=n.data,l=c.pad,d=c.gizmo;return l?(0,o.createComponentVNode)(2,i.Section,{title:"Emergency Teleport",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"exclamation-circle",content:"Activate",color:"bad",onClick:function(){return r("teleporter_send")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Mark Retrieval",children:(0,o.createComponentVNode)(2,i.Button,{icon:d?"user-plus":"user-slash",content:d?"Retrieve":"No Mark",disabled:!d,onClick:function(){return r("teleporter_retrieve")}})})})}):(0,o.createComponentVNode)(2,i.NoticeBox,{danger:!0,children:"No Telepad Detected"})},u=function(e,t){var n=(0,a.useBackend)(t),r=n.act,c=n.data,l=c.vest,d=c.vest_mode,u=c.vest_lock;return l?(0,o.createComponentVNode)(2,i.Section,{title:"Agent Vest Settings",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u?"lock":"unlock",content:u?"Locked":"Unlocked",onClick:function(){return r("toggle_vest")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Mode",children:(0,o.createComponentVNode)(2,i.Button,{icon:1===d?"eye-slash":"fist-raised",content:1===d?"Stealth":"Combat",onClick:function(){return r("flip_vest")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Disguise",children:(0,o.createComponentVNode)(2,i.Button,{icon:"user-secret",content:"Select",onClick:function(){return r("select_disguise")}})})]})}):(0,o.createComponentVNode)(2,i.NoticeBox,{danger:!0,children:"No Agent Vest Detected"})}},function(e,t,n){"use strict";t.__esModule=!0,t.Achievements=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Achievements=function(e,t){var n=(0,r.useBackend)(t).data,l=n.categories,u=(0,r.useLocalState)(t,"category",l[0]),s=u[0],p=u[1],m=n.achievements.filter((function(e){return e.category===s}));return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Tabs,{children:[l.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:s===e,onClick:function(){return p(e)},children:e},e)})),(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:"High Scores"===s,onClick:function(){return p("High Scores")},children:"High Scores"})]}),"High Scores"===s&&(0,o.createComponentVNode)(2,d)||(0,o.createComponentVNode)(2,c,{achievements:m})]})})};var c=function(e,t){var n=e.achievements;return(0,o.createComponentVNode)(2,a.Table,{children:n.map((function(e){return(0,o.createComponentVNode)(2,l,{achievement:e},e.name)}))})},l=function(e){var t=e.achievement,n=t.name,r=t.desc,i=t.icon_class,c=t.value,l=t.score;return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,a.Box,{m:1,className:i})}),(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",children:[(0,o.createVNode)(1,"h1",null,n,0),r,l&&(0,o.createComponentVNode)(2,a.Box,{color:c>0?"good":"bad",children:c>0?"Earned "+c+" times":"Locked"})||(0,o.createComponentVNode)(2,a.Box,{color:c?"good":"bad",children:c?"Unlocked":"Locked"})]})]},n)},d=function(e,t){var n=(0,r.useBackend)(t).data,i=n.highscore,c=n.user_ckey,l=(0,r.useLocalState)(t,"highscore",0),d=l[0],u=l[1],s=i[d];if(!s)return null;var p=Object.keys(s.scores).map((function(e){return{ckey:e,value:s.scores[e]}}));return(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:i.map((function(e,t){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:d===t,onClick:function(){return u(t)},children:e.name},e.name)}))})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"center",children:"#"}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"center",children:"Key"}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"center",children:"Score"})]}),p.map((function(e,t){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",m:2,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:t+1}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:e.ckey===c&&"green",textAlign:"center",children:[0===t&&(0,o.createComponentVNode)(2,a.Icon,{name:"crown",color:"yellow",mr:2}),e.ckey,0===t&&(0,o.createComponentVNode)(2,a.Icon,{name:"crown",color:"yellow",ml:2})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"center",children:e.value})]},e.ckey)}))]})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.AiAirlock=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c={2:{color:"good",localStatusText:"Offline"},1:{color:"average",localStatusText:"Caution"},0:{color:"bad",localStatusText:"Optimal"}};t.AiAirlock=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=c[d.power.main]||c[0],s=c[d.power.backup]||c[0],p=c[d.shock]||c[0];return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Main",color:u.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",disabled:!d.power.main,content:"Disrupt",onClick:function(){return l("disrupt-main")}}),children:[d.power.main?"Online":"Offline"," ",d.wires.main_1&&d.wires.main_2?d.power.main_timeleft>0&&"["+d.power.main_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Backup",color:s.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",disabled:!d.power.backup,content:"Disrupt",onClick:function(){return l("disrupt-backup")}}),children:[d.power.backup?"Online":"Offline"," ",d.wires.backup_1&&d.wires.backup_2?d.power.backup_timeleft>0&&"["+d.power.backup_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Electrify",color:p.color,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",disabled:!(d.wires.shock&&0===d.shock),content:"Restore",onClick:function(){return l("shock-restore")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"bolt",disabled:!d.wires.shock,content:"Temporary",onClick:function(){return l("shock-temp")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"bolt",disabled:!d.wires.shock,content:"Permanent",onClick:function(){return l("shock-perm")}})],4),children:[2===d.shock?"Safe":"Electrified"," ",(d.wires.shock?d.shock_timeleft>0&&"["+d.shock_timeleft+"s]":"[Wires have been cut!]")||-1===d.shock_timeleft&&"[Permanent]"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Access and Door Control",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"ID Scan",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d.id_scanner?"power-off":"times",content:d.id_scanner?"Enabled":"Disabled",selected:d.id_scanner,disabled:!d.wires.id_scanner,onClick:function(){return l("idscan-toggle")}}),children:!d.wires.id_scanner&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Emergency Access",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d.emergency?"power-off":"times",content:d.emergency?"Enabled":"Disabled",selected:d.emergency,onClick:function(){return l("emergency-toggle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Bolts",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d.locked?"lock":"unlock",content:d.locked?"Lowered":"Raised",selected:d.locked,disabled:!d.wires.bolts,onClick:function(){return l("bolt-toggle")}}),children:!d.wires.bolts&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Bolt Lights",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d.lights?"power-off":"times",content:d.lights?"Enabled":"Disabled",selected:d.lights,disabled:!d.wires.lights,onClick:function(){return l("light-toggle")}}),children:!d.wires.lights&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Force Sensors",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d.safe?"power-off":"times",content:d.safe?"Enabled":"Disabled",selected:d.safe,disabled:!d.wires.safe,onClick:function(){return l("safe-toggle")}}),children:!d.wires.safe&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Timing Safety",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d.speed?"power-off":"times",content:d.speed?"Enabled":"Disabled",selected:d.speed,disabled:!d.wires.timing,onClick:function(){return l("speed-toggle")}}),children:!d.wires.timing&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Control",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d.opened?"sign-out-alt":"sign-in-alt",content:d.opened?"Open":"Closed",selected:d.opened,disabled:d.locked||d.welded,onClick:function(){return l("open-close")}}),children:!(!d.locked&&!d.welded)&&(0,o.createVNode)(1,"span",null,[(0,o.createTextVNode)("[Door is "),d.locked?"bolted":"",d.locked&&d.welded?" and ":"",d.welded?"welded":"",(0,o.createTextVNode)("!]")],0)})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AirAlarm=void 0;var o=n(0),r=n(15),a=(n(19),n(1)),i=n(3),c=(n(39),n(2)),l=n(57),d=n(445);t.AirAlarm=function(e,t){var n=(0,a.useBackend)(t),r=(n.act,n.data),i=r.locked&&!r.siliconUser;return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,l.InterfaceLockNoticeBox),(0,o.createComponentVNode)(2,u),!i&&(0,o.createComponentVNode)(2,p)]})})};var u=function(e,t){var n=(0,a.useBackend)(t).data,c=(n.environment_data||[]).filter((function(e){return e.value>=.01})),l={0:{color:"good",localStatusText:"Optimal"},1:{color:"average",localStatusText:"Caution"},2:{color:"bad",localStatusText:"Danger (Internals Required)"}},d=l[n.danger_level]||l[0];return(0,o.createComponentVNode)(2,i.Section,{title:"Air Status",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[c.length>0&&(0,o.createFragment)([c.map((function(e){var t=l[e.danger_level]||l[0];return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,color:t.color,children:[(0,r.toFixed)(e.value,2),e.unit]},e.name)})),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Local status",color:d.color,children:d.localStatusText}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Area status",color:n.atmos_alarm||n.fire_alarm?"bad":"good",children:(n.atmos_alarm?"Atmosphere Alarm":n.fire_alarm&&"Fire Alarm")||"Nominal"})],0)||(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Warning",color:"bad",children:"Cannot obtain air sample for analysis."}),!!n.emagged&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Warning",color:"bad",children:"Safety measures offline. Device may exhibit abnormal behavior."})]})})},s={home:{title:"Air Controls",component:function(){return m}},vents:{title:"Vent Controls",component:function(){return f}},scrubbers:{title:"Scrubber Controls",component:function(){return h}},modes:{title:"Operating Mode",component:function(){return C}},thresholds:{title:"Alarm Thresholds",component:function(){return g}}},p=function(e,t){var n=(0,a.useLocalState)(t,"screen"),r=n[0],c=n[1],l=s[r]||s.home,d=l.component();return(0,o.createComponentVNode)(2,i.Section,{title:l.title,buttons:r&&(0,o.createComponentVNode)(2,i.Button,{icon:"arrow-left",content:"Back",onClick:function(){return c()}}),children:(0,o.createComponentVNode)(2,d)})},m=function(e,t){var n=(0,a.useBackend)(t),r=n.act,c=n.data,l=(0,a.useLocalState)(t,"screen"),d=(l[0],l[1]),u=c.mode,s=c.atmos_alarm;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:s?"exclamation-triangle":"exclamation",color:s&&"caution",content:"Area Atmosphere Alarm",onClick:function(){return r(s?"reset":"alarm")}}),(0,o.createComponentVNode)(2,i.Box,{mt:1}),(0,o.createComponentVNode)(2,i.Button,{icon:3===u?"exclamation-triangle":"exclamation",color:3===u&&"danger",content:"Panic Siphon",onClick:function(){return r("mode",{mode:3===u?1:3})}}),(0,o.createComponentVNode)(2,i.Box,{mt:2}),(0,o.createComponentVNode)(2,i.Button,{icon:"sign-out-alt",content:"Vent Controls",onClick:function(){return d("vents")}}),(0,o.createComponentVNode)(2,i.Box,{mt:1}),(0,o.createComponentVNode)(2,i.Button,{icon:"filter",content:"Scrubber Controls",onClick:function(){return d("scrubbers")}}),(0,o.createComponentVNode)(2,i.Box,{mt:1}),(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Operating Mode",onClick:function(){return d("modes")}}),(0,o.createComponentVNode)(2,i.Box,{mt:1}),(0,o.createComponentVNode)(2,i.Button,{icon:"chart-bar",content:"Alarm Thresholds",onClick:function(){return d("thresholds")}})],4)},f=function(e,t){var n=(0,a.useBackend)(t).data.vents;return n&&0!==n.length?n.map((function(e){return(0,o.createComponentVNode)(2,d.Vent,{vent:e},e.id_tag)})):"Nothing to show"},h=function(e,t){var n=(0,a.useBackend)(t).data.scrubbers;return n&&0!==n.length?n.map((function(e){return(0,o.createComponentVNode)(2,d.Scrubber,{scrubber:e},e.id_tag)})):"Nothing to show"},C=function(e,t){var n=(0,a.useBackend)(t),r=n.act,c=n.data.modes;return c&&0!==c.length?c.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:e.selected?"check-square-o":"square-o",selected:e.selected,color:e.selected&&e.danger&&"danger",content:e.name,onClick:function(){return r("mode",{mode:e.mode})}}),(0,o.createComponentVNode)(2,i.Box,{mt:1})],4,e.mode)})):"Nothing to show"},g=function(e,t){var n=(0,a.useBackend)(t),c=n.act,l=n.data.thresholds;return(0,o.createVNode)(1,"table","LabeledList",[(0,o.createVNode)(1,"thead",null,(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td"),(0,o.createVNode)(1,"td","color-bad","min2",16),(0,o.createVNode)(1,"td","color-average","min1",16),(0,o.createVNode)(1,"td","color-average","max1",16),(0,o.createVNode)(1,"td","color-bad","max2",16)],4),2),(0,o.createVNode)(1,"tbody",null,l.map((function(e){return(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td","LabeledList__label",e.name,0),e.settings.map((function(e){return(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,i.Button,{content:(0,r.toFixed)(e.selected,2),onClick:function(){return c("threshold",{env:e.env,"var":e.val})}}),2,null,e.val)}))],0,null,e.name)})),0)],4,{style:{width:"100%"}})}},function(e,t,n){"use strict";t.__esModule=!0,t.Scrubber=t.Vent=void 0;var o=n(0),r=n(19),a=n(1),i=n(3),c=n(39);t.Vent=function(e,t){var n=e.vent,c=(0,a.useBackend)(t).act,l=n.id_tag,d=n.long_name,u=n.power,s=n.checks,p=n.excheck,m=n.incheck,f=n.direction,h=n.external,C=n.internal,g=n.extdefault,b=n.intdefault;return(0,o.createComponentVNode)(2,i.Section,{level:2,title:(0,r.decodeHtmlEntities)(d),buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u?"power-off":"times",selected:u,content:u?"On":"Off",onClick:function(){return c("power",{id_tag:l,val:Number(!u)})}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Mode",children:(0,o.createComponentVNode)(2,i.Button,{icon:"sign-in-alt",content:f?"Pressurizing":"Scrubbing",color:!f&&"danger",onClick:function(){return c("direction",{id_tag:l,val:Number(!f)})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"sign-in-alt",content:"Internal",selected:m,onClick:function(){return c("incheck",{id_tag:l,val:s})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sign-out-alt",content:"External",selected:p,onClick:function(){return c("excheck",{id_tag:l,val:s})}})]}),!!m&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Internal Target",children:[(0,o.createComponentVNode)(2,i.NumberInput,{value:Math.round(C),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,t){return c("set_internal_pressure",{id_tag:l,value:t})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"undo",disabled:b,content:"Reset",onClick:function(){return c("reset_internal_pressure",{id_tag:l})}})]}),!!p&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"External Target",children:[(0,o.createComponentVNode)(2,i.NumberInput,{value:Math.round(h),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,t){return c("set_external_pressure",{id_tag:l,value:t})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"undo",disabled:g,content:"Reset",onClick:function(){return c("reset_external_pressure",{id_tag:l})}})]})]})})};t.Scrubber=function(e,t){var n=e.scrubber,l=(0,a.useBackend)(t).act,d=n.long_name,u=n.power,s=n.scrubbing,p=n.id_tag,m=n.widenet,f=n.filter_types;return(0,o.createComponentVNode)(2,i.Section,{level:2,title:(0,r.decodeHtmlEntities)(d),buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return l("power",{id_tag:p,val:Number(!u)})}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Mode",children:[(0,o.createComponentVNode)(2,i.Button,{icon:s?"filter":"sign-in-alt",color:s||"danger",content:s?"Scrubbing":"Siphoning",onClick:function(){return l("scrubbing",{id_tag:p,val:Number(!s)})}}),(0,o.createComponentVNode)(2,i.Button,{icon:m?"expand":"compress",selected:m,content:m?"Expanded range":"Normal range",onClick:function(){return l("widenet",{id_tag:p,val:Number(!m)})}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Filters",children:s&&f.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,c.getGasLabel)(e.gas_id,e.gas_name),title:e.gas_name,selected:e.enabled,onClick:function(){return l("toggle_filter",{id_tag:p,val:e.gas_id})}},e.gas_id)}))||"N/A"})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AirlockElectronics=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=n(175);t.AirlockElectronics=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.oneAccess,s=d.unres_direction,p=d.regions||[],m=d.accesses||[];return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Main",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Access Required",children:(0,o.createComponentVNode)(2,a.Button,{icon:u?"unlock":"lock",content:u?"One":"All",onClick:function(){return l("one_access")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Unrestricted Access",children:[(0,o.createComponentVNode)(2,a.Button,{icon:1&s?"check-square-o":"square-o",content:"North",selected:1&s,onClick:function(){return l("direc_set",{unres_direction:"1"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:2&s?"check-square-o":"square-o",content:"South",selected:2&s,onClick:function(){return l("direc_set",{unres_direction:"2"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:4&s?"check-square-o":"square-o",content:"East",selected:4&s,onClick:function(){return l("direc_set",{unres_direction:"4"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:8&s?"check-square-o":"square-o",content:"West",selected:8&s,onClick:function(){return l("direc_set",{unres_direction:"8"})}})]})]})}),(0,o.createComponentVNode)(2,c.AccessList,{accesses:p,selectedList:m,accessMod:function(e){return l("set",{access:e})},grantAll:function(){return l("grant_all")},denyAll:function(){return l("clear_all")},grantDep:function(e){return l("grant_region",{region:e})},denyDep:function(e){return l("deny_region",{region:e})}})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Apc=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=n(57);t.Apc=function(e,t){return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,u)})})};var l={2:{color:"good",externalPowerText:"External Power",chargingText:"Fully Charged"},1:{color:"average",externalPowerText:"Low External Power",chargingText:"Charging"},0:{color:"bad",externalPowerText:"No External Power",chargingText:"Not Charging"}},d={1:{icon:"terminal",content:"Override Programming",action:"hack"},2:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"},3:{icon:"caret-square-left",content:"Return to Main Core",action:"deoccupy"},4:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"}},u=function(e,t){var n=(0,r.useBackend)(t),i=n.act,u=n.data,s=u.locked&&!u.siliconUser,p=l[u.externalPower]||l[0],m=l[u.chargingStatus]||l[0],f=u.powerChannels||[],h=d[u.malfStatus]||d[0],C=u.powerCellStatus/100;return u.failTime>0?(0,o.createComponentVNode)(2,a.NoticeBox,{children:[(0,o.createVNode)(1,"b",null,(0,o.createVNode)(1,"h3",null,"SYSTEM FAILURE",16),2),(0,o.createVNode)(1,"i",null,"I/O regulators malfunction detected! Waiting for system reboot...",16),(0,o.createVNode)(1,"br"),"Automatic reboot in ",u.failTime," seconds...",(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reboot Now",onClick:function(){return i("reboot")}})]}):(0,o.createFragment)([(0,o.createComponentVNode)(2,c.InterfaceLockNoticeBox),(0,o.createComponentVNode)(2,a.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Main Breaker",color:p.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u.isOperating?"power-off":"times",content:u.isOperating?"On":"Off",selected:u.isOperating&&!s,disabled:s,onClick:function(){return i("breaker")}}),children:["[ ",p.externalPowerText," ]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power Cell",children:(0,o.createComponentVNode)(2,a.ProgressBar,{color:"good",value:C})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",color:m.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u.chargeMode?"sync":"close",content:u.chargeMode?"Auto":"Off",disabled:s,onClick:function(){return i("charge")}}),children:["[ ",m.chargingText," ]"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Channels",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[f.map((function(e){var t=e.topicParams;return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.title,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,mx:2,color:e.status>=2?"good":"bad",children:e.status>=2?"On":"Off"}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Auto",selected:!s&&(1===e.status||3===e.status),disabled:s,onClick:function(){return i("channel",t.auto)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:"On",selected:!s&&2===e.status,disabled:s,onClick:function(){return i("channel",t.on)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Off",selected:!s&&0===e.status,disabled:s,onClick:function(){return i("channel",t.off)}})],4),children:e.powerLoad},e.title)})),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Total Load",children:(0,o.createVNode)(1,"b",null,u.totalLoad,0)})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Misc",buttons:!!u.siliconUser&&(0,o.createFragment)([!!u.malfStatus&&(0,o.createComponentVNode)(2,a.Button,{icon:h.icon,content:h.content,color:"bad",onClick:function(){return i(h.action)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:"Overload",onClick:function(){return i("overload")}})],0),children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cover Lock",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u.coverLocked?"lock":"unlock",content:u.coverLocked?"Engaged":"Disengaged",disabled:s,onClick:function(){return i("cover")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Emergency Lighting",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:u.emergencyLights?"Enabled":"Disabled",disabled:s,onClick:function(){return i("emergency_lighting")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Night Shift Lighting",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:u.nightshiftLights?"Enabled":"Disabled",onClick:function(){return i("toggle_nightshift")}})})]})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.ApcControl=void 0;var o=n(0),r=n(14),a=n(31),i=n(6),c=n(1),l=n(3),d=n(2),u=n(126);t.ApcControl=function(e,t){var n=(0,c.useBackend)(t).data;return(0,o.createComponentVNode)(2,d.Window,{resizable:!0,children:[1===n.authenticated&&(0,o.createComponentVNode)(2,p),0===n.authenticated&&(0,o.createComponentVNode)(2,s)]})};var s=function(e,t){var n=(0,c.useBackend)(t),r=n.act,a=n.data.emagged,i=1===a?"Open":"Log In";return(0,o.createComponentVNode)(2,d.Window.Content,{children:(0,o.createComponentVNode)(2,l.Button,{fluid:!0,color:1===a?"":"good",content:i,onClick:function(){return r("log-in")}})})},p=function(e,t){var n=(0,c.useBackend)(t),r=n.act,a=n.data.restoring,i=(0,c.useLocalState)(t,"tab-index",1),u=i[0],s=i[1];return(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Tabs,{children:[(0,o.createComponentVNode)(2,l.Tabs.Tab,{selected:1===u,onClick:function(){s(1),r("check-apcs")},children:"APC Control Panel"}),(0,o.createComponentVNode)(2,l.Tabs.Tab,{selected:2===u,onClick:function(){s(2),r("check-logs")},children:"Log View Panel"})]}),1===a&&(0,o.createComponentVNode)(2,l.Dimmer,{fontSize:"32px",children:[(0,o.createComponentVNode)(2,l.Icon,{name:"cog",spin:!0})," Resetting..."]}),1===u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,m),(0,o.createComponentVNode)(2,l.Box,{fillPositionedParent:!0,top:"53px",children:(0,o.createComponentVNode)(2,d.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,f)})})],4),2===u&&(0,o.createComponentVNode)(2,l.Box,{fillPositionedParent:!0,top:"20px",children:(0,o.createComponentVNode)(2,d.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,h)})})],0)},m=function(e,t){var n=(0,c.useBackend)(t),r=n.act,a=n.data,i=a.emagged,d=a.logging,u=(0,c.useLocalState)(t,"sortByField",null),s=u[0],p=u[1];return(0,o.createComponentVNode)(2,l.Flex,{children:[(0,o.createComponentVNode)(2,l.Flex.Item,{children:[(0,o.createComponentVNode)(2,l.Box,{inline:!0,mr:2,color:"label",children:"Sort by:"}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"name"===s,content:"Name",onClick:function(){return p("name"!==s&&"name")}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"charge"===s,content:"Charge",onClick:function(){return p("charge"!==s&&"charge")}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"draw"===s,content:"Draw",onClick:function(){return p("draw"!==s&&"draw")}})]}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1}),(0,o.createComponentVNode)(2,l.Flex.Item,{children:[1===i&&(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Button,{color:1===d?"bad":"good",content:1===d?"Stop Logging":"Restore Logging",onClick:function(){return r("toggle-logs")}}),(0,o.createComponentVNode)(2,l.Button,{content:"Reset Console",onClick:function(){return r("restore-console")}})],4),(0,o.createComponentVNode)(2,l.Button,{color:"bad",content:"Log Out",onClick:function(){return r("log-out")}})]})]})},f=function(e,t){var n=(0,c.useBackend)(t),i=n.data,d=n.act,s=(0,c.useLocalState)(t,"sortByField",null)[0],p=(0,a.flow)([(0,r.map)((function(e,t){return Object.assign({},e,{id:e.name+t})})),"name"===s&&(0,r.sortBy)((function(e){return e.name})),"charge"===s&&(0,r.sortBy)((function(e){return-e.charge})),"draw"===s&&(0,r.sortBy)((function(e){return-(0,u.powerRank)(e.load)}),(function(e){return-parseFloat(e.load)}))])(i.apcs);return(0,o.createComponentVNode)(2,l.Table,{children:[(0,o.createComponentVNode)(2,l.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:"On/Off"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Area"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:"Charge"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,textAlign:"right",children:"Draw"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Equipment",children:"Eqp"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Lighting",children:"Lgt"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Environment",children:"Env"})]}),p.map((function(e,t){return(0,o.createVNode)(1,"tr","Table__row candystripe",[(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,l.Button,{icon:e.operating?"power-off":"times",color:e.operating?"good":"bad",onClick:function(){return d("breaker",{ref:e.ref})}}),2),(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,l.Button,{onClick:function(){return d("access-apc",{ref:e.ref})},children:e.name}),2),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",(0,o.createComponentVNode)(2,u.AreaCharge,{charging:e.charging,charge:e.charge}),2),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",e.load,0),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,C,{target:"equipment",status:e.eqp,apc:e,act:d}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,C,{target:"lighting",status:e.lgt,apc:e,act:d}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,C,{target:"environ",status:e.env,apc:e,act:d}),2)],4,null,e.id)}))]})},h=function(e,t){var n=(0,c.useBackend)(t).data,i=(0,a.flow)([(0,r.map)((function(e,t){return Object.assign({},e,{id:e.entry+t})})),function(e){return e.reverse()}])(n.logs);return(0,o.createComponentVNode)(2,l.Box,{m:-.5,children:i.map((function(e){return(0,o.createComponentVNode)(2,l.Box,{p:.5,className:"candystripe",bold:!0,children:e.entry},e.id)}))})},C=function(e){var t=e.target,n=e.status,r=e.apc,a=e.act,i=Boolean(2&n),c=Boolean(1&n);return(0,o.createComponentVNode)(2,l.Button,{icon:c?"sync":"power-off",color:i?"good":"bad",onClick:function(){return a("toggle-minor",{type:t,value:g(n),ref:r.ref})}})},g=function(e){return 0===e?2:2===e?3:0};C.defaultHooks=i.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosAlertConsole=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.AtmosAlertConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.priority||[],u=l.minor||[];return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{title:"Alarms",children:(0,o.createVNode)(1,"ul",null,[0===d.length&&(0,o.createVNode)(1,"li","color-good","No Priority Alerts",16),d.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:e,color:"bad",onClick:function(){return c("clear",{zone:e})}}),2,null,e)})),0===u.length&&(0,o.createVNode)(1,"li","color-good","No Minor Alerts",16),u.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:e,color:"average",onClick:function(){return c("clear",{zone:e})}}),2,null,e)}))],0)})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosControlConsole=void 0;var o=n(0),r=n(14),a=n(15),i=n(1),c=n(3),l=n(2);t.AtmosControlConsole=function(e,t){var n,d=(0,i.useBackend)(t),u=d.act,s=d.data,p=s.sensors||[];return(0,o.createComponentVNode)(2,l.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,c.Section,{title:!!s.tank&&(null==(n=p[0])?void 0:n.long_name),children:p.map((function(e){var t=e.gases||{};return(0,o.createComponentVNode)(2,c.Section,{title:!s.tank&&e.long_name,level:2,children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Pressure",children:(0,a.toFixed)(e.pressure,2)+" kPa"}),!!e.temperature&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Temperature",children:(0,a.toFixed)(e.temperature,2)+" K"}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:t,children:(0,a.toFixed)(e,2)+"%"})}))(t)]})},e.id_tag)}))}),s.tank&&(0,o.createComponentVNode)(2,c.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,c.Button,{icon:"undo",content:"Reconnect",onClick:function(){return u("reconnect")}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Injector",children:(0,o.createComponentVNode)(2,c.Button,{icon:s.inputting?"power-off":"times",content:s.inputting?"Injecting":"Off",selected:s.inputting,onClick:function(){return u("input")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Rate",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:s.inputRate,unit:"L/s",width:"63px",minValue:0,maxValue:200,suppressFlicker:2e3,onChange:function(e,t){return u("rate",{rate:t})}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Regulator",children:(0,o.createComponentVNode)(2,c.Button,{icon:s.outputting?"power-off":"times",content:s.outputting?"Open":"Closed",selected:s.outputting,onClick:function(){return u("output")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Pressure",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:parseFloat(s.outputPressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,suppressFlicker:2e3,onChange:function(e,t){return u("pressure",{pressure:t})}})})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosFilter=void 0;var o=n(0),r=n(1),a=n(3),i=n(39),c=n(2);t.AtmosFilter=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.filter_types||[];return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:d.on?"power-off":"times",content:d.on?"On":"Off",selected:d.on,onClick:function(){return l("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(d.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onDrag:function(e,t){return l("rate",{rate:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:d.rate===d.max_rate,onClick:function(){return l("rate",{rate:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Filter",children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{selected:e.selected,content:(0,i.getGasLabel)(e.id,e.name),onClick:function(){return l("filter",{mode:e.id})}},e.id)}))})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosMixer=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.AtmosMixer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:l.on?"power-off":"times",content:l.on?"On":"Off",selected:l.on,onClick:function(){return c("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(l.set_pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return c("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:l.set_pressure===l.max_pressure,onClick:function(){return c("pressure",{pressure:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Node 1",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:l.node1_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return c("node1",{concentration:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Node 2",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:l.node2_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return c("node2",{concentration:t})}})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosPump=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.AtmosPump=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:l.on?"power-off":"times",content:l.on?"On":"Off",selected:l.on,onClick:function(){return c("power")}})}),l.max_rate?(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(l.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onChange:function(e,t){return c("rate",{rate:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:l.rate===l.max_rate,onClick:function(){return c("rate",{rate:"max"})}})]}):(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(l.pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return c("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:l.pressure===l.max_pressure,onClick:function(){return c("pressure",{pressure:"max"})}})]})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AutomatedAnnouncement=void 0;var o=n(0),r=(n(19),n(1)),a=n(3),i=n(2),c="%PERSON will be replaced with their name.\n%RANK with their job.";t.AutomatedAnnouncement=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.arrivalToggle,s=d.arrival,p=d.newheadToggle,m=d.newhead;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Arrival Announcement",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",selected:u,content:u?"On":"Off",onClick:function(){return l("ArrivalToggle")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Message",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"info",tooltip:c,tooltipPosition:"left"}),children:(0,o.createComponentVNode)(2,a.Input,{fluid:!0,value:s,onChange:function(e,t){return l("ArrivalText",{newText:t})}})})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Departmental Head Announcement",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:p?"power-off":"times",selected:p,content:p?"On":"Off",onClick:function(){return l("NewheadToggle")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Message",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"info",tooltip:c,tooltipPosition:"left"}),children:(0,o.createComponentVNode)(2,a.Input,{fluid:!0,value:m,onChange:function(e,t){return l("NewheadText",{newText:t})}})})})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.BankMachine=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.BankMachine=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.current_balance,u=l.siphoning,s=l.station_name;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:s+" Vault",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Balance",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"times":"sync",content:u?"Stop Siphoning":"Siphon Credits",selected:u,onClick:function(){return c(u?"halt":"siphon")}}),children:d+" cr"})})}),(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Authorized personnel only"})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Bepis=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Bepis=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.amount;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Business Exploration Protocol Incubation Sink",children:[(0,o.createComponentVNode)(2,a.Section,{title:"Information",backgroundColor:"#450F44",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:l.manual_power?"Off":"On",selected:!l.manual_power,onClick:function(){return c("toggle_power")}}),children:"All you need to know about the B.E.P.I.S. and you! The B.E.P.I.S. performs hundreds of tests a second using electrical and financial resources to invent new products, or discover new technologies otherwise overlooked for being too risky or too niche to produce!"}),(0,o.createComponentVNode)(2,a.Section,{title:"Payer's Account",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"redo-alt",content:"Reset Account",onClick:function(){return c("account_reset")}}),children:["Console is currently being operated by ",l.account_owner?l.account_owner:"no one","."]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.5,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Stored Data and Statistics",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deposited Credits",children:l.stored_cash}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Investment Variability",children:[l.accuracy_percentage,"%"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Innovation Bonus",children:l.positive_cash_offset}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Risk Offset",color:"bad",children:l.negative_cash_offset}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deposit Amount",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:d,unit:"Credits",minValue:100,maxValue:3e4,step:100,stepPixelSize:2,onChange:function(e,t){return c("amount",{amount:t})}})})]})}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"donate",content:"Deposit Credits",disabled:1===l.manual_power||1===l.silicon_check,onClick:function(){return c("deposit_cash")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Withdraw Credits",disabled:1===l.manual_power,onClick:function(){return c("withdraw_cash")}})]})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Market Data and Analysis",children:[(0,o.createComponentVNode)(2,a.Box,{children:["Average technology cost: ",l.mean_value]}),(0,o.createComponentVNode)(2,a.Box,{children:["Current chance of Success: Est. ",l.success_estimate,"%"]}),l.error_name&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Previous Failure Reason: Deposited cash value too low. Please insert more money for future success."}),(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"microscope",disabled:1===l.manual_power,onClick:function(){return c("begin_experiment")},content:"Begin Testing"})]})})]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.BiogeneratorContent=t.Biogenerator=void 0;var o=n(0),r=n(6),a=n(19),i=n(1),c=n(3),l=n(45),d=n(2);t.Biogenerator=function(e,t){var n=(0,i.useBackend)(t).data,r=n.beaker,a=n.processing;return(0,o.createComponentVNode)(2,d.Window,{resizable:!0,children:[!!a&&(0,o.createComponentVNode)(2,c.Dimmer,{fontSize:"32px",children:[(0,o.createComponentVNode)(2,c.Icon,{name:"cog",spin:1})," Processing..."]}),(0,o.createComponentVNode)(2,d.Window.Content,{scrollable:!0,children:[!r&&(0,o.createComponentVNode)(2,c.NoticeBox,{children:"No Container"}),!!r&&(0,o.createComponentVNode)(2,u)]})]})};var u=function(e,t){var n,r,d=(0,i.useBackend)(t),u=d.act,p=d.data,m=p.biomass,f=p.can_process,h=p.categories,C=void 0===h?[]:h,g=(0,i.useLocalState)(t,"searchText",""),b=g[0],N=g[1],v=(0,i.useLocalState)(t,"category",null==(n=C[0])?void 0:n.name),V=v[0],y=v[1],k=(0,a.createSearch)(b,(function(e){return e.name})),x=b.length>0&&C.flatMap((function(e){return e.items||[]})).filter(k).filter((function(e,t){return t<25}))||(null==(r=C.find((function(e){return e.name===V})))?void 0:r.items)||[];return(0,o.createComponentVNode)(2,c.Section,{title:(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:m>0?"good":"bad",children:[(0,l.formatMoney)(m)," Biomass"]}),buttons:(0,o.createFragment)([(0,o.createTextVNode)("Search"),(0,o.createComponentVNode)(2,c.Input,{autoFocus:!0,value:b,onInput:function(e,t){return N(t)},mx:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"eject",content:"Eject",onClick:function(){return u("detach")}}),(0,o.createComponentVNode)(2,c.Button,{icon:"cog",content:"Activate",disabled:!f,onClick:function(){return u("activate")}})],4),children:(0,o.createComponentVNode)(2,c.Flex,{children:[0===b.length&&(0,o.createComponentVNode)(2,c.Flex.Item,{children:(0,o.createComponentVNode)(2,c.Tabs,{vertical:!0,children:C.map((function(e){var t;return(0,o.createComponentVNode)(2,c.Tabs.Tab,{selected:e.name===V,onClick:function(){return y(e.name)},children:[e.name," (",(null==(t=e.items)?void 0:t.length)||0,")"]},e.name)}))})}),(0,o.createComponentVNode)(2,c.Flex.Item,{grow:1,basis:0,children:[0===x.length&&(0,o.createComponentVNode)(2,c.NoticeBox,{children:0===b.length?"No items in this category.":"No results found."}),(0,o.createComponentVNode)(2,c.Table,{children:(0,o.createComponentVNode)(2,s,{biomass:m,items:x})})]})]})})};t.BiogeneratorContent=u;var s=function(e,t){var n=(0,i.useBackend)(t).act,a=(0,i.useLocalState)(t,"hoveredItem",{}),l=a[0],d=a[1],u=l&&l.cost||0;return e.items.map((function(n){var o=(0,i.useLocalState)(t,"amount"+n.name,1),r=o[0],a=o[1],c=l&&l.name!==n.name,d=e.biomass-u*l.amountg,onClick:function(){return d("select",{item:e.id})}})})]}),e.desc]},e.name)}))})]})]})]})};var l=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.buying,u=l.ltsrbt_built,s=l.money;if(!d)return null;var p=l.delivery_methods.map((function(e){var t=l.delivery_method_description[e.name];return Object.assign({},e,{description:t})}));return(0,o.createComponentVNode)(2,a.Modal,{textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Flex,{mb:1,children:p.map((function(e){return"LTSRBT"!==e.name||u?(0,o.createComponentVNode)(2,a.Flex.Item,{mx:1,width:"250px",children:[(0,o.createComponentVNode)(2,a.Box,{fontSize:"30px",children:e.name}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:e.description}),(0,o.createComponentVNode)(2,a.Button,{mt:2,content:(0,i.formatMoney)(e.price)+" cr",disabled:s=0||(r[n]=e[n]);return r}(t,["res","value","px_per_unit"]),c=n.length*a,l=0!==c?n[0].length*a:0;return(0,o.normalizeProps)((0,o.createVNode)(1,"canvas",null,"Canvas failed to render.",16,Object.assign({width:c||300,height:l||300},i,{onClick:function(t){return e.clickwrapper(t)}}),null,this.canvasRef))},r}(o.Component);t.Canvas=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Box,{textAlign:"center",children:[(0,o.createComponentVNode)(2,c,{value:d.grid,onCanvasClick:function(e,t){return l("paint",{x:e,y:t})}}),(0,o.createComponentVNode)(2,a.Box,{children:[!d.finalized&&(0,o.createComponentVNode)(2,a.Button.Confirm,{onClick:function(){return l("finalize")},content:"Finalize"}),d.name]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoBountyConsole=void 0;var o=n(0),r=(n(14),n(1)),a=n(3),i=n(45),c=n(2);t.CargoBountyConsole=function(e,t){var n=(0,r.useBackend)(t),i=n.act,d=n.data,u=(0,r.useSharedState)(t,"tab","catalog"),s=(u[0],u[1],d.bountydata),p=void 0===s?[]:s;d.stored_cash;return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,l),buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"print",content:"Print Bounty List",onClick:function(){return i("Print")}}),children:(0,o.createComponentVNode)(2,a.Table,{border:!0,children:[(0,o.createComponentVNode)(2,a.Table.Row,{bold:!0,italic:!0,color:"label",fontSize:1.25,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{p:1,textAlign:"center",children:"Bounty Object"}),(0,o.createComponentVNode)(2,a.Table.Cell,{p:1,textAlign:"center",children:"Description"}),(0,o.createComponentVNode)(2,a.Table.Cell,{p:1,textAlign:"center",children:"Progress"}),(0,o.createComponentVNode)(2,a.Table.Cell,{p:1,textAlign:"center",children:"Value"}),(0,o.createComponentVNode)(2,a.Table.Cell,{p:1,textAlign:"center",children:"Claim"})]}),p.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{backgroundColor:1===e.priority?"rgba(252, 152, 3, 0.25)":"",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,p:1,children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{italic:!0,textAlign:"center",p:1,children:e.description}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,p:1,textAlign:"center",children:[1===e.priority?(0,o.createComponentVNode)(2,a.Box,{children:"High Priority"}):"",e.completion_string]}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,p:1,textAlign:"center",children:e.reward_string}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,p:1,children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,textAlign:"center",icon:1===e.claimed?"check":"",content:1===e.claimed?"Claimed":"Claim",disabled:1===e.claimed,color:1===e.can_claim?"green":"red",onClick:function(){return i("ClaimBounty",{bounty:e.bounty_ref})}})})]},e.name)}))]})})})})};var l=function(e,t){var n=(0,r.useBackend)(t),c=(n.act,n.data.stored_cash);return(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c,format:function(e){return(0,i.formatMoney)(e)}})," credits"]})}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoExpress=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=n(176),l=n(57);t.CargoExpress=function(e,t){var n=(0,r.useBackend)(t),a=(n.act,n.data);return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,l.InterfaceLockNoticeBox,{accessText:"a QM-level ID card"}),!a.locked&&(0,o.createComponentVNode)(2,d)]})})};var d=function(e,t){var n=(0,r.useBackend)(t),i=n.act,l=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Cargo Express",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:Math.round(l.points)})," credits"]}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Landing Location",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Cargo Bay",selected:!l.usingBeacon,onClick:function(){return i("LZCargo")}}),(0,o.createComponentVNode)(2,a.Button,{selected:l.usingBeacon,disabled:!l.hasBeacon,onClick:function(){return i("LZBeacon")},children:[l.beaconzone," (",l.beaconName,")"]}),(0,o.createComponentVNode)(2,a.Button,{content:l.printMsg,disabled:!l.canBuyBeacon,onClick:function(){return i("printBeacon")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Notice",children:l.message})]})}),(0,o.createComponentVNode)(2,c.CargoCatalog,{express:!0})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoHoldTerminal=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.CargoHoldTerminal=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.points,u=l.pad,s=l.sending,p=l.status_report;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Cargo Value",children:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:Math.round(d)})," credits"]})})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Cargo Pad",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Recalculate Value",disabled:!u,onClick:function(){return c("recalc")}}),(0,o.createComponentVNode)(2,a.Button,{icon:s?"times":"arrow-up",content:s?"Stop Sending":"Send Goods",selected:s,disabled:!u,onClick:function(){return c(s?"stop":"send")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:u?"good":"bad",children:u?"Online":"Not Found"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cargo Report",children:p})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CellularEmporium=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.CellularEmporium=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.abilities;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Genetic Points",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"Readapt",disabled:!l.can_readapt,onClick:function(){return c("readapt")}}),children:l.genetic_points_remaining})})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:d.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{className:"candystripe",label:e.name,buttons:(0,o.createFragment)([e.dna_cost," ",(0,o.createComponentVNode)(2,a.Button,{content:e.owned?"Evolved":"Evolve",selected:e.owned,onClick:function(){return c("evolve",{name:e.name})}})],0),children:[e.desc,(0,o.createComponentVNode)(2,a.Box,{color:"good",children:e.helptext})]},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CentcomPodLauncherContent=t.CentcomPodLauncher=void 0;var o=n(0),r=(n(19),n(1)),a=n(3),i=n(2);t.CentcomPodLauncher=function(){return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.NoticeBox,{children:"To use this, simply spawn the atoms you want in one of the five Centcom Supplypod Bays. Items in the bay will then be launched inside your supplypod, one turf-full at a time! You can optionally use the following buttons to configure how the supplypod acts."}),(0,o.createComponentVNode)(2,a.Section,{title:"Centcom Pod Customization (To be used against Helen Weinstein)",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Supply Bay",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Bay #1",selected:1===c.bayNumber,onClick:function(){return i("bay1")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #2",selected:2===c.bayNumber,onClick:function(){return i("bay2")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #3",selected:3===c.bayNumber,onClick:function(){return i("bay3")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #4",selected:4===c.bayNumber,onClick:function(){return i("bay4")}}),(0,o.createComponentVNode)(2,a.Button,{content:"ERT Bay",selected:5===c.bayNumber,tooltip:"This bay is located on the western edge of CentCom. Its the\nglass room directly west of where ERT spawn, and south of the\nCentCom ferry. Useful for launching ERT/Deathsquads/etc. onto\nthe station via drop pods.",onClick:function(){return i("bay5")}})]}),!!c.effectReverse&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Reverse Drop",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Pick Dropoff Location",selected:c.picking_dropoff_turf,disabled:!c.effectReverse,tooltip:"[NOTE: ONLY WORKS WHEN REVERSE MODE IS ACTIVE]\nThis will allow you to select a dropoff turf. After\nselecting a turf, any pod in 'Reverse Mode' will drop off\nit's newly gotten cargo on this turf. Can be used to\ntransport things or people around the station in a neat,\nIC way. Try doing this with the 'Seethrough Pod' style\nenabled for extra fun!",onClick:function(){return i("pickDropoffTurf")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Clear Dropoff Location",disabled:!c.dropoff_turf,tooltip:"Clears the selected dropoff turf for reverse mode.",onClick:function(){return i("clearDropoffTurf")}}),(0,o.createVNode)(1,"p",null,[(0,o.createTextVNode)("Reverse Drop-off Location:"),c.dropoff_turf?c.dropoff_turf:"None"],0)]}),!c.effectReverse&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Reverse Drop",children:(0,o.createVNode)(1,"p",null,"[Enable Reverse Mode for this feature]",16)}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Teleport to",children:[(0,o.createComponentVNode)(2,a.Button,{content:c.bay,onClick:function(){return i("teleportCentcom")}}),(0,o.createComponentVNode)(2,a.Button,{content:c.oldArea?c.oldArea:"Where you were",disabled:!c.oldArea,onClick:function(){return i("teleportBack")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Item Mode",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Clone Items",selected:c.launchClone,tooltip:"Choosing this will create a duplicate of the item to be\nlaunched in Centcom, allowing you to send one type of item\nmultiple times. Either way, the atoms are forceMoved into\nthe supplypod after it lands (but before it opens).",onClick:function(){return i("launchClone")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Random Items",selected:c.launchRandomItem,tooltip:"Choosing this will pick a random item from the selected turf\ninstead of the entire turfs contents. Best combined with\nsingle/random turf.",onClick:function(){return i("launchRandomItem")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Launch style",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Ordered",selected:1===c.launchChoice,tooltip:'Instead of launching everything in the bay at once, this\nwill "scan" things (one turf-full at a time) in order, left\nto right and top to bottom. undoing will reset the "scanner"\nto the top-leftmost position.',onClick:function(){return i("launchOrdered")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Random Turf",selected:2===c.launchChoice,tooltip:"Instead of launching everything in the bay at once, this\nwill launch one random turf of items at a time.",onClick:function(){return i("launchRandomTurf")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Explosion",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Size",selected:1===c.explosionChoice,tooltip:"This will cause an explosion of whatever size you like\n(including flame range) to occur as soon as the supplypod\nlands. Dont worry, supply-pods are explosion-proof!",onClick:function(){return i("explosionCustom")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Adminbus",selected:2===c.explosionChoice,tooltip:"This will cause a maxcap explosion (dependent on server\nconfig) to occur as soon as the supplypod lands. Dont worry,\nsupply-pods are explosion-proof!",onClick:function(){return i("explosionBus")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Damage",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Damage",selected:1===c.damageChoice,tooltip:"Anyone caught under the pod when it lands will be dealt\nthis amount of brute damage. Sucks to be them!",onClick:function(){return i("damageCustom")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Gib",selected:2===c.damageChoice,tooltip:"This will attempt to gib any mob caught under the pod when\nit lands, as well as dealing a nice 5000 brute damage. Ya\nknow, just to be sure!",onClick:function(){return i("damageGib")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Effects",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Projectile Cloud",selected:c.effectShrapnel,tooltip:"This will create a cloud of shrapnel on landing,\nof any projectile you'd like!",onClick:function(){return i("effectShrapnel")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Stun",selected:c.effectStun,tooltip:"Anyone who is on the turf when the supplypod is launched\nwill be stunned until the supplypod lands. They cant get\naway that easy!",onClick:function(){return i("effectStun")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Delimb",selected:c.effectLimb,tooltip:"This will cause anyone caught under the pod to lose a limb,\nexcluding their head.",onClick:function(){return i("effectLimb")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Yeet Organs",selected:c.effectOrgans,tooltip:"This will cause anyone caught under the pod to lose all\ntheir limbs and organs in a spectacular fashion.",onClick:function(){return i("effectOrgans")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Movement",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Bluespace",selected:c.effectBluespace,tooltip:"Gives the supplypod an advanced Bluespace Recyling Device.\nAfter opening, the supplypod will be warped directly to the\nsurface of a nearby NT-designated trash planet (/r/ss13).",onClick:function(){return i("effectBluespace")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Stealth",selected:c.effectStealth,tooltip:'This hides the red target icon from appearing when you\nlaunch the supplypod. Combos well with the "Invisible"\nstyle. Sneak attack, go!',onClick:function(){return i("effectStealth")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Quiet",selected:c.effectQuiet,tooltip:"This will keep the supplypod from making any sounds, except\nfor those specifically set by admins in the Sound section.",onClick:function(){return i("effectQuiet")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Reverse Mode",selected:c.effectReverse,tooltip:"This pod will not send any items. Instead, after landing,\nthe supplypod will close (similar to a normal closet closing),\nand then launch back to the right centcom bay to drop off any\nnew contents.",onClick:function(){return i("effectReverse")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Missile Mode",selected:c.effectMissile,tooltip:"This pod will not send any items. Instead, it will immediately\ndelete after landing (Similar visually to setting openDelay\n& departDelay to 0, but this looks nicer). Useful if you just\nwanna fuck some shit up. Combos well with the Missile style.",onClick:function(){return i("effectMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Any Descent Angle",selected:c.effectCircle,tooltip:"This will make the supplypod come in from any angle. Im not\nsure why this feature exists, but here it is.",onClick:function(){return i("effectCircle")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Machine Gun Mode",selected:c.effectBurst,tooltip:"This will make each click launch 5 supplypods inaccuratly\naround the target turf (a 3x3 area). Combos well with the\nMissile Mode if you dont want shit lying everywhere after.",onClick:function(){return i("effectBurst")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Specific Target",selected:c.effectTarget,tooltip:"This will make the supplypod target a specific atom, instead\nof the mouses position. Smiting does this automatically!",onClick:function(){return i("effectTarget")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name/Desc",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Name/Desc",selected:c.effectName,tooltip:"Allows you to add a custom name and description.",onClick:function(){return i("effectName")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Alert Ghosts",selected:c.effectAnnounce,tooltip:"Alerts ghosts when a pod is launched. Useful if some dumb\nshit is aboutta come outta the pod.",onClick:function(){return i("effectAnnounce")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Sound",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Falling Sound",selected:c.fallingSound,tooltip:"Choose a sound to play as the pod falls. Note that for this\nto work right you should know the exact length of the sound,\nin seconds.",onClick:function(){return i("fallSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Landing Sound",selected:c.landingSound,tooltip:"Choose a sound to play when the pod lands.",onClick:function(){return i("landingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Opening Sound",selected:c.openingSound,tooltip:"Choose a sound to play when the pod opens.",onClick:function(){return i("openingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Leaving Sound",selected:c.leavingSound,tooltip:"Choose a sound to play when the pod departs (whether that be\ndelection in the case of a bluespace pod, or leaving for\ncentcom for a reversing pod).",onClick:function(){return i("leavingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Admin Sound Volume",selected:c.soundVolume,tooltip:"Choose the volume for the sound to play at. Default values\nare between 1 and 100, but hey, do whatever. Im a tooltip,\nnot a cop.",onClick:function(){return i("soundVolume")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Timers",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Falling Duration",selected:4!==c.fallDuration,tooltip:"Set how long the animation for the pod falling lasts. Create\ndramatic, slow falling pods!",onClick:function(){return i("fallDuration")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Landing Time",selected:20!==c.landingDelay,tooltip:"Choose the amount of time it takes for the supplypod to hit\nthe station. By default this value is 0.5 seconds.",onClick:function(){return i("landingDelay")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Opening Time",selected:30!==c.openingDelay,tooltip:"Choose the amount of time it takes for the supplypod to open\nafter landing. Useful for giving whatevers inside the pod a\nnice dramatic entrance! By default this value is 3 seconds.",onClick:function(){return i("openingDelay")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Leaving Time",selected:30!==c.departureDelay,tooltip:"Choose the amount of time it takes for the supplypod to leave\nafter landing. By default this value is 3 seconds.",onClick:function(){return i("departureDelay")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Style",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===c.styleChoice,tooltip:"Same color scheme as the normal station-used supplypods",onClick:function(){return i("styleStandard")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===c.styleChoice,tooltip:"The same as the stations upgraded blue-and-white\nBluespace Supplypods",onClick:function(){return i("styleBluespace")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Syndicate",selected:4===c.styleChoice,tooltip:"A menacing black and blood-red. Great for sending meme-ops\nin style!",onClick:function(){return i("styleSyndie")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Deathsquad",selected:5===c.styleChoice,tooltip:"A menacing black and dark blue. Great for sending deathsquads\nin style!",onClick:function(){return i("styleBlue")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Cult Pod",selected:6===c.styleChoice,tooltip:"A blood and rune covered cult pod!",onClick:function(){return i("styleCult")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Missile",selected:7===c.styleChoice,tooltip:"A large missile. Combos well with a missile mode, so the\nmissile doesnt stick around after landing.",onClick:function(){return i("styleMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Syndicate Missile",selected:8===c.styleChoice,tooltip:"A large blood-red missile. Combos well with missile mode,\nso the missile doesnt stick around after landing.",onClick:function(){return i("styleSMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Supply Crate",selected:9===c.styleChoice,tooltip:"A large, dark-green military supply crate.",onClick:function(){return i("styleBox")}}),(0,o.createComponentVNode)(2,a.Button,{content:"HONK",selected:10===c.styleChoice,tooltip:"A colorful, clown inspired look.",onClick:function(){return i("styleHONK")}}),(0,o.createComponentVNode)(2,a.Button,{content:"~Fruit",selected:11===c.styleChoice,tooltip:"For when an orange is angry",onClick:function(){return i("styleFruit")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Invisible",selected:12===c.styleChoice,tooltip:'Makes the supplypod invisible! Useful for when you want to\nuse this feature with a gateway or something. Combos well\nwith the "Stealth" and "Quiet Landing" effects.',onClick:function(){return i("styleInvisible")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Gondola",selected:13===c.styleChoice,tooltip:"This gondola can control when he wants to deliver his supplies\nif he has a smart enough mind, so offer up his body to ghosts\nfor maximum enjoyment. (Make sure to turn off bluespace and\nset an arbitrarily high open-time if you do!",onClick:function(){return i("styleGondola")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Show Contents (See Through Pod)",selected:14===c.styleChoice,tooltip:"By selecting this, the pod will instead look like whatevers\ninside it (as if it were the contents falling by themselves,\nwithout a pod). Useful for launching mechs at the station\nand standing tall as they soar in from the heavens.",onClick:function(){return i("styleSeeThrough")}})]})]})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:c.numObjects+" turfs in "+c.bay,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"undo Pod Bay",tooltip:"Manually undoes the possible things to launch in the\npod bay.",onClick:function(){return i("undo")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Enter Launch Mode",selected:c.giveLauncher,tooltip:"THE CODEX ASTARTES CALLS THIS MANEUVER: STEEL RAIN",onClick:function(){return i("giveLauncher")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Clear Selected Bay",color:"bad",tooltip:"This will delete all objs and mobs from the selected bay.",tooltipPosition:"left",onClick:function(){return i("clearBay")}})],4)})})})],4)};t.CentcomPodLauncherContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.ChemAcclimator=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.ChemAcclimator=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Acclimator",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Temperature",children:[l.chem_temp," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:l.target_temperature,unit:"K",width:"59px",minValue:0,maxValue:1e3,step:5,stepPixelSize:2,onChange:function(e,t){return c("set_target_temperature",{temperature:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Acceptable Temp. Difference",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:l.allowed_temperature_difference,unit:"K",width:"59px",minValue:1,maxValue:l.target_temperature,stepPixelSize:2,onChange:function(e,t){c("set_allowed_temperature_difference",{temperature:t})}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:l.enabled?"On":"Off",selected:l.enabled,onClick:function(){return c("toggle_power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Volume",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:l.max_volume,unit:"u",width:"50px",minValue:l.reagent_volume,maxValue:200,step:2,stepPixelSize:2,onChange:function(e,t){return c("change_volume",{volume:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Operation",children:l.acclimate_state}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current State",children:l.emptying?"Emptying":"Filling"})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemDebugSynthesizer=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.ChemDebugSynthesizer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.amount,u=l.beakerCurrentVolume,s=l.beakerMaxVolume,p=l.isBeakerLoaded,m=l.beakerContents,f=void 0===m?[]:m;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{title:"Recipient",buttons:p?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return c("ejectBeaker")}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:d,unit:"u",minValue:1,maxValue:s,step:1,stepPixelSize:2,onChange:function(e,t){return c("amount",{amount:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Input",onClick:function(){return c("input")}})],4):(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Create Beaker",onClick:function(){return c("makecup")}}),children:p?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:u})," / "+s+" u"]}),f.length>0?(0,o.createComponentVNode)(2,a.LabeledList,{children:f.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:[e.volume," u"]},e.name)}))}):(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Recipient Empty"})],0):(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No Recipient"})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemDispenser=void 0;var o=n(0),r=n(15),a=n(19),i=n(1),c=n(3),l=n(2);t.ChemDispenser=function(e,t){var n=(0,i.useBackend)(t),d=n.act,u=n.data,s=!!u.recordingRecipe,p=Object.keys(u.recipes).map((function(e){return{name:e,contents:u.recipes[e]}})),m=u.beakerTransferAmounts||[],f=s&&Object.keys(u.recordingRecipe).map((function(e){return{id:e,name:(0,a.toTitleCase)(e.replace(/_/," ")),volume:u.recordingRecipe[e]}}))||u.beakerContents||[];return(0,o.createComponentVNode)(2,l.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,c.Section,{title:"Status",buttons:s&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,mx:1,color:"red",children:[(0,o.createComponentVNode)(2,c.Icon,{name:"circle",mr:1}),"Recording"]}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Energy",children:(0,o.createComponentVNode)(2,c.ProgressBar,{value:u.energy/u.maxEnergy,children:(0,r.toFixed)(u.energy)+" units"})})})}),(0,o.createComponentVNode)(2,c.Section,{title:"Recipes",buttons:(0,o.createFragment)([!s&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,mx:1,children:(0,o.createComponentVNode)(2,c.Button,{color:"transparent",content:"Clear recipes",onClick:function(){return d("clear_recipes")}})}),!s&&(0,o.createComponentVNode)(2,c.Button,{icon:"circle",disabled:!u.isBeakerLoaded,content:"Record",onClick:function(){return d("record_recipe")}}),s&&(0,o.createComponentVNode)(2,c.Button,{icon:"ban",color:"transparent",content:"Discard",onClick:function(){return d("cancel_recording")}}),s&&(0,o.createComponentVNode)(2,c.Button,{icon:"save",color:"green",content:"Save",onClick:function(){return d("save_recording")}})],0),children:(0,o.createComponentVNode)(2,c.Box,{mr:-1,children:[p.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:"tint",width:"129.5px",lineHeight:"21px",content:e.name,onClick:function(){return d("dispense_recipe",{recipe:e.name})}},e.name)})),0===p.length&&(0,o.createComponentVNode)(2,c.Box,{color:"light-gray",children:"No recipes."})]})}),(0,o.createComponentVNode)(2,c.Section,{title:"Dispense",buttons:m.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:"plus",selected:e===u.amount,content:e,onClick:function(){return d("amount",{target:e})}},e)})),children:(0,o.createComponentVNode)(2,c.Box,{mr:-1,children:u.chemicals.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:"tint",width:"129.5px",lineHeight:"21px",content:e.title,onClick:function(){return d("dispense",{reagent:e.id})}},e.id)}))})}),(0,o.createComponentVNode)(2,c.Section,{title:"Beaker",buttons:m.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:"minus",disabled:s,content:e,onClick:function(){return d("remove",{amount:e})}},e)})),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Beaker",buttons:!!u.isBeakerLoaded&&(0,o.createComponentVNode)(2,c.Button,{icon:"eject",content:"Eject",disabled:!u.isBeakerLoaded,onClick:function(){return d("eject")}}),children:(s?"Virtual beaker":u.isBeakerLoaded&&(0,o.createFragment)([(0,o.createComponentVNode)(2,c.AnimatedNumber,{initial:0,value:u.beakerCurrentVolume}),(0,o.createTextVNode)("/"),u.beakerMaxVolume,(0,o.createTextVNode)(" units")],0))||"No beaker"}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Contents",children:[(0,o.createComponentVNode)(2,c.Box,{color:"label",children:u.isBeakerLoaded||s?0===f.length&&"Nothing":"N/A"}),f.map((function(e){return(0,o.createComponentVNode)(2,c.Box,{color:"label",children:[(0,o.createComponentVNode)(2,c.AnimatedNumber,{initial:0,value:e.volume})," ","units of ",e.name]},e.name)}))]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemFilter=t.ChemFilterPane=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=function(e,t){var n=(0,r.useBackend)(t).act,i=e.title,c=e.list,l=e.reagentName,d=e.onReagentInput,u=i.toLowerCase();return(0,o.createComponentVNode)(2,a.Section,{title:i,minHeight:"240px",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Input,{placeholder:"Reagent",width:"140px",onInput:function(e,t){return d(t)}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",onClick:function(){return n("add",{which:u,name:l})}})],4),children:c.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"minus",content:e,onClick:function(){return n("remove",{which:u,reagent:e})}})],4,e)}))})};t.ChemFilterPane=c;t.ChemFilter=function(e,t){var n=(0,r.useBackend)(t),l=(n.act,n.data),d=l.left,u=void 0===d?[]:d,s=l.right,p=void 0===s?[]:s,m=(0,r.useLocalState)(t,"leftName",""),f=m[0],h=m[1],C=(0,r.useLocalState)(t,"rightName",""),g=C[0],b=C[1];return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,c,{title:"Left",list:u,reagentName:f,onReagentInput:function(e){return h(e)}})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,c,{title:"Right",list:p,reagentName:g,onReagentInput:function(e){return b(e)}})})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemHeater=void 0;var o=n(0),r=n(15),a=n(1),i=n(3),c=n(2),l=n(177);t.ChemHeater=function(e,t){var n=(0,a.useBackend)(t),d=n.act,u=n.data,s=u.targetTemp,p=u.isActive,m=u.isBeakerLoaded,f=u.currentTemp,h=u.beakerCurrentVolume,C=u.beakerMaxVolume,g=u.beakerContents,b=void 0===g?[]:g;return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Thermostat",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:p?"power-off":"times",selected:p,content:p?"On":"Off",onClick:function(){return d("power")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target",children:(0,o.createComponentVNode)(2,i.NumberInput,{width:"65px",unit:"K",step:10,stepPixelSize:3,value:(0,r.round)(s),minValue:0,maxValue:1e3,onDrag:function(e,t){return d("temperature",{target:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Reading",children:(0,o.createComponentVNode)(2,i.Box,{width:"60px",textAlign:"right",children:m&&(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:f,format:function(e){return(0,r.toFixed)(e)+" K"}})||"\u2014"})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Beaker",buttons:!!m&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mr:2,children:[h," / ",C," units"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",onClick:function(){return d("eject")}})],4),children:(0,o.createComponentVNode)(2,l.BeakerContents,{beakerLoaded:m,beakerContents:b})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemMaster=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.ChemMaster=function(e,t){var n=(0,r.useBackend)(t).data.screen;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:"analyze"===n&&(0,o.createComponentVNode)(2,p)||(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,u=c.screen,m=c.beakerContents,f=void 0===m?[]:m,h=c.bufferContents,C=void 0===h?[]:h,g=c.beakerCurrentVolume,b=c.beakerMaxVolume,N=c.isBeakerLoaded,v=c.isPillBottleLoaded,V=c.pillBottleCurrentAmount,y=c.pillBottleMaxAmount;return"analyze"===u?(0,o.createComponentVNode)(2,p):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Beaker",buttons:!!c.isBeakerLoaded&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mr:2,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:g,initial:0})," / "+b+" units"]}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return i("eject")}})],4),children:[!N&&(0,o.createComponentVNode)(2,a.Box,{color:"label",mt:"3px",mb:"5px",children:"No beaker loaded."}),!!N&&0===f.length&&(0,o.createComponentVNode)(2,a.Box,{color:"label",mt:"3px",mb:"5px",children:"Beaker is empty."}),(0,o.createComponentVNode)(2,l,{children:f.map((function(e){return(0,o.createComponentVNode)(2,d,{chemical:e,transferTo:"buffer"},e.id)}))})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Buffer",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mr:1,children:"Mode:"}),(0,o.createComponentVNode)(2,a.Button,{color:c.mode?"good":"bad",icon:c.mode?"exchange-alt":"times",content:c.mode?"Transfer":"Destroy",onClick:function(){return i("toggleMode")}})],4),children:[0===C.length&&(0,o.createComponentVNode)(2,a.Box,{color:"label",mt:"3px",mb:"5px",children:"Buffer is empty."}),(0,o.createComponentVNode)(2,l,{children:C.map((function(e){return(0,o.createComponentVNode)(2,d,{chemical:e,transferTo:"beaker"},e.id)}))})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Packaging",children:(0,o.createComponentVNode)(2,s)}),!!v&&(0,o.createComponentVNode)(2,a.Section,{title:"Pill Bottle",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mr:2,children:[V," / ",y," pills"]}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return i("ejectPillBottle")}})],4)})],0)},l=a.Table,d=function(e,t){var n=(0,r.useBackend)(t).act,i=e.chemical,c=e.transferTo;return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.volume,initial:0})," units of "+i.name]}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,a.Button,{content:"1",onClick:function(){return n("transfer",{id:i.id,amount:1,to:c})}}),(0,o.createComponentVNode)(2,a.Button,{content:"5",onClick:function(){return n("transfer",{id:i.id,amount:5,to:c})}}),(0,o.createComponentVNode)(2,a.Button,{content:"10",onClick:function(){return n("transfer",{id:i.id,amount:10,to:c})}}),(0,o.createComponentVNode)(2,a.Button,{content:"All",onClick:function(){return n("transfer",{id:i.id,amount:1e3,to:c})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"ellipsis-h",title:"Custom amount",onClick:function(){return n("transfer",{id:i.id,amount:-1,to:c})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"question",title:"Analyze",onClick:function(){return n("analyze",{id:i.id})}})]})]},i.id)},u=function(e){var t=e.label,n=e.amountUnit,r=e.amount,i=e.onChangeAmount,c=e.onCreate,l=e.sideNote;return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:t,children:[(0,o.createComponentVNode)(2,a.NumberInput,{width:"84px",unit:n,step:1,stepPixelSize:15,value:r,minValue:1,maxValue:10,onChange:i}),(0,o.createComponentVNode)(2,a.Button,{ml:1,content:"Create",onClick:c}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,ml:1,color:"label",children:l})]})},s=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=(0,r.useSharedState)(t,"pillAmount",1),d=l[0],s=l[1],p=(0,r.useSharedState)(t,"patchAmount",1),m=p[0],f=p[1],h=(0,r.useSharedState)(t,"bottleAmount",1),C=h[0],g=h[1],b=(0,r.useSharedState)(t,"packAmount",1),N=b[0],v=b[1],V=c.condi,y=c.chosenPillStyle,k=c.pillStyles,x=void 0===k?[]:k;return(0,o.createComponentVNode)(2,a.LabeledList,{children:[!V&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill type",children:x.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{width:"30px",selected:e.id===y,textAlign:"center",color:"transparent",onClick:function(){return i("pillStyle",{id:e.id})},children:(0,o.createComponentVNode)(2,a.Box,{mx:-1,className:e.className})},e.id)}))}),!V&&(0,o.createComponentVNode)(2,u,{label:"Pills",amount:d,amountUnit:"pills",sideNote:"max 50u",onChangeAmount:function(e,t){return s(t)},onCreate:function(){return i("create",{type:"pill",amount:d,volume:"auto"})}}),!V&&(0,o.createComponentVNode)(2,u,{label:"Patches",amount:m,amountUnit:"patches",sideNote:"max 40u",onChangeAmount:function(e,t){return f(t)},onCreate:function(){return i("create",{type:"patch",amount:m,volume:"auto"})}}),!V&&(0,o.createComponentVNode)(2,u,{label:"Bottles",amount:C,amountUnit:"bottles",sideNote:"max 30u",onChangeAmount:function(e,t){return g(t)},onCreate:function(){return i("create",{type:"bottle",amount:C,volume:"auto"})}}),!!V&&(0,o.createComponentVNode)(2,u,{label:"Packs",amount:N,amountUnit:"packs",sideNote:"max 10u",onChangeAmount:function(e,t){return v(t)},onCreate:function(){return i("create",{type:"condimentPack",amount:N,volume:"auto"})}}),!!V&&(0,o.createComponentVNode)(2,u,{label:"Bottles",amount:C,amountUnit:"bottles",sideNote:"max 50u",onChangeAmount:function(e,t){return g(t)},onCreate:function(){return i("create",{type:"condimentBottle",amount:C,volume:"auto"})}})]})},p=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data.analyzeVars;return(0,o.createComponentVNode)(2,a.Section,{title:"Analysis Results",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"Back",onClick:function(){return i("goScreen",{screen:"home"})}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:c.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",children:c.state}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Color",children:[(0,o.createComponentVNode)(2,a.ColorBox,{color:c.color,mr:1}),c.color]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Description",children:c.description}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Metabolization Rate",children:[c.metaRate," u/minute"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Overdose Threshold",children:c.overD}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Addiction Threshold",children:c.addicD})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemPress=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.ChemPress=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.current_volume,u=l.product_name,s=l.pill_style,p=l.pill_styles,m=void 0===p?[]:p,f=l.product,h=l.min_volume,C=l.max_volume;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Product",children:[(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:"Pills",checked:"pill"===f,onClick:function(){return c("change_product",{product:"pill"})}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:"Patches",checked:"patch"===f,onClick:function(){return c("change_product",{product:"patch"})}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:"Bottles",checked:"bottle"===f,onClick:function(){return c("change_product",{product:"bottle"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Volume",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:d,unit:"u",width:"43px",minValue:h,maxValue:C,step:1,stepPixelSize:2,onChange:function(e,t){return c("change_current_volume",{volume:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:[(0,o.createComponentVNode)(2,a.Input,{value:u,placeholder:u,onChange:function(e,t){return c("change_product_name",{name:t})}}),(0,o.createComponentVNode)(2,a.Box,{as:"span",children:f})]}),"pill"===f&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Style",children:m.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{width:"30px",selected:e.id===s,textAlign:"center",color:"transparent",onClick:function(){return c("change_pill_style",{id:e.id})},children:(0,o.createComponentVNode)(2,a.Box,{mx:-1,className:e.class_name})},e.id)}))})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemReactionChamber=void 0;var o=n(0),r=n(14),a=n(6),i=n(1),c=n(3),l=n(2);t.ChemReactionChamber=function(e,t){var n=(0,i.useBackend)(t),d=n.act,u=n.data,s=(0,i.useLocalState)(t,"reagentName",""),p=s[0],m=s[1],f=(0,i.useLocalState)(t,"reagentQuantity",1),h=f[0],C=f[1],g=u.emptying,b=u.reagents||[];return(0,o.createComponentVNode)(2,l.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c.Section,{title:"Reagents",buttons:(0,o.createComponentVNode)(2,c.Box,{inline:!0,bold:!0,color:g?"bad":"good",children:g?"Emptying":"Filling"}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createVNode)(1,"tr","LabledList__row",[(0,o.createVNode)(1,"td","LabeledList__cell",(0,o.createComponentVNode)(2,c.Input,{fluid:!0,value:"",placeholder:"Reagent Name",onInput:function(e,t){return m(t)}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td",(0,a.classes)(["LabeledList__buttons","LabeledList__cell"]),[(0,o.createComponentVNode)(2,c.NumberInput,{value:h,minValue:1,maxValue:100,step:1,stepPixelSize:3,width:"39px",onDrag:function(e,t){return C(t)}}),(0,o.createComponentVNode)(2,c.Box,{inline:!0,mr:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"plus",onClick:function(){return d("add",{chem:p,amount:h})}})],4)],4),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:t,buttons:(0,o.createComponentVNode)(2,c.Button,{icon:"minus",color:"bad",onClick:function(){return d("remove",{chem:t})}}),children:e},t)}))(b)]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSplitter=void 0;var o=n(0),r=n(15),a=n(1),i=n(3),c=n(2);t.ChemSplitter=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data,u=d.straight,s=d.side,p=d.max_transfer;return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Straight",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:u,unit:"u",width:"55px",minValue:1,maxValue:p,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return l("set_amount",{target:"straight",amount:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Side",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:s,unit:"u",width:"55px",minValue:1,maxValue:p,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return l("set_amount",{target:"side",amount:t})}})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSynthesizer=void 0;var o=n(0),r=n(15),a=n(1),i=n(3),c=n(2);t.ChemSynthesizer=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data,u=d.amount,s=d.current_reagent,p=d.chemicals,m=void 0===p?[]:p,f=d.possible_amounts,h=void 0===f?[]:f;return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{children:h.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"plus",content:(0,r.toFixed)(e,0),selected:e===u,onClick:function(){return l("amount",{target:e})}},(0,r.toFixed)(e,0))}))}),(0,o.createComponentVNode)(2,i.Box,{mt:1,children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"tint",content:e.title,width:"129px",selected:e.id===s,onClick:function(){return l("select",{reagent:e.id})}},e.id)}))})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CodexGigas=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=["Dark","Hellish","Fallen","Fiery","Sinful","Blood","Fluffy"],l=["Lord","Prelate","Count","Viscount","Vizier","Elder","Adept"],d=["hal","ve","odr","neit","ci","quon","mya","folth","wren","geyr","hil","niet","twou","phi","coa"],u=["the Red","the Soulless","the Master","the Lord of all things","Jr."];t.CodexGigas=function(e,t){var n=(0,r.useBackend)(t),s=n.act,p=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:[p.name,(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Prefix",children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:1!==p.currentSection,onClick:function(){return s(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Title",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:p.currentSection>2,onClick:function(){return s(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:p.currentSection>4,onClick:function(){return s(e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Suffix",children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:4!==p.currentSection,onClick:function(){return s(" "+e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Submit",children:(0,o.createComponentVNode)(2,a.Button,{content:"Search",disabled:p.currentSection<4,onClick:function(){return s("search")}})})]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ComputerFabricator=void 0;var o=n(0),r=(n(19),n(1)),a=n(3),i=n(2);t.ComputerFabricator=function(e,t){var n=(0,r.useBackend)(t),s=n.act,p=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{italic:!0,fontSize:"20px",children:"Your perfect device, only three steps away..."}),0!==p.state&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,mb:1,icon:"circle",content:"Clear Order",onClick:function(){return s("clean_order")}}),0===p.state&&(0,o.createComponentVNode)(2,c),1===p.state&&(0,o.createComponentVNode)(2,l),2===p.state&&(0,o.createComponentVNode)(2,d),3===p.state&&(0,o.createComponentVNode)(2,u)]})})};var c=function(e,t){var n=(0,r.useBackend)(t),i=n.act;n.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Step 1",minHeight:"306px",children:[(0,o.createComponentVNode)(2,a.Box,{mt:5,bold:!0,textAlign:"center",fontSize:"40px",children:"Choose your Device"}),(0,o.createComponentVNode)(2,a.Box,{mt:3,children:(0,o.createComponentVNode)(2,a.Grid,{width:"100%",children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"laptop",content:"Laptop",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return i("pick_device",{pick:"1"})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"tablet-alt",content:"Tablet",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return i("pick_device",{pick:"2"})}})})]})})]})},l=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Step 2: Customize your device",minHeight:"282px",buttons:(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"good",children:[c.totalprice," cr"]}),children:[(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Battery:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Allows your device to operate without external utility power\nsource. Advanced batteries increase battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===c.hw_battery,onClick:function(){return i("hw_battery",{battery:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Upgraded",selected:2===c.hw_battery,onClick:function(){return i("hw_battery",{battery:"2"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:3===c.hw_battery,onClick:function(){return i("hw_battery",{battery:"3"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Hard Drive:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Stores file on your device. Advanced drives can store more\nfiles, but use more power, shortening battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===c.hw_disk,onClick:function(){return i("hw_disk",{disk:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Upgraded",selected:2===c.hw_disk,onClick:function(){return i("hw_disk",{disk:"2"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:3===c.hw_disk,onClick:function(){return i("hw_disk",{disk:"3"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Network Card:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Allows your device to wirelessly connect to stationwide NTNet\nnetwork. Basic cards are limited to on-station use, while\nadvanced cards can operate anywhere near the station, which\nincludes asteroid outposts",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===c.hw_netcard,onClick:function(){return i("hw_netcard",{netcard:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===c.hw_netcard,onClick:function(){return i("hw_netcard",{netcard:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===c.hw_netcard,onClick:function(){return i("hw_netcard",{netcard:"2"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Nano Printer:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"A device that allows for various paperwork manipulations,\nsuch as, scanning of documents or printing new ones.\nThis device was certified EcoFriendlyPlus and is capable of\nrecycling existing paper for printing purposes.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===c.hw_nanoprint,onClick:function(){return i("hw_nanoprint",{print:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===c.hw_nanoprint,onClick:function(){return i("hw_nanoprint",{print:"1"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Card Reader:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Adds a slot that allows you to manipulate RFID cards.\nPlease note that this is not necessary to allow the device\nto read your identification, it is just necessary to\nmanipulate other cards.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===c.hw_card,onClick:function(){return i("hw_card",{card:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===c.hw_card,onClick:function(){return i("hw_card",{card:"1"})}})})]}),2!==c.devtype&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Processor Unit:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"A component critical for your device's functionality.\nIt allows you to run programs from your hard drive.\nAdvanced CPUs use more power, but allow you to run\nmore programs on background at once.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===c.hw_cpu,onClick:function(){return i("hw_cpu",{cpu:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===c.hw_cpu,onClick:function(){return i("hw_cpu",{cpu:"2"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Tesla Relay:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"An advanced wireless power relay that allows your device\nto connect to nearby area power controller to provide\nalternative power source. This component is currently\nunavailable on tablet computers due to size restrictions.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===c.hw_tesla,onClick:function(){return i("hw_tesla",{tesla:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===c.hw_tesla,onClick:function(){return i("hw_tesla",{tesla:"1"})}})})]})],4)]}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,mt:3,content:"Confirm Order",color:"good",textAlign:"center",fontSize:"18px",lineHeight:"26px",onClick:function(){return i("confirm_order")}})]})},d=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Step 3: Payment",minHeight:"282px",children:[(0,o.createComponentVNode)(2,a.Box,{italic:!0,textAlign:"center",fontSize:"20px",children:"Your device is ready for fabrication..."}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:2,textAlign:"center",fontSize:"16px",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:"Please insert the required"})," ",(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"good",children:[c.totalprice," cr"]})]}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:1,textAlign:"center",fontSize:"18px",children:"Current:"}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:.5,textAlign:"center",fontSize:"18px",color:c.credits>=c.totalprice?"good":"bad",children:[c.credits," cr"]}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Purchase",disabled:c.credits=10&&e<20?i.COLORS.department.security:e>=20&&e<30?i.COLORS.department.medbay:e>=30&&e<40?i.COLORS.department.science:e>=40&&e<50?i.COLORS.department.engineering:e>=50&&e<60?i.COLORS.department.cargo:e>=200&&e<230?i.COLORS.department.centcom:i.COLORS.department.other},u=function(e){var t=e.type,n=e.value;return(0,o.createComponentVNode)(2,a.Box,{inline:!0,width:2,color:i.COLORS.damageType[t],textAlign:"center",children:n})};t.CrewConsole=function(){return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{minHeight:"540px",children:(0,o.createComponentVNode)(2,s)})})})};var s=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,s=c.sensors||[];return(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:"Name"}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0,textAlign:"center",children:"Vitals"}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:"Position"}),!!c.link_allowed&&(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0,children:"Tracking"})]}),s.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:(f=e.ijob,f%10==0),color:d(e.ijob),children:[e.name," (",e.assignment,")"]}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:(0,o.createComponentVNode)(2,a.ColorBox,{color:(t=e.oxydam,n=e.toxdam,r=e.burndam,s=e.brutedam,p=t+n+r+s,m=Math.min(Math.max(Math.ceil(p/25),0),5),l[m])})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:null!==e.oxydam?(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:[(0,o.createComponentVNode)(2,u,{type:"oxy",value:e.oxydam}),"/",(0,o.createComponentVNode)(2,u,{type:"toxin",value:e.toxdam}),"/",(0,o.createComponentVNode)(2,u,{type:"burn",value:e.burndam}),"/",(0,o.createComponentVNode)(2,u,{type:"brute",value:e.brutedam})]}):e.life_status?"Alive":"Dead"}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:null!==e.pos_x?e.area:"N/A"}),!!c.link_allowed&&(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,a.Button,{content:"Track",disabled:!e.can_track,onClick:function(){return i("select_person",{name:e.name})}})})]},e.name);var t,n,r,s,p,m,f}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Cryo=void 0;var o=n(0),r=n(1),a=n(3),i=n(177),c=n(2),l=[{label:"Brute",type:"bruteLoss"},{label:"Respiratory",type:"oxyLoss"},{label:"Toxin",type:"toxLoss"},{label:"Burn",type:"fireLoss"}];t.Cryo=function(){return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,d)})})};var d=function(e,t){var n=(0,r.useBackend)(t),c=n.act,d=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Occupant",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Occupant",children:d.occupant.name||"No Occupant"}),!!d.hasOccupant&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:d.occupant.statstate,children:d.occupant.stat}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",color:d.occupant.temperaturestatus,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d.occupant.bodyTemperature})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d.occupant.health/d.occupant.maxHealth,color:d.occupant.health>0?"good":"average",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d.occupant.health})})}),l.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d.occupant[e.type]/100,children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d.occupant[e.type]})})},e.id)}))],0)]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Cell",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:d.isOperating?"power-off":"times",disabled:d.isOpen,onClick:function(){return c("power")},color:d.isOperating&&"green",children:d.isOperating?"On":"Off"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d.cellTemperature})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:[(0,o.createComponentVNode)(2,a.Button,{icon:d.isOpen?"unlock":"lock",onClick:function(){return c("door")},content:d.isOpen?"Open":"Closed"}),(0,o.createComponentVNode)(2,a.Button,{icon:d.autoEject?"sign-out-alt":"sign-in-alt",onClick:function(){return c("autoeject")},content:d.autoEject?"Auto":"Manual"})]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Beaker",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",disabled:!d.isBeakerLoaded,onClick:function(){return c("ejectbeaker")},content:"Eject"}),children:(0,o.createComponentVNode)(2,i.BeakerContents,{beakerLoaded:d.isBeakerLoaded,beakerContents:d.beakerContents})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.DecalPainter=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.DecalPainter=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.decal_list||[],u=l.color_list||[],s=l.dir_list||[];return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Decal Type",children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e.name,selected:e.decal===l.decal_style,onClick:function(){return c("select decal",{decals:e.decal})}},e.decal)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Decal Color",children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:"red"===e.colors?"Red":"white"===e.colors?"White":"Yellow",selected:e.colors===l.decal_color,onClick:function(){return c("select color",{colors:e.colors})}},e.colors)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Decal Direction",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:1===e.dirs?"North":2===e.dirs?"South":4===e.dirs?"East":"West",selected:e.dirs===l.decal_direction,onClick:function(){return c("selected direction",{dirs:e.dirs})}},e.dirs)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.DisposalUnit=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.DisposalUnit=function(e,t){var n,c,l=(0,r.useBackend)(t),d=l.act,u=l.data;return u.full_pressure?(n="good",c="Ready"):u.panel_open?(n="bad",c="Power Disabled"):u.pressure_charging?(n="average",c="Pressurizing"):(n="bad",c="Off"),(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:n,children:c}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:u.per,color:"good"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Handle",children:(0,o.createComponentVNode)(2,a.Button,{icon:u.flush?"toggle-on":"toggle-off",disabled:u.isai||u.panel_open,content:u.flush?"Disengage":"Engage",onClick:function(){return d(u.flush?"handle-0":"handle-1")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Eject",children:(0,o.createComponentVNode)(2,a.Button,{icon:"sign-out-alt",disabled:u.isai,content:"Eject Contents",onClick:function(){return d("eject")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",disabled:u.panel_open,selected:u.pressure_charging,onClick:function(){return d(u.pressure_charging?"pump-0":"pump-1")}})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.DnaConsoleCommands=t.DnaConsole=void 0;var o=n(0),r=n(14),a=n(31),i=n(6),c=n(19),l=n(1),d=n(3),u=n(2);var s=["A","T","C","G"],p={A:"green",T:"green",G:"blue",C:"blue",X:"grey"},m={1:"good",2:"bad",4:"average"},f=function(e,t){return e.Alias===t.Alias&&e.AppliedChromo===t.AppliedChromo};t.DnaConsole=function(e,t){var n=(0,l.useBackend)(t),r=n.data,a=(n.act,r.isPulsingRads),i=r.radPulseSeconds,c=r.view.consoleMode;return(0,o.createComponentVNode)(2,u.Window,{resizable:!0,children:[!!a&&(0,o.createComponentVNode)(2,d.Dimmer,{fontSize:"14px",textAlign:"center",children:[(0,o.createComponentVNode)(2,d.Icon,{mr:1,name:"spinner",spin:!0}),"Radiation pulse in progress...",(0,o.createComponentVNode)(2,d.Box,{mt:1}),i,"s"]}),(0,o.createComponentVNode)(2,u.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,h),(0,o.createComponentVNode)(2,N),"storage"===c&&(0,o.createComponentVNode)(2,V),"sequencer"===c&&(0,o.createComponentVNode)(2,w),"enzymes"===c&&(0,o.createComponentVNode)(2,I)]})]})};var h=function(e,t){return(0,o.createComponentVNode)(2,d.Section,{title:"DNA Scanner",buttons:(0,o.createComponentVNode)(2,C),children:(0,o.createComponentVNode)(2,b)})},C=function(e,t){var n=(0,l.useBackend)(t),r=n.data,a=n.act,i=r.hasDelayedAction,c=r.isPulsingRads,u=r.isScannerConnected,s=r.isScrambleReady,p=r.isViableSubject,m=r.scannerLocked,f=r.scannerOpen,h=r.scrambleSeconds;return u?(0,o.createFragment)([!!i&&(0,o.createComponentVNode)(2,d.Button,{content:"Cancel Delayed Action",onClick:function(){return a("cancel_delay")}}),!!p&&(0,o.createComponentVNode)(2,d.Button,{disabled:!s||c,onClick:function(){return a("scramble_dna")},children:["Scramble DNA",!s&&" ("+h+"s)"]}),(0,o.createComponentVNode)(2,d.Box,{inline:!0,mr:1}),(0,o.createComponentVNode)(2,d.Button,{icon:m?"lock":"lock-open",color:m&&"bad",disabled:f,content:m?"Locked":"Unlocked",onClick:function(){return a("toggle_lock")}}),(0,o.createComponentVNode)(2,d.Button,{disabled:m,content:f?"Close":"Open",onClick:function(){return a("toggle_door")}})],0):(0,o.createComponentVNode)(2,d.Button,{content:"Connect Scanner",onClick:function(){return a("connect_scanner")}})},g=function(e,t){var n=e.status;return 0===n?(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:"good",children:"Conscious"}):2===n?(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:"average",children:"Unconscious"}):1===n?(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:"average",children:"Critical"}):3===n?(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:"bad",children:"Dead"}):4===n?(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:"bad",children:"Transforming"}):(0,o.createComponentVNode)(2,d.Box,{inline:!0,children:"Unknown"})},b=function(e,t){var n=(0,l.useBackend)(t),r=n.data,a=(n.act,r.subjectName),i=r.isScannerConnected,c=r.isViableSubject,u=r.subjectHealth,s=r.subjectRads,p=r.subjectStatus;return i?c?(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Status",children:[a,(0,o.createComponentVNode)(2,d.Icon,{mx:1,color:"label",name:"long-arrow-alt-right"}),(0,o.createComponentVNode)(2,g,{status:p})]}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,d.ProgressBar,{value:u,minValue:0,maxValue:100,ranges:{olive:[101,Infinity],good:[70,101],average:[30,70],bad:[-Infinity,30]},children:[u,"%"]})}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Radiation",children:(0,o.createComponentVNode)(2,d.ProgressBar,{value:s,minValue:0,maxValue:100,ranges:{bad:[71,Infinity],average:[30,71],good:[0,30],olive:[-Infinity,0]},children:[s,"%"]})})]}):(0,o.createComponentVNode)(2,d.Box,{color:"average",children:"No viable subject found in DNA Scanner."}):(0,o.createComponentVNode)(2,d.Box,{color:"bad",children:"DNA Scanner is not connected."})},N=function(e,t){var n=(0,l.useBackend)(t),r=n.data,a=n.act,i=r.hasDisk,c=r.isInjectorReady,u=r.injectorSeconds,s=r.view.consoleMode;return(0,o.createComponentVNode)(2,d.Section,{title:"DNA Console",buttons:!c&&(0,o.createComponentVNode)(2,d.Box,{lineHeight:"20px",color:"label",children:["Injector on cooldown (",u,"s)"]}),children:(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Mode",children:[(0,o.createComponentVNode)(2,d.Button,{content:"Storage",selected:"storage"===s,onClick:function(){return a("set_view",{consoleMode:"storage"})}}),(0,o.createComponentVNode)(2,d.Button,{content:"Sequencer",disabled:!r.isViableSubject,selected:"sequencer"===s,onClick:function(){return a("set_view",{consoleMode:"sequencer"})}}),(0,o.createComponentVNode)(2,d.Button,{content:"Enzymes",selected:"enzymes"===s,onClick:function(){return a("set_view",{consoleMode:"enzymes"})}})]}),!!i&&(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Disk",children:(0,o.createComponentVNode)(2,d.Button,{icon:"eject",content:"Eject",onClick:function(){a("eject_disk"),a("set_view",{storageMode:"console"})}})})]})})};t.DnaConsoleCommands=N;var v=function(e,t){var n=(0,l.useBackend)(t),r=n.data,a=n.act,i=r.hasDisk,c=r.view,u=c.storageMode,s=c.storageConsSubMode,p=c.storageDiskSubMode;return(0,o.createFragment)(["console"===u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Button,{selected:"mutations"===s,content:"Mutations",onClick:function(){return a("set_view",{storageConsSubMode:"mutations"})}}),(0,o.createComponentVNode)(2,d.Button,{selected:"chromosomes"===s,content:"Chromosomes",onClick:function(){return a("set_view",{storageConsSubMode:"chromosomes"})}})],4),"disk"===u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Button,{selected:"mutations"===p,content:"Mutations",onClick:function(){return a("set_view",{storageDiskSubMode:"mutations"})}}),(0,o.createComponentVNode)(2,d.Button,{selected:"diskenzymes"===p,content:"Enzymes",onClick:function(){return a("set_view",{storageDiskSubMode:"diskenzymes"})}})],4),(0,o.createComponentVNode)(2,d.Box,{inline:!0,mr:1}),(0,o.createComponentVNode)(2,d.Button,{content:"Console",selected:"console"===u,onClick:function(){return a("set_view",{storageMode:"console",storageConsSubMode:"mutations"})}}),(0,o.createComponentVNode)(2,d.Button,{content:"Disk",disabled:!i,selected:"disk"===u,onClick:function(){return a("set_view",{storageMode:"disk",storageDiskSubMode:"mutations"})}}),(0,o.createComponentVNode)(2,d.Button,{content:"Adv. Injector",selected:"injector"===u,onClick:function(){return a("set_view",{storageMode:"injector"})}})],0)},V=function(e,t){var n=(0,l.useBackend)(t),r=n.data,a=n.act,i=r.view,c=i.storageMode,u=i.storageConsSubMode,s=i.storageDiskSubMode,p=r.diskMakeupBuffer,m=r.diskHasMakeup,f=r.storage[c];return(0,o.createComponentVNode)(2,d.Section,{title:"Storage",buttons:(0,o.createComponentVNode)(2,v),children:["console"===c&&"mutations"===u&&(0,o.createComponentVNode)(2,y,{mutations:f}),"console"===c&&"chromosomes"===u&&(0,o.createComponentVNode)(2,k),"disk"===c&&"mutations"===s&&(0,o.createComponentVNode)(2,y,{mutations:f}),"disk"===c&&"diskenzymes"===s&&(0,o.createFragment)([(0,o.createComponentVNode)(2,P,{makeup:p}),(0,o.createComponentVNode)(2,d.Button,{icon:"times",color:"red",disabled:!m,content:"Delete",onClick:function(){return a("del_makeup_disk")}})],4),"injector"===c&&(0,o.createComponentVNode)(2,O)]})},y=function(e,t){var n=e.customMode,r=void 0===n?"":n,a=(0,l.useBackend)(t),i=a.data,u=a.act,s=e.mutations||[],p=i.view.storageMode+r,m=i.view["storage"+p+"MutationRef"],f=s.find((function(e){return e.ByondRef===m}));return!f&&s.length>0&&(f=s[0],m=f.ByondRef),(0,o.createComponentVNode)(2,d.Flex,{children:[(0,o.createComponentVNode)(2,d.Flex.Item,{width:"140px",children:(0,o.createComponentVNode)(2,d.Section,{title:(0,c.capitalize)(i.view.storageMode)+" Storage",level:2,children:s.map((function(e){return(0,o.createComponentVNode)(2,d.Button,{fluid:!0,ellipsis:!0,color:"transparent",selected:e.ByondRef===m,content:e.Name,onClick:function(){var t;return u("set_view",((t={})["storage"+p+"MutationRef"]=e.ByondRef,t))}},e.ByondRef)}))})}),(0,o.createComponentVNode)(2,d.Flex.Item,{children:(0,o.createComponentVNode)(2,d.Divider,{vertical:!0})}),(0,o.createComponentVNode)(2,d.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,d.Section,{title:"Mutation Info",level:2,children:(0,o.createComponentVNode)(2,x,{mutation:f})})})]})},k=function(e,t){var n,a=(0,l.useBackend)(t),i=a.data,c=a.act,u=null!=(n=i.chromoStorage)?n:[],s=(0,r.uniqBy)((function(e){return e.Name}))(u),p=i.view.storageChromoName,m=u.find((function(e){return e.Name===p}));return(0,o.createComponentVNode)(2,d.Flex,{children:[(0,o.createComponentVNode)(2,d.Flex.Item,{width:"140px",children:(0,o.createComponentVNode)(2,d.Section,{title:"Console Storage",level:2,children:s.map((function(e){return(0,o.createComponentVNode)(2,d.Button,{fluid:!0,ellipsis:!0,color:"transparent",selected:e.Name===p,content:e.Name,onClick:function(){return c("set_view",{storageChromoName:e.Name})}},e.Index)}))})}),(0,o.createComponentVNode)(2,d.Flex.Item,{children:(0,o.createComponentVNode)(2,d.Divider,{vertical:!0})}),(0,o.createComponentVNode)(2,d.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,d.Section,{title:"Chromosome Info",level:2,children:!m&&(0,o.createComponentVNode)(2,d.Box,{color:"label",children:"Nothing to show."})||(0,o.createFragment)([(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Name",children:m.Name}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Description",children:m.Description}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Amount",children:u.filter((function(e){return e.Name===m.Name})).length})]}),(0,o.createComponentVNode)(2,d.Button,{mt:2,icon:"eject",content:"Eject Chromosome",onClick:function(){return c("eject_chromo",{chromo:m.Name})}})],4)})})]})},x=function(e,t){var n,i,c,u=e.mutation,s=(0,l.useBackend)(t),p=s.data,h=s.act,C=p.diskCapacity,g=p.diskReadOnly,b=p.hasDisk,N=p.isInjectorReady,v=null!=(n=p.storage.disk)?n:[],V=null!=(i=p.storage.console)?i:[],y=null!=(c=p.storage.injector)?c:[];if(!u)return(0,o.createComponentVNode)(2,d.Box,{color:"label",children:"Nothing to show."});if("occupant"===u.Source&&!u.Discovered)return(0,o.createComponentVNode)(2,d.LabeledList,{children:(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Name",children:u.Alias})});var k=V.find((function(e){return f(e,u)})),x=v.find((function(e){return f(e,u)})),w=(0,a.flow)([(0,r.uniqBy)((function(e){return e.Name})),(0,r.filter)((function(e){return e.Name!==u.Name}))])([].concat(v,V));return(0,o.createFragment)([(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Name",children:(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:m[u.Quality],children:u.Name})}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Description",children:u.Description}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Instability",children:u.Instability})]}),(0,o.createComponentVNode)(2,d.Divider),(0,o.createComponentVNode)(2,d.Box,{children:["disk"===u.Source&&(0,o.createComponentVNode)(2,j,{disabled:!b||C<=0||g,mutations:w,source:u}),"console"===u.Source&&(0,o.createComponentVNode)(2,j,{mutations:w,source:u}),["occupant","disk","console"].includes(u.Source)&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Dropdown,{width:"240px",options:y.map((function(e){return e.name})),disabled:0===y.length||!u.Active,selected:"Add to advanced injector",onSelected:function(e){return h("add_advinj_mut",{mutref:u.ByondRef,advinj:e,source:u.Source})}}),(0,o.createComponentVNode)(2,d.Button,{icon:"syringe",disabled:!N||!u.Active,content:"Print Activator",onClick:function(){return h("print_injector",{mutref:u.ByondRef,is_activator:1,source:u.Source})}}),(0,o.createComponentVNode)(2,d.Button,{icon:"syringe",disabled:!N||!u.Active,content:"Print Mutator",onClick:function(){return h("print_injector",{mutref:u.ByondRef,is_activator:0,source:u.Source})}})],4)]}),["disk","occupant"].includes(u.Source)&&(0,o.createComponentVNode)(2,d.Button,{icon:"save",disabled:k||!u.Active,content:"Save to Console",onClick:function(){return h("save_console",{mutref:u.ByondRef,source:u.Source})}}),["console","occupant"].includes(u.Source)&&(0,o.createComponentVNode)(2,d.Button,{icon:"save",disabled:x||!b||C<=0||g||!u.Active,content:"Save to Disk",onClick:function(){return h("save_disk",{mutref:u.ByondRef,source:u.Source})}}),["console","disk","injector"].includes(u.Source)&&(0,o.createComponentVNode)(2,d.Button,{icon:"times",color:"red",content:"Delete from "+u.Source,onClick:function(){return h("delete_"+u.Source+"_mut",{mutref:u.ByondRef})}}),(2===u.Class||!!u.Scrambled&&"occupant"===u.Source)&&(0,o.createComponentVNode)(2,d.Button,{content:"Nullify",onClick:function(){return h("nullify",{mutref:u.ByondRef})}}),(0,o.createComponentVNode)(2,d.Divider),(0,o.createComponentVNode)(2,_,{disabled:"occupant"!==u.Source,mutation:u})],0)},_=function(e,t){var n=e.mutation,r=e.disabled,a=(0,l.useBackend)(t),i=(a.data,a.act);return 0===n.CanChromo?(0,o.createComponentVNode)(2,d.Box,{color:"label",children:"No compatible chromosomes"}):1===n.CanChromo?r?(0,o.createComponentVNode)(2,d.Box,{color:"label",children:"No chromosome applied."}):(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Dropdown,{width:"240px",options:n.ValidStoredChromos,disabled:0===n.ValidStoredChromos.length,selected:0===n.ValidStoredChromos.length?"No Suitable Chromosomes":"Select a chromosome",onSelected:function(e){return i("apply_chromo",{chromo:e,mutref:n.ByondRef})}}),(0,o.createComponentVNode)(2,d.Box,{color:"label",mt:1,children:["Compatible with: ",n.ValidChromos]})],4):2===n.CanChromo?(0,o.createComponentVNode)(2,d.Box,{color:"label",children:["Applied chromosome: ",n.AppliedChromo]}):null},w=function(e,t){var n,r,a=(0,l.useBackend)(t),i=a.data,c=a.act,u=null!=(n=null==(r=i.storage)?void 0:r.occupant)?n:[],s=i.isJokerReady,p=i.isMonkey,m=i.jokerSeconds,f=i.subjectStatus,h=i.view,C=h.sequencerMutation,g=h.jokerActive,b=u.find((function(e){return e.Alias===C}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Flex,{spacing:1,mb:1,children:[(0,o.createComponentVNode)(2,d.Flex.Item,{width:u.length<=8?"154px":"174px",children:(0,o.createComponentVNode)(2,d.Section,{title:"Sequences",height:"214px",overflowY:u.length>8&&"scroll",children:u.map((function(e){return(0,o.createComponentVNode)(2,B,{url:e.Image,selected:e.Alias===C,onClick:function(){c("set_view",{sequencerMutation:e.Alias}),c("check_discovery",{alias:e.Alias})}},e.Alias)}))})}),(0,o.createComponentVNode)(2,d.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,d.Section,{title:"Sequence Info",minHeight:"100%",children:(0,o.createComponentVNode)(2,x,{mutation:b})})})]}),3===f&&(0,o.createComponentVNode)(2,d.Section,{color:"bad",children:"Genetic sequence corrupted. Subject diagnostic report: DECEASED."})||p&&"Monkified"!==(null==b?void 0:b.Name)&&(0,o.createComponentVNode)(2,d.Section,{color:"bad",children:"Genetic sequence corrupted. Subject diagnostic report: MONKEY."})||4===f&&(0,o.createComponentVNode)(2,d.Section,{color:"bad",children:"Genetic sequence corrupted. Subject diagnostic report: TRANSFORMING."})||(0,o.createComponentVNode)(2,d.Section,{title:"Genome Sequencer\u2122",buttons:!s&&(0,o.createComponentVNode)(2,d.Box,{lineHeight:"20px",color:"label",children:["Joker on cooldown (",m,"s)"]})||g&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Box,{mr:1,inline:!0,color:"label",children:"Click on a gene to reveal it."}),(0,o.createComponentVNode)(2,d.Button,{content:"Cancel Joker",onClick:function(){return c("set_view",{jokerActive:""})}})],4)||(0,o.createComponentVNode)(2,d.Button,{icon:"crown",color:"purple",content:"Use Joker",onClick:function(){return c("set_view",{jokerActive:"1"})}}),children:(0,o.createComponentVNode)(2,S,{mutation:b})})],0)},B=function(e,t){var n,r=e.url,a=e.selected,i=e.onClick;return a&&(n="2px solid #22aa00"),(0,o.createComponentVNode)(2,d.Box,{as:"img",src:r,style:{width:"64px",margin:"2px","margin-left":"4px",outline:n},onClick:i})},L=function(e,t){var n=e.gene,r=e.onChange,a=e.disabled,i=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["gene","onChange","disabled"]),c=s.length,l=s.indexOf(n),u=a&&p.X||p[n];return(0,o.normalizeProps)((0,o.createComponentVNode)(2,d.Button,Object.assign({},i,{color:u,onClick:function(e){if(e.preventDefault(),r)if(-1!==l){var t=s[(l+1)%c];r(e,t)}else r(e,s[0])},oncontextmenu:function(e){if(e.preventDefault(),r)if(-1!==l){var t=s[(l-1+c)%c];r(e,t)}else r(e,s[c-1])},children:n})))},S=function(e,t){var n=e.mutation,r=(0,l.useBackend)(t),a=r.data,c=r.act,u=a.view.jokerActive;if(!n)return(0,o.createComponentVNode)(2,d.Box,{color:"average",children:"No genome selected for sequencing."});if(n.Scrambled)return(0,o.createComponentVNode)(2,d.Box,{color:"average",children:"Sequence unreadable due to unpredictable mutation."});for(var s=n.Sequence,p=n.DefaultSeq,m=[],f=function(e){var t=s.charAt(e),r=(0,o.createComponentVNode)(2,L,{width:"22px",textAlign:"center",disabled:!!n.Scrambled||1!==n.Class,className:"X"===(null==p?void 0:p.charAt(e))&&!n.Active&&(0,i.classes)(["outline-solid","outline-color-orange"]),gene:t,onChange:function(t,o){if(!t.ctrlKey)return u?(c("pulse_gene",{pos:e+1,gene:"J",alias:n.Alias}),void c("set_view",{jokerActive:""})):void c("pulse_gene",{pos:e+1,gene:o,alias:n.Alias});c("pulse_gene",{pos:e+1,gene:"X",alias:n.Alias})}});m.push(r)},h=0;h=3){var r=(0,o.createComponentVNode)(2,d.Box,{inline:!0,width:"22px",mx:"1px",children:s});u.push(r),s=[]}},m=0;m=c,onCommit:function(e,t){return a("new_adv_inj",{name:t})}})})]})},j=function(e,t){var n=e.mutations,r=void 0===n?[]:n,a=e.source,i=(0,l.useBackend)(t),c=i.act;i.data;return(0,o.createComponentVNode)(2,d.Dropdown,{width:"240px",options:r.map((function(e){return e.Name})),disabled:0===r.length,selected:"Combine mutations",onSelected:function(e){return c("combine_"+a.Source,{firstref:(t=e,null==(n=r.find((function(e){return e.Name===t})))?void 0:n.ByondRef),secondref:a.ByondRef});var t,n}},a.ByondRef)}},function(e,t,n){"use strict";t.__esModule=!0,t.DnaVault=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.DnaVault=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.completed,u=l.used,s=l.choiceA,p=l.choiceB,m=l.dna,f=l.dna_max,h=l.plants,C=l.plants_max,g=l.animals,b=l.animals_max;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"DNA Vault Database",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Human DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:m/f,children:m+" / "+f+" Samples"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Plant DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:h/C,children:h+" / "+C+" Samples"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Animal DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:g/g,children:g+" / "+b+" Samples"})})]})}),!(!d||u)&&(0,o.createComponentVNode)(2,a.Section,{title:"Personal Gene Therapy",children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",mb:1,children:"Applicable Gene Therapy Treatments"}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:s,textAlign:"center",onClick:function(){return c("gene",{choice:s})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:p,textAlign:"center",onClick:function(){return c("gene",{choice:p})}})})]})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.EightBallVote=void 0;var o=n(0),r=n(1),a=n(3),i=n(19),c=n(2);t.EightBallVote=function(e,t){var n=(0,r.useBackend)(t),i=(n.act,n.data.shaking);return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:!i&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No question is currently being asked."})||(0,o.createComponentVNode)(2,l)})})};var l=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.question,u=l.answers,s=void 0===u?[]:u;return(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"16px",m:1,children:['"',d,'"']}),(0,o.createComponentVNode)(2,a.Grid,{children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:(0,i.toTitleCase)(e.answer),selected:e.selected,fontSize:"16px",lineHeight:"24px",textAlign:"center",mb:1,onClick:function(){return c("vote",{answer:e.answer})}}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"30px",children:e.amount})]},e.answer)}))})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Electrolyzer=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Electrolyzer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Power",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject Cell",disabled:!l.hasPowercell||!l.open,onClick:function(){return c("eject")}}),(0,o.createComponentVNode)(2,a.Button,{icon:l.on?"power-off":"times",content:l.on?"On":"Off",selected:l.on,disabled:!l.hasPowercell,onClick:function(){return c("power")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cell",color:!l.hasPowercell&&"bad",children:l.hasPowercell&&(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.powerLevel/100,content:l.powerLevel+"%",ranges:{good:[.6,Infinity],average:[.3,.6],bad:[-Infinity,.3]}})||"None"})})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Electropack=void 0;var o=n(0),r=n(15),a=n(1),i=n(3),c=n(2);t.Electropack=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data,u=d.power,s=d.code,p=d.frequency,m=d.minFrequency,f=d.maxFrequency;return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,i.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return l("power")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Frequency",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Reset",onClick:function(){return l("reset",{reset:"freq"})}}),children:(0,o.createComponentVNode)(2,i.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:6,minValue:m/10,maxValue:f/10,value:p/10,format:function(e){return(0,r.toFixed)(e,1)},width:"80px",onDrag:function(e,t){return l("freq",{freq:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Code",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Reset",onClick:function(){return l("reset",{reset:"code"})}}),children:(0,o.createComponentVNode)(2,i.NumberInput,{animate:!0,step:1,stepPixelSize:6,minValue:1,maxValue:100,value:s,width:"80px",onDrag:function(e,t){return l("code",{code:t})}})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.EmergencyShuttleConsole=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.EmergencyShuttleConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.timer_str,u=l.enabled,s=l.emagged,p=l.engines_started,m=l.authorizations_remaining,f=l.authorizations,h=void 0===f?[]:f;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,fontSize:"40px",textAlign:"center",fontFamily:"monospace",children:d}),(0,o.createComponentVNode)(2,a.Box,{textAlign:"center",fontSize:"16px",mb:1,children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,children:"ENGINES:"}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:p?"good":"average",ml:1,children:p?"Online":"Idle"})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Early Launch Authorization",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Repeal All",color:"bad",disabled:!u,onClick:function(){return c("abort")}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"exclamation-triangle",color:"good",content:"AUTHORIZE",disabled:!u,onClick:function(){return c("authorize")}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"minus",content:"REPEAL",disabled:!u,onClick:function(){return c("repeal")}})})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Authorizations",level:3,minHeight:"150px",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,color:s?"bad":"good",children:s?"ERROR":"Remaining: "+m}),children:h.length>0?h.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{bold:!0,fontSize:"16px",className:"candystripe",children:[e.name," (",e.job,")"]},e.name)})):(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"16px",color:"average",children:"No Active Authorizations"})})]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.EngravedMessage=void 0;var o=n(0),r=n(19),a=n(1),i=n(3),c=n(2);t.EngravedMessage=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data,u=d.admin_mode,s=d.creator_key,p=d.creator_name,m=d.has_liked,f=d.has_disliked,h=d.hidden_message,C=d.is_creator,g=d.num_likes,b=d.num_dislikes,N=d.realdate;return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"20px",mb:2,children:(0,r.decodeHtmlEntities)(h)}),(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-up",content:" "+g,disabled:C,selected:m,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return l("like")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"circle",disabled:C,selected:!f&&!m,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return l("neutral")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-down",content:" "+b,disabled:C,selected:f,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return l("dislike")}})})]})]}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Created On",children:N})})}),(0,o.createComponentVNode)(2,i.Section),!!u&&(0,o.createComponentVNode)(2,i.Section,{title:"Admin Panel",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Delete",color:"bad",onClick:function(){return l("delete")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Creator Ckey",children:s}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Creator Character Name",children:p})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ExosuitControlConsole=void 0;var o=n(0),r=n(15),a=n(1),i=n(3),c=n(2);t.ExosuitControlConsole=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data.mechs,u=void 0===d?[]:d;return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[0===u.length&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No exosuits detected"}),u.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"envelope",content:"Send Message",disabled:!e.pilot,onClick:function(){return l("send_message",{tracker_ref:e.tracker_ref})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"wifi",content:e.emp_recharging?"Recharging...":"EMP Burst",color:"bad",disabled:e.emp_recharging,onClick:function(){return l("shock",{tracker_ref:e.tracker_ref})}})],4),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Integrity",children:(0,o.createComponentVNode)(2,i.Box,{color:(e.integrity<=30?"bad":e.integrity<=70&&"average")||"good",children:[e.integrity,"%"]})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Charge",children:(0,o.createComponentVNode)(2,i.Box,{color:(e.charge<=30?"bad":e.charge<=70&&"average")||"good",children:"number"==typeof e.charge&&e.charge+"%"||"Not Found"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Airtank",children:"number"==typeof e.airtank&&(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:e.airtank,format:function(e){return(0,r.toFixed)(e,2)+" kPa"}})||"Not Equipped"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pilot",children:e.pilot||"None"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Location",children:e.location||"Unknown"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Active Equipment",children:e.active_equipment||"None"}),e.cargo_space>=0&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Used Cargo Space",children:(0,o.createComponentVNode)(2,i.Box,{color:(e.cargo_space<=30?"good":e.cargo_space<=70&&"average")||"bad",children:[e.cargo_space,"%"]})})]})},e.tracker_ref)}))]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ForbiddenLore=void 0;var o=n(0),r=n(1),a=n(31),i=n(14),c=n(3),l=n(2);t.ForbiddenLore=function(e,t){var n=(0,r.useBackend)(t),d=n.act,u=n.data,s=u.charges,p=(u.to_know,(0,a.flow)([(0,i.sortBy)((function(e){return"Research"!==e.state}),(function(e){return"Side"===e.path}))])(u.to_know||[]));return(0,o.createComponentVNode)(2,l.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c.Section,{title:"Research Eldritch Knowledge",children:["Charges left : ",s,null!==p?p.map((function(e){return(0,o.createComponentVNode)(2,c.Section,{title:e.name,level:2,children:[(0,o.createComponentVNode)(2,c.Box,{bold:!0,mb:1,mt:1,children:[e.path," path"]}),(0,o.createComponentVNode)(2,c.Box,{mb:1,mt:1,children:[(0,o.createComponentVNode)(2,c.Button,{content:e.state,disabled:e.disabled,onClick:function(){return d("research",{name:e.name,cost:e.cost})}})," ","Cost : ",e.cost]}),(0,o.createComponentVNode)(2,c.Box,{italic:!0,mb:1,mt:1,children:e.flavour}),(0,o.createComponentVNode)(2,c.Box,{mb:1,mt:1,children:e.desc})]},e.name)})):(0,o.createComponentVNode)(2,c.Box,{children:"No more knowledge can be found"})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Gateway=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Gateway=function(){return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.gateway_present,d=void 0!==l&&l,u=c.gateway_status,s=void 0!==u&&u,p=c.current_target,m=void 0===p?null:p,f=c.destinations,h=void 0===f?[]:f;return d?m?(0,o.createComponentVNode)(2,a.Section,{title:m.name,children:[(0,o.createComponentVNode)(2,a.Icon,{name:"rainbow",size:4,color:"green"}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,onClick:function(){return i("deactivate")},children:"Deactivate"})]}):h.length?(0,o.createFragment)([!s&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Gateway Unpowered"}),h.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,children:e.availible&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,onClick:function(){return i("activate",{destination:e.ref})},children:"Activate"})||(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{m:1,textColor:"bad",children:e.reason}),!!e.timeout&&(0,o.createComponentVNode)(2,a.ProgressBar,{value:e.timeout,children:"Calibrating..."})],0)},e.ref)}))],0):(0,o.createComponentVNode)(2,a.Section,{children:"No gateway nodes detected."}):(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No linked gateway"}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,onClick:function(){return i("linkup")},children:"Linkup"})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.GlandDispenser=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.GlandDispenser=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data.glands,d=void 0===l?[]:l;return(0,o.createComponentVNode)(2,i.Window,{theme:"abductor",children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{width:"60px",height:"60px",m:.75,textAlign:"center",lineHeight:"55px",icon:"eject",backgroundColor:e.color,content:e.amount||"0",disabled:!e.amount,onClick:function(){return c("dispense",{gland_id:e.id})}},e.id)}))})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Gps=void 0;var o=n(0),r=n(14),a=n(31),i=n(15),c=n(118),l=n(1),d=n(3),u=n(2),s=function(e){return(0,r.map)(parseFloat)(e.split(", "))};t.Gps=function(e,t){var n=(0,l.useBackend)(t),p=n.act,m=n.data,f=m.currentArea,h=m.currentCoords,C=m.globalmode,g=m.power,b=m.tag,N=m.updating,v=(0,a.flow)([(0,r.map)((function(e,t){var n=e.dist&&Math.round((0,c.vecLength)((0,c.vecSubtract)(s(h),s(e.coords))));return Object.assign({},e,{dist:n,index:t})})),(0,r.sortBy)((function(e){return e.dist===undefined}),(function(e){return e.entrytag}))])(m.signals||[]);return(0,o.createComponentVNode)(2,u.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,u.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,d.Section,{title:"Control",buttons:(0,o.createComponentVNode)(2,d.Button,{icon:"power-off",content:g?"On":"Off",selected:g,onClick:function(){return p("power")}}),children:(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Tag",children:(0,o.createComponentVNode)(2,d.Button,{icon:"pencil-alt",content:b,onClick:function(){return p("rename")}})}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Scan Mode",children:(0,o.createComponentVNode)(2,d.Button,{icon:N?"unlock":"lock",content:N?"AUTO":"MANUAL",color:!N&&"bad",onClick:function(){return p("updating")}})}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Range",children:(0,o.createComponentVNode)(2,d.Button,{icon:"sync",content:C?"MAXIMUM":"LOCAL",selected:!C,onClick:function(){return p("globalmode")}})})]})}),!!g&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Section,{title:"Current Location",children:(0,o.createComponentVNode)(2,d.Box,{fontSize:"18px",children:[f," (",h,")"]})}),(0,o.createComponentVNode)(2,d.Section,{title:"Detected Signals",children:(0,o.createComponentVNode)(2,d.Table,{children:[(0,o.createComponentVNode)(2,d.Table.Row,{bold:!0,children:[(0,o.createComponentVNode)(2,d.Table.Cell,{content:"Name"}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,content:"Direction"}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,content:"Coordinates"})]}),v.map((function(e){return(0,o.createComponentVNode)(2,d.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,d.Table.Cell,{bold:!0,color:"label",children:e.entrytag}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,opacity:e.dist!==undefined&&(0,i.clamp)(1.2/Math.log(Math.E+e.dist/20),.4,1),children:[e.degrees!==undefined&&(0,o.createComponentVNode)(2,d.Icon,{mr:1,size:1.2,name:"arrow-up",rotation:e.degrees}),e.dist!==undefined&&e.dist+"m"]}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,children:e.coords})]},e.entrytag+e.coords+e.index)}))]})})],4)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.GravityGenerator=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.GravityGenerator=function(e,t){var n=(0,r.useBackend)(t),l=(n.act,n.data),d=l.charging_state,u=l.operational;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[!u&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No data available"}),!!u&&0!==d&&(0,o.createComponentVNode)(2,a.NoticeBox,{danger:!0,children:"WARNING - Radiation detected"}),!!u&&0===d&&(0,o.createComponentVNode)(2,a.NoticeBox,{success:!0,children:"No radiation detected"}),!!u&&(0,o.createComponentVNode)(2,c)]})})};var c=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.breaker,d=c.charge_count,u=c.charging_state,s=c.on,p=c.operational;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:l?"power-off":"times",content:l?"On":"Off",selected:l,disabled:!p,onClick:function(){return i("gentoggle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Gravity Charge",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d/100,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",children:[0===u&&(s&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Fully Charged"})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Not Charging"})),1===u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"Charging"}),2===u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"Discharging"})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagItemReclaimer=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.GulagItemReclaimer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.mobs,u=void 0===d?[]:d;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[0===u.length&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No stored items"}),u.length>0&&(0,o.createComponentVNode)(2,a.Section,{title:"Stored Items",children:(0,o.createComponentVNode)(2,a.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"right",children:(0,o.createComponentVNode)(2,a.Button,{content:"Retrieve Items",disabled:!l.can_reclaim,onClick:function(){return c("release_items",{mobref:e.mob})}})})]},e.mob)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagTeleporterConsole=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.GulagTeleporterConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.teleporter,u=l.teleporter_lock,s=l.teleporter_state_open,p=l.teleporter_location,m=l.beacon,f=l.beacon_location,h=l.id,C=l.id_name,g=l.can_teleport,b=l.goal,N=void 0===b?0:b,v=l.prisoner,V=void 0===v?{}:v;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Teleporter Console",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:s?"Open":"Closed",disabled:u,selected:s,onClick:function(){return c("toggle_open")}}),(0,o.createComponentVNode)(2,a.Button,{icon:u?"lock":"unlock",content:u?"Locked":"Unlocked",selected:u,disabled:s,onClick:function(){return c("teleporter_lock")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Teleporter Unit",color:d?"good":"bad",buttons:!d&&(0,o.createComponentVNode)(2,a.Button,{content:"Reconnect",onClick:function(){return c("scan_teleporter")}}),children:d?p:"Not Connected"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Receiver Beacon",color:m?"good":"bad",buttons:!m&&(0,o.createComponentVNode)(2,a.Button,{content:"Reconnect",onClick:function(){return c("scan_beacon")}}),children:m?f:"Not Connected"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Prisoner Details",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Prisoner ID",children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:h?C:"No ID",onClick:function(){return c("handle_id")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Point Goal",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:N,width:"48px",minValue:1,maxValue:1e3,onChange:function(e,t){return c("set_goal",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Occupant",children:V.name||"No Occupant"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Criminal Status",children:V.crimstat||"No Status"})]})}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Process Prisoner",disabled:!g,textAlign:"center",color:"bad",onClick:function(){return c("teleport")}})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Holodeck=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Holodeck=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.can_toggle_safety,u=l.default_programs,s=void 0===u?[]:u,p=l.emag_programs,m=void 0===p?[]:p,f=l.emagged,h=l.program;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Default Programs",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:f?"unlock":"lock",content:"Safeties",color:"bad",disabled:!d,selected:!f,onClick:function(){return c("safety")}}),children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name.substring(11),textAlign:"center",selected:e.type===h,onClick:function(){return c("load_program",{type:e.type})}},e.type)}))}),!!f&&(0,o.createComponentVNode)(2,a.Section,{title:"Dangerous Programs",children:m.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name.substring(11),color:"bad",textAlign:"center",selected:e.type===h,onClick:function(){return c("load_program",{type:e.type})}},e.type)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Holopad=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Holopad=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data.calling;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:[!!d&&(0,o.createComponentVNode)(2,a.Modal,{fontSize:"36px",fontFamily:"monospace",children:[(0,o.createComponentVNode)(2,a.Flex,{align:"center",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{mr:2,mt:2,children:(0,o.createComponentVNode)(2,a.Icon,{name:"phone-alt",rotation:25})}),(0,o.createComponentVNode)(2,a.Flex.Item,{mr:2,children:"Dialing..."})]}),(0,o.createComponentVNode)(2,a.Box,{mt:2,textAlign:"center",fontSize:"24px",children:(0,o.createComponentVNode)(2,a.Button,{lineHeight:"40px",icon:"times",content:"Hang Up",color:"bad",onClick:function(){return l("hang_up")}})})]}),(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})]})};var c=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.on_network,d=c.on_cooldown,u=c.allowed,s=c.disk,p=c.disk_record,m=c.replay_mode,f=c.loop_mode,h=c.record_mode,C=c.holo_calls,g=void 0===C?[]:C;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Holopad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"bell",content:d?"AI Presence Requested":"Request AI Presence",disabled:!l||d,onClick:function(){return i("AIrequest")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Communicator",children:(0,o.createComponentVNode)(2,a.Button,{icon:"phone-alt",content:u?"Connect To Holopad":"Call Holopad",disabled:!l,onClick:function(){return i("holocall",{headcall:u})}})}),g.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.connected?"Current Call":"Incoming Call",children:(0,o.createComponentVNode)(2,a.Button,{icon:e.connected?"phone-slash":"phone-alt",content:e.connected?"Disconnect call from "+e.caller:"Answer call from "+e.caller,color:e.connected?"bad":"good",disabled:!l,onClick:function(){return i(e.connected?"disconnectcall":"connectcall",{holopad:e.ref})}})},e.ref)}))]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holodisk",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!s||m||h,onClick:function(){return i("disk_eject")}}),children:!s&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No holodisk"})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Disk Player",children:[(0,o.createComponentVNode)(2,a.Button,{icon:m?"pause":"play",content:m?"Stop":"Replay",selected:m,disabled:h||!p,onClick:function(){return i("replay_mode")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:f?"Looping":"Loop",selected:f,disabled:h||!p,onClick:function(){return i("loop_mode")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"exchange-alt",content:"Change Offset",disabled:!m,onClick:function(){return i("offset")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Recorder",children:[(0,o.createComponentVNode)(2,a.Button,{icon:h?"pause":"video",content:h?"End Recording":"Record",selected:h,disabled:p&&!h||m,onClick:function(){return i("record_mode")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:"Clear Recording",color:"bad",disabled:!p||m||h,onClick:function(){return i("record_clear")}})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.HypnoChair=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.HypnoChair=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Information",backgroundColor:"#450F44",children:"The Enhanced Interrogation Chamber is designed to induce a deep-rooted trance trigger into the subject. Once the procedure is complete, by using the implanted trigger phrase, the authorities are able to ensure immediate and complete obedience and truthfulness."}),(0,o.createComponentVNode)(2,a.Section,{title:"Occupant Information",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:l.occupant.name?l.occupant.name:"No Occupant"}),!!l.occupied&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:0===l.occupant.stat?"good":1===l.occupant.stat?"average":"bad",children:0===l.occupant.stat?"Conscious":1===l.occupant.stat?"Unconcious":"Dead"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Operations",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:(0,o.createComponentVNode)(2,a.Button,{icon:l.open?"unlock":"lock",color:l.open?"default":"red",content:l.open?"Open":"Closed",onClick:function(){return c("door")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Phrase",children:(0,o.createComponentVNode)(2,a.Input,{value:l.trigger,onChange:function(e,t){return c("set_phrase",{phrase:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Interrogate Occupant",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"code-branch",content:l.interrogating?"Interrupt Interrogation":"Begin Enhanced Interrogation",onClick:function(){return c("interrogate")}}),1===l.interrogating&&(0,o.createComponentVNode)(2,a.Icon,{name:"cog",color:"orange",spin:!0})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ImplantChair=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.ImplantChair=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Occupant Information",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:l.occupant.name||"No Occupant"}),!!l.occupied&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:0===l.occupant.stat?"good":1===l.occupant.stat?"average":"bad",children:0===l.occupant.stat?"Conscious":1===l.occupant.stat?"Unconcious":"Dead"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Operations",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:(0,o.createComponentVNode)(2,a.Button,{icon:l.open?"unlock":"lock",color:l.open?"default":"red",content:l.open?"Open":"Closed",onClick:function(){return c("door")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Implant Occupant",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"code-branch",content:l.ready?l.special_name||"Implant":"Recharging",onClick:function(){return c("implant")}}),0===l.ready&&(0,o.createComponentVNode)(2,a.Icon,{name:"cog",color:"orange",spin:!0})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Implants Remaining",children:[l.ready_implants,1===l.replenishing&&(0,o.createComponentVNode)(2,a.Icon,{name:"sync",color:"red",spin:!0})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.InfraredEmitter=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.InfraredEmitter=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.on,u=l.visible;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:(0,o.createComponentVNode)(2,a.Button,{icon:d?"power-off":"times",content:d?"On":"Off",selected:d,onClick:function(){return c("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Visibility",children:(0,o.createComponentVNode)(2,a.Button,{icon:u?"eye":"eye-slash",content:u?"Visible":"Invisible",selected:u,onClick:function(){return c("visibility")}})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Intellicard=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Intellicard=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.name,u=l.isDead,s=l.isBraindead,p=l.health,m=l.wireless,f=l.radio,h=l.wiping,C=l.laws,g=void 0===C?[]:C,b=u||s;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{title:d||"Empty Card",buttons:!!d&&(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:h?"Stop Wiping":"Wipe",disabled:u,onClick:function(){return c("wipe")}}),children:!!d&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:b?"bad":"good",children:b?"Offline":"Operation"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Software Integrity",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:p,minValue:0,maxValue:100,ranges:{good:[70,Infinity],average:[50,70],bad:[-Infinity,50]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"signal",content:"Wireless Activity",selected:m,onClick:function(){return c("wireless")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"microphone",content:"Subspace Radio",selected:f,onClick:function(){return c("radio")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Laws",children:g.map((function(e){return(0,o.createComponentVNode)(2,a.BlockQuote,{children:e},e)}))})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Jukebox=void 0;var o=n(0),r=n(14),a=n(31),i=n(1),c=n(3),l=n(2);t.Jukebox=function(e,t){var n=(0,i.useBackend)(t),d=n.act,u=n.data,s=u.active,p=u.track_selected,m=u.track_length,f=u.track_beat,h=u.volume,C=(0,a.flow)([(0,r.sortBy)((function(e){return e.name}))])(u.songs||[]);return(0,o.createComponentVNode)(2,l.Window,{children:(0,o.createComponentVNode)(2,l.Window.Content,{children:[(0,o.createComponentVNode)(2,c.Section,{title:"Song Player",buttons:(0,o.createComponentVNode)(2,c.Button,{icon:s?"pause":"play",content:s?"Stop":"Play",selected:s,onClick:function(){return d("toggle")}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Track Selected",children:(0,o.createComponentVNode)(2,c.Dropdown,{"overflow-y":"scroll",width:"240px",options:C.map((function(e){return e.name})),disabled:s,selected:p||"Select a Track",onSelected:function(e){return d("select_track",{track:e})}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Track Length",children:p?m:"No Track Selected"}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Track Beat",children:[p?f:"No Track Selected",1===f?" beat":" beats"]})]})}),(0,o.createComponentVNode)(2,c.Section,{title:"Machine Settings",children:(0,o.createComponentVNode)(2,c.LabeledControls,{justify:"center",children:(0,o.createComponentVNode)(2,c.LabeledControls.Item,{label:"Volume",children:(0,o.createComponentVNode)(2,c.Box,{position:"relative",children:[(0,o.createComponentVNode)(2,c.Knob,{size:3.2,color:h>=50?"red":"green",value:h,unit:"%",minValue:0,maxValue:100,step:1,stepPixelSize:1,disabled:s,onDrag:function(e,t){return d("set_volume",{volume:t})}}),(0,o.createComponentVNode)(2,c.Button,{fluid:!0,position:"absolute",top:"-2px",right:"-22px",color:"transparent",icon:"fast-backward",onClick:function(){return d("set_volume",{volume:"min"})}}),(0,o.createComponentVNode)(2,c.Button,{fluid:!0,position:"absolute",top:"16px",right:"-22px",color:"transparent",icon:"fast-forward",onClick:function(){return d("set_volume",{volume:"max"})}}),(0,o.createComponentVNode)(2,c.Button,{fluid:!0,position:"absolute",top:"34px",right:"-22px",color:"transparent",icon:"undo",onClick:function(){return d("set_volume",{volume:"reset"})}})]})})})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.KeycardAuth=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.KeycardAuth=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{children:1===l.waiting&&(0,o.createVNode)(1,"span",null,"Waiting for another device to confirm your request...",16)}),(0,o.createComponentVNode)(2,a.Box,{children:0===l.waiting&&(0,o.createFragment)([!!l.auth_required&&(0,o.createComponentVNode)(2,a.Button,{icon:"check-square",color:"red",textAlign:"center",lineHeight:"60px",fluid:!0,onClick:function(){return c("auth_swipe")},content:"Authorize"}),0===l.auth_required&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"exclamation-triangle",fluid:!0,onClick:function(){return c("red_alert")},content:"Red Alert"}),(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",fluid:!0,onClick:function(){return c("emergency_maint")},content:"Emergency Maintenance Access"}),(0,o.createComponentVNode)(2,a.Button,{icon:"meteor",fluid:!0,onClick:function(){return c("bsa_unlock")},content:"Bluespace Artillery Unlock"})],4)],0)})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.LaborClaimConsole=void 0;var o=n(0),r=n(19),a=n(1),i=n(3),c=n(2);t.LaborClaimConsole=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data,u=d.can_go_home,s=d.id_points,p=d.ores,m=d.status_info,f=d.unclaimed_points;return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:m}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shuttle controls",children:(0,o.createComponentVNode)(2,i.Button,{content:"Move shuttle",disabled:!u,onClick:function(){return l("move_shuttle")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Points",children:s}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Unclaimed points",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Claim points",disabled:!f,onClick:function(){return l("claim_points")}}),children:f})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Material values",children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Material"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:"Value"})]}),p.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(e.ore)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{color:"label",inline:!0,children:e.value})})]},e.ore)}))]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.LanguageMenu=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.LanguageMenu=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.admin_mode,u=l.is_living,s=l.omnitongue,p=l.languages,m=void 0===p?[]:p,f=l.unknown_languages,h=void 0===f?[]:f;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Known Languages",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:m.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createFragment)([!!u&&(0,o.createComponentVNode)(2,a.Button,{content:e.is_default?"Default Language":"Select as Default",disabled:!e.can_speak,selected:e.is_default,onClick:function(){return c("select_default",{language_name:e.name})}}),!!d&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"Grant",onClick:function(){return c("grant_language",{language_name:e.name})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Remove",onClick:function(){return c("remove_language",{language_name:e.name})}})],4)],0),children:[e.desc," ","Key: ,",e.key," ",e.can_understand?"Can understand.":"Cannot understand."," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})}),!!d&&(0,o.createComponentVNode)(2,a.Section,{title:"Unknown Languages",buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Omnitongue "+(s?"Enabled":"Disabled"),selected:s,onClick:function(){return c("toggle_omnitongue")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:h.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Grant",onClick:function(){return c("grant_language",{language_name:e.name})}}),children:[e.desc," ","Key: ,",e.key," ",!!e.shadow&&"(gained from mob)"," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.LaunchpadRemote=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=n(178);t.LaunchpadRemote=function(e,t){var n=(0,r.useBackend)(t).data,l=n.has_pad,d=n.pad_closed;return(0,o.createComponentVNode)(2,i.Window,{theme:"syndicate",children:(0,o.createComponentVNode)(2,i.Window.Content,{children:!l&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Launchpad Connected"})||d&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Launchpad Closed"})||(0,o.createComponentVNode)(2,c.LaunchpadControl,{topLevel:!0})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MafiaPanel=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.MafiaPanel=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.players,u=l.actions,s=l.phase,p=l.roleinfo,m=l.role_theme,f=l.admin_controls,h=l.judgement_phase,C=l.timeleft,g=l.all_roles;return(0,o.createComponentVNode)(2,i.Window,{theme:m,resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:s,children:!!p&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.TimeDisplay,{auto:"down",value:C})}),(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createVNode)(1,"b",null,[(0,o.createTextVNode)("You are a "),p.role],0)}),(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createVNode)(1,"b",null,p.desc,0)})],4)}),(0,o.createComponentVNode)(2,a.Flex,{children:!!u&&u.map((function(e){return(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Button,{onClick:function(){return c("mf_action",{atype:e})},children:e})},e)}))}),!!f&&(0,o.createComponentVNode)(2,a.Section,{title:"ADMIN CONTROLS",backgroundColor:"red",children:["THESE ARE DEBUG, THEY WILL BREAK THE GAME, DO NOT TOUCH ",(0,o.createVNode)(1,"br"),"Also because an admin did it: do not gib/delete/etc anyone! It will runtime the game to death! ",(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-right",onClick:function(){return c("next_phase")},children:"Next Phase"}),(0,o.createComponentVNode)(2,a.Button,{icon:"home",onClick:function(){return c("players_home")},children:"Send All Players Home"}),(0,o.createComponentVNode)(2,a.Button,{icon:"radiation",onClick:function(){return c("new_game")},children:"New Game"}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{icon:"skull",onClick:function(){return c("nuke")},color:"black",children:"Nuke (delete datum + landmarks, hope it fixes everything!)"})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Players",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:!!d&&d.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{className:"candystripe",label:e.name,children:[!e.alive&&(0,o.createComponentVNode)(2,a.Box,{color:"red",children:"DEAD"}),e.votes!==undefined&&!!e.alive&&(0,o.createFragment)([(0,o.createTextVNode)("Votes : "),e.votes,(0,o.createTextVNode)(" ")],0),!!e.actions&&e.actions.map((function(t){return(0,o.createComponentVNode)(2,a.Button,{onClick:function(){return c("mf_targ_action",{atype:t,target:e.ref})},children:t},t)}))]},e.ref)}))})}),!!h&&(0,o.createComponentVNode)(2,a.Section,{title:"JUDGEMENT",children:(0,o.createComponentVNode)(2,a.Flex,{justify:"space-around",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"smile-beam",color:"good",onClick:function(){return c("vote_innocent")},children:"INNOCENT!"}),"Use these buttons to vote the accused innocent or guilty!",(0,o.createComponentVNode)(2,a.Button,{icon:"angry",color:"bad",onClick:function(){return c("vote_guilty")},children:"GUILTY!"})]})}),(0,o.createComponentVNode)(2,a.Flex,{mt:1,spacing:1,children:[(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,a.Section,{title:"Roles",minHeight:10,children:!!g&&g.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.Flex,{justify:"space-between",children:[e,(0,o.createComponentVNode)(2,a.Button,{content:"?",onClick:function(){return c("mf_lookup",{atype:e.slice(0,-3)})}})]})},e)}))})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:2,basis:0,children:(0,o.createComponentVNode)(2,a.Section,{title:"Notes",minHeight:10,children:p!==undefined&&!!p.action_log&&p.action_log.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e},e)}))})})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MalfunctionModulePicker=void 0;var o=n(0),r=n(1),a=n(2),i=n(125);t.MalfunctionModulePicker=function(e,t){var n=(0,r.useBackend)(t),c=(n.act,n.data.processingTime);return(0,o.createComponentVNode)(2,a.Window,{theme:"malfunction",resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.GenericUplink,{currencyAmount:c,currencySymbol:"PT"})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MechBayPowerConsole=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.MechBayPowerConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data.recharge_port,d=l&&l.mech,u=d&&d.cell;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Mech status",textAlign:"center",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Sync",onClick:function(){return c("reconnect")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Integrity",children:!l&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No power port detected. Please re-sync."})||!d&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No mech detected."})||(0,o.createComponentVNode)(2,a.ProgressBar,{value:d.health/d.maxhealth,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:!l&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No power port detected. Please re-sync."})||!d&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No mech detected."})||!u&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No cell is installed."})||(0,o.createComponentVNode)(2,a.ProgressBar,{value:u.charge/u.maxcharge,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:u.charge})," / "+u.maxcharge]})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MedicalKiosk=void 0;var o=n(0),r=(n(19),n(1)),a=n(3),i=n(2);t.MedicalKiosk=function(e,t){var n=(0,r.useBackend)(t),m=(n.act,n.data),f=(0,r.useSharedState)(t,"scanIndex")[0],h=m.active_status_1,C=m.active_status_2,g=m.active_status_3,b=m.active_status_4;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Flex,{mb:1,children:[(0,o.createComponentVNode)(2,a.Flex.Item,{mr:1,children:(0,o.createComponentVNode)(2,a.Section,{minHeight:"100%",children:[(0,o.createComponentVNode)(2,c,{index:1,icon:"procedures",name:"General Health Scan",description:"Reads back exact values of your general health scan."}),(0,o.createComponentVNode)(2,c,{index:2,icon:"heartbeat",name:"Symptom Based Checkup",description:"Provides information based on various non-obvious symptoms,\nlike blood levels or disease status."}),(0,o.createComponentVNode)(2,c,{index:3,icon:"radiation-alt",name:"Neurological/Radiological Scan",description:"Provides information about brain trauma and radiation."}),(0,o.createComponentVNode)(2,c,{index:4,icon:"mortar-pestle",name:"Chemical and Psychoactive Scan",description:"Provides a list of consumed chemicals, as well as potential\nside effects."})]})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,l)})]}),!!h&&1===f&&(0,o.createComponentVNode)(2,d),!!C&&2===f&&(0,o.createComponentVNode)(2,u),!!g&&3===f&&(0,o.createComponentVNode)(2,s),!!b&&4===f&&(0,o.createComponentVNode)(2,p)]})})};var c=function(e,t){var n=e.index,i=e.name,c=e.description,l=e.icon,d=(0,r.useBackend)(t),u=d.act,s=d.data,p=(0,r.useSharedState)(t,"scanIndex"),m=p[0],f=p[1],h=s["active_status_"+n];return(0,o.createComponentVNode)(2,a.Flex,{spacing:1,align:"baseline",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{width:"16px",textAlign:"center",children:(0,o.createComponentVNode)(2,a.Icon,{name:h?"check":"dollar-sign",color:h?"green":"grey"})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:l,selected:h&&m===n,tooltip:c,tooltipPosition:"right",content:i,onClick:function(){u("beginScan_"+n),f(n)}})})]})},l=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.kiosk_cost,d=c.patient_name;return(0,o.createComponentVNode)(2,a.Section,{minHeight:"100%",children:[(0,o.createComponentVNode)(2,a.Box,{italic:!0,children:["Greetings Valued Employee! Please select a desired automatic health check procedure. Diagnosis costs ",(0,o.createVNode)(1,"b",null,[l,(0,o.createTextVNode)(" credits.")],0)]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mr:1,children:"Patient:"}),d]}),(0,o.createComponentVNode)(2,a.Button,{mt:1,tooltip:"Resets the current scanning target, cancelling current scans.",icon:"sync",color:"average",onClick:function(){return i("clearTarget")},content:"Reset Scanner"})]})},d=function(e,t){var n=(0,r.useBackend)(t).data,i=n.patient_health,c=n.brute_health,l=n.burn_health,d=n.suffocation_health,u=n.toxin_health;return(0,o.createComponentVNode)(2,a.Section,{title:"Patient Health",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Total Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i/100,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i}),"%"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Brute Damage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c/100,color:"bad",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c})})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Burn Damage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l/100,color:"bad",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l})})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Oxygen Damage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d/100,color:"bad",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d})})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Toxin Damage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:u/100,color:"bad",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:u})})})]})})},u=function(e,t){var n=(0,r.useBackend)(t).data,i=n.patient_status,c=n.patient_illness,l=n.illness_info,d=n.bleed_status,u=n.blood_levels,s=n.blood_status;return(0,o.createComponentVNode)(2,a.Section,{title:"Symptom Based Checkup",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Patient Status",color:"good",children:i}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Disease Status",children:c}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Disease information",children:l}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Blood Levels",children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:u/100,color:"bad",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:u})}),(0,o.createComponentVNode)(2,a.Box,{mt:1,color:"label",children:d})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Blood Information",children:s})]})})},s=function(e,t){var n=(0,r.useBackend)(t).data,i=n.clone_health,c=n.brain_damage,l=n.brain_health,d=n.rad_contamination_status,u=n.rad_contamination_value,s=n.rad_sickness_status,p=n.rad_sickness_value,m=n.trauma_status;return(0,o.createComponentVNode)(2,a.Section,{title:"Patient Neurological and Radiological Health",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cellular Damage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i/100,color:"good",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i})})}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Brain Damage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c/100,color:"good",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c})})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Brain Status",color:"health-0",children:l}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Brain Trauma Status",children:m}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Radiation Sickness Status",children:s}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Radiation Sickness Percentage",children:[p,"%"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Radiation Contamination Status",children:d}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Radiation Contamination Percentage",children:[u,"%"]})]})})},p=function(e,t){var n=(0,r.useBackend)(t).data,i=n.chemical_list,c=void 0===i?[]:i,l=n.overdose_list,d=void 0===l?[]:l,u=n.addict_list,s=void 0===u?[]:u,p=n.hallucinating_status;return(0,o.createComponentVNode)(2,a.Section,{title:"Chemical and Psychoactive Analysis",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Chemical Contents",children:[0===c.length&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No reagents detected."}),c.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{color:"good",children:[e.volume," units of ",e.name]},e.id)}))]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Overdose Status",color:"bad",children:[0===d.length&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Patient is not overdosing."}),d.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:["Overdosing on ",e.name]},e.id)}))]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Addiction Status",color:"bad",children:[0===s.length&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Patient has no addictions."}),s.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:["Addicted to ",e.name]},e.id)}))]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Psychoactive Status",children:p})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MiningVendor=void 0;var o=n(0),r=n(6),a=n(1),i=n(3),c=n(2);t.MiningVendor=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data,u=[].concat(d.product_records);return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"User",children:d.user&&(0,o.createComponentVNode)(2,i.Box,{children:["Welcome, ",(0,o.createVNode)(1,"b",null,d.user.name||"Unknown",0),","," ",(0,o.createVNode)(1,"b",null,d.user.job||"Unemployed",0),"!",(0,o.createVNode)(1,"br"),"Your balance is ",(0,o.createVNode)(1,"b",null,[d.user.points,(0,o.createTextVNode)(" mining points")],0),"."]})||(0,o.createComponentVNode)(2,i.Box,{color:"light-gray",children:["No registered ID card!",(0,o.createVNode)(1,"br"),"Please contact your local HoP!"]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Equipment",children:(0,o.createComponentVNode)(2,i.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:[(0,o.createVNode)(1,"span",(0,r.classes)(["vending32x32",e.path]),null,1,{style:{"vertical-align":"middle"}})," ",(0,o.createVNode)(1,"b",null,e.name,0)]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{style:{"min-width":"95px","text-align":"center"},disabled:!d.user||e.price>d.user.points,content:e.price+" points",onClick:function(){return l("purchase",{ref:e.ref})}})})]},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Mint=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Mint=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.inserted_materials||[];return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Materials",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.processing?"times":"power-off",content:l.processing?"Stop":"Start",selected:l.processing,onClick:function(){return c(l.processing?"stoppress":"startpress")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:d.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.material,buttons:(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:l.chosen_material===e.material,onClick:function(){return c("changematerial",{material_name:e.material})}}),children:[e.amount," cm\xb3"]},e.material)}))})}),(0,o.createComponentVNode)(2,a.Section,{children:["Pressed ",l.produced_coins," coins this cycle."]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Mule=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=n(57);t.Mule=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.on,s=d.cell,p=d.cellPercent,m=d.load,f=d.mode,h=d.modeStatus,C=d.haspai,g=d.autoReturn,b=d.autoPickup,N=d.reportDelivery,v=d.destination,V=d.home,y=d.id,k=d.destinations,x=void 0===k?[]:k,_=d.locked&&!d.siliconUser;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,c.InterfaceLockNoticeBox),(0,o.createComponentVNode)(2,a.Section,{title:"Status",minHeight:"110px",buttons:!_&&(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return l("power")}}),children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:s?p/100:0,color:s?"good":"bad"}),(0,o.createComponentVNode)(2,a.Flex,{mt:1,children:[(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",color:h,children:f})})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Load",color:m?"good":"average",children:m||"None"})})})]})]}),!_&&(0,o.createComponentVNode)(2,a.Section,{title:"Controls",buttons:(0,o.createFragment)([!!m&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Unload",onClick:function(){return l("unload")}}),!!C&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject PAI",onClick:function(){return l("ejectpai")}})],0),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"ID",children:(0,o.createComponentVNode)(2,a.Input,{value:y,onChange:function(e,t){return l("setid",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Destination",children:[(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:v||"None",options:x,width:"150px",onSelected:function(e){return l("destination",{value:e})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"stop",content:"Stop",onClick:function(){return l("stop")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"play",content:"Go",onClick:function(){return l("go")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Home",children:[(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:V,options:x,width:"150px",onSelected:function(e){return l("destination",{value:e})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"home",content:"Go Home",onClick:function(){return l("home")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:g,content:"Auto-Return",onClick:function(){return l("autored")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:b,content:"Auto-Pickup",onClick:function(){return l("autopick")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:N,content:"Report Delivery",onClick:function(){return l("report")}})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteChamberControlContent=t.NaniteChamberControl=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NaniteChamberControl=function(e,t){return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.status_msg,d=c.locked,u=c.occupant_name,s=c.has_nanites,p=c.nanite_volume,m=c.regen_rate,f=c.safety_threshold,h=c.cloud_id,C=c.scan_level;if(l)return(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:l});var g=c.mob_programs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Chamber: "+u,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d?"lock":"lock-open",content:d?"Locked":"Unlocked",color:d?"bad":"default",onClick:function(){return i("toggle_lock")}}),children:s?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Status",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"exclamation-triangle",content:"Destroy Nanites",color:"bad",onClick:function(){return i("remove_nanites")}}),children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Nanite Volume",children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Growth Rate",children:m})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Safety Threshold",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:f,minValue:0,maxValue:500,width:"39px",onChange:function(e,t){return i("set_safety",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:h,minValue:0,maxValue:100,step:1,stepPixelSize:3,width:"39px",onChange:function(e,t){return i("set_cloud",{value:t})}})})]})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Programs",level:2,children:g.map((function(e){var t=e.extra_settings||[],n=e.rules||[];return(0,o.createComponentVNode)(2,a.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:e.desc}),C>=2&&(0,o.createComponentVNode)(2,a.Grid.Column,{size:.6,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation Status",children:(0,o.createComponentVNode)(2,a.Box,{color:e.activated?"good":"bad",children:e.activated?"Active":"Inactive"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Nanites Consumed",children:[e.use_rate,"/s"]})]})})]}),C>=2&&(0,o.createComponentVNode)(2,a.Grid,{children:[!!e.can_trigger&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Triggers",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:e.trigger_cost}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:e.trigger_cooldown}),!!e.timer_trigger_delay&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:[e.timer_trigger_delay," s"]}),!!e.timer_trigger&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Repeat Timer",children:[e.timer_trigger," s"]})]})})}),!(!e.timer_restart&&!e.timer_shutdown)&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[e.timer_restart&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart Timer",children:[e.timer_restart," s"]}),e.timer_shutdown&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown Timer",children:[e.timer_shutdown," s"]})]})})})]}),C>=3&&!!e.has_extra_settings&&(0,o.createComponentVNode)(2,a.Section,{title:"Extra Settings",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:t.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:e.value},e.name)}))})}),C>=4&&(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[!!e.activation_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:e.activation_code}),!!e.deactivation_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:e.deactivation_code}),!!e.kill_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:e.kill_code}),!!e.can_trigger&&!!e.trigger_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:e.trigger_code})]})})}),e.has_rules&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Rules",level:2,children:n.map((function(e){return(0,o.createFragment)([e.display,(0,o.createVNode)(1,"br")],0,e.display)}))})})]})]})},e.name)}))})],4):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"bad",textAlign:"center",fontSize:"30px",mb:1,children:"No Nanites Detected"}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,icon:"syringe",content:" Implant Nanites",color:"green",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return i("nanite_injection")}})],4)})};t.NaniteChamberControlContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteCloudControl=t.NaniteCloudBackupDetails=t.NaniteCloudBackupList=t.NaniteInfoBox=t.NaniteDiskBox=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=function(e,t){var n=(0,r.useBackend)(t).data,i=n.has_disk,c=n.has_program,d=n.disk;return i?c?(0,o.createComponentVNode)(2,l,{program:d}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Inserted disk has no program"}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No disk inserted"})};t.NaniteDiskBox=c;var l=function(e,t){var n=e.program,r=n.name,i=n.desc,c=n.activated,l=n.use_rate,d=n.can_trigger,u=n.trigger_cost,s=n.trigger_cooldown,p=n.activation_code,m=n.deactivation_code,f=n.kill_code,h=n.trigger_code,C=n.timer_restart,g=n.timer_shutdown,b=n.timer_trigger,N=n.timer_trigger_delay,v=n.extra_settings||[];return(0,o.createComponentVNode)(2,a.Section,{title:r,level:2,buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,color:c?"good":"bad",children:c?"Activated":"Deactivated"}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{mr:1,children:i}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:.5,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Use Rate",children:l}),!!d&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:u}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:s})],4)]})})]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:m}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:f}),!!d&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:h})]})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Delays",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart",children:[C," s"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown",children:[g," s"]}),!!d&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:[b," s"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:[N," s"]})],4)]})})})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Extra Settings",level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:v.map((function(e){var t={number:(0,o.createFragment)([e.value,e.unit],0),text:e.value,type:e.value,boolean:e.value?e.true_text:e.false_text};return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:t[e.type]},e.name)}))})})]})};t.NaniteInfoBox=l;var d=function(e,t){var n=(0,r.useBackend)(t),i=n.act;return(n.data.cloud_backups||[]).map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Backup #"+e.cloud_id,textAlign:"center",onClick:function(){return i("set_view",{view:e.cloud_id})}},e.cloud_id)}))};t.NaniteCloudBackupList=d;var u=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,d=c.current_view,u=c.disk,s=c.has_program,p=c.cloud_backup,m=u&&u.can_rule||!1;if(!p)return(0,o.createComponentVNode)(2,a.NoticeBox,{children:"ERROR: Backup not found"});var f=c.cloud_programs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Backup #"+d,level:2,buttons:!!s&&(0,o.createComponentVNode)(2,a.Button,{icon:"upload",content:"Upload From Disk",color:"good",onClick:function(){return i("upload_program")}}),children:f.map((function(e){var t=e.rules||[];return(0,o.createComponentVNode)(2,a.Collapsible,{title:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"minus-circle",color:"bad",onClick:function(){return i("remove_program",{program_id:e.id})}}),children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,l,{program:e}),(!!m||!!e.has_rules)&&(0,o.createComponentVNode)(2,a.Section,{mt:-2,title:"Rules",level:2,buttons:!!m&&(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Add Rule from Disk",color:"good",onClick:function(){return i("add_rule",{program_id:e.id})}}),children:e.has_rules?t.map((function(t){return(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus-circle",color:"bad",onClick:function(){return i("remove_rule",{program_id:e.id,rule_id:t.id})}})," "+t.display]},t.display)})):(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"No Active Rules"})})]})},e.name)}))})};t.NaniteCloudBackupDetails=u;t.NaniteCloudControl=function(e,t){var n=(0,r.useBackend)(t),l=n.act,s=n.data,p=s.has_disk,m=s.current_view,f=s.new_backup_id;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Program Disk",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!p,onClick:function(){return l("eject")}}),children:(0,o.createComponentVNode)(2,c)}),(0,o.createComponentVNode)(2,a.Section,{title:"Cloud Storage",buttons:m?(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"Return",onClick:function(){return l("set_view",{view:0})}}):(0,o.createFragment)(["New Backup: ",(0,o.createComponentVNode)(2,a.NumberInput,{value:f,minValue:1,maxValue:100,stepPixelSize:4,width:"39px",onChange:function(e,t){return l("update_new_backup_value",{value:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return l("create_backup")}})],0),children:s.current_view?(0,o.createComponentVNode)(2,u):(0,o.createComponentVNode)(2,d)})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteProgramHub=void 0;var o=n(0),r=n(14),a=n(1),i=n(3),c=n(2);t.NaniteProgramHub=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data,u=d.detail_view,s=d.disk,p=d.has_disk,m=d.has_program,f=d.programs,h=void 0===f?{}:f,C=(0,a.useSharedState)(t,"category"),g=C[0],b=C[1],N=h&&h[g]||[];return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Program Disk",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",onClick:function(){return l("eject")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"minus-circle",content:"Delete Program",onClick:function(){return l("clear")}})],4),children:p?m?(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Program Name",children:s.name}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:s.desc})]}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No Program Installed"}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Insert Disk"})}),(0,o.createComponentVNode)(2,i.Section,{title:"Programs",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:u?"info":"list",content:u?"Detailed":"Compact",onClick:function(){return l("toggle_details")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Sync Research",onClick:function(){return l("refresh")}})],4),children:null!==h?(0,o.createComponentVNode)(2,i.Flex,{children:[(0,o.createComponentVNode)(2,i.Flex.Item,{minWidth:"110px",children:(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e,t){var n=t.substring(0,t.length-8);return(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:t===g,onClick:function(){return b(t)},children:n},t)}))(h)})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:u?N.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"download",content:"Download",disabled:!p,onClick:function(){return l("download",{program_id:e.id})}}),children:e.desc},e.id)})):(0,o.createComponentVNode)(2,i.LabeledList,{children:N.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"download",content:"Download",disabled:!p,onClick:function(){return l("download",{program_id:e.id})}})},e.id)}))})})]}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No nanite programs are currently researched."})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteProgrammerContent=t.NaniteProgrammer=t.NaniteExtraBoolean=t.NaniteExtraType=t.NaniteExtraText=t.NaniteExtraNumber=t.NaniteExtraEntry=t.NaniteDelays=t.NaniteCodes=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c.activation_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return i("set_code",{target_code:"activation",code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c.deactivation_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return i("set_code",{target_code:"deactivation",code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c.kill_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return i("set_code",{target_code:"kill",code:t})}})}),!!c.can_trigger&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c.trigger_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return i("set_code",{target_code:"trigger",code:t})}})})]})})};t.NaniteCodes=c;var l=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Delays",level:3,ml:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c.timer_restart,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return i("set_restart_timer",{delay:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c.timer_shutdown,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return i("set_shutdown_timer",{delay:t})}})}),!!c.can_trigger&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Repeat Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c.timer_trigger,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return i("set_trigger_timer",{delay:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c.timer_trigger_delay,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return i("set_timer_trigger_delay",{delay:t})}})})],4)]})})};t.NaniteDelays=l;var d=function(e,t){var n=e.extra_setting,r=n.name,i=n.type,c={number:(0,o.createComponentVNode)(2,u,{extra_setting:n}),text:(0,o.createComponentVNode)(2,s,{extra_setting:n}),type:(0,o.createComponentVNode)(2,p,{extra_setting:n}),boolean:(0,o.createComponentVNode)(2,m,{extra_setting:n})};return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:r,children:c[i]})};t.NaniteExtraEntry=d;var u=function(e,t){var n=e.extra_setting,i=(0,r.useBackend)(t).act,c=n.name,l=n.value,d=n.min,u=n.max,s=n.unit;return(0,o.createComponentVNode)(2,a.NumberInput,{value:l,width:"64px",minValue:d,maxValue:u,unit:s,onChange:function(e,t){return i("set_extra_setting",{target_setting:c,value:t})}})};t.NaniteExtraNumber=u;var s=function(e,t){var n=e.extra_setting,i=(0,r.useBackend)(t).act,c=n.name,l=n.value;return(0,o.createComponentVNode)(2,a.Input,{value:l,width:"200px",onInput:function(e,t){return i("set_extra_setting",{target_setting:c,value:t})}})};t.NaniteExtraText=s;var p=function(e,t){var n=e.extra_setting,i=(0,r.useBackend)(t).act,c=n.name,l=n.value,d=n.types;return(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:l,width:"150px",options:d,onSelected:function(e){return i("set_extra_setting",{target_setting:c,value:e})}})};t.NaniteExtraType=p;var m=function(e,t){var n=e.extra_setting,i=(0,r.useBackend)(t).act,c=n.name,l=n.value,d=n.true_text,u=n.false_text;return(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:l?d:u,checked:l,onClick:function(){return i("set_extra_setting",{target_setting:c})}})};t.NaniteExtraBoolean=m;t.NaniteProgrammer=function(e,t){return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,f)})})};var f=function(e,t){var n=(0,r.useBackend)(t),i=n.act,u=n.data,s=u.has_disk,p=u.has_program,m=u.name,f=u.desc,h=u.use_rate,C=u.can_trigger,g=u.trigger_cost,b=u.trigger_cooldown,N=u.activated,v=u.has_extra_settings,V=u.extra_settings,y=void 0===V?{}:V;return s?p?(0,o.createComponentVNode)(2,a.Section,{title:m,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return i("eject")}}),children:[(0,o.createComponentVNode)(2,a.Section,{title:"Info",level:2,children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:f}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:.7,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Use Rate",children:h}),!!C&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:g}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:b})],4)]})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Settings",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:N?"power-off":"times",content:N?"Active":"Inactive",selected:N,color:"bad",bold:!0,onClick:function(){return i("toggle_active")}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,c)}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,l)})]}),!!v&&(0,o.createComponentVNode)(2,a.Section,{title:"Special",level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:y.map((function(e){return(0,o.createComponentVNode)(2,d,{extra_setting:e},e.name)}))})})]})]}):(0,o.createComponentVNode)(2,a.Section,{title:"Blank Disk",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return i("eject")}})}):(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Insert a nanite program disk"})};t.NaniteProgrammerContent=f},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteRemoteContent=t.NaniteRemote=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NaniteRemote=function(e,t){return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.code,d=c.locked,u=c.mode,s=c.program_name,p=c.relay_code,m=c.comms,f=c.message,h=c.saved_settings,C=void 0===h?[]:h;return d?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"This interface is locked."}):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Nanite Control",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lock",content:"Lock Interface",onClick:function(){return i("lock")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:[(0,o.createComponentVNode)(2,a.Input,{value:s,maxLength:14,width:"130px",onChange:function(e,t){return i("update_name",{name:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"save",content:"Save",onClick:function(){return i("save")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:m?"Comm Code":"Signal Code",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:l,minValue:0,maxValue:9999,width:"47px",step:1,stepPixelSize:2,onChange:function(e,t){return i("set_code",{code:t})}})}),!!m&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Message",children:(0,o.createComponentVNode)(2,a.Input,{value:f,width:"270px",onChange:function(e,t){return i("set_message",{value:t})}})}),"Relay"===u&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Relay Code",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:p,minValue:0,maxValue:9999,width:"47px",step:1,stepPixelSize:2,onChange:function(e,t){return i("set_relay_code",{code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Signal Mode",children:["Off","Local","Targeted","Area","Relay"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,selected:u===e,onClick:function(){return i("select_mode",{mode:e})}},e)}))})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Saved Settings",children:C.length>0?(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{width:"35%",children:"Name"}),(0,o.createComponentVNode)(2,a.Table.Cell,{width:"20%",children:"Mode"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:"Code"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:"Relay"})]}),C.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,color:"label",children:[e.name,":"]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.mode}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.code}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:"Relay"===e.mode&&e.relay_code}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"right",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"upload",color:"good",onClick:function(){return i("load",{save_id:e.id})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"minus",color:"bad",onClick:function(){return i("remove_save",{save_id:e.id})}})]})]},e.id)}))]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No settings currently saved"})})],4)};t.NaniteRemoteContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.NotificationPreferences=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NotificationPreferences=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=(n.data.ignore||[]).sort((function(e,t){var n=e.desc.toLowerCase(),o=t.desc.toLowerCase();return no?1:0}));return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{title:"Ghost Role Notifications",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:e.enabled?"times":"check",content:e.desc,color:e.enabled?"bad":"good",onClick:function(){return c("toggle_ignore",{key:e.key})}},e.key)}))})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtnetRelay=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NtnetRelay=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.enabled,u=l.dos_capacity,s=l.dos_overload,p=l.dos_crashed;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Network Buffer",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",selected:d,content:d?"ENABLED":"DISABLED",onClick:function(){return c("toggle")}}),children:p?(0,o.createComponentVNode)(2,a.Box,{fontFamily:"monospace",children:[(0,o.createComponentVNode)(2,a.Box,{fontSize:"20px",children:"NETWORK BUFFER OVERFLOW"}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",children:"OVERLOAD RECOVERY MODE"}),(0,o.createComponentVNode)(2,a.Box,{children:"This system is suffering temporary outage due to overflow of traffic buffers. Until buffered traffic is processed, all further requests will be dropped. Frequent occurences of this error may indicate insufficient hardware capacity of your network. Please contact your network planning department for instructions on how to resolve this issue."}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"20px",color:"bad",children:"ADMINISTRATOR OVERRIDE"}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",color:"bad",children:"CAUTION - DATA LOSS MAY OCCUR"}),(0,o.createComponentVNode)(2,a.Button,{icon:"signal",content:"PURGE BUFFER",mt:1,color:"bad",onClick:function(){return c("restart")}})]}):(0,o.createComponentVNode)(2,a.ProgressBar,{value:s,minValue:0,maxValue:u,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:s})," GQ"," / ",u," GQ"]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosAiRestorer=void 0;var o=n(0),r=n(2),a=n(174);t.NtosAiRestorer=function(){return(0,o.createComponentVNode)(2,r.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,r.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.AiRestorerContent)})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosArcade=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NtosArcade=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.NtosWindow,{children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Outbomb Cuban Pete Ultra",textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:2,children:[(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Player Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.PlayerHitpoints,minValue:0,maxValue:30,ranges:{olive:[31,Infinity],good:[20,31],average:[10,20],bad:[-Infinity,10]},children:[l.PlayerHitpoints,"HP"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Player Magic",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.PlayerMP,minValue:0,maxValue:10,ranges:{purple:[11,Infinity],violet:[3,11],bad:[-Infinity,3]},children:[l.PlayerMP,"MP"]})})]}),(0,o.createComponentVNode)(2,a.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,a.Section,{backgroundColor:1===l.PauseState?"#1b3622":"#471915",children:l.Status})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.Hitpoints,minValue:0,maxValue:45,ranges:{good:[30,Infinity],average:[5,30],bad:[-Infinity,5]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l.Hitpoints}),"HP"]}),(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.Section,{inline:!0,width:"156px",textAlign:"center",children:(0,o.createVNode)(1,"img",null,null,1,{src:l.BossID})})]})]}),(0,o.createComponentVNode)(2,a.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,a.Button,{icon:"fist-raised",tooltip:"Go in for the kill!",tooltipPosition:"top",disabled:0===l.GameActive||1===l.PauseState,onClick:function(){return c("Attack")},content:"Attack!"}),(0,o.createComponentVNode)(2,a.Button,{icon:"band-aid",tooltip:"Heal yourself!",tooltipPosition:"top",disabled:0===l.GameActive||1===l.PauseState,onClick:function(){return c("Heal")},content:"Heal!"}),(0,o.createComponentVNode)(2,a.Button,{icon:"magic",tooltip:"Recharge your magic!",tooltipPosition:"top",disabled:0===l.GameActive||1===l.PauseState,onClick:function(){return c("Recharge_Power")},content:"Recharge!"})]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"sync-alt",tooltip:"One more game couldn't hurt.",tooltipPosition:"top",disabled:1===l.GameActive,onClick:function(){return c("Start_Game")},content:"Begin Game"}),(0,o.createComponentVNode)(2,a.Button,{icon:"ticket-alt",tooltip:"Claim at your local Arcade Computer for Prizes!",tooltipPosition:"top",disabled:1===l.GameActive,onClick:function(){return c("Dispense_Tickets")},content:"Claim Tickets"})]}),(0,o.createComponentVNode)(2,a.Box,{color:l.TicketCount>=1?"good":"normal",children:["Earned Tickets: ",l.TicketCount]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosAtmos=void 0;var o=n(0),r=n(14),a=n(31),i=n(15),c=n(1),l=n(3),d=n(39),u=n(2);t.NtosAtmos=function(e,t){var n=(0,c.useBackend)(t),s=(n.act,n.data),p=s.AirTemp,m=s.AirPressure,f=(0,a.flow)([(0,r.filter)((function(e){return e.percentage>=.01})),(0,r.sortBy)((function(e){return-e.percentage}))])(s.AirData||[]),h=Math.max.apply(Math,[1].concat(f.map((function(e){return e.percentage}))));return(0,o.createComponentVNode)(2,u.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,u.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,l.Section,{children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Temperature",children:[p,"\xb0C"]}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Pressure",children:[m," kPa"]})]})}),(0,o.createComponentVNode)(2,l.Section,{children:(0,o.createComponentVNode)(2,l.LabeledList,{children:f.map((function(e){return(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:(0,d.getGasLabel)(e.name),children:(0,o.createComponentVNode)(2,l.ProgressBar,{color:(0,d.getGasColor)(e.name),value:e.percentage,minValue:0,maxValue:h,children:(0,i.toFixed)(e.percentage,2)+"%"})},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosBountyConsole=void 0;var o=n(0),r=(n(14),n(1)),a=n(3),i=n(45),c=n(2);t.NtosBountyConsole=function(e,t){var n=(0,r.useBackend)(t),i=n.act,d=n.data,u=(0,r.useSharedState)(t,"tab","catalog"),s=(u[0],u[1],d.bountydata),p=void 0===s?[]:s;d.stored_cash;return(0,o.createComponentVNode)(2,c.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,c.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,l),buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"print",content:"Print Bounty List",onClick:function(){return i("Print")}}),children:(0,o.createComponentVNode)(2,a.Table,{border:!0,children:[(0,o.createComponentVNode)(2,a.Table.Row,{bold:!0,italic:!0,color:"label",fontSize:1.25,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{p:1,textAlign:"center",children:"Bounty Object"}),(0,o.createComponentVNode)(2,a.Table.Cell,{p:1,textAlign:"center",children:"Description"}),(0,o.createComponentVNode)(2,a.Table.Cell,{p:1,textAlign:"center",children:"Progress"}),(0,o.createComponentVNode)(2,a.Table.Cell,{p:1,textAlign:"center",children:"Value"}),(0,o.createComponentVNode)(2,a.Table.Cell,{p:1,textAlign:"center",children:"Claim"})]}),p.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{backgroundColor:1===e.priority?"rgba(252, 152, 3, 0.25)":"",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,p:1,children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{italic:!0,textAlign:"center",p:1,children:e.description}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,p:1,textAlign:"center",children:[1===e.priority?(0,o.createComponentVNode)(2,a.Box,{children:"High Priority"}):"",e.completion_string]}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,p:1,textAlign:"center",children:e.reward_string}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,p:1,children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,textAlign:"center",icon:1===e.claimed?"check":"",content:1===e.claimed?"Claimed":"Claim",disabled:1===e.claimed,color:1===e.can_claim?"green":"red",onClick:function(){return i("ClaimBounty",{bounty:e.bounty_ref})}})})]},e.name)}))]})})})})};var l=function(e,t){var n=(0,r.useBackend)(t),c=(n.act,n.data.stored_cash);return(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c,format:function(e){return(0,i.formatMoney)(e)}})," credits"]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosCardContent=t.NtosCard=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=n(175);t.NtosCard=function(e,t){return(0,o.createComponentVNode)(2,i.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,l)})})};var l=function(e,t){var n=(0,r.useBackend)(t),i=n.act,l=n.data,d=(0,r.useLocalState)(t,"tab",1),u=d[0],s=d[1],p=l.authenticated,m=l.regions,f=void 0===m?[]:m,h=l.access_on_card,C=void 0===h?[]:h,g=l.jobs,b=void 0===g?{}:g,N=l.id_rank,v=l.id_owner,V=l.has_id,y=l.have_printer,k=l.have_id_slot,x=l.id_name,_=(0,r.useLocalState)(t,"department",Object.keys(b)[0]),w=_[0],B=_[1];if(!k)return(0,o.createComponentVNode)(2,a.NoticeBox,{children:"This program requires an ID slot in order to function"});var L=b[w]||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:V&&p?(0,o.createComponentVNode)(2,a.Input,{value:v,width:"250px",onInput:function(e,t){return i("PRG_edit",{name:t})}}):v||"No Card Inserted",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"print",content:"Print",disabled:!y||!V,onClick:function(){return i("PRG_print")}}),(0,o.createComponentVNode)(2,a.Button,{icon:p?"sign-out-alt":"sign-in-alt",content:p?"Log Out":"Log In",color:p?"bad":"good",onClick:function(){i(p?"PRG_logout":"PRG_authenticate")}})],4),children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"eject",content:x,onClick:function(){return i("PRG_eject")}})}),!!V&&!!p&&(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:1===u,onClick:function(){return s(1)},children:"Access"}),(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:2===u,onClick:function(){return s(2)},children:"Jobs"})]}),1===u&&(0,o.createComponentVNode)(2,c.AccessList,{accesses:f,selectedList:C,accessMod:function(e){return i("PRG_access",{access_target:e})},grantAll:function(){return i("PRG_grantall")},denyAll:function(){return i("PRG_denyall")},grantDep:function(e){return i("PRG_grantregion",{region:e})},denyDep:function(e){return i("PRG_denyregion",{region:e})}}),2===u&&(0,o.createComponentVNode)(2,a.Section,{title:N,buttons:(0,o.createComponentVNode)(2,a.Button.Confirm,{icon:"exclamation-triangle",content:"Terminate",color:"bad",onClick:function(){return i("PRG_terminate")}}),children:[(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Custom...",onCommit:function(e,t){return i("PRG_assign",{assign_target:"Custom",custom_name:t})}}),(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:Object.keys(b).map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:e===w,onClick:function(){return B(e)},children:e},e)}))})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,children:L.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.display_name,onClick:function(){return i("PRG_assign",{assign_target:e.job})}},e.job)}))})]})]})]})],0)};t.NtosCardContent=l},function(e,t,n){"use strict";t.__esModule=!0,t.NtosConfiguration=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NtosConfiguration=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.PC_device_theme,u=l.power_usage,s=l.battery_exists,p=l.battery,m=void 0===p?{}:p,f=l.disk_size,h=l.disk_used,C=l.hardware,g=void 0===C?[]:C;return(0,o.createComponentVNode)(2,i.NtosWindow,{resizable:!0,theme:d,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Power Supply",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:["Power Draw: ",u,"W"]}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Battery Status",color:!s&&"average",children:s?(0,o.createComponentVNode)(2,a.ProgressBar,{value:m.charge,minValue:0,maxValue:m.max,ranges:{good:[m.max/2,Infinity],average:[m.max/4,m.max/2],bad:[-Infinity,m.max/4]},children:[m.charge," / ",m.max]}):"Not Available"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"File System",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:h,minValue:0,maxValue:f,color:"good",children:[h," GQ / ",f," GQ"]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Hardware Components",children:g.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,buttons:(0,o.createFragment)([!e.critical&&(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:"Enabled",checked:e.enabled,mr:1,onClick:function(){return c("PC_toggle_component",{name:e.name})}}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:["Power Usage: ",e.powerusage,"W"]})],0),children:e.desc},e.name)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosCrewManifest=void 0;var o=n(0),r=n(1),a=n(3),i=n(14),c=n(2);t.NtosCrewManifest=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.have_printer,s=d.manifest,p=void 0===s?{}:s;return(0,o.createComponentVNode)(2,c.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,c.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{title:"Crew Manifest",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"print",content:"Print",disabled:!u,onClick:function(){return l("PRG_print")}}),children:(0,i.map)((function(e,t){return(0,o.createComponentVNode)(2,a.Section,{level:2,title:t,children:(0,o.createComponentVNode)(2,a.Table,{children:e.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:["(",e.rank,")"]})]},e.name)}))})},t)}))(p)})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosCyborgRemoteMonitorSyndicate=void 0;var o=n(0),r=(n(1),n(3),n(2)),a=n(179);t.NtosCyborgRemoteMonitorSyndicate=function(e,t){return(0,o.createComponentVNode)(2,r.NtosWindow,{theme:"syndicate",children:(0,o.createComponentVNode)(2,r.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.NtosCyborgRemoteMonitorContent)})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosFileManager=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NtosFileManager=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.PC_device_theme,s=d.usbconnected,p=d.files,m=void 0===p?[]:p,f=d.usbfiles,h=void 0===f?[]:f;return(0,o.createComponentVNode)(2,i.NtosWindow,{resizable:!0,theme:u,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,c,{files:m,usbconnected:s,onUpload:function(e){return l("PRG_copytousb",{name:e})},onDelete:function(e){return l("PRG_deletefile",{name:e})},onRename:function(e,t){return l("PRG_rename",{name:e,new_name:t})},onDuplicate:function(e){return l("PRG_clone",{file:e})}})}),s&&(0,o.createComponentVNode)(2,a.Section,{title:"Data Disk",children:(0,o.createComponentVNode)(2,c,{usbmode:!0,files:h,usbconnected:s,onUpload:function(e){return l("PRG_copyfromusb",{name:e})},onDelete:function(e){return l("PRG_deletefile",{name:e})},onRename:function(e,t){return l("PRG_rename",{name:e,new_name:t})},onDuplicate:function(e){return l("PRG_clone",{file:e})}})})]})})};var c=function(e){var t=e.files,n=void 0===t?[]:t,r=e.usbconnected,i=e.usbmode,c=e.onUpload,l=e.onDelete,d=e.onRename;return(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:"File"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:"Type"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:"Size"})]}),n.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.undeletable?e.name:(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:e.name,currentValue:e.name,tooltip:"Rename",onCommit:function(t,n){return d(e.name,n)}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.type}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.size}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:!e.undeletable&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Confirm,{icon:"trash",confirmIcon:"times",confirmContent:"",tooltip:"Delete",onClick:function(){return l(e.name)}}),!!r&&(i?(0,o.createComponentVNode)(2,a.Button,{icon:"download",tooltip:"Download",onClick:function(){return c(e.name)}}):(0,o.createComponentVNode)(2,a.Button,{icon:"upload",tooltip:"Upload",onClick:function(){return c(e.name)}}))],0)})]},e.name)}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosJobManagerContent=t.NtosJobManager=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NtosJobManager=function(e,t){return(0,o.createComponentVNode)(2,i.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.authed,d=c.cooldown,u=c.slots,s=void 0===u?[]:u,p=c.prioritized,m=void 0===p?[]:p;return l?(0,o.createComponentVNode)(2,a.Section,{children:[d>0&&(0,o.createComponentVNode)(2,a.Dimmer,{children:(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"20px",children:["On Cooldown: ",d,"s"]})}),(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:"Prioritized"}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:"Slots"})]}),s.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,content:e.title,disabled:e.total<=0,checked:e.total>0&&m.includes(e.title),onClick:function(){return i("PRG_priority",{target:e.title})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:[e.current," / ",e.total]}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,a.Button,{content:"Open",disabled:!e.status_open,onClick:function(){return i("PRG_open_job",{target:e.title})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Close",disabled:!e.status_close,onClick:function(){return i("PRG_close_job",{target:e.title})}})]})]},e.title)}))]})]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Current ID does not have access permissions to change job slots."})};t.NtosJobManagerContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.NtosMain=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c={compconfig:"cog",ntndownloader:"download",filemanager:"folder",smmonitor:"radiation",alarmmonitor:"bell",cardmod:"id-card",arcade:"gamepad",ntnrc_client:"comment-alt",nttransfer:"exchange-alt",powermonitor:"plug",job_manage:"address-book",crewmani:"clipboard-list",robocontrol:"robot",atmosscan:"thermometer-half",shipping:"tags"};t.NtosMain=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.device_theme,s=d.programs,p=void 0===s?[]:s,m=d.has_light,f=d.light_on,h=d.comp_light_color;return(0,o.createComponentVNode)(2,i.NtosWindow,{resizable:!0,theme:u,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:[!!m&&(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Button,{width:"144px",icon:"lightbulb",selected:f,onClick:function(){return l("PC_toggle_light")},children:["Flashlight: ",f?"ON":"OFF"]}),(0,o.createComponentVNode)(2,a.Button,{ml:1,onClick:function(){return l("PC_light_color")},children:["Color:",(0,o.createComponentVNode)(2,a.ColorBox,{ml:1,color:h})]})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Programs",children:(0,o.createComponentVNode)(2,a.Table,{children:p.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,lineHeight:"24px",color:"transparent",icon:c[e.name]||"window-maximize-o",content:e.desc,onClick:function(){return l("PC_runprogram",{name:e.name})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,width:"18px",children:!!e.running&&(0,o.createComponentVNode)(2,a.Button,{lineHeight:"24px",color:"transparent",icon:"times",tooltip:"Close program",tooltipPosition:"left",onClick:function(){return l("PC_killprogram",{name:e.name})}})})]},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetChat=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NtosNetChat=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.can_admin,u=l.adminmode,s=l.authed,p=l.username,m=l.active_channel,f=l.is_operator,h=l.all_channels,C=void 0===h?[]:h,g=l.clients,b=void 0===g?[]:g,N=l.messages,v=void 0===N?[]:N,V=null!==m,y=s||u;return(0,o.createComponentVNode)(2,i.NtosWindow,{children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{children:(0,o.createComponentVNode)(2,a.Section,{height:"600px",children:(0,o.createComponentVNode)(2,a.Table,{height:"580px",children:(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",style:{width:"200px"},children:[(0,o.createComponentVNode)(2,a.Box,{height:"537px",overflowY:"scroll",children:[(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"New Channel...",onCommit:function(e,t){return c("PRG_newchannel",{new_channel_name:t})}}),C.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.chan,selected:e.id===m,color:"transparent",onClick:function(){return c("PRG_joinchannel",{id:e.id})}},e.chan)}))]}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,mt:1,content:p+"...",currentValue:p,onCommit:function(e,t){return c("PRG_changename",{new_name:t})}}),!!d&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"ADMIN MODE: "+(u?"ON":"OFF"),color:u?"bad":"good",onClick:function(){return c("PRG_toggleadmin")}})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:[(0,o.createComponentVNode)(2,a.Box,{height:"560px",overflowY:"scroll",children:V&&(y?v.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e.msg},e.msg)})):(0,o.createComponentVNode)(2,a.Box,{textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Icon,{name:"exclamation-triangle",mt:4,fontSize:"40px"}),(0,o.createComponentVNode)(2,a.Box,{mt:1,bold:!0,fontSize:"18px",children:"THIS CHANNEL IS PASSWORD PROTECTED"}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:"INPUT PASSWORD TO ACCESS"})]}))}),(0,o.createComponentVNode)(2,a.Input,{fluid:!0,selfClear:!0,mt:1,onEnter:function(e,t){return c("PRG_speak",{message:t})}})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",style:{width:"150px"},children:[(0,o.createComponentVNode)(2,a.Box,{height:"477px",overflowY:"scroll",children:b.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e.name},e.name)}))}),V&&y&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Save log...",defaultValue:"new_log",onCommit:function(e,t){return c("PRG_savelog",{log_name:t})}}),(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,content:"Leave Channel",onClick:function(){return c("PRG_leavechannel")}})],4),!!f&&s&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,content:"Delete Channel",onClick:function(){return c("PRG_deletechannel")}}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Rename Channel...",onCommit:function(e,t){return c("PRG_renamechannel",{new_name:t})}}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Set Password...",onCommit:function(e,t){return c("PRG_setpassword",{new_password:t})}})],4)]})]})})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetDosContent=t.NtosNetDos=void 0;var o=n(0),r=n(3),a=n(1),i=(n(44),n(2));t.NtosNetDos=function(e,t){return(0,o.createComponentVNode)(2,i.NtosWindow,{theme:"syndicate",children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,a.useBackend)(t),i=n.act,c=n.data,l=c.relays,d=void 0===l?[]:l,u=c.focus,s=c.target,p=c.speed,m=c.overload,f=c.capacity,h=c.error;if(h)return(0,o.createFragment)([(0,o.createComponentVNode)(2,r.NoticeBox,{children:h}),(0,o.createComponentVNode)(2,r.Button,{fluid:!0,content:"Reset",textAlign:"center",onClick:function(){return i("PRG_reset")}})],4);var C=function(e){for(var t="",n=m/f;t.lengthn?t+="0":t+="1";return t};return s?(0,o.createComponentVNode)(2,r.Section,{fontFamily:"monospace",textAlign:"center",children:[(0,o.createComponentVNode)(2,r.Box,{children:["CURRENT SPEED: ",p," GQ/s"]}),(0,o.createComponentVNode)(2,r.Box,{children:C(45)}),(0,o.createComponentVNode)(2,r.Box,{children:C(45)}),(0,o.createComponentVNode)(2,r.Box,{children:C(45)}),(0,o.createComponentVNode)(2,r.Box,{children:C(45)}),(0,o.createComponentVNode)(2,r.Box,{children:C(45)})]}):(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.LabeledList,{children:(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Target",children:d.map((function(e){return(0,o.createComponentVNode)(2,r.Button,{content:e.id,selected:u===e.id,onClick:function(){return i("PRG_target_relay",{targid:e.id})}},e.id)}))})}),(0,o.createComponentVNode)(2,r.Button,{fluid:!0,bold:!0,content:"EXECUTE",color:"bad",textAlign:"center",disabled:!u,mt:1,onClick:function(){return i("PRG_execute")}})]})};t.NtosNetDosContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetDownloader=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NtosNetDownloader=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.PC_device_theme,s=d.disk_size,p=d.disk_used,m=d.downloadable_programs,f=void 0===m?[]:m,h=d.error,C=d.hacked_programs,g=void 0===C?[]:C,b=d.hackedavailable;return(0,o.createComponentVNode)(2,i.NtosWindow,{resizable:!0,theme:u,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:[!!h&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,children:h}),(0,o.createComponentVNode)(2,a.Button,{content:"Reset",onClick:function(){return l("PRG_reseterror")}})]}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Disk usage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:p,minValue:0,maxValue:s,children:p+" GQ / "+s+" GQ"})})})}),(0,o.createComponentVNode)(2,a.Section,{children:f.map((function(e){return(0,o.createComponentVNode)(2,c,{program:e},e.filename)}))}),!!b&&(0,o.createComponentVNode)(2,a.Section,{title:"UNKNOWN Software Repository",children:[(0,o.createComponentVNode)(2,a.NoticeBox,{mb:1,children:"Please note that Nanotrasen does not recommend download of software from non-official servers."}),g.map((function(e){return(0,o.createComponentVNode)(2,c,{program:e},e.filename)}))]})]})})};var c=function(e,t){var n=e.program,i=(0,r.useBackend)(t),c=i.act,l=i.data,d=l.disk_size,u=l.disk_used,s=l.downloadcompletion,p=l.downloading,m=l.downloadname,f=l.downloadsize,h=d-u;return(0,o.createComponentVNode)(2,a.Box,{mb:3,children:[(0,o.createComponentVNode)(2,a.Flex,{align:"baseline",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{bold:!0,grow:1,children:n.filedesc}),(0,o.createComponentVNode)(2,a.Flex.Item,{color:"label",nowrap:!0,children:[n.size," GQ"]}),(0,o.createComponentVNode)(2,a.Flex.Item,{ml:2,width:"94px",textAlign:"center",children:n.filename===m&&(0,o.createComponentVNode)(2,a.ProgressBar,{color:"green",minValue:0,maxValue:f,value:s})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"download",content:"Download",disabled:p||n.size>h,onClick:function(){return c("PRG_downloadfile",{filename:n.filename})}})})]}),"Compatible"!==n.compatibility&&(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{mx:1,color:"red",name:"times"}),"Incompatible!"]}),n.size>h&&(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{mx:1,color:"red",name:"times"}),"Not enough disk space!"]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,color:"label",fontSize:"12px",children:n.fileinfo})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetMonitor=void 0;var o=n(0),r=n(3),a=n(1),i=n(2);t.NtosNetMonitor=function(e,t){var n=(0,a.useBackend)(t),c=n.act,l=n.data,d=l.ntnetrelays,u=l.ntnetstatus,s=l.config_softwaredownload,p=l.config_peertopeer,m=l.config_communication,f=l.config_systemcontrol,h=l.idsalarm,C=l.idsstatus,g=l.ntnetmaxlogs,b=l.maxlogs,N=l.minlogs,v=l.ntnetlogs,V=void 0===v?[]:v;return(0,o.createComponentVNode)(2,i.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,r.NoticeBox,{children:"WARNING: Disabling wireless transmitters when using a wireless device may prevent you from reenabling them!"}),(0,o.createComponentVNode)(2,r.Section,{title:"Wireless Connectivity",buttons:(0,o.createComponentVNode)(2,r.Button.Confirm,{icon:u?"power-off":"times",content:u?"ENABLED":"DISABLED",selected:u,onClick:function(){return c("toggleWireless")}}),children:d?(0,o.createComponentVNode)(2,r.LabeledList,{children:(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Active NTNet Relays",children:d})}):"No Relays Connected"}),(0,o.createComponentVNode)(2,r.Section,{title:"Firewall Configuration",children:(0,o.createComponentVNode)(2,r.LabeledList,{children:[(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Software Downloads",buttons:(0,o.createComponentVNode)(2,r.Button,{icon:s?"power-off":"times",content:s?"ENABLED":"DISABLED",selected:s,onClick:function(){return c("toggle_function",{id:"1"})}})}),(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Peer to Peer Traffic",buttons:(0,o.createComponentVNode)(2,r.Button,{icon:p?"power-off":"times",content:p?"ENABLED":"DISABLED",selected:p,onClick:function(){return c("toggle_function",{id:"2"})}})}),(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Communication Systems",buttons:(0,o.createComponentVNode)(2,r.Button,{icon:m?"power-off":"times",content:m?"ENABLED":"DISABLED",selected:m,onClick:function(){return c("toggle_function",{id:"3"})}})}),(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Remote System Control",buttons:(0,o.createComponentVNode)(2,r.Button,{icon:f?"power-off":"times",content:f?"ENABLED":"DISABLED",selected:f,onClick:function(){return c("toggle_function",{id:"4"})}})})]})}),(0,o.createComponentVNode)(2,r.Section,{title:"Security Systems",children:[!!h&&(0,o.createFragment)([(0,o.createComponentVNode)(2,r.NoticeBox,{children:"NETWORK INCURSION DETECTED"}),(0,o.createComponentVNode)(2,r.Box,{italics:!0,children:"Abnormal activity has been detected in the network. Check system logs for more information"})],4),(0,o.createComponentVNode)(2,r.LabeledList,{children:[(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"IDS Status",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,r.Button,{icon:C?"power-off":"times",content:C?"ENABLED":"DISABLED",selected:C,onClick:function(){return c("toggleIDS")}}),(0,o.createComponentVNode)(2,r.Button,{icon:"sync",content:"Reset",color:"bad",onClick:function(){return c("resetIDS")}})],4)}),(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Max Log Count",buttons:(0,o.createComponentVNode)(2,r.NumberInput,{value:g,minValue:N,maxValue:b,width:"39px",onChange:function(e,t){return c("updatemaxlogs",{new_number:t})}})})]}),(0,o.createComponentVNode)(2,r.Section,{title:"System Log",level:2,buttons:(0,o.createComponentVNode)(2,r.Button.Confirm,{icon:"trash",content:"Clear Logs",onClick:function(){return c("purgelogs")}}),children:V.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{className:"candystripe",children:e.entry},e.entry)}))})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosPowerMonitor=void 0;var o=n(0),r=n(2),a=n(126);t.NtosPowerMonitor=function(){return(0,o.createComponentVNode)(2,r.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,r.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.PowerMonitorContent)})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosRadarSyndicate=void 0;var o=n(0),r=(n(1),n(6),n(3),n(2)),a=n(180);t.NtosRadarSyndicate=function(e,t){return(0,o.createComponentVNode)(2,r.NtosWindow,{theme:"syndicate",children:(0,o.createComponentVNode)(2,a.NtosRadarContent)})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosRequestKiosk=void 0;var o=n(0),r=n(181),a=n(2);t.NtosRequestKiosk=function(e,t){return(0,o.createComponentVNode)(2,a.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,r.RequestKioskContent)})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosRevelation=void 0;var o=n(0),r=n(3),a=n(1),i=n(2);t.NtosRevelation=function(e,t){var n=(0,a.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.NtosWindow,{theme:"syndicate",children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{children:(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Button.Input,{fluid:!0,content:"Obfuscate Name...",onCommit:function(e,t){return c("PRG_obfuscate",{new_name:t})},mb:1}),(0,o.createComponentVNode)(2,r.LabeledList,{children:(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Payload Status",buttons:(0,o.createComponentVNode)(2,r.Button,{content:l.armed?"ARMED":"DISARMED",color:l.armed?"bad":"average",onClick:function(){return c("PRG_arm")}})})}),(0,o.createComponentVNode)(2,r.Button,{fluid:!0,bold:!0,content:"ACTIVATE",textAlign:"center",color:"bad",disabled:!l.armed})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosRoboControl=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NtosRoboControl=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.bots,s=d.id_owner,p=d.has_id;return(0,o.createComponentVNode)(2,i.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Robot Control Console",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Id Card",children:[s,!!p&&(0,o.createComponentVNode)(2,a.Button,{ml:2,icon:"eject",content:"Eject",onClick:function(){return l("ejectcard")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Bots in range",children:d.botcount})]})}),null==u?void 0:u.map((function(e){return(0,o.createComponentVNode)(2,c,{robot:e},e.bot_ref)}))]})})};var c=function(e,t){var n=e.robot,i=(0,r.useBackend)(t),c=i.act,l=i.data,d=l.mules||[],u=!!n.mule_check&&function(e,t){return null==e?void 0:e.find((function(e){return e.mule_ref===t}))}(d,n.bot_ref),s=1===n.mule_check?"rgba(110, 75, 14, 1)":"rgba(74, 59, 140, 1)";return(0,o.createComponentVNode)(2,a.Section,{title:n.name,style:{border:"4px solid "+s},buttons:u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"play",tooltip:"Go to Destination.",onClick:function(){return c("go",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"pause",tooltip:"Stop Moving.",onClick:function(){return c("stop",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"home",tooltip:"Travel Home.",tooltipPosition:"bottom-left",onClick:function(){return c("home",{robot:u.mule_ref})}})],4),children:(0,o.createComponentVNode)(2,a.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Model",children:n.model}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Location",children:n.locat}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:n.mode}),u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Loaded Cargo",children:l.load||"N/A"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Home",children:u.home}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Destination",children:u.dest||"N/A"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:u.power,minValue:0,maxValue:100,ranges:{good:[60,Infinity],average:[20,60],bad:[-Infinity,20]}})})],4)]})}),(0,o.createComponentVNode)(2,a.Flex.Item,{width:"150px",children:[u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Set Destination",onClick:function(){return c("destination",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Set ID",onClick:function(){return c("setid",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Set Home",onClick:function(){return c("sethome",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Unload Cargo",onClick:function(){return c("unload",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,content:"Auto Return",checked:u.autoReturn,onClick:function(){return c("autoret",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,content:"Auto Pickup",checked:u.autoPickup,onClick:function(){return c("autopick",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,content:"Delivery Report",checked:u.reportDelivery,onClick:function(){return c("report",{robot:u.mule_ref})}})],4),!u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Stop Patrol",onClick:function(){return c("patroloff",{robot:n.bot_ref})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Start Patrol",onClick:function(){return c("patrolon",{robot:n.bot_ref})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Summon",onClick:function(){return c("summon",{robot:n.bot_ref})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Eject PAi",onClick:function(){return c("ejectpai",{robot:n.bot_ref})}})],4)]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosShipping=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.NtosShipping=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"NTOS Shipping Hub.",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject Id",onClick:function(){return c("ejectid")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current User",children:l.current_user||"N/A"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Inserted Card",children:l.card_owner||"N/A"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Available Paper",children:l.has_printer?l.paperamt:"N/A"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Profit on Sale",children:[l.barcode_split,"%"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Shipping Options",children:[(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.Button,{icon:"id-card",tooltip:"The currently ID card will become the current user.",tooltipPosition:"right",disabled:!l.has_id_slot,onClick:function(){return c("selectid")},content:"Set Current ID"})}),(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.Button,{icon:"print",tooltip:"Print a barcode to use on a wrapped package.",tooltipPosition:"right",disabled:!l.has_printer||!l.current_user,onClick:function(){return c("print")},content:"Print Barcode"})}),(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.Button,{icon:"tags",tooltip:"Set how much profit you'd like on your package.",tooltipPosition:"right",onClick:function(){return c("setsplit")},content:"Set Profit Margin"})}),(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.Button,{icon:"sync-alt",content:"Reset ID",onClick:function(){return c("resetid")}})})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosStationAlertConsole=void 0;var o=n(0),r=n(2),a=n(182);t.NtosStationAlertConsole=function(){return(0,o.createComponentVNode)(2,r.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,r.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.StationAlertConsoleContent)})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosSupermatterMonitorContent=t.NtosSupermatterMonitor=void 0;var o=n(0),r=n(14),a=n(31),i=n(15),c=n(1),l=n(3),d=n(39),u=n(2),s=function(e){return Math.log2(16+Math.max(0,e))-4};t.NtosSupermatterMonitor=function(e,t){return(0,o.createComponentVNode)(2,u.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,u.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,p)})})};var p=function(e,t){var n=(0,c.useBackend)(t),u=n.act,p=n.data,f=p.active,h=p.SM_integrity,C=p.SM_power,g=p.SM_ambienttemp,b=p.SM_ambientpressure;if(!f)return(0,o.createComponentVNode)(2,m);var N=(0,a.flow)([function(e){return e.filter((function(e){return e.amount>=.01}))},(0,r.sortBy)((function(e){return-e.amount}))])(p.gases||[]),v=Math.max.apply(Math,[1].concat(N.map((function(e){return e.amount}))));return(0,o.createComponentVNode)(2,l.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,l.Flex.Item,{width:"270px",children:(0,o.createComponentVNode)(2,l.Section,{title:"Metrics",children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Integrity",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:h/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Relative EER",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:C,minValue:0,maxValue:5e3,ranges:{good:[-Infinity,5e3],average:[5e3,7e3],bad:[7e3,Infinity]},children:(0,i.toFixed)(C)+" MeV/cm3"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Temperature",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:s(g),minValue:0,maxValue:s(1e4),ranges:{teal:[-Infinity,s(80)],good:[s(80),s(373)],average:[s(373),s(1e3)],bad:[s(1e3),Infinity]},children:(0,i.toFixed)(g)+" K"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:s(b),minValue:0,maxValue:s(5e4),ranges:{good:[s(1),s(300)],average:[-Infinity,s(1e3)],bad:[s(1e3),+Infinity]},children:(0,i.toFixed)(b)+" kPa"})})]})})}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,l.Section,{title:"Gases",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"arrow-left",content:"Back",onClick:function(){return u("PRG_clear")}}),children:(0,o.createComponentVNode)(2,l.LabeledList,{children:N.map((function(e){return(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:(0,d.getGasLabel)(e.name),children:(0,o.createComponentVNode)(2,l.ProgressBar,{color:(0,d.getGasColor)(e.name),value:e.amount,minValue:0,maxValue:v,children:(0,i.toFixed)(e.amount,2)+"%"})},e.name)}))})})})]})};t.NtosSupermatterMonitorContent=p;var m=function(e,t){var n=(0,c.useBackend)(t),r=n.act,a=n.data.supermatters,i=void 0===a?[]:a;return(0,o.createComponentVNode)(2,l.Section,{title:"Detected Supermatters",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"sync",content:"Refresh",onClick:function(){return r("PRG_refresh")}}),children:(0,o.createComponentVNode)(2,l.Table,{children:i.map((function(e){return(0,o.createComponentVNode)(2,l.Table.Row,{children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.uid+". "+e.area_name}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,color:"label",children:"Integrity:"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,width:"120px",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:e.integrity/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,l.Button,{content:"Details",onClick:function(){return r("PRG_set",{target:e.uid})}})})]},e.uid)}))})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NuclearBomb=void 0;var o=n(0),r=n(6),a=n(1),i=n(3),c=n(2),l=function(e,t){var n=(0,a.useBackend)(t).act;return(0,o.createComponentVNode)(2,i.Box,{width:"185px",children:(0,o.createComponentVNode)(2,i.Grid,{width:"1px",children:[["1","4","7","C"],["2","5","8","0"],["3","6","9","E"]].map((function(e){return(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,mb:1,content:e,textAlign:"center",fontSize:"40px",lineHeight:"50px",width:"55px",className:(0,r.classes)(["NuclearBomb__Button","NuclearBomb__Button--keypad","NuclearBomb__Button--"+e]),onClick:function(){return n("keypad",{digit:e})}},e)}))},e[0])}))})})};t.NuclearBomb=function(e,t){var n=(0,a.useBackend)(t),r=n.act,d=n.data,u=(d.anchored,d.disk_present,d.status1),s=d.status2;return(0,o.createComponentVNode)(2,c.Window,{theme:"retro",children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,i.Box,{m:1,children:[(0,o.createComponentVNode)(2,i.Box,{mb:1,className:"NuclearBomb__displayBox",children:u}),(0,o.createComponentVNode)(2,i.Flex,{mb:1.5,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,i.Box,{className:"NuclearBomb__displayBox",children:s})}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",fontSize:"24px",lineHeight:"23px",textAlign:"center",width:"43px",ml:1,mr:"3px",mt:"3px",className:"NuclearBomb__Button NuclearBomb__Button--keypad",onClick:function(){return r("eject_disk")}})})]}),(0,o.createComponentVNode)(2,i.Flex,{ml:"3px",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,l)}),(0,o.createComponentVNode)(2,i.Flex.Item,{ml:1,width:"129px",children:(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ARM",textAlign:"center",fontSize:"28px",lineHeight:"32px",mb:1,className:"NuclearBomb__Button NuclearBomb__Button--C",onClick:function(){return r("arm")}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ANCHOR",textAlign:"center",fontSize:"28px",lineHeight:"32px",className:"NuclearBomb__Button NuclearBomb__Button--E",onClick:function(){return r("anchor")}}),(0,o.createComponentVNode)(2,i.Box,{textAlign:"center",color:"#9C9987",fontSize:"80px",children:(0,o.createComponentVNode)(2,i.Icon,{name:"radiation"})}),(0,o.createComponentVNode)(2,i.Box,{height:"80px",className:"NuclearBomb__NTIcon"})]})})]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.OperatingComputer=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=[{label:"Brute",type:"bruteLoss"},{label:"Burn",type:"fireLoss"},{label:"Toxin",type:"toxLoss"},{label:"Respiratory",type:"oxyLoss"}];t.OperatingComputer=function(e,t){var n=(0,r.useSharedState)(t,"tab",1),c=n[0],u=n[1];return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:1===c,onClick:function(){return u(1)},children:"Patient State"}),(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:2===c,onClick:function(){return u(2)},children:"Surgery Procedures"})]}),1===c&&(0,o.createComponentVNode)(2,l),2===c&&(0,o.createComponentVNode)(2,d)]})})};var l=function(e,t){var n=(0,r.useBackend)(t),i=(n.act,n.data),l=i.table,d=i.procedures,u=void 0===d?[]:d,s=i.patient,p=void 0===s?{}:s;return l?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Patient State",children:p&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:p.statstate,children:p.stat}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Blood Type",children:p.blood_type}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:p.health,minValue:p.minHealth,maxValue:p.maxHealth,color:p.health>=0?"good":"average",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:p.health})})}),c.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:p[e.type]/p.maxHealth,color:"bad",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:p[e.type]})})},e.type)}))]})||"No Patient Detected"}),0===u.length&&(0,o.createComponentVNode)(2,a.Section,{children:"No Active Procedures"}),u.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Next Step",children:[e.next_step,e.chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.chems_needed],0)]}),!!i.alternative_step&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Alternative Step",children:[e.alternative_step,e.alt_chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.alt_chems_needed],0)]})]})},e.name)}))],0):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Table Detected"})},d=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data.surgeries,l=void 0===c?[]:c;return(0,o.createComponentVNode)(2,a.Section,{title:"Advanced Surgery Procedures",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"download",content:"Sync Research Database",onClick:function(){return i("sync")}}),l.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,children:e.desc},e.name)}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Orbit=void 0;var o=n(0),r=n(19),a=n(3),i=n(2),c=n(1);n(44);function l(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);nt},f=function(e,t){var n=e.name,o=t.name,r=n.match(s),a=o.match(s);return r&&a&&n.replace(s,"")===o.replace(s,"")?parseInt(r[1],10)-parseInt(a[1],10):m(n,o)},h=function(e,t){var n=(0,c.useBackend)(t).act,r=e.searchText,i=e.source,l=e.title,d=i.filter(p(r));return d.sort(f),i.length>0&&(0,o.createComponentVNode)(2,a.Section,{title:l+" - ("+i.length+")",children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e.name.replace(u,""),onClick:function(){return n("orbit",{ref:e.ref})}},e.name)}))})},C=function(e,t){var n=(0,c.useBackend)(t).act,r=e.color,i=e.thing;return(0,o.createComponentVNode)(2,a.Button,{color:r,onClick:function(){return n("orbit",{ref:i.ref})},children:[i.name,i.orbiters&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,ml:1,children:["(",i.orbiters," ",(0,o.createComponentVNode)(2,a.Box,{as:"img",src:"ghost.png",opacity:.7}),")"]})]})};t.Orbit=function(e,t){for(var n,r=(0,c.useBackend)(t),d=r.act,u=r.data,s=u.alive,g=u.antagonists,b=u.dead,N=u.ghosts,v=u.misc,V=u.npcs,y=(0,c.useLocalState)(t,"searchText",""),k=y[0],x=y[1],_={},w=l(g);!(n=w()).done;){var B=n.value;_[B.antag]===undefined&&(_[B.antag]=[]),_[B.antag].push(B)}var L=Object.entries(_);L.sort((function(e,t){return m(e[0],t[0])}));return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Icon,{name:"search",mr:1})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,a.Input,{placeholder:"Search...",autoFocus:!0,fluid:!0,value:k,onInput:function(e,t){return x(t)},onEnter:function(e,t){return function(e){for(var t=0,n=[L.map((function(e){return e[0],e[1]})),s,N,b,V,v];t0&&(0,o.createComponentVNode)(2,a.Section,{title:"Ghost-Visible Antagonists",children:L.map((function(e){var t=e[0],n=e[1];return(0,o.createComponentVNode)(2,a.Section,{title:t,level:2,children:n.filter(p(k)).sort(f).map((function(e){return(0,o.createComponentVNode)(2,C,{color:"bad",thing:e},e.name)}))},t)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Alive",children:s.filter(p(k)).sort(f).map((function(e){return(0,o.createComponentVNode)(2,C,{color:"good",thing:e},e.name)}))}),(0,o.createComponentVNode)(2,h,{title:"Ghosts",source:N,searchText:k}),(0,o.createComponentVNode)(2,h,{title:"Dead",source:b,searchText:k}),(0,o.createComponentVNode)(2,h,{title:"NPCs",source:V,searchText:k}),(0,o.createComponentVNode)(2,h,{title:"Misc",source:v,searchText:k})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.OreBox=void 0;var o=n(0),r=n(19),a=n(3),i=n(1),c=n(2);t.OreBox=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data.materials;return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Ores",buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Empty",onClick:function(){return l("removeall")}}),children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:"Ore"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:"Amount"})]}),d.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,r.toTitleCase)(e.name)}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,a.Box,{color:"label",inline:!0,children:e.amount})})]},e.type)}))]})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Box,{children:["All ores will be placed in here when you are wearing a mining stachel on your belt or in a pocket while dragging the ore box.",(0,o.createVNode)(1,"br"),"Gibtonite is not accepted."]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.OreRedemptionMachine=void 0;var o=n(0),r=n(19),a=n(1),i=n(3),c=n(2);t.OreRedemptionMachine=function(e,t){var n=(0,a.useBackend)(t),r=n.act,d=n.data,u=d.unclaimedPoints,s=d.materials,p=d.alloys,m=d.diskDesigns,f=d.hasDisk;return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.BlockQuote,{mb:1,children:["This machine only accepts ore.",(0,o.createVNode)(1,"br"),"Gibtonite and Slag are not accepted."]}),(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mr:1,children:"Unclaimed points:"}),u,(0,o.createComponentVNode)(2,i.Button,{ml:2,content:"Claim",disabled:0===u,onClick:function(){return r("Claim")}})]})]}),(0,o.createComponentVNode)(2,i.Section,{children:f&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:1,children:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject design disk",onClick:function(){return r("diskEject")}})}),(0,o.createComponentVNode)(2,i.Table,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:["File ",e.index,": ",e.name]}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,i.Button,{disabled:!e.canupload,content:"Upload",onClick:function(){return r("diskUpload",{design:e.index})}})})]},e.index)}))})],4)||(0,o.createComponentVNode)(2,i.Button,{icon:"save",content:"Insert design disk",onClick:function(){return r("diskInsert")}})}),(0,o.createComponentVNode)(2,i.Section,{title:"Materials",children:(0,o.createComponentVNode)(2,i.Table,{children:s.map((function(e){return(0,o.createComponentVNode)(2,l,{material:e,onRelease:function(t){return r("Release",{id:e.id,sheets:t})}},e.id)}))})}),(0,o.createComponentVNode)(2,i.Section,{title:"Alloys",children:(0,o.createComponentVNode)(2,i.Table,{children:p.map((function(e){return(0,o.createComponentVNode)(2,l,{material:e,onRelease:function(t){return r("Smelt",{id:e.id,sheets:t})}},e.id)}))})})]})})};var l=function(e,t){var n=e.material,c=e.onRelease,l=(0,a.useLocalState)(t,"amount"+n.name,1),d=l[0],u=l[1],s=Math.floor(n.amount);return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(n.name).replace("Alloy","")}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{mr:2,color:"label",inline:!0,children:n.value&&n.value+" cr"})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{mr:2,color:"label",inline:!0,children:[s," sheets"]})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.NumberInput,{width:"32px",step:1,stepPixelSize:5,minValue:1,maxValue:50,value:d,onChange:function(e,t){return u(t)}}),(0,o.createComponentVNode)(2,i.Button,{disabled:s<1,content:"Release",onClick:function(){return c(d)}})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Pandemic=t.PandemicAntibodyDisplay=t.PandemicSymptomDisplay=t.PandemicDiseaseDisplay=t.PandemicBeakerDisplay=void 0;var o=n(0),r=n(14),a=n(1),i=n(3),c=n(2),l=function(e,t){var n=(0,a.useBackend)(t),r=n.act,c=n.data,l=c.has_beaker,d=c.beaker_empty,u=c.has_blood,s=c.blood,p=!l||d;return(0,o.createComponentVNode)(2,i.Section,{title:"Beaker",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Empty and Eject",color:"bad",disabled:p,onClick:function(){return r("empty_eject_beaker")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"trash",content:"Empty",disabled:p,onClick:function(){return r("empty_beaker")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",disabled:!l,onClick:function(){return r("eject_beaker")}})],4),children:l?d?(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Beaker is empty"}):u?(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood DNA",children:s&&s.dna||"Unknown"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood Type",children:s&&s.type||"Unknown"})]}):(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"No blood detected"}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No beaker loaded"})})};t.PandemicBeakerDisplay=l;var d=function(e,t){var n=(0,a.useBackend)(t),r=n.act,c=n.data,l=c.is_ready;return(c.viruses||[]).map((function(e){var t=e.symptoms||[];return(0,o.createComponentVNode)(2,i.Section,{title:e.can_rename?(0,o.createComponentVNode)(2,i.Input,{value:e.name,onChange:function(t,n){return r("rename_disease",{index:e.index,name:n})}}):e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"flask",content:"Create culture bottle",disabled:!l,onClick:function(){return r("create_culture_bottle",{index:e.index})}}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.description}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Agent",children:e.agent}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Spread",children:e.spread}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Possible Cure",children:e.cure})]})})]}),!!e.is_adv&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Statistics",level:2,children:(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Resistance",children:e.resistance}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth",children:e.stealth})]})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stage speed",children:e.stage_speed}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transmissibility",children:e.transmission})]})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Symptoms",level:2,children:t.map((function(e){return(0,o.createComponentVNode)(2,i.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,u,{symptom:e})})},e.name)}))})],4)]},e.name)}))};t.PandemicDiseaseDisplay=d;var u=function(e,t){var n=e.symptom,a=n.name,c=n.desc,l=n.stealth,d=n.resistance,u=n.stage_speed,s=n.transmission,p=n.level,m=n.neutered,f=(0,r.map)((function(e,t){return{desc:e,label:t}}))(n.threshold_desc||{});return(0,o.createComponentVNode)(2,i.Section,{title:a,level:2,buttons:!!m&&(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",children:"Neutered"}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{size:2,children:c}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Level",children:p}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Resistance",children:d}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth",children:l}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stage Speed",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transmission",children:s})]})})]}),f.length>0&&(0,o.createComponentVNode)(2,i.Section,{title:"Thresholds",level:3,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:f.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.label,children:e.desc},e.label)}))})})]})};t.PandemicSymptomDisplay=u;var s=function(e,t){var n=(0,a.useBackend)(t),r=n.act,c=n.data,l=c.resistances||[];return(0,o.createComponentVNode)(2,i.Section,{title:"Antibodies",children:l.length>0?(0,o.createComponentVNode)(2,i.LabeledList,{children:l.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,children:(0,o.createComponentVNode)(2,i.Button,{icon:"eye-dropper",content:"Create vaccine bottle",disabled:!c.is_ready,onClick:function(){return r("create_vaccine_bottle",{index:e.id})}})},e.name)}))}):(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",mt:1,children:"No antibodies detected."})})};t.PandemicAntibodyDisplay=s;t.Pandemic=function(e,t){var n=(0,a.useBackend)(t).data;return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,l),!!n.has_blood&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d),(0,o.createComponentVNode)(2,s)],4)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PaperSheet=void 0;var o=n(0),r=n(3),a=n(1),i=n(2),c=p(n(558)),l=p(n(559)),d=n(6),u=n(44),s=n(118);function p(e){return e&&e.__esModule?e:{"default":e}}function m(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function f(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}function h(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return C(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return C(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function C(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n]+)>/g,(function(e,t){return"$"+n[t]})))}if("function"==typeof t){var a=this;return o[Symbol.replace].call(this,e,(function(){var e=[];return e.push.apply(e,arguments),"object"!=typeof e[e.length-1]&&e.push(i(e,a)),t.apply(this,e)}))}return o[Symbol.replace].call(this,e,t)},g.apply(this,arguments)}function b(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&y(e,t)}function N(e){var t="function"==typeof Map?new Map:undefined;return(N=function(e){if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;var n;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,o)}function o(){return v(e,arguments,k(this).constructor)}return o.prototype=Object.create(e.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0}}),y(o,e)})(e)}function v(e,t,n){return(v=V()?Reflect.construct:function(e,t,n){var o=[null];o.push.apply(o,t);var r=new(Function.bind.apply(e,o));return n&&y(r,n.prototype),r}).apply(null,arguments)}function V(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}function y(e,t){return(y=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function k(e){return(k=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}(0,u.createLogger)("PaperSheet");var x=function(e,t,n,o){return void 0===o&&(o=!1),"'+e+""},_=/\[(_+)\]/g,w=g(/\[\]/gm,{id:2}),B=/%s(?:ign)?(?=\\s|$)/gim,L=function(e,t,n,o,r){var a=e.replace(_,(function(e,a,i,c){var l=function(e,t,n){t=n+"x "+t;var o=document.createElement("canvas").getContext("2d");return o.font=t,o.measureText(e).width}(e,t,n)+"px";return function(e,t,n,o,r,a){return'["+T(n,l)+""};return(0,o.createComponentVNode)(2,r.Box,{position:"relative",backgroundColor:i,width:"100%",height:"100%",children:[(0,o.createComponentVNode)(2,r.Box,{fillPositionedParent:1,width:"100%",height:"100%",dangerouslySetInnerHTML:s,p:"10px"}),u.map((function(e,t){return(0,o.createComponentVNode)(2,I,{image:{sprite:e[0],x:e[1],y:e[2],rotate:e[3]}},e[0]+t)}))]})},E=function(e){function t(t,n){var o;return(o=e.call(this,t,n)||this).state={x:0,y:0,rotate:0},o}m(t,e);var n=t.prototype;return n.findStampPosition=function(e){for(var t=event.pageX,n=event.pageY,o={left:e.target.offsetLeft,top:e.target.offsetTop},r=e.target.offsetParent;r;)o.left+=r.offsetLeft,o.top+=r.offsetTop,r=r.offsetParent;var a=t-o.left,i=n-o.top,c=(0,s.vecCreate)(a,i),l=(0,s.vecCreate)(60.5,25.5);return(0,s.vecSubtract)(c,l)},n.componentDidMount=function(){document.onwheel=this.handleWheel.bind(this)},n.handleMouseMove=function(e){var t=this.findStampPosition(e);S(e),this.setState({x:t[0],y:t[1]})},n.handleMouseClick=function(e){var t=this.findStampPosition(e),n=(0,a.useBackend)(this.context),o=n.act;n.data,o("stamp",{x:t[0],y:t[1],r:this.state.rotate}),this.setState({x:t[0],y:t[1]})},n.handleWheel=function(e){var t=e.deltaY>0?15:-15;if(e.deltaY<0&&0===this.state.rotate)this.setState({rotate:360+t});else if(e.deltaY>0&&360===this.state.rotate)this.setState({rotate:t});else{var n={rotate:t+this.state.rotate};this.setState((function(){return n}))}S(e)},n.render=function(){var e=this.props,t=e.value,n=e.stamp_class,a=e.stamps,i=f(e,["value","stamp_class","stamps"]),c=a||[],l={sprite:n,x:this.state.x,y:this.state.y,rotate:this.state.rotate};return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Box,Object.assign({onClick:this.handleMouseClick.bind(this),onMouseMove:this.handleMouseMove.bind(this),onwheel:this.handleWheel.bind(this)},i,{children:[(0,o.createComponentVNode)(2,A,{readOnly:1,value:t,stamps:c}),(0,o.createComponentVNode)(2,I,{opacity:.5,image:l})]})))},t}(o.Component),M=function(e){function t(t,n){var o;return(o=e.call(this,t,n)||this).state={previewSelected:"Preview",old_text:t.value||"",textarea_text:"",combined_text:t.value||""},o}m(t,e);var n=t.prototype;return n.createPreview=function(e,t){void 0===t&&(t=!1);var n,o,r=(0,a.useBackend)(this.context).data,i=r.text,d=r.pen_color,u=r.pen_font,s=r.is_crayon,p=r.field_counter,m=r.edit_usr,f={text:i};if((e=e.trim()).length>0){var C=function(e){return l["default"].sanitize(e,{FORBID_ATTR:["class","style"],ALLOWED_TAGS:["br","code","li","p","pre","span","table","td","tr","th","ul","ol","menu","font","b","center","table","tr","th"]})}(e+="\n"===e[e.length]?" \n":"\n \n"),g=(n=d,o=m,C.replace(B,(function(){return x(o,"Times New Roman",n,!0)}))),b=L(g,u,12,d,p),N=function(e){return(0,c["default"])(e,{breaks:!0,smartypants:!0,smartLists:!0,walkTokens:function(e){switch(e.type){case"url":case"autolink":case"reflink":case"link":case"image":e.type="text",e.href=""}},baseUrl:"thisshouldbreakhttp"})}(b.text),v=x(N,u,d,s);f.text+=v,f.field_counter=b.counter}if(t){var V=function(e,t,n,o,r){var a;void 0===r&&(r=!1);for(var i={},c=[];null!==(a=w.exec(e));){var d=a[0],u=a.groups.id;if(u){var s=document.getElementById(u);if(0===(s&&s.value?s.value:"").length)continue;var p=l["default"].sanitize(s.value.trim(),{ALLOWED_TAGS:[]});if(0===p.length)continue;var m=s.cloneNode(!0);p.match(B)?(m.style.fontFamily="Times New Roman",r=!0,m.defaultValue=o):(m.style.fontFamily=t,m.defaultValue=p),r&&(m.style.fontWeight="bold"),m.style.color=n,m.disabled=!0;var f=document.createElement("div");f.appendChild(m),i[u]=p,c.push({value:"["+f.innerHTML+"]",raw_text:d})}}if(c.length>0)for(var C,g=h(c);!(C=g()).done;){var b=C.value;e=e.replace(b.raw_text,b.value)}return{text:e,fields:i}}(f.text,u,d,m,s);f.text=V.text,f.form_fields=V.fields}return f},n.onInputHandler=function(e,t){var n=this;if(t!==this.state.textarea_text){var o=this.state.old_text.length+this.state.textarea_text.length;if(o>5e3&&(t=o-5e3>=t.length?"":t.substr(0,t.length-(o-5e3)))===this.state.textarea_text)return;this.setState((function(){return{textarea_text:t,combined_text:n.createPreview(t)}}))}},n.finalUpdate=function(e){var t=(0,a.useBackend)(this.context).act,n=this.createPreview(e,!0);t("save",n),this.setState((function(){return{textarea_text:"",previewSelected:"save",combined_text:n.text}}))},n.render=function(){var e=this,t=this.props,n=(t.value,t.textColor),a=t.fontFamily,i=t.stamps,c=t.backgroundColor;return f(t,["value","textColor","fontFamily","stamps","backgroundColor"]),(0,o.createComponentVNode)(2,r.Flex,{direction:"column",fillPositionedParent:1,children:[(0,o.createComponentVNode)(2,r.Flex.Item,{children:(0,o.createComponentVNode)(2,r.Tabs,{children:[(0,o.createComponentVNode)(2,r.Tabs.Tab,{textColor:"black",backgroundColor:"Edit"===this.state.previewSelected?"grey":"white",selected:"Edit"===this.state.previewSelected,onClick:function(){return e.setState({previewSelected:"Edit"})},children:"Edit"},"marked_edit"),(0,o.createComponentVNode)(2,r.Tabs.Tab,{textColor:"black",backgroundColor:"Preview"===this.state.previewSelected?"grey":"white",selected:"Preview"===this.state.previewSelected,onClick:function(){return e.setState((function(){return{previewSelected:"Preview",textarea_text:e.state.textarea_text,combined_text:e.createPreview(e.state.textarea_text).text}}))},children:"Preview"},"marked_preview"),(0,o.createComponentVNode)(2,r.Tabs.Tab,{textColor:"black",backgroundColor:"confirm"===this.state.previewSelected?"red":"save"===this.state.previewSelected?"grey":"white",selected:"confirm"===this.state.previewSelected||"save"===this.state.previewSelected,onClick:function(){"confirm"===e.state.previewSelected?e.finalUpdate(e.state.textarea_text):"Edit"===e.state.previewSelected?e.setState((function(){return{previewSelected:"confirm",textarea_text:e.state.textarea_text,combined_text:e.createPreview(e.state.textarea_text).text}})):e.setState({previewSelected:"confirm"})},children:"confirm"===this.state.previewSelected?"confirm":"save"},"marked_done")]})}),(0,o.createComponentVNode)(2,r.Flex.Item,{grow:1,basis:1,children:"Edit"===this.state.previewSelected&&(0,o.createComponentVNode)(2,r.TextArea,{value:this.state.textarea_text,textColor:n,fontFamily:a,height:window.innerHeight-80+"px",backgroundColor:c,onInput:this.onInputHandler.bind(this)})||(0,o.createComponentVNode)(2,A,{value:this.state.combined_text,stamps:i,fontFamily:a,textColor:n})})]})},t}(o.Component);t.PaperSheet=function(e,t){var n=(0,a.useBackend)(t).data,c=n.edit_mode,l=n.text,d=n.paper_color,u=n.pen_color,s=void 0===u?"black":u,p=n.pen_font,m=void 0===p?"Verdana":p,f=n.stamps,h=n.stamp_class,C=(n.stamped,d&&"white"!==d?d:"#FFFFFF"),g={"background-color":C},b=f&&null!==f?f:[];return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,theme:"paper",style:g,children:(0,o.createComponentVNode)(2,i.Window.Content,{"min-height":"100vh","min-width":"100vw",style:g,children:(0,o.createComponentVNode)(2,r.Box,{fillPositionedParent:1,"min-height":"100vh","min-width":"100vw",backgroundColor:C,children:function(e){switch(e){case 0:return(0,o.createComponentVNode)(2,A,{value:l,stamps:b,readOnly:1});case 1:return(0,o.createComponentVNode)(2,M,{value:l,textColor:s,fontFamily:m,stamps:b,backgroundColor:C});case 2:return(0,o.createComponentVNode)(2,E,{value:l,stamps:b,stamp_class:h});default:return"ERROR ERROR WE CANNOT BE HERE!!"}}(c)})})})}},function(e,t,n){"use strict";e.exports=function(){function e(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,o=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[n++]}};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}var o=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e){function t(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}e.exports={defaults:{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:t,changeDefaults:function(t){e.exports.defaults=t}}})),r=(o.defaults,o.getDefaults,o.changeDefaults,/[&<>"']/),a=/[&<>"']/g,i=/[<>"']|&(?!#?\w+;)/,c=/[<>"']|&(?!#?\w+;)/g,l={"&":"&","<":"<",">":">",'"':""","'":"'"},d=function(e){return l[e]},u=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function s(e){return e.replace(u,(function(e,t){return"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""}))}var p=/(^|[^\[])\^/g,m=/[^\w:]/g,f=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i,h={},C=/^[^:]+:\/*[^/]*$/,g=/^([^:]+:)[\s\S]*$/,b=/^([^:]+:\/*[^/]*)[\s\S]*$/;function N(e,t){h[" "+e]||(C.test(e)?h[" "+e]=e+"/":h[" "+e]=v(e,"/",!0));var n=-1===(e=h[" "+e]).indexOf(":");return"//"===t.substring(0,2)?n?t:e.replace(g,"$1")+t:"/"===t.charAt(0)?n?t:e.replace(b,"$1")+t:e+t}function v(e,t,n){var o=e.length;if(0===o)return"";for(var r=0;r=0&&"\\"===n[r];)o=!o;return o?"|":" |"})).split(/ \|/),o=0;if(n.length>t)n.splice(t);else for(;n.length1?{type:"space",raw:t[0]}:{raw:"\n"}},t.code=function(e,t){var n=this.rules.block.code.exec(e);if(n){var o=t[t.length-1];if(o&&"paragraph"===o.type)return{raw:n[0],text:n[0].trimRight()};var r=n[0].replace(/^ {4}/gm,"");return{type:"code",raw:n[0],codeBlockStyle:"indented",text:this.options.pedantic?r:k(r,"\n")}}},t.fences=function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],o=function(e,t){var n=e.match(/^(\s+)(?:```)/);if(null===n)return t;var o=n[1];return t.split("\n").map((function(e){var t=e.match(/^\s+/);return null===t?e:t[0].length>=o.length?e.slice(o.length):e})).join("\n")}(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim():t[2],text:o}}},t.heading=function(e){var t=this.rules.block.heading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[1].length,text:t[2]}},t.nptable=function(e){var t=this.rules.block.nptable.exec(e);if(t){var n={type:"table",header:x(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[],raw:t[0]};if(n.header.length===n.align.length){var o,r=n.align.length;for(o=0;o ?/gm,"");return{type:"blockquote",raw:t[0],text:n}}},t.list=function(e){var t=this.rules.block.list.exec(e);if(t){for(var n,o,r,a,i,c,l,d=t[0],u=t[2],s=u.length>1,p={type:"list",raw:d,ordered:s,start:s?+u:"",loose:!1,items:[]},m=t[0].match(this.rules.block.item),f=!1,h=m.length,C=0;C1?1===r.length:r.length>1||this.options.smartLists&&r!==u)&&(a=m.slice(C+1).join("\n"),p.raw=p.raw.substring(0,p.raw.length-a.length),C=h-1)),i=f||/\n\n(?!\s*$)/.test(n),C!==h-1&&(f="\n"===n.charAt(n.length-1),i||(i=f)),i&&(p.loose=!0),c=/^\[[ xX]\] /.test(n),l=undefined,c&&(l=" "!==n[1],n=n.replace(/^\[[ xX]\] +/,"")),p.items.push({type:"list_item",raw:d,task:c,checked:l,loose:i,text:n});return p}},t.html=function(e){var t=this.rules.block.html.exec(e);if(t)return{type:this.options.sanitize?"paragraph":"html",raw:t[0],pre:!this.options.sanitizer&&("pre"===t[1]||"script"===t[1]||"style"===t[1]),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(t[0]):_(t[0]):t[0]}},t.def=function(e){var t=this.rules.block.def.exec(e);if(t)return t[3]&&(t[3]=t[3].substring(1,t[3].length-1)),{tag:t[1].toLowerCase().replace(/\s+/g," "),raw:t[0],href:t[2],title:t[3]}},t.table=function(e){var t=this.rules.block.table.exec(e);if(t){var n={type:"table",header:x(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[]};if(n.header.length===n.align.length){n.raw=t[0];var o,r=n.align.length;for(o=0;o/i.test(o[0])&&(t=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(o[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(o[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:o[0],inLink:t,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(o[0]):_(o[0]):o[0]}},t.link=function(e){var t=this.rules.inline.link.exec(e);if(t){var n=w(t[2],"()");if(n>-1){var o=(0===t[0].indexOf("!")?5:4)+t[1].length+n;t[2]=t[2].substring(0,n),t[0]=t[0].substring(0,o).trim(),t[3]=""}var r=t[2],a="";if(this.options.pedantic){var i=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);i?(r=i[1],a=i[3]):a=""}else a=t[3]?t[3].slice(1,-1):"";return B(t,{href:(r=r.trim().replace(/^<([\s\S]*)>$/,"$1"))?r.replace(this.rules.inline._escapes,"$1"):r,title:a?a.replace(this.rules.inline._escapes,"$1"):a},t[0])}},t.reflink=function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var o=(n[2]||n[1]).replace(/\s+/g," ");if(!(o=t[o.toLowerCase()])||!o.href){var r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return B(n,o,n[0])}},t.strong=function(e){var t=this.rules.inline.strong.exec(e);if(t)return{type:"strong",raw:t[0],text:t[4]||t[3]||t[2]||t[1]}},t.em=function(e){var t=this.rules.inline.em.exec(e);if(t)return{type:"em",raw:t[0],text:t[6]||t[5]||t[4]||t[3]||t[2]||t[1]}},t.codespan=function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(/\n/g," "),o=/[^ ]/.test(n),r=n.startsWith(" ")&&n.endsWith(" ");return o&&r&&(n=n.substring(1,n.length-1)),n=_(n,!0),{type:"codespan",raw:t[0],text:n}}},t.br=function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}},t.del=function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[1]}},t.autolink=function(e,t){var n,o,r=this.rules.inline.autolink.exec(e);if(r)return o="@"===r[2]?"mailto:"+(n=_(this.options.mangle?t(r[1]):r[1])):n=_(r[1]),{type:"link",raw:r[0],text:n,href:o,tokens:[{type:"text",raw:n,text:n}]}},t.url=function(e,t){var n;if(n=this.rules.inline.url.exec(e)){var o,r;if("@"===n[2])r="mailto:"+(o=_(this.options.mangle?t(n[0]):n[0]));else{var a;do{a=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(a!==n[0]);o=_(n[0]),r="www."===n[1]?"http://"+o:o}return{type:"link",raw:n[0],text:o,href:r,tokens:[{type:"text",raw:o,text:o}]}}},t.inlineText=function(e,t,n){var o,r=this.rules.inline.text.exec(e);if(r)return o=t?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):_(r[0]):r[0]:_(this.options.smartypants?n(r[0]):r[0]),{type:"text",raw:r[0],text:o}},e}(),S=V.noopTest,I=V.edit,T=V.merge,A={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6}) +([^\n]*?)(?: +#+)? *(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|\\n*|\\n*|)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:S,table:S,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};A.def=I(A.def).replace("label",A._label).replace("title",A._title).getRegex(),A.bullet=/(?:[*+-]|\d{1,9}\.)/,A.item=/^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/,A.item=I(A.item,"gm").replace(/bull/g,A.bullet).getRegex(),A.list=I(A.list).replace(/bull/g,A.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+A.def.source+")").getRegex(),A._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",A._comment=//,A.html=I(A.html,"i").replace("comment",A._comment).replace("tag",A._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),A.paragraph=I(A._paragraph).replace("hr",A.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|!--)").replace("tag",A._tag).getRegex(),A.blockquote=I(A.blockquote).replace("paragraph",A.paragraph).getRegex(),A.normal=T({},A),A.gfm=T({},A.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n *([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n *\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),A.gfm.nptable=I(A.gfm.nptable).replace("hr",A.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|!--)").replace("tag",A._tag).getRegex(),A.gfm.table=I(A.gfm.table).replace("hr",A.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|!--)").replace("tag",A._tag).getRegex(),A.pedantic=T({},A.normal,{html:I("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",A._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,fences:S,paragraph:I(A.normal._paragraph).replace("hr",A.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",A.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var E={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:S,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,strong:/^__([^\s_])__(?!_)|^\*\*([^\s*])\*\*(?!\*)|^__([^\s][\s\S]*?[^\s])__(?!_)|^\*\*([^\s][\s\S]*?[^\s])\*\*(?!\*)/,em:/^_([^\s_])_(?!_)|^_([^\s_<][\s\S]*?[^\s_])_(?!_|[^\s,punctuation])|^_([^\s_<][\s\S]*?[^\s])_(?!_|[^\s,punctuation])|^\*([^\s*<\[])\*(?!\*)|^\*([^\s<"][\s\S]*?[^\s\[\*])\*(?![\]`punctuation])|^\*([^\s*"<\[][\s\S]*[^\s])\*(?!\*)/,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:S,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\?@\\[^_{|}~"};E.em=I(E.em).replace(/punctuation/g,E._punctuation).getRegex(),E._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,E._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,E._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,E.autolink=I(E.autolink).replace("scheme",E._scheme).replace("email",E._email).getRegex(),E._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,E.tag=I(E.tag).replace("comment",A._comment).replace("attribute",E._attribute).getRegex(),E._label=/(?:\[[^\[\]]*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,E._href=/<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*/,E._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,E.link=I(E.link).replace("label",E._label).replace("href",E._href).replace("title",E._title).getRegex(),E.reflink=I(E.reflink).replace("label",E._label).getRegex(),E.normal=T({},E),E.pedantic=T({},E.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/,link:I(/^!?\[(label)\]\((.*?)\)/).replace("label",E._label).getRegex(),reflink:I(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",E._label).getRegex()}),E.gfm=T({},E.normal,{escape:I(E.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\.5&&(n="x"+n.toString(16)),o+="&#"+n+";";return o}var F=function(){function t(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||P,this.options.tokenizer=this.options.tokenizer||new L,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var t={block:R.normal,inline:O.normal};this.options.pedantic?(t.block=R.pedantic,t.inline=O.pedantic):this.options.gfm&&(t.block=R.gfm,this.options.breaks?t.inline=O.breaks:t.inline=O.gfm),this.tokenizer.rules=t}t.lex=function(e,n){return new t(n).lex(e)};var n,o,r,a=t.prototype;return a.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(e,this.tokens,!0),this.inline(this.tokens),this.tokens},a.blockTokens=function(e,t,n){var o,r,a,i;for(void 0===t&&(t=[]),void 0===n&&(n=!0),e=e.replace(/^ +$/gm,"");e;)if(o=this.tokenizer.space(e))e=e.substring(o.raw.length),o.type&&t.push(o);else if(o=this.tokenizer.code(e,t))e=e.substring(o.raw.length),o.type?t.push(o):((i=t[t.length-1]).raw+="\n"+o.raw,i.text+="\n"+o.text);else if(o=this.tokenizer.fences(e))e=e.substring(o.raw.length),t.push(o);else if(o=this.tokenizer.heading(e))e=e.substring(o.raw.length),t.push(o);else if(o=this.tokenizer.nptable(e))e=e.substring(o.raw.length),t.push(o);else if(o=this.tokenizer.hr(e))e=e.substring(o.raw.length),t.push(o);else if(o=this.tokenizer.blockquote(e))e=e.substring(o.raw.length),o.tokens=this.blockTokens(o.text,[],n),t.push(o);else if(o=this.tokenizer.list(e)){for(e=e.substring(o.raw.length),a=o.items.length,r=0;r'+(n?e:H(e,!0))+"\n":"
    "+(n?e:H(e,!0))+"
    \n"},t.blockquote=function(e){return"
    \n"+e+"
    \n"},t.html=function(e){return e},t.heading=function(e,t,n,o){return this.options.headerIds?"'+e+"\n":""+e+"\n"},t.hr=function(){return this.options.xhtml?"
    \n":"
    \n"},t.list=function(e,t,n){var o=t?"ol":"ul";return"<"+o+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"\n"},t.listitem=function(e){return"
  • "+e+"
  • \n"},t.checkbox=function(e){return" "},t.paragraph=function(e){return"

    "+e+"

    \n"},t.table=function(e,t){return t&&(t="
\n\n"+e+"\n"+t+"
\n"},t.tablerow=function(e){return"\n"+e+"\n"},t.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"\n"},t.strong=function(e){return""+e+""},t.em=function(e){return""+e+""},t.codespan=function(e){return""+e+""},t.br=function(){return this.options.xhtml?"
":"
"},t.del=function(e){return""+e+""},t.link=function(e,t,n){if(null===(e=W(this.options.sanitize,this.options.baseUrl,e)))return n;var o='"},t.image=function(e,t,n){if(null===(e=W(this.options.sanitize,this.options.baseUrl,e)))return n;var o=''+n+'":">"},t.text=function(e){return e},e}(),G=function(){function e(){}var t=e.prototype;return t.strong=function(e){return e},t.em=function(e){return e},t.codespan=function(e){return e},t.del=function(e){return e},t.html=function(e){return e},t.text=function(e){return e},t.link=function(e,t,n){return""+n},t.image=function(e,t,n){return""+n},t.br=function(){return""},e}(),K=function(){function e(){this.seen={}}return e.prototype.slug=function(e){var t=e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-");if(this.seen.hasOwnProperty(t)){var n=t;do{this.seen[n]++,t=n+"-"+this.seen[n]}while(this.seen.hasOwnProperty(t))}return this.seen[t]=0,t},e}(),q=o.defaults,$=V.unescape,Y=function(){function e(e){this.options=e||q,this.options.renderer=this.options.renderer||new U,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new G,this.slugger=new K}e.parse=function(t,n){return new e(n).parse(t)};var t=e.prototype;return t.parse=function(e,t){void 0===t&&(t=!0);var n,o,r,a,i,c,l,d,u,s,p,m,f,h,C,g,b,N,v="",V=e.length;for(n=0;n0&&"text"===C.tokens[0].type?(C.tokens[0].text=N+" "+C.tokens[0].text,C.tokens[0].tokens&&C.tokens[0].tokens.length>0&&"text"===C.tokens[0].tokens[0].type&&(C.tokens[0].tokens[0].text=N+" "+C.tokens[0].tokens[0].text)):C.tokens.unshift({type:"text",text:N}):h+=N),h+=this.parse(C.tokens,f),u+=this.renderer.listitem(h,b,g);v+=this.renderer.list(u,p,m);continue;case"html":v+=this.renderer.html(s.text);continue;case"paragraph":v+=this.renderer.paragraph(this.parseInline(s.tokens));continue;case"text":for(u=s.tokens?this.parseInline(s.tokens):s.text;n+1An error occurred:

"+J(l.message+"",!0)+"
";throw l}}return ne.options=ne.setOptions=function(e){return X(ne.defaults,e),ee(ne.defaults),ne},ne.getDefaults=Z,ne.defaults=te,ne.use=function(e){var t=X({},e);if(e.renderer&&function(){var n=ne.defaults.renderer||new U,o=function(t){var o=n[t];n[t]=function(){for(var r=arguments.length,a=new Array(r),i=0;i1?n-1:0),r=1;r/gm),j=a(/^data-[\-\w.\u00B7-\uFFFF]/),D=a(/^aria-[\-\w]+$/),F=a(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),z=a(/^(?:\w+script|data):/i),W=a(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g),H="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function U(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&arguments[0]!==undefined?arguments[0]:G(),t=function(e){return q(e)};if(t.version="2.0.11",t.removed=[],!e||!e.document||9!==e.document.nodeType)return t.isSupported=!1,t;var n=e.document,a=!1,i=e.document,c=e.DocumentFragment,l=e.HTMLTemplateElement,k=e.Node,x=e.NodeFilter,$=e.NamedNodeMap,Y=$===undefined?e.NamedNodeMap||e.MozNamedAttrMap:$,X=e.Text,Q=e.Comment,J=e.DOMParser,Z=e.trustedTypes;if("function"==typeof l){var ee=i.createElement("template");ee.content&&ee.content.ownerDocument&&(i=ee.content.ownerDocument)}var te=K(Z,n),ne=te?te.createHTML(""):"",oe=i,re=oe.implementation,ae=oe.createNodeIterator,ie=oe.getElementsByTagName,ce=oe.createDocumentFragment,le=n.importNode,de={};t.isSupported=re&&"undefined"!=typeof re.createHTMLDocument&&9!==i.documentMode;var ue=R,se=O,pe=j,me=D,fe=z,he=W,Ce=F,ge=null,be=_({},[].concat(U(B),U(L),U(S),U(I),U(T))),Ne=null,ve=_({},[].concat(U(A),U(E),U(M),U(P))),Ve=null,ye=null,ke=!0,xe=!0,_e=!1,we=!1,Be=!1,Le=!1,Se=!1,Ie=!1,Te=!1,Ae=!1,Ee=!1,Me=!1,Pe=!0,Re=!0,Oe=!1,je={},De=_({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","plaintext","script","style","svg","template","thead","title","video","xmp"]),Fe=null,ze=_({},["audio","video","img","source","image","track"]),We=null,He=_({},["alt","class","for","id","label","name","pattern","placeholder","summary","title","value","style","xmlns"]),Ue=null,Ge=i.createElement("form"),Ke=function(e){Ue&&Ue===e||(e&&"object"===(void 0===e?"undefined":H(e))||(e={}),ge="ALLOWED_TAGS"in e?_({},e.ALLOWED_TAGS):be,Ne="ALLOWED_ATTR"in e?_({},e.ALLOWED_ATTR):ve,We="ADD_URI_SAFE_ATTR"in e?_(w(He),e.ADD_URI_SAFE_ATTR):He,Fe="ADD_DATA_URI_TAGS"in e?_(w(ze),e.ADD_DATA_URI_TAGS):ze,Ve="FORBID_TAGS"in e?_({},e.FORBID_TAGS):{},ye="FORBID_ATTR"in e?_({},e.FORBID_ATTR):{},je="USE_PROFILES"in e&&e.USE_PROFILES,ke=!1!==e.ALLOW_ARIA_ATTR,xe=!1!==e.ALLOW_DATA_ATTR,_e=e.ALLOW_UNKNOWN_PROTOCOLS||!1,we=e.SAFE_FOR_JQUERY||!1,Be=e.SAFE_FOR_TEMPLATES||!1,Le=e.WHOLE_DOCUMENT||!1,Te=e.RETURN_DOM||!1,Ae=e.RETURN_DOM_FRAGMENT||!1,Ee=e.RETURN_DOM_IMPORT||!1,Me=e.RETURN_TRUSTED_TYPE||!1,Ie=e.FORCE_BODY||!1,Pe=!1!==e.SANITIZE_DOM,Re=!1!==e.KEEP_CONTENT,Oe=e.IN_PLACE||!1,Ce=e.ALLOWED_URI_REGEXP||Ce,Be&&(xe=!1),Ae&&(Te=!0),je&&(ge=_({},[].concat(U(T))),Ne=[],!0===je.html&&(_(ge,B),_(Ne,A)),!0===je.svg&&(_(ge,L),_(Ne,E),_(Ne,P)),!0===je.svgFilters&&(_(ge,S),_(Ne,E),_(Ne,P)),!0===je.mathMl&&(_(ge,I),_(Ne,M),_(Ne,P))),e.ADD_TAGS&&(ge===be&&(ge=w(ge)),_(ge,e.ADD_TAGS)),e.ADD_ATTR&&(Ne===ve&&(Ne=w(Ne)),_(Ne,e.ADD_ATTR)),e.ADD_URI_SAFE_ATTR&&_(We,e.ADD_URI_SAFE_ATTR),Re&&(ge["#text"]=!0),Le&&_(ge,["html","head","body"]),ge.table&&(_(ge,["tbody"]),delete Ve.tbody),r&&r(e),Ue=e)},qe=function(e){m(t.removed,{element:e});try{e.parentNode.removeChild(e)}catch(n){e.outerHTML=ne}},$e=function(e,n){try{m(t.removed,{attribute:n.getAttributeNode(e),from:n})}catch(o){m(t.removed,{attribute:null,from:n})}n.removeAttribute(e)},Ye=function(e){var t=void 0,n=void 0;if(Ie)e=""+e;else{var o=C(e,/^[\r\n\t ]+/);n=o&&o[0]}var r=te?te.createHTML(e):e;try{t=(new J).parseFromString(r,"text/html")}catch(l){}if(a&&_(Ve,["title"]),!t||!t.documentElement){var c=(t=re.createHTMLDocument("")).body;c.parentNode.removeChild(c.parentNode.firstElementChild),c.outerHTML=r}return e&&n&&t.body.insertBefore(i.createTextNode(n),t.body.childNodes[0]||null),ie.call(t,Le?"html":"body")[0]};t.isSupported&&function(){try{var e=Ye("</title><img>");v(/<\/title/,e.querySelector("title").innerHTML)&&(a=!0)}catch(t){}}();var Xe=function(e){return ae.call(e.ownerDocument||e,e,x.SHOW_ELEMENT|x.SHOW_COMMENT|x.SHOW_TEXT,(function(){return x.FILTER_ACCEPT}),!1)},Qe=function(e){return!(e instanceof X||e instanceof Q||"string"==typeof e.nodeName&&"string"==typeof e.textContent&&"function"==typeof e.removeChild&&e.attributes instanceof Y&&"function"==typeof e.removeAttribute&&"function"==typeof e.setAttribute&&"string"==typeof e.namespaceURI)},Je=function(e){return"object"===(void 0===k?"undefined":H(k))?e instanceof k:e&&"object"===(void 0===e?"undefined":H(e))&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},Ze=function(e,n,o){de[e]&&d(de[e],(function(e){e.call(t,n,o,Ue)}))},et=function(e){var n=void 0;if(Ze("beforeSanitizeElements",e,null),Qe(e))return qe(e),!0;var o=h(e.nodeName);if(Ze("uponSanitizeElement",e,{tagName:o,allowedTags:ge}),("svg"===o||"math"===o)&&0!==e.querySelectorAll("p, br").length)return qe(e),!0;if(!ge[o]||Ve[o]){if(Re&&!De[o]&&"function"==typeof e.insertAdjacentHTML)try{var r=e.innerHTML;e.insertAdjacentHTML("AfterEnd",te?te.createHTML(r):r)}catch(a){}return qe(e),!0}return"noscript"===o&&v(/<\/noscript/i,e.innerHTML)||"noembed"===o&&v(/<\/noembed/i,e.innerHTML)?(qe(e),!0):(!we||e.firstElementChild||e.content&&e.content.firstElementChild||!v(/</g,e.textContent)||(m(t.removed,{element:e.cloneNode()}),e.innerHTML?e.innerHTML=g(e.innerHTML,/</g,"<"):e.innerHTML=g(e.textContent,/</g,"<")),Be&&3===e.nodeType&&(n=e.textContent,n=g(n,ue," "),n=g(n,se," "),e.textContent!==n&&(m(t.removed,{element:e.cloneNode()}),e.textContent=n)),Ze("afterSanitizeElements",e,null),!1)},tt=function(e,t,n){if(Pe&&("id"===t||"name"===t)&&(n in i||n in Ge))return!1;if(xe&&v(pe,t));else if(ke&&v(me,t));else{if(!Ne[t]||ye[t])return!1;if(We[t]);else if(v(Ce,g(n,he,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==b(n,"data:")||!Fe[e])if(_e&&!v(fe,g(n,he,"")));else if(n)return!1}return!0},nt=function(e){var n=void 0,r=void 0,a=void 0,i=void 0,c=void 0;Ze("beforeSanitizeAttributes",e,null);var l=e.attributes;if(l){var d={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Ne};for(c=l.length;c--;){var m=n=l[c],C=m.name,b=m.namespaceURI;if(r=N(n.value),a=h(C),d.attrName=a,d.attrValue=r,d.keepAttr=!0,d.forceKeepAttr=undefined,Ze("uponSanitizeAttribute",e,d),r=d.attrValue,!d.forceKeepAttr){if("name"===a&&"IMG"===e.nodeName&&l.id)i=l.id,l=f(l,[]),$e("id",e),$e(C,e),u(l,i)>c&&e.setAttribute("id",i.value);else{if("INPUT"===e.nodeName&&"type"===a&&"file"===r&&d.keepAttr&&(Ne[a]||!ye[a]))continue;"id"===C&&e.setAttribute(C,""),$e(C,e)}if(d.keepAttr)if(we&&v(/\/>/i,r))$e(C,e);else if(v(/svg|math/i,e.namespaceURI)&&v(V("</("+s(o(De),"|")+")","i"),r))$e(C,e);else{Be&&(r=g(r,ue," "),r=g(r,se," "));var y=e.nodeName.toLowerCase();if(tt(y,a,r))try{b?e.setAttributeNS(b,C,r):e.setAttribute(C,r),p(t.removed)}catch(k){}}}}Ze("afterSanitizeAttributes",e,null)}},ot=function rt(e){var t=void 0,n=Xe(e);for(Ze("beforeSanitizeShadowDOM",e,null);t=n.nextNode();)Ze("uponSanitizeShadowNode",t,null),et(t)||(t.content instanceof c&&rt(t.content),nt(t));Ze("afterSanitizeShadowDOM",e,null)};return t.sanitize=function(o,r){var a=void 0,i=void 0,l=void 0,d=void 0,u=void 0;if(o||(o="\x3c!--\x3e"),"string"!=typeof o&&!Je(o)){if("function"!=typeof o.toString)throw y("toString is not a function");if("string"!=typeof(o=o.toString()))throw y("dirty is not a string, aborting")}if(!t.isSupported){if("object"===H(e.toStaticHTML)||"function"==typeof e.toStaticHTML){if("string"==typeof o)return e.toStaticHTML(o);if(Je(o))return e.toStaticHTML(o.outerHTML)}return o}if(Se||Ke(r),t.removed=[],"string"==typeof o&&(Oe=!1),Oe);else if(o instanceof k)1===(i=(a=Ye("\x3c!--\x3e")).ownerDocument.importNode(o,!0)).nodeType&&"BODY"===i.nodeName||"HTML"===i.nodeName?a=i:a.appendChild(i);else{if(!Te&&!Be&&!Le&&Me&&-1===o.indexOf("<"))return te?te.createHTML(o):o;if(!(a=Ye(o)))return Te?null:ne}a&&Ie&&qe(a.firstChild);for(var s=Xe(Oe?o:a);l=s.nextNode();)3===l.nodeType&&l===d||et(l)||(l.content instanceof c&&ot(l.content),nt(l),d=l);if(d=null,Oe)return o;if(Te){if(Ae)for(u=ce.call(a.ownerDocument);a.firstChild;)u.appendChild(a.firstChild);else u=a;return Ee&&(u=le.call(n,u,!0)),u}var p=Le?a.outerHTML:a.innerHTML;return Be&&(p=g(p,ue," "),p=g(p,se," ")),te&&Me?te.createHTML(p):p},t.setConfig=function(e){Ke(e),Se=!0},t.clearConfig=function(){Ue=null,Se=!1},t.isValidAttribute=function(e,t,n){Ue||Ke({});var o=h(e),r=h(t);return tt(o,r,n)},t.addHook=function(e,t){"function"==typeof t&&(de[e]=de[e]||[],m(de[e],t))},t.removeHook=function(e){de[e]&&p(de[e])},t.removeHooks=function(e){de[e]&&(de[e]=[])},t.removeAllHooks=function(){de={}},t}()}()},function(e,t,n){"use strict";t.__esModule=!0,t.ParticleAccelerator=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.ParticleAccelerator=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.assembled,u=l.power,s=l.strength;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Run Scan",onClick:function(){return c("scan")}}),children:(0,o.createComponentVNode)(2,a.Box,{color:d?"good":"bad",children:d?"Ready - All parts in place":"Unable to detect all parts"})})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Particle Accelerator Controls",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,disabled:!d,onClick:function(){return c("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Particle Strength",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:!d,onClick:function(){return c("remove_strength")}})," ",String(s).padStart(1,"0")," ",(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:!d,onClick:function(){return c("add_strength")}})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PersonalCrafting=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);function c(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}t.PersonalCrafting=function(e,t){for(var n,l=(0,r.useBackend)(t),u=l.act,s=l.data,p=s.busy,m=s.display_craftable_only,f=s.display_compact,h=s.crafting_recipes||{},C=[],g=[],b=0,N=Object.keys(h);b<N.length;b++){var v=N[b],V=h[v];if("has_subcats"in V)for(var y=0,k=Object.keys(V);y<k.length;y++){var x=k[y];if("has_subcats"!==x){C.push({name:x,category:v,subcategory:x});for(var _,w=c(V[x]);!(_=w()).done;){var B=_.value;g.push(Object.assign({},B,{category:x}))}}}else{C.push({name:v,category:v});for(var L,S=c(h[v]);!(L=S()).done;){var I=L.value;g.push(Object.assign({},I,{category:v}))}}}var T=(0,r.useLocalState)(t,"tab",null==(n=C[0])?void 0:n.name),A=T[0],E=T[1],M=g.filter((function(e){return e.category===A}));return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[!!p&&(0,o.createComponentVNode)(2,a.Dimmer,{fontSize:"32px",children:[(0,o.createComponentVNode)(2,a.Icon,{name:"cog",spin:1})," Crafting..."]}),(0,o.createComponentVNode)(2,a.Section,{title:"Personal Crafting",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:"Compact",checked:f,onClick:function(){return u("toggle_compact")}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:"Craftable Only",checked:m,onClick:function(){return u("toggle_recipes")}})],4),children:(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:C.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:e.name===A,onClick:function(){E(e.name),u("set_category",{category:e.category,subcategory:e.subcategory})},children:e.name},e.name)}))})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,d,{craftables:M})})]})})]})})};var d=function(e,t){var n=e.craftables,i=void 0===n?[]:n,c=(0,r.useBackend)(t),l=c.act,d=c.data,u=d.craftability,s=void 0===u?{}:u,p=d.display_compact,m=d.display_craftable_only;return i.map((function(e){return m&&!s[e.ref]?null:p?(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,className:"candystripe",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"cog",content:"Craft",disabled:!s[e.ref],tooltip:e.tool_text&&"Tools needed: "+e.tool_text,tooltipPosition:"left",onClick:function(){return l("make",{recipe:e.ref})}}),children:e.req_text},e.name):(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"cog",content:"Craft",disabled:!s[e.ref],onClick:function(){return l("make",{recipe:e.ref})}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[!!e.req_text&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Required",children:e.req_text}),!!e.catalyst_text&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Catalyst",children:e.catalyst_text}),!!e.tool_text&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Tools",children:e.tool_text})]})},e.name)}))}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableChemMixer=void 0;var o=n(0),r=n(19),a=n(1),i=n(3),c=n(2),l=n(14);t.PortableChemMixer=function(e,t){var n=(0,a.useBackend)(t),d=n.act,u=n.data,s=!!u.recordingRecipe,p=u.beakerTransferAmounts||[],m=s&&Object.keys(u.recordingRecipe).map((function(e){return{id:e,name:(0,r.toTitleCase)(e.replace(/_/," ")),volume:u.recordingRecipe[e]}}))||u.beakerContents||[],f=(0,l.sortBy)((function(e){return e.title}))(u.chemicals);return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Dispense",buttons:p.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"plus",selected:e===u.amount,content:e,onClick:function(){return d("amount",{target:e})}},e)})),children:(0,o.createComponentVNode)(2,i.Box,{mr:-1,children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"tint",width:"150px",lineHeight:"21px",content:"("+e.volume+") "+e.title,onClick:function(){return d("dispense",{reagent:e.id})}},e.id)}))})}),(0,o.createComponentVNode)(2,i.Section,{title:"Disposal controls",buttons:p.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"minus",disabled:s,content:e,onClick:function(){return d("remove",{amount:e})}},e)})),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Beaker",buttons:!!u.isBeakerLoaded&&(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",disabled:!u.isBeakerLoaded,onClick:function(){return d("eject")}}),children:(s?"Virtual beaker":u.isBeakerLoaded&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.AnimatedNumber,{initial:0,value:u.beakerCurrentVolume}),(0,o.createTextVNode)("/"),u.beakerMaxVolume,(0,o.createTextVNode)(" units")],0))||"No beaker"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Contents",children:[(0,o.createComponentVNode)(2,i.Box,{color:"label",children:u.isBeakerLoaded||s?0===m.length&&"Nothing":"N/A"}),m.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{color:"label",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{initial:0,value:e.volume})," ","units of ",e.name]},e.name)}))]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableGenerator=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.PortableGenerator=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.stack_percent,u=(d>50?"good":d>15&&"average")||"bad";return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[!l.anchored&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Generator not anchored."}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power switch",children:(0,o.createComponentVNode)(2,a.Button,{icon:l.active?"power-off":"times",onClick:function(){return c("toggle_power")},disabled:!l.ready_to_boot,children:l.active?"On":"Off"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:l.sheet_name+" sheets",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:u,children:l.sheets}),l.sheets>=1&&(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"eject",disabled:l.active,onClick:function(){return c("eject")},children:"Eject"})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current sheet level",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.stack_percent/100,ranges:{good:[.1,Infinity],average:[.01,.1],bad:[-Infinity,.01]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Heat level",children:l.current_heat<100?(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"good",children:"Nominal"}):l.current_heat<200?(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"average",children:"Caution"}):(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"bad",children:"DANGER"})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Output",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current output",children:l.power_output}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust output",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus",onClick:function(){return c("lower_power")},children:l.power_generated}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return c("higher_power")},children:l.power_generated})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power available",children:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:!l.connected&&"bad",children:l.connected?l.power_available:"Unconnected"})})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PortablePump=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=n(183);t.PortablePump=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.direction,s=(d.holding,d.target_pressure),p=d.default_pressure,m=d.min_pressure,f=d.max_pressure;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,c.PortableBasicInfo),(0,o.createComponentVNode)(2,a.Section,{title:"Pump",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"sign-in-alt":"sign-out-alt",content:u?"In":"Out",selected:u,onClick:function(){return l("direction")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:s,unit:"kPa",width:"75px",minValue:m,maxValue:f,step:10,onChange:function(e,t){return l("pressure",{pressure:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus",disabled:s===m,onClick:function(){return l("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",disabled:s===p,onClick:function(){return l("pressure",{pressure:"reset"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",disabled:s===f,onClick:function(){return l("pressure",{pressure:"max"})}})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableScrubber=void 0;var o=n(0),r=n(1),a=n(3),i=n(39),c=n(2),l=n(183);t.PortableScrubber=function(e,t){var n=(0,r.useBackend)(t),d=n.act,u=n.data.filter_types||[];return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[(0,o.createComponentVNode)(2,l.PortableBasicInfo),(0,o.createComponentVNode)(2,a.Section,{title:"Filters",children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,i.getGasLabel)(e.gas_id,e.gas_name),selected:e.enabled,onClick:function(){return d("toggle_filter",{val:e.gas_id})}},e.id)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableTurret=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.PortableTurret=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.silicon_user,u=l.locked,s=l.on,p=l.check_weapons,m=l.neutralize_criminals,f=l.neutralize_all,h=l.neutralize_unidentified,C=l.neutralize_nonmindshielded,g=l.neutralize_cyborgs,b=l.ignore_heads,N=l.manual_control,v=l.allow_manual_control,V=l.lasertag_turret;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.NoticeBox,{children:["Swipe an ID card to ",u?"unlock":"lock"," this interface."]}),(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",buttons:!V&&(!!v||!!N&&!!d)&&(0,o.createComponentVNode)(2,a.Button,{icon:N?"wifi":"terminal",content:N?"Remotely Controlled":"Manual Control",disabled:N,color:"bad",onClick:function(){return c("manual")}}),children:(0,o.createComponentVNode)(2,a.Button,{icon:s?"power-off":"times",content:s?"On":"Off",selected:s,disabled:u,onClick:function(){return c("power")}})})})}),!V&&(0,o.createComponentVNode)(2,a.Section,{title:"Target Settings",buttons:(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:b,content:"Ignore Heads",disabled:u,onClick:function(){return c("shootheads")}}),children:[(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,checked:f,content:"Non-Security and Non-Command",disabled:u,onClick:function(){return c("shootall")}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,checked:p,content:"Unauthorized Weapons",disabled:u,onClick:function(){return c("authweapon")}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,checked:h,content:"Unidentified Life Signs",disabled:u,onClick:function(){return c("checkxenos")}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,checked:C,content:"Non-Mindshielded",disabled:u,onClick:function(){return c("checkloyal")}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,checked:m,content:"Wanted Criminals",disabled:u,onClick:function(){return c("shootcriminals")}}),(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,checked:g,content:"Cyborgs",disabled:u,onClick:function(){return c("shootborgs")}})]})],0)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ProbingConsole=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.ProbingConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.open,u=l.feedback,s=l.occupant,p=l.occupant_name,m=l.occupant_status;return(0,o.createComponentVNode)(2,i.Window,{theme:"abductor",children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Machine Report",children:u})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Scanner",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d?"sign-out-alt":"sign-in-alt",content:d?"Close":"Open",onClick:function(){return c("door")}}),children:s&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:3===m?"bad":2===m?"average":"good",children:3===m?"Deceased":2===m?"Unconcious":"Concious"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Experiments",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"thermometer",content:"Probe",onClick:function(){return c("experiment",{experiment_type:1})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"brain",content:"Dissect",onClick:function(){return c("experiment",{experiment_type:2})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"search",content:"Analyze",onClick:function(){return c("experiment",{experiment_type:3})}})]})]})||(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Subject"})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ProximitySensor=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.ProximitySensor=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.minutes,u=l.seconds,s=l.timing,p=l.scanning,m=l.sensitivity;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:(0,o.createComponentVNode)(2,a.Button,{icon:p?"lock":"unlock",content:p?"Armed":"Not Armed",selected:p,onClick:function(){return c("scanning")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Detection Range",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:p,onClick:function(){return c("sense",{range:-1})}})," ",String(m).padStart(1,"1")," ",(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:p,onClick:function(){return c("sense",{range:1})}})]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Auto Arm",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:s?"Stop":"Start",selected:s,disabled:p,onClick:function(){return c("time")}}),children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:p||s,onClick:function(){return c("input",{adjust:-30})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:p||s,onClick:function(){return c("input",{adjust:-1})}})," ",String(d).padStart(2,"0"),":",String(u).padStart(2,"0")," ",(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:p||s,onClick:function(){return c("input",{adjust:1})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:p||s,onClick:function(){return c("input",{adjust:30})}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Radio=void 0;var o=n(0),r=n(14),a=n(15),i=n(1),c=n(3),l=n(39),d=n(2);t.Radio=function(e,t){var n=(0,i.useBackend)(t),u=n.act,s=n.data,p=s.freqlock,m=s.frequency,f=s.minFrequency,h=s.maxFrequency,C=s.listening,g=s.broadcasting,b=s.command,N=s.useCommand,v=s.subspace,V=s.subspaceSwitchable,y=l.RADIO_CHANNELS.find((function(e){return e.freq===m})),k=(0,r.map)((function(e,t){return{name:t,status:!!e}}))(s.channels);return(0,o.createComponentVNode)(2,d.Window,{children:(0,o.createComponentVNode)(2,d.Window.Content,{children:(0,o.createComponentVNode)(2,c.Section,{children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Frequency",children:[p&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"light-gray",children:(0,a.toFixed)(m/10,1)+" kHz"})||(0,o.createComponentVNode)(2,c.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:10,minValue:f/10,maxValue:h/10,value:m/10,format:function(e){return(0,a.toFixed)(e,1)},onDrag:function(e,t){return u("frequency",{adjust:t-m/10})}}),y&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:y.color,ml:2,children:["[",y.name,"]"]})]}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Audio",children:[(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:C?"volume-up":"volume-mute",selected:C,onClick:function(){return u("listen")}}),(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:g?"microphone":"microphone-slash",selected:g,onClick:function(){return u("broadcast")}}),!!b&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:N,content:"High volume "+(N?"ON":"OFF"),onClick:function(){return u("command")}}),!!V&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:v,content:"Subspace Tx "+(v?"ON":"OFF"),onClick:function(){return u("subspace")}})]}),!!v&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Channels",children:[0===k.length&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"bad",children:"No encryption keys installed."}),k.map((function(e){return(0,o.createComponentVNode)(2,c.Box,{children:(0,o.createComponentVNode)(2,c.Button,{icon:e.status?"check-square-o":"square-o",selected:e.status,content:e.name,onClick:function(){return u("channel",{channel:e.name})}})},e.name)}))]})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.RadioactiveMicrolaser=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.RadioactiveMicrolaser=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.irradiate,u=l.stealth,s=l.scanmode,p=l.intensity,m=l.wavelength,f=l.on_cooldown,h=l.cooldown;return(0,o.createComponentVNode)(2,i.Window,{theme:"syndicate",children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Laser Status",children:(0,o.createComponentVNode)(2,a.Box,{color:f?"average":"good",children:f?"Recharging":"Ready"})})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Scanner Controls",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Irradiation",children:(0,o.createComponentVNode)(2,a.Button,{icon:d?"power-off":"times",content:d?"On":"Off",selected:d,onClick:function(){return c("irradiate")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Stealth Mode",children:(0,o.createComponentVNode)(2,a.Button,{icon:u?"eye-slash":"eye",content:u?"On":"Off",disabled:!d,selected:u,onClick:function(){return c("stealth")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Scan Mode",children:(0,o.createComponentVNode)(2,a.Button,{icon:s?"mortar-pestle":"heartbeat",content:s?"Scan Reagents":"Scan Health",disabled:d&&u,onClick:function(){return c("scanmode")}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Laser Settings",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Radiation Intensity",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",onClick:function(){return c("radintensity",{adjust:-5})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",onClick:function(){return c("radintensity",{adjust:-1})}})," ",(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(p),width:"40px",minValue:1,maxValue:20,onChange:function(e,t){return c("radintensity",{target:t})}})," ",(0,o.createComponentVNode)(2,a.Button,{icon:"forward",onClick:function(){return c("radintensity",{adjust:1})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",onClick:function(){return c("radintensity",{adjust:5})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Radiation Wavelength",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",onClick:function(){return c("radwavelength",{adjust:-5})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",onClick:function(){return c("radwavelength",{adjust:-1})}})," ",(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(m),width:"40px",minValue:0,maxValue:120,onChange:function(e,t){return c("radwavelength",{target:t})}})," ",(0,o.createComponentVNode)(2,a.Button,{icon:"forward",onClick:function(){return c("radwavelength",{adjust:1})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",onClick:function(){return c("radwavelength",{adjust:5})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Laser Cooldown",children:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,children:h})})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.RapidPipeDispenser=void 0;var o=n(0),r=n(6),a=n(1),i=n(3),c=n(2),l=["Atmospherics","Disposals","Transit Tubes"],d={Atmospherics:"wrench",Disposals:"trash-alt","Transit Tubes":"bus",Pipes:"grip-lines","Disposal Pipes":"grip-lines",Devices:"microchip","Heat Exchange":"thermometer-half","Station Equipment":"microchip"},u={grey:"#bbbbbb",amethyst:"#a365ff",blue:"#4466ff",brown:"#b26438",cyan:"#48eae8",dark:"#808080",green:"#1edd00",orange:"#ffa030",purple:"#b535ea",red:"#ff3333",violet:"#6e00f6",yellow:"#ffce26"},s=[{name:"Dispense",bitmask:1},{name:"Connect",bitmask:2},{name:"Destroy",bitmask:4},{name:"Paint",bitmask:8}];t.RapidPipeDispenser=function(e,t){var n=(0,a.useBackend)(t),p=n.act,m=n.data,f=m.category,h=m.categories,C=void 0===h?[]:h,g=m.selected_color,b=m.piping_layer,N=m.mode,v=m.preview_rows.flatMap((function(e){return e.previews})),V=(0,a.useLocalState)(t,"categoryName"),y=V[0],k=V[1],x=C.find((function(e){return e.cat_name===y}))||C[0];return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Category",children:l.map((function(e,t){return(0,o.createComponentVNode)(2,i.Button,{selected:f===t,icon:d[e],color:"transparent",content:e,onClick:function(){return p("category",{category:t})}},e)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Modes",children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:N&e.bitmask,content:e.name,onClick:function(){return p("mode",{mode:e.bitmask})}},e.bitmask)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Color",children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,width:"64px",color:u[g],children:g}),Object.keys(u).map((function(e){return(0,o.createComponentVNode)(2,i.ColorBox,{ml:1,color:u[e],onClick:function(){return p("color",{paint_color:e})}},e)}))]})]})}),(0,o.createComponentVNode)(2,i.Flex,{m:-.5,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{m:.5,children:(0,o.createComponentVNode)(2,i.Section,{children:[0===f&&(0,o.createComponentVNode)(2,i.Box,{mb:1,children:[1,2,3].map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:e===b,content:"Layer "+e,onClick:function(){return p("piping_layer",{piping_layer:e})}},e)}))}),(0,o.createComponentVNode)(2,i.Box,{width:"108px",children:v.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{title:e.dir_name,selected:e.selected,style:{width:"48px",height:"48px",padding:0},onClick:function(){return p("setdir",{dir:e.dir,flipped:e.flipped})},children:(0,o.createComponentVNode)(2,i.Box,{className:(0,r.classes)(["pipes32x32",e.dir+"-"+e.icon_state]),style:{transform:"scale(1.5) translate(17%, 17%)"}})},e.dir)}))})]})}),(0,o.createComponentVNode)(2,i.Flex.Item,{m:.5,grow:1,children:(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Tabs,{children:C.map((function(e,t){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{fluid:!0,icon:d[e.cat_name],selected:e.cat_name===x.cat_name,onClick:function(){return k(e.cat_name)},children:e.cat_name},e.cat_name)}))}),null==x?void 0:x.recipes.map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,ellipsis:!0,checked:e.selected,content:e.pipe_name,title:e.pipe_name,onClick:function(){return p("pipe_type",{pipe_type:e.pipe_index,category:x.cat_name})}},e.pipe_index)}))]})})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.RemoteRobotControlContent=t.RemoteRobotControl=void 0;var o=n(0),r=n(19),a=n(1),i=n(3),c=n(2);t.RemoteRobotControl=function(e,t){return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,l)})})};var l=function(e,t){var n=(0,a.useBackend)(t),c=n.act,l=n.data.robots,d=void 0===l?[]:l;return d.length?d.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name+" ("+e.model+")",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"tools",content:"Interface",onClick:function(){return c("interface",{ref:e.ref})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"phone-alt",content:"Call",onClick:function(){return c("callbot",{ref:e.ref})}})],4),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"Inactive"===(0,r.decodeHtmlEntities)(e.mode)?"bad":"Idle"===(0,r.decodeHtmlEntities)(e.mode)?"average":"good",children:(0,r.decodeHtmlEntities)(e.mode)})," ",e.hacked&&(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"bad",children:"(HACKED)"})||""]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Location",children:e.location})]})},e.ref)})):(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.NoticeBox,{textAlign:"center",children:"No robots detected"})})};t.RemoteRobotControlContent=l},function(e,t,n){"use strict";t.__esModule=!0,t.RoboticsControlConsole=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.RoboticsControlConsole=function(e,t){var n=(0,r.useBackend)(t),d=(n.act,n.data),u=(0,r.useSharedState)(t,"tab",1),s=u[0],p=u[1],m=d.can_hack,f=d.cyborgs,h=void 0===f?[]:f,C=d.drones,g=void 0===C?[]:C;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:"list",lineHeight:"23px",selected:1===s,onClick:function(){return p(1)},children:["Cyborgs (",h.length,")"]}),(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:"list",lineHeight:"23px",selected:2===s,onClick:function(){return p(2)},children:["Drones (",g.length,")"]})]}),1===s&&(0,o.createComponentVNode)(2,c,{cyborgs:h,can_hack:m}),2===s&&(0,o.createComponentVNode)(2,l,{drones:g})]})})};var c=function(e,t){var n=e.cyborgs,i=e.can_hack,c=(0,r.useBackend)(t),l=c.act;c.data;return n.length?n.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,buttons:(0,o.createFragment)([!!i&&!e.emagged&&(0,o.createComponentVNode)(2,a.Button,{icon:"terminal",content:"Hack",color:"bad",onClick:function(){return l("magbot",{ref:e.ref})}}),(0,o.createComponentVNode)(2,a.Button.Confirm,{icon:e.locked_down?"unlock":"lock",color:e.locked_down?"good":"default",content:e.locked_down?"Release":"Lockdown",onClick:function(){return l("stopbot",{ref:e.ref})}}),(0,o.createComponentVNode)(2,a.Button.Confirm,{icon:"bomb",content:"Detonate",color:"bad",onClick:function(){return l("killbot",{ref:e.ref})}})],0),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:(0,o.createComponentVNode)(2,a.Box,{color:e.status?"bad":e.locked_down?"average":"good",children:e.status?"Not Responding":e.locked_down?"Locked Down":"Nominal"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge",children:(0,o.createComponentVNode)(2,a.Box,{color:e.charge<=30?"bad":e.charge<=70?"average":"good",children:"number"==typeof e.charge?e.charge+"%":"Not Found"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Module",children:e.module}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Master AI",children:(0,o.createComponentVNode)(2,a.Box,{color:e.synchronization?"default":"average",children:e.synchronization||"None"})})]})},e.ref)})):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No cyborg units detected within access parameters"})},l=function(e,t){var n=e.drones,i=(0,r.useBackend)(t).act;return n.length?n.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,buttons:(0,o.createComponentVNode)(2,a.Button.Confirm,{icon:"bomb",content:"Detonate",color:"bad",onClick:function(){return i("killdrone",{ref:e.ref})}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:(0,o.createComponentVNode)(2,a.Box,{color:e.status?"bad":"good",children:e.status?"Not Responding":"Nominal"})})})},e.ref)})):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No drone units detected within access parameters"})}},function(e,t,n){"use strict";t.__esModule=!0,t.Roulette=t.RouletteBetTable=t.RouletteBoard=t.RouletteNumberButton=void 0;var o=n(0),r=n(6),a=n(1),i=n(3),c=n(2),l=function(e){if(0===e)return"green";for(var t=[[1,10],[19,28]],n=!0,o=0;o<t.length;o++){var r=t[o];if(e>=r[0]&&e<=r[1]){n=!1;break}}var a=e%2==0;return(n?a:!a)?"red":"black"},d=function(e,t){var n=e.number,r=(0,a.useBackend)(t).act;return(0,o.createComponentVNode)(2,i.Button,{bold:!0,content:n,color:l(n),width:"40px",height:"28px",fontSize:"20px",textAlign:"center",mb:0,className:"Roulette__board-extrabutton",onClick:function(){return r("ChangeBetType",{type:n})}})};t.RouletteNumberButton=d;var u=function(e,t){var n=(0,a.useBackend)(t).act;return(0,o.createVNode)(1,"table","Table",[(0,o.createVNode)(1,"tr","Roulette__board-row",[(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{content:"0",color:"transparent",height:"88px",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:0})}}),2,{rowSpan:"3"}),[3,6,9,12,15,18,21,24,27,30,33,36].map((function(e){return(0,o.createVNode)(1,"td","Roulette__board-cell Table__cell-collapsing",(0,o.createComponentVNode)(2,d,{number:e}),2,null,e)})),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"2 to 1",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s3rd col"})}}),2)],0),(0,o.createVNode)(1,"tr",null,[[2,5,8,11,14,17,20,23,26,29,32,35].map((function(e){return(0,o.createVNode)(1,"td","Roulette__board-cell Table__cell-collapsing",(0,o.createComponentVNode)(2,d,{number:e}),2,null,e)})),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"2 to 1",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s2nd col"})}}),2)],0),(0,o.createVNode)(1,"tr",null,[[1,4,7,10,13,16,19,22,25,28,31,34].map((function(e){return(0,o.createVNode)(1,"td","Roulette__board-cell Table__cell-collapsing",(0,o.createComponentVNode)(2,d,{number:e}),2,null,e)})),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"2 to 1",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s1st col"})}}),2)],0),(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td"),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"1st 12",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s1-12"})}}),2,{colSpan:"4"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"2nd 12",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s13-24"})}}),2,{colSpan:"4"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"3rd 12",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s25-36"})}}),2,{colSpan:"4"})],4),(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td"),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"1-18",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s1-18"})}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"Even",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"even"})}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"Black",color:"black",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"black"})}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"Red",color:"red",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"red"})}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"Odd",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"odd"})}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"19-36",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s19-36"})}}),2,{colSpan:"2"})],4)],4,{style:{width:"1px"}})};t.RouletteBoard=u;var s=function(e,t){var n=(0,a.useBackend)(t),c=n.act,d=n.data,u=(0,a.useLocalState)(t,"customBet",500),s=u[0],p=u[1],m=d.BetType;return m.startsWith("s")&&(m=m.substring(1,m.length)),(0,o.createVNode)(1,"table","Roulette__lowertable",[(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"th",(0,r.classes)(["Roulette","Roulette__lowertable--cell","Roulette__lowertable--header"]),"Last Spun:",16),(0,o.createVNode)(1,"th",(0,r.classes)(["Roulette","Roulette__lowertable--cell","Roulette__lowertable--header"]),"Current Bet:",16)],4),(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td",(0,r.classes)(["Roulette","Roulette__lowertable--cell","Roulette__lowertable--spinresult","Roulette__lowertable--spinresult-"+l(d.LastSpin)]),d.LastSpin,0),(0,o.createVNode)(1,"td",(0,r.classes)(["Roulette","Roulette__lowertable--cell","Roulette__lowertable--betscell"]),[(0,o.createComponentVNode)(2,i.Box,{bold:!0,mt:1,mb:1,fontSize:"25px",textAlign:"center",children:[d.BetAmount," cr on ",m]}),(0,o.createComponentVNode)(2,i.Box,{ml:1,mr:1,children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Bet 10 cr",onClick:function(){return c("ChangeBetAmount",{amount:10})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Bet 50 cr",onClick:function(){return c("ChangeBetAmount",{amount:50})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Bet 100 cr",onClick:function(){return c("ChangeBetAmount",{amount:100})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Bet 500 cr",onClick:function(){return c("ChangeBetAmount",{amount:500})}}),(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Bet custom amount...",onClick:function(){return c("ChangeBetAmount",{amount:s})}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{size:.1,children:(0,o.createComponentVNode)(2,i.NumberInput,{value:s,minValue:0,maxValue:1e3,step:10,stepPixelSize:4,width:"40px",onChange:function(e,t){return p(t)}})})]})]})],4)],4),(0,o.createVNode)(1,"tr",null,(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,i.Box,{bold:!0,m:1,fontSize:"14px",textAlign:"center",children:"Swipe an ID card with a connected account to spin!"}),2,{colSpan:"2"}),2),(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td","Roulette__lowertable--cell",[(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,mr:1,children:"House Balance:"}),(0,o.createComponentVNode)(2,i.Box,{inline:!0,children:d.HouseBalance?d.HouseBalance+" cr":"None"})],4),(0,o.createVNode)(1,"td","Roulette__lowertable--cell",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:d.IsAnchored?"Bolted":"Unbolted",m:1,color:"transparent",textAlign:"center",onClick:function(){return c("anchor")}}),2)],4)],4)};t.RouletteBetTable=s;t.Roulette=function(e,t){return(0,o.createComponentVNode)(2,c.Window,{theme:"cardtable",children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[(0,o.createComponentVNode)(2,u),(0,o.createComponentVNode)(2,s)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SatelliteControl=void 0;var o=n(0),r=n(1),a=n(3),i=n(172),c=n(2);t.SatelliteControl=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.satellites||[];return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[d.meteor_shield&&(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledListItem,{label:"Coverage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d.meteor_shield_coverage/d.meteor_shield_coverage_max,content:100*d.meteor_shield_coverage/d.meteor_shield_coverage_max+"%",ranges:{good:[1,Infinity],average:[.3,1],bad:[-Infinity,.3]}})})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Satellite Controls",children:(0,o.createComponentVNode)(2,a.Box,{mr:-1,children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.active,content:"#"+e.id+" "+e.mode,onClick:function(){return l("toggle",{id:e.id})}},e.id)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ScannerGate=void 0;var o=n(0),r=n(1),a=n(3),i=n(57),c=n(2),l=["Positive","Harmless","Minor","Medium","Harmful","Dangerous","BIOHAZARD"],d=[{name:"Human",value:"human"},{name:"Lizardperson",value:"lizard"},{name:"Flyperson",value:"fly"},{name:"Felinid",value:"felinid"},{name:"Plasmaman",value:"plasma"},{name:"Mothperson",value:"moth"},{name:"Jellyperson",value:"jelly"},{name:"Podperson",value:"pod"},{name:"Golem",value:"golem"},{name:"Zombie",value:"zombie"}],u=[{name:"Starving",value:150},{name:"Obese",value:600}];t.ScannerGate=function(e,t){var n=(0,r.useBackend)(t),a=n.act,l=n.data;return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{onLockedStatusChange:function(){return a("toggle_lock")}}),!l.locked&&(0,o.createComponentVNode)(2,p)]})})};var s={Off:{title:"Scanner Mode: Off",component:function(){return m}},Wanted:{title:"Scanner Mode: Wanted",component:function(){return f}},Guns:{title:"Scanner Mode: Guns",component:function(){return h}},Mindshield:{title:"Scanner Mode: Mindshield",component:function(){return C}},Disease:{title:"Scanner Mode: Disease",component:function(){return g}},Species:{title:"Scanner Mode: Species",component:function(){return b}},Nutrition:{title:"Scanner Mode: Nutrition",component:function(){return N}},Nanites:{title:"Scanner Mode: Nanites",component:function(){return v}}},p=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data.scan_mode,l=s[c]||s.off,d=l.component();return(0,o.createComponentVNode)(2,a.Section,{title:l.title,buttons:"Off"!==c&&(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"back",onClick:function(){return i("set_mode",{new_mode:"Off"})}}),children:(0,o.createComponentVNode)(2,d)})},m=function(e,t){var n=(0,r.useBackend)(t).act;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:"Select a scanning mode below."}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{content:"Wanted",onClick:function(){return n("set_mode",{new_mode:"Wanted"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Guns",onClick:function(){return n("set_mode",{new_mode:"Guns"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Mindshield",onClick:function(){return n("set_mode",{new_mode:"Mindshield"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Disease",onClick:function(){return n("set_mode",{new_mode:"Disease"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Species",onClick:function(){return n("set_mode",{new_mode:"Species"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Nutrition",onClick:function(){return n("set_mode",{new_mode:"Nutrition"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Nanites",onClick:function(){return n("set_mode",{new_mode:"Nanites"})}})]})],4)},f=function(e,t){var n=(0,r.useBackend)(t).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any warrants for their arrest."]}),(0,o.createComponentVNode)(2,V)],4)},h=function(e,t){var n=(0,r.useBackend)(t).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any guns."]}),(0,o.createComponentVNode)(2,V)],4)},C=function(e,t){var n=(0,r.useBackend)(t).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","a mindshield."]}),(0,o.createComponentVNode)(2,V)],4)},g=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,d=c.reverse,u=c.disease_threshold;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",d?"does not have":"has"," ","a disease equal or worse than ",u,"."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e===u,content:e,onClick:function(){return i("set_disease_threshold",{new_threshold:e})}},e)}))}),(0,o.createComponentVNode)(2,V)],4)},b=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.reverse,u=c.target_species,s=d.find((function(e){return e.value===u}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned is ",l?"not":""," ","of the ",s.name," species.","zombie"===u&&" All zombie types will be detected, including dormant zombies."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.value===u,content:e.name,onClick:function(){return i("set_target_species",{new_species:e.value})}},e.value)}))}),(0,o.createComponentVNode)(2,V)],4)},N=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.reverse,d=c.target_nutrition,s=u.find((function(e){return e.value===d}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","the ",s.name," nutrition level."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.value===d,content:e.name,onClick:function(){return i("set_target_nutrition",{new_nutrition:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,V)],4)},v=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.reverse,d=c.nanite_cloud;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","nanite cloud ",d,"."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:d,width:"65px",minValue:1,maxValue:100,stepPixelSize:2,onChange:function(e,t){return i("set_nanite_cloud",{new_cloud:t})}})})})}),(0,o.createComponentVNode)(2,V)],4)},V=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data.reverse;return(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Scanning Mode",children:(0,o.createComponentVNode)(2,a.Button,{content:c?"Inverted":"Default",icon:c?"random":"long-arrow-alt-right",onClick:function(){return i("toggle_reverse")},color:c?"bad":"good"})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SeedExtractor=void 0;var o=n(0),r=n(14),a=n(31),i=n(19),c=n(1),l=n(3),d=n(2);t.SeedExtractor=function(e,t){var n,u,s=(0,c.useBackend)(t),p=s.act,m=s.data,f=(n=m.seeds,u=Object.keys(n).map((function(e){var t=function(e){var t,n=/([^;=]+)=([^;]+)/g,o={};do{(t=n.exec(e))&&(o[t[1]]=t[2]+"")}while(t);return o}(e);return t.amount=n[e],t.key=e,t.name=(0,i.toTitleCase)(t.name.replace("pack of ","")),t})),(0,a.flow)([(0,r.sortBy)((function(e){return e.name}))])(u));return(0,o.createComponentVNode)(2,d.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,d.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,l.Section,{title:"Stored seeds:",children:(0,o.createComponentVNode)(2,l.Table,{cellpadding:"3",textAlign:"center",children:[(0,o.createComponentVNode)(2,l.Table.Row,{children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Name"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Lifespan"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Endurance"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Maturation"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Production"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Yield"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Potency"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Instability"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Stock"})]}),f.map((function(e){return(0,o.createComponentVNode)(2,l.Table.Row,{children:[(0,o.createComponentVNode)(2,l.Table.Cell,{bold:!0,children:e.name}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.lifespan}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.endurance}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.maturation}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.production}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.yield}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.potency}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.instability}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:[(0,o.createComponentVNode)(2,l.Button,{content:"Vend",onClick:function(){return p("select",{item:e.key})}}),"(",e.amount," left)"]})]},e.key)}))]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ShuttleManipulatorModification=t.ShuttleManipulatorTemplates=t.ShuttleManipulatorStatus=t.ShuttleManipulator=void 0;var o=n(0),r=n(14),a=n(1),i=n(3),c=n(2);t.ShuttleManipulator=function(e,t){var n=(0,a.useLocalState)(t,"tab",1),r=n[0],s=n[1];return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:1===r,onClick:function(){return s(1)},children:"Status"}),(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:2===r,onClick:function(){return s(2)},children:"Templates"}),(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:3===r,onClick:function(){return s(3)},children:"Modification"})]}),1===r&&(0,o.createComponentVNode)(2,l),2===r&&(0,o.createComponentVNode)(2,d),3===r&&(0,o.createComponentVNode)(2,u)]})})};var l=function(e,t){var n=(0,a.useBackend)(t),r=n.act,c=n.data.shuttles||[];return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Table,{children:c.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"JMP",onClick:function(){return r("jump_to",{type:"mobile",id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Fly",disabled:!e.can_fly,onClick:function(){return r("fly",{id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.id}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.status}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:[e.mode,!!e.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),e.timeleft,(0,o.createTextVNode)(")"),(0,o.createComponentVNode)(2,i.Button,{content:"Fast Travel",disabled:!e.can_fast_travel,onClick:function(){return r("fast_travel",{id:e.id})}},e.id)],0)]})]},e.id)}))})})};t.ShuttleManipulatorStatus=l;var d=function(e,t){var n,c=(0,a.useBackend)(t),l=c.act,d=c.data,u=d.templates||{},s=d.selected||{},p=(0,a.useLocalState)(t,"templateId",Object.keys(u)[0]),m=p[0],f=p[1],h=null==(n=u[m])?void 0:n.templates;return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Flex,{children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:m===t,onClick:function(){return f(t)},children:e.port_id},t)}))(u)})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:h.map((function(e){var t=e.shuttle_id===s.shuttle_id;return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{content:t?"Selected":"Select",selected:t,onClick:function(){return l("select_template",{shuttle_id:e.shuttle_id})}}),children:(!!e.description||!!e.admin_notes)&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.description&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:e.description}),!!e.admin_notes&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Admin Notes",children:e.admin_notes})]})},e.shuttle_id)}))})]})})};t.ShuttleManipulatorTemplates=d;var u=function(e,t){var n=(0,a.useBackend)(t),r=n.act,c=n.data,l=c.selected||{},d=c.existing_shuttle||{};return(0,o.createComponentVNode)(2,i.Section,{children:l?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{level:2,title:l.name,children:(!!l.description||!!l.admin_notes)&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!l.description&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:l.description}),!!l.admin_notes&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Admin Notes",children:l.admin_notes})]})}),d?(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Existing Shuttle: "+d.name,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Jump To",onClick:function(){return r("jump_to",{type:"mobile",id:d.id})}}),children:[d.status,!!d.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),d.timeleft,(0,o.createTextVNode)(")")],0)]})})}):(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Existing Shuttle: None"}),(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Status",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Preview",onClick:function(){return r("preview",{shuttle_id:l.shuttle_id})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Load",color:"bad",onClick:function(){return r("load",{shuttle_id:l.shuttle_id})}})]})],0):"No shuttle selected"})};t.ShuttleManipulatorModification=u},function(e,t,n){"use strict";t.__esModule=!0,t.Signaler=void 0;var o=n(0),r=n(3),a=n(1),i=n(15),c=n(2);t.Signaler=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data,u=d.code,s=d.frequency,p=d.minFrequency,m=d.maxFrequency;return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Grid,{children:[(0,o.createComponentVNode)(2,r.Grid.Column,{size:1.4,color:"label",children:"Frequency:"}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:6,minValue:p/10,maxValue:m/10,value:s/10,format:function(e){return(0,i.toFixed)(e,1)},width:"80px",onDrag:function(e,t){return l("freq",{freq:t})}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return l("reset",{reset:"freq"})}})})]}),(0,o.createComponentVNode)(2,r.Grid,{mt:.6,children:[(0,o.createComponentVNode)(2,r.Grid.Column,{size:1.4,color:"label",children:"Code:"}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.NumberInput,{animate:!0,step:1,stepPixelSize:6,minValue:1,maxValue:100,value:u,width:"80px",onDrag:function(e,t){return l("code",{code:t})}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return l("reset",{reset:"code"})}})})]}),(0,o.createComponentVNode)(2,r.Grid,{mt:.8,children:(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{mb:-.1,fluid:!0,icon:"arrow-up",content:"Send Signal",textAlign:"center",onClick:function(){return l("signal")}})})})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SkillPanel=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c={color:"lightgreen",fontWeight:"bold"},l={color:"#FFDB58",fontWeight:"bold"};t.SkillPanel=function(e,t){var n=(0,r.useBackend)(t),u=n.act,s=n.data.skills||[];return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{title:s.playername,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:s.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:[(0,o.createVNode)(1,"span",null,e.desc,0,{style:l}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,d,{skill_lvl_num:e.lvlnum,skill_lvl:e.lvl}),(0,o.createVNode)(1,"br"),"Total Experience: [",e.exp," XP]",(0,o.createVNode)(1,"br"),"XP To Next Level:\xa0",0!==e.exp_req?(0,o.createVNode)(1,"span",null,[(0,o.createTextVNode)("["),e.exp_prog,(0,o.createTextVNode)(" / "),e.exp_req,(0,o.createTextVNode)("]")],0):(0,o.createVNode)(1,"span",null,"[MAXXED]",16,{style:c}),(0,o.createVNode)(1,"br"),"Overall Skill Progress: [",e.exp," / ",e.max_exp,"]",(0,o.createComponentVNode)(2,a.ProgressBar,{value:e.exp_percent,color:"good"}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{content:"Adjust Exp",onClick:function(){return u("adj_exp",{skill:e.path})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Set Exp",onClick:function(){return u("set_exp",{skill:e.path})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Set Level",onClick:function(){return u("set_lvl",{skill:e.path})}}),(0,o.createVNode)(1,"br"),(0,o.createVNode)(1,"br")]},e.name)}))})})})})};var d=function(e,t){var n=(0,r.useBackend)(t),a=(n.act,n.data,e.skill_lvl_num),i=e.skill_lvl,c="font-weight:bold; color:hsl("+50*a+", 50%, 50%)";return(0,o.createVNode)(1,"span",null,[(0,o.createTextVNode)("Level: ["),(0,o.createVNode)(1,"span",null,i,0,{style:c}),(0,o.createTextVNode)("]")],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Sleeper=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Sleeper=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.open,u=l.occupant,s=void 0===u?{}:u,p=l.occupied,m=(l.chems||[]).sort((function(e,t){var n=e.name.toLowerCase(),o=t.name.toLowerCase();return n<o?-1:n>o?1:0}));return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:s.name?s.name:"No Occupant",minHeight:"210px",buttons:!!s.stat&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,color:s.statstate,children:s.stat}),children:!!p&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.ProgressBar,{value:s.health,minValue:s.minHealth,maxValue:s.maxHealth,ranges:{good:[50,Infinity],average:[0,50],bad:[-Infinity,0]}}),(0,o.createComponentVNode)(2,a.Box,{mt:1}),(0,o.createComponentVNode)(2,a.LabeledList,{children:[[{label:"Brute",type:"bruteLoss"},{label:"Burn",type:"fireLoss"},{label:"Toxin",type:"toxLoss"},{label:"Oxygen",type:"oxyLoss"}].map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:s[e.type],minValue:0,maxValue:s.maxHealth,color:"bad"})},e.type)})),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cells",color:s.cloneLoss?"bad":"good",children:s.cloneLoss?"Damaged":"Healthy"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Brain",color:s.brainLoss?"bad":"good",children:s.brainLoss?"Abnormal":"Healthy"})]})],4)}),(0,o.createComponentVNode)(2,a.Section,{title:"Medicines",minHeight:"205px",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d?"door-open":"door-closed",content:d?"Open":"Closed",onClick:function(){return c("door")}}),children:m.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:"flask",content:e.name,disabled:!(p&&e.allowed),width:"140px",onClick:function(){return c("inject",{chem:e.id})}},e.name)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SlimeBodySwapper=t.BodyEntry=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=function(e,t){var n=e.body,r=e.swapFunc;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:n.htmlcolor,children:n.name}),level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{content:{owner:"You Are Here",stranger:"Occupied",available:"Swap"}[n.occupied],selected:"owner"===n.occupied,color:"stranger"===n.occupied&&"bad",onClick:function(){return r()}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",bold:!0,color:{Dead:"bad",Unconscious:"average",Conscious:"good"}[n.status],children:n.status}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Jelly",children:n.exoticblood}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Location",children:n.area})]})})};t.BodyEntry=c;t.SlimeBodySwapper=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data.bodies,u=void 0===d?[]:d;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{children:u.map((function(e){return(0,o.createComponentVNode)(2,c,{body:e,swapFunc:function(){return l("swap",{ref:e.ref})}},e.name)}))})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SmartVend=void 0;var o=n(0),r=n(14),a=n(1),i=n(3),c=n(2);t.SmartVend=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data;return(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{title:"Storage",buttons:!!d.isdryer&&(0,o.createComponentVNode)(2,i.Button,{icon:d.drying?"stop":"tint",onClick:function(){return l("Dry")},children:d.drying?"Stop drying":"Dry"}),children:0===d.contents.length&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:["Unfortunately, this ",d.name," is empty."]})||(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Item"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"center",children:d.verb?d.verb:"Dispense"})]}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:e.amount}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.Button,{content:"One",disabled:e.amount<1,onClick:function(){return l("Release",{name:e.name,amount:1})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Many",disabled:e.amount<=1,onClick:function(){return l("Release",{name:e.name})}})]})]},t)}))(d.contents)]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Smes=void 0;var o=n(0),r=n(1),a=n(3),i=n(45),c=n(2);t.Smes=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.capacityPercent,s=(d.capacity,d.charge),p=d.inputAttempt,m=d.inputting,f=d.inputLevel,h=d.inputLevelMax,C=d.inputAvailable,g=d.outputAttempt,b=d.outputting,N=d.outputLevel,v=d.outputLevelMax,V=d.outputUsed,y=(u>=100?"good":m&&"average")||"bad",k=(b?"good":s>0&&"average")||"bad";return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Stored Energy",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:.01*u,ranges:{good:[.5,Infinity],average:[.15,.5],bad:[-Infinity,.15]}})}),(0,o.createComponentVNode)(2,a.Section,{title:"Input",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:p?"sync-alt":"times",selected:p,onClick:function(){return l("tryinput")},children:p?"Auto":"Off"}),children:(0,o.createComponentVNode)(2,a.Box,{color:y,children:(u>=100?"Fully Charged":m&&"Charging")||"Not Charging"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Input",children:(0,o.createComponentVNode)(2,a.Flex,{inline:!0,width:"100%",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:0===f,onClick:function(){return l("input",{target:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:0===f,onClick:function(){return l("input",{adjust:-1e4})}})]}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,mx:1,children:(0,o.createComponentVNode)(2,a.Slider,{value:f/1e3,fillValue:C/1e3,minValue:0,maxValue:h/1e3,step:5,stepPixelSize:4,format:function(e){return(0,i.formatPower)(1e3*e,1)},onDrag:function(e,t){return l("input",{target:1e3*t})}})}),(0,o.createComponentVNode)(2,a.Flex.Item,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:f===h,onClick:function(){return l("input",{adjust:1e4})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:f===h,onClick:function(){return l("input",{target:"max"})}})]})]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Available",children:(0,i.formatPower)(C)})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Output",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Mode",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:g?"power-off":"times",selected:g,onClick:function(){return l("tryoutput")},children:g?"On":"Off"}),children:(0,o.createComponentVNode)(2,a.Box,{color:k,children:b?"Sending":s>0?"Not Sending":"No Charge"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Output",children:(0,o.createComponentVNode)(2,a.Flex,{inline:!0,width:"100%",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:0===N,onClick:function(){return l("output",{target:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:0===N,onClick:function(){return l("output",{adjust:-1e4})}})]}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,mx:1,children:(0,o.createComponentVNode)(2,a.Slider,{value:N/1e3,minValue:0,maxValue:v/1e3,step:5,stepPixelSize:4,format:function(e){return(0,i.formatPower)(1e3*e,1)},onDrag:function(e,t){return l("output",{target:1e3*t})}})}),(0,o.createComponentVNode)(2,a.Flex.Item,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:N===v,onClick:function(){return l("output",{adjust:1e4})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:N===v,onClick:function(){return l("output",{target:"max"})}})]})]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Outputting",children:(0,i.formatPower)(V)})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SmokeMachine=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.SmokeMachine=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.TankContents,u=(l.isTankLoaded,l.TankCurrentVolume),s=l.TankMaxVolume,p=l.active,m=l.setting,f=(l.screen,l.maxSetting),h=void 0===f?[]:f;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Dispersal Tank",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:p?"power-off":"times",selected:p,content:p?"On":"Off",onClick:function(){return c("power")}}),children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:u/s,ranges:{bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{initial:0,value:u||0})," / "+s]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Range",children:[1,2,3,4,5].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{selected:m===e,icon:"plus",content:3*e,disabled:h<e,onClick:function(){return c("setting",{amount:e})}},e)}))})})})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Contents",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:"Purge",onClick:function(){return c("purge")}}),children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{color:"label",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{initial:0,value:e.volume})," ","units of ",e.name]},e.name)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SolarControl=void 0;var o=n(0),r=(n(15),n(1)),a=n(3),i=n(2);t.SolarControl=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.generated,u=l.generated_ratio,s=l.azimuth_current,p=l.azimuth_rate,m=l.max_rotation_rate,f=l.tracking_state,h=l.connected_panels,C=l.connected_tracker;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Scan for new hardware",onClick:function(){return c("refresh")}}),children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Solar tracker",color:C?"good":"bad",children:C?"OK":"N/A"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Solar panels",color:h>0?"good":"bad",children:h})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.5,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power output",children:(0,o.createComponentVNode)(2,a.ProgressBar,{ranges:{good:[.66,Infinity],average:[.33,.66],bad:[-Infinity,.33]},minValue:0,maxValue:1,value:u,children:d+" W"})})})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Controls",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Tracking",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Off",selected:0===f,onClick:function(){return c("tracking",{mode:0})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:"Timed",selected:1===f,onClick:function(){return c("tracking",{mode:1})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Auto",selected:2===f,disabled:!C,onClick:function(){return c("tracking",{mode:2})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Azimuth",children:[(0===f||1===f)&&(0,o.createComponentVNode)(2,a.NumberInput,{width:"52px",unit:"\xb0",step:1,stepPixelSize:2,minValue:-360,maxValue:720,value:s,onDrag:function(e,t){return c("azimuth",{value:t})}}),1===f&&(0,o.createComponentVNode)(2,a.NumberInput,{width:"80px",unit:"\xb0/m",step:.01,stepPixelSize:1,minValue:-m-.01,maxValue:m+.01,value:p,format:function(e){return(Math.sign(e)>0?"+":"-")+Math.abs(e)},onDrag:function(e,t){return c("azimuth_rate",{value:t})}}),2===f&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mt:"3px",children:[s+" \xb0"," (auto)"]})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SpaceHeater=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.SpaceHeater=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Power",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject Cell",disabled:!l.hasPowercell||!l.open,onClick:function(){return c("eject")}}),(0,o.createComponentVNode)(2,a.Button,{icon:l.on?"power-off":"times",content:l.on?"On":"Off",selected:l.on,disabled:!l.hasPowercell,onClick:function(){return c("power")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cell",color:!l.hasPowercell&&"bad",children:l.hasPowercell&&(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.powerLevel/100,ranges:{good:[.6,Infinity],average:[.3,.6],bad:[-Infinity,.3]},children:l.powerLevel+"%"})||"None"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Thermostat",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Temperature",children:(0,o.createComponentVNode)(2,a.Box,{fontSize:"18px",color:Math.abs(l.targetTemp-l.currentTemp)>50?"bad":Math.abs(l.targetTemp-l.currentTemp)>20?"average":"good",children:[l.currentTemp,"\xb0C"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:l.open&&(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(l.targetTemp),width:"65px",unit:"\xb0C",minValue:l.minTemp,maxValue:l.maxTemp,onChange:function(e,t){return c("target",{target:t})}})||l.targetTemp+"\xb0C"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",children:l.open?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"thermometer-half",content:"Auto",selected:"auto"===l.mode,onClick:function(){return c("mode",{mode:"auto"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fire-alt",content:"Heat",selected:"heat"===l.mode,onClick:function(){return c("mode",{mode:"heat"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fan",content:"Cool",selected:"cool"===l.mode,onClick:function(){return c("mode",{mode:"cool"})}})],4):"Auto"}),(0,o.createComponentVNode)(2,a.LabeledList.Divider)]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SpawnersMenu=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.SpawnersMenu=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data.spawners||[];return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name+" ("+e.amount_left+" left)",level:2,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"Jump",onClick:function(){return c("jump",{name:e.name})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Spawn",onClick:function(){return c("spawn",{name:e.name})}})],4),children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,mb:1,fontSize:"20px",children:e.short_desc}),(0,o.createComponentVNode)(2,a.Box,{children:e.flavor_text}),!!e.important_info&&(0,o.createComponentVNode)(2,a.Box,{mt:1,bold:!0,color:"bad",fontSize:"26px",children:e.important_info})]},e.name)}))})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SuitStorageUnit=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.SuitStorageUnit=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.locked,u=l.open,s=l.safeties,p=l.uv_active,m=l.occupied,f=l.suit,h=l.helmet,C=l.mask,g=l.storage;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[!(!m||!s)&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Biological entity detected in suit chamber. Please remove before continuing with operation."}),p&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Contents are currently being decontaminated. Please wait."})||(0,o.createComponentVNode)(2,a.Section,{title:"Storage",minHeight:"260px",buttons:(0,o.createFragment)([!u&&(0,o.createComponentVNode)(2,a.Button,{icon:d?"unlock":"lock",content:d?"Unlock":"Lock",onClick:function(){return c("lock")}}),!d&&(0,o.createComponentVNode)(2,a.Button,{icon:u?"sign-out-alt":"sign-in-alt",content:u?"Close":"Open",onClick:function(){return c("door")}})],0),children:d&&(0,o.createComponentVNode)(2,a.Box,{mt:6,bold:!0,textAlign:"center",fontSize:"40px",children:[(0,o.createComponentVNode)(2,a.Box,{children:"Unit Locked"}),(0,o.createComponentVNode)(2,a.Icon,{name:"lock"})]})||u&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Helmet",children:(0,o.createComponentVNode)(2,a.Button,{icon:h?"square":"square-o",content:h||"Empty",disabled:!h,onClick:function(){return c("dispense",{item:"helmet"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Suit",children:(0,o.createComponentVNode)(2,a.Button,{icon:f?"square":"square-o",content:f||"Empty",disabled:!f,onClick:function(){return c("dispense",{item:"suit"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mask",children:(0,o.createComponentVNode)(2,a.Button,{icon:C?"square":"square-o",content:C||"Empty",disabled:!C,onClick:function(){return c("dispense",{item:"mask"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Storage",children:(0,o.createComponentVNode)(2,a.Button,{icon:g?"square":"square-o",content:g||"Empty",disabled:!g,onClick:function(){return c("dispense",{item:"storage"})}})})]})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"recycle",content:"Decontaminate",disabled:m&&s,textAlign:"center",onClick:function(){return c("uv")}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SyndPane=t.StatusPane=t.SyndContractorContent=t.SyndContractor=t.FakeTerminal=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);var c=function(e){var t,n;function r(t){var n;return(n=e.call(this,t)||this).timer=null,n.state={currentIndex:0,currentDisplay:[]},n}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var i=r.prototype;return i.tick=function(){var e=this.props,t=this.state;t.currentIndex<=e.allMessages.length?(this.setState((function(e){return{currentIndex:e.currentIndex+1}})),t.currentDisplay.push(e.allMessages[t.currentIndex])):(clearTimeout(this.timer),setTimeout(e.onFinished,e.finishedTimeout))},i.componentDidMount=function(){var e=this,t=this.props.linesPerSecond,n=void 0===t?2.5:t;this.timer=setInterval((function(){return e.tick()}),1e3/n)},i.componentWillUnmount=function(){clearTimeout(this.timer)},i.render=function(){return(0,o.createComponentVNode)(2,a.Box,{m:1,children:this.state.currentDisplay.map((function(e){return(0,o.createFragment)([e,(0,o.createVNode)(1,"br")],0,e)}))})},r}(o.Component);t.FakeTerminal=c;t.SyndContractor=function(e,t){return(0,o.createComponentVNode)(2,i.NtosWindow,{theme:"syndicate",resizable:!0,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,l)})})};var l=function(e,t){var n=(0,r.useBackend)(t),i=n.data,l=n.act,d=["Recording biometric data...","Analyzing embedded syndicate info...","STATUS CONFIRMED","Contacting syndicate database...","Awaiting response...","Awaiting response...","Awaiting response...","Awaiting response...","Awaiting response...","Awaiting response...","Response received, ack 4851234...","CONFIRM ACC "+Math.round(2e4*Math.random()),"Setting up private accounts...","CONTRACTOR ACCOUNT CREATED","Searching for available contracts...","Searching for available contracts...","Searching for available contracts...","Searching for available contracts...","CONTRACTS FOUND","WELCOME, AGENT"],s=!!i.error&&(0,o.createComponentVNode)(2,a.Modal,{backgroundColor:"red",children:(0,o.createComponentVNode)(2,a.Flex,{align:"center",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{mr:2,children:(0,o.createComponentVNode)(2,a.Icon,{size:4,name:"exclamation-triangle"})}),(0,o.createComponentVNode)(2,a.Flex.Item,{mr:2,grow:1,textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Box,{width:"260px",textAlign:"left",minHeight:"80px",children:i.error}),(0,o.createComponentVNode)(2,a.Button,{content:"Dismiss",onClick:function(){return l("PRG_clear_error")}})]})]})});return i.logged_in?i.logged_in&&i.first_load?(0,o.createComponentVNode)(2,a.Box,{backgroundColor:"rgba(0, 0, 0, 0.8)",minHeight:"525px",children:(0,o.createComponentVNode)(2,c,{allMessages:d,finishedTimeout:3e3,onFinished:function(){return l("PRG_set_first_load_finished")}})}):i.info_screen?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{backgroundColor:"rgba(0, 0, 0, 0.8)",minHeight:"500px",children:(0,o.createComponentVNode)(2,c,{allMessages:["SyndTract v2.0","","We've identified potentional high-value targets that are","currently assigned to your mission area. They are believed","to hold valuable information which could be of immediate","importance to our organisation.","","Listed below are all of the contracts available to you. You","are to bring the specified target to the designated","drop-off, and contact us via this uplink. We will send","a specialised extraction unit to put the body into.","","We want targets alive - but we will sometimes pay slight","amounts if they're not, you just won't recieve the shown","bonus. You can redeem your payment through this uplink in","the form of raw telecrystals, which can be put into your","regular Syndicate uplink to purchase whatever you may need.","We provide you with these crystals the moment you send the","target up to us, which can be collected at anytime through","this system.","","Targets extracted will be ransomed back to the station once","their use to us is fulfilled, with us providing you a small","percentage cut. You may want to be mindful of them","identifying you when they come back. We provide you with","a standard contractor loadout, which will help cover your","identity."],linesPerSecond:10})}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"CONTINUE",color:"transparent",textAlign:"center",onClick:function(){return l("PRG_toggle_info")}})],4):(0,o.createFragment)([s,(0,o.createComponentVNode)(2,u)],0):(0,o.createComponentVNode)(2,a.Section,{minHeight:"525px",children:[(0,o.createComponentVNode)(2,a.Box,{width:"100%",textAlign:"center",children:(0,o.createComponentVNode)(2,a.Button,{content:"REGISTER USER",color:"transparent",onClick:function(){return l("PRG_login")}})}),!!i.error&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:i.error})]})};t.SyndContractorContent=l;var d=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createFragment)([(0,o.createTextVNode)("Contractor Status"),(0,o.createComponentVNode)(2,a.Button,{content:"View Information Again",color:"transparent",mb:0,ml:1,onClick:function(){return i("PRG_toggle_info")}})],4),buttons:(0,o.createComponentVNode)(2,a.Box,{bold:!0,mr:1,children:[c.contract_rep," Rep"]}),children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:.85,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"TC Availible",buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Claim",disabled:c.redeemable_tc<=0,onClick:function(){return i("PRG_redeem_TC")}}),children:c.redeemable_tc}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"TC Earned",children:c.earned_tc})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Contracts Completed",children:c.contracts_completed}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Status",children:"ACTIVE"})]})})]})})};t.StatusPane=d;var u=function(e,t){var n=(0,r.useLocalState)(t,"tab",1),i=n[0],c=n[1];return(0,o.createFragment)([(0,o.createComponentVNode)(2,d,{state:e.state}),(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:1===i,onClick:function(){return c(1)},children:"Contracts"}),(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:2===i,onClick:function(){return c(2)},children:"Hub"})]}),1===i&&(0,o.createComponentVNode)(2,s),2===i&&(0,o.createComponentVNode)(2,p)],0)};t.SyndPane=u;var s=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.contracts||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Availible Contracts",buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Call Extraction",disabled:!c.ongoing_contract||c.extraction_enroute,onClick:function(){return i("PRG_call_extraction")}}),children:l.map((function(e){if(!c.ongoing_contract||2===e.status){var t=e.status>1;if(!(e.status>=5))return(0,o.createComponentVNode)(2,a.Section,{title:e.target?e.target+" ("+e.target_rank+")":"Invalid Target",level:t?1:2,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:[e.payout," (+",e.payout_bonus,") TC"]}),(0,o.createComponentVNode)(2,a.Button,{content:t?"Abort":"Accept",disabled:e.extraction_enroute,color:t&&"bad",onClick:function(){return i("PRG_contract"+(t?"_abort":"-accept"),{contract_id:e.id})}})],4),children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:e.message}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:.5,children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,mb:1,children:"Dropoff Location:"}),(0,o.createComponentVNode)(2,a.Box,{children:e.dropoff})]})]})},e.target)}}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Dropoff Locator",textAlign:"center",opacity:c.ongoing_contract?100:0,children:(0,o.createComponentVNode)(2,a.Box,{bold:!0,children:c.dropoff_direction})})],4)},p=function(e,t){var n=(0,r.useBackend)(t),i=n.act,c=n.data,l=c.contractor_hub_items||[];return(0,o.createComponentVNode)(2,a.Section,{children:l.map((function(e){var t=e.cost?e.cost+" Rep":"FREE",n=-1!==e.limited;return(0,o.createComponentVNode)(2,a.Section,{title:e.name+" - "+t,level:2,buttons:(0,o.createFragment)([n&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:[e.limited," remaining"]}),(0,o.createComponentVNode)(2,a.Button,{content:"Purchase",disabled:c.contract_rep<e.cost||n&&e.limited<=0,onClick:function(){return i("buy_hub",{item:e.name,cost:e.cost})}})],0),children:(0,o.createComponentVNode)(2,a.Table,{children:(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Icon,{fontSize:"60px",name:e.item_icon})}),(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",children:e.desc})]})})},e.name)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.TachyonArrayContent=t.TachyonArray=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.TachyonArray=function(e,t){var n=(0,r.useBackend)(t),l=(n.act,n.data.records),d=void 0===l?[]:l;return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:d.length?(0,o.createComponentVNode)(2,c):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Records"})})})};var c=function(e,t){var n,i=(0,r.useBackend)(t),c=i.act,l=i.data.records,d=void 0===l?[]:l,u=(0,r.useSharedState)(t,"record",null==(n=d[0])?void 0:n.name),s=u[0],p=u[1],m=d.find((function(e){return e.name===s}));return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:"file",selected:e.name===s,onClick:function(){return p(e.name)},children:e.name},e.name)}))})}),m?(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Section,{level:"2",title:m.name,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Confirm,{icon:"trash",content:"Delete",color:"bad",onClick:function(){return c("delete_record",{ref:m.ref})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"print",content:"Print",onClick:function(){return c("print_record",{ref:m.ref})}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Timestamp",children:m.timestamp}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Coordinates",children:m.coordinates}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Displacement",children:[m.displacement," seconds"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Epicenter Radius",children:[m.factual_epicenter_radius,m.theory_epicenter_radius&&" (Theoretical: "+m.theory_epicenter_radius+")"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Outer Radius",children:[m.factual_outer_radius,m.theory_outer_radius&&" (Theoretical: "+m.theory_outer_radius+")"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shockwave Radius",children:[m.factual_shockwave_radius,m.theory_shockwave_radius&&" (Theoretical: "+m.theory_shockwave_radius+")"]})]})})}):(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Record Selected"})})]})})};t.TachyonArrayContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.Tank=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Tank=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.tankPressure/1013,ranges:{good:[.35,Infinity],average:[.15,.35],bad:[-Infinity,.15]},children:l.tankPressure+" kPa"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:l.ReleasePressure===l.minReleasePressure,onClick:function(){return c("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(l.releasePressure),width:"65px",unit:"kPa",minValue:l.minReleasePressure,maxValue:l.maxReleasePressure,onChange:function(e,t){return c("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:l.ReleasePressure===l.maxReleasePressure,onClick:function(){return c("pressure",{pressure:"max"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"",disabled:l.ReleasePressure===l.defaultReleasePressure,onClick:function(){return c("pressure",{pressure:"reset"})}})]})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TankDispenser=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.TankDispenser=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Plasma",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.plasma?"square":"square-o",content:"Dispense",disabled:!l.plasma,onClick:function(){return c("plasma")}}),children:l.plasma}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Oxygen",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.oxygen?"square":"square-o",content:"Dispense",disabled:!l.oxygen,onClick:function(){return c("oxygen")}}),children:l.oxygen})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Teleporter=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Teleporter=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.calibrated,u=l.calibrating,s=l.power_station,p=l.regime_set,m=l.teleporter_hub,f=l.target;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:!s&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",textAlign:"center",children:"No power station linked."})||!m&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",textAlign:"center",children:"No hub linked."})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Regime",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Change Regime",onClick:function(){return c("regimeset")}}),children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Target",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Set Target",onClick:function(){return c("settarget")}}),children:f}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Calibration",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Calibrate Hub",onClick:function(){return c("calibrate")}}),children:u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"In Progress"})||d&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Optimal"})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Sub-Optimal"})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ThermoMachine=void 0;var o=n(0),r=n(15),a=n(1),i=n(3),c=n(2);t.ThermoMachine=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data;return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Status",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:d.temperature,format:function(e){return(0,r.toFixed)(e,2)}})," K"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:d.pressure,format:function(e){return(0,r.toFixed)(e,2)}})," kPa"]})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d.on?"power-off":"times",content:d.on?"On":"Off",selected:d.on,onClick:function(){return l("power")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:Math.round(d.target),unit:"K",width:"62px",minValue:Math.round(d.min),maxValue:Math.round(d.max),step:5,stepPixelSize:3,onDrag:function(e,t){return l("target",{target:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",disabled:d.target===d.min,title:"Minimum temperature",onClick:function(){return l("target",{target:d.min})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",disabled:d.target===d.initial,title:"Room Temperature",onClick:function(){return l("target",{target:d.initial})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",disabled:d.target===d.max,title:"Maximum Temperature",onClick:function(){return l("target",{target:d.max})}})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Timer=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Timer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.minutes,u=l.seconds,s=l.timing,p=l.loop;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Timing Unit",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:p?"Repeating":"Repeat",selected:p,onClick:function(){return c("repeat")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:s?"Stop":"Start",selected:s,onClick:function(){return c("time")}})],4),children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:s,onClick:function(){return c("input",{adjust:-30})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:s,onClick:function(){return c("input",{adjust:-1})}})," ",String(d).padStart(2,"0"),":",String(u).padStart(2,"0")," ",(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:s,onClick:function(){return c("input",{adjust:1})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:s,onClick:function(){return c("input",{adjust:30})}})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TransferValve=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.TransferValve=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.tank_one,u=l.tank_two,s=l.attached_device,p=l.valve;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Valve Status",children:(0,o.createComponentVNode)(2,a.Button,{icon:p?"unlock":"lock",content:p?"Open":"Closed",disabled:!d||!u,onClick:function(){return c("toggle")}})})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Valve Attachment",buttons:(0,o.createComponentVNode)(2,a.Button,{textAlign:"center",width:"30px",icon:"cog",disabled:!s,onClick:function(){return c("device")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:s?(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Attachment",children:(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",content:s,disabled:!s,onClick:function(){return c("remove_device")}})}):(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Insert Assembly"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Attachment One",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:d?(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Attachment",children:(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",content:d,disabled:!d,onClick:function(){return c("tankone")}})}):(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Insert Tank"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Attachment Two",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:u?(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Attachment",children:(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",content:u,disabled:!u,onClick:function(){return c("tanktwo")}})}):(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Insert Tank"})})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TurbineComputer=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.TurbineComputer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=Boolean(l.compressor&&!l.compressor_broke&&l.turbine&&!l.turbine_broke);return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:l.online?"power-off":"times",content:l.online?"Online":"Offline",selected:l.online,disabled:!d,onClick:function(){return c("toggle_power")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reconnect",onClick:function(){return c("reconnect")}})],4),children:!d&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Compressor Status",color:!l.compressor||l.compressor_broke?"bad":"good",children:l.compressor_broke?l.compressor?"Offline":"Missing":"Online"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turbine Status",color:!l.turbine||l.turbine_broke?"bad":"good",children:l.turbine_broke?l.turbine?"Offline":"Missing":"Online"})]})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turbine Speed",children:[l.rpm," RPM"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Internal Temp",children:[l.temp," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Generated Power",children:l.power})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TurretControl=void 0;var o=n(0),r=n(1),a=n(3),i=n(2),c=n(57);t.TurretControl=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.locked&&!d.siliconUser,s=d.enabled,p=d.lethal,m=d.shootCyborgs;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,c.InterfaceLockNoticeBox),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turret Status",children:(0,o.createComponentVNode)(2,a.Button,{icon:s?"power-off":"times",content:s?"Enabled":"Disabled",selected:s,disabled:u,onClick:function(){return l("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turret Mode",children:(0,o.createComponentVNode)(2,a.Button,{icon:p?"exclamation-triangle":"minus-circle",content:p?"Lethal":"Stun",color:p?"bad":"average",disabled:u,onClick:function(){return l("mode")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Cyborgs",children:(0,o.createComponentVNode)(2,a.Button,{icon:m?"check":"times",content:m?"Yes":"No",selected:m,disabled:u,onClick:function(){return l("shoot_silicons")}})})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.VaultController=void 0;var o=n(0),r=n(15),a=n(1),i=n(3),c=n(2);t.VaultController=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data;return(0,o.createComponentVNode)(2,c.Window,{children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Lock Status: ",buttons:(0,o.createComponentVNode)(2,i.Button,{content:d.doorstatus?"Locked":"Unlocked",icon:d.doorstatus?"lock":"unlock",disabled:d.stored<d.max,onClick:function(){return l("togglelock")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Charge",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:d.stored/d.max,ranges:{good:[1,Infinity],average:[.3,1],bad:[-Infinity,.3]},children:(0,r.toFixed)(d.stored/1e3)+" / "+(0,r.toFixed)(d.max/1e3)+" kW"})})})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Vendatray=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);n(57);t.Vendatray=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=(d.locked&&d.siliconUser,d.product_name),s=d.product_cost,p=d.tray_open,m=d.registered,f=d.owner_name;return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Flex,{mb:1,children:[(0,o.createComponentVNode)(2,a.Flex.Item,{mr:1,children:!!u&&(0,o.createComponentVNode)(2,c)}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,children:[(0,o.createComponentVNode)(2,a.Section,{fontSize:"18px",align:"center",children:[(0,o.createVNode)(1,"b",null,u||"Empty",0),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",children:[(0,o.createVNode)(1,"i",null,[u?s:"N/A",(0,o.createTextVNode)(" cr ")],0),(0,o.createComponentVNode)(2,a.Button,{icon:"pen",onClick:function(){return l("Adjust")}})]})]}),(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"window-restore",content:p?"Open":"Closed",selected:p,onClick:function(){return l("Open")}}),(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,icon:"money-bill-wave",content:"Purchase Item",disabled:!u,onClick:function(){return l("Buy")}})],4)]})]}),m?(0,o.createComponentVNode)(2,a.Section,{italics:!0,children:["Pays to the account of ",f,"."]}):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:"Tray is unregistered."}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"cash-register",content:"Register Tray",disabled:m,onClick:function(){return l("Register")}})],4)]})})};var c=function(e,t){var n=(0,r.useBackend)(t).data.product_icon;return(0,o.createComponentVNode)(2,a.Section,{height:"100%",children:(0,o.createComponentVNode)(2,a.Box,{as:"img",m:1,src:"data:image/jpeg;base64,"+n,height:"96px",width:"96px",style:{"-ms-interpolation-mode":"nearest-neighbor","vertical-align":"middle"}})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Vending=void 0;var o=n(0),r=n(6),a=n(1),i=n(3),c=n(2),l=function(e,t){var n=(0,a.useBackend)(t),c=n.act,l=n.data,d=e.product,u=e.productStock,s=e.custom,p=!l.onstation||0===d.price||!d.premium&&l.department&&l.user&&l.department===l.user.department;return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:d.base64?(0,o.createVNode)(1,"img",null,null,1,{src:"data:image/jpeg;base64,"+d.img,style:{"vertical-align":"middle","horizontal-align":"middle"}}):(0,o.createVNode)(1,"span",(0,r.classes)(["vending32x32",d.path]),null,1,{style:{"vertical-align":"middle","horizontal-align":"middle"}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,children:d.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"center",children:(0,o.createComponentVNode)(2,i.Box,{color:s?"good":u<=0?"bad":u<=d.max_amount/2?"average":"good",children:[u," in stock"]})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"center",children:s&&(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:l.access?"FREE":d.price+" cr",onClick:function(){return c("dispense",{item:d.name})}})||(0,o.createComponentVNode)(2,i.Button,{fluid:!0,disabled:0===u||!p&&(!l.user||d.price>l.user.cash),content:p?"FREE":d.price+" cr",onClick:function(){return c("vend",{ref:d.ref})}})})]})};t.Vending=function(e,t){var n,r=(0,a.useBackend)(t),d=(r.act,r.data),u=!1;return d.vending_machine_input?(n=d.vending_machine_input,u=!0):n=d.extended_inventory?[].concat(d.product_records,d.coin_records,d.hidden_records):[].concat(d.product_records,d.coin_records),(0,o.createComponentVNode)(2,c.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[!!d.onstation&&(0,o.createComponentVNode)(2,i.Section,{title:"User",children:d.user&&(0,o.createComponentVNode)(2,i.Box,{children:["Welcome, ",(0,o.createVNode)(1,"b",null,d.user.name,0),","," ",(0,o.createVNode)(1,"b",null,d.user.job||"Unemployed",0),"!",(0,o.createVNode)(1,"br"),"Your balance is ",(0,o.createVNode)(1,"b",null,[d.user.cash,(0,o.createTextVNode)(" credits")],0),"."]})||(0,o.createComponentVNode)(2,i.Box,{color:"light-gray",children:["No registered ID card!",(0,o.createVNode)(1,"br"),"Please contact your local HoP!"]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Products",children:(0,o.createComponentVNode)(2,i.Table,{children:n.map((function(e){return(0,o.createComponentVNode)(2,l,{custom:u,product:e,productStock:d.stock[e.name]},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Wires=void 0;var o=n(0),r=n(1),a=n(3),i=n(2);t.Wires=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.wires||[],u=l.status||[];return(0,o.createComponentVNode)(2,i.Window,{children:(0,o.createComponentVNode)(2,i.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:d.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{className:"candystripe",label:e.color,labelColor:e.color,color:e.color,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:e.cut?"Mend":"Cut",onClick:function(){return c("cut",{wire:e.color})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Pulse",onClick:function(){return c("pulse",{wire:e.color})}}),(0,o.createComponentVNode)(2,a.Button,{content:e.attached?"Detach":"Attach",onClick:function(){return c("attach",{wire:e.color})}})],4),children:!!e.wire&&(0,o.createVNode)(1,"i",null,[(0,o.createTextVNode)("("),e.wire,(0,o.createTextVNode)(")")],0)},e.color)}))})}),!!u.length&&(0,o.createComponentVNode)(2,a.Section,{children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e},e)}))})]})})}}]); \ No newline at end of file +!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=186)}([function(e,t,n){"use strict";t.__esModule=!0;var o=n(401);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(t[e]=o[e])}))},function(e,t,n){"use strict";(function(e){t.__esModule=!0,t.useSharedState=t.useLocalState=t.useBackend=t.selectBackend=t.sendAct=t.sendMessage=t.backendMiddleware=t.backendReducer=t.backendSuspendSuccess=t.backendSuspendStart=t.backendSetSharedState=t.backendUpdate=void 0;var o=n(165),r=n(38),i=n(90);var a=(0,n(43).createLogger)("backend");t.backendUpdate=function(e){return{type:"backend/update",payload:e}};var c=function(e,t){return{type:"backend/setSharedState",payload:{key:e,nextState:t}}};t.backendSetSharedState=c;t.backendSuspendStart=function(){return{type:"backend/suspendStart"}};t.backendSuspendSuccess=function(){return{type:"backend/suspendSuccess",payload:{timestamp:Date.now()}}};var l={config:{},data:{}};t.backendReducer=function(e,t){void 0===e&&(e=l);var n=t.type,o=t.payload;if("backend/update"===n){var i=Object.assign({},e.config,o.config),a=Object.assign({},e.data,o.static_data,o.data),c=Object.assign({},e.shared);if(o.shared)for(var d=0,u=Object.keys(o.shared);d<u.length;d++){var s=u[d],p=o.shared[s];c[s]=""===p?undefined:JSON.parse(p)}var m=i.status!==r.UI_DISABLED,f=i.status===r.UI_INTERACTIVE;return Object.assign({},e,{config:i,assets:o.assets||{},data:a,shared:c,visible:m,interactive:f,suspended:!1})}if("backend/setSharedState"===n){var h,C=o.key,g=o.nextState;return Object.assign({},e,{shared:Object.assign({},e.shared,(h={},h[C]=g,h))})}if("backend/suspendStart"===n)return Object.assign({},e,{suspending:!0});if("backend/suspendSuccess"===n){var b=o.timestamp;return Object.assign({},e,{data:{},shared:{},config:Object.assign({},e.config,{title:"",status:1}),suspending:!1,suspended:b})}return e};t.backendMiddleware=function(t){var n,r;return function(c){return function(l){var u=s(t.getState()),p=(u.config,u.suspended),m=l.type,f=l.payload;if("backend/suspendStart"===m&&!r){a.log("suspending ("+window.__windowId__+")");var h=function(){return d({type:"suspend"})};h(),r=setInterval(h,2e3)}if("backend/suspendSuccess"===m&&(clearInterval(r),r=undefined,(0,i.releaseHeldKeys)(),Byond.winset(window.__windowId__,{"is-visible":!1})),"backend/update"===m){var C,g,b=null==(C=f.config)||null==(g=C.window)?void 0:g.fancy;n===undefined?n=b:n!==b&&(a.log("changing fancy mode to",b),n=b,Byond.winset(window.__windowId__,{titlebar:!b,"can-resize":!b}))}return"backend/update"===m&&p&&e((function(){o.perf.mark("resume/start"),s(t.getState()).suspended||(Byond.winset(window.__windowId__,{"is-visible":!0}),o.perf.mark("resume/finish"))})),c(l)}}};var d=function(e){void 0===e&&(e={});var t=e,n=t.payload,o=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(t,["payload"]),r=Object.assign({tgui:1,window_id:window.__windowId__},o);null!==n&&n!==undefined&&(r.payload=JSON.stringify(n)),Byond.topic(r)};t.sendMessage=d;var u=function(e,t){void 0===t&&(t={}),"object"!=typeof t||null===t||Array.isArray(t)?a.error("Payload for act() must be an object, got this:",t):d({type:"act/"+e,payload:t})};t.sendAct=u;var s=function(e){return e.backend||{}};t.selectBackend=s;t.useBackend=function(e){var t=e.store,n=s(t.getState());return Object.assign({},n,{act:u})};t.useLocalState=function(e,t,n){var o,r=e.store,i=null!=(o=s(r.getState()).shared)?o:{},a=t in i?i[t]:n;return[a,function(e){r.dispatch(c(t,"function"==typeof e?e(a):e))}]};t.useSharedState=function(e,t,n){var o,r=e.store,i=null!=(o=s(r.getState()).shared)?o:{},a=t in i?i[t]:n;return[a,function(e){d({type:"setSharedState",key:t,value:JSON.stringify("function"==typeof e?e(a):e)||""})}]}}).call(this,n(419).setImmediate)},function(e,t,n){"use strict";t.__esModule=!0,t.Window=t.NtosWindow=t.refocusLayout=t.Layout=void 0;var o=n(121);t.Layout=o.Layout,t.refocusLayout=o.refocusLayout;var r=n(426);t.NtosWindow=r.NtosWindow;var i=n(175);t.Window=i.Window},function(e,t,n){"use strict";t.__esModule=!0,t.TimeDisplay=t.Tooltip=t.Tabs=t.TextArea=t.Table=t.Slider=t.Section=t.ProgressBar=t.NumberInput=t.NoticeBox=t.Modal=t.LabeledList=t.LabeledControls=t.Knob=t.Input=t.Icon=t.Grid=t.Flex=t.Dropdown=t.DraggableControl=t.Divider=t.Dimmer=t.ColorBox=t.Collapsible=t.Chart=t.ByondUi=t.Button=t.Box=t.BlockQuote=t.AnimatedNumber=void 0;var o=n(122);t.AnimatedNumber=o.AnimatedNumber;var r=n(427);t.BlockQuote=r.BlockQuote;var i=n(16);t.Box=i.Box;var a=n(123);t.Button=a.Button;var c=n(428);t.ByondUi=c.ByondUi;var l=n(430);t.Chart=l.Chart;var d=n(431);t.Collapsible=d.Collapsible;var u=n(432);t.ColorBox=u.ColorBox;var s=n(170);t.Dimmer=s.Dimmer;var p=n(171);t.Divider=p.Divider;var m=n(125);t.DraggableControl=m.DraggableControl;var f=n(433);t.Dropdown=f.Dropdown;var h=n(172);t.Flex=h.Flex;var C=n(434);t.Grid=C.Grid;var g=n(124);t.Icon=g.Icon;var b=n(435);t.Input=b.Input;var N=n(436);t.Knob=N.Knob;var v=n(437);t.LabeledControls=v.LabeledControls;var V=n(174);t.LabeledList=V.LabeledList;var y=n(438);t.Modal=y.Modal;var k=n(439);t.NoticeBox=k.NoticeBox;var x=n(126);t.NumberInput=x.NumberInput;var _=n(440);t.ProgressBar=_.ProgressBar;var w=n(441);t.Section=w.Section;var B=n(442);t.Slider=B.Slider;var S=n(173);t.Table=S.Table;var L=n(443);t.TextArea=L.TextArea;var I=n(444);t.Tabs=I.Tabs;var T=n(169);t.Tooltip=T.Tooltip;var A=n(445);t.TimeDisplay=A.TimeDisplay},function(e,t,n){"use strict";var o=n(7),r=n(22).f,i=n(30),a=n(24),c=n(92),l=n(132),d=n(65);e.exports=function(e,t){var n,u,s,p,m,f=e.target,h=e.global,C=e.stat;if(n=h?o:C?o[f]||c(f,{}):(o[f]||{}).prototype)for(u in t){if(p=t[u],s=e.noTargetGet?(m=r(n,u))&&m.value:n[u],!d(h?u:f+(C?".":"#")+u,e.forced)&&s!==undefined){if(typeof p==typeof s)continue;l(p,s)}(e.sham||s&&s.sham)&&i(p,"sham",!0),a(n,u,p,e)}}},function(e,t,n){"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},function(e,t,n){"use strict";t.__esModule=!0,t.isFalsy=t.pureComponentHooks=t.shallowDiffers=t.normalizeChildren=t.classes=void 0;t.classes=function(e){for(var t="",n=0;n<e.length;n++){var o=e[n];"string"==typeof o&&(t+=o+" ")}return t};t.normalizeChildren=function(e){return Array.isArray(e)?e.flat().filter((function(e){return e})):"object"==typeof e?[e]:[]};var o=function(e,t){var n;for(n in e)if(!(n in t))return!0;for(n in t)if(e[n]!==t[n])return!0;return!1};t.shallowDiffers=o;var r={onComponentShouldUpdate:function(e,t){return o(e,t)}};t.pureComponentHooks=r;t.isFalsy=function(e){return e===undefined||null===e||!1===e}},function(e,t,n){"use strict";(function(t){var n=function(e){return e&&e.Math==Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||Function("return this")()}).call(this,n(73))},function(e,t,n){"use strict";e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,n){"use strict";var o=n(5);e.exports=!o((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},function(e,t,n){"use strict";var o=n(8);e.exports=function(e){if(!o(e))throw TypeError(String(e)+" is not an object");return e}},function(e,t,n){"use strict";var o,r=n(106),i=n(9),a=n(7),c=n(8),l=n(20),d=n(77),u=n(30),s=n(24),p=n(14).f,m=n(37),f=n(54),h=n(13),C=n(62),g=a.Int8Array,b=g&&g.prototype,N=a.Uint8ClampedArray,v=N&&N.prototype,V=g&&m(g),y=b&&m(b),k=Object.prototype,x=k.isPrototypeOf,_=h("toStringTag"),w=C("TYPED_ARRAY_TAG"),B=r&&!!f&&"Opera"!==d(a.opera),S=!1,L={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},I=function(e){var t=d(e);return"DataView"===t||l(L,t)},T=function(e){return c(e)&&l(L,d(e))};for(o in L)a[o]||(B=!1);if((!B||"function"!=typeof V||V===Function.prototype)&&(V=function(){throw TypeError("Incorrect invocation")},B))for(o in L)a[o]&&f(a[o],V);if((!B||!y||y===k)&&(y=V.prototype,B))for(o in L)a[o]&&f(a[o].prototype,y);if(B&&m(v)!==y&&f(v,y),i&&!l(y,_))for(o in S=!0,p(y,_,{get:function(){return c(this)?this[w]:undefined}}),L)a[o]&&u(a[o],w,o);e.exports={NATIVE_ARRAY_BUFFER_VIEWS:B,TYPED_ARRAY_TAG:S&&w,aTypedArray:function(e){if(T(e))return e;throw TypeError("Target is not a typed array")},aTypedArrayConstructor:function(e){if(f){if(x.call(V,e))return e}else for(var t in L)if(l(L,o)){var n=a[t];if(n&&(e===n||x.call(n,e)))return e}throw TypeError("Target is not a typed array constructor")},exportTypedArrayMethod:function(e,t,n){if(i){if(n)for(var o in L){var r=a[o];r&&l(r.prototype,e)&&delete r.prototype[e]}y[e]&&!n||s(y,e,n?t:B&&b[e]||t)}},exportTypedArrayStaticMethod:function(e,t,n){var o,r;if(i){if(f){if(n)for(o in L)(r=a[o])&&l(r,e)&&delete r[e];if(V[e]&&!n)return;try{return s(V,e,n?t:B&&g[e]||t)}catch(c){}}for(o in L)!(r=a[o])||r[e]&&!n||s(r,e,t)}},isView:I,isTypedArray:T,TypedArray:V,TypedArrayPrototype:y}},function(e,t,n){"use strict";var o=n(31),r=Math.min;e.exports=function(e){return e>0?r(o(e),9007199254740991):0}},function(e,t,n){"use strict";var o=n(7),r=n(94),i=n(20),a=n(62),c=n(98),l=n(135),d=r("wks"),u=o.Symbol,s=l?u:u&&u.withoutSetter||a;e.exports=function(e){return i(d,e)||(c&&i(u,e)?d[e]=u[e]:d[e]=s("Symbol."+e)),d[e]}},function(e,t,n){"use strict";var o=n(9),r=n(129),i=n(10),a=n(35),c=Object.defineProperty;t.f=o?c:function(e,t,n){if(i(e),t=a(t,!0),i(n),r)try{return c(e,t,n)}catch(o){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},function(e,t,n){"use strict";t.__esModule=!0,t.keyOfMatchingRange=t.inRange=t.toFixed=t.round=t.scale=t.clamp01=t.clamp=void 0;t.clamp=function(e,t,n){return e<t?t:e>n?n:e};t.clamp01=function(e){return e<0?0:e>1?1:e};t.scale=function(e,t,n){return(e-t)/(n-t)};t.round=function(e,t){return!e||isNaN(e)?e:(t|=0,i=(e*=n=Math.pow(10,t))>0|-(e<0),r=Math.abs(e%1)>=.4999999999854481,o=Math.floor(e),r&&(e=o+(i>0)),(r?e:Math.round(e))/n);var n,o,r,i};t.toFixed=function(e,t){return void 0===t&&(t=0),Number(e).toFixed(Math.max(t,0))};var o=function(e,t){return t&&e>=t[0]&&e<=t[1]};t.inRange=o;t.keyOfMatchingRange=function(e,t){for(var n=0,r=Object.keys(t);n<r.length;n++){var i=r[n],a=t[i];if(o(e,a))return i}}},function(e,t,n){"use strict";t.__esModule=!0,t.Box=t.computeBoxClassName=t.computeBoxProps=t.halfUnit=t.unit=void 0;var o=n(6),r=n(0),i=n(425),a=n(38);var c=function(e){return"string"==typeof e?e:"number"==typeof e?12*e+"px":void 0};t.unit=c;var l=function(e){return"string"==typeof e?e:"number"==typeof e?12*e*.5+"px":void 0};t.halfUnit=l;var d=function(e){return"string"==typeof e&&a.CSS_COLORS.includes(e)},u=function(e){return function(t,n){(0,o.isFalsy)(n)||(t[e]=n)}},s=function(e,t){return function(n,r){(0,o.isFalsy)(r)||(n[e]=t(r))}},p=function(e,t){return function(n,r){(0,o.isFalsy)(r)||(n[e]=t)}},m=function(e,t,n){return function(r,i){if(!(0,o.isFalsy)(i))for(var a=0;a<n.length;a++)r[e+"-"+n[a]]=t(i)}},f=function(e){return function(t,n){d(n)||(t[e]=n)}},h={position:u("position"),overflow:u("overflow"),overflowX:u("overflow-x"),overflowY:u("overflow-y"),top:s("top",c),bottom:s("bottom",c),left:s("left",c),right:s("right",c),width:s("width",c),minWidth:s("min-width",c),maxWidth:s("max-width",c),height:s("height",c),minHeight:s("min-height",c),maxHeight:s("max-height",c),fontSize:s("font-size",c),fontFamily:u("font-family"),lineHeight:u("line-height"),opacity:u("opacity"),textAlign:u("text-align"),verticalAlign:u("vertical-align"),inline:p("display","inline-block"),bold:p("font-weight","bold"),italic:p("font-style","italic"),nowrap:p("white-space","nowrap"),m:m("margin",l,["top","bottom","left","right"]),mx:m("margin",l,["left","right"]),my:m("margin",l,["top","bottom"]),mt:s("margin-top",l),mb:s("margin-bottom",l),ml:s("margin-left",l),mr:s("margin-right",l),p:m("padding",l,["top","bottom","left","right"]),px:m("padding",l,["left","right"]),py:m("padding",l,["top","bottom"]),pt:s("padding-top",l),pb:s("padding-bottom",l),pl:s("padding-left",l),pr:s("padding-right",l),color:f("color"),textColor:f("color"),backgroundColor:f("background-color"),fillPositionedParent:function(e,t){t&&(e.position="absolute",e.top=0,e.bottom=0,e.left=0,e.right=0)}},C=function(e){for(var t={},n={},o=0,r=Object.keys(e);o<r.length;o++){var i=r[o];if("style"!==i){var a=e[i],c=h[i];c?c(n,a):t[i]=a}}for(var l="",d=0,u=Object.keys(n);d<u.length;d++){var s=u[d];l+=s+":"+n[s]+";"}if(e.style)for(var p=0,m=Object.keys(e.style);p<m.length;p++){var f=m[p];l+=f+":"+e.style[f]+";"}return l.length>0&&(t.style=l),t};t.computeBoxProps=C;var g=function(e){var t=e.textColor||e.color,n=e.backgroundColor;return(0,o.classes)([d(t)&&"color-"+t,d(n)&&"color-bg-"+n])};t.computeBoxClassName=g;var b=function(e){var t=e.as,n=void 0===t?"div":t,o=e.className,a=e.children,c=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["as","className","children"]);if("function"==typeof a)return a(C(e));var l="string"==typeof o?o+" "+g(c):g(c),d=C(c);return(0,r.createVNode)(i.VNodeFlags.HtmlElement,n,l,a,i.ChildFlags.UnknownChildren,d)};t.Box=b,b.defaultHooks=o.pureComponentHooks},function(e,t,n){"use strict";var o=n(23);e.exports=function(e){return Object(o(e))}},function(e,t,n){"use strict";t.__esModule=!0,t.zipWith=t.zip=t.uniqBy=t.reduce=t.sortBy=t.map=t.filter=t.toKeyedArray=t.toArray=void 0;t.toArray=function(e){if(Array.isArray(e))return e;if("object"==typeof e){var t=Object.prototype.hasOwnProperty,n=[];for(var o in e)t.call(e,o)&&n.push(e[o]);return n}return[]};t.toKeyedArray=function(e,t){return void 0===t&&(t="key"),o((function(e,n){var o;return Object.assign(((o={})[t]=n,o),e)}))(e)};t.filter=function(e){return function(t){if(null===t&&t===undefined)return t;if(Array.isArray(t)){for(var n=[],o=0;o<t.length;o++){var r=t[o];e(r,o,t)&&n.push(r)}return n}throw new Error("filter() can't iterate on type "+typeof t)}};var o=function(e){return function(t){if(null===t&&t===undefined)return t;if(Array.isArray(t)){for(var n=[],o=0;o<t.length;o++)n.push(e(t[o],o,t));return n}if("object"==typeof t){var r=Object.prototype.hasOwnProperty,i=[];for(var a in t)r.call(t,a)&&i.push(e(t[a],a,t));return i}throw new Error("map() can't iterate on type "+typeof t)}};t.map=o;var r=function(e,t){for(var n=e.criteria,o=t.criteria,r=n.length,i=0;i<r;i++){var a=n[i],c=o[i];if(a<c)return-1;if(a>c)return 1}return 0};t.sortBy=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){if(!Array.isArray(e))return e;for(var n=e.length,o=[],i=function(n){var r=e[n];o.push({criteria:t.map((function(e){return e(r)})),value:r})},a=0;a<n;a++)i(a);for(o.sort(r);n--;)o[n]=o[n].value;return o}};t.reduce=function(e,t){return function(n){var o,r,i=n.length;for(t===undefined?(o=1,r=n[0]):(o=0,r=t);o<i;o++)r=e(r,n[o],o,n);return r}};t.uniqBy=function(e){return function(t){var n=t.length,o=[],r=e?[]:o,i=-1;e:for(;++i<n;){var a=t[i],c=e?e(a):a;if(a=0!==a?a:0,c==c){for(var l=r.length;l--;)if(r[l]===c)continue e;e&&r.push(c),o.push(a)}else r.includes(c)||(r!==o&&r.push(c),o.push(a))}return o}};var i=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];if(0!==t.length){for(var o=t.length,r=t[0].length,i=[],a=0;a<r;a++){for(var c=[],l=0;l<o;l++)c.push(t[l][a]);i.push(c)}return i}};t.zip=i;t.zipWith=function(e){return function(){return o((function(t){return e.apply(void 0,t)}))(i.apply(void 0,arguments))}}},function(e,t,n){"use strict";function o(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}t.__esModule=!0,t.buildQueryString=t.decodeHtmlEntities=t.toTitleCase=t.capitalize=t.createSearch=t.createGlobPattern=t.multiline=void 0;t.multiline=function i(e){if(Array.isArray(e))return i(e.join(""));for(var t,n,r=e.split("\n"),a=o(r);!(n=a()).done;)for(var c=n.value,l=0;l<c.length;l++){if(" "!==c[l]){(t===undefined||l<t)&&(t=l);break}}return t||(t=0),r.map((function(e){return e.substr(t).trimRight()})).join("\n").trim()};t.createGlobPattern=function(e){var t=new RegExp("^"+e.split(/\*+/).map((function(e){return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&")})).join(".*")+"$");return function(e){return t.test(e)}};t.createSearch=function(e,t){var n=e.toLowerCase().trim();return function(e){if(!n)return!0;var o=t?t(e):e;return!!o&&o.toLowerCase().includes(n)}};t.capitalize=function a(e){return Array.isArray(e)?e.map(a):e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()};t.toTitleCase=function c(e){if(Array.isArray(e))return e.map(c);if("string"!=typeof e)return e;for(var t=e.replace(/([^\W_]+[^\s-]*) */g,(function(e){return e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()})),n=0,o=["A","An","And","As","At","But","By","For","For","From","In","Into","Near","Nor","Of","On","Onto","Or","The","To","With"];n<o.length;n++){var r=new RegExp("\\s"+o[n]+"\\s","g");t=t.replace(r,(function(e){return e.toLowerCase()}))}for(var i=0,a=["Id","Tv"];i<a.length;i++){var l=new RegExp("\\b"+a[i]+"\\b","g");t=t.replace(l,(function(e){return e.toLowerCase()}))}return t};t.decodeHtmlEntities=function(e){if(!e)return e;var t={nbsp:" ",amp:"&",quot:'"',lt:"<",gt:">",apos:"'"};return e.replace(/<br>/gi,"\n").replace(/<\/?[a-z0-9-_]+[^>]*>/gi,"").replace(/&(nbsp|amp|quot|lt|gt|apos);/g,(function(e,n){return t[n]})).replace(/&#?([0-9]+);/gi,(function(e,t){var n=parseInt(t,10);return String.fromCharCode(n)})).replace(/&#x?([0-9a-f]+);/gi,(function(e,t){var n=parseInt(t,16);return String.fromCharCode(n)}))};t.buildQueryString=function(e){return Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&")}},function(e,t,n){"use strict";var o={}.hasOwnProperty;e.exports=function(e,t){return o.call(e,t)}},function(e,t,n){"use strict";var o=n(52),r=n(61),i=n(17),a=n(12),c=n(67),l=[].push,d=function(e){var t=1==e,n=2==e,d=3==e,u=4==e,s=6==e,p=5==e||s;return function(m,f,h,C){for(var g,b,N=i(m),v=r(N),V=o(f,h,3),y=a(v.length),k=0,x=C||c,_=t?x(m,y):n?x(m,0):undefined;y>k;k++)if((p||k in v)&&(b=V(g=v[k],k,N),e))if(t)_[k]=b;else if(b)switch(e){case 3:return!0;case 5:return g;case 6:return k;case 2:l.call(_,g)}else if(u)return!1;return s?-1:d||u?u:_}};e.exports={forEach:d(0),map:d(1),filter:d(2),some:d(3),every:d(4),find:d(5),findIndex:d(6)}},function(e,t,n){"use strict";var o=n(9),r=n(74),i=n(50),a=n(26),c=n(35),l=n(20),d=n(129),u=Object.getOwnPropertyDescriptor;t.f=o?u:function(e,t){if(e=a(e),t=c(t,!0),d)try{return u(e,t)}catch(n){}if(l(e,t))return i(!r.f.call(e,t),e[t])}},function(e,t,n){"use strict";e.exports=function(e){if(e==undefined)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){"use strict";var o=n(7),r=n(30),i=n(20),a=n(92),c=n(93),l=n(36),d=l.get,u=l.enforce,s=String(String).split("String");(e.exports=function(e,t,n,c){var l=!!c&&!!c.unsafe,d=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof t||i(n,"name")||r(n,"name",t),u(n).source=s.join("string"==typeof t?t:"")),e!==o?(l?!p&&e[t]&&(d=!0):delete e[t],d?e[t]=n:r(e,t,n)):d?e[t]=n:a(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&d(this).source||c(this)}))},function(e,t,n){"use strict";var o=n(9),r=n(5),i=n(20),a=Object.defineProperty,c={},l=function(e){throw e};e.exports=function(e,t){if(i(c,e))return c[e];t||(t={});var n=[][e],d=!!i(t,"ACCESSORS")&&t.ACCESSORS,u=i(t,0)?t[0]:l,s=i(t,1)?t[1]:undefined;return c[e]=!!n&&!r((function(){if(d&&!o)return!0;var e={length:-1};d?a(e,1,{enumerable:!0,get:l}):e[1]=1,n.call(e,u,s)}))}},function(e,t,n){"use strict";var o=n(61),r=n(23);e.exports=function(e){return o(r(e))}},function(e,t,n){"use strict";var o=n(133),r=n(20),i=n(139),a=n(14).f;e.exports=function(e){var t=o.Symbol||(o.Symbol={});r(t,e)||a(t,e,{value:i.f(e)})}},function(e,t,n){"use strict";var o=n(23),r=/"/g;e.exports=function(e,t,n,i){var a=String(o(e)),c="<"+t;return""!==n&&(c+=" "+n+'="'+String(i).replace(r,""")+'"'),c+">"+a+"</"+t+">"}},function(e,t,n){"use strict";var o=n(5);e.exports=function(e){return o((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}},function(e,t,n){"use strict";var o=n(9),r=n(14),i=n(50);e.exports=o?function(e,t,n){return r.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){"use strict";var o=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:o)(e)}},function(e,t,n){"use strict";e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,t,n){"use strict";function o(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}t.__esModule=!0,t.compose=t.flow=void 0;t.flow=function i(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){for(var n=e,r=arguments.length,a=new Array(r>1?r-1:0),c=1;c<r;c++)a[c-1]=arguments[c];for(var l,d=o(t);!(l=d()).done;){var u=l.value;Array.isArray(u)?n=i.apply(void 0,u).apply(void 0,[n].concat(a)):u&&(n=u.apply(void 0,[n].concat(a)))}return n}};t.compose=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return 0===t.length?function(e){return e}:1===t.length?t[0]:t.reduce((function(e,t){return function(n){for(var o=arguments.length,r=new Array(o>1?o-1:0),i=1;i<o;i++)r[i-1]=arguments[i];return e.apply(void 0,[t.apply(void 0,[n].concat(r))].concat(r))}}))}},function(e,t,n){"use strict";var o={}.toString;e.exports=function(e){return o.call(e).slice(8,-1)}},function(e,t,n){"use strict";var o=n(8);e.exports=function(e,t){if(!o(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!o(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){"use strict";var o,r,i,a=n(131),c=n(7),l=n(8),d=n(30),u=n(20),s=n(75),p=n(63),m=c.WeakMap;if(a){var f=new m,h=f.get,C=f.has,g=f.set;o=function(e,t){return g.call(f,e,t),t},r=function(e){return h.call(f,e)||{}},i=function(e){return C.call(f,e)}}else{var b=s("state");p[b]=!0,o=function(e,t){return d(e,b,t),t},r=function(e){return u(e,b)?e[b]:{}},i=function(e){return u(e,b)}}e.exports={set:o,get:r,has:i,enforce:function(e){return i(e)?r(e):o(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=r(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){"use strict";var o=n(20),r=n(17),i=n(75),a=n(105),c=i("IE_PROTO"),l=Object.prototype;e.exports=a?Object.getPrototypeOf:function(e){return e=r(e),o(e,c)?e[c]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?l:null}},function(e,t,n){"use strict";t.__esModule=!0,t.getGasColor=t.getGasLabel=t.RADIO_CHANNELS=t.CSS_COLORS=t.COLORS=t.UI_CLOSE=t.UI_DISABLED=t.UI_UPDATE=t.UI_INTERACTIVE=void 0;t.UI_INTERACTIVE=2;t.UI_UPDATE=1;t.UI_DISABLED=0;t.UI_CLOSE=-1;t.COLORS={department:{captain:"#c06616",security:"#e74c3c",medbay:"#3498db",science:"#9b59b6",engineering:"#f1c40f",cargo:"#f39c12",centcom:"#00c100",other:"#c38312"},damageType:{oxy:"#3498db",toxin:"#2ecc71",burn:"#e67e22",brute:"#e74c3c"}};t.CSS_COLORS=["black","white","red","orange","yellow","olive","green","teal","blue","violet","purple","pink","brown","grey","good","average","bad","label"];t.RADIO_CHANNELS=[{name:"Syndicate",freq:1213,color:"#a52a2a"},{name:"Red Team",freq:1215,color:"#ff4444"},{name:"Blue Team",freq:1217,color:"#3434fd"},{name:"CentCom",freq:1337,color:"#2681a5"},{name:"Supply",freq:1347,color:"#b88646"},{name:"Service",freq:1349,color:"#6ca729"},{name:"Science",freq:1351,color:"#c68cfa"},{name:"Command",freq:1353,color:"#5177ff"},{name:"Medical",freq:1355,color:"#57b8f0"},{name:"Engineering",freq:1357,color:"#f37746"},{name:"Security",freq:1359,color:"#dd3535"},{name:"AI Private",freq:1447,color:"#d65d95"},{name:"Common",freq:1459,color:"#1ecc43"}];var o=[{id:"o2",name:"Oxygen",label:"O\u2082",color:"blue"},{id:"n2",name:"Nitrogen",label:"N\u2082",color:"red"},{id:"co2",name:"Carbon Dioxide",label:"CO\u2082",color:"grey"},{id:"plasma",name:"Plasma",label:"Plasma",color:"pink"},{id:"water_vapor",name:"Water Vapor",label:"H\u2082O",color:"grey"},{id:"nob",name:"Hyper-noblium",label:"Hyper-nob",color:"teal"},{id:"n2o",name:"Nitrous Oxide",label:"N\u2082O",color:"red"},{id:"no2",name:"Nitryl",label:"NO\u2082",color:"brown"},{id:"tritium",name:"Tritium",label:"Tritium",color:"green"},{id:"bz",name:"BZ",label:"BZ",color:"purple"},{id:"stim",name:"Stimulum",label:"Stimulum",color:"purple"},{id:"pluox",name:"Pluoxium",label:"Pluoxium",color:"blue"},{id:"miasma",name:"Miasma",label:"Miasma",color:"olive"},{id:"hydrogen",name:"Hydrogen",label:"H\u2082",color:"white"}];t.getGasLabel=function(e,t){var n=String(e).toLowerCase(),r=o.find((function(e){return e.id===n||e.name.toLowerCase()===n}));return r&&r.label||t||e};t.getGasColor=function(e){var t=String(e).toLowerCase(),n=o.find((function(e){return e.id===t||e.name.toLowerCase()===t}));return n&&n.color}},function(e,t,n){"use strict";var o=n(133),r=n(7),i=function(e){return"function"==typeof e?e:undefined};e.exports=function(e,t){return arguments.length<2?i(o[e])||i(r[e]):o[e]&&o[e][t]||r[e]&&r[e][t]}},function(e,t,n){"use strict";e.exports=!1},function(e,t,n){"use strict";var o=n(5);e.exports=function(e,t){var n=[][e];return!!n&&o((function(){n.call(null,t||function(){throw 1},1)}))}},function(e,t,n){"use strict";var o=n(4),r=n(7),i=n(9),a=n(118),c=n(11),l=n(80),d=n(58),u=n(50),s=n(30),p=n(12),m=n(147),f=n(162),h=n(35),C=n(20),g=n(77),b=n(8),N=n(46),v=n(54),V=n(51).f,y=n(163),k=n(21).forEach,x=n(57),_=n(14),w=n(22),B=n(36),S=n(82),L=B.get,I=B.set,T=_.f,A=w.f,E=Math.round,M=r.RangeError,P=l.ArrayBuffer,R=l.DataView,O=c.NATIVE_ARRAY_BUFFER_VIEWS,j=c.TYPED_ARRAY_TAG,D=c.TypedArray,F=c.TypedArrayPrototype,z=c.aTypedArrayConstructor,W=c.isTypedArray,H=function(e,t){for(var n=0,o=t.length,r=new(z(e))(o);o>n;)r[n]=t[n++];return r},U=function(e,t){T(e,t,{get:function(){return L(this)[t]}})},G=function(e){var t;return e instanceof P||"ArrayBuffer"==(t=g(e))||"SharedArrayBuffer"==t},K=function(e,t){return W(e)&&"symbol"!=typeof t&&t in e&&String(+t)==String(t)},q=function(e,t){return K(e,t=h(t,!0))?u(2,e[t]):A(e,t)},Y=function(e,t,n){return!(K(e,t=h(t,!0))&&b(n)&&C(n,"value"))||C(n,"get")||C(n,"set")||n.configurable||C(n,"writable")&&!n.writable||C(n,"enumerable")&&!n.enumerable?T(e,t,n):(e[t]=n.value,e)};i?(O||(w.f=q,_.f=Y,U(F,"buffer"),U(F,"byteOffset"),U(F,"byteLength"),U(F,"length")),o({target:"Object",stat:!0,forced:!O},{getOwnPropertyDescriptor:q,defineProperty:Y}),e.exports=function(e,t,n){var i=e.match(/\d+$/)[0]/8,c=e+(n?"Clamped":"")+"Array",l="get"+e,u="set"+e,h=r[c],C=h,g=C&&C.prototype,_={},w=function(e,t){T(e,t,{get:function(){return function(e,t){var n=L(e);return n.view[l](t*i+n.byteOffset,!0)}(this,t)},set:function(e){return function(e,t,o){var r=L(e);n&&(o=(o=E(o))<0?0:o>255?255:255&o),r.view[u](t*i+r.byteOffset,o,!0)}(this,t,e)},enumerable:!0})};O?a&&(C=t((function(e,t,n,o){return d(e,C,c),S(b(t)?G(t)?o!==undefined?new h(t,f(n,i),o):n!==undefined?new h(t,f(n,i)):new h(t):W(t)?H(C,t):y.call(C,t):new h(m(t)),e,C)})),v&&v(C,D),k(V(h),(function(e){e in C||s(C,e,h[e])})),C.prototype=g):(C=t((function(e,t,n,o){d(e,C,c);var r,a,l,u=0,s=0;if(b(t)){if(!G(t))return W(t)?H(C,t):y.call(C,t);r=t,s=f(n,i);var h=t.byteLength;if(o===undefined){if(h%i)throw M("Wrong length");if((a=h-s)<0)throw M("Wrong length")}else if((a=p(o)*i)+s>h)throw M("Wrong length");l=a/i}else l=m(t),r=new P(a=l*i);for(I(e,{buffer:r,byteOffset:s,byteLength:a,length:l,view:new R(r)});u<l;)w(e,u++)})),v&&v(C,D),g=C.prototype=N(F)),g.constructor!==C&&s(g,"constructor",C),j&&s(g,j,c),_[c]=C,o({global:!0,forced:C!=h,sham:!O},_),"BYTES_PER_ELEMENT"in C||s(C,"BYTES_PER_ELEMENT",i),"BYTES_PER_ELEMENT"in g||s(g,"BYTES_PER_ELEMENT",i),x(c)}):e.exports=function(){}},function(e,t,n){"use strict";t.__esModule=!0,t.logger=t.createLogger=void 0;n(166);var o=0,r=1,i=2,a=3,c=4,l=function(e,t){for(var n=arguments.length,o=new Array(n>2?n-2:0),r=2;r<n;r++)o[r-2]=arguments[r];if(e>=i){var a=[t].concat(o).map((function(e){return"string"==typeof e?e:e instanceof Error?e.stack||String(e):JSON.stringify(e)})).filter((function(e){return e})).join(" ")+"\nUser Agent: "+navigator.userAgent;Byond.topic({tgui:1,window_id:window.__windowId__,type:"log",message:a})}},d=function(e){return{debug:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return l.apply(void 0,[o,e].concat(n))},log:function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];return l.apply(void 0,[r,e].concat(n))},info:function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];return l.apply(void 0,[i,e].concat(n))},warn:function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];return l.apply(void 0,[a,e].concat(n))},error:function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];return l.apply(void 0,[c,e].concat(n))}}};t.createLogger=d;var u=d();t.logger=u},function(e,t,n){"use strict";t.__esModule=!0,t.formatMoney=t.formatPower=t.formatSiUnit=void 0;var o=n(15),r=["f","p","n","\u03bc","m"," ","k","M","G","T","P","E","Z","Y"],i=r.indexOf(" "),a=function(e,t,n){if(void 0===t&&(t=-i),void 0===n&&(n=""),"number"!=typeof e||!Number.isFinite(e))return e;var a=Math.floor(Math.log10(e)),c=Math.floor(Math.max(3*t,a)),l=Math.floor(a/3),d=Math.floor(c/3),u=(0,o.clamp)(i+d,0,r.length),s=r[u],p=e/Math.pow(1e3,d),m=l>t?2+3*d-c:0;return((0,o.toFixed)(p,m)+" "+s+n).trim()};t.formatSiUnit=a;t.formatPower=function(e,t){return void 0===t&&(t=0),a(e,t,"W")};t.formatMoney=function(e,t){if(void 0===t&&(t=0),!Number.isFinite(e))return e;var n=(0,o.round)(e,t);t>0&&(n=(0,o.toFixed)(e,t));var r=(n=String(n)).length,i=n.indexOf(".");-1===i&&(i=r);for(var a="",c=0;c<r;c++)c>0&&c<i&&(i-c)%3==0&&(a+="\u2009"),a+=n.charAt(c);return a}},function(e,t,n){"use strict";var o=n(31),r=Math.max,i=Math.min;e.exports=function(e,t){var n=o(e);return n<0?r(n+t,0):i(n,t)}},function(e,t,n){"use strict";var o,r=n(10),i=n(136),a=n(96),c=n(63),l=n(137),d=n(91),u=n(75),s=u("IE_PROTO"),p=function(){},m=function(e){return"<script>"+e+"<\/script>"},f=function(){try{o=document.domain&&new ActiveXObject("htmlfile")}catch(r){}var e,t;f=o?function(e){e.write(m("")),e.close();var t=e.parentWindow.Object;return e=null,t}(o):((t=d("iframe")).style.display="none",l.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(m("document.F=Object")),e.close(),e.F);for(var n=a.length;n--;)delete f.prototype[a[n]];return f()};c[s]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(p.prototype=r(e),n=new p,p.prototype=null,n[s]=e):n=f(),t===undefined?n:i(n,t)}},function(e,t,n){"use strict";var o=n(14).f,r=n(20),i=n(13)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,i)&&o(e,i,{configurable:!0,value:t})}},function(e,t,n){"use strict";var o=n(13),r=n(46),i=n(14),a=o("unscopables"),c=Array.prototype;c[a]==undefined&&i.f(c,a,{configurable:!0,value:r(null)}),e.exports=function(e){c[a][e]=!0}},function(e,t,n){"use strict";var o=n(10),r=n(32),i=n(13)("species");e.exports=function(e,t){var n,a=o(e).constructor;return a===undefined||(n=o(a)[i])==undefined?t:r(n)}},function(e,t,n){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){"use strict";var o=n(134),r=n(96).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(32);e.exports=function(e,t,n){if(o(e),t===undefined)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,o){return e.call(t,n,o)};case 3:return function(n,o,r){return e.call(t,n,o,r)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){"use strict";var o=n(35),r=n(14),i=n(50);e.exports=function(e,t,n){var a=o(t);a in e?r.f(e,a,i(0,n)):e[a]=n}},function(e,t,n){"use strict";var o=n(10),r=n(145);e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),t=n instanceof Array}catch(i){}return function(n,i){return o(n),r(i),t?e.call(n,i):n.__proto__=i,n}}():undefined)},function(e,t,n){"use strict";var o=n(63),r=n(8),i=n(20),a=n(14).f,c=n(62),l=n(71),d=c("meta"),u=0,s=Object.isExtensible||function(){return!0},p=function(e){a(e,d,{value:{objectID:"O"+ ++u,weakData:{}}})},m=e.exports={REQUIRED:!1,fastKey:function(e,t){if(!r(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!i(e,d)){if(!s(e))return"F";if(!t)return"E";p(e)}return e[d].objectID},getWeakData:function(e,t){if(!i(e,d)){if(!s(e))return!0;if(!t)return!1;p(e)}return e[d].weakData},onFreeze:function(e){return l&&m.REQUIRED&&s(e)&&!i(e,d)&&p(e),e}};o[d]=!0},function(e,t,n){"use strict";var o=n(34);e.exports=Array.isArray||function(e){return"Array"==o(e)}},function(e,t,n){"use strict";var o=n(39),r=n(14),i=n(13),a=n(9),c=i("species");e.exports=function(e){var t=o(e),n=r.f;a&&t&&!t[c]&&n(t,c,{configurable:!0,get:function(){return this}})}},function(e,t,n){"use strict";e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},function(e,t,n){"use strict";var o=n(23),r="["+n(84)+"]",i=RegExp("^"+r+r+"*"),a=RegExp(r+r+"*$"),c=function(e){return function(t){var n=String(o(t));return 1&e&&(n=n.replace(i,"")),2&e&&(n=n.replace(a,"")),n}};e.exports={start:c(1),end:c(2),trim:c(3)}},function(e,t,n){"use strict";t.__esModule=!0,t.InterfaceLockNoticeBox=void 0;var o=n(0),r=n(1),i=n(3);t.InterfaceLockNoticeBox=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=e.siliconUser,d=void 0===l?c.siliconUser:l,u=e.locked,s=void 0===u?c.locked:u,p=e.onLockStatusChange,m=void 0===p?function(){return a("lock")}:p,f=e.accessText,h=void 0===f?"an ID card":f;return d?(0,o.createComponentVNode)(2,i.NoticeBox,{color:d&&"grey",children:(0,o.createComponentVNode)(2,i.Flex,{align:"center",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:"Interface lock status:"}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Button,{m:0,color:s?"red":"green",icon:s?"lock":"unlock",content:s?"Locked":"Unlocked",onClick:function(){m&&m(!s)}})})]})}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:["Swipe ",h," ","to ",s?"unlock":"lock"," this interface."]})}},function(e,t,n){"use strict";var o=n(5),r=n(34),i="".split;e.exports=o((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==r(e)?i.call(e,""):Object(e)}:Object},function(e,t,n){"use strict";var o=0,r=Math.random();e.exports=function(e){return"Symbol("+String(e===undefined?"":e)+")_"+(++o+r).toString(36)}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var o=n(26),r=n(12),i=n(45),a=function(e){return function(t,n,a){var c,l=o(t),d=r(l.length),u=i(a,d);if(e&&n!=n){for(;d>u;)if((c=l[u++])!=c)return!0}else for(;d>u;u++)if((e||u in l)&&l[u]===n)return e||u||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},function(e,t,n){"use strict";var o=n(5),r=/#|\.prototype\./,i=function(e,t){var n=c[a(e)];return n==d||n!=l&&("function"==typeof t?o(t):!!t)},a=i.normalize=function(e){return String(e).replace(r,".").toLowerCase()},c=i.data={},l=i.NATIVE="N",d=i.POLYFILL="P";e.exports=i},function(e,t,n){"use strict";var o=n(134),r=n(96);e.exports=Object.keys||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(8),r=n(56),i=n(13)("species");e.exports=function(e,t){var n;return r(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!r(n.prototype)?o(n)&&null===(n=n[i])&&(n=undefined):n=undefined),new(n===undefined?Array:n)(0===t?0:t)}},function(e,t,n){"use strict";var o=n(5),r=n(13),i=n(99),a=r("species");e.exports=function(e){return i>=51||!o((function(){var t=[];return(t.constructor={})[a]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var o=n(24);e.exports=function(e,t,n){for(var r in t)o(e,r,t[r],n);return e}},function(e,t,n){"use strict";var o=n(5);e.exports=!o((function(){return Object.isExtensible(Object.preventExtensions({}))}))},function(e,t,n){"use strict";var o=n(10),r=n(101),i=n(12),a=n(52),c=n(102),l=n(142),d=function(e,t){this.stopped=e,this.result=t};(e.exports=function(e,t,n,u,s){var p,m,f,h,C,g,b,N=a(t,n,u?2:1);if(s)p=e;else{if("function"!=typeof(m=c(e)))throw TypeError("Target is not iterable");if(r(m)){for(f=0,h=i(e.length);h>f;f++)if((C=u?N(o(b=e[f])[0],b[1]):N(e[f]))&&C instanceof d)return C;return new d(!1)}p=m.call(e)}for(g=p.next;!(b=g.call(p)).done;)if("object"==typeof(C=l(p,N,b.value,u))&&C&&C instanceof d)return C;return new d(!1)}).stop=function(e){return new d(!0,e)}},function(e,t,n){"use strict";var o;o=function(){return this}();try{o=o||new Function("return this")()}catch(r){"object"==typeof window&&(o=window)}e.exports=o},function(e,t,n){"use strict";var o={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,i=r&&!o.call({1:2},1);t.f=i?function(e){var t=r(this,e);return!!t&&t.enumerable}:o},function(e,t,n){"use strict";var o=n(94),r=n(62),i=o("keys");e.exports=function(e){return i[e]||(i[e]=r(e))}},function(e,t,n){"use strict";var o=n(39);e.exports=o("navigator","userAgent")||""},function(e,t,n){"use strict";var o=n(103),r=n(34),i=n(13)("toStringTag"),a="Arguments"==r(function(){return arguments}());e.exports=o?r:function(e){var t,n,o;return e===undefined?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(n){}}(t=Object(e),i))?n:a?r(t):"Object"==(o=r(t))&&"function"==typeof t.callee?"Arguments":o}},function(e,t,n){"use strict";var o=n(13)("iterator"),r=!1;try{var i=0,a={next:function(){return{done:!!i++}},"return":function(){r=!0}};a[o]=function(){return this},Array.from(a,(function(){throw 2}))}catch(c){}e.exports=function(e,t){if(!t&&!r)return!1;var n=!1;try{var i={};i[o]=function(){return{next:function(){return{done:n=!0}}}},e(i)}catch(c){}return n}},function(e,t,n){"use strict";var o=n(32),r=n(17),i=n(61),a=n(12),c=function(e){return function(t,n,c,l){o(n);var d=r(t),u=i(d),s=a(d.length),p=e?s-1:0,m=e?-1:1;if(c<2)for(;;){if(p in u){l=u[p],p+=m;break}if(p+=m,e?p<0:s<=p)throw TypeError("Reduce of empty array with no initial value")}for(;e?p>=0:s>p;p+=m)p in u&&(l=n(l,u[p],p,d));return l}};e.exports={left:c(!1),right:c(!0)}},function(e,t,n){"use strict";var o=n(7),r=n(9),i=n(106),a=n(30),c=n(70),l=n(5),d=n(58),u=n(31),s=n(12),p=n(147),m=n(233),f=n(37),h=n(54),C=n(51).f,g=n(14).f,b=n(100),N=n(47),v=n(36),V=v.get,y=v.set,k=o.ArrayBuffer,x=k,_=o.DataView,w=_&&_.prototype,B=Object.prototype,S=o.RangeError,L=m.pack,I=m.unpack,T=function(e){return[255&e]},A=function(e){return[255&e,e>>8&255]},E=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},M=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},P=function(e){return L(e,23,4)},R=function(e){return L(e,52,8)},O=function(e,t){g(e.prototype,t,{get:function(){return V(this)[t]}})},j=function(e,t,n,o){var r=p(n),i=V(e);if(r+t>i.byteLength)throw S("Wrong index");var a=V(i.buffer).bytes,c=r+i.byteOffset,l=a.slice(c,c+t);return o?l:l.reverse()},D=function(e,t,n,o,r,i){var a=p(n),c=V(e);if(a+t>c.byteLength)throw S("Wrong index");for(var l=V(c.buffer).bytes,d=a+c.byteOffset,u=o(+r),s=0;s<t;s++)l[d+s]=u[i?s:t-s-1]};if(i){if(!l((function(){k(1)}))||!l((function(){new k(-1)}))||l((function(){return new k,new k(1.5),new k(NaN),"ArrayBuffer"!=k.name}))){for(var F,z=(x=function(e){return d(this,x),new k(p(e))}).prototype=k.prototype,W=C(k),H=0;W.length>H;)(F=W[H++])in x||a(x,F,k[F]);z.constructor=x}h&&f(w)!==B&&h(w,B);var U=new _(new x(2)),G=w.setInt8;U.setInt8(0,2147483648),U.setInt8(1,2147483649),!U.getInt8(0)&&U.getInt8(1)||c(w,{setInt8:function(e,t){G.call(this,e,t<<24>>24)},setUint8:function(e,t){G.call(this,e,t<<24>>24)}},{unsafe:!0})}else x=function(e){d(this,x,"ArrayBuffer");var t=p(e);y(this,{bytes:b.call(new Array(t),0),byteLength:t}),r||(this.byteLength=t)},_=function(e,t,n){d(this,_,"DataView"),d(e,x,"DataView");var o=V(e).byteLength,i=u(t);if(i<0||i>o)throw S("Wrong offset");if(i+(n=n===undefined?o-i:s(n))>o)throw S("Wrong length");y(this,{buffer:e,byteLength:n,byteOffset:i}),r||(this.buffer=e,this.byteLength=n,this.byteOffset=i)},r&&(O(x,"byteLength"),O(_,"buffer"),O(_,"byteLength"),O(_,"byteOffset")),c(_.prototype,{getInt8:function(e){return j(this,1,e)[0]<<24>>24},getUint8:function(e){return j(this,1,e)[0]},getInt16:function(e){var t=j(this,2,e,arguments.length>1?arguments[1]:undefined);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=j(this,2,e,arguments.length>1?arguments[1]:undefined);return t[1]<<8|t[0]},getInt32:function(e){return M(j(this,4,e,arguments.length>1?arguments[1]:undefined))},getUint32:function(e){return M(j(this,4,e,arguments.length>1?arguments[1]:undefined))>>>0},getFloat32:function(e){return I(j(this,4,e,arguments.length>1?arguments[1]:undefined),23)},getFloat64:function(e){return I(j(this,8,e,arguments.length>1?arguments[1]:undefined),52)},setInt8:function(e,t){D(this,1,e,T,t)},setUint8:function(e,t){D(this,1,e,T,t)},setInt16:function(e,t){D(this,2,e,A,t,arguments.length>2?arguments[2]:undefined)},setUint16:function(e,t){D(this,2,e,A,t,arguments.length>2?arguments[2]:undefined)},setInt32:function(e,t){D(this,4,e,E,t,arguments.length>2?arguments[2]:undefined)},setUint32:function(e,t){D(this,4,e,E,t,arguments.length>2?arguments[2]:undefined)},setFloat32:function(e,t){D(this,4,e,P,t,arguments.length>2?arguments[2]:undefined)},setFloat64:function(e,t){D(this,8,e,R,t,arguments.length>2?arguments[2]:undefined)}});N(x,"ArrayBuffer"),N(_,"DataView"),e.exports={ArrayBuffer:x,DataView:_}},function(e,t,n){"use strict";var o=n(4),r=n(7),i=n(65),a=n(24),c=n(55),l=n(72),d=n(58),u=n(8),s=n(5),p=n(78),m=n(47),f=n(82);e.exports=function(e,t,n){var h=-1!==e.indexOf("Map"),C=-1!==e.indexOf("Weak"),g=h?"set":"add",b=r[e],N=b&&b.prototype,v=b,V={},y=function(e){var t=N[e];a(N,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(C&&!u(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return C&&!u(e)?undefined:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(C&&!u(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(i(e,"function"!=typeof b||!(C||N.forEach&&!s((function(){(new b).entries().next()})))))v=n.getConstructor(t,e,h,g),c.REQUIRED=!0;else if(i(e,!0)){var k=new v,x=k[g](C?{}:-0,1)!=k,_=s((function(){k.has(1)})),w=p((function(e){new b(e)})),B=!C&&s((function(){for(var e=new b,t=5;t--;)e[g](t,t);return!e.has(-0)}));w||((v=t((function(t,n){d(t,v,e);var o=f(new b,t,v);return n!=undefined&&l(n,o[g],o,h),o}))).prototype=N,N.constructor=v),(_||B)&&(y("delete"),y("has"),h&&y("get")),(B||x)&&y(g),C&&N.clear&&delete N.clear}return V[e]=v,o({global:!0,forced:v!=b},V),m(v,e),C||n.setStrong(v,e,h),v}},function(e,t,n){"use strict";var o=n(8),r=n(54);e.exports=function(e,t,n){var i,a;return r&&"function"==typeof(i=t.constructor)&&i!==n&&o(a=i.prototype)&&a!==n.prototype&&r(e,a),e}},function(e,t,n){"use strict";var o=Math.expm1,r=Math.exp;e.exports=!o||o(10)>22025.465794806718||o(10)<22025.465794806718||-2e-17!=o(-2e-17)?function(e){return 0==(e=+e)?e:e>-1e-6&&e<1e-6?e+e*e/2:r(e)-1}:o},function(e,t,n){"use strict";e.exports="\t\n\x0B\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},function(e,t,n){"use strict";var o=n(40),r=n(7),i=n(5);e.exports=o||!i((function(){var e=Math.random();__defineSetter__.call(null,e,(function(){})),delete r[e]}))},function(e,t,n){"use strict";var o=n(10);e.exports=function(){var e=o(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},function(e,t,n){"use strict";var o,r,i=n(86),a=n(112),c=RegExp.prototype.exec,l=String.prototype.replace,d=c,u=(o=/a/,r=/b*/g,c.call(o,"a"),c.call(r,"a"),0!==o.lastIndex||0!==r.lastIndex),s=a.UNSUPPORTED_Y||a.BROKEN_CARET,p=/()??/.exec("")[1]!==undefined;(u||p||s)&&(d=function(e){var t,n,o,r,a=this,d=s&&a.sticky,m=i.call(a),f=a.source,h=0,C=e;return d&&(-1===(m=m.replace("y","")).indexOf("g")&&(m+="g"),C=String(e).slice(a.lastIndex),a.lastIndex>0&&(!a.multiline||a.multiline&&"\n"!==e[a.lastIndex-1])&&(f="(?: "+f+")",C=" "+C,h++),n=new RegExp("^(?:"+f+")",m)),p&&(n=new RegExp("^"+f+"$(?!\\s)",m)),u&&(t=a.lastIndex),o=c.call(d?n:a,C),d?o?(o.input=o.input.slice(h),o[0]=o[0].slice(h),o.index=a.lastIndex,a.lastIndex+=o[0].length):a.lastIndex=0:u&&o&&(a.lastIndex=a.global?o.index+o[0].length:t),p&&o&&o.length>1&&l.call(o[0],n,(function(){for(r=1;r<arguments.length-2;r++)arguments[r]===undefined&&(o[r]=undefined)})),o}),e.exports=d},function(e,t,n){"use strict";n(160);var o=n(24),r=n(5),i=n(13),a=n(87),c=n(30),l=i("species"),d=!r((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),u="$0"==="a".replace(/./,"$0"),s=i("replace"),p=!!/./[s]&&""===/./[s]("a","$0"),m=!r((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));e.exports=function(e,t,n,s){var f=i(e),h=!r((function(){var t={};return t[f]=function(){return 7},7!=""[e](t)})),C=h&&!r((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[l]=function(){return n},n.flags="",n[f]=/./[f]),n.exec=function(){return t=!0,null},n[f](""),!t}));if(!h||!C||"replace"===e&&(!d||!u||p)||"split"===e&&!m){var g=/./[f],b=n(f,""[e],(function(e,t,n,o,r){return t.exec===a?h&&!r?{done:!0,value:g.call(t,n,o)}:{done:!0,value:e.call(n,t,o)}:{done:!1}}),{REPLACE_KEEPS_$0:u,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:p}),N=b[0],v=b[1];o(String.prototype,e,N),o(RegExp.prototype,f,2==t?function(e,t){return v.call(e,this,t)}:function(e){return v.call(e,this)})}s&&c(RegExp.prototype[f],"sham",!0)}},function(e,t,n){"use strict";var o=n(34),r=n(87);e.exports=function(e,t){var n=e.exec;if("function"==typeof n){var i=n.call(e,t);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==o(e))throw TypeError("RegExp#exec called on incompatible receiver");return r.call(e,t)}},function(e,t,n){"use strict";function o(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}t.__esModule=!0,t.hotKeyMiddleware=t.subscribeToHotKey=t.releaseHeldKeys=t.KEY_MINUS=t.KEY_EQUAL=t.KEY_F12=t.KEY_F11=t.KEY_F10=t.KEY_F9=t.KEY_F8=t.KEY_F7=t.KEY_F6=t.KEY_F5=t.KEY_F4=t.KEY_F3=t.KEY_F2=t.KEY_F1=t.KEY_Z=t.KEY_Y=t.KEY_X=t.KEY_W=t.KEY_V=t.KEY_U=t.KEY_T=t.KEY_S=t.KEY_R=t.KEY_Q=t.KEY_P=t.KEY_O=t.KEY_N=t.KEY_M=t.KEY_L=t.KEY_K=t.KEY_J=t.KEY_I=t.KEY_H=t.KEY_G=t.KEY_F=t.KEY_E=t.KEY_D=t.KEY_C=t.KEY_B=t.KEY_A=t.KEY_9=t.KEY_8=t.KEY_7=t.KEY_6=t.KEY_5=t.KEY_4=t.KEY_3=t.KEY_2=t.KEY_1=t.KEY_0=t.KEY_SPACE=t.KEY_ESCAPE=t.KEY_ALT=t.KEY_CTRL=t.KEY_SHIFT=t.KEY_ENTER=t.KEY_TAB=t.KEY_BACKSPACE=void 0;var i=(0,n(43).createLogger)("hotkeys");t.KEY_BACKSPACE=8;t.KEY_TAB=9;t.KEY_ENTER=13;t.KEY_SHIFT=16;t.KEY_CTRL=17;t.KEY_ALT=18;t.KEY_ESCAPE=27;t.KEY_SPACE=32;t.KEY_0=48;t.KEY_1=49;t.KEY_2=50;t.KEY_3=51;t.KEY_4=52;t.KEY_5=53;t.KEY_6=54;t.KEY_7=55;t.KEY_8=56;t.KEY_9=57;t.KEY_A=65;t.KEY_B=66;t.KEY_C=67;t.KEY_D=68;t.KEY_E=69;t.KEY_F=70;t.KEY_G=71;t.KEY_H=72;t.KEY_I=73;t.KEY_J=74;t.KEY_K=75;t.KEY_L=76;t.KEY_M=77;t.KEY_N=78;t.KEY_O=79;t.KEY_P=80;t.KEY_Q=81;t.KEY_R=82;t.KEY_S=83;t.KEY_T=84;t.KEY_U=85;t.KEY_V=86;t.KEY_W=87;t.KEY_X=88;t.KEY_Y=89;t.KEY_Z=90;t.KEY_F1=112;t.KEY_F2=113;t.KEY_F3=114;t.KEY_F4=115;t.KEY_F5=116;t.KEY_F6=117;t.KEY_F7=118;t.KEY_F8=119;t.KEY_F9=120;t.KEY_F10=121;t.KEY_F11=122;t.KEY_F12=123;t.KEY_EQUAL=187;t.KEY_MINUS=189;var a=[17,18,16],c=[27,13,32,9,17,16,112,113,114,115,116,117,118,119,120,121,122,123],l={},d=function(e,t,n,o){var r="";return e&&(r+="Ctrl+"),t&&(r+="Alt+"),n&&(r+="Shift+"),r+=o>=48&&o<=90?String.fromCharCode(o):o>=112&&o<=123?"F"+(o-111):"["+o+"]"},u=function(e){var t=window.event?e.which:e.keyCode,n=e.ctrlKey,o=e.altKey,r=e.shiftKey;return{keyCode:t,ctrlKey:n,altKey:o,shiftKey:r,hasModifierKeys:n||o||r,keyString:d(n,o,r,t)}},s=function(){for(var e=0,t=Object.keys(l);e<t.length;e++){var n=t[e];l[n]&&(i.log("releasing ["+n+"] key"),l[n]=!1,Byond.topic({__keyup:n}))}};t.releaseHeldKeys=s;var p=[];t.subscribeToHotKey=function(e,t){p.push((function(n,o){if(o.keyString===e){var r=t(n);r&&n.dispatch(r)}}))};t.hotKeyMiddleware=function(e){var t;return t=function(t,n){Byond.IS_LTE_IE8||function(e,t){if(!e.defaultPrevented){var n=e.target&&e.target.localName;if("input"!==n&&"textarea"!==n){var o=u(e),r=o.keyCode,a=o.ctrlKey,d=o.shiftKey;a||d||c.includes(r)||("keydown"!==t||l[r]?"keyup"===t&&l[r]&&(i.debug("passthrough",t,o),Byond.topic({__keyup:r})):(i.debug("passthrough",t,o),Byond.topic({__keydown:r})))}}}(t,n),function(e,t,n){if("keyup"===t){var r=u(e),c=r.keyCode,l=r.hasModifierKeys,d=r.keyString;if(l&&!a.includes(c)||c>=112&&c<=123){i.log(d);for(var s,m=o(p);!(s=m()).done;)(0,s.value)(n,r)}}}(t,n,e)},document.addEventListener("keydown",(function(e){var n=window.event?e.which:e.keyCode;t(e,"keydown"),l[n]=!0})),document.addEventListener("keyup",(function(e){var n=window.event?e.which:e.keyCode;t(e,"keyup"),l[n]=!1})),Byond.IS_LTE_IE8||function(e){var t;document.addEventListener("focusout",(function(){t=setTimeout(e)})),document.addEventListener("focusin",(function(){clearTimeout(t)})),window.addEventListener("beforeunload",e)}((function(){s()})),function(e){return function(t){return e(t)}}}},function(e,t,n){"use strict";var o=n(7),r=n(8),i=o.document,a=r(i)&&r(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},function(e,t,n){"use strict";var o=n(7),r=n(30);e.exports=function(e,t){try{r(o,e,t)}catch(n){o[e]=t}return t}},function(e,t,n){"use strict";var o=n(130),r=Function.toString;"function"!=typeof o.inspectSource&&(o.inspectSource=function(e){return r.call(e)}),e.exports=o.inspectSource},function(e,t,n){"use strict";var o=n(40),r=n(130);(e.exports=function(e,t){return r[e]||(r[e]=t!==undefined?t:{})})("versions",[]).push({version:"3.6.5",mode:o?"pure":"global",copyright:"\xa9 2020 Denis Pushkarev (zloirock.ru)"})},function(e,t,n){"use strict";var o=n(39),r=n(51),i=n(97),a=n(10);e.exports=o("Reflect","ownKeys")||function(e){var t=r.f(a(e)),n=i.f;return n?t.concat(n(e)):t}},function(e,t,n){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(e,t,n){"use strict";t.f=Object.getOwnPropertySymbols},function(e,t,n){"use strict";var o=n(5);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){return!String(Symbol())}))},function(e,t,n){"use strict";var o,r,i=n(7),a=n(76),c=i.process,l=c&&c.versions,d=l&&l.v8;d?r=(o=d.split("."))[0]+o[1]:a&&(!(o=a.match(/Edge\/(\d+)/))||o[1]>=74)&&(o=a.match(/Chrome\/(\d+)/))&&(r=o[1]),e.exports=r&&+r},function(e,t,n){"use strict";var o=n(17),r=n(45),i=n(12);e.exports=function(e){for(var t=o(this),n=i(t.length),a=arguments.length,c=r(a>1?arguments[1]:undefined,n),l=a>2?arguments[2]:undefined,d=l===undefined?n:r(l,n);d>c;)t[c++]=e;return t}},function(e,t,n){"use strict";var o=n(13),r=n(69),i=o("iterator"),a=Array.prototype;e.exports=function(e){return e!==undefined&&(r.Array===e||a[i]===e)}},function(e,t,n){"use strict";var o=n(77),r=n(69),i=n(13)("iterator");e.exports=function(e){if(e!=undefined)return e[i]||e["@@iterator"]||r[o(e)]}},function(e,t,n){"use strict";var o={};o[n(13)("toStringTag")]="z",e.exports="[object z]"===String(o)},function(e,t,n){"use strict";var o=n(4),r=n(218),i=n(37),a=n(54),c=n(47),l=n(30),d=n(24),u=n(13),s=n(40),p=n(69),m=n(144),f=m.IteratorPrototype,h=m.BUGGY_SAFARI_ITERATORS,C=u("iterator"),g=function(){return this};e.exports=function(e,t,n,u,m,b,N){r(n,t,u);var v,V,y,k=function(e){if(e===m&&S)return S;if(!h&&e in w)return w[e];switch(e){case"keys":case"values":case"entries":return function(){return new n(this,e)}}return function(){return new n(this)}},x=t+" Iterator",_=!1,w=e.prototype,B=w[C]||w["@@iterator"]||m&&w[m],S=!h&&B||k(m),L="Array"==t&&w.entries||B;if(L&&(v=i(L.call(new e)),f!==Object.prototype&&v.next&&(s||i(v)===f||(a?a(v,f):"function"!=typeof v[C]&&l(v,C,g)),c(v,x,!0,!0),s&&(p[x]=g))),"values"==m&&B&&"values"!==B.name&&(_=!0,S=function(){return B.call(this)}),s&&!N||w[C]===S||l(w,C,S),p[t]=S,m)if(V={values:k("values"),keys:b?S:k("keys"),entries:k("entries")},N)for(y in V)(h||_||!(y in w))&&d(w,y,V[y]);else o({target:t,proto:!0,forced:h||_},V);return V}},function(e,t,n){"use strict";var o=n(5);e.exports=!o((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},function(e,t,n){"use strict";e.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},function(e,t,n){"use strict";var o=n(12),r=n(108),i=n(23),a=Math.ceil,c=function(e){return function(t,n,c){var l,d,u=String(i(t)),s=u.length,p=c===undefined?" ":String(c),m=o(n);return m<=s||""==p?u:(l=m-s,(d=r.call(p,a(l/p.length))).length>l&&(d=d.slice(0,l)),e?u+d:d+u)}};e.exports={start:c(!1),end:c(!0)}},function(e,t,n){"use strict";var o=n(31),r=n(23);e.exports="".repeat||function(e){var t=String(r(this)),n="",i=o(e);if(i<0||i==Infinity)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(t+=t))1&i&&(n+=t);return n}},function(e,t,n){"use strict";e.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},function(e,t,n){"use strict";var o,r,i,a=n(7),c=n(5),l=n(34),d=n(52),u=n(137),s=n(91),p=n(156),m=a.location,f=a.setImmediate,h=a.clearImmediate,C=a.process,g=a.MessageChannel,b=a.Dispatch,N=0,v={},V=function(e){if(v.hasOwnProperty(e)){var t=v[e];delete v[e],t()}},y=function(e){return function(){V(e)}},k=function(e){V(e.data)},x=function(e){a.postMessage(e+"",m.protocol+"//"+m.host)};f&&h||(f=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return v[++N]=function(){("function"==typeof e?e:Function(e)).apply(undefined,t)},o(N),N},h=function(e){delete v[e]},"process"==l(C)?o=function(e){C.nextTick(y(e))}:b&&b.now?o=function(e){b.now(y(e))}:g&&!p?(i=(r=new g).port2,r.port1.onmessage=k,o=d(i.postMessage,i,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||c(x)||"file:"===m.protocol?o="onreadystatechange"in s("script")?function(e){u.appendChild(s("script")).onreadystatechange=function(){u.removeChild(this),V(e)}}:function(e){setTimeout(y(e),0)}:(o=x,a.addEventListener("message",k,!1))),e.exports={set:f,clear:h}},function(e,t,n){"use strict";var o=n(8),r=n(34),i=n(13)("match");e.exports=function(e){var t;return o(e)&&((t=e[i])!==undefined?!!t:"RegExp"==r(e))}},function(e,t,n){"use strict";var o=n(5);function r(e,t){return RegExp(e,t)}t.UNSUPPORTED_Y=o((function(){var e=r("a","y");return e.lastIndex=2,null!=e.exec("abcd")})),t.BROKEN_CARET=o((function(){var e=r("^r","gy");return e.lastIndex=2,null!=e.exec("str")}))},function(e,t,n){"use strict";var o=n(31),r=n(23),i=function(e){return function(t,n){var i,a,c=String(r(t)),l=o(n),d=c.length;return l<0||l>=d?e?"":undefined:(i=c.charCodeAt(l))<55296||i>56319||l+1===d||(a=c.charCodeAt(l+1))<56320||a>57343?e?c.charAt(l):i:e?c.slice(l,l+2):a-56320+(i-55296<<10)+65536}};e.exports={codeAt:i(!1),charAt:i(!0)}},function(e,t,n){"use strict";var o=n(111);e.exports=function(e){if(o(e))throw TypeError("The method doesn't accept regular expressions");return e}},function(e,t,n){"use strict";var o=n(13)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[o]=!1,"/./"[e](t)}catch(r){}}return!1}},function(e,t,n){"use strict";var o=n(113).charAt;e.exports=function(e,t,n){return t+(n?o(e,t).length:1)}},function(e,t,n){"use strict";var o=n(5),r=n(84);e.exports=function(e){return o((function(){return!!r[e]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[e]()||r[e].name!==e}))}},function(e,t,n){"use strict";var o=n(7),r=n(5),i=n(78),a=n(11).NATIVE_ARRAY_BUFFER_VIEWS,c=o.ArrayBuffer,l=o.Int8Array;e.exports=!a||!r((function(){l(1)}))||!r((function(){new l(-1)}))||!i((function(e){new l,new l(null),new l(1.5),new l(e)}),!0)||r((function(){return 1!==new l(new c(2),1,undefined).length}))},function(e,t,n){"use strict";t.__esModule=!0,t.vecNormalize=t.vecLength=t.vecInverse=t.vecScale=t.vecDivide=t.vecMultiply=t.vecSubtract=t.vecAdd=void 0;var o=n(18),r=function(e,t){return e+t},i=function(e,t){return e-t},a=function(e,t){return e*t},c=function(e,t){return e/t};t.vecAdd=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,o.reduce)((function(e,t){return(0,o.zipWith)(r)(e,t)}))(t)};t.vecSubtract=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,o.reduce)((function(e,t){return(0,o.zipWith)(i)(e,t)}))(t)};t.vecMultiply=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,o.reduce)((function(e,t){return(0,o.zipWith)(a)(e,t)}))(t)};var l=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,o.reduce)((function(e,t){return(0,o.zipWith)(c)(e,t)}))(t)};t.vecDivide=l;t.vecScale=function(e,t){return(0,o.map)((function(e){return e*t}))(e)};t.vecInverse=function(e){return(0,o.map)((function(e){return-e}))(e)};var d=function(e){return Math.sqrt((0,o.reduce)(r)((0,o.zipWith)(a)(e,e)))};t.vecLength=d;t.vecNormalize=function(e){return l(e,d(e))}},function(e,t,n){"use strict";t.__esModule=!0,t.debugReducer=t.useDebug=t.selectDebug=t.toggleDebugLayout=t.toggleKitchenSink=void 0;var o=n(90),r=function(){return{type:"debug/toggleKitchenSink"}};t.toggleKitchenSink=r;var i=function(){return{type:"debug/toggleDebugLayout"}};t.toggleDebugLayout=i,(0,o.subscribeToHotKey)("F11",(function(){return{type:"debug/toggleDebugLayout"}})),(0,o.subscribeToHotKey)("F12",(function(){return{type:"debug/toggleKitchenSink"}})),(0,o.subscribeToHotKey)("Ctrl+Alt+[8]",(function(){setTimeout((function(){throw new Error("OOPSIE WOOPSIE!! UwU We made a fucky wucky!! A wittle fucko boingo! The code monkeys at our headquarters are working VEWY HAWD to fix this!")}))}));var a=function(e){return e.debug};t.selectDebug=a;t.useDebug=function(e){return a(e.store.getState())};t.debugReducer=function(e,t){void 0===e&&(e={});var n=t.type;t.payload;return"debug/toggleKitchenSink"===n?Object.assign({},e,{kitchenSink:!e.kitchenSink}):"debug/toggleDebugLayout"===n?Object.assign({},e,{debugLayout:!e.debugLayout}):e}},function(e,t,n){"use strict";t.__esModule=!0,t.Layout=t.refocusLayout=void 0;var o=n(0),r=n(6),i=n(16);t.refocusLayout=function(){if(!Byond.IS_LTE_IE8){var e=document.getElementById("Layout__content");e&&e.focus()}};var a=function(e){var t=e.className,n=e.theme,i=void 0===n?"nanotrasen":n,a=e.children;return(0,o.createVNode)(1,"div","theme-"+i,(0,o.createVNode)(1,"div",(0,r.classes)(["Layout",t]),a,0),2)};t.Layout=a;a.Content=function(e){var t=e.className,n=e.scrollable,a=e.children,c=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["className","scrollable","children"]);return(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,r.classes)(["Layout__content",n&&"Layout__content--scrollable",t].concat((0,i.computeBoxClassName)(c))),a,0,Object.assign({id:"Layout__content"},(0,i.computeBoxProps)(c))))}},function(e,t,n){"use strict";t.__esModule=!0,t.AnimatedNumber=void 0;var o=n(15),r=n(0);var i=function(e){return"number"==typeof e&&Number.isFinite(e)&&!Number.isNaN(e)},a=function(e){var t,n;function r(t){var n;return(n=e.call(this,t)||this).timer=null,n.state={value:0},i(t.initial)?n.state.value=t.initial:i(t.value)&&(n.state.value=Number(t.value)),n}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var a=r.prototype;return a.tick=function(){var e=this.props,t=this.state,n=Number(t.value),o=Number(e.value);if(i(o)){var r=.5*n+.5*o;this.setState({value:r})}},a.componentDidMount=function(){var e=this;this.timer=setInterval((function(){return e.tick()}),50)},a.componentWillUnmount=function(){clearTimeout(this.timer)},a.render=function(){var e=this.props,t=this.state,n=e.format,r=e.children,a=t.value,c=e.value;if(!i(c))return c||null;var l=a;if(n)l=n(a);else{var d=String(c).split(".")[1],u=d?d.length:0;l=(0,o.toFixed)(a,(0,o.clamp)(u,0,8))}return"function"==typeof r?r(l,a):l},r}(r.Component);t.AnimatedNumber=a},function(e,t,n){"use strict";t.__esModule=!0,t.ButtonInput=t.ButtonConfirm=t.ButtonCheckbox=t.Button=void 0;var o=n(0),r=n(6),i=n(90),a=n(2),c=n(43),l=n(16),d=n(124),u=n(169);function s(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function p(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}var m=(0,c.createLogger)("Button"),f=function(e){var t=e.className,n=e.fluid,c=e.icon,s=e.color,f=e.disabled,h=e.selected,C=e.tooltip,g=e.tooltipPosition,b=e.ellipsis,N=e.content,v=e.iconRotation,V=e.iconSpin,y=e.children,k=e.onclick,x=e.onClick,_=p(e,["className","fluid","icon","color","disabled","selected","tooltip","tooltipPosition","ellipsis","content","iconRotation","iconSpin","children","onclick","onClick"]),w=!(!N&&!y);return k&&m.warn("Lowercase 'onclick' is not supported on Button and lowercase prop names are discouraged in general. Please use a camelCase'onClick' instead and read: https://infernojs.org/docs/guides/event-handling"),(0,o.normalizeProps)((0,o.createComponentVNode)(2,l.Box,Object.assign({className:(0,r.classes)(["Button",n&&"Button--fluid",f&&"Button--disabled",h&&"Button--selected",w&&"Button--hasContent",b&&"Button--ellipsis",s&&"string"==typeof s?"Button--color--"+s:"Button--color--default",t]),tabIndex:!f&&"0",unselectable:Byond.IS_LTE_IE8,onclick:function(e){(0,a.refocusLayout)(),!f&&x&&x(e)},onKeyDown:function(e){var t=window.event?e.which:e.keyCode;return t===i.KEY_SPACE||t===i.KEY_ENTER?(e.preventDefault(),void(!f&&x&&x(e))):t===i.KEY_ESCAPE?(e.preventDefault(),void(0,a.refocusLayout)()):void 0}},_,{children:[c&&(0,o.createComponentVNode)(2,d.Icon,{name:c,rotation:v,spin:V}),N,y,C&&(0,o.createComponentVNode)(2,u.Tooltip,{content:C,position:g})]})))};t.Button=f,f.defaultHooks=r.pureComponentHooks;var h=function(e){var t=e.checked,n=p(e,["checked"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,f,Object.assign({color:"transparent",icon:t?"check-square-o":"square-o",selected:t},n)))};t.ButtonCheckbox=h,f.Checkbox=h;var C=function(e){function t(){var t;return(t=e.call(this)||this).state={clickedOnce:!1},t.handleClick=function(){t.state.clickedOnce&&t.setClickedOnce(!1)},t}s(t,e);var n=t.prototype;return n.setClickedOnce=function(e){var t=this;this.setState({clickedOnce:e}),e?setTimeout((function(){return window.addEventListener("click",t.handleClick)})):window.removeEventListener("click",this.handleClick)},n.render=function(){var e=this,t=this.props,n=t.confirmContent,r=void 0===n?"Confirm?":n,i=t.confirmColor,a=void 0===i?"bad":i,c=t.confirmIcon,l=t.icon,d=t.color,u=t.content,s=t.onClick,m=p(t,["confirmContent","confirmColor","confirmIcon","icon","color","content","onClick"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,f,Object.assign({content:this.state.clickedOnce?r:u,icon:this.state.clickedOnce?c:l,color:this.state.clickedOnce?a:d,onClick:function(){return e.state.clickedOnce?s():e.setClickedOnce(!0)}},m)))},t}(o.Component);t.ButtonConfirm=C,f.Confirm=C;var g=function(e){function t(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={inInput:!1},t}s(t,e);var n=t.prototype;return n.setInInput=function(e){if(this.setState({inInput:e}),this.inputRef){var t=this.inputRef.current;if(e){t.value=this.props.currentValue||"";try{t.focus(),t.select()}catch(n){}}}},n.commitResult=function(e){if(this.inputRef){var t=this.inputRef.current;if(""!==t.value)return void this.props.onCommit(e,t.value);if(!this.props.defaultValue)return;this.props.onCommit(e,this.props.defaultValue)}},n.render=function(){var e=this,t=this.props,n=t.fluid,a=t.content,c=t.icon,s=t.iconRotation,m=t.iconSpin,f=t.tooltip,h=t.tooltipPosition,C=t.color,g=void 0===C?"default":C,b=(t.placeholder,t.maxLength,p(t,["fluid","content","icon","iconRotation","iconSpin","tooltip","tooltipPosition","color","placeholder","maxLength"]));return(0,o.normalizeProps)((0,o.createComponentVNode)(2,l.Box,Object.assign({className:(0,r.classes)(["Button",n&&"Button--fluid","Button--color--"+g])},b,{onClick:function(){return e.setInInput(!0)},children:[c&&(0,o.createComponentVNode)(2,d.Icon,{name:c,rotation:s,spin:m}),(0,o.createVNode)(1,"div",null,a,0),(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:this.state.inInput?undefined:"none","text-align":"left"},onBlur:function(t){e.state.inInput&&(e.setInInput(!1),e.commitResult(t))},onKeyDown:function(t){if(t.keyCode===i.KEY_ENTER)return e.setInInput(!1),void e.commitResult(t);t.keyCode===i.KEY_ESCAPE&&e.setInInput(!1)}},null,this.inputRef),f&&(0,o.createComponentVNode)(2,u.Tooltip,{content:f,position:h})]})))},t}(o.Component);t.ButtonInput=g,f.Input=g},function(e,t,n){"use strict";t.__esModule=!0,t.Icon=void 0;var o=n(0),r=n(6),i=n(16);var a=/-o$/,c=function(e){var t=e.name,n=e.size,c=e.spin,l=e.className,d=e.style,u=void 0===d?{}:d,s=e.rotation,p=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["name","size","spin","className","style","rotation"]);n&&(u["font-size"]=100*n+"%"),"number"==typeof s&&(u.transform="rotate("+s+"deg)");var m=a.test(t),f=t.replace(a,"");return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({as:"i",className:(0,r.classes)([l,m?"far":"fas","fa-"+f,c&&"fa-spin"]),style:u},p)))};t.Icon=c,c.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.DraggableControl=void 0;var o=n(0),r=n(15),i=n(6),a=n(122);var c=function(e,t){return e.screenX*t[0]+e.screenY*t[1]},l=function(e){var t,n;function i(t){var n;return(n=e.call(this,t)||this).inputRef=(0,o.createRef)(),n.state={value:t.value,dragging:!1,editing:!1,internalValue:null,origin:null,suppressingFlicker:!1},n.flickerTimer=null,n.suppressFlicker=function(){var e=n.props.suppressFlicker;e>0&&(n.setState({suppressingFlicker:!0}),clearTimeout(n.flickerTimer),n.flickerTimer=setTimeout((function(){return n.setState({suppressingFlicker:!1})}),e))},n.handleDragStart=function(e){var t=n.props,o=t.value,r=t.dragMatrix;n.state.editing||(document.body.style["pointer-events"]="none",n.ref=e.target,n.setState({dragging:!1,origin:c(e,r),value:o,internalValue:o}),n.timer=setTimeout((function(){n.setState({dragging:!0})}),250),n.dragInterval=setInterval((function(){var t=n.state,o=t.dragging,r=t.value,i=n.props.onDrag;o&&i&&i(e,r)}),500),document.addEventListener("mousemove",n.handleDragMove),document.addEventListener("mouseup",n.handleDragEnd))},n.handleDragMove=function(e){var t=n.props,o=t.minValue,i=t.maxValue,a=t.step,l=t.stepPixelSize,d=t.dragMatrix;n.setState((function(t){var n=Object.assign({},t),u=c(e,d)-n.origin;if(t.dragging){var s=Number.isFinite(o)?o%a:0;n.internalValue=(0,r.clamp)(n.internalValue+u*a/l,o-a,i+a),n.value=(0,r.clamp)(n.internalValue-n.internalValue%a+s,o,i),n.origin=c(e,d)}else Math.abs(u)>4&&(n.dragging=!0);return n}))},n.handleDragEnd=function(e){var t=n.props,o=t.onChange,r=t.onDrag,i=n.state,a=i.dragging,c=i.value,l=i.internalValue;if(document.body.style["pointer-events"]="auto",clearTimeout(n.timer),clearInterval(n.dragInterval),n.setState({dragging:!1,editing:!a,origin:null}),document.removeEventListener("mousemove",n.handleDragMove),document.removeEventListener("mouseup",n.handleDragEnd),a)n.suppressFlicker(),o&&o(e,c),r&&r(e,c);else if(n.inputRef){var d=n.inputRef.current;d.value=l;try{d.focus(),d.select()}catch(u){}}},n}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i.prototype.render=function(){var e=this,t=this.state,n=t.dragging,i=t.editing,c=t.value,l=t.suppressingFlicker,d=this.props,u=d.animated,s=d.value,p=d.unit,m=d.minValue,f=d.maxValue,h=d.format,C=d.onChange,g=d.onDrag,b=d.children,N=d.height,v=d.lineHeight,V=d.fontSize,y=s;(n||l)&&(y=c);var k=function(e){return e+(p?" "+p:"")},x=u&&!n&&!l&&(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:y,format:h,children:k})||k(h?h(y):y),_=(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:i?undefined:"none",height:N,"line-height":v,"font-size":V},onBlur:function(t){if(i){var n=(0,r.clamp)(t.target.value,m,f);e.setState({editing:!1,value:n}),e.suppressFlicker(),C&&C(t,n),g&&g(t,n)}},onKeyDown:function(t){if(13===t.keyCode){var n=(0,r.clamp)(t.target.value,m,f);return e.setState({editing:!1,value:n}),e.suppressFlicker(),C&&C(t,n),void(g&&g(t,n))}27!==t.keyCode||e.setState({editing:!1})}},null,this.inputRef);return b({dragging:n,editing:i,value:s,displayValue:y,displayElement:x,inputElement:_,handleDragStart:this.handleDragStart})},i}(o.Component);t.DraggableControl=l,l.defaultHooks=i.pureComponentHooks,l.defaultProps={minValue:-Infinity,maxValue:+Infinity,step:1,stepPixelSize:1,suppressFlicker:50,dragMatrix:[1,0]}},function(e,t,n){"use strict";t.__esModule=!0,t.NumberInput=void 0;var o=n(0),r=n(15),i=n(6),a=n(122),c=n(16);var l=function(e){var t,n;function l(t){var n;n=e.call(this,t)||this;var i=t.value;return n.inputRef=(0,o.createRef)(),n.state={value:i,dragging:!1,editing:!1,internalValue:null,origin:null,suppressingFlicker:!1},n.flickerTimer=null,n.suppressFlicker=function(){var e=n.props.suppressFlicker;e>0&&(n.setState({suppressingFlicker:!0}),clearTimeout(n.flickerTimer),n.flickerTimer=setTimeout((function(){return n.setState({suppressingFlicker:!1})}),e))},n.handleDragStart=function(e){var t=n.props.value;n.state.editing||(document.body.style["pointer-events"]="none",n.ref=e.target,n.setState({dragging:!1,origin:e.screenY,value:t,internalValue:t}),n.timer=setTimeout((function(){n.setState({dragging:!0})}),250),n.dragInterval=setInterval((function(){var t=n.state,o=t.dragging,r=t.value,i=n.props.onDrag;o&&i&&i(e,r)}),500),document.addEventListener("mousemove",n.handleDragMove),document.addEventListener("mouseup",n.handleDragEnd))},n.handleDragMove=function(e){var t=n.props,o=t.minValue,i=t.maxValue,a=t.step,c=t.stepPixelSize;n.setState((function(t){var n=Object.assign({},t),l=n.origin-e.screenY;if(t.dragging){var d=Number.isFinite(o)?o%a:0;n.internalValue=(0,r.clamp)(n.internalValue+l*a/c,o-a,i+a),n.value=(0,r.clamp)(n.internalValue-n.internalValue%a+d,o,i),n.origin=e.screenY}else Math.abs(l)>4&&(n.dragging=!0);return n}))},n.handleDragEnd=function(e){var t=n.props,o=t.onChange,r=t.onDrag,i=n.state,a=i.dragging,c=i.value,l=i.internalValue;if(document.body.style["pointer-events"]="auto",clearTimeout(n.timer),clearInterval(n.dragInterval),n.setState({dragging:!1,editing:!a,origin:null}),document.removeEventListener("mousemove",n.handleDragMove),document.removeEventListener("mouseup",n.handleDragEnd),a)n.suppressFlicker(),o&&o(e,c),r&&r(e,c);else if(n.inputRef){var d=n.inputRef.current;d.value=l;try{d.focus(),d.select()}catch(u){}}},n}return n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,l.prototype.render=function(){var e=this,t=this.state,n=t.dragging,l=t.editing,d=t.value,u=t.suppressingFlicker,s=this.props,p=s.className,m=s.fluid,f=s.animated,h=s.value,C=s.unit,g=s.minValue,b=s.maxValue,N=s.height,v=s.width,V=s.lineHeight,y=s.fontSize,k=s.format,x=s.onChange,_=s.onDrag,w=h;(n||u)&&(w=d);var B=function(e){return(0,o.createVNode)(1,"div","NumberInput__content",e+(C?" "+C:""),0,{unselectable:Byond.IS_LTE_IE8})},S=f&&!n&&!u&&(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:w,format:k,children:B})||B(k?k(w):w);return(0,o.createComponentVNode)(2,c.Box,{className:(0,i.classes)(["NumberInput",m&&"NumberInput--fluid",p]),minWidth:v,minHeight:N,lineHeight:V,fontSize:y,onMouseDown:this.handleDragStart,children:[(0,o.createVNode)(1,"div","NumberInput__barContainer",(0,o.createVNode)(1,"div","NumberInput__bar",null,1,{style:{height:(0,r.clamp)((w-g)/(b-g)*100,0,100)+"%"}}),2),S,(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:l?undefined:"none",height:N,"line-height":V,"font-size":y},onBlur:function(t){if(l){var n=(0,r.clamp)(t.target.value,g,b);e.setState({editing:!1,value:n}),e.suppressFlicker(),x&&x(t,n),_&&_(t,n)}},onKeyDown:function(t){if(13===t.keyCode){var n=(0,r.clamp)(t.target.value,g,b);return e.setState({editing:!1,value:n}),e.suppressFlicker(),x&&x(t,n),void(_&&_(t,n))}27!==t.keyCode||e.setState({editing:!1})}},null,this.inputRef)]})},l}(o.Component);t.NumberInput=l,l.defaultHooks=i.pureComponentHooks,l.defaultProps={minValue:-Infinity,maxValue:+Infinity,step:1,stepPixelSize:1,suppressFlicker:50}},function(e,t,n){"use strict";t.__esModule=!0,t.GenericUplink=t.Uplink=void 0;var o=n(0),r=n(19),i=n(1),a=n(3),c=n(44),l=n(2);t.Uplink=function(e,t){var n=(0,i.useBackend)(t).data.telecrystals;return(0,o.createComponentVNode)(2,l.Window,{width:620,height:580,theme:"syndicate",resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,d,{currencyAmount:n,currencySymbol:"TC"})})})};var d=function(e,t){var n,l,d=e.currencyAmount,s=void 0===d?0:d,p=e.currencySymbol,m=void 0===p?"cr":p,f=(0,i.useBackend)(t),h=f.act,C=f.data,g=C.compactMode,b=C.lockable,N=C.categories,v=void 0===N?[]:N,V=(0,i.useLocalState)(t,"searchText",""),y=V[0],k=V[1],x=(0,i.useLocalState)(t,"category",null==(n=v[0])?void 0:n.name),_=x[0],w=x[1],B=(0,r.createSearch)(y,(function(e){return e.name+e.desc})),S=y.length>0&&v.flatMap((function(e){return e.items||[]})).filter(B).filter((function(e,t){return t<25}))||(null==(l=v.find((function(e){return e.name===_})))?void 0:l.items)||[];return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:s>0?"good":"bad",children:[(0,c.formatMoney)(s)," ",m]}),buttons:(0,o.createFragment)([(0,o.createTextVNode)("Search"),(0,o.createComponentVNode)(2,a.Input,{autoFocus:!0,value:y,onInput:function(e,t){return k(t)},mx:1}),(0,o.createComponentVNode)(2,a.Button,{icon:g?"list":"info",content:g?"Compact":"Detailed",onClick:function(){return h("compact_toggle")}}),!!b&&(0,o.createComponentVNode)(2,a.Button,{icon:"lock",content:"Lock",onClick:function(){return h("lock")}})],0),children:(0,o.createComponentVNode)(2,a.Flex,{children:[0===y.length&&(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:v.map((function(e){var t;return(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:e.name===_,onClick:function(){return w(e.name)},children:[e.name," (",(null==(t=e.items)?void 0:t.length)||0,")"]},e.name)}))})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:[0===S.length&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:0===y.length?"No items in this category.":"No results found."}),(0,o.createComponentVNode)(2,u,{compactMode:y.length>0||g,currencyAmount:s,currencySymbol:m,items:S})]})]})})};t.GenericUplink=d;var u=function(e,t){var n=e.compactMode,l=e.currencyAmount,d=e.currencySymbol,u=(0,i.useBackend)(t).act,s=(0,i.useLocalState)(t,"hoveredItem",{}),p=s[0],m=s[1],f=p&&p.cost||0,h=e.items.map((function(e){var t=p&&p.name!==e.name,n=l-f<e.cost,o=t&&n,r=l<e.cost||o;return Object.assign({},e,{disabled:r})}));return n?(0,o.createComponentVNode)(2,a.Table,{children:h.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:(0,r.decodeHtmlEntities)(e.name)}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:(0,c.formatMoney)(e.cost)+" "+d,disabled:e.disabled,tooltip:e.desc,tooltipPosition:"left",onmouseover:function(){return m(e)},onmouseout:function(){return m({})},onClick:function(){return u("buy",{name:e.name})}})})]},e.name)}))}):h.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{content:e.cost+" "+d,disabled:e.disabled,onmouseover:function(){return m(e)},onmouseout:function(){return m({})},onClick:function(){return u("buy",{name:e.name})}}),children:(0,r.decodeHtmlEntities)(e.desc)},e.name)}))}},function(e,t,n){"use strict";t.__esModule=!0,t.AreaCharge=t.PowerMonitorContent=t.PowerMonitor=t.powerRank=void 0;var o=n(0),r=n(18),i=n(33),a=n(15),c=n(6),l=n(1),d=n(3),u=n(2),s=5e5,p=function(e){var t=String(e.split(" ")[1]).toLowerCase();return["w","kw","mw","gw"].indexOf(t)};t.powerRank=p;t.PowerMonitor=function(){return(0,o.createComponentVNode)(2,u.Window,{width:550,height:700,resizable:!0,children:(0,o.createComponentVNode)(2,u.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,m)})})};var m=function(e,t){var n=(0,l.useBackend)(t).data,c=n.history,u=(0,l.useLocalState)(t,"sortByField",null),m=u[0],C=u[1],g=c.supply[c.supply.length-1]||0,b=c.demand[c.demand.length-1]||0,N=c.supply.map((function(e,t){return[t,e]})),v=c.demand.map((function(e,t){return[t,e]})),V=Math.max.apply(Math,[s].concat(c.supply,c.demand)),y=(0,i.flow)([(0,r.map)((function(e,t){return Object.assign({},e,{id:e.name+t})})),"name"===m&&(0,r.sortBy)((function(e){return e.name})),"charge"===m&&(0,r.sortBy)((function(e){return-e.charge})),"draw"===m&&(0,r.sortBy)((function(e){return-p(e.load)}),(function(e){return-parseFloat(e.load)}))])(n.areas);return(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Flex,{mx:-.5,mb:1,children:[(0,o.createComponentVNode)(2,d.Flex.Item,{mx:.5,width:"200px",children:(0,o.createComponentVNode)(2,d.Section,{children:(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Supply",children:(0,o.createComponentVNode)(2,d.ProgressBar,{value:g,minValue:0,maxValue:V,color:"teal",children:(0,a.toFixed)(g/1e3)+" kW"})}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Draw",children:(0,o.createComponentVNode)(2,d.ProgressBar,{value:b,minValue:0,maxValue:V,color:"pink",children:(0,a.toFixed)(b/1e3)+" kW"})})]})})}),(0,o.createComponentVNode)(2,d.Flex.Item,{mx:.5,grow:1,children:(0,o.createComponentVNode)(2,d.Section,{position:"relative",height:"100%",children:[(0,o.createComponentVNode)(2,d.Chart.Line,{fillPositionedParent:!0,data:N,rangeX:[0,N.length-1],rangeY:[0,V],strokeColor:"rgba(0, 181, 173, 1)",fillColor:"rgba(0, 181, 173, 0.25)"}),(0,o.createComponentVNode)(2,d.Chart.Line,{fillPositionedParent:!0,data:v,rangeX:[0,v.length-1],rangeY:[0,V],strokeColor:"rgba(224, 57, 151, 1)",fillColor:"rgba(224, 57, 151, 0.25)"})]})})]}),(0,o.createComponentVNode)(2,d.Section,{children:[(0,o.createComponentVNode)(2,d.Box,{mb:1,children:[(0,o.createComponentVNode)(2,d.Box,{inline:!0,mr:2,color:"label",children:"Sort by:"}),(0,o.createComponentVNode)(2,d.Button.Checkbox,{checked:"name"===m,content:"Name",onClick:function(){return C("name"!==m&&"name")}}),(0,o.createComponentVNode)(2,d.Button.Checkbox,{checked:"charge"===m,content:"Charge",onClick:function(){return C("charge"!==m&&"charge")}}),(0,o.createComponentVNode)(2,d.Button.Checkbox,{checked:"draw"===m,content:"Draw",onClick:function(){return C("draw"!==m&&"draw")}})]}),(0,o.createComponentVNode)(2,d.Table,{children:[(0,o.createComponentVNode)(2,d.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,d.Table.Cell,{children:"Area"}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,children:"Charge"}),(0,o.createComponentVNode)(2,d.Table.Cell,{textAlign:"right",children:"Draw"}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,title:"Equipment",children:"Eqp"}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,title:"Lighting",children:"Lgt"}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,title:"Environment",children:"Env"})]}),y.map((function(e,t){return(0,o.createVNode)(1,"tr","Table__row candystripe",[(0,o.createVNode)(1,"td",null,e.name,0),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",(0,o.createComponentVNode)(2,f,{charging:e.charging,charge:e.charge}),2),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",e.load,0),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,h,{status:e.eqp}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,h,{status:e.lgt}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,h,{status:e.env}),2)],4,null,e.id)}))]})]})],4)};t.PowerMonitorContent=m;var f=function(e){var t=e.charging,n=e.charge;return(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Icon,{width:"18px",textAlign:"center",name:0===t&&(n>50?"battery-half":"battery-quarter")||1===t&&"bolt"||2===t&&"battery-full",color:0===t&&(n>50?"yellow":"red")||1===t&&"yellow"||2===t&&"green"}),(0,o.createComponentVNode)(2,d.Box,{inline:!0,width:"36px",textAlign:"right",children:(0,a.toFixed)(n)+"%"})],4)};t.AreaCharge=f,f.defaultHooks=c.pureComponentHooks;var h=function(e){var t=e.status,n=Boolean(2&t),r=Boolean(1&t),i=(n?"On":"Off")+" ["+(r?"auto":"manual")+"]";return(0,o.createComponentVNode)(2,d.ColorBox,{color:n?"good":"bad",content:r?undefined:"M",title:i})};h.defaultHooks=c.pureComponentHooks},function(e,t,n){"use strict";var o=n(9),r=n(5),i=n(91);e.exports=!o&&!r((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var o=n(7),r=n(92),i=o["__core-js_shared__"]||r("__core-js_shared__",{});e.exports=i},function(e,t,n){"use strict";var o=n(7),r=n(93),i=o.WeakMap;e.exports="function"==typeof i&&/native code/.test(r(i))},function(e,t,n){"use strict";var o=n(20),r=n(95),i=n(22),a=n(14);e.exports=function(e,t){for(var n=r(t),c=a.f,l=i.f,d=0;d<n.length;d++){var u=n[d];o(e,u)||c(e,u,l(t,u))}}},function(e,t,n){"use strict";var o=n(7);e.exports=o},function(e,t,n){"use strict";var o=n(20),r=n(26),i=n(64).indexOf,a=n(63);e.exports=function(e,t){var n,c=r(e),l=0,d=[];for(n in c)!o(a,n)&&o(c,n)&&d.push(n);for(;t.length>l;)o(c,n=t[l++])&&(~i(d,n)||d.push(n));return d}},function(e,t,n){"use strict";var o=n(98);e.exports=o&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(e,t,n){"use strict";var o=n(9),r=n(14),i=n(10),a=n(66);e.exports=o?Object.defineProperties:function(e,t){i(e);for(var n,o=a(t),c=o.length,l=0;c>l;)r.f(e,n=o[l++],t[n]);return e}},function(e,t,n){"use strict";var o=n(39);e.exports=o("document","documentElement")},function(e,t,n){"use strict";var o=n(26),r=n(51).f,i={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function(e){return a&&"[object Window]"==i.call(e)?function(e){try{return r(e)}catch(t){return a.slice()}}(e):r(o(e))}},function(e,t,n){"use strict";var o=n(13);t.f=o},function(e,t,n){"use strict";var o=n(17),r=n(45),i=n(12),a=Math.min;e.exports=[].copyWithin||function(e,t){var n=o(this),c=i(n.length),l=r(e,c),d=r(t,c),u=arguments.length>2?arguments[2]:undefined,s=a((u===undefined?c:r(u,c))-d,c-l),p=1;for(d<l&&l<d+s&&(p=-1,d+=s-1,l+=s-1);s-- >0;)d in n?n[l]=n[d]:delete n[l],l+=p,d+=p;return n}},function(e,t,n){"use strict";var o=n(56),r=n(12),i=n(52);e.exports=function a(e,t,n,c,l,d,u,s){for(var p,m=l,f=0,h=!!u&&i(u,s,3);f<c;){if(f in n){if(p=h?h(n[f],f,t):n[f],d>0&&o(p))m=a(e,t,p,r(p.length),m,d-1)-1;else{if(m>=9007199254740991)throw TypeError("Exceed the acceptable array length");e[m]=p}m++}f++}return m}},function(e,t,n){"use strict";var o=n(10);e.exports=function(e,t,n,r){try{return r?t(o(n)[0],n[1]):t(n)}catch(a){var i=e["return"];throw i!==undefined&&o(i.call(e)),a}}},function(e,t,n){"use strict";var o=n(26),r=n(48),i=n(69),a=n(36),c=n(104),l=a.set,d=a.getterFor("Array Iterator");e.exports=c(Array,"Array",(function(e,t){l(this,{type:"Array Iterator",target:o(e),index:0,kind:t})}),(function(){var e=d(this),t=e.target,n=e.kind,o=e.index++;return!t||o>=t.length?(e.target=undefined,{value:undefined,done:!0}):"keys"==n?{value:o,done:!1}:"values"==n?{value:t[o],done:!1}:{value:[o,t[o]],done:!1}}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},function(e,t,n){"use strict";var o,r,i,a=n(37),c=n(30),l=n(20),d=n(13),u=n(40),s=d("iterator"),p=!1;[].keys&&("next"in(i=[].keys())?(r=a(a(i)))!==Object.prototype&&(o=r):p=!0),o==undefined&&(o={}),u||l(o,s)||c(o,s,(function(){return this})),e.exports={IteratorPrototype:o,BUGGY_SAFARI_ITERATORS:p}},function(e,t,n){"use strict";var o=n(8);e.exports=function(e){if(!o(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},function(e,t,n){"use strict";var o=n(26),r=n(31),i=n(12),a=n(41),c=n(25),l=Math.min,d=[].lastIndexOf,u=!!d&&1/[1].lastIndexOf(1,-0)<0,s=a("lastIndexOf"),p=c("indexOf",{ACCESSORS:!0,1:0}),m=u||!s||!p;e.exports=m?function(e){if(u)return d.apply(this,arguments)||0;var t=o(this),n=i(t.length),a=n-1;for(arguments.length>1&&(a=l(a,r(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in t&&t[a]===e)return a||0;return-1}:d},function(e,t,n){"use strict";var o=n(31),r=n(12);e.exports=function(e){if(e===undefined)return 0;var t=o(e),n=r(t);if(t!==n)throw RangeError("Wrong length or index");return n}},function(e,t,n){"use strict";var o=n(32),r=n(8),i=[].slice,a={},c=function(e,t,n){if(!(t in a)){for(var o=[],r=0;r<t;r++)o[r]="a["+r+"]";a[t]=Function("C,a","return new C("+o.join(",")+")")}return a[t](e,n)};e.exports=Function.bind||function(e){var t=o(this),n=i.call(arguments,1),a=function(){var o=n.concat(i.call(arguments));return this instanceof a?c(t,o.length,o):t.apply(e,o)};return r(t.prototype)&&(a.prototype=t.prototype),a}},function(e,t,n){"use strict";var o=n(14).f,r=n(46),i=n(70),a=n(52),c=n(58),l=n(72),d=n(104),u=n(57),s=n(9),p=n(55).fastKey,m=n(36),f=m.set,h=m.getterFor;e.exports={getConstructor:function(e,t,n,d){var u=e((function(e,o){c(e,u,t),f(e,{type:t,index:r(null),first:undefined,last:undefined,size:0}),s||(e.size=0),o!=undefined&&l(o,e[d],e,n)})),m=h(t),C=function(e,t,n){var o,r,i=m(e),a=g(e,t);return a?a.value=n:(i.last=a={index:r=p(t,!0),key:t,value:n,previous:o=i.last,next:undefined,removed:!1},i.first||(i.first=a),o&&(o.next=a),s?i.size++:e.size++,"F"!==r&&(i.index[r]=a)),e},g=function(e,t){var n,o=m(e),r=p(t);if("F"!==r)return o.index[r];for(n=o.first;n;n=n.next)if(n.key==t)return n};return i(u.prototype,{clear:function(){for(var e=m(this),t=e.index,n=e.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=undefined),delete t[n.index],n=n.next;e.first=e.last=undefined,s?e.size=0:this.size=0},"delete":function(e){var t=m(this),n=g(this,e);if(n){var o=n.next,r=n.previous;delete t.index[n.index],n.removed=!0,r&&(r.next=o),o&&(o.previous=r),t.first==n&&(t.first=o),t.last==n&&(t.last=r),s?t.size--:this.size--}return!!n},forEach:function(e){for(var t,n=m(this),o=a(e,arguments.length>1?arguments[1]:undefined,3);t=t?t.next:n.first;)for(o(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!g(this,e)}}),i(u.prototype,n?{get:function(e){var t=g(this,e);return t&&t.value},set:function(e,t){return C(this,0===e?0:e,t)}}:{add:function(e){return C(this,e=0===e?0:e,e)}}),s&&o(u.prototype,"size",{get:function(){return m(this).size}}),u},setStrong:function(e,t,n){var o=t+" Iterator",r=h(t),i=h(o);d(e,t,(function(e,t){f(this,{type:o,target:e,state:r(e),kind:t,last:undefined})}),(function(){for(var e=i(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=undefined,{value:undefined,done:!0})}),n?"entries":"values",!n,!0),u(t)}}},function(e,t,n){"use strict";var o=Math.log;e.exports=Math.log1p||function(e){return(e=+e)>-1e-8&&e<1e-8?e-e*e/2:o(1+e)}},function(e,t,n){"use strict";var o=n(8),r=Math.floor;e.exports=function(e){return!o(e)&&isFinite(e)&&r(e)===e}},function(e,t,n){"use strict";var o=n(7),r=n(59).trim,i=n(84),a=o.parseInt,c=/^[+-]?0[Xx]/,l=8!==a(i+"08")||22!==a(i+"0x16");e.exports=l?function(e,t){var n=r(String(e));return a(n,t>>>0||(c.test(n)?16:10))}:a},function(e,t,n){"use strict";var o=n(9),r=n(66),i=n(26),a=n(74).f,c=function(e){return function(t){for(var n,c=i(t),l=r(c),d=l.length,u=0,s=[];d>u;)n=l[u++],o&&!a.call(c,n)||s.push(e?[n,c[n]]:c[n]);return s}};e.exports={entries:c(!0),values:c(!1)}},function(e,t,n){"use strict";e.exports=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},function(e,t,n){"use strict";var o=n(7);e.exports=o.Promise},function(e,t,n){"use strict";var o=n(76);e.exports=/(iphone|ipod|ipad).*applewebkit/i.test(o)},function(e,t,n){"use strict";var o,r,i,a,c,l,d,u,s=n(7),p=n(22).f,m=n(34),f=n(110).set,h=n(156),C=s.MutationObserver||s.WebKitMutationObserver,g=s.process,b=s.Promise,N="process"==m(g),v=p(s,"queueMicrotask"),V=v&&v.value;V||(o=function(){var e,t;for(N&&(e=g.domain)&&e.exit();r;){t=r.fn,r=r.next;try{t()}catch(n){throw r?a():i=undefined,n}}i=undefined,e&&e.enter()},N?a=function(){g.nextTick(o)}:C&&!h?(c=!0,l=document.createTextNode(""),new C(o).observe(l,{characterData:!0}),a=function(){l.data=c=!c}):b&&b.resolve?(d=b.resolve(undefined),u=d.then,a=function(){u.call(d,o)}):a=function(){f.call(s,o)}),e.exports=V||function(e){var t={fn:e,next:undefined};i&&(i.next=t),r||(r=t,a()),i=t}},function(e,t,n){"use strict";var o=n(10),r=n(8),i=n(159);e.exports=function(e,t){if(o(e),r(t)&&t.constructor===e)return t;var n=i.f(e);return(0,n.resolve)(t),n.promise}},function(e,t,n){"use strict";var o=n(32),r=function(e){var t,n;this.promise=new e((function(e,o){if(t!==undefined||n!==undefined)throw TypeError("Bad Promise constructor");t=e,n=o})),this.resolve=o(t),this.reject=o(n)};e.exports.f=function(e){return new r(e)}},function(e,t,n){"use strict";var o=n(4),r=n(87);o({target:"RegExp",proto:!0,forced:/./.exec!==r},{exec:r})},function(e,t,n){"use strict";var o=n(76);e.exports=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(o)},function(e,t,n){"use strict";var o=n(362);e.exports=function(e,t){var n=o(e);if(n%t)throw RangeError("Wrong offset");return n}},function(e,t,n){"use strict";var o=n(17),r=n(12),i=n(102),a=n(101),c=n(52),l=n(11).aTypedArrayConstructor;e.exports=function(e){var t,n,d,u,s,p,m=o(e),f=arguments.length,h=f>1?arguments[1]:undefined,C=h!==undefined,g=i(m);if(g!=undefined&&!a(g))for(p=(s=g.call(m)).next,m=[];!(u=p.call(s)).done;)m.push(u.value);for(C&&f>2&&(h=c(h,arguments[2],2)),n=r(m.length),d=new(l(this))(n),t=0;n>t;t++)d[t]=C?h(m[t],t):m[t];return d}},function(e,t,n){"use strict";var o=n(70),r=n(55).getWeakData,i=n(10),a=n(8),c=n(58),l=n(72),d=n(21),u=n(20),s=n(36),p=s.set,m=s.getterFor,f=d.find,h=d.findIndex,C=0,g=function(e){return e.frozen||(e.frozen=new b)},b=function(){this.entries=[]},N=function(e,t){return f(e.entries,(function(e){return e[0]===t}))};b.prototype={get:function(e){var t=N(this,e);if(t)return t[1]},has:function(e){return!!N(this,e)},set:function(e,t){var n=N(this,e);n?n[1]=t:this.entries.push([e,t])},"delete":function(e){var t=h(this.entries,(function(t){return t[0]===e}));return~t&&this.entries.splice(t,1),!!~t}},e.exports={getConstructor:function(e,t,n,d){var s=e((function(e,o){c(e,s,t),p(e,{type:t,id:C++,frozen:undefined}),o!=undefined&&l(o,e[d],e,n)})),f=m(t),h=function(e,t,n){var o=f(e),a=r(i(t),!0);return!0===a?g(o).set(t,n):a[o.id]=n,e};return o(s.prototype,{"delete":function(e){var t=f(this);if(!a(e))return!1;var n=r(e);return!0===n?g(t)["delete"](e):n&&u(n,t.id)&&delete n[t.id]},has:function(e){var t=f(this);if(!a(e))return!1;var n=r(e);return!0===n?g(t).has(e):n&&u(n,t.id)}}),o(s.prototype,n?{get:function(e){var t=f(this);if(a(e)){var n=r(e);return!0===n?g(t).get(e):n?n[t.id]:undefined}},set:function(e,t){return h(this,e,t)}}:{add:function(e){return h(this,e,!0)}}),s}}},function(e,t,n){"use strict";t.__esModule=!0,t.perf=void 0;var o={mark:function(e,t){0},measure:function(e,t){0}};t.perf=o},function(e,t,n){"use strict";t.__esModule=!0,t.setupHotReloading=t.sendLogEntry=void 0;t.sendLogEntry=function(e,t){};t.setupHotReloading=function(){0}},function(e,t,n){"use strict";t.__esModule=!0,t.resizeStartHandler=t.dragStartHandler=t.setupDrag=t.recallWindowGeometry=t.storeWindowGeometry=t.getScreenSize=t.getScreenPosition=t.setWindowSize=t.setWindowPosition=t.getWindowSize=t.getWindowPosition=t.setWindowKey=void 0;var o=n(422),r=n(119);function i(e,t,n,o,r,i,a){try{var c=e[i](a),l=c.value}catch(d){return void n(d)}c.done?t(l):Promise.resolve(l).then(o,r)}function a(e){return function(){var t=this,n=arguments;return new Promise((function(o,r){var a=e.apply(t,n);function c(e){i(a,o,r,c,l,"next",e)}function l(e){i(a,o,r,c,l,"throw",e)}c(undefined)}))}}var c,l,d,u,s,p=(0,n(43).createLogger)("drag"),m=window.__windowId__,f=!1,h=!1,C=[0,0];t.setWindowKey=function(e){m=e};var g=function(){return[window.screenLeft,window.screenTop]};t.getWindowPosition=g;var b=function(){return[window.innerWidth,window.innerHeight]};t.getWindowSize=b;var N=function(e){var t=(0,r.vecAdd)(e,C);return Byond.winset(window.__windowId__,{pos:t[0]+","+t[1]})};t.setWindowPosition=N;var v=function(e){return Byond.winset(window.__windowId__,{size:e[0]+"x"+e[1]})};t.setWindowSize=v;var V=function(){return[0-C[0],0-C[1]]};t.getScreenPosition=V;var y=function(){return[window.screen.availWidth,window.screen.availHeight]};t.getScreenSize=y;var k=function(e){p.log("storing geometry");var t={pos:g(),size:b()};o.storage.set(e,t);var n=function(e,t,n){void 0===n&&(n=50);for(var o,r=[t],i=0;i<e.length;i++){var a=e[i];a!==t&&(r.length<n?r.push(a):o=a)}return[r,o]}(o.storage.get("geometries")||[],e),r=n[0],i=n[1];i&&o.storage.remove(i),o.storage.set("geometries",r)};t.storeWindowGeometry=k;var x=function(){var e=a(regeneratorRuntime.mark((function t(e,n){var i,a,l,d,u;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(void 0===n&&(n={}),(i=n.fancy&&o.storage.get(e))&&p.log("recalled geometry:",i),a=(null==i?void 0:i.pos)||n.pos,(l=n.size)&&v(l),!a){t.next=13;break}return t.next=9,c;case 9:l&&n.locked&&(a=w(a,l)[1]),N(a),t.next=19;break;case 13:if(!l){t.next=19;break}return t.next=16,c;case 16:d=[window.screen.availWidth-Math.abs(C[0]),window.screen.availHeight-Math.abs(C[1])],u=(0,r.vecAdd)((0,r.vecScale)(d,.5),(0,r.vecScale)(l,-.5),(0,r.vecScale)(C,-1)),N(u);case 19:case"end":return t.stop()}}),t)})));return function(t,n){return e.apply(this,arguments)}}();t.recallWindowGeometry=x;var _=function(){var e=a(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return c=Byond.winget(window.__windowId__,"pos").then((function(e){return[e.x-window.screenLeft,e.y-window.screenTop]})),e.next=3,c;case 3:C=e.sent,p.debug("screen offset",C);case 5:case"end":return e.stop()}}),t)})));return function(){return e.apply(this,arguments)}}();t.setupDrag=_;var w=function(e,t){for(var n=V(),o=y(),r=[e[0],e[1]],i=!1,a=0;a<2;a++){var c=n[a],l=n[a]+o[a];e[a]<c?(r[a]=c,i=!0):e[a]+t[a]>l&&(r[a]=l-t[a],i=!0)}return[i,r]};t.dragStartHandler=function(e){p.log("drag start"),f=!0,l=[window.screenLeft-e.screenX,window.screenTop-e.screenY],document.addEventListener("mousemove",S),document.addEventListener("mouseup",B),S(e)};var B=function T(e){p.log("drag end"),S(e),document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",T),f=!1,k(m)},S=function(e){f&&(e.preventDefault(),N((0,r.vecAdd)([e.screenX,e.screenY],l)))};t.resizeStartHandler=function(e,t){return function(n){d=[e,t],p.log("resize start",d),h=!0,l=[window.screenLeft-n.screenX,window.screenTop-n.screenY],u=[window.innerWidth,window.innerHeight],document.addEventListener("mousemove",I),document.addEventListener("mouseup",L),I(n)}};var L=function A(e){p.log("resize end",s),I(e),document.removeEventListener("mousemove",I),document.removeEventListener("mouseup",A),h=!1,k(m)},I=function(e){h&&(e.preventDefault(),(s=(0,r.vecAdd)(u,(0,r.vecMultiply)(d,(0,r.vecAdd)([e.screenX,e.screenY],(0,r.vecInverse)([window.screenLeft,window.screenTop]),l,[1,1]))))[0]=Math.max(s[0],150),s[1]=Math.max(s[1],50),v(s))}},function(e,t,n){"use strict";t.__esModule=!0,t.useDispatch=t.StoreProvider=t.createStore=void 0;var o=n(33),r=n(423),i=n(0),a=n(1),c=n(120),l=n(90);(0,n(43).createLogger)("store");t.createStore=function(){var e=(0,o.flow)([function(e,t){return void 0===e&&(e={}),e},(0,r.combineReducers)({debug:c.debugReducer,backend:a.backendReducer})]),t=[l.hotKeyMiddleware,a.backendMiddleware];return(0,r.createStore)(e,r.applyMiddleware.apply(void 0,t))};var d=function(e){var t,n;function o(){return e.apply(this,arguments)||this}n=e,(t=o).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var r=o.prototype;return r.getChildContext=function(){return{store:this.props.store}},r.render=function(){return this.props.children},o}(i.Component);t.StoreProvider=d;t.useDispatch=function(e){return e.store.dispatch}},function(e,t,n){"use strict";t.__esModule=!0,t.Tooltip=void 0;var o=n(0),r=n(6);t.Tooltip=function(e){var t=e.content,n=e.position,i=void 0===n?"bottom":n,a="string"==typeof t&&t.length>35;return(0,o.createVNode)(1,"div",(0,r.classes)(["Tooltip",a&&"Tooltip--long",i&&"Tooltip--"+i]),null,1,{"data-tooltip":t})}},function(e,t,n){"use strict";t.__esModule=!0,t.Dimmer=void 0;var o=n(0),r=n(6),i=n(16);t.Dimmer=function(e){var t=e.className,n=e.children,a=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["className","children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({className:(0,r.classes)(["Dimmer"].concat(t))},a,{children:(0,o.createVNode)(1,"div","Dimmer__inner",n,0)})))}},function(e,t,n){"use strict";t.__esModule=!0,t.Divider=void 0;var o=n(0),r=n(6);t.Divider=function(e){var t=e.vertical,n=e.hidden;return(0,o.createVNode)(1,"div",(0,r.classes)(["Divider",n&&"Divider--hidden",t?"Divider--vertical":"Divider--horizontal"]))}},function(e,t,n){"use strict";t.__esModule=!0,t.FlexItem=t.computeFlexItemProps=t.Flex=t.computeFlexProps=void 0;var o=n(0),r=n(6),i=n(16);function a(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}var c=function(e){var t=e.className,n=e.direction,o=e.wrap,i=e.align,c=e.justify,l=e.inline,d=e.spacing,u=void 0===d?0:d,s=a(e,["className","direction","wrap","align","justify","inline","spacing"]);return Object.assign({className:(0,r.classes)(["Flex",Byond.IS_LTE_IE10&&("column"===n?"Flex--iefix--column":"Flex--iefix"),l&&"Flex--inline",u>0&&"Flex--spacing--"+u,t]),style:Object.assign({},s.style,{"flex-direction":n,"flex-wrap":o,"align-items":i,"justify-content":c})},s)};t.computeFlexProps=c;var l=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({},c(e))))};t.Flex=l,l.defaultHooks=r.pureComponentHooks;var d=function(e){var t=e.className,n=e.grow,o=e.order,c=e.shrink,l=e.basis,d=void 0===l?e.width:l,u=e.align,s=a(e,["className","grow","order","shrink","basis","align"]);return Object.assign({className:(0,r.classes)(["Flex__item",Byond.IS_LTE_IE10&&"Flex__item--iefix",t]),style:Object.assign({},s.style,{"flex-grow":n,"flex-shrink":c,"flex-basis":(0,i.unit)(d),order:o,"align-self":u})},s)};t.computeFlexItemProps=d;var u=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({},d(e))))};t.FlexItem=u,u.defaultHooks=r.pureComponentHooks,l.Item=u},function(e,t,n){"use strict";t.__esModule=!0,t.TableCell=t.TableRow=t.Table=void 0;var o=n(0),r=n(6),i=n(16);function a(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}var c=function(e){var t=e.className,n=e.collapsing,c=e.children,l=a(e,["className","collapsing","children"]);return(0,o.normalizeProps)((0,o.createVNode)(1,"table",(0,r.classes)(["Table",n&&"Table--collapsing",t,(0,i.computeBoxClassName)(l)]),(0,o.createVNode)(1,"tbody",null,c,0),2,Object.assign({},(0,i.computeBoxProps)(l))))};t.Table=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.className,n=e.header,c=a(e,["className","header"]);return(0,o.normalizeProps)((0,o.createVNode)(1,"tr",(0,r.classes)(["Table__row",n&&"Table__row--header",t,(0,i.computeBoxClassName)(e)]),null,1,Object.assign({},(0,i.computeBoxProps)(c))))};t.TableRow=l,l.defaultHooks=r.pureComponentHooks;var d=function(e){var t=e.className,n=e.collapsing,c=e.header,l=a(e,["className","collapsing","header"]);return(0,o.normalizeProps)((0,o.createVNode)(1,"td",(0,r.classes)(["Table__cell",n&&"Table__cell--collapsing",c&&"Table__cell--header",t,(0,i.computeBoxClassName)(e)]),null,1,Object.assign({},(0,i.computeBoxProps)(l))))};t.TableCell=d,d.defaultHooks=r.pureComponentHooks,c.Row=l,c.Cell=d},function(e,t,n){"use strict";t.__esModule=!0,t.LabeledListDivider=t.LabeledListItem=t.LabeledList=void 0;var o=n(0),r=n(6),i=n(16),a=n(171),c=function(e){var t=e.children;return(0,o.createVNode)(1,"table","LabeledList",t,0)};t.LabeledList=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.className,n=e.label,a=e.labelColor,c=void 0===a?"label":a,l=e.color,d=e.textAlign,u=e.buttons,s=e.content,p=e.children;return(0,o.createVNode)(1,"tr",(0,r.classes)(["LabeledList__row",t]),[(0,o.createComponentVNode)(2,i.Box,{as:"td",color:c,className:(0,r.classes)(["LabeledList__cell","LabeledList__label"]),children:n?n+":":null}),(0,o.createComponentVNode)(2,i.Box,{as:"td",color:l,textAlign:d,className:(0,r.classes)(["LabeledList__cell","LabeledList__content"]),colSpan:u?undefined:2,children:[s,p]}),u&&(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",u,0)],0)};t.LabeledListItem=l,l.defaultHooks=r.pureComponentHooks;var d=function(e){var t=e.size?(0,i.unit)(Math.max(0,e.size-1)):0;return(0,o.createVNode)(1,"tr","LabeledList__row",(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,a.Divider),2,{colSpan:3,style:{"padding-top":t,"padding-bottom":t}}),2)};t.LabeledListDivider=d,d.defaultHooks=r.pureComponentHooks,c.Item=l,c.Divider=d},function(e,t,n){"use strict";t.__esModule=!0,t.Window=void 0;var o=n(0),r=n(6),i=n(19),a=n(1),c=n(3),l=n(38),d=n(120),u=n(167),s=n(43),p=n(168),m=n(121);var f=(0,s.createLogger)("Window"),h=[400,600],C=function(e){var t,n;function c(){return e.apply(this,arguments)||this}n=e,(t=c).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var s=c.prototype;return s.componentDidMount=function(){var e=(0,a.useBackend)(this.context),t=e.config;if(!e.suspended){f.log("mounting");var n=Object.assign({size:h},t.window);this.props.width&&this.props.height&&(n.size=[this.props.width,this.props.height]),(0,u.setWindowKey)(t.window.key),(0,u.recallWindowGeometry)(t.window.key,n),(0,m.refocusLayout)()}},s.render=function(){var e,t=this.props,n=t.resizable,c=t.theme,s=t.title,h=t.children,C=(0,a.useBackend)(this.context),g=C.config,N=C.suspended,v=(0,d.useDebug)(this.context).debugLayout,V=(0,p.useDispatch)(this.context),y=null==(e=g.window)?void 0:e.fancy,k=g.user.observer?g.status<l.UI_DISABLED:g.status<l.UI_INTERACTIVE;return(0,o.createComponentVNode)(2,m.Layout,{className:"Window",theme:c,children:[(0,o.createComponentVNode)(2,b,{className:"Window__titleBar",title:!N&&(s||(0,i.decodeHtmlEntities)(g.title)),status:g.status,fancy:y,onDragStart:u.dragStartHandler,onClose:function(){f.log("pressed close"),V((0,a.backendSuspendStart)())}}),(0,o.createVNode)(1,"div",(0,r.classes)(["Window__rest",v&&"debug-layout"]),[!N&&h,k&&(0,o.createVNode)(1,"div","Window__dimmer")],0),y&&n&&(0,o.createFragment)([(0,o.createVNode)(1,"div","Window__resizeHandle__e",null,1,{onMousedown:(0,u.resizeStartHandler)(1,0)}),(0,o.createVNode)(1,"div","Window__resizeHandle__s",null,1,{onMousedown:(0,u.resizeStartHandler)(0,1)}),(0,o.createVNode)(1,"div","Window__resizeHandle__se",null,1,{onMousedown:(0,u.resizeStartHandler)(1,1)})],4)]})},c}(o.Component);t.Window=C;C.Content=function(e){var t=e.className,n=e.fitted,i=e.children,a=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["className","fitted","children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,m.Layout.Content,Object.assign({className:(0,r.classes)(["Window__content",t])},a,{children:n&&i||(0,o.createVNode)(1,"div","Window__contentPadding",i,0)})))};var g=function(e){switch(e){case l.UI_INTERACTIVE:return"good";case l.UI_UPDATE:return"average";case l.UI_DISABLED:default:return"bad"}},b=function(e,t){var n=e.className,a=e.title,l=e.status,d=e.fancy,u=e.onDragStart,s=e.onClose;(0,p.useDispatch)(t);return(0,o.createVNode)(1,"div",(0,r.classes)(["TitleBar",n]),[(0,o.createComponentVNode)(2,c.Icon,{className:"TitleBar__statusIcon",color:g(l),name:"eye"}),(0,o.createVNode)(1,"div","TitleBar__title","string"==typeof a&&a===a.toLowerCase()&&(0,i.toTitleCase)(a)||a,0),(0,o.createVNode)(1,"div","TitleBar__dragZone",null,1,{onMousedown:function(e){return d&&u(e)}}),!1,!!d&&(0,o.createVNode)(1,"div","TitleBar__close TitleBar__clickable",Byond.IS_LTE_IE8?"x":"\xd7",0,{onclick:s})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.AiRestorerContent=t.AiRestorer=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.AiRestorer=function(){return(0,o.createComponentVNode)(2,a.Window,{width:370,height:360,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.AI_present,d=c.error,u=c.name,s=c.laws,p=c.isDead,m=c.restoring,f=c.health,h=c.ejectable;return(0,o.createFragment)([d&&(0,o.createComponentVNode)(2,i.NoticeBox,{textAlign:"center",children:d}),!!h&&(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"eject",content:l?u:"----------",disabled:!l,onClick:function(){return a("PRG_eject")}}),!!l&&(0,o.createComponentVNode)(2,i.Section,{title:h?"System Status":u,buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,color:p?"bad":"good",children:p?"Nonfunctional":"Functional"}),children:[(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Integrity",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:f,minValue:0,maxValue:100,ranges:{good:[70,Infinity],average:[50,70],bad:[-Infinity,50]}})})}),!!m&&(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"20px",color:"good",mt:1,children:"RECONSTRUCTION IN PROGRESS"}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"plus",content:"Begin Reconstruction",disabled:m,mt:1,onClick:function(){return a("PRG_beginReconstruction")}}),(0,o.createComponentVNode)(2,i.Section,{title:"Laws",level:2,children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{className:"candystripe",children:e},e)}))})]})],0)};t.AiRestorerContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.AccessList=void 0;var o=n(0),r=n(18),i=n(1),a=n(3);function c(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}var d={0:{icon:"times-circle",color:"bad"},1:{icon:"stop-circle",color:null},2:{icon:"check-circle",color:"good"}};t.AccessList=function(e,t){var n,l=e.accesses,u=void 0===l?[]:l,s=e.selectedList,p=void 0===s?[]:s,m=e.accessMod,f=e.grantAll,h=e.denyAll,C=e.grantDep,g=e.denyDep,b=(0,i.useLocalState)(t,"accessName",null==(n=u[0])?void 0:n.name),N=b[0],v=b[1],V=u.find((function(e){return e.name===N})),y=(0,r.sortBy)((function(e){return e.desc}))((null==V?void 0:V.accesses)||[]),k=function(e){for(var t,n=!1,o=!1,r=c(e);!(t=r()).done;){var i=t.value;p.includes(i.ref)?n=!0:o=!0}return!n&&o?0:n&&o?1:2};return(0,o.createComponentVNode)(2,a.Section,{title:"Access",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"check-double",content:"Grant All",color:"good",onClick:function(){return f()}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"Deny All",color:"bad",onClick:function(){return h()}})],4),children:(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:u.map((function(e){var t=e.accesses||[],n=d[k(t)].icon,r=d[k(t)].color;return(0,o.createComponentVNode)(2,a.Tabs.Tab,{altSelection:!0,color:r,icon:n,selected:e.name===N,onClick:function(){return v(e.name)},children:e.name},e.name)}))})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{mr:0,children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"check",content:"Grant Region",color:"good",onClick:function(){return C(V.regid)}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{ml:0,children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"times",content:"Deny Region",color:"bad",onClick:function(){return g(V.regid)}})})]}),y.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,content:e.desc,checked:p.includes(e.ref),onClick:function(){return m(e.ref)}},e.desc)}))]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoCatalog=t.Cargo=void 0;var o=n(0),r=n(18),i=n(1),a=n(3),c=n(44),l=n(2);t.Cargo=function(e,t){var n=(0,i.useBackend)(t),r=(n.act,n.data),c=(0,i.useSharedState)(t,"tab","catalog"),p=c[0],f=c[1],h=r.requestonly,C=r.cart||[],g=r.requests||[];return(0,o.createComponentVNode)(2,l.Window,{width:780,height:750,resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,d),(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:"list",selected:"catalog"===p,onClick:function(){return f("catalog")},children:"Catalog"}),(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:"envelope",textColor:"requests"!==p&&g.length>0&&"yellow",selected:"requests"===p,onClick:function(){return f("requests")},children:["Requests (",g.length,")"]}),!h&&(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:"shopping-cart",textColor:"cart"!==p&&C.length>0&&"yellow",selected:"cart"===p,onClick:function(){return f("cart")},children:["Checkout (",C.length,")"]})]}),"catalog"===p&&(0,o.createComponentVNode)(2,u),"requests"===p&&(0,o.createComponentVNode)(2,s),"cart"===p&&(0,o.createComponentVNode)(2,m)]})})};var d=function(e,t){var n=(0,i.useBackend)(t),r=n.act,l=n.data,d=l.away,u=l.docked,s=l.loan,p=l.loan_dispatched,m=l.location,f=l.message,h=l.points,C=l.requestonly;return(0,o.createComponentVNode)(2,a.Section,{title:"Cargo",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:h,format:function(e){return(0,c.formatMoney)(e)}})," credits"]}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shuttle",children:u&&!C&&(0,o.createComponentVNode)(2,a.Button,{content:m,onClick:function(){return r("send")}})||m}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"CentCom Message",children:f}),!!s&&!C&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Loan",children:!p&&(0,o.createComponentVNode)(2,a.Button,{content:"Loan Shuttle",disabled:!(d&&u),onClick:function(){return r("loan")}})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Loaned to Centcom"})})]})})},u=function(e,t){var n,l=e.express,d=(0,i.useBackend)(t),u=d.act,s=d.data,m=s.self_paid,f=(0,r.toArray)(s.supplies),h=(0,i.useSharedState)(t,"supply",null==(n=f[0])?void 0:n.name),C=h[0],g=h[1],b=f.find((function(e){return e.name===C}));return(0,o.createComponentVNode)(2,a.Section,{title:"Catalog",buttons:!l&&(0,o.createFragment)([(0,o.createComponentVNode)(2,p),(0,o.createComponentVNode)(2,a.Button.Checkbox,{ml:2,content:"Buy Privately",checked:m,onClick:function(){return u("toggleprivate")}})],4),children:(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:f.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:e.name===C,onClick:function(){return g(e.name)},children:[e.name," (",e.packs.length,")"]},e.name)}))})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,a.Table,{children:null==b?void 0:b.packs.map((function(e){var t=[];return e.small_item&&t.push("Small"),e.access&&t.push("Restricted"),(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,color:"label",textAlign:"right",children:t.join(", ")}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,tooltip:e.desc,tooltipPosition:"left",onClick:function(){return u("add",{id:e.id})},children:[(0,c.formatMoney)(m&&!e.goody?Math.round(1.1*e.cost):e.cost)," cr"]})})]},e.name)}))})})]})})};t.CargoCatalog=u;var s=function(e,t){var n=(0,i.useBackend)(t),r=n.act,l=n.data,d=l.requestonly,u=l.requests||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Active Requests",buttons:!d&&(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Clear",color:"transparent",onClick:function(){return r("denyall")}}),children:[0===u.length&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"No Requests"}),u.length>0&&(0,o.createComponentVNode)(2,a.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,color:"label",children:["#",e.id]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.object}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createVNode)(1,"b",null,e.orderer,0)}),(0,o.createComponentVNode)(2,a.Table.Cell,{width:"25%",children:(0,o.createVNode)(1,"i",null,e.reason,0)}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:[(0,c.formatMoney)(e.cost)," cr"]}),!d&&(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,a.Button,{icon:"check",color:"good",onClick:function(){return r("approve",{id:e.id})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"times",color:"bad",onClick:function(){return r("deny",{id:e.id})}})]})]},e.id)}))})]})},p=function(e,t){var n=(0,i.useBackend)(t),r=n.act,l=n.data,d=l.requestonly,u=l.cart||[],s=u.reduce((function(e,t){return e+t.cost}),0);return d?null:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,mx:1,children:[0===u.length&&"Cart is empty",1===u.length&&"1 item",u.length>=2&&u.length+" items"," ",s>0&&"("+(0,c.formatMoney)(s)+" cr)"]}),(0,o.createComponentVNode)(2,a.Button,{icon:"times",color:"transparent",content:"Clear",onClick:function(){return r("clear")}})],4)},m=function(e,t){var n=(0,i.useBackend)(t),r=n.act,l=n.data,d=l.requestonly,u=l.away,s=l.docked,m=l.location,f=l.cart||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Current Cart",buttons:(0,o.createComponentVNode)(2,p),children:[0===f.length&&(0,o.createComponentVNode)(2,a.Box,{color:"label",children:"Nothing in cart"}),f.length>0&&(0,o.createComponentVNode)(2,a.Table,{children:f.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,color:"label",children:["#",e.id]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.object}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:!!e.paid&&(0,o.createVNode)(1,"b",null,"[Paid Privately]",16)}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:[(0,c.formatMoney)(e.cost)," cr"]}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,a.Button,{icon:"minus",onClick:function(){return r("remove",{id:e.id})}})})]},e.id)}))}),f.length>0&&!d&&(0,o.createComponentVNode)(2,a.Box,{mt:2,children:1===u&&1===s&&(0,o.createComponentVNode)(2,a.Button,{color:"green",style:{"line-height":"28px",padding:"0 12px"},content:"Confirm the order",onClick:function(){return r("send")}})||(0,o.createComponentVNode)(2,a.Box,{opacity:.5,children:["Shuttle in ",m,"."]})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BeakerContents=void 0;var o=n(0),r=n(3);t.BeakerContents=function(e){var t=e.beakerLoaded,n=e.beakerContents;return(0,o.createComponentVNode)(2,r.Box,{children:[!t&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"No beaker loaded."})||0===n.length&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"Beaker is empty."}),n.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{color:"label",children:[e.volume," units of ",e.name]},e.name)}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.LaunchpadConsole=t.LaunchpadControl=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=function(e,t){var n=(0,r.useBackend)(t).act;return(0,o.createComponentVNode)(2,i.Grid,{width:"1px",children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-left",iconRotation:45,mb:1,onClick:function(){return n("move_pos",{x:-1,y:1})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-left",mb:1,onClick:function(){return n("move_pos",{x:-1})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-down",iconRotation:45,mb:1,onClick:function(){return n("move_pos",{x:-1,y:-1})}})]}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-up",mb:1,onClick:function(){return n("move_pos",{y:1})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"R",mb:1,onClick:function(){return n("set_pos",{x:0,y:0})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-down",mb:1,onClick:function(){return n("move_pos",{y:-1})}})]}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-up",iconRotation:45,mb:1,onClick:function(){return n("move_pos",{x:1,y:1})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-right",mb:1,onClick:function(){return n("move_pos",{x:1})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-right",iconRotation:45,mb:1,onClick:function(){return n("move_pos",{x:1,y:-1})}})]})]})},l=function(e,t){var n=e.topLevel,a=(0,r.useBackend)(t),l=a.act,d=a.data,u=d.x,s=d.y,p=d.pad_name,m=d.range;return(0,o.createComponentVNode)(2,i.Section,{title:(0,o.createComponentVNode)(2,i.Input,{value:p,width:"170px",onChange:function(e,t){return l("rename",{name:t})}}),level:n?1:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Remove",color:"bad",onClick:function(){return l("remove")}}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Controls",level:2,children:(0,o.createComponentVNode)(2,c)})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Target",level:2,children:(0,o.createComponentVNode)(2,i.Box,{fontSize:"26px",children:[(0,o.createComponentVNode)(2,i.Box,{mb:1,children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,mr:1,children:"X:"}),(0,o.createComponentVNode)(2,i.NumberInput,{value:u,minValue:-m,maxValue:m,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",stepPixelSize:10,onChange:function(e,t){return l("set_pos",{x:t})}})]}),(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,mr:1,children:"Y:"}),(0,o.createComponentVNode)(2,i.NumberInput,{value:s,minValue:-m,maxValue:m,stepPixelSize:10,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",onChange:function(e,t){return l("set_pos",{y:t})}})]})]})})})]}),(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"upload",content:"Launch",textAlign:"center",onClick:function(){return l("launch")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"download",content:"Pull",textAlign:"center",onClick:function(){return l("pull")}})})]})]})};t.LaunchpadControl=l;t.LaunchpadConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,d=n.data,u=d.launchpads,s=void 0===u?[]:u,p=d.selected_id;return(0,o.createComponentVNode)(2,a.Window,{width:475,height:260,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:0===s.length&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No Pads Connected"})||(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Flex,{minHeight:"190px",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{width:"140px",minHeight:"190px",children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,ellipsis:!0,content:e.name,selected:p===e.id,color:"transparent",onClick:function(){return c("select_pad",{id:e.id})}},e.name)}))}),(0,o.createComponentVNode)(2,i.Flex.Item,{minHeight:"100%",children:(0,o.createComponentVNode)(2,i.Divider,{vertical:!0})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,minHeight:"100%",children:p&&(0,o.createComponentVNode)(2,l)||(0,o.createComponentVNode)(2,i.Box,{children:"Please select a pad"})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosCyborgRemoteMonitorContent=t.NtosCyborgRemoteMonitor=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtosCyborgRemoteMonitor=function(e,t){return(0,o.createComponentVNode)(2,a.NtosWindow,{width:600,height:800,resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.card,d=c.cyborgs,u=void 0===d?[]:d;return u.length?(0,o.createFragment)([!l&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Certain features require an ID card login."}),u.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"terminal",content:"Send Message",color:"blue",disabled:!l,onClick:function(){return a("messagebot",{ref:e.ref})}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:(0,o.createComponentVNode)(2,i.Box,{color:e.status?"bad":e.locked_down?"average":"good",children:e.status?"Not Responding":e.locked_down?"Locked Down":e.shell_discon?"Nominal/Disconnected":"Nominal"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Charge",children:(0,o.createComponentVNode)(2,i.Box,{color:e.charge<=30?"bad":e.charge<=70?"average":"good",children:"number"==typeof e.charge?e.charge+"%":"Not Found"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Module",children:e.module}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Upgrades",children:e.upgrades})]})},e.ref)}))],0):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No cyborg units detected."})};t.NtosCyborgRemoteMonitorContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.NtosRadarContent=t.NtosRadar=void 0;var o=n(0),r=n(6),i=n(1),a=n(3),c=n(2);t.NtosRadar=function(e,t){return(0,o.createComponentVNode)(2,c.NtosWindow,{width:800,height:600,theme:"ntos",children:(0,o.createComponentVNode)(2,l)})};var l=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data,u=d.selected,s=d.object,p=void 0===s?[]:s,m=d.target,f=void 0===m?[]:m,h=d.scanning;return(0,o.createComponentVNode)(2,a.Flex,{direction:"row",hight:"100%",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{position:"relative",width:20.5,hight:"100%",children:(0,o.createComponentVNode)(2,c.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"redo-alt",content:h?"Scanning...":"Scan",color:"blue",disabled:h,onClick:function(){return l("scan")}}),!p.length&&!h&&(0,o.createVNode)(1,"div",null,"No trackable signals found",16),!h&&p.map((function(e){return(0,o.createVNode)(1,"div",(0,r.classes)(["Button","Button--fluid","Button--color--transparent","Button--ellipsis",e.ref===u&&"Button--selected"]),e.name,0,{title:e.name,onClick:function(){l("selecttarget",{ref:e.ref})}},e.dev)}))]})})}),(0,o.createComponentVNode)(2,a.Flex.Item,{style:{"background-image":'url("ntosradarbackground.png")',"background-position":"center","background-repeat":"no-repeat",top:"20px"},position:"relative",m:1.5,width:45,height:45,children:0===Object.keys(f).length?!!u&&(0,o.createComponentVNode)(2,a.NoticeBox,{position:"absolute",top:20.6,left:1.35,width:42,fontSize:"30px",textAlign:"center",children:"Signal Lost"}):!!f.userot&&(0,o.createComponentVNode)(2,a.Box,{as:"img",src:f.arrowstyle,position:"absolute",top:"20px",left:"243px",style:{transform:"rotate("+f.rot+"deg)"}})||(0,o.createComponentVNode)(2,a.Icon,{name:f.pointer,position:"absolute",size:2,color:f.color,top:10*f.locy+19+"px",left:10*f.locx+16+"px"})})]})};t.NtosRadarContent=l},function(e,t,n){"use strict";t.__esModule=!0,t.RequestKioskContent=t.RequestKiosk=void 0;var o=n(0),r=n(1),i=n(3),a=n(44),c=n(2);t.RequestKiosk=function(e,t){return(0,o.createComponentVNode)(2,c.Window,{width:550,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,l)})})};var l=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.accountName,u=l.requests,s=void 0===u?[]:u,p=l.applicants,m=void 0===p?[]:p,f=l.bountyValue;l.bountyText;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current Account",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"power-off",content:"Log out",onClick:function(){return c("clear")}}),children:d||"N/A"})})}),(0,o.createComponentVNode)(2,i.Flex,{mb:1,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:null==s?void 0:s.map((function(e){return(0,o.createComponentVNode)(2,i.Collapsible,{title:e.owner,width:"300px",children:(0,o.createComponentVNode)(2,i.Section,{width:"300px",children:[(0,o.createComponentVNode)(2,i.Flex,{spacing:1,align:"baseline",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{bold:!0,width:"310px",children:e.owner}),(0,o.createComponentVNode)(2,i.Flex.Item,{width:"100px",children:(0,a.formatMoney)(e.value)+" cr"}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"pen-fancy",content:"Apply",onClick:function(){return c("apply",{request:e.acc_number})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"trash-alt",content:"Delete",color:"red",onClick:function(){return c("deleteRequest",{request:e.acc_number})}})]})]}),(0,o.createComponentVNode)(2,i.Section,{align:"center",children:(0,o.createVNode)(1,"i",null,[(0,o.createTextVNode)('"'),e.description,(0,o.createTextVNode)('"')],0)}),(0,o.createComponentVNode)(2,i.Section,{title:"Request Applicants",children:null==m?void 0:m.map((function(t){return t.request_id===e.acc_number&&(0,o.createComponentVNode)(2,i.Flex,{children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,p:.5,backgroundColor:"rgba(0, 0, 69, 0.5)",width:"510px",style:{border:"2px solid rgba(13, 13, 213, 0.7)"},children:t.name}),(0,o.createComponentVNode)(2,i.Flex.Item,{align:"end",children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"cash-register",onClick:function(){return c("payApplicant",{applicant:t.requestee_id,request:e.acc_number})}})})]})}))})]},e.name)},e.name)}))}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Collapsible,{title:"New Bounty",width:"220px",color:"green",children:(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.TextArea,{fluid:!0,height:"250px",width:"200px",backgroundColor:"black",textColor:"white",onChange:function(e,t){return c("bountyText",{bountytext:t})}}),(0,o.createComponentVNode)(2,i.Box,{children:(0,o.createComponentVNode)(2,i.NumberInput,{animate:!0,unit:"cr",minValue:1,maxValue:1e3,value:f,width:"80px",onChange:function(e,t){return c("bountyVal",{bountyval:t})}})}),(0,o.createComponentVNode)(2,i.Button,{icon:"print",content:"Submit bounty",onClick:function(){return c("createBounty")}})]})})})]})],4)};t.RequestKioskContent=l},function(e,t,n){"use strict";t.__esModule=!0,t.StationAlertConsoleContent=t.StationAlertConsole=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.StationAlertConsole=function(){return(0,o.createComponentVNode)(2,a.Window,{width:325,height:500,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t).data.alarms||[],a=n.Fire||[],c=n.Atmosphere||[],l=n.Power||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Fire Alarms",children:(0,o.createVNode)(1,"ul",null,[0===a.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),a.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,i.Section,{title:"Atmospherics Alarms",children:(0,o.createVNode)(1,"ul",null,[0===c.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),c.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,i.Section,{title:"Power Alarms",children:(0,o.createVNode)(1,"ul",null,[0===l.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),l.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)})],4)};t.StationAlertConsoleContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.PortableBasicInfo=void 0;var o=n(0),r=n(1),i=n(3);t.PortableBasicInfo=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.connected,d=c.holding,u=c.on,s=c.pressure;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return a("power")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:s})," kPa"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Port",color:l?"good":"average",children:l?"Connected":"Not Connected"})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Holding Tank",minHeight:"82px",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",disabled:!d,onClick:function(){return a("eject")}}),children:d?(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Label",children:d.name}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:d.pressure})," kPa"]})]}):(0,o.createComponentVNode)(2,i.Box,{color:"average",children:"No holding tank"})})],4)}},function(e,t,n){e.exports=n(187)},function(e,t,n){"use strict";n(188),n(189),n(190),n(191),n(192),n(193),n(194),n(195),n(196),n(197),n(198),n(199),n(200),n(201),n(202),n(203),n(204),n(205),n(206),n(207),n(208),n(209),n(210),n(211),n(213),n(215),n(216),n(217),n(143),n(219),n(220),n(221),n(222),n(223),n(224),n(225),n(226),n(227),n(228),n(229),n(230),n(231),n(232),n(234),n(235),n(236),n(237),n(238),n(240),n(241),n(243),n(244),n(245),n(246),n(247),n(248),n(249),n(250),n(251),n(252),n(253),n(254),n(255),n(256),n(258),n(259),n(260),n(261),n(262),n(263),n(264),n(265),n(266),n(267),n(268),n(269),n(270),n(272),n(273),n(274),n(275),n(276),n(277),n(279),n(280),n(282),n(284),n(285),n(286),n(287),n(288),n(289),n(290),n(291),n(292),n(293),n(294),n(295),n(296),n(297),n(298),n(299),n(300),n(301),n(302),n(303),n(304),n(305),n(306),n(308),n(309),n(310),n(313),n(314),n(315),n(316),n(317),n(318),n(319),n(320),n(321),n(322),n(323),n(324),n(325),n(326),n(327),n(160),n(328),n(329),n(330),n(331),n(332),n(333),n(334),n(335),n(336),n(337),n(338),n(339),n(340),n(341),n(342),n(343),n(344),n(345),n(346),n(347),n(348),n(349),n(350),n(351),n(352),n(353),n(354),n(355),n(356),n(357),n(358),n(359),n(360),n(361),n(363),n(364),n(365),n(366),n(367),n(368),n(369),n(370),n(371),n(372),n(373),n(374),n(375),n(376),n(377),n(378),n(379),n(380),n(381),n(382),n(383),n(384),n(385),n(386),n(387),n(388),n(389),n(390),n(391),n(392),n(393),n(394),n(395),n(396),n(397),n(398),n(399),n(400);var o=n(0);n(402),n(403),n(404),n(405),n(406),n(407),n(408),n(409),n(410),n(411),n(412),n(413),n(414),n(415),n(416);var r=n(165),i=(n(166),n(417)),a=n(1),c=n(167),l=n(43),d=n(168);r.perf.mark("inception",window.__inception__),r.perf.mark("init");var u,s=(0,d.createStore)(),p=!0,m=function(){for(s.subscribe((function(){!function(){var e;r.perf.mark("render/start");var t=s.getState(),m=(0,a.selectBackend)(t),f=m.suspended,h=m.assets;p&&(l.logger.log("initial render",t),"recycled"!==p&&(0,c.setupDrag)());var C=(0,n(424).getRoutedComponent)(t),g=(0,o.createComponentVNode)(2,d.StoreProvider,{store:s,children:(0,o.createComponentVNode)(2,C)});u||(u=document.getElementById("react-root")),(0,o.render)(g,u),f||(r.perf.mark("render/finish"),p&&(p=!1),null==h||null==(e=h.styles)||e.forEach((function(e){return(0,i.loadCSS)(e)})))}()})),window.update=function(e){var t=(0,a.selectBackend)(s.getState()).suspended,n="string"==typeof e?function(e){var t=function(e,t){return"object"==typeof t&&null!==t&&t.__number__?parseFloat(t.__number__):t};Byond.IS_LTE_IE8&&(t=undefined);try{return JSON.parse(e,t)}catch(o){l.logger.log(o),l.logger.log("What we got:",e);var n=o&&o.message;throw new Error("JSON parsing error: "+n)}}(e):e;l.logger.debug("received message '"+(null==n?void 0:n.type)+"'");var o=n.type,r=n.payload;if("update"===o)return window.__ref__=r.config.ref,t&&(l.logger.log("reinitializing to:",r.config.ref),p="recycled"),void s.dispatch((0,a.backendUpdate)(r));"suspend"!==o?"ping"!==o?l.logger.log("unhandled message",n):(0,a.sendMessage)({type:"pingReply"}):s.dispatch((0,a.backendSuspendSuccess)())};;){var e=window.__updateQueue__.shift();if(!e)break;window.update(e)}(0,i.loadCSS)("font-awesome.css")};window.__logger__={fatal:function(e,t){var n=(0,a.selectBackend)(s.getState()),o={config:n.config,suspended:n.suspended,suspending:n.suspending};return l.logger.log("FatalError:",e||t),l.logger.log("State:",o),t+="\nState: "+JSON.stringify(o)}},"loading"===document.readyState?document.addEventListener("DOMContentLoaded",m):m()},function(e,t,n){"use strict";var o=n(4),r=n(7),i=n(39),a=n(40),c=n(9),l=n(98),d=n(135),u=n(5),s=n(20),p=n(56),m=n(8),f=n(10),h=n(17),C=n(26),g=n(35),b=n(50),N=n(46),v=n(66),V=n(51),y=n(138),k=n(97),x=n(22),_=n(14),w=n(74),B=n(30),S=n(24),L=n(94),I=n(75),T=n(63),A=n(62),E=n(13),M=n(139),P=n(27),R=n(47),O=n(36),j=n(21).forEach,D=I("hidden"),F=E("toPrimitive"),z=O.set,W=O.getterFor("Symbol"),H=Object.prototype,U=r.Symbol,G=i("JSON","stringify"),K=x.f,q=_.f,Y=y.f,$=w.f,X=L("symbols"),Q=L("op-symbols"),J=L("string-to-symbol-registry"),Z=L("symbol-to-string-registry"),ee=L("wks"),te=r.QObject,ne=!te||!te.prototype||!te.prototype.findChild,oe=c&&u((function(){return 7!=N(q({},"a",{get:function(){return q(this,"a",{value:7}).a}})).a}))?function(e,t,n){var o=K(H,t);o&&delete H[t],q(e,t,n),o&&e!==H&&q(H,t,o)}:q,re=function(e,t){var n=X[e]=N(U.prototype);return z(n,{type:"Symbol",tag:e,description:t}),c||(n.description=t),n},ie=d?function(e){return"symbol"==typeof e}:function(e){return Object(e)instanceof U},ae=function(e,t,n){e===H&&ae(Q,t,n),f(e);var o=g(t,!0);return f(n),s(X,o)?(n.enumerable?(s(e,D)&&e[D][o]&&(e[D][o]=!1),n=N(n,{enumerable:b(0,!1)})):(s(e,D)||q(e,D,b(1,{})),e[D][o]=!0),oe(e,o,n)):q(e,o,n)},ce=function(e,t){f(e);var n=C(t),o=v(n).concat(pe(n));return j(o,(function(t){c&&!de.call(n,t)||ae(e,t,n[t])})),e},le=function(e,t){return t===undefined?N(e):ce(N(e),t)},de=function(e){var t=g(e,!0),n=$.call(this,t);return!(this===H&&s(X,t)&&!s(Q,t))&&(!(n||!s(this,t)||!s(X,t)||s(this,D)&&this[D][t])||n)},ue=function(e,t){var n=C(e),o=g(t,!0);if(n!==H||!s(X,o)||s(Q,o)){var r=K(n,o);return!r||!s(X,o)||s(n,D)&&n[D][o]||(r.enumerable=!0),r}},se=function(e){var t=Y(C(e)),n=[];return j(t,(function(e){s(X,e)||s(T,e)||n.push(e)})),n},pe=function(e){var t=e===H,n=Y(t?Q:C(e)),o=[];return j(n,(function(e){!s(X,e)||t&&!s(H,e)||o.push(X[e])})),o};(l||(S((U=function(){if(this instanceof U)throw TypeError("Symbol is not a constructor");var e=arguments.length&&arguments[0]!==undefined?String(arguments[0]):undefined,t=A(e),n=function o(e){this===H&&o.call(Q,e),s(this,D)&&s(this[D],t)&&(this[D][t]=!1),oe(this,t,b(1,e))};return c&&ne&&oe(H,t,{configurable:!0,set:n}),re(t,e)}).prototype,"toString",(function(){return W(this).tag})),S(U,"withoutSetter",(function(e){return re(A(e),e)})),w.f=de,_.f=ae,x.f=ue,V.f=y.f=se,k.f=pe,M.f=function(e){return re(E(e),e)},c&&(q(U.prototype,"description",{configurable:!0,get:function(){return W(this).description}}),a||S(H,"propertyIsEnumerable",de,{unsafe:!0}))),o({global:!0,wrap:!0,forced:!l,sham:!l},{Symbol:U}),j(v(ee),(function(e){P(e)})),o({target:"Symbol",stat:!0,forced:!l},{"for":function(e){var t=String(e);if(s(J,t))return J[t];var n=U(t);return J[t]=n,Z[n]=t,n},keyFor:function(e){if(!ie(e))throw TypeError(e+" is not a symbol");if(s(Z,e))return Z[e]},useSetter:function(){ne=!0},useSimple:function(){ne=!1}}),o({target:"Object",stat:!0,forced:!l,sham:!c},{create:le,defineProperty:ae,defineProperties:ce,getOwnPropertyDescriptor:ue}),o({target:"Object",stat:!0,forced:!l},{getOwnPropertyNames:se,getOwnPropertySymbols:pe}),o({target:"Object",stat:!0,forced:u((function(){k.f(1)}))},{getOwnPropertySymbols:function(e){return k.f(h(e))}}),G)&&o({target:"JSON",stat:!0,forced:!l||u((function(){var e=U();return"[null]"!=G([e])||"{}"!=G({a:e})||"{}"!=G(Object(e))}))},{stringify:function(e,t,n){for(var o,r=[e],i=1;arguments.length>i;)r.push(arguments[i++]);if(o=t,(m(t)||e!==undefined)&&!ie(e))return p(t)||(t=function(e,t){if("function"==typeof o&&(t=o.call(this,e,t)),!ie(t))return t}),r[1]=t,G.apply(null,r)}});U.prototype[F]||B(U.prototype,F,U.prototype.valueOf),R(U,"Symbol"),T[D]=!0},function(e,t,n){"use strict";var o=n(4),r=n(9),i=n(7),a=n(20),c=n(8),l=n(14).f,d=n(132),u=i.Symbol;if(r&&"function"==typeof u&&(!("description"in u.prototype)||u().description!==undefined)){var s={},p=function(){var e=arguments.length<1||arguments[0]===undefined?undefined:String(arguments[0]),t=this instanceof p?new u(e):e===undefined?u():u(e);return""===e&&(s[t]=!0),t};d(p,u);var m=p.prototype=u.prototype;m.constructor=p;var f=m.toString,h="Symbol(test)"==String(u("test")),C=/^Symbol\((.*)\)[^)]+$/;l(m,"description",{configurable:!0,get:function(){var e=c(this)?this.valueOf():this,t=f.call(e);if(a(s,e))return"";var n=h?t.slice(7,-1):t.replace(C,"$1");return""===n?undefined:n}}),o({global:!0,forced:!0},{Symbol:p})}},function(e,t,n){"use strict";n(27)("asyncIterator")},function(e,t,n){"use strict";n(27)("hasInstance")},function(e,t,n){"use strict";n(27)("isConcatSpreadable")},function(e,t,n){"use strict";n(27)("iterator")},function(e,t,n){"use strict";n(27)("match")},function(e,t,n){"use strict";n(27)("replace")},function(e,t,n){"use strict";n(27)("search")},function(e,t,n){"use strict";n(27)("species")},function(e,t,n){"use strict";n(27)("split")},function(e,t,n){"use strict";n(27)("toPrimitive")},function(e,t,n){"use strict";n(27)("toStringTag")},function(e,t,n){"use strict";n(27)("unscopables")},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(56),a=n(8),c=n(17),l=n(12),d=n(53),u=n(67),s=n(68),p=n(13),m=n(99),f=p("isConcatSpreadable"),h=m>=51||!r((function(){var e=[];return e[f]=!1,e.concat()[0]!==e})),C=s("concat"),g=function(e){if(!a(e))return!1;var t=e[f];return t!==undefined?!!t:i(e)};o({target:"Array",proto:!0,forced:!h||!C},{concat:function(e){var t,n,o,r,i,a=c(this),s=u(a,0),p=0;for(t=-1,o=arguments.length;t<o;t++)if(g(i=-1===t?a:arguments[t])){if(p+(r=l(i.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(n=0;n<r;n++,p++)n in i&&d(s,p,i[n])}else{if(p>=9007199254740991)throw TypeError("Maximum allowed index exceeded");d(s,p++,i)}return s.length=p,s}})},function(e,t,n){"use strict";var o=n(4),r=n(140),i=n(48);o({target:"Array",proto:!0},{copyWithin:r}),i("copyWithin")},function(e,t,n){"use strict";var o=n(4),r=n(21).every,i=n(41),a=n(25),c=i("every"),l=a("every");o({target:"Array",proto:!0,forced:!c||!l},{every:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(100),i=n(48);o({target:"Array",proto:!0},{fill:r}),i("fill")},function(e,t,n){"use strict";var o=n(4),r=n(21).filter,i=n(68),a=n(25),c=i("filter"),l=a("filter");o({target:"Array",proto:!0,forced:!c||!l},{filter:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(21).find,i=n(48),a=n(25),c=!0,l=a("find");"find"in[]&&Array(1).find((function(){c=!1})),o({target:"Array",proto:!0,forced:c||!l},{find:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),i("find")},function(e,t,n){"use strict";var o=n(4),r=n(21).findIndex,i=n(48),a=n(25),c=!0,l=a("findIndex");"findIndex"in[]&&Array(1).findIndex((function(){c=!1})),o({target:"Array",proto:!0,forced:c||!l},{findIndex:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),i("findIndex")},function(e,t,n){"use strict";var o=n(4),r=n(141),i=n(17),a=n(12),c=n(31),l=n(67);o({target:"Array",proto:!0},{flat:function(){var e=arguments.length?arguments[0]:undefined,t=i(this),n=a(t.length),o=l(t,0);return o.length=r(o,t,t,n,0,e===undefined?1:c(e)),o}})},function(e,t,n){"use strict";var o=n(4),r=n(141),i=n(17),a=n(12),c=n(32),l=n(67);o({target:"Array",proto:!0},{flatMap:function(e){var t,n=i(this),o=a(n.length);return c(e),(t=l(n,0)).length=r(t,n,n,o,0,1,e,arguments.length>1?arguments[1]:undefined),t}})},function(e,t,n){"use strict";var o=n(4),r=n(212);o({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},function(e,t,n){"use strict";var o=n(21).forEach,r=n(41),i=n(25),a=r("forEach"),c=i("forEach");e.exports=a&&c?[].forEach:function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}},function(e,t,n){"use strict";var o=n(4),r=n(214);o({target:"Array",stat:!0,forced:!n(78)((function(e){Array.from(e)}))},{from:r})},function(e,t,n){"use strict";var o=n(52),r=n(17),i=n(142),a=n(101),c=n(12),l=n(53),d=n(102);e.exports=function(e){var t,n,u,s,p,m,f=r(e),h="function"==typeof this?this:Array,C=arguments.length,g=C>1?arguments[1]:undefined,b=g!==undefined,N=d(f),v=0;if(b&&(g=o(g,C>2?arguments[2]:undefined,2)),N==undefined||h==Array&&a(N))for(n=new h(t=c(f.length));t>v;v++)m=b?g(f[v],v):f[v],l(n,v,m);else for(p=(s=N.call(f)).next,n=new h;!(u=p.call(s)).done;v++)m=b?i(s,g,[u.value,v],!0):u.value,l(n,v,m);return n.length=v,n}},function(e,t,n){"use strict";var o=n(4),r=n(64).includes,i=n(48);o({target:"Array",proto:!0,forced:!n(25)("indexOf",{ACCESSORS:!0,1:0})},{includes:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),i("includes")},function(e,t,n){"use strict";var o=n(4),r=n(64).indexOf,i=n(41),a=n(25),c=[].indexOf,l=!!c&&1/[1].indexOf(1,-0)<0,d=i("indexOf"),u=a("indexOf",{ACCESSORS:!0,1:0});o({target:"Array",proto:!0,forced:l||!d||!u},{indexOf:function(e){return l?c.apply(this,arguments)||0:r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";n(4)({target:"Array",stat:!0},{isArray:n(56)})},function(e,t,n){"use strict";var o=n(144).IteratorPrototype,r=n(46),i=n(50),a=n(47),c=n(69),l=function(){return this};e.exports=function(e,t,n){var d=t+" Iterator";return e.prototype=r(o,{next:i(1,n)}),a(e,d,!1,!0),c[d]=l,e}},function(e,t,n){"use strict";var o=n(4),r=n(61),i=n(26),a=n(41),c=[].join,l=r!=Object,d=a("join",",");o({target:"Array",proto:!0,forced:l||!d},{join:function(e){return c.call(i(this),e===undefined?",":e)}})},function(e,t,n){"use strict";var o=n(4),r=n(146);o({target:"Array",proto:!0,forced:r!==[].lastIndexOf},{lastIndexOf:r})},function(e,t,n){"use strict";var o=n(4),r=n(21).map,i=n(68),a=n(25),c=i("map"),l=a("map");o({target:"Array",proto:!0,forced:!c||!l},{map:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(53);o({target:"Array",stat:!0,forced:r((function(){function e(){}return!(Array.of.call(e)instanceof e)}))},{of:function(){for(var e=0,t=arguments.length,n=new("function"==typeof this?this:Array)(t);t>e;)i(n,e,arguments[e++]);return n.length=t,n}})},function(e,t,n){"use strict";var o=n(4),r=n(79).left,i=n(41),a=n(25),c=i("reduce"),l=a("reduce",{1:0});o({target:"Array",proto:!0,forced:!c||!l},{reduce:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(79).right,i=n(41),a=n(25),c=i("reduceRight"),l=a("reduce",{1:0});o({target:"Array",proto:!0,forced:!c||!l},{reduceRight:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(8),i=n(56),a=n(45),c=n(12),l=n(26),d=n(53),u=n(13),s=n(68),p=n(25),m=s("slice"),f=p("slice",{ACCESSORS:!0,0:0,1:2}),h=u("species"),C=[].slice,g=Math.max;o({target:"Array",proto:!0,forced:!m||!f},{slice:function(e,t){var n,o,u,s=l(this),p=c(s.length),m=a(e,p),f=a(t===undefined?p:t,p);if(i(s)&&("function"!=typeof(n=s.constructor)||n!==Array&&!i(n.prototype)?r(n)&&null===(n=n[h])&&(n=undefined):n=undefined,n===Array||n===undefined))return C.call(s,m,f);for(o=new(n===undefined?Array:n)(g(f-m,0)),u=0;m<f;m++,u++)m in s&&d(o,u,s[m]);return o.length=u,o}})},function(e,t,n){"use strict";var o=n(4),r=n(21).some,i=n(41),a=n(25),c=i("some"),l=a("some");o({target:"Array",proto:!0,forced:!c||!l},{some:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(32),i=n(17),a=n(5),c=n(41),l=[],d=l.sort,u=a((function(){l.sort(undefined)})),s=a((function(){l.sort(null)})),p=c("sort");o({target:"Array",proto:!0,forced:u||!s||!p},{sort:function(e){return e===undefined?d.call(i(this)):d.call(i(this),r(e))}})},function(e,t,n){"use strict";n(57)("Array")},function(e,t,n){"use strict";var o=n(4),r=n(45),i=n(31),a=n(12),c=n(17),l=n(67),d=n(53),u=n(68),s=n(25),p=u("splice"),m=s("splice",{ACCESSORS:!0,0:0,1:2}),f=Math.max,h=Math.min;o({target:"Array",proto:!0,forced:!p||!m},{splice:function(e,t){var n,o,u,s,p,m,C=c(this),g=a(C.length),b=r(e,g),N=arguments.length;if(0===N?n=o=0:1===N?(n=0,o=g-b):(n=N-2,o=h(f(i(t),0),g-b)),g+n-o>9007199254740991)throw TypeError("Maximum allowed length exceeded");for(u=l(C,o),s=0;s<o;s++)(p=b+s)in C&&d(u,s,C[p]);if(u.length=o,n<o){for(s=b;s<g-o;s++)m=s+n,(p=s+o)in C?C[m]=C[p]:delete C[m];for(s=g;s>g-o+n;s--)delete C[s-1]}else if(n>o)for(s=g-o;s>b;s--)m=s+n-1,(p=s+o-1)in C?C[m]=C[p]:delete C[m];for(s=0;s<n;s++)C[s+b]=arguments[s+2];return C.length=g-o+n,u}})},function(e,t,n){"use strict";n(48)("flat")},function(e,t,n){"use strict";n(48)("flatMap")},function(e,t,n){"use strict";var o=n(4),r=n(7),i=n(80),a=n(57),c=i.ArrayBuffer;o({global:!0,forced:r.ArrayBuffer!==c},{ArrayBuffer:c}),a("ArrayBuffer")},function(e,t,n){"use strict";var o=Math.abs,r=Math.pow,i=Math.floor,a=Math.log,c=Math.LN2;e.exports={pack:function(e,t,n){var l,d,u,s=new Array(n),p=8*n-t-1,m=(1<<p)-1,f=m>>1,h=23===t?r(2,-24)-r(2,-77):0,C=e<0||0===e&&1/e<0?1:0,g=0;for((e=o(e))!=e||e===1/0?(d=e!=e?1:0,l=m):(l=i(a(e)/c),e*(u=r(2,-l))<1&&(l--,u*=2),(e+=l+f>=1?h/u:h*r(2,1-f))*u>=2&&(l++,u/=2),l+f>=m?(d=0,l=m):l+f>=1?(d=(e*u-1)*r(2,t),l+=f):(d=e*r(2,f-1)*r(2,t),l=0));t>=8;s[g++]=255&d,d/=256,t-=8);for(l=l<<t|d,p+=t;p>0;s[g++]=255&l,l/=256,p-=8);return s[--g]|=128*C,s},unpack:function(e,t){var n,o=e.length,i=8*o-t-1,a=(1<<i)-1,c=a>>1,l=i-7,d=o-1,u=e[d--],s=127&u;for(u>>=7;l>0;s=256*s+e[d],d--,l-=8);for(n=s&(1<<-l)-1,s>>=-l,l+=t;l>0;n=256*n+e[d],d--,l-=8);if(0===s)s=1-c;else{if(s===a)return n?NaN:u?-1/0:1/0;n+=r(2,t),s-=c}return(u?-1:1)*n*r(2,s-t)}}},function(e,t,n){"use strict";var o=n(4),r=n(11);o({target:"ArrayBuffer",stat:!0,forced:!r.NATIVE_ARRAY_BUFFER_VIEWS},{isView:r.isView})},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(80),a=n(10),c=n(45),l=n(12),d=n(49),u=i.ArrayBuffer,s=i.DataView,p=u.prototype.slice;o({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:r((function(){return!new u(2).slice(1,undefined).byteLength}))},{slice:function(e,t){if(p!==undefined&&t===undefined)return p.call(a(this),e);for(var n=a(this).byteLength,o=c(e,n),r=c(t===undefined?n:t,n),i=new(d(this,u))(l(r-o)),m=new s(this),f=new s(i),h=0;o<r;)f.setUint8(h++,m.getUint8(o++));return i}})},function(e,t,n){"use strict";var o=n(4),r=n(80);o({global:!0,forced:!n(106)},{DataView:r.DataView})},function(e,t,n){"use strict";n(4)({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},function(e,t,n){"use strict";var o=n(4),r=n(239);o({target:"Date",proto:!0,forced:Date.prototype.toISOString!==r},{toISOString:r})},function(e,t,n){"use strict";var o=n(5),r=n(107).start,i=Math.abs,a=Date.prototype,c=a.getTime,l=a.toISOString;e.exports=o((function(){return"0385-07-25T07:06:39.999Z"!=l.call(new Date(-50000000000001))}))||!o((function(){l.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var e=this.getUTCFullYear(),t=this.getUTCMilliseconds(),n=e<0?"-":e>9999?"+":"";return n+r(i(e),n?6:4,0)+"-"+r(this.getUTCMonth()+1,2,0)+"-"+r(this.getUTCDate(),2,0)+"T"+r(this.getUTCHours(),2,0)+":"+r(this.getUTCMinutes(),2,0)+":"+r(this.getUTCSeconds(),2,0)+"."+r(t,3,0)+"Z"}:l},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(17),a=n(35);o({target:"Date",proto:!0,forced:r((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(e){var t=i(this),n=a(t);return"number"!=typeof n||isFinite(n)?t.toISOString():null}})},function(e,t,n){"use strict";var o=n(30),r=n(242),i=n(13)("toPrimitive"),a=Date.prototype;i in a||o(a,i,r)},function(e,t,n){"use strict";var o=n(10),r=n(35);e.exports=function(e){if("string"!==e&&"number"!==e&&"default"!==e)throw TypeError("Incorrect hint");return r(o(this),"number"!==e)}},function(e,t,n){"use strict";var o=n(24),r=Date.prototype,i=r.toString,a=r.getTime;new Date(NaN)+""!="Invalid Date"&&o(r,"toString",(function(){var e=a.call(this);return e==e?i.call(this):"Invalid Date"}))},function(e,t,n){"use strict";n(4)({target:"Function",proto:!0},{bind:n(148)})},function(e,t,n){"use strict";var o=n(8),r=n(14),i=n(37),a=n(13)("hasInstance"),c=Function.prototype;a in c||r.f(c,a,{value:function(e){if("function"!=typeof this||!o(e))return!1;if(!o(this.prototype))return e instanceof this;for(;e=i(e);)if(this.prototype===e)return!0;return!1}})},function(e,t,n){"use strict";var o=n(9),r=n(14).f,i=Function.prototype,a=i.toString,c=/^\s*function ([^ (]*)/;o&&!("name"in i)&&r(i,"name",{configurable:!0,get:function(){try{return a.call(this).match(c)[1]}catch(e){return""}}})},function(e,t,n){"use strict";var o=n(7);n(47)(o.JSON,"JSON",!0)},function(e,t,n){"use strict";var o=n(81),r=n(149);e.exports=o("Map",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(4),r=n(150),i=Math.acosh,a=Math.log,c=Math.sqrt,l=Math.LN2;o({target:"Math",stat:!0,forced:!i||710!=Math.floor(i(Number.MAX_VALUE))||i(Infinity)!=Infinity},{acosh:function(e){return(e=+e)<1?NaN:e>94906265.62425156?a(e)+l:r(e-1+c(e-1)*c(e+1))}})},function(e,t,n){"use strict";var o=n(4),r=Math.asinh,i=Math.log,a=Math.sqrt;o({target:"Math",stat:!0,forced:!(r&&1/r(0)>0)},{asinh:function c(e){return isFinite(e=+e)&&0!=e?e<0?-c(-e):i(e+a(e*e+1)):e}})},function(e,t,n){"use strict";var o=n(4),r=Math.atanh,i=Math.log;o({target:"Math",stat:!0,forced:!(r&&1/r(-0)<0)},{atanh:function(e){return 0==(e=+e)?e:i((1+e)/(1-e))/2}})},function(e,t,n){"use strict";var o=n(4),r=n(109),i=Math.abs,a=Math.pow;o({target:"Math",stat:!0},{cbrt:function(e){return r(e=+e)*a(i(e),1/3)}})},function(e,t,n){"use strict";var o=n(4),r=Math.floor,i=Math.log,a=Math.LOG2E;o({target:"Math",stat:!0},{clz32:function(e){return(e>>>=0)?31-r(i(e+.5)*a):32}})},function(e,t,n){"use strict";var o=n(4),r=n(83),i=Math.cosh,a=Math.abs,c=Math.E;o({target:"Math",stat:!0,forced:!i||i(710)===Infinity},{cosh:function(e){var t=r(a(e)-1)+1;return(t+1/(t*c*c))*(c/2)}})},function(e,t,n){"use strict";var o=n(4),r=n(83);o({target:"Math",stat:!0,forced:r!=Math.expm1},{expm1:r})},function(e,t,n){"use strict";n(4)({target:"Math",stat:!0},{fround:n(257)})},function(e,t,n){"use strict";var o=n(109),r=Math.abs,i=Math.pow,a=i(2,-52),c=i(2,-23),l=i(2,127)*(2-c),d=i(2,-126);e.exports=Math.fround||function(e){var t,n,i=r(e),u=o(e);return i<d?u*(i/d/c+1/a-1/a)*d*c:(n=(t=(1+c/a)*i)-(t-i))>l||n!=n?u*Infinity:u*n}},function(e,t,n){"use strict";var o=n(4),r=Math.hypot,i=Math.abs,a=Math.sqrt;o({target:"Math",stat:!0,forced:!!r&&r(Infinity,NaN)!==Infinity},{hypot:function(e,t){for(var n,o,r=0,c=0,l=arguments.length,d=0;c<l;)d<(n=i(arguments[c++]))?(r=r*(o=d/n)*o+1,d=n):r+=n>0?(o=n/d)*o:n;return d===Infinity?Infinity:d*a(r)}})},function(e,t,n){"use strict";var o=n(4),r=n(5),i=Math.imul;o({target:"Math",stat:!0,forced:r((function(){return-5!=i(4294967295,5)||2!=i.length}))},{imul:function(e,t){var n=+e,o=+t,r=65535&n,i=65535&o;return 0|r*i+((65535&n>>>16)*i+r*(65535&o>>>16)<<16>>>0)}})},function(e,t,n){"use strict";var o=n(4),r=Math.log,i=Math.LOG10E;o({target:"Math",stat:!0},{log10:function(e){return r(e)*i}})},function(e,t,n){"use strict";n(4)({target:"Math",stat:!0},{log1p:n(150)})},function(e,t,n){"use strict";var o=n(4),r=Math.log,i=Math.LN2;o({target:"Math",stat:!0},{log2:function(e){return r(e)/i}})},function(e,t,n){"use strict";n(4)({target:"Math",stat:!0},{sign:n(109)})},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(83),a=Math.abs,c=Math.exp,l=Math.E;o({target:"Math",stat:!0,forced:r((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(e){return a(e=+e)<1?(i(e)-i(-e))/2:(c(e-1)-c(-e-1))*(l/2)}})},function(e,t,n){"use strict";var o=n(4),r=n(83),i=Math.exp;o({target:"Math",stat:!0},{tanh:function(e){var t=r(e=+e),n=r(-e);return t==Infinity?1:n==Infinity?-1:(t-n)/(i(e)+i(-e))}})},function(e,t,n){"use strict";n(47)(Math,"Math",!0)},function(e,t,n){"use strict";var o=n(4),r=Math.ceil,i=Math.floor;o({target:"Math",stat:!0},{trunc:function(e){return(e>0?i:r)(e)}})},function(e,t,n){"use strict";var o=n(9),r=n(7),i=n(65),a=n(24),c=n(20),l=n(34),d=n(82),u=n(35),s=n(5),p=n(46),m=n(51).f,f=n(22).f,h=n(14).f,C=n(59).trim,g=r.Number,b=g.prototype,N="Number"==l(p(b)),v=function(e){var t,n,o,r,i,a,c,l,d=u(e,!1);if("string"==typeof d&&d.length>2)if(43===(t=(d=C(d)).charCodeAt(0))||45===t){if(88===(n=d.charCodeAt(2))||120===n)return NaN}else if(48===t){switch(d.charCodeAt(1)){case 66:case 98:o=2,r=49;break;case 79:case 111:o=8,r=55;break;default:return+d}for(a=(i=d.slice(2)).length,c=0;c<a;c++)if((l=i.charCodeAt(c))<48||l>r)return NaN;return parseInt(i,o)}return+d};if(i("Number",!g(" 0o1")||!g("0b1")||g("+0x1"))){for(var V,y=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof y&&(N?s((function(){b.valueOf.call(n)})):"Number"!=l(n))?d(new g(v(t)),n,y):v(t)},k=o?m(g):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),x=0;k.length>x;x++)c(g,V=k[x])&&!c(y,V)&&h(y,V,f(g,V));y.prototype=b,b.constructor=y,a(r,"Number",y)}},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{isFinite:n(271)})},function(e,t,n){"use strict";var o=n(7).isFinite;e.exports=Number.isFinite||function(e){return"number"==typeof e&&o(e)}},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{isInteger:n(151)})},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{isNaN:function(e){return e!=e}})},function(e,t,n){"use strict";var o=n(4),r=n(151),i=Math.abs;o({target:"Number",stat:!0},{isSafeInteger:function(e){return r(e)&&i(e)<=9007199254740991}})},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{MAX_SAFE_INTEGER:9007199254740991})},function(e,t,n){"use strict";n(4)({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},function(e,t,n){"use strict";var o=n(4),r=n(278);o({target:"Number",stat:!0,forced:Number.parseFloat!=r},{parseFloat:r})},function(e,t,n){"use strict";var o=n(7),r=n(59).trim,i=n(84),a=o.parseFloat,c=1/a(i+"-0")!=-Infinity;e.exports=c?function(e){var t=r(String(e)),n=a(t);return 0===n&&"-"==t.charAt(0)?-0:n}:a},function(e,t,n){"use strict";var o=n(4),r=n(152);o({target:"Number",stat:!0,forced:Number.parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o=n(4),r=n(31),i=n(281),a=n(108),c=n(5),l=1..toFixed,d=Math.floor,u=function s(e,t,n){return 0===t?n:t%2==1?s(e,t-1,n*e):s(e*e,t/2,n)};o({target:"Number",proto:!0,forced:l&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!c((function(){l.call({})}))},{toFixed:function(e){var t,n,o,c,l=i(this),s=r(e),p=[0,0,0,0,0,0],m="",f="0",h=function(e,t){for(var n=-1,o=t;++n<6;)o+=e*p[n],p[n]=o%1e7,o=d(o/1e7)},C=function(e){for(var t=6,n=0;--t>=0;)n+=p[t],p[t]=d(n/e),n=n%e*1e7},g=function(){for(var e=6,t="";--e>=0;)if(""!==t||0===e||0!==p[e]){var n=String(p[e]);t=""===t?n:t+a.call("0",7-n.length)+n}return t};if(s<0||s>20)throw RangeError("Incorrect fraction digits");if(l!=l)return"NaN";if(l<=-1e21||l>=1e21)return String(l);if(l<0&&(m="-",l=-l),l>1e-21)if(n=(t=function(e){for(var t=0,n=e;n>=4096;)t+=12,n/=4096;for(;n>=2;)t+=1,n/=2;return t}(l*u(2,69,1))-69)<0?l*u(2,-t,1):l/u(2,t,1),n*=4503599627370496,(t=52-t)>0){for(h(0,n),o=s;o>=7;)h(1e7,0),o-=7;for(h(u(10,o,1),0),o=t-1;o>=23;)C(1<<23),o-=23;C(1<<o),h(1,1),C(2),f=g()}else h(0,n),h(1<<-t,0),f=g()+a.call("0",s);return f=s>0?m+((c=f.length)<=s?"0."+a.call("0",s-c)+f:f.slice(0,c-s)+"."+f.slice(c-s)):m+f}})},function(e,t,n){"use strict";var o=n(34);e.exports=function(e){if("number"!=typeof e&&"Number"!=o(e))throw TypeError("Incorrect invocation");return+e}},function(e,t,n){"use strict";var o=n(4),r=n(283);o({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},function(e,t,n){"use strict";var o=n(9),r=n(5),i=n(66),a=n(97),c=n(74),l=n(17),d=n(61),u=Object.assign,s=Object.defineProperty;e.exports=!u||r((function(){if(o&&1!==u({b:1},u(s({},"a",{enumerable:!0,get:function(){s(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol();return e[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(e){t[e]=e})),7!=u({},e)[n]||"abcdefghijklmnopqrst"!=i(u({},t)).join("")}))?function(e,t){for(var n=l(e),r=arguments.length,u=1,s=a.f,p=c.f;r>u;)for(var m,f=d(arguments[u++]),h=s?i(f).concat(s(f)):i(f),C=h.length,g=0;C>g;)m=h[g++],o&&!p.call(f,m)||(n[m]=f[m]);return n}:u},function(e,t,n){"use strict";n(4)({target:"Object",stat:!0,sham:!n(9)},{create:n(46)})},function(e,t,n){"use strict";var o=n(4),r=n(9),i=n(85),a=n(17),c=n(32),l=n(14);r&&o({target:"Object",proto:!0,forced:i},{__defineGetter__:function(e,t){l.f(a(this),e,{get:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(4),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperties:n(136)})},function(e,t,n){"use strict";var o=n(4),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperty:n(14).f})},function(e,t,n){"use strict";var o=n(4),r=n(9),i=n(85),a=n(17),c=n(32),l=n(14);r&&o({target:"Object",proto:!0,forced:i},{__defineSetter__:function(e,t){l.f(a(this),e,{set:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(4),r=n(153).entries;o({target:"Object",stat:!0},{entries:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(4),r=n(71),i=n(5),a=n(8),c=n(55).onFreeze,l=Object.freeze;o({target:"Object",stat:!0,forced:i((function(){l(1)})),sham:!r},{freeze:function(e){return l&&a(e)?l(c(e)):e}})},function(e,t,n){"use strict";var o=n(4),r=n(72),i=n(53);o({target:"Object",stat:!0},{fromEntries:function(e){var t={};return r(e,(function(e,n){i(t,e,n)}),undefined,!0),t}})},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(26),a=n(22).f,c=n(9),l=r((function(){a(1)}));o({target:"Object",stat:!0,forced:!c||l,sham:!c},{getOwnPropertyDescriptor:function(e,t){return a(i(e),t)}})},function(e,t,n){"use strict";var o=n(4),r=n(9),i=n(95),a=n(26),c=n(22),l=n(53);o({target:"Object",stat:!0,sham:!r},{getOwnPropertyDescriptors:function(e){for(var t,n,o=a(e),r=c.f,d=i(o),u={},s=0;d.length>s;)(n=r(o,t=d[s++]))!==undefined&&l(u,t,n);return u}})},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(138).f;o({target:"Object",stat:!0,forced:r((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(17),a=n(37),c=n(105);o({target:"Object",stat:!0,forced:r((function(){a(1)})),sham:!c},{getPrototypeOf:function(e){return a(i(e))}})},function(e,t,n){"use strict";n(4)({target:"Object",stat:!0},{is:n(154)})},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(8),a=Object.isExtensible;o({target:"Object",stat:!0,forced:r((function(){a(1)}))},{isExtensible:function(e){return!!i(e)&&(!a||a(e))}})},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(8),a=Object.isFrozen;o({target:"Object",stat:!0,forced:r((function(){a(1)}))},{isFrozen:function(e){return!i(e)||!!a&&a(e)}})},function(e,t,n){"use strict";var o=n(4),r=n(5),i=n(8),a=Object.isSealed;o({target:"Object",stat:!0,forced:r((function(){a(1)}))},{isSealed:function(e){return!i(e)||!!a&&a(e)}})},function(e,t,n){"use strict";var o=n(4),r=n(17),i=n(66);o({target:"Object",stat:!0,forced:n(5)((function(){i(1)}))},{keys:function(e){return i(r(e))}})},function(e,t,n){"use strict";var o=n(4),r=n(9),i=n(85),a=n(17),c=n(35),l=n(37),d=n(22).f;r&&o({target:"Object",proto:!0,forced:i},{__lookupGetter__:function(e){var t,n=a(this),o=c(e,!0);do{if(t=d(n,o))return t.get}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(4),r=n(9),i=n(85),a=n(17),c=n(35),l=n(37),d=n(22).f;r&&o({target:"Object",proto:!0,forced:i},{__lookupSetter__:function(e){var t,n=a(this),o=c(e,!0);do{if(t=d(n,o))return t.set}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(4),r=n(8),i=n(55).onFreeze,a=n(71),c=n(5),l=Object.preventExtensions;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!a},{preventExtensions:function(e){return l&&r(e)?l(i(e)):e}})},function(e,t,n){"use strict";var o=n(4),r=n(8),i=n(55).onFreeze,a=n(71),c=n(5),l=Object.seal;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!a},{seal:function(e){return l&&r(e)?l(i(e)):e}})},function(e,t,n){"use strict";n(4)({target:"Object",stat:!0},{setPrototypeOf:n(54)})},function(e,t,n){"use strict";var o=n(103),r=n(24),i=n(307);o||r(Object.prototype,"toString",i,{unsafe:!0})},function(e,t,n){"use strict";var o=n(103),r=n(77);e.exports=o?{}.toString:function(){return"[object "+r(this)+"]"}},function(e,t,n){"use strict";var o=n(4),r=n(153).values;o({target:"Object",stat:!0},{values:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(4),r=n(152);o({global:!0,forced:parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o,r,i,a,c=n(4),l=n(40),d=n(7),u=n(39),s=n(155),p=n(24),m=n(70),f=n(47),h=n(57),C=n(8),g=n(32),b=n(58),N=n(34),v=n(93),V=n(72),y=n(78),k=n(49),x=n(110).set,_=n(157),w=n(158),B=n(311),S=n(159),L=n(312),I=n(36),T=n(65),A=n(13),E=n(99),M=A("species"),P="Promise",R=I.get,O=I.set,j=I.getterFor(P),D=s,F=d.TypeError,z=d.document,W=d.process,H=u("fetch"),U=S.f,G=U,K="process"==N(W),q=!!(z&&z.createEvent&&d.dispatchEvent),Y=T(P,(function(){if(!(v(D)!==String(D))){if(66===E)return!0;if(!K&&"function"!=typeof PromiseRejectionEvent)return!0}if(l&&!D.prototype["finally"])return!0;if(E>=51&&/native code/.test(D))return!1;var e=D.resolve(1),t=function(e){e((function(){}),(function(){}))};return(e.constructor={})[M]=t,!(e.then((function(){}))instanceof t)})),$=Y||!y((function(e){D.all(e)["catch"]((function(){}))})),X=function(e){var t;return!(!C(e)||"function"!=typeof(t=e.then))&&t},Q=function(e,t,n){if(!t.notified){t.notified=!0;var o=t.reactions;_((function(){for(var r=t.value,i=1==t.state,a=0;o.length>a;){var c,l,d,u=o[a++],s=i?u.ok:u.fail,p=u.resolve,m=u.reject,f=u.domain;try{s?(i||(2===t.rejection&&te(e,t),t.rejection=1),!0===s?c=r:(f&&f.enter(),c=s(r),f&&(f.exit(),d=!0)),c===u.promise?m(F("Promise-chain cycle")):(l=X(c))?l.call(c,p,m):p(c)):m(r)}catch(h){f&&!d&&f.exit(),m(h)}}t.reactions=[],t.notified=!1,n&&!t.rejection&&Z(e,t)}))}},J=function(e,t,n){var o,r;q?((o=z.createEvent("Event")).promise=t,o.reason=n,o.initEvent(e,!1,!0),d.dispatchEvent(o)):o={promise:t,reason:n},(r=d["on"+e])?r(o):"unhandledrejection"===e&&B("Unhandled promise rejection",n)},Z=function(e,t){x.call(d,(function(){var n,o=t.value;if(ee(t)&&(n=L((function(){K?W.emit("unhandledRejection",o,e):J("unhandledrejection",e,o)})),t.rejection=K||ee(t)?2:1,n.error))throw n.value}))},ee=function(e){return 1!==e.rejection&&!e.parent},te=function(e,t){x.call(d,(function(){K?W.emit("rejectionHandled",e):J("rejectionhandled",e,t.value)}))},ne=function(e,t,n,o){return function(r){e(t,n,r,o)}},oe=function(e,t,n,o){t.done||(t.done=!0,o&&(t=o),t.value=n,t.state=2,Q(e,t,!0))},re=function ie(e,t,n,o){if(!t.done){t.done=!0,o&&(t=o);try{if(e===n)throw F("Promise can't be resolved itself");var r=X(n);r?_((function(){var o={done:!1};try{r.call(n,ne(ie,e,o,t),ne(oe,e,o,t))}catch(i){oe(e,o,i,t)}})):(t.value=n,t.state=1,Q(e,t,!1))}catch(i){oe(e,{done:!1},i,t)}}};Y&&(D=function(e){b(this,D,P),g(e),o.call(this);var t=R(this);try{e(ne(re,this,t),ne(oe,this,t))}catch(n){oe(this,t,n)}},(o=function(e){O(this,{type:P,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:undefined})}).prototype=m(D.prototype,{then:function(e,t){var n=j(this),o=U(k(this,D));return o.ok="function"!=typeof e||e,o.fail="function"==typeof t&&t,o.domain=K?W.domain:undefined,n.parent=!0,n.reactions.push(o),0!=n.state&&Q(this,n,!1),o.promise},"catch":function(e){return this.then(undefined,e)}}),r=function(){var e=new o,t=R(e);this.promise=e,this.resolve=ne(re,e,t),this.reject=ne(oe,e,t)},S.f=U=function(e){return e===D||e===i?new r(e):G(e)},l||"function"!=typeof s||(a=s.prototype.then,p(s.prototype,"then",(function(e,t){var n=this;return new D((function(e,t){a.call(n,e,t)})).then(e,t)}),{unsafe:!0}),"function"==typeof H&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(e){return w(D,H.apply(d,arguments))}}))),c({global:!0,wrap:!0,forced:Y},{Promise:D}),f(D,P,!1,!0),h(P),i=u(P),c({target:P,stat:!0,forced:Y},{reject:function(e){var t=U(this);return t.reject.call(undefined,e),t.promise}}),c({target:P,stat:!0,forced:l||Y},{resolve:function(e){return w(l&&this===i?D:this,e)}}),c({target:P,stat:!0,forced:$},{all:function(e){var t=this,n=U(t),o=n.resolve,r=n.reject,i=L((function(){var n=g(t.resolve),i=[],a=0,c=1;V(e,(function(e){var l=a++,d=!1;i.push(undefined),c++,n.call(t,e).then((function(e){d||(d=!0,i[l]=e,--c||o(i))}),r)})),--c||o(i)}));return i.error&&r(i.value),n.promise},race:function(e){var t=this,n=U(t),o=n.reject,r=L((function(){var r=g(t.resolve);V(e,(function(e){r.call(t,e).then(n.resolve,o)}))}));return r.error&&o(r.value),n.promise}})},function(e,t,n){"use strict";var o=n(7);e.exports=function(e,t){var n=o.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))}},function(e,t,n){"use strict";e.exports=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}}},function(e,t,n){"use strict";var o=n(4),r=n(40),i=n(155),a=n(5),c=n(39),l=n(49),d=n(158),u=n(24);o({target:"Promise",proto:!0,real:!0,forced:!!i&&a((function(){i.prototype["finally"].call({then:function(){}},(function(){}))}))},{"finally":function(e){var t=l(this,c("Promise")),n="function"==typeof e;return this.then(n?function(n){return d(t,e()).then((function(){return n}))}:e,n?function(n){return d(t,e()).then((function(){throw n}))}:e)}}),r||"function"!=typeof i||i.prototype["finally"]||u(i.prototype,"finally",c("Promise").prototype["finally"])},function(e,t,n){"use strict";var o=n(4),r=n(39),i=n(32),a=n(10),c=n(5),l=r("Reflect","apply"),d=Function.apply;o({target:"Reflect",stat:!0,forced:!c((function(){l((function(){}))}))},{apply:function(e,t,n){return i(e),a(n),l?l(e,t,n):d.call(e,t,n)}})},function(e,t,n){"use strict";var o=n(4),r=n(39),i=n(32),a=n(10),c=n(8),l=n(46),d=n(148),u=n(5),s=r("Reflect","construct"),p=u((function(){function e(){}return!(s((function(){}),[],e)instanceof e)})),m=!u((function(){s((function(){}))})),f=p||m;o({target:"Reflect",stat:!0,forced:f,sham:f},{construct:function(e,t){i(e),a(t);var n=arguments.length<3?e:i(arguments[2]);if(m&&!p)return s(e,t,n);if(e==n){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var o=[null];return o.push.apply(o,t),new(d.apply(e,o))}var r=n.prototype,u=l(c(r)?r:Object.prototype),f=Function.apply.call(e,u,t);return c(f)?f:u}})},function(e,t,n){"use strict";var o=n(4),r=n(9),i=n(10),a=n(35),c=n(14);o({target:"Reflect",stat:!0,forced:n(5)((function(){Reflect.defineProperty(c.f({},1,{value:1}),1,{value:2})})),sham:!r},{defineProperty:function(e,t,n){i(e);var o=a(t,!0);i(n);try{return c.f(e,o,n),!0}catch(r){return!1}}})},function(e,t,n){"use strict";var o=n(4),r=n(10),i=n(22).f;o({target:"Reflect",stat:!0},{deleteProperty:function(e,t){var n=i(r(e),t);return!(n&&!n.configurable)&&delete e[t]}})},function(e,t,n){"use strict";var o=n(4),r=n(8),i=n(10),a=n(20),c=n(22),l=n(37);o({target:"Reflect",stat:!0},{get:function d(e,t){var n,o,u=arguments.length<3?e:arguments[2];return i(e)===u?e[t]:(n=c.f(e,t))?a(n,"value")?n.value:n.get===undefined?undefined:n.get.call(u):r(o=l(e))?d(o,t,u):void 0}})},function(e,t,n){"use strict";var o=n(4),r=n(9),i=n(10),a=n(22);o({target:"Reflect",stat:!0,sham:!r},{getOwnPropertyDescriptor:function(e,t){return a.f(i(e),t)}})},function(e,t,n){"use strict";var o=n(4),r=n(10),i=n(37);o({target:"Reflect",stat:!0,sham:!n(105)},{getPrototypeOf:function(e){return i(r(e))}})},function(e,t,n){"use strict";n(4)({target:"Reflect",stat:!0},{has:function(e,t){return t in e}})},function(e,t,n){"use strict";var o=n(4),r=n(10),i=Object.isExtensible;o({target:"Reflect",stat:!0},{isExtensible:function(e){return r(e),!i||i(e)}})},function(e,t,n){"use strict";n(4)({target:"Reflect",stat:!0},{ownKeys:n(95)})},function(e,t,n){"use strict";var o=n(4),r=n(39),i=n(10);o({target:"Reflect",stat:!0,sham:!n(71)},{preventExtensions:function(e){i(e);try{var t=r("Object","preventExtensions");return t&&t(e),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(4),r=n(10),i=n(8),a=n(20),c=n(5),l=n(14),d=n(22),u=n(37),s=n(50);o({target:"Reflect",stat:!0,forced:c((function(){var e=l.f({},"a",{configurable:!0});return!1!==Reflect.set(u(e),"a",1,e)}))},{set:function p(e,t,n){var o,c,m=arguments.length<4?e:arguments[3],f=d.f(r(e),t);if(!f){if(i(c=u(e)))return p(c,t,n,m);f=s(0)}if(a(f,"value")){if(!1===f.writable||!i(m))return!1;if(o=d.f(m,t)){if(o.get||o.set||!1===o.writable)return!1;o.value=n,l.f(m,t,o)}else l.f(m,t,s(0,n));return!0}return f.set!==undefined&&(f.set.call(m,n),!0)}})},function(e,t,n){"use strict";var o=n(4),r=n(10),i=n(145),a=n(54);a&&o({target:"Reflect",stat:!0},{setPrototypeOf:function(e,t){r(e),i(t);try{return a(e,t),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(9),r=n(7),i=n(65),a=n(82),c=n(14).f,l=n(51).f,d=n(111),u=n(86),s=n(112),p=n(24),m=n(5),f=n(36).set,h=n(57),C=n(13)("match"),g=r.RegExp,b=g.prototype,N=/a/g,v=/a/g,V=new g(N)!==N,y=s.UNSUPPORTED_Y;if(o&&i("RegExp",!V||y||m((function(){return v[C]=!1,g(N)!=N||g(v)==v||"/a/i"!=g(N,"i")})))){for(var k=function(e,t){var n,o=this instanceof k,r=d(e),i=t===undefined;if(!o&&r&&e.constructor===k&&i)return e;V?r&&!i&&(e=e.source):e instanceof k&&(i&&(t=u.call(e)),e=e.source),y&&(n=!!t&&t.indexOf("y")>-1)&&(t=t.replace(/y/g,""));var c=a(V?new g(e,t):g(e,t),o?this:b,k);return y&&n&&f(c,{sticky:n}),c},x=function(e){e in k||c(k,e,{configurable:!0,get:function(){return g[e]},set:function(t){g[e]=t}})},_=l(g),w=0;_.length>w;)x(_[w++]);b.constructor=k,k.prototype=b,p(r,"RegExp",k)}h("RegExp")},function(e,t,n){"use strict";var o=n(9),r=n(14),i=n(86),a=n(112).UNSUPPORTED_Y;o&&("g"!=/./g.flags||a)&&r.f(RegExp.prototype,"flags",{configurable:!0,get:i})},function(e,t,n){"use strict";var o=n(24),r=n(10),i=n(5),a=n(86),c=RegExp.prototype,l=c.toString,d=i((function(){return"/a/b"!=l.call({source:"a",flags:"b"})})),u="toString"!=l.name;(d||u)&&o(RegExp.prototype,"toString",(function(){var e=r(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(n===undefined&&e instanceof RegExp&&!("flags"in c)?a.call(e):n)}),{unsafe:!0})},function(e,t,n){"use strict";var o=n(81),r=n(149);e.exports=o("Set",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(4),r=n(113).codeAt;o({target:"String",proto:!0},{codePointAt:function(e){return r(this,e)}})},function(e,t,n){"use strict";var o,r=n(4),i=n(22).f,a=n(12),c=n(114),l=n(23),d=n(115),u=n(40),s="".endsWith,p=Math.min,m=d("endsWith");r({target:"String",proto:!0,forced:!!(u||m||(o=i(String.prototype,"endsWith"),!o||o.writable))&&!m},{endsWith:function(e){var t=String(l(this));c(e);var n=arguments.length>1?arguments[1]:undefined,o=a(t.length),r=n===undefined?o:p(a(n),o),i=String(e);return s?s.call(t,i,r):t.slice(r-i.length,r)===i}})},function(e,t,n){"use strict";var o=n(4),r=n(45),i=String.fromCharCode,a=String.fromCodePoint;o({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(e){for(var t,n=[],o=arguments.length,a=0;o>a;){if(t=+arguments[a++],r(t,1114111)!==t)throw RangeError(t+" is not a valid code point");n.push(t<65536?i(t):i(55296+((t-=65536)>>10),t%1024+56320))}return n.join("")}})},function(e,t,n){"use strict";var o=n(4),r=n(114),i=n(23);o({target:"String",proto:!0,forced:!n(115)("includes")},{includes:function(e){return!!~String(i(this)).indexOf(r(e),arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(113).charAt,r=n(36),i=n(104),a=r.set,c=r.getterFor("String Iterator");i(String,"String",(function(e){a(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,t=c(this),n=t.string,r=t.index;return r>=n.length?{value:undefined,done:!0}:(e=o(n,r),t.index+=e.length,{value:e,done:!1})}))},function(e,t,n){"use strict";var o=n(88),r=n(10),i=n(12),a=n(23),c=n(116),l=n(89);o("match",1,(function(e,t,n){return[function(t){var n=a(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var a=r(e),d=String(this);if(!a.global)return l(a,d);var u=a.unicode;a.lastIndex=0;for(var s,p=[],m=0;null!==(s=l(a,d));){var f=String(s[0]);p[m]=f,""===f&&(a.lastIndex=c(d,i(a.lastIndex),u)),m++}return 0===m?null:p}]}))},function(e,t,n){"use strict";var o=n(4),r=n(107).end;o({target:"String",proto:!0,forced:n(161)},{padEnd:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(107).start;o({target:"String",proto:!0,forced:n(161)},{padStart:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(4),r=n(26),i=n(12);o({target:"String",stat:!0},{raw:function(e){for(var t=r(e.raw),n=i(t.length),o=arguments.length,a=[],c=0;n>c;)a.push(String(t[c++])),c<o&&a.push(String(arguments[c]));return a.join("")}})},function(e,t,n){"use strict";n(4)({target:"String",proto:!0},{repeat:n(108)})},function(e,t,n){"use strict";var o=n(88),r=n(10),i=n(17),a=n(12),c=n(31),l=n(23),d=n(116),u=n(89),s=Math.max,p=Math.min,m=Math.floor,f=/\$([$&'`]|\d\d?|<[^>]*>)/g,h=/\$([$&'`]|\d\d?)/g;o("replace",2,(function(e,t,n,o){var C=o.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,g=o.REPLACE_KEEPS_$0,b=C?"$":"$0";return[function(n,o){var r=l(this),i=n==undefined?undefined:n[e];return i!==undefined?i.call(n,r,o):t.call(String(r),n,o)},function(e,o){if(!C&&g||"string"==typeof o&&-1===o.indexOf(b)){var i=n(t,e,this,o);if(i.done)return i.value}var l=r(e),m=String(this),f="function"==typeof o;f||(o=String(o));var h=l.global;if(h){var v=l.unicode;l.lastIndex=0}for(var V=[];;){var y=u(l,m);if(null===y)break;if(V.push(y),!h)break;""===String(y[0])&&(l.lastIndex=d(m,a(l.lastIndex),v))}for(var k,x="",_=0,w=0;w<V.length;w++){y=V[w];for(var B=String(y[0]),S=s(p(c(y.index),m.length),0),L=[],I=1;I<y.length;I++)L.push((k=y[I])===undefined?k:String(k));var T=y.groups;if(f){var A=[B].concat(L,S,m);T!==undefined&&A.push(T);var E=String(o.apply(undefined,A))}else E=N(B,m,S,L,T,o);S>=_&&(x+=m.slice(_,S)+E,_=S+B.length)}return x+m.slice(_)}];function N(e,n,o,r,a,c){var l=o+e.length,d=r.length,u=h;return a!==undefined&&(a=i(a),u=f),t.call(c,u,(function(t,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return e;case"`":return n.slice(0,o);case"'":return n.slice(l);case"<":c=a[i.slice(1,-1)];break;default:var u=+i;if(0===u)return t;if(u>d){var s=m(u/10);return 0===s?t:s<=d?r[s-1]===undefined?i.charAt(1):r[s-1]+i.charAt(1):t}c=r[u-1]}return c===undefined?"":c}))}}))},function(e,t,n){"use strict";var o=n(88),r=n(10),i=n(23),a=n(154),c=n(89);o("search",1,(function(e,t,n){return[function(t){var n=i(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var i=r(e),l=String(this),d=i.lastIndex;a(d,0)||(i.lastIndex=0);var u=c(i,l);return a(i.lastIndex,d)||(i.lastIndex=d),null===u?-1:u.index}]}))},function(e,t,n){"use strict";var o=n(88),r=n(111),i=n(10),a=n(23),c=n(49),l=n(116),d=n(12),u=n(89),s=n(87),p=n(5),m=[].push,f=Math.min,h=!p((function(){return!RegExp(4294967295,"y")}));o("split",2,(function(e,t,n){var o;return o="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var o=String(a(this)),i=n===undefined?4294967295:n>>>0;if(0===i)return[];if(e===undefined)return[o];if(!r(e))return t.call(o,e,i);for(var c,l,d,u=[],p=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,h=new RegExp(e.source,p+"g");(c=s.call(h,o))&&!((l=h.lastIndex)>f&&(u.push(o.slice(f,c.index)),c.length>1&&c.index<o.length&&m.apply(u,c.slice(1)),d=c[0].length,f=l,u.length>=i));)h.lastIndex===c.index&&h.lastIndex++;return f===o.length?!d&&h.test("")||u.push(""):u.push(o.slice(f)),u.length>i?u.slice(0,i):u}:"0".split(undefined,0).length?function(e,n){return e===undefined&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=a(this),i=t==undefined?undefined:t[e];return i!==undefined?i.call(t,r,n):o.call(String(r),t,n)},function(e,r){var a=n(o,e,this,r,o!==t);if(a.done)return a.value;var s=i(e),p=String(this),m=c(s,RegExp),C=s.unicode,g=(s.ignoreCase?"i":"")+(s.multiline?"m":"")+(s.unicode?"u":"")+(h?"y":"g"),b=new m(h?s:"^(?:"+s.source+")",g),N=r===undefined?4294967295:r>>>0;if(0===N)return[];if(0===p.length)return null===u(b,p)?[p]:[];for(var v=0,V=0,y=[];V<p.length;){b.lastIndex=h?V:0;var k,x=u(b,h?p:p.slice(V));if(null===x||(k=f(d(b.lastIndex+(h?0:V)),p.length))===v)V=l(p,V,C);else{if(y.push(p.slice(v,V)),y.length===N)return y;for(var _=1;_<=x.length-1;_++)if(y.push(x[_]),y.length===N)return y;V=v=k}}return y.push(p.slice(v)),y}]}),!h)},function(e,t,n){"use strict";var o,r=n(4),i=n(22).f,a=n(12),c=n(114),l=n(23),d=n(115),u=n(40),s="".startsWith,p=Math.min,m=d("startsWith");r({target:"String",proto:!0,forced:!!(u||m||(o=i(String.prototype,"startsWith"),!o||o.writable))&&!m},{startsWith:function(e){var t=String(l(this));c(e);var n=a(p(arguments.length>1?arguments[1]:undefined,t.length)),o=String(e);return s?s.call(t,o,n):t.slice(n,n+o.length)===o}})},function(e,t,n){"use strict";var o=n(4),r=n(59).trim;o({target:"String",proto:!0,forced:n(117)("trim")},{trim:function(){return r(this)}})},function(e,t,n){"use strict";var o=n(4),r=n(59).end,i=n(117)("trimEnd"),a=i?function(){return r(this)}:"".trimEnd;o({target:"String",proto:!0,forced:i},{trimEnd:a,trimRight:a})},function(e,t,n){"use strict";var o=n(4),r=n(59).start,i=n(117)("trimStart"),a=i?function(){return r(this)}:"".trimStart;o({target:"String",proto:!0,forced:i},{trimStart:a,trimLeft:a})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("anchor")},{anchor:function(e){return r(this,"a","name",e)}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("big")},{big:function(){return r(this,"big","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("blink")},{blink:function(){return r(this,"blink","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("bold")},{bold:function(){return r(this,"b","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("fixed")},{fixed:function(){return r(this,"tt","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("fontcolor")},{fontcolor:function(e){return r(this,"font","color",e)}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("fontsize")},{fontsize:function(e){return r(this,"font","size",e)}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("italics")},{italics:function(){return r(this,"i","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("link")},{link:function(e){return r(this,"a","href",e)}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("small")},{small:function(){return r(this,"small","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("strike")},{strike:function(){return r(this,"strike","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("sub")},{sub:function(){return r(this,"sub","","")}})},function(e,t,n){"use strict";var o=n(4),r=n(28);o({target:"String",proto:!0,forced:n(29)("sup")},{sup:function(){return r(this,"sup","","")}})},function(e,t,n){"use strict";n(42)("Float32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(31);e.exports=function(e){var t=o(e);if(t<0)throw RangeError("The argument can't be less than 0");return t}},function(e,t,n){"use strict";n(42)("Float64",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(42)("Int8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(42)("Int16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(42)("Int32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(42)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(42)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}),!0)},function(e,t,n){"use strict";n(42)("Uint16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(42)("Uint32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(11),r=n(140),i=o.aTypedArray;(0,o.exportTypedArrayMethod)("copyWithin",(function(e,t){return r.call(i(this),e,t,arguments.length>2?arguments[2]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(21).every,i=o.aTypedArray;(0,o.exportTypedArrayMethod)("every",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(100),i=o.aTypedArray;(0,o.exportTypedArrayMethod)("fill",(function(e){return r.apply(i(this),arguments)}))},function(e,t,n){"use strict";var o=n(11),r=n(21).filter,i=n(49),a=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("filter",(function(e){for(var t=r(a(this),e,arguments.length>1?arguments[1]:undefined),n=i(this,this.constructor),o=0,l=t.length,d=new(c(n))(l);l>o;)d[o]=t[o++];return d}))},function(e,t,n){"use strict";var o=n(11),r=n(21).find,i=o.aTypedArray;(0,o.exportTypedArrayMethod)("find",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(21).findIndex,i=o.aTypedArray;(0,o.exportTypedArrayMethod)("findIndex",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(21).forEach,i=o.aTypedArray;(0,o.exportTypedArrayMethod)("forEach",(function(e){r(i(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(118);(0,n(11).exportTypedArrayStaticMethod)("from",n(163),o)},function(e,t,n){"use strict";var o=n(11),r=n(64).includes,i=o.aTypedArray;(0,o.exportTypedArrayMethod)("includes",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(64).indexOf,i=o.aTypedArray;(0,o.exportTypedArrayMethod)("indexOf",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(11),i=n(143),a=n(13)("iterator"),c=o.Uint8Array,l=i.values,d=i.keys,u=i.entries,s=r.aTypedArray,p=r.exportTypedArrayMethod,m=c&&c.prototype[a],f=!!m&&("values"==m.name||m.name==undefined),h=function(){return l.call(s(this))};p("entries",(function(){return u.call(s(this))})),p("keys",(function(){return d.call(s(this))})),p("values",h,!f),p(a,h,!f)},function(e,t,n){"use strict";var o=n(11),r=o.aTypedArray,i=o.exportTypedArrayMethod,a=[].join;i("join",(function(e){return a.apply(r(this),arguments)}))},function(e,t,n){"use strict";var o=n(11),r=n(146),i=o.aTypedArray;(0,o.exportTypedArrayMethod)("lastIndexOf",(function(e){return r.apply(i(this),arguments)}))},function(e,t,n){"use strict";var o=n(11),r=n(21).map,i=n(49),a=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("map",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined,(function(e,t){return new(c(i(e,e.constructor)))(t)}))}))},function(e,t,n){"use strict";var o=n(11),r=n(118),i=o.aTypedArrayConstructor;(0,o.exportTypedArrayStaticMethod)("of",(function(){for(var e=0,t=arguments.length,n=new(i(this))(t);t>e;)n[e]=arguments[e++];return n}),r)},function(e,t,n){"use strict";var o=n(11),r=n(79).left,i=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduce",(function(e){return r(i(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=n(79).right,i=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduceRight",(function(e){return r(i(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=o.aTypedArray,i=o.exportTypedArrayMethod,a=Math.floor;i("reverse",(function(){for(var e,t=r(this).length,n=a(t/2),o=0;o<n;)e=this[o],this[o++]=this[--t],this[t]=e;return this}))},function(e,t,n){"use strict";var o=n(11),r=n(12),i=n(162),a=n(17),c=n(5),l=o.aTypedArray;(0,o.exportTypedArrayMethod)("set",(function(e){l(this);var t=i(arguments.length>1?arguments[1]:undefined,1),n=this.length,o=a(e),c=r(o.length),d=0;if(c+t>n)throw RangeError("Wrong length");for(;d<c;)this[t+d]=o[d++]}),c((function(){new Int8Array(1).set({})})))},function(e,t,n){"use strict";var o=n(11),r=n(49),i=n(5),a=o.aTypedArray,c=o.aTypedArrayConstructor,l=o.exportTypedArrayMethod,d=[].slice;l("slice",(function(e,t){for(var n=d.call(a(this),e,t),o=r(this,this.constructor),i=0,l=n.length,u=new(c(o))(l);l>i;)u[i]=n[i++];return u}),i((function(){new Int8Array(1).slice()})))},function(e,t,n){"use strict";var o=n(11),r=n(21).some,i=o.aTypedArray;(0,o.exportTypedArrayMethod)("some",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(11),r=o.aTypedArray,i=o.exportTypedArrayMethod,a=[].sort;i("sort",(function(e){return a.call(r(this),e)}))},function(e,t,n){"use strict";var o=n(11),r=n(12),i=n(45),a=n(49),c=o.aTypedArray;(0,o.exportTypedArrayMethod)("subarray",(function(e,t){var n=c(this),o=n.length,l=i(e,o);return new(a(n,n.constructor))(n.buffer,n.byteOffset+l*n.BYTES_PER_ELEMENT,r((t===undefined?o:i(t,o))-l))}))},function(e,t,n){"use strict";var o=n(7),r=n(11),i=n(5),a=o.Int8Array,c=r.aTypedArray,l=r.exportTypedArrayMethod,d=[].toLocaleString,u=[].slice,s=!!a&&i((function(){d.call(new a(1))}));l("toLocaleString",(function(){return d.apply(s?u.call(c(this)):c(this),arguments)}),i((function(){return[1,2].toLocaleString()!=new a([1,2]).toLocaleString()}))||!i((function(){a.prototype.toLocaleString.call([1,2])})))},function(e,t,n){"use strict";var o=n(11).exportTypedArrayMethod,r=n(5),i=n(7).Uint8Array,a=i&&i.prototype||{},c=[].toString,l=[].join;r((function(){c.call({})}))&&(c=function(){return l.call(this)});var d=a.toString!=c;o("toString",c,d)},function(e,t,n){"use strict";var o,r=n(7),i=n(70),a=n(55),c=n(81),l=n(164),d=n(8),u=n(36).enforce,s=n(131),p=!r.ActiveXObject&&"ActiveXObject"in r,m=Object.isExtensible,f=function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}},h=e.exports=c("WeakMap",f,l);if(s&&p){o=l.getConstructor(f,"WeakMap",!0),a.REQUIRED=!0;var C=h.prototype,g=C["delete"],b=C.has,N=C.get,v=C.set;i(C,{"delete":function(e){if(d(e)&&!m(e)){var t=u(this);return t.frozen||(t.frozen=new o),g.call(this,e)||t.frozen["delete"](e)}return g.call(this,e)},has:function(e){if(d(e)&&!m(e)){var t=u(this);return t.frozen||(t.frozen=new o),b.call(this,e)||t.frozen.has(e)}return b.call(this,e)},get:function(e){if(d(e)&&!m(e)){var t=u(this);return t.frozen||(t.frozen=new o),b.call(this,e)?N.call(this,e):t.frozen.get(e)}return N.call(this,e)},set:function(e,t){if(d(e)&&!m(e)){var n=u(this);n.frozen||(n.frozen=new o),b.call(this,e)?v.call(this,e,t):n.frozen.set(e,t)}else v.call(this,e,t);return this}})}},function(e,t,n){"use strict";n(81)("WeakSet",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),n(164))},function(e,t,n){"use strict";var o=n(4),r=n(7),i=n(110);o({global:!0,bind:!0,enumerable:!0,forced:!r.setImmediate||!r.clearImmediate},{setImmediate:i.set,clearImmediate:i.clear})},function(e,t,n){"use strict";var o=n(4),r=n(7),i=n(157),a=n(34),c=r.process,l="process"==a(c);o({global:!0,enumerable:!0,noTargetGet:!0},{queueMicrotask:function(e){var t=l&&c.domain;i(t?t.bind(e):e)}})},function(e,t,n){"use strict";var o=n(4),r=n(7),i=n(76),a=[].slice,c=function(e){return function(t,n){var o=arguments.length>2,r=o?a.call(arguments,2):undefined;return e(o?function(){("function"==typeof t?t:Function(t)).apply(this,r)}:t,n)}};o({global:!0,bind:!0,forced:/MSIE .\./.test(i)},{setTimeout:c(r.setTimeout),setInterval:c(r.setInterval)})},function(e,t,n){"use strict";t.__esModule=!0,t._CI=Se,t._HI=O,t._M=Le,t._MCCC=Ee,t._ME=Te,t._MFCC=Me,t._MP=we,t._MR=be,t.__render=De,t.createComponentVNode=function(e,t,n,o,r){var a=new L(1,null,null,e=function(e,t){if(12&e)return e;if(t.prototype&&t.prototype.render)return 4;if(t.render)return 32776;return 8}(e,t),o,function(e,t,n){var o=(32768&e?t.render:t).defaultProps;if(i(o))return n;if(i(n))return u(o,null);return B(n,o)}(e,t,n),function(e,t,n){if(4&e)return n;var o=(32768&e?t.render:t).defaultHooks;if(i(o))return n;if(i(n))return o;return B(n,o)}(e,t,r),t);x.createVNode&&x.createVNode(a);return a},t.createFragment=A,t.createPortal=function(e,t){var n=O(e);return I(1024,1024,null,n,0,null,n.key,t)},t.createRef=function(){return{current:null}},t.createRenderer=function(e){return function(t,n,o,r){e||(e=t),Fe(n,e,o,r)}},t.createTextVNode=T,t.createVNode=I,t.directClone=E,t.findDOMfromVNode=N,t.forwardRef=function(e){return{render:e}},t.getFlagsForElementVnode=function(e){switch(e){case"svg":return 32;case"input":return 64;case"select":return 256;case"textarea":return 128;case"$F":return 8192;default:return 1}},t.linkEvent=function(e,t){if(c(t))return{data:e,event:t};return null},t.normalizeProps=function(e){var t=e.props;if(t){var n=e.flags;481&n&&(void 0!==t.children&&i(e.children)&&R(e,t.children),void 0!==t.className&&(e.className=t.className||null,t.className=undefined)),void 0!==t.key&&(e.key=t.key,t.key=undefined),void 0!==t.ref&&(e.ref=8&n?u(e.ref,t.ref):t.ref,t.ref=undefined)}return e},t.render=Fe,t.rerender=Ke,t.version=t.options=t.Fragment=t.EMPTY_OBJ=t.Component=void 0;var o=Array.isArray;function r(e){var t=typeof e;return"string"===t||"number"===t}function i(e){return null==e}function a(e){return null===e||!1===e||!0===e||void 0===e}function c(e){return"function"==typeof e}function l(e){return"string"==typeof e}function d(e){return null===e}function u(e,t){var n={};if(e)for(var o in e)n[o]=e[o];if(t)for(var r in t)n[r]=t[r];return n}function s(e){return!d(e)&&"object"==typeof e}var p={};t.EMPTY_OBJ=p;function m(e){return e.substr(2).toLowerCase()}function f(e,t){e.appendChild(t)}function h(e,t,n){d(n)?f(e,t):e.insertBefore(t,n)}function C(e,t){e.removeChild(t)}function g(e){for(var t=0;t<e.length;t++)e[t]()}function b(e,t,n){var o=e.children;return 4&n?o.$LI:8192&n?2===e.childFlags?o:o[t?0:o.length-1]:o}function N(e,t){for(var n;e;){if(2033&(n=e.flags))return e.dom;e=b(e,t,n)}return null}function v(e,t){do{var n=e.flags;if(2033&n)return void C(t,e.dom);var o=e.children;if(4&n&&(e=o.$LI),8&n&&(e=o),8192&n){if(2!==e.childFlags){for(var r=0,i=o.length;r<i;++r)v(o[r],t);return}e=o}}while(e)}function V(e,t,n){do{var o=e.flags;if(2033&o)return void h(t,e.dom,n);var r=e.children;if(4&o&&(e=r.$LI),8&o&&(e=r),8192&o){if(2!==e.childFlags){for(var i=0,a=r.length;i<a;++i)V(r[i],t,n);return}e=r}}while(e)}function y(e,t,n){return e.constructor.getDerivedStateFromProps?u(n,e.constructor.getDerivedStateFromProps(t,n)):n}t.Fragment="$F";var k={v:!1},x={componentComparator:null,createVNode:null,renderComplete:null};function _(e,t){e.textContent=t}function w(e,t){return s(e)&&e.event===t.event&&e.data===t.data}function B(e,t){for(var n in t)void 0===e[n]&&(e[n]=t[n]);return e}function S(e,t){return!!c(e)&&(e(t),!0)}t.options=x;function L(e,t,n,o,r,i,a,c){this.childFlags=e,this.children=t,this.className=n,this.dom=null,this.flags=o,this.key=void 0===r?null:r,this.props=void 0===i?null:i,this.ref=void 0===a?null:a,this.type=c}function I(e,t,n,o,r,i,a,c){var l=void 0===r?1:r,d=new L(l,o,n,e,a,i,c,t);return x.createVNode&&x.createVNode(d),0===l&&R(d,d.children),d}function T(e,t){return new L(1,i(e)||!0===e||!1===e?"":e,null,16,t,null,null,null)}function A(e,t,n){var o=I(8192,8192,null,e,t,null,n,null);switch(o.childFlags){case 1:o.children=M(),o.childFlags=2;break;case 16:o.children=[T(e)],o.childFlags=4}return o}function E(e){var t=-16385&e.flags,n=e.props;if(14&t&&!d(n)){var o=n;for(var r in n={},o)n[r]=o[r]}return 0==(8192&t)?new L(e.childFlags,e.children,e.className,t,e.key,n,e.ref,e.type):function(e){var t,n=e.children,o=e.childFlags;if(2===o)t=E(n);else if(12&o){t=[];for(var r=0,i=n.length;r<i;++r)t.push(E(n[r]))}return A(t,o,e.key)}(e)}function M(){return T("",null)}function P(e,t,n,i){for(var c=e.length;n<c;n++){var u=e[n];if(!a(u)){var s=i+"$"+n;if(o(u))P(u,t,0,s);else{if(r(u))u=T(u,s);else{var p=u.key,m=l(p)&&"$"===p[0];(81920&u.flags||m)&&(u=E(u)),u.flags|=65536,m?p.substring(0,i.length)!==i&&(u.key=i+p):d(p)?u.key=s:u.key=i+p}t.push(u)}}}}function R(e,t){var n,i=1;if(a(t))n=t;else if(r(t))i=16,n=t;else if(o(t)){for(var c=t.length,u=0;u<c;++u){var s=t[u];if(a(s)||o(s)){n=n||t.slice(0,u),P(t,n,u,"");break}if(r(s))(n=n||t.slice(0,u)).push(T(s,"$"+u));else{var p=s.key,m=(81920&s.flags)>0,f=d(p),h=l(p)&&"$"===p[0];m||f||h?(n=n||t.slice(0,u),(m||h)&&(s=E(s)),(f||h)&&(s.key="$"+u),n.push(s)):n&&n.push(s),s.flags|=65536}}i=0===(n=n||t).length?1:8}else(n=t).flags|=65536,81920&t.flags&&(n=E(t)),i=2;return e.children=n,e.childFlags=i,e}function O(e){return a(e)||r(e)?T(e,null):o(e)?A(e,0,null):16384&e.flags?E(e):e}var j="http://www.w3.org/1999/xlink",D="http://www.w3.org/XML/1998/namespace",F={"xlink:actuate":j,"xlink:arcrole":j,"xlink:href":j,"xlink:role":j,"xlink:show":j,"xlink:title":j,"xlink:type":j,"xml:base":D,"xml:lang":D,"xml:space":D};function z(e){return{onClick:e,onDblClick:e,onFocusIn:e,onFocusOut:e,onKeyDown:e,onKeyPress:e,onKeyUp:e,onMouseDown:e,onMouseMove:e,onMouseUp:e,onTouchEnd:e,onTouchMove:e,onTouchStart:e}}var W=z(0),H=z(null),U=z(!0);function G(e,t){var n=t.$EV;return n||(n=t.$EV=z(null)),n[e]||1==++W[e]&&(H[e]=function(e){var t="onClick"===e||"onDblClick"===e?function(e){return function(t){0===t.button?q(t,!0,e,Q(t)):t.stopPropagation()}}(e):function(e){return function(t){q(t,!1,e,Q(t))}}(e);return document.addEventListener(m(e),t),t}(e)),n}function K(e,t){var n=t.$EV;n&&n[e]&&(0==--W[e]&&(document.removeEventListener(m(e),H[e]),H[e]=null),n[e]=null)}function q(e,t,n,o){var r=function(e){return c(e.composedPath)?e.composedPath()[0]:e.target}(e);do{if(t&&r.disabled)return;var i=r.$EV;if(i){var a=i[n];if(a&&(o.dom=r,a.event?a.event(a.data,e):a(e),e.cancelBubble))return}r=r.parentNode}while(!d(r))}function Y(){this.cancelBubble=!0,this.immediatePropagationStopped||this.stopImmediatePropagation()}function $(){return this.defaultPrevented}function X(){return this.cancelBubble}function Q(e){var t={dom:document};return e.isDefaultPrevented=$,e.isPropagationStopped=X,e.stopPropagation=Y,Object.defineProperty(e,"currentTarget",{configurable:!0,get:function(){return t.dom}}),t}function J(e,t,n){if(e[t]){var o=e[t];o.event?o.event(o.data,n):o(n)}else{var r=t.toLowerCase();e[r]&&e[r](n)}}function Z(e,t){var n=function(n){var o=this.$V;if(o){var r=o.props||p,i=o.dom;if(l(e))J(r,e,n);else for(var a=0;a<e.length;++a)J(r,e[a],n);if(c(t)){var d=this.$V,u=d.props||p;t(u,i,!1,d)}}};return Object.defineProperty(n,"wrapped",{configurable:!1,enumerable:!1,value:!0,writable:!1}),n}function ee(e,t,n){var o="$"+t,r=e[o];if(r){if(r[1].wrapped)return;e.removeEventListener(r[0],r[1]),e[o]=null}c(n)&&(e.addEventListener(t,n),e[o]=[t,n])}function te(e){return"checkbox"===e||"radio"===e}var ne=Z("onInput",ie),oe=Z(["onClick","onChange"],ie);function re(e){e.stopPropagation()}function ie(e,t){var n=e.type,o=e.value,r=e.checked,a=e.multiple,c=e.defaultValue,l=!i(o);n&&n!==t.type&&t.setAttribute("type",n),i(a)||a===t.multiple||(t.multiple=a),i(c)||l||(t.defaultValue=c+""),te(n)?(l&&(t.value=o),i(r)||(t.checked=r)):l&&t.value!==o?(t.defaultValue=o,t.value=o):i(r)||(t.checked=r)}function ae(e,t){if("option"===e.type)!function(e,t){var n=e.props||p,r=e.dom;r.value=n.value,n.value===t||o(t)&&-1!==t.indexOf(n.value)?r.selected=!0:i(t)&&i(n.selected)||(r.selected=n.selected||!1)}(e,t);else{var n=e.children,r=e.flags;if(4&r)ae(n.$LI,t);else if(8&r)ae(n,t);else if(2===e.childFlags)ae(n,t);else if(12&e.childFlags)for(var a=0,c=n.length;a<c;++a)ae(n[a],t)}}re.wrapped=!0;var ce=Z("onChange",le);function le(e,t,n,o){var r=Boolean(e.multiple);i(e.multiple)||r===t.multiple||(t.multiple=r);var a=e.selectedIndex;if(-1===a&&(t.selectedIndex=-1),1!==o.childFlags){var c=e.value;"number"==typeof a&&a>-1&&t.options[a]&&(c=t.options[a].value),n&&i(c)&&(c=e.defaultValue),ae(o,c)}}var de,ue,se=Z("onInput",me),pe=Z("onChange");function me(e,t,n){var o=e.value,r=t.value;if(i(o)){if(n){var a=e.defaultValue;i(a)||a===r||(t.defaultValue=a,t.value=a)}}else r!==o&&(t.defaultValue=o,t.value=o)}function fe(e,t,n,o,r,i){64&e?ie(o,n):256&e?le(o,n,r,t):128&e&&me(o,n,r),i&&(n.$V=t)}function he(e,t,n){64&e?function(e,t){te(t.type)?(ee(e,"change",oe),ee(e,"click",re)):ee(e,"input",ne)}(t,n):256&e?function(e){ee(e,"change",ce)}(t):128&e&&function(e,t){ee(e,"input",se),t.onChange&&ee(e,"change",pe)}(t,n)}function Ce(e){return e.type&&te(e.type)?!i(e.checked):!i(e.value)}function ge(e){e&&!S(e,null)&&e.current&&(e.current=null)}function be(e,t,n){e&&(c(e)||void 0!==e.current)&&n.push((function(){S(e,t)||void 0===e.current||(e.current=t)}))}function Ne(e,t){ve(e),v(e,t)}function ve(e){var t,n=e.flags,o=e.children;if(481&n){t=e.ref;var r=e.props;ge(t);var a=e.childFlags;if(!d(r))for(var l=Object.keys(r),u=0,s=l.length;u<s;u++){var m=l[u];U[m]&&K(m,e.dom)}12&a?Ve(o):2===a&&ve(o)}else o&&(4&n?(c(o.componentWillUnmount)&&o.componentWillUnmount(),ge(e.ref),o.$UN=!0,ve(o.$LI)):8&n?(!i(t=e.ref)&&c(t.onComponentWillUnmount)&&t.onComponentWillUnmount(N(e,!0),e.props||p),ve(o)):1024&n?Ne(o,e.ref):8192&n&&12&e.childFlags&&Ve(o))}function Ve(e){for(var t=0,n=e.length;t<n;++t)ve(e[t])}function ye(e){e.textContent=""}function ke(e,t,n){Ve(n),8192&t.flags?v(t,e):ye(e)}function xe(e,t,n,o){var r=e&&e.__html||"",a=t&&t.__html||"";r!==a&&(i(a)||function(e,t){var n=document.createElement("i");return n.innerHTML=t,n.innerHTML===e.innerHTML}(o,a)||(d(n)||(12&n.childFlags?Ve(n.children):2===n.childFlags&&ve(n.children),n.children=null,n.childFlags=1),o.innerHTML=a))}function _e(e,t,n,o,r,a,d){switch(e){case"children":case"childrenType":case"className":case"defaultValue":case"key":case"multiple":case"ref":case"selectedIndex":break;case"autoFocus":o.autofocus=!!n;break;case"allowfullscreen":case"autoplay":case"capture":case"checked":case"controls":case"default":case"disabled":case"hidden":case"indeterminate":case"loop":case"muted":case"novalidate":case"open":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"selected":o[e]=!!n;break;case"defaultChecked":case"value":case"volume":if(a&&"value"===e)break;var u=i(n)?"":n;o[e]!==u&&(o[e]=u);break;case"style":!function(e,t,n){if(i(t))n.removeAttribute("style");else{var o,r,a=n.style;if(l(t))a.cssText=t;else if(i(e)||l(e))for(o in t)r=t[o],a.setProperty(o,r);else{for(o in t)(r=t[o])!==e[o]&&a.setProperty(o,r);for(o in e)i(t[o])&&a.removeProperty(o)}}}(t,n,o);break;case"dangerouslySetInnerHTML":xe(t,n,d,o);break;default:U[e]?function(e,t,n,o){if(c(n))G(e,o)[e]=n;else if(s(n)){if(w(t,n))return;G(e,o)[e]=n}else K(e,o)}(e,t,n,o):111===e.charCodeAt(0)&&110===e.charCodeAt(1)?function(e,t,n,o){if(s(n)){if(w(t,n))return;n=function(e){var t=e.event;return function(n){t(e.data,n)}}(n)}ee(o,m(e),n)}(e,t,n,o):i(n)?o.removeAttribute(e):r&&F[e]?o.setAttributeNS(F[e],e,n):o.setAttribute(e,n)}}function we(e,t,n,o,r){var i=!1,a=(448&t)>0;for(var c in a&&(i=Ce(n))&&he(t,o,n),n)_e(c,null,n[c],o,r,i,null);a&&fe(t,e,o,n,!0,i)}function Be(e,t,n){var o=O(e.render(t,e.state,n)),r=n;return c(e.getChildContext)&&(r=u(n,e.getChildContext())),e.$CX=r,o}function Se(e,t,n,o,r,i){var a=new t(n,o),l=a.$N=Boolean(t.getDerivedStateFromProps||a.getSnapshotBeforeUpdate);if(a.$SVG=r,a.$L=i,e.children=a,a.$BS=!1,a.context=o,a.props===p&&(a.props=n),l)a.state=y(a,n,a.state);else if(c(a.componentWillMount)){a.$BR=!0,a.componentWillMount();var u=a.$PS;if(!d(u)){var s=a.state;if(d(s))a.state=u;else for(var m in u)s[m]=u[m];a.$PS=null}a.$BR=!1}return a.$LI=Be(a,n,o),a}function Le(e,t,n,o,r,i){var a=e.flags|=16384;481&a?Te(e,t,n,o,r,i):4&a?function(e,t,n,o,r,i){var a=Se(e,e.type,e.props||p,n,o,i);Le(a.$LI,t,a.$CX,o,r,i),Ee(e.ref,a,i)}(e,t,n,o,r,i):8&a?(!function(e,t,n,o,r,i){Le(e.children=O(function(e,t){return 32768&e.flags?e.type.render(e.props||p,e.ref,t):e.type(e.props||p,t)}(e,n)),t,n,o,r,i)}(e,t,n,o,r,i),Me(e,i)):512&a||16&a?Ie(e,t,r):8192&a?function(e,t,n,o,r,i){var a=e.children,c=e.childFlags;12&c&&0===a.length&&(c=e.childFlags=2,a=e.children=M());2===c?Le(a,n,r,o,r,i):Ae(a,n,t,o,r,i)}(e,n,t,o,r,i):1024&a&&function(e,t,n,o,r){Le(e.children,e.ref,t,!1,null,r);var i=M();Ie(i,n,o),e.dom=i.dom}(e,n,t,r,i)}function Ie(e,t,n){var o=e.dom=document.createTextNode(e.children);d(t)||h(t,o,n)}function Te(e,t,n,o,r,a){var c=e.flags,l=e.props,u=e.className,s=e.children,p=e.childFlags,m=e.dom=function(e,t){return t?document.createElementNS("http://www.w3.org/2000/svg",e):document.createElement(e)}(e.type,o=o||(32&c)>0);if(i(u)||""===u||(o?m.setAttribute("class",u):m.className=u),16===p)_(m,s);else if(1!==p){var f=o&&"foreignObject"!==e.type;2===p?(16384&s.flags&&(e.children=s=E(s)),Le(s,m,n,f,null,a)):8!==p&&4!==p||Ae(s,m,n,f,null,a)}d(t)||h(t,m,r),d(l)||we(e,c,l,m,o),be(e.ref,m,a)}function Ae(e,t,n,o,r,i){for(var a=0;a<e.length;++a){var c=e[a];16384&c.flags&&(e[a]=c=E(c)),Le(c,t,n,o,r,i)}}function Ee(e,t,n){be(e,t,n),c(t.componentDidMount)&&n.push(function(e){return function(){e.componentDidMount()}}(t))}function Me(e,t){var n=e.ref;i(n)||(S(n.onComponentWillMount,e.props||p),c(n.onComponentDidMount)&&t.push(function(e,t){return function(){e.onComponentDidMount(N(t,!0),t.props||p)}}(n,e)))}function Pe(e,t,n,o,r,l,s){var m=t.flags|=16384;e.flags!==m||e.type!==t.type||e.key!==t.key||2048&m?16384&e.flags?function(e,t,n,o,r,i){ve(e),0!=(t.flags&e.flags&2033)?(Le(t,null,o,r,null,i),function(e,t,n){e.replaceChild(t,n)}(n,t.dom,e.dom)):(Le(t,n,o,r,N(e,!0),i),v(e,n))}(e,t,n,o,r,s):Le(t,n,o,r,l,s):481&m?function(e,t,n,o,r,a){var c,l=t.dom=e.dom,d=e.props,u=t.props,s=!1,m=!1;if(o=o||(32&r)>0,d!==u){var f=d||p;if((c=u||p)!==p)for(var h in(s=(448&r)>0)&&(m=Ce(c)),c){var C=f[h],g=c[h];C!==g&&_e(h,C,g,l,o,m,e)}if(f!==p)for(var b in f)i(c[b])&&!i(f[b])&&_e(b,f[b],null,l,o,m,e)}var N=t.children,v=t.className;e.className!==v&&(i(v)?l.removeAttribute("class"):o?l.setAttribute("class",v):l.className=v);4096&r?function(e,t){e.textContent!==t&&(e.textContent=t)}(l,N):Re(e.childFlags,t.childFlags,e.children,N,l,n,o&&"foreignObject"!==t.type,null,e,a);s&&fe(r,t,l,c,!1,m);var V=t.ref,y=e.ref;y!==V&&(ge(y),be(V,l,a))}(e,t,o,r,m,s):4&m?function(e,t,n,o,r,i,a){var l=t.children=e.children;if(d(l))return;l.$L=a;var s=t.props||p,m=t.ref,f=e.ref,h=l.state;if(!l.$N){if(c(l.componentWillReceiveProps)){if(l.$BR=!0,l.componentWillReceiveProps(s,o),l.$UN)return;l.$BR=!1}d(l.$PS)||(h=u(h,l.$PS),l.$PS=null)}Oe(l,h,s,n,o,r,!1,i,a),f!==m&&(ge(f),be(m,l,a))}(e,t,n,o,r,l,s):8&m?function(e,t,n,o,r,a,l){var d=!0,u=t.props||p,s=t.ref,m=e.props,f=!i(s),h=e.children;f&&c(s.onComponentShouldUpdate)&&(d=s.onComponentShouldUpdate(m,u));if(!1!==d){f&&c(s.onComponentWillUpdate)&&s.onComponentWillUpdate(m,u);var C=t.type,g=O(32768&t.flags?C.render(u,s,o):C(u,o));Pe(h,g,n,o,r,a,l),t.children=g,f&&c(s.onComponentDidUpdate)&&s.onComponentDidUpdate(m,u)}else t.children=h}(e,t,n,o,r,l,s):16&m?function(e,t){var n=t.children,o=t.dom=e.dom;n!==e.children&&(o.nodeValue=n)}(e,t):512&m?t.dom=e.dom:8192&m?function(e,t,n,o,r,i){var a=e.children,c=t.children,l=e.childFlags,d=t.childFlags,u=null;12&d&&0===c.length&&(d=t.childFlags=2,c=t.children=M());var s=0!=(2&d);if(12&l){var p=a.length;(8&l&&8&d||s||!s&&c.length>p)&&(u=N(a[p-1],!1).nextSibling)}Re(l,d,a,c,n,o,r,u,e,i)}(e,t,n,o,r,s):function(e,t,n,o){var r=e.ref,i=t.ref,c=t.children;if(Re(e.childFlags,t.childFlags,e.children,c,r,n,!1,null,e,o),t.dom=e.dom,r!==i&&!a(c)){var l=c.dom;C(r,l),f(i,l)}}(e,t,o,s)}function Re(e,t,n,o,r,i,a,c,l,d){switch(e){case 2:switch(t){case 2:Pe(n,o,r,i,a,c,d);break;case 1:Ne(n,r);break;case 16:ve(n),_(r,o);break;default:!function(e,t,n,o,r,i){ve(e),Ae(t,n,o,r,N(e,!0),i),v(e,n)}(n,o,r,i,a,d)}break;case 1:switch(t){case 2:Le(o,r,i,a,c,d);break;case 1:break;case 16:_(r,o);break;default:Ae(o,r,i,a,c,d)}break;case 16:switch(t){case 16:!function(e,t,n){e!==t&&(""!==e?n.firstChild.nodeValue=t:_(n,t))}(n,o,r);break;case 2:ye(r),Le(o,r,i,a,c,d);break;case 1:ye(r);break;default:ye(r),Ae(o,r,i,a,c,d)}break;default:switch(t){case 16:Ve(n),_(r,o);break;case 2:ke(r,l,n),Le(o,r,i,a,c,d);break;case 1:ke(r,l,n);break;default:var u=0|n.length,s=0|o.length;0===u?s>0&&Ae(o,r,i,a,c,d):0===s?ke(r,l,n):8===t&&8===e?function(e,t,n,o,r,i,a,c,l,d){var u,s,p=i-1,m=a-1,f=0,h=e[f],C=t[f];e:{for(;h.key===C.key;){if(16384&C.flags&&(t[f]=C=E(C)),Pe(h,C,n,o,r,c,d),e[f]=C,++f>p||f>m)break e;h=e[f],C=t[f]}for(h=e[p],C=t[m];h.key===C.key;){if(16384&C.flags&&(t[m]=C=E(C)),Pe(h,C,n,o,r,c,d),e[p]=C,p--,m--,f>p||f>m)break e;h=e[p],C=t[m]}}if(f>p){if(f<=m)for(s=(u=m+1)<a?N(t[u],!0):c;f<=m;)16384&(C=t[f]).flags&&(t[f]=C=E(C)),++f,Le(C,n,o,r,s,d)}else if(f>m)for(;f<=p;)Ne(e[f++],n);else!function(e,t,n,o,r,i,a,c,l,d,u,s,p){var m,f,h,C=0,g=c,b=c,v=i-c+1,y=a-c+1,k=new Int32Array(y+1),x=v===o,_=!1,w=0,B=0;if(r<4||(v|y)<32)for(C=g;C<=i;++C)if(m=e[C],B<y){for(c=b;c<=a;c++)if(f=t[c],m.key===f.key){if(k[c-b]=C+1,x)for(x=!1;g<C;)Ne(e[g++],l);w>c?_=!0:w=c,16384&f.flags&&(t[c]=f=E(f)),Pe(m,f,l,n,d,u,p),++B;break}!x&&c>a&&Ne(m,l)}else x||Ne(m,l);else{var S={};for(C=b;C<=a;++C)S[t[C].key]=C;for(C=g;C<=i;++C)if(m=e[C],B<y)if(void 0!==(c=S[m.key])){if(x)for(x=!1;C>g;)Ne(e[g++],l);k[c-b]=C+1,w>c?_=!0:w=c,16384&(f=t[c]).flags&&(t[c]=f=E(f)),Pe(m,f,l,n,d,u,p),++B}else x||Ne(m,l);else x||Ne(m,l)}if(x)ke(l,s,e),Ae(t,l,n,d,u,p);else if(_){var L=function(e){var t=0,n=0,o=0,r=0,i=0,a=0,c=0,l=e.length;l>je&&(je=l,de=new Int32Array(l),ue=new Int32Array(l));for(;n<l;++n)if(0!==(t=e[n])){if(o=de[r],e[o]<t){ue[n]=o,de[++r]=n;continue}for(i=0,a=r;i<a;)e[de[c=i+a>>1]]<t?i=c+1:a=c;t<e[de[i]]&&(i>0&&(ue[n]=de[i-1]),de[i]=n)}i=r+1;var d=new Int32Array(i);a=de[i-1];for(;i-- >0;)d[i]=a,a=ue[a],de[i]=0;return d}(k);for(c=L.length-1,C=y-1;C>=0;C--)0===k[C]?(16384&(f=t[w=C+b]).flags&&(t[w]=f=E(f)),Le(f,l,n,d,(h=w+1)<r?N(t[h],!0):u,p)):c<0||C!==L[c]?V(f=t[w=C+b],l,(h=w+1)<r?N(t[h],!0):u):c--}else if(B!==y)for(C=y-1;C>=0;C--)0===k[C]&&(16384&(f=t[w=C+b]).flags&&(t[w]=f=E(f)),Le(f,l,n,d,(h=w+1)<r?N(t[h],!0):u,p))}(e,t,o,i,a,p,m,f,n,r,c,l,d)}(n,o,r,i,a,u,s,c,l,d):function(e,t,n,o,r,i,a,c,l){for(var d,u,s=i>a?a:i,p=0;p<s;++p)d=t[p],u=e[p],16384&d.flags&&(d=t[p]=E(d)),Pe(u,d,n,o,r,c,l),e[p]=d;if(i<a)for(p=s;p<a;++p)16384&(d=t[p]).flags&&(d=t[p]=E(d)),Le(d,n,o,r,c,l);else if(i>a)for(p=s;p<i;++p)Ne(e[p],n)}(n,o,r,i,a,u,s,c,d)}}}function Oe(e,t,n,o,r,i,a,l,d){var s=e.state,p=e.props,m=Boolean(e.$N),f=c(e.shouldComponentUpdate);if(m&&(t=y(e,n,t!==s?u(s,t):t)),a||!f||f&&e.shouldComponentUpdate(n,t,r)){!m&&c(e.componentWillUpdate)&&e.componentWillUpdate(n,t,r),e.props=n,e.state=t,e.context=r;var h=null,C=Be(e,n,r);m&&c(e.getSnapshotBeforeUpdate)&&(h=e.getSnapshotBeforeUpdate(p,s)),Pe(e.$LI,C,o,e.$CX,i,l,d),e.$LI=C,c(e.componentDidUpdate)&&function(e,t,n,o,r){r.push((function(){e.componentDidUpdate(t,n,o)}))}(e,p,s,h,d)}else e.props=n,e.state=t,e.context=r}var je=0;function De(e,t,n,o){var r=[],a=t.$V;k.v=!0,i(a)?i(e)||(16384&e.flags&&(e=E(e)),Le(e,t,o,!1,null,r),t.$V=e,a=e):i(e)?(Ne(a,t),t.$V=null):(16384&e.flags&&(e=E(e)),Pe(a,e,t,o,!1,null,r),a=t.$V=e),g(r),k.v=!1,c(n)&&n(),c(x.renderComplete)&&x.renderComplete(a,t)}function Fe(e,t,n,o){void 0===n&&(n=null),void 0===o&&(o=p),De(e,t,n,o)}"undefined"!=typeof document&&window.Node&&(Node.prototype.$EV=null,Node.prototype.$V=null);var ze=[],We="undefined"!=typeof Promise?Promise.resolve().then.bind(Promise.resolve()):function(e){window.setTimeout(e,0)},He=!1;function Ue(e,t,n,o){var r=e.$PS;if(c(t)&&(t=t(r?u(e.state,r):e.state,e.props,e.context)),i(r))e.$PS=t;else for(var a in t)r[a]=t[a];if(e.$BR)c(n)&&e.$L.push(n.bind(e));else{if(!k.v&&0===ze.length)return qe(e,o),void(c(n)&&n.call(e));if(-1===ze.indexOf(e)&&ze.push(e),He||(He=!0,We(Ke)),c(n)){var l=e.$QU;l||(l=e.$QU=[]),l.push(n)}}}function Ge(e){for(var t=e.$QU,n=0;n<t.length;++n)t[n].call(e);e.$QU=null}function Ke(){var e;for(He=!1;e=ze.shift();)e.$UN||(qe(e,!1),e.$QU&&Ge(e))}function qe(e,t){if(t||!e.$BR){var n=e.$PS;e.$PS=null;var o=[];k.v=!0,Oe(e,u(e.state,n),e.props,N(e.$LI,!0).parentNode,e.context,e.$SVG,t,null,o),g(o),k.v=!1}else e.state=e.$PS,e.$PS=null}var Ye=function(e,t){this.state=null,this.$BR=!1,this.$BS=!0,this.$PS=null,this.$LI=null,this.$UN=!1,this.$CX=null,this.$QU=null,this.$N=!1,this.$L=null,this.$SVG=!1,this.props=e||p,this.context=t||p};t.Component=Ye,Ye.prototype.forceUpdate=function(e){this.$UN||Ue(this,{},e,!0)},Ye.prototype.setState=function(e,t){this.$UN||this.$BS||Ue(this,e,t,!1)},Ye.prototype.render=function(e,t,n){return null};t.version="7.4.2"},function(e,t,n){"use strict";var o=function(e){var t=Object.prototype,n=t.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},r=o.iterator||"@@iterator",i=o.asyncIterator||"@@asyncIterator",a=o.toStringTag||"@@toStringTag";function c(e,t,n,o){var r=t&&t.prototype instanceof u?t:u,i=Object.create(r.prototype),a=new y(o||[]);return i._invoke=function(e,t,n){var o="suspendedStart";return function(r,i){if("executing"===o)throw new Error("Generator is already running");if("completed"===o){if("throw"===r)throw i;return x()}for(n.method=r,n.arg=i;;){var a=n.delegate;if(a){var c=N(a,n);if(c){if(c===d)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===o)throw o="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o="executing";var u=l(e,t,n);if("normal"===u.type){if(o=n.done?"completed":"suspendedYield",u.arg===d)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o="completed",n.method="throw",n.arg=u.arg)}}}(e,n,a),i}function l(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(o){return{type:"throw",arg:o}}}e.wrap=c;var d={};function u(){}function s(){}function p(){}var m={};m[r]=function(){return this};var f=Object.getPrototypeOf,h=f&&f(f(k([])));h&&h!==t&&n.call(h,r)&&(m=h);var C=p.prototype=u.prototype=Object.create(m);function g(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function b(e,t){var o;this._invoke=function(r,i){function a(){return new t((function(o,a){!function c(o,r,i,a){var d=l(e[o],e,r);if("throw"!==d.type){var u=d.arg,s=u.value;return s&&"object"==typeof s&&n.call(s,"__await")?t.resolve(s.__await).then((function(e){c("next",e,i,a)}),(function(e){c("throw",e,i,a)})):t.resolve(s).then((function(e){u.value=e,i(u)}),(function(e){return c("throw",e,i,a)}))}a(d.arg)}(r,i,o,a)}))}return o=o?o.then(a,a):a()}}function N(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator["return"]&&(t.method="return",t.arg=void 0,N(e,t),"throw"===t.method))return d;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return d}var o=l(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var r=o.arg;return r?r.done?(t[e.resultName]=r.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):r:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function v(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function V(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function y(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(v,this),this.reset(!0)}function k(e){if(e){var t=e[r];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function t(){for(;++o<e.length;)if(n.call(e,o))return t.value=e[o],t.done=!1,t;return t.value=void 0,t.done=!0,t};return i.next=i}}return{next:x}}function x(){return{value:void 0,done:!0}}return s.prototype=C.constructor=p,p.constructor=s,p[a]=s.displayName="GeneratorFunction",e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===s||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,p):(e.__proto__=p,a in e||(e[a]="GeneratorFunction")),e.prototype=Object.create(C),e},e.awrap=function(e){return{__await:e}},g(b.prototype),b.prototype[i]=function(){return this},e.AsyncIterator=b,e.async=function(t,n,o,r,i){void 0===i&&(i=Promise);var a=new b(c(t,n,o,r),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(C),C[a]="Generator",C[r]=function(){return this},C.toString=function(){return"[object Generator]"},e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function o(){for(;t.length;){var n=t.pop();if(n in e)return o.value=n,o.done=!1,o}return o.done=!0,o}},e.values=k,y.prototype={constructor:y,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(V),!e)for(var t in this)"t"===t.charAt(0)&&n.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function o(n,o){return a.type="throw",a.arg=e,t.next=n,o&&(t.method="next",t.arg=void 0),!!o}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],a=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var c=n.call(i,"catchLoc"),l=n.call(i,"finallyLoc");if(c&&l){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(e,t){for(var o=this.tryEntries.length-1;o>=0;--o){var r=this.tryEntries[o];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),V(n),d}},"catch":function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var o=n.completion;if("throw"===o.type){var r=o.arg;V(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:k(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),d}},e}(e.exports);try{regeneratorRuntime=o}catch(r){Function("r","regeneratorRuntime = r")(o)}},function(e,t,n){"use strict";!function(t,n){var o,r,i=t.html5||{},a=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,c=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,l=0,d={};function u(){var e=f.elements;return"string"==typeof e?e.split(" "):e}function s(e){var t=d[e._html5shiv];return t||(t={},l++,e._html5shiv=l,d[l]=t),t}function p(e,t,o){return t||(t=n),r?t.createElement(e):(o||(o=s(t)),!(i=o.cache[e]?o.cache[e].cloneNode():c.test(e)?(o.cache[e]=o.createElem(e)).cloneNode():o.createElem(e)).canHaveChildren||a.test(e)||i.tagUrn?i:o.frag.appendChild(i));var i}function m(e){e||(e=n);var t=s(e);return!f.shivCSS||o||t.hasCSS||(t.hasCSS=!!function(e,t){var n=e.createElement("p"),o=e.getElementsByTagName("head")[0]||e.documentElement;return n.innerHTML="x<style>"+t+"</style>",o.insertBefore(n.lastChild,o.firstChild)}(e,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),r||function(e,t){t.cache||(t.cache={},t.createElem=e.createElement,t.createFrag=e.createDocumentFragment,t.frag=t.createFrag()),e.createElement=function(n){return f.shivMethods?p(n,e,t):t.createElem(n)},e.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+u().join().replace(/[\w\-:]+/g,(function(e){return t.createElem(e),t.frag.createElement(e),'c("'+e+'")'}))+");return n}")(f,t.frag)}(e,t),e}!function(){try{var e=n.createElement("a");e.innerHTML="<xyz></xyz>",o="hidden"in e,r=1==e.childNodes.length||function(){n.createElement("a");var e=n.createDocumentFragment();return"undefined"==typeof e.cloneNode||"undefined"==typeof e.createDocumentFragment||"undefined"==typeof e.createElement}()}catch(t){o=!0,r=!0}}();var f={elements:i.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:"3.7.3",shivCSS:!1!==i.shivCSS,supportsUnknownElements:r,shivMethods:!1!==i.shivMethods,type:"default",shivDocument:m,createElement:p,createDocumentFragment:function(e,t){if(e||(e=n),r)return e.createDocumentFragment();for(var o=(t=t||s(e)).frag.cloneNode(),i=0,a=u(),c=a.length;i<c;i++)o.createElement(a[i]);return o},addElements:function(e,t){var n=f.elements;"string"!=typeof n&&(n=n.join(" ")),"string"!=typeof e&&(e=e.join(" ")),f.elements=n+" "+e,m(t)}};t.html5=f,m(n),e.exports&&(e.exports=f)}(window,document)},function(e,t,n){"use strict";!function(e){if(!document.createEvent){var t,n=!0,o=!1,r="__IE8__"+Math.random(),i=Object.defineProperty||function(e,t,n){e[t]=n.value},a=Object.defineProperties||function(t,n){for(var o in n)if(l.call(n,o))try{i(t,o,n[o])}catch(r){e.console}},c=Object.getOwnPropertyDescriptor,l=Object.prototype.hasOwnProperty,d=e.Element.prototype,u=e.Text.prototype,s=/^[a-z]+$/,p=/loaded|complete/,m={},f=document.createElement("div"),h=document.documentElement,C=h.removeAttribute,g=h.setAttribute,b=function(e){return{enumerable:!0,writable:!0,configurable:!0,value:e}};k(e.HTMLCommentElement.prototype,d,"nodeValue"),k(e.HTMLScriptElement.prototype,null,"text"),k(u,null,"nodeValue"),k(e.HTMLTitleElement.prototype,null,"text"),i(e.HTMLStyleElement.prototype,"textContent",(t=c(e.CSSStyleSheet.prototype,"cssText"),y((function(){return t.get.call(this.styleSheet)}),(function(e){t.set.call(this.styleSheet,e)}))));var N=/\b\s*alpha\s*\(\s*opacity\s*=\s*(\d+)\s*\)/;i(e.CSSStyleDeclaration.prototype,"opacity",{get:function(){var e=this.filter.match(N);return e?(e[1]/100).toString():""},set:function(e){this.zoom=1;var t=!1;e=e<1?" alpha(opacity="+Math.round(100*e)+")":"",this.filter=this.filter.replace(N,(function(){return t=!0,e})),!t&&e&&(this.filter+=e)}}),a(d,{textContent:{get:_,set:L},firstElementChild:{get:function(){for(var e=this.childNodes||[],t=0,n=e.length;t<n;t++)if(1==e[t].nodeType)return e[t]}},lastElementChild:{get:function(){for(var e=this.childNodes||[],t=e.length;t--;)if(1==e[t].nodeType)return e[t]}},oninput:{get:function(){return this._oninput||null},set:function(e){this._oninput&&(this.removeEventListener("input",this._oninput),this._oninput=e,e&&this.addEventListener("input",e))}},previousElementSibling:{get:function(){for(var e=this.previousSibling;e&&1!=e.nodeType;)e=e.previousSibling;return e}},nextElementSibling:{get:function(){for(var e=this.nextSibling;e&&1!=e.nodeType;)e=e.nextSibling;return e}},childElementCount:{get:function(){for(var e=0,t=this.childNodes||[],n=t.length;n--;e+=1==t[n].nodeType);return e}},addEventListener:b((function(e,t,n){if("function"==typeof t||"object"==typeof t){var o,a,c=this,d="on"+e,u=c[r]||i(c,r,{value:{}})[r],p=u[d]||(u[d]={}),h=p.h||(p.h=[]);if(!l.call(p,"w")){if(p.w=function(e){return e[r]||V(c,I(0,e),h,!1)},!l.call(m,d))if(s.test(e)){try{(o=document.createEventObject())[r]=!0,9!=c.nodeType&&(null==c.parentNode&&f.appendChild(c),(a=c.getAttribute(d))&&C.call(c,d)),c.fireEvent(d,o),m[d]=!0}catch(b){for(m[d]=!1;f.hasChildNodes();)f.removeChild(f.firstChild)}null!=a&&g.call(c,d,a)}else m[d]=!1;(p.n=m[d])&&c.attachEvent(d,p.w)}x(h,t)<0&&h[n?"unshift":"push"](t),"input"===e&&c.attachEvent("onkeyup",w)}})),dispatchEvent:b((function(e){var t,n="on"+e.type,o=this[r],i=o&&o[n],a=!!i;return e.target||(e.target=this),a?i.n?this.fireEvent(n,e):V(this,e,i.h,!0):!(t=this.parentNode)||t.dispatchEvent(e),!e.defaultPrevented})),removeEventListener:b((function(e,t,n){if("function"==typeof t||"object"==typeof t){var o="on"+e,i=this[r],a=i&&i[o],c=a&&a.h,l=c?x(c,t):-1;-1<l&&c.splice(l,1)}}))}),a(u,{addEventListener:b(d.addEventListener),dispatchEvent:b(d.dispatchEvent),removeEventListener:b(d.removeEventListener)}),a(e.XMLHttpRequest.prototype,{addEventListener:b((function(e,t,n){var o=this,a="on"+e,c=o[r]||i(o,r,{value:{}})[r],l=c[a]||(c[a]={}),d=l.h||(l.h=[]);x(d,t)<0&&(o[a]||(o[a]=function(){var t=document.createEvent("Event");t.initEvent(e,!0,!0),o.dispatchEvent(t)}),d[n?"unshift":"push"](t))})),dispatchEvent:b((function(e){var t="on"+e.type,n=this[r],o=n&&n[t];return!!o&&(o.n?this.fireEvent(t,e):V(this,e,o.h,!0))})),removeEventListener:b(d.removeEventListener)});var v=c(Event.prototype,"button").get;a(e.Event.prototype,{bubbles:b(!0),cancelable:b(!0),preventDefault:b((function(){this.cancelable&&(this.returnValue=!1)})),stopPropagation:b((function(){this.stoppedPropagation=!0,this.cancelBubble=!0})),stopImmediatePropagation:b((function(){this.stoppedImmediatePropagation=!0,this.stopPropagation()})),initEvent:b((function(e,t,n){this.type=e,this.bubbles=!!t,this.cancelable=!!n,this.bubbles||this.stopPropagation()})),pageX:{get:function(){return this._pageX||(this._pageX=this.clientX+e.scrollX-(h.clientLeft||0))}},pageY:{get:function(){return this._pageY||(this._pageY=this.clientY+e.scrollY-(h.clientTop||0))}},which:{get:function(){return this.keyCode?this.keyCode:isNaN(this.button)?undefined:this.button+1}},charCode:{get:function(){return this.keyCode&&"keypress"==this.type?this.keyCode:0}},buttons:{get:function(){return v.call(this)}},button:{get:function(){var e=this.buttons;return 1&e?0:2&e?2:4&e?1:undefined}},defaultPrevented:{get:function(){var e=this.returnValue;return!(void 0===e||e)}},relatedTarget:{get:function(){var e=this.type;return"mouseover"===e?this.fromElement:"mouseout"===e?this.toElement:null}}}),a(e.HTMLDocument.prototype,{defaultView:{get:function(){return this.parentWindow}},textContent:{get:function(){return 11===this.nodeType?_.call(this):null},set:function(e){11===this.nodeType&&L.call(this,e)}},addEventListener:b((function(t,o,r){var i=this;d.addEventListener.call(i,t,o,r),n&&"DOMContentLoaded"===t&&!p.test(i.readyState)&&(n=!1,i.attachEvent("onreadystatechange",B),e==top&&function a(e){try{i.documentElement.doScroll("left"),B()}catch(t){setTimeout(a,50)}}())})),dispatchEvent:b(d.dispatchEvent),removeEventListener:b(d.removeEventListener),createEvent:b((function(e){var t;if("Event"!==e)throw new Error("unsupported "+e);return(t=document.createEventObject()).timeStamp=(new Date).getTime(),t}))}),a(e.Window.prototype,{getComputedStyle:b(function(){var e=/^(?:[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|))(?!px)[a-z%]+$/,t=/^(top|right|bottom|left)$/,n=/\-([a-z])/g,o=function(e,t){return t.toUpperCase()};function r(e){this._=e}function i(){}return r.prototype.getPropertyValue=function(r){var i,a,c,l=this._,d=l.style,u=l.currentStyle,s=l.runtimeStyle;return"opacity"==r?d.opacity||"1":(r=("float"===r?"style-float":r).replace(n,o),i=u?u[r]:d[r],e.test(i)&&!t.test(r)&&(a=d.left,(c=s&&s.left)&&(s.left=u.left),d.left="fontSize"===r?"1em":i,i=d.pixelLeft+"px",d.left=a,c&&(s.left=c)),null==i?i:i+""||"auto")},i.prototype.getPropertyValue=function(){return null},function(e,t){return t?new i(e):new r(e)}}()),addEventListener:b((function(t,n,o){var i,a=e,c="on"+t;a[c]||(a[c]=function(e){return V(a,I(0,e),i,!1)&&undefined}),x(i=a[c][r]||(a[c][r]=[]),n)<0&&i[o?"unshift":"push"](n)})),dispatchEvent:b((function(t){var n=e["on"+t.type];return!n||!1!==n.call(e,t)&&!t.defaultPrevented})),removeEventListener:b((function(t,n,o){var i=(e["on"+t]||Object)[r],a=i?x(i,n):-1;-1<a&&i.splice(a,1)})),pageXOffset:{get:S("scrollLeft")},pageYOffset:{get:S("scrollTop")},scrollX:{get:S("scrollLeft")},scrollY:{get:S("scrollTop")},innerWidth:{get:S("clientWidth")},innerHeight:{get:S("clientHeight")}}),e.HTMLElement=e.Element,function(e,t,n){for(n=0;n<t.length;n++)document.createElement(t[n]);e.length||document.createStyleSheet(""),e[0].addRule(t.join(","),"display:block;")}(document.styleSheets,["header","nav","section","article","aside","footer"]),function(){if(!document.createRange){document.createRange=function(){return new n};var e=n.prototype;e.cloneContents=function(){for(var e=this._start.ownerDocument.createDocumentFragment(),n=t(this._start,this._end),o=0,r=n.length;o<r;o++)e.appendChild(n[o].cloneNode(!0));return e},e.cloneRange=function(){var e=new n;return e._start=this._start,e._end=this._end,e},e.deleteContents=function(){for(var e=this._start.parentNode,n=t(this._start,this._end),o=0,r=n.length;o<r;o++)e.removeChild(n[o])},e.extractContents=function(){for(var e=this._start.ownerDocument.createDocumentFragment(),n=t(this._start,this._end),o=0,r=n.length;o<r;o++)e.appendChild(n[o]);return e},e.setEndAfter=function(e){this._end=e},e.setEndBefore=function(e){this._end=e.previousSibling},e.setStartAfter=function(e){this._start=e.nextSibling},e.setStartBefore=function(e){this._start=e}}function t(e,t){for(var n=[e];e!==t;)n.push(e=e.nextSibling);return n}function n(){}}()}function V(e,t,n,o){for(var r,i,a=n.slice(),c=function(e,t){return e.currentTarget=t,e.eventPhase=e.target===e.currentTarget?2:3,e}(t,e),l=0,d=a.length;l<d&&("object"==typeof(r=a[l])?"function"==typeof r.handleEvent&&r.handleEvent(c):r.call(e,c),!c.stoppedImmediatePropagation);l++);return i=!c.stoppedPropagation,o&&i&&e.parentNode?e.parentNode.dispatchEvent(c):!c.defaultPrevented}function y(e,t){return{configurable:!0,get:e,set:t}}function k(e,t,n){var o=c(t||e,n);i(e,"textContent",y((function(){return o.get.call(this)}),(function(e){o.set.call(this,e)})))}function x(e,t){for(var n=e.length;n--&&e[n]!==t;);return n}function _(){if("BR"===this.tagName)return"\n";for(var e=this.firstChild,t=[];e;)8!==e.nodeType&&7!==e.nodeType&&t.push(e.textContent),e=e.nextSibling;return t.join("")}function w(e){var t=document.createEvent("Event");t.initEvent("input",!0,!0),(e.srcElement||e.fromElement||document).dispatchEvent(t)}function B(e){!o&&p.test(document.readyState)&&(o=!o,document.detachEvent("onreadystatechange",B),(e=document.createEvent("Event")).initEvent("DOMContentLoaded",!0,!0),document.dispatchEvent(e))}function S(e){return function(){return h[e]||document.body&&document.body[e]||0}}function L(e){for(var t;t=this.lastChild;)this.removeChild(t);null!=e&&this.appendChild(document.createTextNode(e))}function I(t,n){return n||(n=e.event),n.target||(n.target=n.srcElement||n.fromElement||document),n.timeStamp||(n.timeStamp=(new Date).getTime()),n}}(window)},function(e,t,n){"use strict";!function(e){function t(){return s.createDocumentFragment()}function n(e){return s.createElement(e)}function o(e,t){if(!e)throw new Error("Failed to construct "+t+": 1 argument required, but only 0 present.")}function r(e){if(1===e.length)return i(e[0]);for(var n=t(),o=A.call(e),r=0;r<e.length;r++)n.appendChild(i(o[r]));return n}function i(e){return"object"==typeof e?e:s.createTextNode(e)}for(var a,c,l,d,u,s=e.document,p=Object.prototype.hasOwnProperty,m=Object.defineProperty||function(e,t,n){return p.call(n,"value")?e[t]=n.value:(p.call(n,"get")&&e.__defineGetter__(t,n.get),p.call(n,"set")&&e.__defineSetter__(t,n.set)),e},f=[].indexOf||function(e){for(var t=this.length;t--&&this[t]!==e;);return t},h=function(e){var t="undefined"==typeof e.className,n=t?e.getAttribute("class")||"":e.className,o=t||"object"==typeof n,r=(o?t?n:n.baseVal:n).replace(g,"");r.length&&T.push.apply(this,r.split(b)),this._isSVG=o,this._=e},C={get:function(){return new h(this)},set:function(){}},g=/^\s+|\s+$/g,b=/\s+/,N=function(e,t){return this.contains(e)?t||this.remove(e):(t===undefined||t)&&(t=!0,this.add(e)),!!t},v=e.DocumentFragment&&DocumentFragment.prototype,V=e.Node,y=(V||Element).prototype,k=e.CharacterData||V,x=k&&k.prototype,_=e.DocumentType,w=_&&_.prototype,B=(e.Element||V||e.HTMLElement).prototype,S=e.HTMLSelectElement||n("select").constructor,L=S.prototype.remove,I=e.SVGElement,T=["matches",B.matchesSelector||B.webkitMatchesSelector||B.khtmlMatchesSelector||B.mozMatchesSelector||B.msMatchesSelector||B.oMatchesSelector||function(e){var t=this.parentNode;return!!t&&-1<f.call(t.querySelectorAll(e),this)},"closest",function(e){for(var t,n=this;(t=n&&n.matches)&&!n.matches(e);)n=n.parentNode;return t?n:null},"prepend",function(){var e=this.firstChild,t=r(arguments);e?this.insertBefore(t,e):this.appendChild(t)},"append",function(){this.appendChild(r(arguments))},"before",function(){var e=this.parentNode;e&&e.insertBefore(r(arguments),this)},"after",function(){var e=this.parentNode,t=this.nextSibling,n=r(arguments);e&&(t?e.insertBefore(n,t):e.appendChild(n))},"toggleAttribute",function(e,t){var n=this.hasAttribute(e);return 1<arguments.length?n&&!t?this.removeAttribute(e):t&&!n&&this.setAttribute(e,""):n?this.removeAttribute(e):this.setAttribute(e,""),this.hasAttribute(e)},"replace",function(){this.replaceWith.apply(this,arguments)},"replaceWith",function(){var e=this.parentNode;e&&e.replaceChild(r(arguments),this)},"remove",function(){var e=this.parentNode;e&&e.removeChild(this)}],A=T.slice,E=T.length;E;E-=2)if((c=T[E-2])in B||(B[c]=T[E-1]),"remove"!==c||L._dom4||((S.prototype[c]=function(){return 0<arguments.length?L.apply(this,arguments):B.remove.call(this)})._dom4=!0),/^(?:before|after|replace|replaceWith|remove)$/.test(c)&&(k&&!(c in x)&&(x[c]=T[E-1]),_&&!(c in w)&&(w[c]=T[E-1])),/^(?:append|prepend)$/.test(c))if(v)c in v||(v[c]=T[E-1]);else try{t().constructor.prototype[c]=T[E-1]}catch(P){}var M;n("a").matches("a")||(B[c]=(M=B[c],function(e){return M.call(this.parentNode?this:t().appendChild(this),e)})),h.prototype={length:0,add:function(){for(var e,t=0;t<arguments.length;t++)e=arguments[t],this.contains(e)||T.push.call(this,c);this._isSVG?this._.setAttribute("class",""+this):this._.className=""+this},contains:function(e){return function(t){return-1<(E=e.call(this,c=function(e){if(!e)throw"SyntaxError";if(b.test(e))throw"InvalidCharacterError";return e}(t)))}}([].indexOf||function(e){for(E=this.length;E--&&this[E]!==e;);return E}),item:function(e){return this[e]||null},remove:function(){for(var e,t=0;t<arguments.length;t++)e=arguments[t],this.contains(e)&&T.splice.call(this,E,1);this._isSVG?this._.setAttribute("class",""+this):this._.className=""+this},toggle:N,toString:function(){return T.join.call(this," ")}},I&&!("classList"in I.prototype)&&m(I.prototype,"classList",C),"classList"in s.documentElement?((d=n("div").classList).add("a","b","a"),"a b"!=d&&("add"in(l=d.constructor.prototype)||(l=e.TemporaryTokenList.prototype),u=function(e){return function(){for(var t=0;t<arguments.length;)e.call(this,arguments[t++])}},l.add=u(l.add),l.remove=u(l.remove),l.toggle=N)):m(B,"classList",C),"contains"in y||m(y,"contains",{value:function(e){for(;e&&e!==this;)e=e.parentNode;return this===e}}),"head"in s||m(s,"head",{get:function(){return a||(a=s.getElementsByTagName("head")[0])}}),function(){for(var t,n=e.requestAnimationFrame,o=e.cancelAnimationFrame,r=["o","ms","moz","webkit"],i=r.length;!o&&i--;)n=n||e[r[i]+"RequestAnimationFrame"],o=e[r[i]+"CancelAnimationFrame"]||e[r[i]+"CancelRequestAnimationFrame"];o||(n?(t=n,n=function(e){var n=!0;return t((function(){n&&e.apply(this,arguments)})),function(){n=!1}},o=function(e){e()}):(n=function(e){return setTimeout(e,15,15)},o=function(e){clearTimeout(e)})),e.requestAnimationFrame=n,e.cancelAnimationFrame=o}();try{new e.CustomEvent("?")}catch(P){e.CustomEvent=function(e,t){function n(e,t,n,o){this.initEvent(e,t,n),this.detail=o}return function(o,r){var i=s.createEvent(e);if("string"!=typeof o)throw new Error("An event name must be provided");return"Event"==e&&(i.initCustomEvent=n),null==r&&(r=t),i.initCustomEvent(o,r.bubbles,r.cancelable,r.detail),i}}(e.CustomEvent?"CustomEvent":"Event",{bubbles:!1,cancelable:!1,detail:null})}try{new Event("_")}catch(P){P=function(e){function t(e,t){o(arguments.length,"Event");var n=s.createEvent("Event");return t||(t={}),n.initEvent(e,!!t.bubbles,!!t.cancelable),n}return t.prototype=e.prototype,t}(e.Event||function(){}),m(e,"Event",{value:P}),Event!==P&&(Event=P)}try{new KeyboardEvent("_",{})}catch(P){P=function(t){var n,r=0,i={char:"",key:"",location:0,ctrlKey:!1,shiftKey:!1,altKey:!1,metaKey:!1,altGraphKey:!1,repeat:!1,locale:navigator.language,detail:0,bubbles:!1,cancelable:!1,keyCode:0,charCode:0,which:0};try{var a=s.createEvent("KeyboardEvent");a.initKeyboardEvent("keyup",!1,!1,e,"+",3,!0,!1,!0,!1,!1),r="+"==(a.keyIdentifier||a.key)&&3==(a.keyLocation||a.location)&&(a.ctrlKey?a.altKey?1:3:a.shiftKey?2:4)||9}catch(P){}function c(e){for(var t=[],n=["ctrlKey","Control","shiftKey","Shift","altKey","Alt","metaKey","Meta","altGraphKey","AltGraph"],o=0;o<n.length;o+=2)e[n[o]]&&t.push(n[o+1]);return t.join(" ")}function l(e,t){for(var n in t)t.hasOwnProperty(n)&&!t.hasOwnProperty.call(e,n)&&(e[n]=t[n]);return e}function d(e,t,n){try{t[e]=n[e]}catch(P){}}function u(t,a){o(arguments.length,"KeyboardEvent"),a=l(a||{},i);var u,p=s.createEvent(n),m=a.ctrlKey,f=a.shiftKey,h=a.altKey,C=a.metaKey,g=a.altGraphKey,b=r>3?c(a):null,N=String(a.key),v=String(a.char),V=a.location,y=a.keyCode||(a.keyCode=N)&&N.charCodeAt(0)||0,k=a.charCode||(a.charCode=v)&&v.charCodeAt(0)||0,x=a.bubbles,_=a.cancelable,w=a.repeat,B=a.locale,S=a.view||e;if(a.which||(a.which=a.keyCode),"initKeyEvent"in p)p.initKeyEvent(t,x,_,S,m,h,f,C,y,k);else if(0<r&&"initKeyboardEvent"in p){switch(u=[t,x,_,S],r){case 1:u.push(N,V,m,f,h,C,g);break;case 2:u.push(m,h,f,C,y,k);break;case 3:u.push(N,V,m,h,f,C,g);break;case 4:u.push(N,V,b,w,B);break;default:u.push(char,N,V,b,w,B)}p.initKeyboardEvent.apply(p,u)}else p.initEvent(t,x,_);for(N in p)i.hasOwnProperty(N)&&p[N]!==a[N]&&d(N,p,a);return p}return n=0<r?"KeyboardEvent":"Event",u.prototype=t.prototype,u}(e.KeyboardEvent||function(){}),m(e,"KeyboardEvent",{value:P}),KeyboardEvent!==P&&(KeyboardEvent=P)}try{new MouseEvent("_",{})}catch(P){P=function(t){function n(t,n){o(arguments.length,"MouseEvent");var r=s.createEvent("MouseEvent");return n||(n={}),r.initMouseEvent(t,!!n.bubbles,!!n.cancelable,n.view||e,n.detail||1,n.screenX||0,n.screenY||0,n.clientX||0,n.clientY||0,!!n.ctrlKey,!!n.altKey,!!n.shiftKey,!!n.metaKey,n.button||0,n.relatedTarget||null),r}return n.prototype=t.prototype,n}(e.MouseEvent||function(){}),m(e,"MouseEvent",{value:P}),MouseEvent!==P&&(MouseEvent=P)}s.querySelectorAll("*").forEach||function(){function e(e){var t=e.querySelectorAll;e.querySelectorAll=function(e){var n=t.call(this,e);return n.forEach=Array.prototype.forEach,n}}e(s),e(Element.prototype)}();try{s.querySelector(":scope *")}catch(P){!function(){var e="data-scope-"+(1e9*Math.random()>>>0),t=Element.prototype,n=t.querySelector,o=t.querySelectorAll;function r(t,n,o){t.setAttribute(e,null);var r=n.call(t,String(o).replace(/(^|,\s*)(:scope([ >]|$))/g,(function(t,n,o,r){return n+"["+e+"]"+(r||" ")})));return t.removeAttribute(e),r}t.querySelector=function(e){return r(this,n,e)},t.querySelectorAll=function(e){return r(this,o,e)}}()}}(window),function(e){var t=e.WeakMap||function(){var e,t=0,n=!1,o=!1;function r(t,r,i){o=i,n=!1,e=undefined,t.dispatchEvent(r)}function i(e){this.value=e}function c(){t++,this.__ce__=new a("@DOMMap:"+t+Math.random())}return i.prototype.handleEvent=function(t){n=!0,o?t.currentTarget.removeEventListener(t.type,this,!1):e=this.value},c.prototype={constructor:c,"delete":function(e){return r(e,this.__ce__,!0),n},get:function(t){r(t,this.__ce__,!1);var n=e;return e=undefined,n},has:function(e){return r(e,this.__ce__,!1),n},set:function(e,t){return r(e,this.__ce__,!0),e.addEventListener(this.__ce__.type,new i(t),!1),this}},c}();function n(){}function o(e,t,n){function r(e){r.once&&(e.currentTarget.removeEventListener(e.type,t,r),r.removed=!0),r.passive&&(e.preventDefault=o.preventDefault),"function"==typeof r.callback?r.callback.call(this,e):r.callback&&r.callback.handleEvent(e),r.passive&&delete e.preventDefault}return r.type=e,r.callback=t,r.capture=!!n.capture,r.passive=!!n.passive,r.once=!!n.once,r.removed=!1,r}n.prototype=(Object.create||Object)(null),o.preventDefault=function(){};var r,i,a=e.CustomEvent,c=e.dispatchEvent,l=e.addEventListener,d=e.removeEventListener,u=0,s=function(){u++},p=[].indexOf||function(e){for(var t=this.length;t--&&this[t]!==e;);return t},m=function(e){return"".concat(e.capture?"1":"0",e.passive?"1":"0",e.once?"1":"0")};try{l("_",s,{once:!0}),c(new a("_")),c(new a("_")),d("_",s,{once:!0})}catch(f){}1!==u&&(i=new t,r=function(e){if(e){var t=e.prototype;t.addEventListener=function(e){return function(t,r,a){if(a&&"boolean"!=typeof a){var c,l,d,u=i.get(this),s=m(a);u||i.set(this,u=new n),t in u||(u[t]={handler:[],wrap:[]}),l=u[t],(c=p.call(l.handler,r))<0?(c=l.handler.push(r)-1,l.wrap[c]=d=new n):d=l.wrap[c],s in d||(d[s]=o(t,r,a),e.call(this,t,d[s],d[s].capture))}else e.call(this,t,r,a)}}(t.addEventListener),t.removeEventListener=function(e){return function(t,n,o){if(o&&"boolean"!=typeof o){var r,a,c,l,d=i.get(this);if(d&&t in d&&(c=d[t],-1<(a=p.call(c.handler,n))&&(r=m(o))in(l=c.wrap[a]))){for(r in e.call(this,t,l[r],l[r].capture),delete l[r],l)return;c.handler.splice(a,1),c.wrap.splice(a,1),0===c.handler.length&&delete d[t]}}else e.call(this,t,n,o)}}(t.removeEventListener)}},e.EventTarget?r(EventTarget):(r(e.Text),r(e.Element||e.HTMLElement),r(e.HTMLDocument),r(e.Window||{prototype:e}),r(e.XMLHttpRequest)))}(window)},function(e,t,n){"use strict";!function(e){if("undefined"!=typeof e.setAttribute){var t=function(e){return e.replace(/-[a-z]/g,(function(e){return e[1].toUpperCase()}))};e.setProperty=function(e,n){var o=t(e);if(!n)return this.removeAttribute(o);var r=String(n);return this.setAttribute(o,r)},e.getPropertyValue=function(e){var n=t(e);return this.getAttribute(n)||null},e.removeProperty=function(e){var n=t(e),o=this.getAttribute(n);return this.removeAttribute(n),o}}}(CSSStyleDeclaration.prototype)},function(e,t,n){"use strict";window.Int32Array||(window.Int32Array=Array)},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){"use strict";t.__esModule=!0,t.loadCSS=void 0;var o=n(418),r=(0,n(43).createLogger)("assets"),i={styles:[]};t.loadCSS=function(e){i.styles.includes(e)||(i.styles.push(e),r.log("loading stylesheet '"+e+"'"),(0,o.loadCSS)(e))}},function(e,t,n){"use strict";(function(e){var n;n=void 0!==e?e:void 0,t.loadCSS=function(e,t,o,r){var i,a=n.document,c=a.createElement("link");if(t)i=t;else{var l=(a.body||a.getElementsByTagName("head")[0]).childNodes;i=l[l.length-1]}var d=a.styleSheets;if(r)for(var u in r)r.hasOwnProperty(u)&&c.setAttribute(u,r[u]);c.rel="stylesheet",c.href=e,c.media="only x",function m(e){if(a.body)return e();setTimeout((function(){m(e)}))}((function(){i.parentNode.insertBefore(c,t?i:i.nextSibling)}));var s=function f(e){for(var t=c.href,n=d.length;n--;)if(d[n].href===t)return e();setTimeout((function(){f(e)}))};function p(){c.addEventListener&&c.removeEventListener("load",p),c.media=o||"all"}return c.addEventListener&&c.addEventListener("load",p),c.onloadcssdefined=s,s(p),c}}).call(this,n(73))},function(e,t,n){"use strict";(function(e){var o=void 0!==e&&e||"undefined"!=typeof self&&self||window,r=Function.prototype.apply;function i(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new i(r.call(setTimeout,o,arguments),clearTimeout)},t.setInterval=function(){return new i(r.call(setInterval,o,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(o,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(420),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||void 0,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||void 0}).call(this,n(73))},function(e,t,n){"use strict";(function(e,t){!function(e,n){if(!e.setImmediate){var o,r,i,a,c,l=1,d={},u=!1,s=e.document,p=Object.getPrototypeOf&&Object.getPrototypeOf(e);p=p&&p.setTimeout?p:e,"[object process]"==={}.toString.call(e.process)?o=function(e){t.nextTick((function(){f(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((i=new MessageChannel).port1.onmessage=function(e){f(e.data)},o=function(e){i.port2.postMessage(e)}):s&&"onreadystatechange"in s.createElement("script")?(r=s.documentElement,o=function(e){var t=s.createElement("script");t.onreadystatechange=function(){f(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):o=function(e){setTimeout(f,0,e)}:(a="setImmediate$"+Math.random()+"$",c=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(a)&&f(+t.data.slice(a.length))},e.addEventListener?e.addEventListener("message",c,!1):e.attachEvent("onmessage",c),o=function(t){e.postMessage(a+t,"*")}),p.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var r={callback:e,args:t};return d[l]=r,o(l),l++},p.clearImmediate=m}function m(e){delete d[e]}function f(e){if(u)setTimeout(f,0,e);else{var t=d[e];if(t){u=!0;try{!function(e){var t=e.callback,n=e.args;switch(n.length){case 0:t();break;case 1:t(n[0]);break;case 2:t(n[0],n[1]);break;case 3:t(n[0],n[1],n[2]);break;default:t.apply(void 0,n)}}(t)}finally{m(e),u=!1}}}}}("undefined"==typeof self?void 0===e?void 0:e:self)}).call(this,n(73),n(421))},function(e,t,n){"use strict";var o,r,i=e.exports={};function a(){throw new Error("setTimeout has not been defined")}function c(){throw new Error("clearTimeout has not been defined")}function l(e){if(o===setTimeout)return setTimeout(e,0);if((o===a||!o)&&setTimeout)return o=setTimeout,setTimeout(e,0);try{return o(e,0)}catch(t){try{return o.call(null,e,0)}catch(t){return o.call(this,e,0)}}}!function(){try{o="function"==typeof setTimeout?setTimeout:a}catch(e){o=a}try{r="function"==typeof clearTimeout?clearTimeout:c}catch(e){r=c}}();var d,u=[],s=!1,p=-1;function m(){s&&d&&(s=!1,d.length?u=d.concat(u):p=-1,u.length&&f())}function f(){if(!s){var e=l(m);s=!0;for(var t=u.length;t;){for(d=u,u=[];++p<t;)d&&d[p].run();p=-1,t=u.length}d=null,s=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===c||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function h(e,t){this.fun=e,this.array=t}function C(){}i.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];u.push(new h(e,t)),1!==u.length||s||l(f)},h.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=C,i.addListener=C,i.once=C,i.off=C,i.removeListener=C,i.removeAllListeners=C,i.emit=C,i.prependListener=C,i.prependOnceListener=C,i.listeners=function(e){return[]},i.binding=function(e){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(e){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},function(e,t,n){"use strict";t.__esModule=!0,t.storage=t.STORAGE_INDEXED_DB=t.STORAGE_LOCAL_STORAGE=t.STORAGE_NONE=void 0;t.STORAGE_NONE=0;t.STORAGE_LOCAL_STORAGE=1;t.STORAGE_INDEXED_DB=2;var o=window.localStorage&&{get:function(e){var t=localStorage.getItem(e);if("string"==typeof t)return JSON.parse(t)},set:function(e,t){localStorage.setItem(e,JSON.stringify(t))},remove:function(e){localStorage.removeItem(e)},clear:function(){localStorage.clear()},engine:1}||function(){var e={};return{get:function(t){return e[t]},set:function(t,n){e[t]=n},remove:function(t){e[t]=undefined},clear:function(){e={}},engine:0}}();t.storage=o},function(e,t,n){"use strict";t.__esModule=!0,t.combineReducers=t.applyMiddleware=t.createStore=void 0;var o=n(33);function r(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return i(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}t.createStore=function a(e,t){if(t)return t(a)(e);var n,o=[],r=function(t){n=e(n,t),o.forEach((function(e){return e()}))};return r({type:"@@INIT"}),{dispatch:r,subscribe:function(e){o.push(e)},getState:function(){return n}}};t.applyMiddleware=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){return function(n){for(var r=arguments.length,i=new Array(r>1?r-1:0),a=1;a<r;a++)i[a-1]=arguments[a];var c=e.apply(void 0,[n].concat(i)),l=function(){throw new Error("Dispatching while constructing your middleware is not allowed.")},d={getState:c.getState,dispatch:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o<t;o++)n[o-1]=arguments[o];return l.apply(void 0,[e].concat(n))}},u=t.map((function(e){return e(d)}));return l=o.compose.apply(void 0,u)(c.dispatch),Object.assign({},c,{dispatch:l})}}};t.combineReducers=function(e){var t=Object.keys(e),n=!1;return function(o,i){for(var a,c=Object.assign({},o),l=r(t);!(a=l()).done;){var d=a.value,u=e[d],s=o[d],p=u(s,i);s!==p&&(n=!0,c[d]=p)}return n?c:o}}},function(e,t,n){"use strict";t.__esModule=!0,t.getRoutedComponent=void 0;var o=n(0),r=n(1),i=(n(120),n(2)),a=n(446),c=function(e,t){return function(){return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:["notFound"===e&&(0,o.createVNode)(1,"div",null,[(0,o.createTextVNode)("Interface "),(0,o.createVNode)(1,"b",null,t,0),(0,o.createTextVNode)(" was not found.")],4),"missingExport"===e&&(0,o.createVNode)(1,"div",null,[(0,o.createTextVNode)("Interface "),(0,o.createVNode)(1,"b",null,t,0),(0,o.createTextVNode)(" is missing an export.")],4)]})})}},l=function(){return(0,o.createComponentVNode)(2,i.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0})})};t.getRoutedComponent=function(e){var t=(0,r.selectBackend)(e),n=t.suspended,o=t.config;if(n)return l;var i,d=null==o?void 0:o["interface"];try{i=a("./"+d+".js")}catch(s){if("MODULE_NOT_FOUND"===s.code)return c("notFound",d);throw s}var u=i[d];return u||c("missingExport",d)}},function(e,t,n){"use strict";var o,r;t.__esModule=!0,t.VNodeFlags=t.ChildFlags=void 0,t.VNodeFlags=o,function(e){e[e.HtmlElement=1]="HtmlElement",e[e.ComponentUnknown=2]="ComponentUnknown",e[e.ComponentClass=4]="ComponentClass",e[e.ComponentFunction=8]="ComponentFunction",e[e.Text=16]="Text",e[e.SvgElement=32]="SvgElement",e[e.InputElement=64]="InputElement",e[e.TextareaElement=128]="TextareaElement",e[e.SelectElement=256]="SelectElement",e[e.Void=512]="Void",e[e.Portal=1024]="Portal",e[e.ReCreate=2048]="ReCreate",e[e.ContentEditable=4096]="ContentEditable",e[e.Fragment=8192]="Fragment",e[e.InUse=16384]="InUse",e[e.ForwardRef=32768]="ForwardRef",e[e.Normalized=65536]="Normalized",e[e.ForwardRefComponent=32776]="ForwardRefComponent",e[e.FormElement=448]="FormElement",e[e.Element=481]="Element",e[e.Component=14]="Component",e[e.DOMRef=2033]="DOMRef",e[e.InUseOrNormalized=81920]="InUseOrNormalized",e[e.ClearInUse=-16385]="ClearInUse",e[e.ComponentKnown=12]="ComponentKnown"}(o||(t.VNodeFlags=o={})),t.ChildFlags=r,function(e){e[e.UnknownChildren=0]="UnknownChildren",e[e.HasInvalidChildren=1]="HasInvalidChildren",e[e.HasVNodeChildren=2]="HasVNodeChildren",e[e.HasNonKeyedChildren=4]="HasNonKeyedChildren",e[e.HasKeyedChildren=8]="HasKeyedChildren",e[e.HasTextChildren=16]="HasTextChildren",e[e.MultipleChildren=12]="MultipleChildren"}(r||(t.ChildFlags=r={}))},function(e,t,n){"use strict";t.__esModule=!0,t.NtosWindow=void 0;var o=n(0),r=n(1),i=n(3),a=n(121),c=n(175),l=function(e,t){var n=e.title,l=e.width,d=void 0===l?575:l,u=e.height,s=void 0===u?700:u,p=e.resizable,m=e.theme,f=void 0===m?"ntos":m,h=e.children,C=(0,r.useBackend)(t),g=C.act,b=C.data,N=b.PC_device_theme,v=b.PC_batteryicon,V=b.PC_showbatteryicon,y=b.PC_batterypercent,k=b.PC_ntneticon,x=b.PC_apclinkicon,_=b.PC_stationtime,w=b.PC_programheaders,B=void 0===w?[]:w,S=b.PC_showexitprogram;return(0,o.createComponentVNode)(2,c.Window,{title:n,width:d,height:s,theme:f,resizable:p,children:(0,o.createVNode)(1,"div","NtosWindow",[(0,o.createVNode)(1,"div","NtosWindow__header NtosHeader",[(0,o.createVNode)(1,"div","NtosHeader__left",[(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,mr:2,children:_}),(0,o.createComponentVNode)(2,i.Box,{inline:!0,italic:!0,mr:2,opacity:.33,children:["ntos"===N&&"NtOS","syndicate"===N&&"Syndix"]})],4),(0,o.createVNode)(1,"div","NtosHeader__right",[B.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{inline:!0,mr:1,children:(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:e.icon})},e.icon)})),(0,o.createComponentVNode)(2,i.Box,{inline:!0,children:k&&(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:k})}),!!V&&v&&(0,o.createComponentVNode)(2,i.Box,{inline:!0,mr:1,children:[v&&(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:v}),y&&y]}),x&&(0,o.createComponentVNode)(2,i.Box,{inline:!0,mr:1,children:(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:x})}),!!S&&(0,o.createComponentVNode)(2,i.Button,{width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"window-minimize-o",tooltip:"Minimize",tooltipPosition:"bottom",onClick:function(){return g("PC_minimize")}}),!!S&&(0,o.createComponentVNode)(2,i.Button,{mr:"-3px",width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"window-close-o",tooltip:"Close",tooltipPosition:"bottom-left",onClick:function(){return g("PC_exit")}}),!S&&(0,o.createComponentVNode)(2,i.Button,{mr:"-3px",width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"power-off",tooltip:"Power off",tooltipPosition:"bottom-left",onClick:function(){return g("PC_shutdown")}})],0)],4,{onMouseDown:function(){(0,a.refocusLayout)()}}),h],0)})};t.NtosWindow=l;l.Content=function(e){return(0,o.createVNode)(1,"div","NtosWindow__content",(0,o.normalizeProps)((0,o.createComponentVNode)(2,c.Window.Content,Object.assign({},e))),2)}},function(e,t,n){"use strict";t.__esModule=!0,t.BlockQuote=void 0;var o=n(0),r=n(6),i=n(16);t.BlockQuote=function(e){var t=e.className,n=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({className:(0,r.classes)(["BlockQuote",t])},n)))}},function(e,t,n){"use strict";t.__esModule=!0,t.ByondUi=void 0;var o=n(0),r=n(6),i=n(429),a=n(43),c=n(16);function l(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}var d=(0,a.createLogger)("ByondUi"),u=[];window.addEventListener("beforeunload",(function(){for(var e=0;e<u.length;e++){var t=u[e];"string"==typeof t&&(d.log("unmounting '"+t+"' (beforeunload)"),u[e]=null,Byond.winset(t,{parent:""}))}}));var s=function(e){var t,n;function a(t){var n,r;return(r=e.call(this,t)||this).containerRef=(0,o.createRef)(),r.byondUiElement=function(e){var t=u.length;u.push(null);var n=e||"byondui_"+t;return d.log("allocated '"+n+"'"),{render:function(e){d.log("rendering '"+n+"'"),u[t]=n,Byond.winset(n,e)},unmount:function(){d.log("unmounting '"+n+"'"),u[t]=null,Byond.winset(n,{parent:""})}}}(null==(n=t.params)?void 0:n.id),r.handleResize=(0,i.debounce)((function(){r.forceUpdate()}),100),r}n=e,(t=a).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var s=a.prototype;return s.shouldComponentUpdate=function(e){var t=this.props,n=t.params,o=void 0===n?{}:n,i=l(t,["params"]),a=e.params,c=void 0===a?{}:a,d=l(e,["params"]);return(0,r.shallowDiffers)(o,c)||(0,r.shallowDiffers)(i,d)},s.componentDidMount=function(){Byond.IS_LTE_IE10||(window.addEventListener("resize",this.handleResize),this.componentDidUpdate(),this.handleResize())},s.componentDidUpdate=function(){if(!Byond.IS_LTE_IE10){var e,t,n=this.props.params,o=void 0===n?{}:n,r=(e=this.containerRef.current,{pos:[(t=e.getBoundingClientRect()).left,t.top],size:[t.right-t.left,t.bottom-t.top]});d.log("bounding box",r),this.byondUiElement.render(Object.assign({parent:window.__windowId__},o,{pos:r.pos[0]+","+r.pos[1],size:r.size[0]+"x"+r.size[1]}))}},s.componentWillUnmount=function(){Byond.IS_LTE_IE10||(window.removeEventListener("resize",this.handleResize),this.byondUiElement.unmount())},s.render=function(){var e=this.props,t=e.params,n=l(e,["params"]),r=(null==t||t.type,(0,c.computeBoxProps)(n));return(0,o.normalizeProps)((0,o.createVNode)(1,"div",null,(0,o.createVNode)(1,"div",null,null,1,{style:{"min-height":"22px"}}),0,Object.assign({},r),null,this.containerRef))},a}(o.Component);t.ByondUi=s},function(e,t,n){"use strict";t.__esModule=!0,t.debounce=void 0;t.debounce=function(e,t,n){var o;return void 0===n&&(n=!1),function(){for(var r=arguments.length,i=new Array(r),a=0;a<r;a++)i[a]=arguments[a];var c=function(){o=null,n||e.apply(void 0,i)},l=n&&!o;clearTimeout(o),o=setTimeout(c,t),l&&e.apply(void 0,i)}}},function(e,t,n){"use strict";t.__esModule=!0,t.Chart=void 0;var o=n(0),r=n(18),i=n(6),a=n(16);var c=function(e){var t,n;function i(t){var n;return(n=e.call(this,t)||this).ref=(0,o.createRef)(),n.state={viewBox:[600,200]},n.handleResize=function(){var e=n.ref.current;n.setState({viewBox:[e.offsetWidth,e.offsetHeight]})},n}n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var c=i.prototype;return c.componentDidMount=function(){window.addEventListener("resize",this.handleResize),this.handleResize()},c.componentWillUnmount=function(){window.removeEventListener("resize",this.handleResize)},c.render=function(){var e=this,t=this.props,n=t.data,i=void 0===n?[]:n,c=t.rangeX,l=t.rangeY,d=t.fillColor,u=void 0===d?"none":d,s=t.strokeColor,p=void 0===s?"#ffffff":s,m=t.strokeWidth,f=void 0===m?2:m,h=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(t,["data","rangeX","rangeY","fillColor","strokeColor","strokeWidth"]),C=this.state.viewBox,g=function(e,t,n,o){if(0===e.length)return[];var i=(0,r.zipWith)(Math.min).apply(void 0,e),a=(0,r.zipWith)(Math.max).apply(void 0,e);return n!==undefined&&(i[0]=n[0],a[0]=n[1]),o!==undefined&&(i[1]=o[0],a[1]=o[1]),(0,r.map)((function(e){return(0,r.zipWith)((function(e,t,n,o){return(e-t)/(n-t)*o}))(e,i,a,t)}))(e)}(i,C,c,l);if(g.length>0){var b=g[0],N=g[g.length-1];g.push([C[0]+f,N[1]]),g.push([C[0]+f,-f]),g.push([-f,-f]),g.push([-f,b[1]])}var v=function(e){for(var t="",n=0;n<e.length;n++){var o=e[n];t+=o[0]+","+o[1]+" "}return t}(g);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({position:"relative"},h,{children:function(t){return(0,o.normalizeProps)((0,o.createVNode)(1,"div",null,(0,o.createVNode)(32,"svg",null,(0,o.createVNode)(32,"polyline",null,null,1,{transform:"scale(1, -1) translate(0, -"+C[1]+")",fill:u,stroke:p,"stroke-width":f,points:v}),2,{viewBox:"0 0 "+C[0]+" "+C[1],preserveAspectRatio:"none",style:{position:"absolute",top:0,left:0,right:0,bottom:0,overflow:"hidden"}}),2,Object.assign({},t),null,e.ref))}})))},i}(o.Component);c.defaultHooks=i.pureComponentHooks;var l={Line:Byond.IS_LTE_IE8?function(e){return null}:c};t.Chart=l},function(e,t,n){"use strict";t.__esModule=!0,t.Collapsible=void 0;var o=n(0),r=n(16),i=n(123);var a=function(e){var t,n;function a(t){var n;n=e.call(this,t)||this;var o=t.open;return n.state={open:o||!1},n}return n=e,(t=a).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,a.prototype.render=function(){var e=this,t=this.props,n=this.state.open,a=t.children,c=t.color,l=void 0===c?"default":c,d=t.title,u=t.buttons,s=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(t,["children","color","title","buttons"]);return(0,o.createComponentVNode)(2,r.Box,{mb:1,children:[(0,o.createVNode)(1,"div","Table",[(0,o.createVNode)(1,"div","Table__cell",(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Button,Object.assign({fluid:!0,color:l,icon:n?"chevron-down":"chevron-right",onClick:function(){return e.setState({open:!n})}},s,{children:d}))),2),u&&(0,o.createVNode)(1,"div","Table__cell Table__cell--collapsing",u,0)],0),n&&(0,o.createComponentVNode)(2,r.Box,{mt:1,children:a})]})},a}(o.Component);t.Collapsible=a},function(e,t,n){"use strict";t.__esModule=!0,t.ColorBox=void 0;var o=n(0),r=n(6),i=n(16);var a=function(e){var t=e.content,n=(e.children,e.className),a=e.color,c=e.backgroundColor,l=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["content","children","className","color","backgroundColor"]);return l.color=t?null:"transparent",l.backgroundColor=a||c,(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,r.classes)(["ColorBox",n,(0,i.computeBoxClassName)(l)]),t||".",0,Object.assign({},(0,i.computeBoxProps)(l))))};t.ColorBox=a,a.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Dropdown=void 0;var o=n(0),r=n(6),i=n(16),a=n(124);function c(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}var l=function(e){var t,n;function l(t){var n;return(n=e.call(this,t)||this).state={selected:t.selected,open:!1},n.handleClick=function(){n.state.open&&n.setOpen(!1)},n}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var d=l.prototype;return d.componentWillUnmount=function(){window.removeEventListener("click",this.handleClick)},d.setOpen=function(e){var t=this;this.setState({open:e}),e?(setTimeout((function(){return window.addEventListener("click",t.handleClick)})),this.menuRef.focus()):window.removeEventListener("click",this.handleClick)},d.setSelected=function(e){this.setState({selected:e}),this.setOpen(!1),this.props.onSelected(e)},d.buildMenu=function(){var e=this,t=this.props.options,n=(void 0===t?[]:t).map((function(t){return(0,o.createVNode)(1,"div","Dropdown__menuentry",t,0,{onClick:function(){e.setSelected(t)}},t)}));return n.length?n:"No Options Found"},d.render=function(){var e=this,t=this.props,n=t.color,l=void 0===n?"default":n,d=t.over,u=t.noscroll,s=t.nochevron,p=t.width,m=(t.onClick,t.selected,t.disabled),f=c(t,["color","over","noscroll","nochevron","width","onClick","selected","disabled"]),h=f.className,C=c(f,["className"]),g=d?!this.state.open:this.state.open,b=this.state.open?(0,o.createVNode)(1,"div",(0,r.classes)([u?"Dropdown__menu-noscroll":"Dropdown__menu",d&&"Dropdown__over"]),this.buildMenu(),0,{tabIndex:"-1",style:{width:p}},null,(function(t){e.menuRef=t})):null;return(0,o.createVNode)(1,"div","Dropdown",[(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({width:p,className:(0,r.classes)(["Dropdown__control","Button","Button--color--"+l,m&&"Button--disabled",h])},C,{onClick:function(){m&&!e.state.open||e.setOpen(!e.state.open)},children:[(0,o.createVNode)(1,"span","Dropdown__selected-text",this.state.selected,0),!!s||(0,o.createVNode)(1,"span","Dropdown__arrow-button",(0,o.createComponentVNode)(2,a.Icon,{name:g?"chevron-up":"chevron-down"}),2)]}))),b],0)},l}(o.Component);t.Dropdown=l},function(e,t,n){"use strict";t.__esModule=!0,t.GridColumn=t.Grid=void 0;var o=n(0),r=n(173),i=n(6);function a(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}var c=function(e){var t=e.children,n=a(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table,Object.assign({},n,{children:(0,o.createComponentVNode)(2,r.Table.Row,{children:t})})))};t.Grid=c,c.defaultHooks=i.pureComponentHooks;var l=function(e){var t=e.size,n=void 0===t?1:t,i=e.style,c=a(e,["size","style"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table.Cell,Object.assign({style:Object.assign({width:n+"%"},i)},c)))};t.GridColumn=l,c.defaultHooks=i.pureComponentHooks,c.Column=l},function(e,t,n){"use strict";t.__esModule=!0,t.Input=void 0;var o=n(0),r=n(6),i=n(16);function a(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}var c=function(e){return(0,r.isFalsy)(e)?"":e},l=function(e){var t,n;function l(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={editing:!1},t.handleInput=function(e){var n=t.state.editing,o=t.props.onInput;n||t.setEditing(!0),o&&o(e,e.target.value)},t.handleFocus=function(e){t.state.editing||t.setEditing(!0)},t.handleBlur=function(e){var n=t.state.editing,o=t.props.onChange;n&&(t.setEditing(!1),o&&o(e,e.target.value))},t.handleKeyDown=function(e){var n=t.props,o=n.onInput,r=n.onChange,i=n.onEnter;return 13===e.keyCode?(t.setEditing(!1),r&&r(e,e.target.value),o&&o(e,e.target.value),i&&i(e,e.target.value),void(t.props.selfClear?e.target.value="":e.target.blur())):27===e.keyCode?(t.setEditing(!1),e.target.value=c(t.props.value),void e.target.blur()):void 0},t}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var d=l.prototype;return d.componentDidMount=function(){var e=this.props.value,t=this.inputRef.current;t&&(t.value=c(e)),this.props.autoFocus&&setTimeout((function(){return t.focus()}),1)},d.componentDidUpdate=function(e,t){var n=this.state.editing,o=e.value,r=this.props.value,i=this.inputRef.current;i&&!n&&o!==r&&(i.value=c(r))},d.setEditing=function(e){this.setState({editing:e})},d.render=function(){var e=this.props,t=(e.selfClear,e.onInput,e.onChange,e.onEnter,e.value,e.maxLength),n=e.placeholder,c=a(e,["selfClear","onInput","onChange","onEnter","value","maxLength","placeholder"]),l=c.className,d=c.fluid,u=a(c,["className","fluid"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({className:(0,r.classes)(["Input",d&&"Input--fluid",l])},u,{children:[(0,o.createVNode)(1,"div","Input__baseline",".",16),(0,o.createVNode)(64,"input","Input__input",null,1,{placeholder:n,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,maxLength:t},null,this.inputRef)]})))},l}(o.Component);t.Input=l},function(e,t,n){"use strict";t.__esModule=!0,t.Knob=void 0;var o=n(0),r=n(15),i=n(6),a=n(16),c=n(125),l=n(126);t.Knob=function(e){if(Byond.IS_LTE_IE8)return(0,o.normalizeProps)((0,o.createComponentVNode)(2,l.NumberInput,Object.assign({},e)));var t=e.animated,n=e.format,d=e.maxValue,u=e.minValue,s=e.onChange,p=e.onDrag,m=e.step,f=e.stepPixelSize,h=e.suppressFlicker,C=e.unit,g=e.value,b=e.className,N=e.style,v=e.fillValue,V=e.color,y=e.ranges,k=void 0===y?{}:y,x=e.size,_=e.bipolar,w=(e.children,function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["animated","format","maxValue","minValue","onChange","onDrag","step","stepPixelSize","suppressFlicker","unit","value","className","style","fillValue","color","ranges","size","bipolar","children"]));return(0,o.normalizeProps)((0,o.createComponentVNode)(2,c.DraggableControl,Object.assign({dragMatrix:[0,-1]},{animated:t,format:n,maxValue:d,minValue:u,onChange:s,onDrag:p,step:m,stepPixelSize:f,suppressFlicker:h,unit:C,value:g},{children:function(e){var t=e.dragging,n=(e.editing,e.value),c=e.displayValue,l=e.displayElement,s=e.inputElement,p=e.handleDragStart,m=(0,r.scale)(null!=v?v:c,u,d),f=(0,r.scale)(c,u,d),h=V||(0,r.keyOfMatchingRange)(null!=v?v:n,k)||"default",C=270*(f-.5);return(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,i.classes)(["Knob","Knob--color--"+h,_&&"Knob--bipolar",b,(0,a.computeBoxClassName)(w)]),[(0,o.createVNode)(1,"div","Knob__circle",(0,o.createVNode)(1,"div","Knob__cursorBox",(0,o.createVNode)(1,"div","Knob__cursor"),2,{style:{transform:"rotate("+C+"deg)"}}),2),t&&(0,o.createVNode)(1,"div","Knob__popupValue",l,0),(0,o.createVNode)(32,"svg","Knob__ring Knob__ringTrackPivot",(0,o.createVNode)(32,"circle","Knob__ringTrack",null,1,{cx:"50",cy:"50",r:"50"}),2,{viewBox:"0 0 100 100"}),(0,o.createVNode)(32,"svg","Knob__ring Knob__ringFillPivot",(0,o.createVNode)(32,"circle","Knob__ringFill",null,1,{style:{"stroke-dashoffset":((_?2.75:2)-1.5*m)*Math.PI*50},cx:"50",cy:"50",r:"50"}),2,{viewBox:"0 0 100 100"}),s],0,Object.assign({},(0,a.computeBoxProps)(Object.assign({style:Object.assign({"font-size":x+"rem"},N)},w)),{onMouseDown:p})))}})))}},function(e,t,n){"use strict";t.__esModule=!0,t.LabeledControls=void 0;var o=n(0),r=n(172);function i(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}var a=function(e){var t=e.children,n=i(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Flex,Object.assign({mx:-.5,align:"stretch",justify:"space-between"},n,{children:t})))};t.LabeledControls=a;a.Item=function(e){var t=e.label,n=e.children,a=i(e,["label","children"]);return(0,o.createComponentVNode)(2,r.Flex.Item,{mx:1,children:(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Flex,Object.assign({minWidth:"52px",height:"100%",direction:"column",align:"center",textAlign:"center",justify:"space-between"},a,{children:[(0,o.createComponentVNode)(2,r.Flex.Item),(0,o.createComponentVNode)(2,r.Flex.Item,{children:n}),(0,o.createComponentVNode)(2,r.Flex.Item,{color:"label",children:t})]})))})}},function(e,t,n){"use strict";t.__esModule=!0,t.Modal=void 0;var o=n(0),r=n(6),i=n(16),a=n(170);t.Modal=function(e){var t=e.className,n=e.children,c=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["className","children"]);return(0,o.createComponentVNode)(2,a.Dimmer,{children:(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,r.classes)(["Modal",t,(0,i.computeBoxClassName)(c)]),n,0,Object.assign({},(0,i.computeBoxProps)(c))))})}},function(e,t,n){"use strict";t.__esModule=!0,t.NoticeBox=void 0;var o=n(0),r=n(6),i=n(16);var a=function(e){var t=e.className,n=e.color,a=e.info,c=(e.warning,e.success),l=e.danger,d=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["className","color","info","warning","success","danger"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({className:(0,r.classes)(["NoticeBox",n&&"NoticeBox--color--"+n,a&&"NoticeBox--type--info",c&&"NoticeBox--type--success",l&&"NoticeBox--type--danger",t])},d)))};t.NoticeBox=a,a.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.ProgressBar=void 0;var o=n(0),r=n(15),i=n(6),a=n(16);var c=function(e){var t=e.className,n=e.value,c=e.minValue,l=void 0===c?0:c,d=e.maxValue,u=void 0===d?1:d,s=e.color,p=e.ranges,m=void 0===p?{}:p,f=e.children,h=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["className","value","minValue","maxValue","color","ranges","children"]),C=(0,r.scale)(n,l,u),g=f!==undefined,b=s||(0,r.keyOfMatchingRange)(n,m)||"default";return(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,i.classes)(["ProgressBar","ProgressBar--color--"+b,t,(0,a.computeBoxClassName)(h)]),[(0,o.createVNode)(1,"div","ProgressBar__fill ProgressBar__fill--animated",null,1,{style:{width:100*(0,r.clamp01)(C)+"%"}}),(0,o.createVNode)(1,"div","ProgressBar__content",g?f:(0,r.toFixed)(100*C)+"%",0)],4,Object.assign({},(0,a.computeBoxProps)(h))))};t.ProgressBar=c,c.defaultHooks=i.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Section=void 0;var o=n(0),r=n(6),i=n(16);var a=function(e){var t=e.className,n=e.title,a=e.level,c=void 0===a?1:a,l=e.buttons,d=e.fill,u=e.children,s=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["className","title","level","buttons","fill","children"]),p=!(0,r.isFalsy)(n)||!(0,r.isFalsy)(l),m=!(0,r.isFalsy)(u);return(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,r.classes)(["Section","Section--level--"+c,d&&"Section--fill",t].concat((0,i.computeBoxClassName)(s))),[p&&(0,o.createVNode)(1,"div","Section__title",[(0,o.createVNode)(1,"span","Section__titleText",n,0),(0,o.createVNode)(1,"div","Section__buttons",l,0)],4),m&&(0,o.createVNode)(1,"div","Section__content",u,0)],0,Object.assign({},(0,i.computeBoxProps)(s))))};t.Section=a,a.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Slider=void 0;var o=n(0),r=n(15),i=n(6),a=n(16),c=n(125),l=n(126);t.Slider=function(e){if(Byond.IS_LTE_IE8)return(0,o.normalizeProps)((0,o.createComponentVNode)(2,l.NumberInput,Object.assign({},e)));var t=e.animated,n=e.format,d=e.maxValue,u=e.minValue,s=e.onChange,p=e.onDrag,m=e.step,f=e.stepPixelSize,h=e.suppressFlicker,C=e.unit,g=e.value,b=e.className,N=e.fillValue,v=e.color,V=e.ranges,y=void 0===V?{}:V,k=e.children,x=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["animated","format","maxValue","minValue","onChange","onDrag","step","stepPixelSize","suppressFlicker","unit","value","className","fillValue","color","ranges","children"]),_=k!==undefined;return(0,o.normalizeProps)((0,o.createComponentVNode)(2,c.DraggableControl,Object.assign({dragMatrix:[1,0]},{animated:t,format:n,maxValue:d,minValue:u,onChange:s,onDrag:p,step:m,stepPixelSize:f,suppressFlicker:h,unit:C,value:g},{children:function(e){var t=e.dragging,n=(e.editing,e.value),c=e.displayValue,l=e.displayElement,s=e.inputElement,p=e.handleDragStart,m=N!==undefined&&null!==N,f=((0,r.scale)(n,u,d),(0,r.scale)(null!=N?N:c,u,d)),h=(0,r.scale)(c,u,d),C=v||(0,r.keyOfMatchingRange)(null!=N?N:n,y)||"default";return(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,i.classes)(["Slider","ProgressBar","ProgressBar--color--"+C,b,(0,a.computeBoxClassName)(x)]),[(0,o.createVNode)(1,"div",(0,i.classes)(["ProgressBar__fill",m&&"ProgressBar__fill--animated"]),null,1,{style:{width:100*(0,r.clamp01)(f)+"%",opacity:.4}}),(0,o.createVNode)(1,"div","ProgressBar__fill",null,1,{style:{width:100*(0,r.clamp01)(Math.min(f,h))+"%"}}),(0,o.createVNode)(1,"div","Slider__cursorOffset",[(0,o.createVNode)(1,"div","Slider__cursor"),(0,o.createVNode)(1,"div","Slider__pointer"),t&&(0,o.createVNode)(1,"div","Slider__popupValue",l,0)],0,{style:{width:100*(0,r.clamp01)(h)+"%"}}),(0,o.createVNode)(1,"div","ProgressBar__content",_?k:l,0),s],0,Object.assign({},(0,a.computeBoxProps)(x),{onMouseDown:p})))}})))}},function(e,t,n){"use strict";t.__esModule=!0,t.TextArea=void 0;var o=n(0),r=n(6),i=n(16);function a(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}var c=function(e){return(0,r.isFalsy)(e)?"":e},l=function(e){var t,n;function l(t,n){var r;(r=e.call(this,t,n)||this).textareaRef=(0,o.createRef)(),r.fillerRef=(0,o.createRef)(),r.state={editing:!1};var i=t.dontUseTabForIndent,a=void 0!==i&&i;return r.autoresize=function(){r.fillerRef&&r.textareaRef},r.handleOnInput=function(e){var t=r.state.editing,n=r.props.onInput;t||r.setEditing(!0),n&&n(e,e.target.value),r.autoresize()},r.handleOnChange=function(e){var t=r.state.editing,n=r.props.onChange;t&&r.setEditing(!1),n&&n(e,e.target.value),r.autoresize()},r.handleKeyPress=function(e){var t=r.state.editing,n=r.props.onKeyPress;t||r.setEditing(!0),n&&n(e,e.target.value),r.autoresize()},r.handleKeyDown=function(e){var t=r.state.editing,n=r.props.onKeyDown;if((t||r.setEditing(!0),!a)&&9===(e.keyCode||e.which)){e.preventDefault();var o=e.target.selectionStart;e.target.value=e.target.value.substring(0,e.target.selectionStart)+"\t"+e.target.value.substring(e.target.selectionEnd),e.target.selectionEnd=o+1}n&&n(e,e.target.value),r.autoresize()},r.handleFocus=function(e){r.state.editing||r.setEditing(!0)},r.handleBlur=function(e){var t=r.state.editing,n=r.props.onChange;t&&(r.setEditing(!1),n&&n(e,e.target.value))},r}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var d=l.prototype;return d.componentDidMount=function(){var e=this.props.value,t=this.textareaRef.current;t&&(t.value=c(e),this.autoresize())},d.componentDidUpdate=function(e,t){var n=this.state.editing,o=e.value,r=this.props.value,i=this.textareaRef.current;i&&!n&&o!==r&&(i.value=c(r),this.autoresize())},d.setEditing=function(e){this.setState({editing:e})},d.getValue=function(){return this.textareaRef.current&&this.textareaRef.current.value},d.render=function(){this.props;var e=this.props,t=(e.onChange,e.onKeyDown,e.onKeyPress,e.onInput,e.onFocus,e.onBlur,e.onEnter,e.value),n=e.placeholder,c=a(e,["onChange","onKeyDown","onKeyPress","onInput","onFocus","onBlur","onEnter","value","placeholder"]),l=c.className,d=c.fluid,u=a(c,["className","fluid"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Box,Object.assign({className:(0,r.classes)(["TextArea",d&&"TextArea--fluid",l])},u,{children:(0,o.createVNode)(128,"textarea","TextArea__textarea",null,1,{value:t,placeholder:n,onChange:this.handleOnChange,onKeyDown:this.handleKeyDown,onKeyPress:this.handleKeyPress,onInput:this.handleOnInput,onFocus:this.handleFocus,onBlur:this.handleBlur},null,this.textareaRef)})))},l}(o.Component);t.TextArea=l},function(e,t,n){"use strict";t.__esModule=!0,t.Tabs=void 0;var o=n(0),r=n(6),i=n(16),a=n(123);function c(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}var l=function(e){var t=e.className,n=e.vertical,a=e.children,l=c(e,["className","vertical","children"]);return(0,o.normalizeProps)((0,o.createVNode)(1,"div",(0,r.classes)(["Tabs",n?"Tabs--vertical":"Tabs--horizontal",t,(0,i.computeBoxClassName)(l)]),(0,o.createVNode)(1,"div","Tabs__tabBox",a,0),2,Object.assign({},(0,i.computeBoxProps)(l))))};t.Tabs=l;l.Tab=function(e){var t=e.className,n=e.selected,i=e.altSelection,l=c(e,["className","selected","altSelection"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Button,Object.assign({className:(0,r.classes)(["Tabs__tab",n&&"Tabs__tab--selected",i&&n&&"Tabs__tab--altSelection",t]),selected:!i&&n,color:"transparent"},l)))}},function(e,t,n){"use strict";t.__esModule=!0,t.TimeDisplay=void 0;var o=n(15),r=n(0);var i=function(e){return"number"==typeof e&&Number.isFinite(e)&&!Number.isNaN(e)},a=function(e){var t,n;function r(t){var n;return(n=e.call(this,t)||this).timer=null,n.last_seen_value=undefined,n.state={value:0},i(t.value)&&(n.state.value=Number(t.value),n.last_seen_value=Number(t.value)),n}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var a=r.prototype;return a.componentDidUpdate=function(){var e=this;this.props.auto!==undefined&&(clearInterval(this.timer),this.timer=setInterval((function(){return e.tick()}),1e3))},a.tick=function(){var e=Number(this.state.value);this.props.value!==this.last_seen_value&&(this.last_seen_value=this.props.value,e=this.props.value);var t="up"===this.props.auto?10:-10,n=Math.max(0,e+t);this.setState({value:n})},a.componentDidMount=function(){var e=this;this.props.auto!==undefined&&(this.timer=setInterval((function(){return e.tick()}),1e3))},a.componentWillUnmount=function(){clearInterval(this.timer)},a.render=function(){var e=this.state.value;if(!i(e))return this.state.value||null;var t=(0,o.toFixed)(Math.floor(e/10%60)).padStart(2,"0"),n=(0,o.toFixed)(Math.floor(e/600%60)).padStart(2,"0");return(0,o.toFixed)(Math.floor(e/36e3%24)).padStart(2,"0")+":"+n+":"+t},r}(r.Component);t.TimeDisplay=a},function(e,t,n){var o={"./AbductorConsole.js":447,"./Achievements.js":448,"./AiAirlock.js":449,"./AiRestorer.js":176,"./AirAlarm.js":450,"./AirlockElectronics.js":452,"./Apc.js":453,"./ApcControl.js":454,"./AtmosAlertConsole.js":455,"./AtmosControlConsole.js":456,"./AtmosFilter.js":457,"./AtmosMixer.js":458,"./AtmosPump.js":459,"./AutomatedAnnouncement.js":460,"./BankMachine.js":461,"./Bepis.js":462,"./Biogenerator.js":463,"./BlackMarketUplink.js":464,"./BluespaceArtillery.js":465,"./BluespaceLocator.js":466,"./BorgPanel.js":467,"./BrigTimer.js":468,"./CameraConsole.js":469,"./Canister.js":470,"./Canvas.js":471,"./Cargo.js":178,"./CargoBountyConsole.js":472,"./CargoExpress.js":473,"./CargoHoldTerminal.js":474,"./CellularEmporium.js":475,"./CentcomPodLauncher.js":476,"./ChemAcclimator.js":477,"./ChemDebugSynthesizer.js":478,"./ChemDispenser.js":479,"./ChemFilter.js":480,"./ChemHeater.js":481,"./ChemMaster.js":482,"./ChemPress.js":483,"./ChemReactionChamber.js":484,"./ChemSplitter.js":485,"./ChemSynthesizer.js":486,"./CodexGigas.js":487,"./ComputerFabricator.js":488,"./Crayon.js":489,"./CrewConsole.js":490,"./Cryo.js":491,"./DecalPainter.js":492,"./DisposalUnit.js":493,"./DnaConsole.js":494,"./DnaVault.js":495,"./EightBallVote.js":496,"./Electrolyzer.js":497,"./Electropack.js":498,"./EmergencyShuttleConsole.js":499,"./EngravedMessage.js":500,"./ExosuitControlConsole.js":501,"./ForbiddenLore.js":502,"./Gateway.js":503,"./GlandDispenser.js":504,"./Gps.js":505,"./GravityGenerator.js":506,"./GulagItemReclaimer.js":507,"./GulagTeleporterConsole.js":508,"./Holodeck.js":509,"./Holopad.js":510,"./HypnoChair.js":511,"./ImplantChair.js":512,"./InfraredEmitter.js":513,"./Intellicard.js":514,"./Jukebox.js":515,"./KeycardAuth.js":516,"./LaborClaimConsole.js":517,"./LanguageMenu.js":518,"./LaunchpadConsole.js":180,"./LaunchpadRemote.js":519,"./MafiaPanel.js":520,"./MalfunctionModulePicker.js":521,"./MechBayPowerConsole.js":522,"./MedicalKiosk.js":523,"./MiningVendor.js":524,"./Mint.js":525,"./Mule.js":526,"./NaniteChamberControl.js":527,"./NaniteCloudControl.js":528,"./NaniteProgramHub.js":529,"./NaniteProgrammer.js":530,"./NaniteRemote.js":531,"./NotificationPreferences.js":532,"./NtnetRelay.js":533,"./NtosAiRestorer.js":534,"./NtosArcade.js":535,"./NtosAtmos.js":536,"./NtosBountyConsole.js":537,"./NtosCard.js":538,"./NtosConfiguration.js":539,"./NtosCrewManifest.js":540,"./NtosCyborgRemoteMonitor.js":181,"./NtosCyborgRemoteMonitorSyndicate.js":541,"./NtosFileManager.js":542,"./NtosJobManager.js":543,"./NtosMain.js":544,"./NtosNetChat.js":545,"./NtosNetDos.js":546,"./NtosNetDownloader.js":547,"./NtosNetMonitor.js":548,"./NtosPowerMonitor.js":549,"./NtosRadar.js":182,"./NtosRadarSyndicate.js":550,"./NtosRequestKiosk.js":551,"./NtosRevelation.js":552,"./NtosRoboControl.js":553,"./NtosShipping.js":554,"./NtosStationAlertConsole.js":555,"./NtosSupermatterMonitor.js":556,"./NuclearBomb.js":557,"./OperatingComputer.js":558,"./Orbit.js":559,"./OreBox.js":560,"./OreRedemptionMachine.js":561,"./Pandemic.js":562,"./PaperSheet.js":563,"./ParticleAccelerator.js":566,"./PersonalCrafting.js":567,"./PortableChemMixer.js":568,"./PortableGenerator.js":569,"./PortablePump.js":570,"./PortableScrubber.js":571,"./PortableTurret.js":572,"./PowerMonitor.js":128,"./ProbingConsole.js":573,"./ProximitySensor.js":574,"./Radio.js":575,"./RadioactiveMicrolaser.js":576,"./RapidPipeDispenser.js":577,"./RemoteRobotControl.js":578,"./RequestKiosk.js":183,"./RoboticsControlConsole.js":579,"./Roulette.js":580,"./SatelliteControl.js":581,"./ScannerGate.js":582,"./SeedExtractor.js":583,"./ShuttleManipulator.js":584,"./Signaler.js":585,"./SkillPanel.js":586,"./Sleeper.js":587,"./SlimeBodySwapper.js":588,"./SmartVend.js":589,"./Smes.js":590,"./SmokeMachine.js":591,"./SolarControl.js":592,"./SpaceHeater.js":593,"./SpawnersMenu.js":594,"./StationAlertConsole.js":184,"./SuitStorageUnit.js":595,"./SyndContractor.js":596,"./TachyonArray.js":597,"./Tank.js":598,"./TankDispenser.js":599,"./Teleporter.js":600,"./ThermoMachine.js":601,"./Timer.js":602,"./TransferValve.js":603,"./TurbineComputer.js":604,"./TurretControl.js":605,"./Uplink.js":127,"./VaultController.js":606,"./Vendatray.js":607,"./Vending.js":608,"./Wires.js":609};function r(e){var t=i(e);return n(t)}function i(e){if(!n.o(o,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return o[e]}r.keys=function(){return Object.keys(o)},r.resolve=i,e.exports=r,r.id=446},function(e,t,n){"use strict";t.__esModule=!0,t.AbductorConsole=void 0;var o=n(0),r=n(127),i=n(1),a=n(3),c=n(2);t.AbductorConsole=function(e,t){var n=(0,i.useSharedState)(t,"tab",1),r=n[0],s=n[1];return(0,o.createComponentVNode)(2,c.Window,{theme:"abductor",width:600,height:532,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:"list",lineHeight:"23px",selected:1===r,onClick:function(){return s(1)},children:"Abductsoft 3000"}),(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:"list",lineHeight:"23px",selected:2===r,onClick:function(){return s(2)},children:"Mission Settings"})]}),1===r&&(0,o.createComponentVNode)(2,l),2===r&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d),(0,o.createComponentVNode)(2,u)],4)]})})};var l=function(e,t){var n=(0,i.useBackend)(t),c=(n.act,n.data),l=c.experiment,d=c.points,u=c.credits;return l?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Collected Samples",children:d})})}),(0,o.createComponentVNode)(2,r.GenericUplink,{currencyAmount:u,currencySymbol:"Credits"})],4):(0,o.createComponentVNode)(2,a.NoticeBox,{danger:!0,children:"No Experiment Machine Detected"})},d=function(e,t){var n=(0,i.useBackend)(t),r=n.act,c=n.data,l=c.pad,d=c.gizmo;return l?(0,o.createComponentVNode)(2,a.Section,{title:"Emergency Teleport",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"exclamation-circle",content:"Activate",color:"bad",onClick:function(){return r("teleporter_send")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mark Retrieval",children:(0,o.createComponentVNode)(2,a.Button,{icon:d?"user-plus":"user-slash",content:d?"Retrieve":"No Mark",disabled:!d,onClick:function(){return r("teleporter_retrieve")}})})})}):(0,o.createComponentVNode)(2,a.NoticeBox,{danger:!0,children:"No Telepad Detected"})},u=function(e,t){var n=(0,i.useBackend)(t),r=n.act,c=n.data,l=c.vest,d=c.vest_mode,u=c.vest_lock;return l?(0,o.createComponentVNode)(2,a.Section,{title:"Agent Vest Settings",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"lock":"unlock",content:u?"Locked":"Unlocked",onClick:function(){return r("toggle_vest")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",children:(0,o.createComponentVNode)(2,a.Button,{icon:1===d?"eye-slash":"fist-raised",content:1===d?"Stealth":"Combat",onClick:function(){return r("flip_vest")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Disguise",children:(0,o.createComponentVNode)(2,a.Button,{icon:"user-secret",content:"Select",onClick:function(){return r("select_disguise")}})})]})}):(0,o.createComponentVNode)(2,a.NoticeBox,{danger:!0,children:"No Agent Vest Detected"})}},function(e,t,n){"use strict";t.__esModule=!0,t.Achievements=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Achievements=function(e,t){var n=(0,r.useBackend)(t).data,l=n.categories,u=(0,r.useLocalState)(t,"category",l[0]),s=u[0],p=u[1],m=n.achievements.filter((function(e){return e.category===s}));return(0,o.createComponentVNode)(2,a.Window,{title:"Achievements",width:540,height:680,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Tabs,{children:[l.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:s===e,onClick:function(){return p(e)},children:e},e)})),(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:"High Scores"===s,onClick:function(){return p("High Scores")},children:"High Scores"})]}),"High Scores"===s&&(0,o.createComponentVNode)(2,d)||(0,o.createComponentVNode)(2,c,{achievements:m})]})})};var c=function(e,t){var n=e.achievements;return(0,o.createComponentVNode)(2,i.Table,{children:n.map((function(e){return(0,o.createComponentVNode)(2,l,{achievement:e},e.name)}))})},l=function(e){var t=e.achievement,n=t.name,r=t.desc,a=t.icon_class,c=t.value,l=t.score;return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,i.Box,{m:1,className:a})}),(0,o.createComponentVNode)(2,i.Table.Cell,{verticalAlign:"top",children:[(0,o.createVNode)(1,"h1",null,n,0),r,l&&(0,o.createComponentVNode)(2,i.Box,{color:c>0?"good":"bad",children:c>0?"Earned "+c+" times":"Locked"})||(0,o.createComponentVNode)(2,i.Box,{color:c?"good":"bad",children:c?"Unlocked":"Locked"})]})]},n)},d=function(e,t){var n=(0,r.useBackend)(t).data,a=n.highscore,c=n.user_ckey,l=(0,r.useLocalState)(t,"highscore",0),d=l[0],u=l[1],s=a[d];if(!s)return null;var p=Object.keys(s.scores).map((function(e){return{ckey:e,value:s.scores[e]}}));return(0,o.createComponentVNode)(2,i.Flex,{children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:a.map((function(e,t){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:d===t,onClick:function(){return u(t)},children:e.name},e.name)}))})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{textAlign:"center",children:"#"}),(0,o.createComponentVNode)(2,i.Table.Cell,{textAlign:"center",children:"Key"}),(0,o.createComponentVNode)(2,i.Table.Cell,{textAlign:"center",children:"Score"})]}),p.map((function(e,t){return(0,o.createComponentVNode)(2,i.Table.Row,{className:"candystripe",m:2,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{color:"label",textAlign:"center",children:t+1}),(0,o.createComponentVNode)(2,i.Table.Cell,{color:e.ckey===c&&"green",textAlign:"center",children:[0===t&&(0,o.createComponentVNode)(2,i.Icon,{name:"crown",color:"yellow",mr:2}),e.ckey,0===t&&(0,o.createComponentVNode)(2,i.Icon,{name:"crown",color:"yellow",ml:2})]}),(0,o.createComponentVNode)(2,i.Table.Cell,{textAlign:"center",children:e.value})]},e.ckey)}))]})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.AiAirlock=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c={2:{color:"good",localStatusText:"Offline"},1:{color:"average",localStatusText:"Caution"},0:{color:"bad",localStatusText:"Optimal"}};t.AiAirlock=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=c[d.power.main]||c[0],s=c[d.power.backup]||c[0],p=c[d.shock]||c[0];return(0,o.createComponentVNode)(2,a.Window,{width:500,height:390,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Main",color:u.color,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"lightbulb-o",disabled:!d.power.main,content:"Disrupt",onClick:function(){return l("disrupt-main")}}),children:[d.power.main?"Online":"Offline"," ",d.wires.main_1&&d.wires.main_2?d.power.main_timeleft>0&&"["+d.power.main_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Backup",color:s.color,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"lightbulb-o",disabled:!d.power.backup,content:"Disrupt",onClick:function(){return l("disrupt-backup")}}),children:[d.power.backup?"Online":"Offline"," ",d.wires.backup_1&&d.wires.backup_2?d.power.backup_timeleft>0&&"["+d.power.backup_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Electrify",color:p.color,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"wrench",disabled:!(d.wires.shock&&0===d.shock),content:"Restore",onClick:function(){return l("shock-restore")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"bolt",disabled:!d.wires.shock,content:"Temporary",onClick:function(){return l("shock-temp")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"bolt",disabled:!d.wires.shock,content:"Permanent",onClick:function(){return l("shock-perm")}})],4),children:[2===d.shock?"Safe":"Electrified"," ",(d.wires.shock?d.shock_timeleft>0&&"["+d.shock_timeleft+"s]":"[Wires have been cut!]")||-1===d.shock_timeleft&&"[Permanent]"]})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Access and Door Control",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"ID Scan",color:"bad",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d.id_scanner?"power-off":"times",content:d.id_scanner?"Enabled":"Disabled",selected:d.id_scanner,disabled:!d.wires.id_scanner,onClick:function(){return l("idscan-toggle")}}),children:!d.wires.id_scanner&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Emergency Access",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d.emergency?"power-off":"times",content:d.emergency?"Enabled":"Disabled",selected:d.emergency,onClick:function(){return l("emergency-toggle")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Divider),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Door Bolts",color:"bad",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d.locked?"lock":"unlock",content:d.locked?"Lowered":"Raised",selected:d.locked,disabled:!d.wires.bolts,onClick:function(){return l("bolt-toggle")}}),children:!d.wires.bolts&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Door Bolt Lights",color:"bad",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d.lights?"power-off":"times",content:d.lights?"Enabled":"Disabled",selected:d.lights,disabled:!d.wires.lights,onClick:function(){return l("light-toggle")}}),children:!d.wires.lights&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Door Force Sensors",color:"bad",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d.safe?"power-off":"times",content:d.safe?"Enabled":"Disabled",selected:d.safe,disabled:!d.wires.safe,onClick:function(){return l("safe-toggle")}}),children:!d.wires.safe&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Door Timing Safety",color:"bad",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d.speed?"power-off":"times",content:d.speed?"Enabled":"Disabled",selected:d.speed,disabled:!d.wires.timing,onClick:function(){return l("speed-toggle")}}),children:!d.wires.timing&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,i.LabeledList.Divider),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Door Control",color:"bad",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d.opened?"sign-out-alt":"sign-in-alt",content:d.opened?"Open":"Closed",selected:d.opened,disabled:d.locked||d.welded,onClick:function(){return l("open-close")}}),children:!(!d.locked&&!d.welded)&&(0,o.createVNode)(1,"span",null,[(0,o.createTextVNode)("[Door is "),d.locked?"bolted":"",d.locked&&d.welded?" and ":"",d.welded?"welded":"",(0,o.createTextVNode)("!]")],0)})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AirAlarm=void 0;var o=n(0),r=n(15),i=(n(19),n(1)),a=n(3),c=(n(38),n(2)),l=n(60),d=n(451);t.AirAlarm=function(e,t){var n=(0,i.useBackend)(t),r=(n.act,n.data),a=r.locked&&!r.siliconUser;return(0,o.createComponentVNode)(2,c.Window,{width:440,height:650,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,l.InterfaceLockNoticeBox),(0,o.createComponentVNode)(2,u),!a&&(0,o.createComponentVNode)(2,p)]})})};var u=function(e,t){var n=(0,i.useBackend)(t).data,c=(n.environment_data||[]).filter((function(e){return e.value>=.01})),l={0:{color:"good",localStatusText:"Optimal"},1:{color:"average",localStatusText:"Caution"},2:{color:"bad",localStatusText:"Danger (Internals Required)"}},d=l[n.danger_level]||l[0];return(0,o.createComponentVNode)(2,a.Section,{title:"Air Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[c.length>0&&(0,o.createFragment)([c.map((function(e){var t=l[e.danger_level]||l[0];return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,color:t.color,children:[(0,r.toFixed)(e.value,2),e.unit]},e.name)})),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Local status",color:d.color,children:d.localStatusText}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Area status",color:n.atmos_alarm||n.fire_alarm?"bad":"good",children:(n.atmos_alarm?"Atmosphere Alarm":n.fire_alarm&&"Fire Alarm")||"Nominal"})],0)||(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Warning",color:"bad",children:"Cannot obtain air sample for analysis."}),!!n.emagged&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Warning",color:"bad",children:"Safety measures offline. Device may exhibit abnormal behavior."})]})})},s={home:{title:"Air Controls",component:function(){return m}},vents:{title:"Vent Controls",component:function(){return f}},scrubbers:{title:"Scrubber Controls",component:function(){return h}},modes:{title:"Operating Mode",component:function(){return C}},thresholds:{title:"Alarm Thresholds",component:function(){return g}}},p=function(e,t){var n=(0,i.useLocalState)(t,"screen"),r=n[0],c=n[1],l=s[r]||s.home,d=l.component();return(0,o.createComponentVNode)(2,a.Section,{title:l.title,buttons:r&&(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"Back",onClick:function(){return c()}}),children:(0,o.createComponentVNode)(2,d)})},m=function(e,t){var n=(0,i.useBackend)(t),r=n.act,c=n.data,l=(0,i.useLocalState)(t,"screen"),d=(l[0],l[1]),u=c.mode,s=c.atmos_alarm;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:s?"exclamation-triangle":"exclamation",color:s&&"caution",content:"Area Atmosphere Alarm",onClick:function(){return r(s?"reset":"alarm")}}),(0,o.createComponentVNode)(2,a.Box,{mt:1}),(0,o.createComponentVNode)(2,a.Button,{icon:3===u?"exclamation-triangle":"exclamation",color:3===u&&"danger",content:"Panic Siphon",onClick:function(){return r("mode",{mode:3===u?1:3})}}),(0,o.createComponentVNode)(2,a.Box,{mt:2}),(0,o.createComponentVNode)(2,a.Button,{icon:"sign-out-alt",content:"Vent Controls",onClick:function(){return d("vents")}}),(0,o.createComponentVNode)(2,a.Box,{mt:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"filter",content:"Scrubber Controls",onClick:function(){return d("scrubbers")}}),(0,o.createComponentVNode)(2,a.Box,{mt:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"cog",content:"Operating Mode",onClick:function(){return d("modes")}}),(0,o.createComponentVNode)(2,a.Box,{mt:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"chart-bar",content:"Alarm Thresholds",onClick:function(){return d("thresholds")}})],4)},f=function(e,t){var n=(0,i.useBackend)(t).data.vents;return n&&0!==n.length?n.map((function(e){return(0,o.createComponentVNode)(2,d.Vent,{vent:e},e.id_tag)})):"Nothing to show"},h=function(e,t){var n=(0,i.useBackend)(t).data.scrubbers;return n&&0!==n.length?n.map((function(e){return(0,o.createComponentVNode)(2,d.Scrubber,{scrubber:e},e.id_tag)})):"Nothing to show"},C=function(e,t){var n=(0,i.useBackend)(t),r=n.act,c=n.data.modes;return c&&0!==c.length?c.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:e.selected?"check-square-o":"square-o",selected:e.selected,color:e.selected&&e.danger&&"danger",content:e.name,onClick:function(){return r("mode",{mode:e.mode})}}),(0,o.createComponentVNode)(2,a.Box,{mt:1})],4,e.mode)})):"Nothing to show"},g=function(e,t){var n=(0,i.useBackend)(t),c=n.act,l=n.data.thresholds;return(0,o.createVNode)(1,"table","LabeledList",[(0,o.createVNode)(1,"thead",null,(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td"),(0,o.createVNode)(1,"td","color-bad","min2",16),(0,o.createVNode)(1,"td","color-average","min1",16),(0,o.createVNode)(1,"td","color-average","max1",16),(0,o.createVNode)(1,"td","color-bad","max2",16)],4),2),(0,o.createVNode)(1,"tbody",null,l.map((function(e){return(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td","LabeledList__label",e.name,0),e.settings.map((function(e){return(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,a.Button,{content:(0,r.toFixed)(e.selected,2),onClick:function(){return c("threshold",{env:e.env,"var":e.val})}}),2,null,e.val)}))],0,null,e.name)})),0)],4,{style:{width:"100%"}})}},function(e,t,n){"use strict";t.__esModule=!0,t.Scrubber=t.Vent=void 0;var o=n(0),r=n(19),i=n(1),a=n(3),c=n(38);t.Vent=function(e,t){var n=e.vent,c=(0,i.useBackend)(t).act,l=n.id_tag,d=n.long_name,u=n.power,s=n.checks,p=n.excheck,m=n.incheck,f=n.direction,h=n.external,C=n.internal,g=n.extdefault,b=n.intdefault;return(0,o.createComponentVNode)(2,a.Section,{level:2,title:(0,r.decodeHtmlEntities)(d),buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",selected:u,content:u?"On":"Off",onClick:function(){return c("power",{id_tag:l,val:Number(!u)})}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",children:(0,o.createComponentVNode)(2,a.Button,{icon:"sign-in-alt",content:f?"Pressurizing":"Scrubbing",color:!f&&"danger",onClick:function(){return c("direction",{id_tag:l,val:Number(!f)})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"sign-in-alt",content:"Internal",selected:m,onClick:function(){return c("incheck",{id_tag:l,val:s})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sign-out-alt",content:"External",selected:p,onClick:function(){return c("excheck",{id_tag:l,val:s})}})]}),!!m&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Internal Target",children:[(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(C),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,t){return c("set_internal_pressure",{id_tag:l,value:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",disabled:b,content:"Reset",onClick:function(){return c("reset_internal_pressure",{id_tag:l})}})]}),!!p&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"External Target",children:[(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(h),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,t){return c("set_external_pressure",{id_tag:l,value:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",disabled:g,content:"Reset",onClick:function(){return c("reset_external_pressure",{id_tag:l})}})]})]})})};t.Scrubber=function(e,t){var n=e.scrubber,l=(0,i.useBackend)(t).act,d=n.long_name,u=n.power,s=n.scrubbing,p=n.id_tag,m=n.widenet,f=n.filter_types;return(0,o.createComponentVNode)(2,a.Section,{level:2,title:(0,r.decodeHtmlEntities)(d),buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return l("power",{id_tag:p,val:Number(!u)})}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",children:[(0,o.createComponentVNode)(2,a.Button,{icon:s?"filter":"sign-in-alt",color:s||"danger",content:s?"Scrubbing":"Siphoning",onClick:function(){return l("scrubbing",{id_tag:p,val:Number(!s)})}}),(0,o.createComponentVNode)(2,a.Button,{icon:m?"expand":"compress",selected:m,content:m?"Expanded range":"Normal range",onClick:function(){return l("widenet",{id_tag:p,val:Number(!m)})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Filters",children:s&&f.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,c.getGasLabel)(e.gas_id,e.gas_name),title:e.gas_name,selected:e.enabled,onClick:function(){return l("toggle_filter",{id_tag:p,val:e.gas_id})}},e.gas_id)}))||"N/A"})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AirlockElectronics=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=n(177);t.AirlockElectronics=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.oneAccess,s=d.unres_direction,p=d.regions||[],m=d.accesses||[];return(0,o.createComponentVNode)(2,a.Window,{width:420,height:485,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Main",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Access Required",children:(0,o.createComponentVNode)(2,i.Button,{icon:u?"unlock":"lock",content:u?"One":"All",onClick:function(){return l("one_access")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Unrestricted Access",children:[(0,o.createComponentVNode)(2,i.Button,{icon:1&s?"check-square-o":"square-o",content:"North",selected:1&s,onClick:function(){return l("direc_set",{unres_direction:"1"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:2&s?"check-square-o":"square-o",content:"South",selected:2&s,onClick:function(){return l("direc_set",{unres_direction:"2"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:4&s?"check-square-o":"square-o",content:"East",selected:4&s,onClick:function(){return l("direc_set",{unres_direction:"4"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:8&s?"check-square-o":"square-o",content:"West",selected:8&s,onClick:function(){return l("direc_set",{unres_direction:"8"})}})]})]})}),(0,o.createComponentVNode)(2,c.AccessList,{accesses:p,selectedList:m,accessMod:function(e){return l("set",{access:e})},grantAll:function(){return l("grant_all")},denyAll:function(){return l("clear_all")},grantDep:function(e){return l("grant_region",{region:e})},denyDep:function(e){return l("deny_region",{region:e})}})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Apc=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=n(60);t.Apc=function(e,t){return(0,o.createComponentVNode)(2,a.Window,{width:450,height:460,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,u)})})};var l={2:{color:"good",externalPowerText:"External Power",chargingText:"Fully Charged"},1:{color:"average",externalPowerText:"Low External Power",chargingText:"Charging"},0:{color:"bad",externalPowerText:"No External Power",chargingText:"Not Charging"}},d={1:{icon:"terminal",content:"Override Programming",action:"hack"},2:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"},3:{icon:"caret-square-left",content:"Return to Main Core",action:"deoccupy"},4:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"}},u=function(e,t){var n=(0,r.useBackend)(t),a=n.act,u=n.data,s=u.locked&&!u.siliconUser,p=l[u.externalPower]||l[0],m=l[u.chargingStatus]||l[0],f=u.powerChannels||[],h=d[u.malfStatus]||d[0],C=u.powerCellStatus/100;return u.failTime>0?(0,o.createComponentVNode)(2,i.NoticeBox,{children:[(0,o.createVNode)(1,"b",null,(0,o.createVNode)(1,"h3",null,"SYSTEM FAILURE",16),2),(0,o.createVNode)(1,"i",null,"I/O regulators malfunction detected! Waiting for system reboot...",16),(0,o.createVNode)(1,"br"),"Automatic reboot in ",u.failTime," seconds...",(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Reboot Now",onClick:function(){return a("reboot")}})]}):(0,o.createFragment)([(0,o.createComponentVNode)(2,c.InterfaceLockNoticeBox),(0,o.createComponentVNode)(2,i.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Main Breaker",color:p.color,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u.isOperating?"power-off":"times",content:u.isOperating?"On":"Off",selected:u.isOperating&&!s,disabled:s,onClick:function(){return a("breaker")}}),children:["[ ",p.externalPowerText," ]"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power Cell",children:(0,o.createComponentVNode)(2,i.ProgressBar,{color:"good",value:C})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Charge Mode",color:m.color,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u.chargeMode?"sync":"close",content:u.chargeMode?"Auto":"Off",disabled:s,onClick:function(){return a("charge")}}),children:["[ ",m.chargingText," ]"]})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Power Channels",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[f.map((function(e){var t=e.topicParams;return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.title,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,mx:2,color:e.status>=2?"good":"bad",children:e.status>=2?"On":"Off"}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Auto",selected:!s&&(1===e.status||3===e.status),disabled:s,onClick:function(){return a("channel",t.auto)}}),(0,o.createComponentVNode)(2,i.Button,{icon:"power-off",content:"On",selected:!s&&2===e.status,disabled:s,onClick:function(){return a("channel",t.on)}}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Off",selected:!s&&0===e.status,disabled:s,onClick:function(){return a("channel",t.off)}})],4),children:e.powerLoad},e.title)})),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Total Load",children:(0,o.createVNode)(1,"b",null,u.totalLoad,0)})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Misc",buttons:!!u.siliconUser&&(0,o.createFragment)([!!u.malfStatus&&(0,o.createComponentVNode)(2,i.Button,{icon:h.icon,content:h.content,color:"bad",onClick:function(){return a(h.action)}}),(0,o.createComponentVNode)(2,i.Button,{icon:"lightbulb-o",content:"Overload",onClick:function(){return a("overload")}})],0),children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Cover Lock",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u.coverLocked?"lock":"unlock",content:u.coverLocked?"Engaged":"Disengaged",disabled:s,onClick:function(){return a("cover")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Emergency Lighting",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"lightbulb-o",content:u.emergencyLights?"Enabled":"Disabled",disabled:s,onClick:function(){return a("emergency_lighting")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Night Shift Lighting",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"lightbulb-o",content:u.nightshiftLights?"Enabled":"Disabled",onClick:function(){return a("toggle_nightshift")}})})]})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.ApcControl=void 0;var o=n(0),r=n(18),i=n(33),a=n(6),c=n(1),l=n(3),d=n(2),u=n(128);t.ApcControl=function(e,t){var n=(0,c.useBackend)(t).data;return(0,o.createComponentVNode)(2,d.Window,{title:"APC Controller",width:550,height:500,resizable:!0,children:[1===n.authenticated&&(0,o.createComponentVNode)(2,p),0===n.authenticated&&(0,o.createComponentVNode)(2,s)]})};var s=function(e,t){var n=(0,c.useBackend)(t),r=n.act,i=n.data.emagged,a=1===i?"Open":"Log In";return(0,o.createComponentVNode)(2,d.Window.Content,{children:(0,o.createComponentVNode)(2,l.Button,{fluid:!0,color:1===i?"":"good",content:a,onClick:function(){return r("log-in")}})})},p=function(e,t){var n=(0,c.useBackend)(t),r=n.act,i=n.data.restoring,a=(0,c.useLocalState)(t,"tab-index",1),u=a[0],s=a[1];return(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Tabs,{children:[(0,o.createComponentVNode)(2,l.Tabs.Tab,{selected:1===u,onClick:function(){s(1),r("check-apcs")},children:"APC Control Panel"}),(0,o.createComponentVNode)(2,l.Tabs.Tab,{selected:2===u,onClick:function(){s(2),r("check-logs")},children:"Log View Panel"})]}),1===i&&(0,o.createComponentVNode)(2,l.Dimmer,{fontSize:"32px",children:[(0,o.createComponentVNode)(2,l.Icon,{name:"cog",spin:!0})," Resetting..."]}),1===u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,m),(0,o.createComponentVNode)(2,l.Box,{fillPositionedParent:!0,top:"53px",children:(0,o.createComponentVNode)(2,d.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,f)})})],4),2===u&&(0,o.createComponentVNode)(2,l.Box,{fillPositionedParent:!0,top:"20px",children:(0,o.createComponentVNode)(2,d.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,h)})})],0)},m=function(e,t){var n=(0,c.useBackend)(t),r=n.act,i=n.data,a=i.emagged,d=i.logging,u=(0,c.useLocalState)(t,"sortByField",null),s=u[0],p=u[1];return(0,o.createComponentVNode)(2,l.Flex,{children:[(0,o.createComponentVNode)(2,l.Flex.Item,{children:[(0,o.createComponentVNode)(2,l.Box,{inline:!0,mr:2,color:"label",children:"Sort by:"}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"name"===s,content:"Name",onClick:function(){return p("name"!==s&&"name")}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"charge"===s,content:"Charge",onClick:function(){return p("charge"!==s&&"charge")}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"draw"===s,content:"Draw",onClick:function(){return p("draw"!==s&&"draw")}})]}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1}),(0,o.createComponentVNode)(2,l.Flex.Item,{children:[1===a&&(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Button,{color:1===d?"bad":"good",content:1===d?"Stop Logging":"Restore Logging",onClick:function(){return r("toggle-logs")}}),(0,o.createComponentVNode)(2,l.Button,{content:"Reset Console",onClick:function(){return r("restore-console")}})],4),(0,o.createComponentVNode)(2,l.Button,{color:"bad",content:"Log Out",onClick:function(){return r("log-out")}})]})]})},f=function(e,t){var n=(0,c.useBackend)(t),a=n.data,d=n.act,s=(0,c.useLocalState)(t,"sortByField",null)[0],p=(0,i.flow)([(0,r.map)((function(e,t){return Object.assign({},e,{id:e.name+t})})),"name"===s&&(0,r.sortBy)((function(e){return e.name})),"charge"===s&&(0,r.sortBy)((function(e){return-e.charge})),"draw"===s&&(0,r.sortBy)((function(e){return-(0,u.powerRank)(e.load)}),(function(e){return-parseFloat(e.load)}))])(a.apcs);return(0,o.createComponentVNode)(2,l.Table,{children:[(0,o.createComponentVNode)(2,l.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:"On/Off"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Area"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:"Charge"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,textAlign:"right",children:"Draw"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Equipment",children:"Eqp"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Lighting",children:"Lgt"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Environment",children:"Env"})]}),p.map((function(e,t){return(0,o.createVNode)(1,"tr","Table__row candystripe",[(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,l.Button,{icon:e.operating?"power-off":"times",color:e.operating?"good":"bad",onClick:function(){return d("breaker",{ref:e.ref})}}),2),(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,l.Button,{onClick:function(){return d("access-apc",{ref:e.ref})},children:e.name}),2),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",(0,o.createComponentVNode)(2,u.AreaCharge,{charging:e.charging,charge:e.charge}),2),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",e.load,0),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,C,{target:"equipment",status:e.eqp,apc:e,act:d}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,C,{target:"lighting",status:e.lgt,apc:e,act:d}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,C,{target:"environ",status:e.env,apc:e,act:d}),2)],4,null,e.id)}))]})},h=function(e,t){var n=(0,c.useBackend)(t).data,a=(0,i.flow)([(0,r.map)((function(e,t){return Object.assign({},e,{id:e.entry+t})})),function(e){return e.reverse()}])(n.logs);return(0,o.createComponentVNode)(2,l.Box,{m:-.5,children:a.map((function(e){return(0,o.createComponentVNode)(2,l.Box,{p:.5,className:"candystripe",bold:!0,children:e.entry},e.id)}))})},C=function(e){var t=e.target,n=e.status,r=e.apc,i=e.act,a=Boolean(2&n),c=Boolean(1&n);return(0,o.createComponentVNode)(2,l.Button,{icon:c?"sync":"power-off",color:a?"good":"bad",onClick:function(){return i("toggle-minor",{type:t,value:g(n),ref:r.ref})}})},g=function(e){return 0===e?2:2===e?3:0};C.defaultHooks=a.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosAlertConsole=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.AtmosAlertConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.priority||[],u=l.minor||[];return(0,o.createComponentVNode)(2,a.Window,{width:350,height:300,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{title:"Alarms",children:(0,o.createVNode)(1,"ul",null,[0===d.length&&(0,o.createVNode)(1,"li","color-good","No Priority Alerts",16),d.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:e,color:"bad",onClick:function(){return c("clear",{zone:e})}}),2,null,e)})),0===u.length&&(0,o.createVNode)(1,"li","color-good","No Minor Alerts",16),u.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:e,color:"average",onClick:function(){return c("clear",{zone:e})}}),2,null,e)}))],0)})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosControlConsole=void 0;var o=n(0),r=n(18),i=n(15),a=n(1),c=n(3),l=n(2);t.AtmosControlConsole=function(e,t){var n,d=(0,a.useBackend)(t),u=d.act,s=d.data,p=s.sensors||[];return(0,o.createComponentVNode)(2,l.Window,{width:500,height:315,resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,c.Section,{title:!!s.tank&&(null==(n=p[0])?void 0:n.long_name),children:p.map((function(e){var t=e.gases||{};return(0,o.createComponentVNode)(2,c.Section,{title:!s.tank&&e.long_name,level:2,children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Pressure",children:(0,i.toFixed)(e.pressure,2)+" kPa"}),!!e.temperature&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Temperature",children:(0,i.toFixed)(e.temperature,2)+" K"}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:t,children:(0,i.toFixed)(e,2)+"%"})}))(t)]})},e.id_tag)}))}),s.tank&&(0,o.createComponentVNode)(2,c.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,c.Button,{icon:"undo",content:"Reconnect",onClick:function(){return u("reconnect")}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Injector",children:(0,o.createComponentVNode)(2,c.Button,{icon:s.inputting?"power-off":"times",content:s.inputting?"Injecting":"Off",selected:s.inputting,onClick:function(){return u("input")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Rate",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:s.inputRate,unit:"L/s",width:"63px",minValue:0,maxValue:200,suppressFlicker:2e3,onChange:function(e,t){return u("rate",{rate:t})}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Regulator",children:(0,o.createComponentVNode)(2,c.Button,{icon:s.outputting?"power-off":"times",content:s.outputting?"Open":"Closed",selected:s.outputting,onClick:function(){return u("output")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Pressure",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:parseFloat(s.outputPressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,suppressFlicker:2e3,onChange:function(e,t){return u("pressure",{pressure:t})}})})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosFilter=void 0;var o=n(0),r=n(1),i=n(3),a=n(38),c=n(2);t.AtmosFilter=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.filter_types||[];return(0,o.createComponentVNode)(2,c.Window,{width:390,height:187,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,i.Button,{icon:d.on?"power-off":"times",content:d.on?"On":"Off",selected:d.on,onClick:function(){return l("power")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:parseFloat(d.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onDrag:function(e,t){return l("rate",{rate:t})}}),(0,o.createComponentVNode)(2,i.Button,{ml:1,icon:"plus",content:"Max",disabled:d.rate===d.max_rate,onClick:function(){return l("rate",{rate:"max"})}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Filter",children:u.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{selected:e.selected,content:(0,a.getGasLabel)(e.id,e.name),onClick:function(){return l("filter",{mode:e.id})}},e.id)}))})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosMixer=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.AtmosMixer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:370,height:165,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,i.Button,{icon:l.on?"power-off":"times",content:l.on?"On":"Off",selected:l.on,onClick:function(){return c("power")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:parseFloat(l.set_pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return c("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,i.Button,{ml:1,icon:"plus",content:"Max",disabled:l.set_pressure===l.max_pressure,onClick:function(){return c("pressure",{pressure:"max"})}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Node 1",children:(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:l.node1_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return c("node1",{concentration:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Node 2",children:(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:l.node2_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return c("node2",{concentration:t})}})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosPump=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.AtmosPump=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:335,height:115,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,i.Button,{icon:l.on?"power-off":"times",content:l.on?"On":"Off",selected:l.on,onClick:function(){return c("power")}})}),l.max_rate?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:parseFloat(l.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onChange:function(e,t){return c("rate",{rate:t})}}),(0,o.createComponentVNode)(2,i.Button,{ml:1,icon:"plus",content:"Max",disabled:l.rate===l.max_rate,onClick:function(){return c("rate",{rate:"max"})}})]}):(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:parseFloat(l.pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return c("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,i.Button,{ml:1,icon:"plus",content:"Max",disabled:l.pressure===l.max_pressure,onClick:function(){return c("pressure",{pressure:"max"})}})]})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AutomatedAnnouncement=void 0;var o=n(0),r=(n(19),n(1)),i=n(3),a=n(2),c="%PERSON will be replaced with their name.\n%RANK with their job.";t.AutomatedAnnouncement=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.arrivalToggle,s=d.arrival,p=d.newheadToggle,m=d.newhead;return(0,o.createComponentVNode)(2,a.Window,{title:"Automated Announcement System",width:500,height:225,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Arrival Announcement",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u?"power-off":"times",selected:u,content:u?"On":"Off",onClick:function(){return l("ArrivalToggle")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Message",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"info",tooltip:c,tooltipPosition:"left"}),children:(0,o.createComponentVNode)(2,i.Input,{fluid:!0,value:s,onChange:function(e,t){return l("ArrivalText",{newText:t})}})})})}),(0,o.createComponentVNode)(2,i.Section,{title:"Departmental Head Announcement",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:p?"power-off":"times",selected:p,content:p?"On":"Off",onClick:function(){return l("NewheadToggle")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Message",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"info",tooltip:c,tooltipPosition:"left"}),children:(0,o.createComponentVNode)(2,i.Input,{fluid:!0,value:m,onChange:function(e,t){return l("NewheadText",{newText:t})}})})})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.BankMachine=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.BankMachine=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.current_balance,u=l.siphoning,s=l.station_name;return(0,o.createComponentVNode)(2,a.Window,{width:335,height:160,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:s+" Vault",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current Balance",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u?"times":"sync",content:u?"Stop Siphoning":"Siphon Credits",selected:u,onClick:function(){return c(u?"halt":"siphon")}}),children:d+" cr"})})}),(0,o.createComponentVNode)(2,i.NoticeBox,{textAlign:"center",children:"Authorized personnel only"})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Bepis=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Bepis=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.amount;return(0,o.createComponentVNode)(2,a.Window,{width:500,height:480,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Business Exploration Protocol Incubation Sink",children:[(0,o.createComponentVNode)(2,i.Section,{title:"Information",backgroundColor:"#450F44",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"power-off",content:l.manual_power?"Off":"On",selected:!l.manual_power,onClick:function(){return c("toggle_power")}}),children:"All you need to know about the B.E.P.I.S. and you! The B.E.P.I.S. performs hundreds of tests a second using electrical and financial resources to invent new products, or discover new technologies otherwise overlooked for being too risky or too niche to produce!"}),(0,o.createComponentVNode)(2,i.Section,{title:"Payer's Account",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"redo-alt",content:"Reset Account",onClick:function(){return c("account_reset")}}),children:["Console is currently being operated by ",l.account_owner?l.account_owner:"no one","."]}),(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{size:1.5,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Stored Data and Statistics",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Deposited Credits",children:l.stored_cash}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Investment Variability",children:[l.accuracy_percentage,"%"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Innovation Bonus",children:l.positive_cash_offset}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Risk Offset",color:"bad",children:l.negative_cash_offset}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Deposit Amount",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:d,unit:"Credits",minValue:100,maxValue:3e4,step:100,stepPixelSize:2,onChange:function(e,t){return c("amount",{amount:t})}})})]})}),(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Button,{icon:"donate",content:"Deposit Credits",disabled:1===l.manual_power||1===l.silicon_check,onClick:function(){return c("deposit_cash")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Withdraw Credits",disabled:1===l.manual_power,onClick:function(){return c("withdraw_cash")}})]})]}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Market Data and Analysis",children:[(0,o.createComponentVNode)(2,i.Box,{children:["Average technology cost: ",l.mean_value]}),(0,o.createComponentVNode)(2,i.Box,{children:["Current chance of Success: Est. ",l.success_estimate,"%"]}),l.error_name&&(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Previous Failure Reason: Deposited cash value too low. Please insert more money for future success."}),(0,o.createComponentVNode)(2,i.Box,{m:1}),(0,o.createComponentVNode)(2,i.Button,{icon:"microscope",disabled:1===l.manual_power,onClick:function(){return c("begin_experiment")},content:"Begin Testing"})]})})]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.BiogeneratorContent=t.Biogenerator=void 0;var o=n(0),r=n(6),i=n(19),a=n(1),c=n(3),l=n(44),d=n(2);t.Biogenerator=function(e,t){var n=(0,a.useBackend)(t).data,r=n.beaker,i=n.processing;return(0,o.createComponentVNode)(2,d.Window,{width:550,height:380,resizable:!0,children:[!!i&&(0,o.createComponentVNode)(2,c.Dimmer,{fontSize:"32px",children:[(0,o.createComponentVNode)(2,c.Icon,{name:"cog",spin:1})," Processing..."]}),(0,o.createComponentVNode)(2,d.Window.Content,{scrollable:!0,children:[!r&&(0,o.createComponentVNode)(2,c.NoticeBox,{children:"No Container"}),!!r&&(0,o.createComponentVNode)(2,u)]})]})};var u=function(e,t){var n,r,d=(0,a.useBackend)(t),u=d.act,p=d.data,m=p.biomass,f=p.can_process,h=p.categories,C=void 0===h?[]:h,g=(0,a.useLocalState)(t,"searchText",""),b=g[0],N=g[1],v=(0,a.useLocalState)(t,"category",null==(n=C[0])?void 0:n.name),V=v[0],y=v[1],k=(0,i.createSearch)(b,(function(e){return e.name})),x=b.length>0&&C.flatMap((function(e){return e.items||[]})).filter(k).filter((function(e,t){return t<25}))||(null==(r=C.find((function(e){return e.name===V})))?void 0:r.items)||[];return(0,o.createComponentVNode)(2,c.Section,{title:(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:m>0?"good":"bad",children:[(0,l.formatMoney)(m)," Biomass"]}),buttons:(0,o.createFragment)([(0,o.createTextVNode)("Search"),(0,o.createComponentVNode)(2,c.Input,{autoFocus:!0,value:b,onInput:function(e,t){return N(t)},mx:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"eject",content:"Eject",onClick:function(){return u("detach")}}),(0,o.createComponentVNode)(2,c.Button,{icon:"cog",content:"Activate",disabled:!f,onClick:function(){return u("activate")}})],4),children:(0,o.createComponentVNode)(2,c.Flex,{children:[0===b.length&&(0,o.createComponentVNode)(2,c.Flex.Item,{children:(0,o.createComponentVNode)(2,c.Tabs,{vertical:!0,children:C.map((function(e){var t;return(0,o.createComponentVNode)(2,c.Tabs.Tab,{selected:e.name===V,onClick:function(){return y(e.name)},children:[e.name," (",(null==(t=e.items)?void 0:t.length)||0,")"]},e.name)}))})}),(0,o.createComponentVNode)(2,c.Flex.Item,{grow:1,basis:0,children:[0===x.length&&(0,o.createComponentVNode)(2,c.NoticeBox,{children:0===b.length?"No items in this category.":"No results found."}),(0,o.createComponentVNode)(2,c.Table,{children:(0,o.createComponentVNode)(2,s,{biomass:m,items:x})})]})]})})};t.BiogeneratorContent=u;var s=function(e,t){var n=(0,a.useBackend)(t).act,i=(0,a.useLocalState)(t,"hoveredItem",{}),l=i[0],d=i[1],u=l&&l.cost||0;return e.items.map((function(n){var o=(0,a.useLocalState)(t,"amount"+n.name,1),r=o[0],i=o[1],c=l&&l.name!==n.name,d=e.biomass-u*l.amount<n.cost*r,s=c&&d,p=e.biomass<n.cost*r||s;return Object.assign({},n,{disabled:p,amount:r,setAmount:i})})).map((function(e){return(0,o.createComponentVNode)(2,c.Table.Row,{children:[(0,o.createComponentVNode)(2,c.Table.Cell,{children:[(0,o.createVNode)(1,"span",(0,r.classes)(["design32x32",e.id]),null,1,{style:{"vertical-align":"middle"}})," ",(0,o.createVNode)(1,"b",null,e.name,0)]}),(0,o.createComponentVNode)(2,c.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,c.NumberInput,{value:Math.round(e.amount),width:"35px",minValue:1,maxValue:10,onChange:function(t,n){return e.setAmount(n)}})}),(0,o.createComponentVNode)(2,c.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,c.Button,{style:{"text-align":"right"},fluid:!0,content:e.cost*e.amount+" BIO",disabled:e.disabled,onmouseover:function(){return d(e)},onmouseout:function(){return d({})},onClick:function(){return n("create",{id:e.id,amount:e.amount})}})})]},e.id)}))}},function(e,t,n){"use strict";t.__esModule=!0,t.BlackMarketUplink=void 0;var o=n(0),r=n(1),i=n(3),a=n(44),c=n(2);t.BlackMarketUplink=function(e,t){var n=(0,r.useBackend)(t),d=n.act,u=n.data,s=u.categories,p=void 0===s?[]:s,m=u.markets,f=void 0===m?[]:m,h=u.items,C=void 0===h?[]:h,g=u.money,b=u.viewing_market,N=u.viewing_category;return(0,o.createComponentVNode)(2,c.Window,{width:600,height:480,theme:"hackerman",resizable:!0,children:[(0,o.createComponentVNode)(2,l),(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Black Market Uplink",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:g,format:function(e){return(0,a.formatMoney)(e)+" cr"}})})}),(0,o.createComponentVNode)(2,i.Tabs,{children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:e.id===b,onClick:function(){return d("set_market",{market:e.id})},children:e.name},e.id)}))}),(0,o.createComponentVNode)(2,i.Flex,{children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:p.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{mt:.5,selected:N===e,onClick:function(){return d("set_category",{category:e})},children:e},e)}))})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:C.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{className:"candystripe",p:1,pb:2,children:[(0,o.createComponentVNode)(2,i.Flex,{spacing:1,align:"baseline",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{bold:!0,grow:1,children:e.name}),(0,o.createComponentVNode)(2,i.Flex.Item,{color:"label",children:e.amount?e.amount+" in stock":"Out of stock"}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,a.formatMoney)(e.cost)+" cr"}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Buy",disabled:!e.amount||e.cost>g,onClick:function(){return d("select",{item:e.id})}})})]}),e.desc]},e.name)}))})]})]})]})};var l=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.buying,u=l.ltsrbt_built,s=l.money;if(!d)return null;var p=l.delivery_methods.map((function(e){var t=l.delivery_method_description[e.name];return Object.assign({},e,{description:t})}));return(0,o.createComponentVNode)(2,i.Modal,{textAlign:"center",children:[(0,o.createComponentVNode)(2,i.Flex,{mb:1,children:p.map((function(e){return"LTSRBT"!==e.name||u?(0,o.createComponentVNode)(2,i.Flex.Item,{mx:1,width:"250px",children:[(0,o.createComponentVNode)(2,i.Box,{fontSize:"30px",children:e.name}),(0,o.createComponentVNode)(2,i.Box,{mt:1,children:e.description}),(0,o.createComponentVNode)(2,i.Button,{mt:2,content:(0,a.formatMoney)(e.price)+" cr",disabled:s<e.price,onClick:function(){return c("buy",{method:e.name})}})]},e.name):null}))}),(0,o.createComponentVNode)(2,i.Button,{content:"Cancel",color:"bad",onClick:function(){return c("cancel")}})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BluespaceArtillery=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.BluespaceArtillery=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.notice,u=l.connected,s=l.unlocked,p=l.target;return(0,o.createComponentVNode)(2,a.Window,{width:400,height:220,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[!!d&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:d}),u?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Target",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"crosshairs",disabled:!s,onClick:function(){return c("recalibrate")}}),children:(0,o.createComponentVNode)(2,i.Box,{color:p?"average":"bad",fontSize:"25px",children:p||"No Target Set"})}),(0,o.createComponentVNode)(2,i.Section,{children:s?(0,o.createComponentVNode)(2,i.Box,{style:{margin:"auto"},children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"FIRE",color:"bad",disabled:!p,fontSize:"30px",textAlign:"center",lineHeight:"46px",onClick:function(){return c("fire")}})}):(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{color:"bad",fontSize:"18px",children:"Bluespace artillery is currently locked."}),(0,o.createComponentVNode)(2,i.Box,{mt:1,children:"Awaiting authorization via keycard reader from at minimum two station heads."})],4)})],4):(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Maintenance",children:(0,o.createComponentVNode)(2,i.Button,{icon:"wrench",content:"Complete Deployment",onClick:function(){return c("build")}})})})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.BluespaceLocator=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c={north:0,northeast:45,east:90,southeast:135,south:180,southwest:225,west:270,northwest:315};t.BluespaceLocator=function(e,t){var n=(0,r.useSharedState)(t,"tab","implant"),c=n[0],u=n[1];return(0,o.createComponentVNode)(2,a.Window,{width:300,height:300,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:"implant"===c,onClick:function(){return u("implant")},children:"Implants"}),(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:"beacon"===c,onClick:function(){return u("beacon")},children:"Teleporter Beacons"})]}),"beacon"===c&&(0,o.createComponentVNode)(2,l)||"implant"===c&&(0,o.createComponentVNode)(2,d)]})})};var l=function(e,t){return(0,r.useBackend)(t).data.telebeacons.map((function(e){return(0,o.createComponentVNode)(2,u,{name:e.name,distance:e.distance,direction:c[e.direction]},e.name)}))},d=function(e,t){return(0,r.useBackend)(t).data.trackimplants.map((function(e){return(0,o.createComponentVNode)(2,u,{name:e.name,distance:e.distance,direction:c[e.direction]},e.name)}))},u=function(e,t){var n=(0,r.useBackend)(t).data.trackingrange,a=e.name,c=e.direction,l=e.distance;return(0,o.createComponentVNode)(2,i.ProgressBar,{mb:1,value:n-l,minValue:0,maxValue:n,ranges:{red:[0,n/3],yellow:[n/3,n/3*2],green:[n/3*2,n]},children:[a,(0,o.createComponentVNode)(2,i.Icon,{ml:2,name:"arrow-up",rotation:c})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BorgPanel=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.BorgPanel=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.borg||{},u=l.cell||{},s=u.charge/u.maxcharge,p=l.channels||[],m=l.modules||[],f=l.upgrades||[],h=l.ais||[],C=l.laws||[];return(0,o.createComponentVNode)(2,a.Window,{title:"Borg Panel",width:700,height:700,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:d.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"pencil-alt",content:"Rename",onClick:function(){return c("rename")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:[(0,o.createComponentVNode)(2,i.Button,{icon:d.emagged?"check-square-o":"square-o",content:"Emagged",selected:d.emagged,onClick:function(){return c("toggle_emagged")}}),(0,o.createComponentVNode)(2,i.Button,{icon:d.lockdown?"check-square-o":"square-o",content:"Locked Down",selected:d.lockdown,onClick:function(){return c("toggle_lockdown")}}),(0,o.createComponentVNode)(2,i.Button,{icon:d.scrambledcodes?"check-square-o":"square-o",content:"Scrambled Codes",selected:d.scrambledcodes,onClick:function(){return c("toggle_scrambledcodes")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Charge",children:[u.missing?(0,o.createVNode)(1,"span","color-bad","No cell installed",16):(0,o.createComponentVNode)(2,i.ProgressBar,{value:s,children:u.charge+" / "+u.maxcharge}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,i.Button,{icon:"pencil-alt",content:"Set",onClick:function(){return c("set_charge")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Change",onClick:function(){return c("change_cell")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"trash",content:"Remove",color:"bad",onClick:function(){return c("remove_cell")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Radio Channels",children:p.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:e.installed?"check-square-o":"square-o",content:e.name,selected:e.installed,onClick:function(){return c("toggle_radio",{channel:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Module",children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:d.active_module===e.type?"check-square-o":"square-o",content:e.name,selected:d.active_module===e.type,onClick:function(){return c("setmodule",{module:e.type})}},e.type)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Upgrades",children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:e.installed?"check-square-o":"square-o",content:e.name,selected:e.installed,onClick:function(){return c("toggle_upgrade",{upgrade:e.type})}},e.type)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Master AI",children:h.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:e.connected?"check-square-o":"square-o",content:e.name,selected:e.connected,onClick:function(){return c("slavetoai",{slavetoai:e.ref})}},e.ref)}))})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Laws",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d.lawupdate?"check-square-o":"square-o",content:"Lawsync",selected:d.lawupdate,onClick:function(){return c("toggle_lawupdate")}}),children:C.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{children:e},e)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.BrigTimer=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.BrigTimer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:300,height:138,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{title:"Cell Timer",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"clock-o",content:l.timing?"Stop":"Start",selected:l.timing,onClick:function(){return c(l.timing?"stop":"start")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"lightbulb-o",content:l.flash_charging?"Recharging":"Flash",disabled:l.flash_charging,onClick:function(){return c("flash")}})],4),children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",onClick:function(){return c("time",{adjust:-600})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"backward",onClick:function(){return c("time",{adjust:-100})}})," ",String(l.minutes).padStart(2,"0"),":",String(l.seconds).padStart(2,"0")," ",(0,o.createComponentVNode)(2,i.Button,{icon:"forward",onClick:function(){return c("time",{adjust:100})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",onClick:function(){return c("time",{adjust:600})}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,i.Button,{icon:"hourglass-start",content:"Short",onClick:function(){return c("preset",{preset:"short"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"hourglass-start",content:"Medium",onClick:function(){return c("preset",{preset:"medium"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"hourglass-start",content:"Long",onClick:function(){return c("preset",{preset:"long"})}})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CameraConsoleContent=t.CameraConsole=void 0;var o=n(0),r=n(18),i=n(33),a=n(6),c=n(19),l=n(1),d=n(3),u=n(2),s=function(e,t){void 0===t&&(t="");var n=(0,c.createSearch)(t,(function(e){return e.name}));return(0,i.flow)([(0,r.filter)((function(e){return null==e?void 0:e.name})),t&&(0,r.filter)(n),(0,r.sortBy)((function(e){return e.name}))])(e)};t.CameraConsole=function(e,t){var n=(0,l.useBackend)(t),r=n.act,i=n.data,a=(n.config,i.mapRef),c=i.activeCamera,m=function(e,t){var n,o;if(!t)return[];var r=e.findIndex((function(e){return e.name===t.name}));return[null==(n=e[r-1])?void 0:n.name,null==(o=e[r+1])?void 0:o.name]}(s(i.cameras),c),f=m[0],h=m[1];return(0,o.createComponentVNode)(2,u.Window,{width:870,height:708,resizable:!0,children:[(0,o.createVNode)(1,"div","CameraConsole__left",(0,o.createComponentVNode)(2,u.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,p)}),2),(0,o.createVNode)(1,"div","CameraConsole__right",[(0,o.createVNode)(1,"div","CameraConsole__toolbar",[(0,o.createVNode)(1,"b",null,"Camera: ",16),c&&c.name||"\u2014"],0),(0,o.createVNode)(1,"div","CameraConsole__toolbarRight",[(0,o.createComponentVNode)(2,d.Button,{icon:"chevron-left",disabled:!f,onClick:function(){return r("switch_camera",{name:f})}}),(0,o.createComponentVNode)(2,d.Button,{icon:"chevron-right",disabled:!h,onClick:function(){return r("switch_camera",{name:h})}})],4),(0,o.createComponentVNode)(2,d.ByondUi,{className:"CameraConsole__map",params:{id:a,type:"map"}})],4)]})};var p=function(e,t){var n=(0,l.useBackend)(t),r=n.act,i=n.data,c=(0,l.useLocalState)(t,"searchText",""),p=c[0],m=c[1],f=i.activeCamera,h=s(i.cameras,p);return(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Input,{autoFocus:!0,fluid:!0,mb:1,placeholder:"Search for a camera",onInput:function(e,t){return m(t)}}),(0,o.createComponentVNode)(2,d.Section,{children:h.map((function(e){return(0,o.createVNode)(1,"div",(0,a.classes)(["Button","Button--fluid","Button--color--transparent","Button--ellipsis",f&&e.name===f.name&&"Button--selected"]),e.name,0,{title:e.name,onClick:function(){(0,u.refocusLayout)(),r("switch_camera",{name:e.name})}},e.name)}))})],4)};t.CameraConsoleContent=p},function(e,t,n){"use strict";t.__esModule=!0,t.Canister=void 0;var o=n(0),r=n(15),i=n(1),a=n(3),c=n(44),l=n(2);t.Canister=function(e,t){var n=(0,i.useBackend)(t),d=n.act,u=n.data,s=u.portConnected,p=u.tankPressure,m=u.releasePressure,f=u.defaultReleasePressure,h=u.minReleasePressure,C=u.maxReleasePressure,g=u.valveOpen,b=u.isPrototype,N=u.hasHoldingTank,v=u.holdingTank,V=u.restricted;return(0,o.createComponentVNode)(2,l.Window,{width:300,height:232,children:(0,o.createComponentVNode)(2,l.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Canister",buttons:(0,o.createFragment)([!!b&&(0,o.createComponentVNode)(2,a.Button,{mr:1,icon:V?"lock":"unlock",color:"caution",content:V?"Engineering":"Public",onClick:function(){return d("restricted")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Relabel",onClick:function(){return d("relabel")}})],0),children:(0,o.createComponentVNode)(2,a.LabeledControls,{children:[(0,o.createComponentVNode)(2,a.LabeledControls.Item,{minWidth:"66px",label:"Pressure",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:p,format:function(e){return e<1e4?(0,r.toFixed)(e)+" kPa":(0,c.formatSiUnit)(1e3*e,1,"Pa")}})}),(0,o.createComponentVNode)(2,a.LabeledControls.Item,{label:"Regulator",children:(0,o.createComponentVNode)(2,a.Box,{position:"relative",left:"-8px",children:[(0,o.createComponentVNode)(2,a.Knob,{size:1.25,color:!!g&&"yellow",value:m,unit:"kPa",minValue:h,maxValue:C,step:5,stepPixelSize:1,onDrag:function(e,t){return d("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,position:"absolute",top:"-2px",right:"-20px",color:"transparent",icon:"fast-forward",onClick:function(){return d("pressure",{pressure:C})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,position:"absolute",top:"16px",right:"-20px",color:"transparent",icon:"undo",onClick:function(){return d("pressure",{pressure:f})}})]})}),(0,o.createComponentVNode)(2,a.LabeledControls.Item,{label:"Valve",children:(0,o.createComponentVNode)(2,a.Button,{my:.5,width:"50px",lineHeight:2,fontSize:"11px",color:g?N?"caution":"danger":null,content:g?"Open":"Closed",onClick:function(){return d("valve")}})}),(0,o.createComponentVNode)(2,a.LabeledControls.Item,{mr:1,label:"Port",children:(0,o.createComponentVNode)(2,a.Box,{position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{size:1.25,name:s?"plug":"times",color:s?"good":"bad"}),(0,o.createComponentVNode)(2,a.Tooltip,{content:s?"Connected":"Disconnected",position:"top"})]})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holding Tank",buttons:!!N&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",color:g&&"danger",content:"Eject",onClick:function(){return d("eject")}}),children:[!!N&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Label",children:v.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:v.tankPressure})," kPa"]})]}),!N&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No Holding Tank"})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Canvas=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);var c=function(e){var t,n;function r(t){var n;return(n=e.call(this,t)||this).canvasRef=(0,o.createRef)(),n.onCVClick=t.onCanvasClick,n}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var i=r.prototype;return i.componentDidMount=function(){this.drawCanvas(this.props)},i.componentDidUpdate=function(){this.drawCanvas(this.props)},i.drawCanvas=function(e){var t=this.canvasRef.current.getContext("2d"),n=e.value,o=n.length;if(o){var r=n[0].length,i=Math.round(this.canvasRef.current.width/o),a=Math.round(this.canvasRef.current.height/r);t.save(),t.scale(i,a);for(var c=0;c<n.length;c++)for(var l=n[c],d=0;d<l.length;d++){var u=l[d];t.fillStyle=u,t.fillRect(c,d,1,1)}t.restore()}},i.clickwrapper=function(e){var t=this.props.value.length;if(t){var n=this.props.value[0].length,o=this.canvasRef.current.width/t,r=this.canvasRef.current.height/n,i=Math.floor(e.offsetX/o)+1,a=Math.floor(e.offsetY/r)+1;this.onCVClick(i,a)}},i.render=function(){var e=this,t=this.props,n=(t.res,t.value),r=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(t,["res","value"]),i=l(n),a=i[0],c=i[1];return(0,o.normalizeProps)((0,o.createVNode)(1,"canvas",null,"Canvas failed to render.",16,Object.assign({width:28*a||300,height:28*c||300},r,{onClick:function(t){return e.clickwrapper(t)}}),null,this.canvasRef))},r}(o.Component),l=function(e){var t=e.length;return[t,0!==t?e[0].length:0]};t.Canvas=function(e,t){var n=(0,r.useBackend)(t),d=n.act,u=n.data,s=l(u.grid),p=s[0],m=s[1];return(0,o.createComponentVNode)(2,a.Window,{width:Math.min(400,28*p*32+24),height:Math.min(400,28*m*32+24),resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Box,{textAlign:"center",children:[(0,o.createComponentVNode)(2,c,{value:u.grid,onCanvasClick:function(e,t){return d("paint",{x:e,y:t})}}),(0,o.createComponentVNode)(2,i.Box,{children:[!u.finalized&&(0,o.createComponentVNode)(2,i.Button.Confirm,{onClick:function(){return d("finalize")},content:"Finalize"}),u.name]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoBountyConsole=void 0;var o=n(0),r=n(1),i=n(3),a=n(44),c=n(2);t.CargoBountyConsole=function(e,t){var n=(0,r.useBackend)(t),a=n.act,d=n.data.bountydata,u=void 0===d?[]:d;return(0,o.createComponentVNode)(2,c.Window,{width:750,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{title:(0,o.createComponentVNode)(2,l),buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"print",content:"Print Bounty List",onClick:function(){return a("Print")}}),children:(0,o.createComponentVNode)(2,i.Table,{border:!0,children:[(0,o.createComponentVNode)(2,i.Table.Row,{bold:!0,italic:!0,color:"label",fontSize:1.25,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{p:1,textAlign:"center",children:"Bounty Object"}),(0,o.createComponentVNode)(2,i.Table.Cell,{p:1,textAlign:"center",children:"Description"}),(0,o.createComponentVNode)(2,i.Table.Cell,{p:1,textAlign:"center",children:"Progress"}),(0,o.createComponentVNode)(2,i.Table.Cell,{p:1,textAlign:"center",children:"Value"}),(0,o.createComponentVNode)(2,i.Table.Cell,{p:1,textAlign:"center",children:"Claim"})]}),u.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{backgroundColor:1===e.priority?"rgba(252, 152, 3, 0.25)":"",children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,p:1,children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{italic:!0,textAlign:"center",p:1,children:e.description}),(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,p:1,textAlign:"center",children:[1===e.priority?(0,o.createComponentVNode)(2,i.Box,{children:"High Priority"}):"",e.completion_string]}),(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,p:1,textAlign:"center",children:e.reward_string}),(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,p:1,children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,textAlign:"center",icon:1===e.claimed?"check":"",content:1===e.claimed?"Claimed":"Claim",disabled:1===e.claimed,color:1===e.can_claim?"green":"red",onClick:function(){return a("ClaimBounty",{bounty:e.bounty_ref})}})})]},e.name)}))]})})})})};var l=function(e,t){var n=(0,r.useBackend)(t),c=(n.act,n.data.stored_cash);return(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c,format:function(e){return(0,a.formatMoney)(e)}})," credits"]})}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoExpress=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=n(178),l=n(60);t.CargoExpress=function(e,t){var n=(0,r.useBackend)(t),i=(n.act,n.data);return(0,o.createComponentVNode)(2,a.Window,{width:600,height:700,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,l.InterfaceLockNoticeBox,{accessText:"a QM-level ID card"}),!i.locked&&(0,o.createComponentVNode)(2,d)]})})};var d=function(e,t){var n=(0,r.useBackend)(t),a=n.act,l=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Cargo Express",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:Math.round(l.points)})," credits"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Landing Location",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Cargo Bay",selected:!l.usingBeacon,onClick:function(){return a("LZCargo")}}),(0,o.createComponentVNode)(2,i.Button,{selected:l.usingBeacon,disabled:!l.hasBeacon,onClick:function(){return a("LZBeacon")},children:[l.beaconzone," (",l.beaconName,")"]}),(0,o.createComponentVNode)(2,i.Button,{content:l.printMsg,disabled:!l.canBuyBeacon,onClick:function(){return a("printBeacon")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Notice",children:l.message})]})}),(0,o.createComponentVNode)(2,c.CargoCatalog,{express:!0})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoHoldTerminal=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.CargoHoldTerminal=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.points,u=l.pad,s=l.sending,p=l.status_report;return(0,o.createComponentVNode)(2,a.Window,{width:600,height:230,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current Cargo Value",children:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:Math.round(d)})," credits"]})})})}),(0,o.createComponentVNode)(2,i.Section,{title:"Cargo Pad",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Recalculate Value",disabled:!u,onClick:function(){return c("recalc")}}),(0,o.createComponentVNode)(2,i.Button,{icon:s?"times":"arrow-up",content:s?"Stop Sending":"Send Goods",selected:s,disabled:!u,onClick:function(){return c(s?"stop":"send")}})],4),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",color:u?"good":"bad",children:u?"Online":"Not Found"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Cargo Report",children:p})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CellularEmporium=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.CellularEmporium=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.abilities;return(0,o.createComponentVNode)(2,a.Window,{width:900,height:480,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Genetic Points",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"undo",content:"Readapt",disabled:!l.can_readapt,onClick:function(){return c("readapt")}}),children:l.genetic_points_remaining})})}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:d.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{className:"candystripe",label:e.name,buttons:(0,o.createFragment)([e.dna_cost," ",(0,o.createComponentVNode)(2,i.Button,{content:e.owned?"Evolved":"Evolve",selected:e.owned,onClick:function(){return c("evolve",{name:e.name})}})],0),children:[e.desc,(0,o.createComponentVNode)(2,i.Box,{color:"good",children:e.helptext})]},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CentcomPodLauncherContent=t.CentcomPodLauncher=void 0;var o=n(0),r=(n(19),n(1)),i=n(3),a=n(2);t.CentcomPodLauncher=function(){return(0,o.createComponentVNode)(2,a.Window,{title:"Config/Launch Supply Pod",width:700,height:700,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.NoticeBox,{children:"To use this, simply spawn the atoms you want in one of the five Centcom Supplypod Bays. Items in the bay will then be launched inside your supplypod, one turf-full at a time! You can optionally use the following buttons to configure how the supplypod acts."}),(0,o.createComponentVNode)(2,i.Section,{title:"Centcom Pod Customization (To be used against Helen Weinstein)",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Supply Bay",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Bay #1",selected:1===c.bayNumber,onClick:function(){return a("bay1")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Bay #2",selected:2===c.bayNumber,onClick:function(){return a("bay2")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Bay #3",selected:3===c.bayNumber,onClick:function(){return a("bay3")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Bay #4",selected:4===c.bayNumber,onClick:function(){return a("bay4")}}),(0,o.createComponentVNode)(2,i.Button,{content:"ERT Bay",selected:5===c.bayNumber,tooltip:"This bay is located on the western edge of CentCom. Its the\nglass room directly west of where ERT spawn, and south of the\nCentCom ferry. Useful for launching ERT/Deathsquads/etc. onto\nthe station via drop pods.",onClick:function(){return a("bay5")}})]}),!!c.effectReverse&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Reverse Drop",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Pick Dropoff Location",selected:c.picking_dropoff_turf,disabled:!c.effectReverse,tooltip:"[NOTE: ONLY WORKS WHEN REVERSE MODE IS ACTIVE]\nThis will allow you to select a dropoff turf. After\nselecting a turf, any pod in 'Reverse Mode' will drop off\nit's newly gotten cargo on this turf. Can be used to\ntransport things or people around the station in a neat,\nIC way. Try doing this with the 'Seethrough Pod' style\nenabled for extra fun!",onClick:function(){return a("pickDropoffTurf")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Clear Dropoff Location",disabled:!c.dropoff_turf,tooltip:"Clears the selected dropoff turf for reverse mode.",onClick:function(){return a("clearDropoffTurf")}}),(0,o.createVNode)(1,"p",null,[(0,o.createTextVNode)("Reverse Drop-off Location:"),c.dropoff_turf?c.dropoff_turf:"None"],0)]}),!c.effectReverse&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Reverse Drop",children:(0,o.createVNode)(1,"p",null,"[Enable Reverse Mode for this feature]",16)}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Teleport to",children:[(0,o.createComponentVNode)(2,i.Button,{content:c.bay,onClick:function(){return a("teleportCentcom")}}),(0,o.createComponentVNode)(2,i.Button,{content:c.oldArea?c.oldArea:"Where you were",disabled:!c.oldArea,onClick:function(){return a("teleportBack")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Item Mode",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Clone Items",selected:c.launchClone,tooltip:"Choosing this will create a duplicate of the item to be\nlaunched in Centcom, allowing you to send one type of item\nmultiple times. Either way, the atoms are forceMoved into\nthe supplypod after it lands (but before it opens).",onClick:function(){return a("launchClone")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Random Items",selected:c.launchRandomItem,tooltip:"Choosing this will pick a random item from the selected turf\ninstead of the entire turfs contents. Best combined with\nsingle/random turf.",onClick:function(){return a("launchRandomItem")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Launch style",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Ordered",selected:1===c.launchChoice,tooltip:'Instead of launching everything in the bay at once, this\nwill "scan" things (one turf-full at a time) in order, left\nto right and top to bottom. undoing will reset the "scanner"\nto the top-leftmost position.',onClick:function(){return a("launchOrdered")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Random Turf",selected:2===c.launchChoice,tooltip:"Instead of launching everything in the bay at once, this\nwill launch one random turf of items at a time.",onClick:function(){return a("launchRandomTurf")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Explosion",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Custom Size",selected:1===c.explosionChoice,tooltip:"This will cause an explosion of whatever size you like\n(including flame range) to occur as soon as the supplypod\nlands. Dont worry, supply-pods are explosion-proof!",onClick:function(){return a("explosionCustom")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Adminbus",selected:2===c.explosionChoice,tooltip:"This will cause a maxcap explosion (dependent on server\nconfig) to occur as soon as the supplypod lands. Dont worry,\nsupply-pods are explosion-proof!",onClick:function(){return a("explosionBus")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Damage",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Custom Damage",selected:1===c.damageChoice,tooltip:"Anyone caught under the pod when it lands will be dealt\nthis amount of brute damage. Sucks to be them!",onClick:function(){return a("damageCustom")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Gib",selected:2===c.damageChoice,tooltip:"This will attempt to gib any mob caught under the pod when\nit lands, as well as dealing a nice 5000 brute damage. Ya\nknow, just to be sure!",onClick:function(){return a("damageGib")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Effects",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Projectile Cloud",selected:c.effectShrapnel,tooltip:"This will create a cloud of shrapnel on landing,\nof any projectile you'd like!",onClick:function(){return a("effectShrapnel")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Stun",selected:c.effectStun,tooltip:"Anyone who is on the turf when the supplypod is launched\nwill be stunned until the supplypod lands. They cant get\naway that easy!",onClick:function(){return a("effectStun")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Delimb",selected:c.effectLimb,tooltip:"This will cause anyone caught under the pod to lose a limb,\nexcluding their head.",onClick:function(){return a("effectLimb")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Yeet Organs",selected:c.effectOrgans,tooltip:"This will cause anyone caught under the pod to lose all\ntheir limbs and organs in a spectacular fashion.",onClick:function(){return a("effectOrgans")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Movement",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Bluespace",selected:c.effectBluespace,tooltip:"Gives the supplypod an advanced Bluespace Recyling Device.\nAfter opening, the supplypod will be warped directly to the\nsurface of a nearby NT-designated trash planet (/r/ss13).",onClick:function(){return a("effectBluespace")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Stealth",selected:c.effectStealth,tooltip:'This hides the red target icon from appearing when you\nlaunch the supplypod. Combos well with the "Invisible"\nstyle. Sneak attack, go!',onClick:function(){return a("effectStealth")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Quiet",selected:c.effectQuiet,tooltip:"This will keep the supplypod from making any sounds, except\nfor those specifically set by admins in the Sound section.",onClick:function(){return a("effectQuiet")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Reverse Mode",selected:c.effectReverse,tooltip:"This pod will not send any items. Instead, after landing,\nthe supplypod will close (similar to a normal closet closing),\nand then launch back to the right centcom bay to drop off any\nnew contents.",onClick:function(){return a("effectReverse")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Missile Mode",selected:c.effectMissile,tooltip:"This pod will not send any items. Instead, it will immediately\ndelete after landing (Similar visually to setting openDelay\n& departDelay to 0, but this looks nicer). Useful if you just\nwanna fuck some shit up. Combos well with the Missile style.",onClick:function(){return a("effectMissile")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Any Descent Angle",selected:c.effectCircle,tooltip:"This will make the supplypod come in from any angle. Im not\nsure why this feature exists, but here it is.",onClick:function(){return a("effectCircle")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Machine Gun Mode",selected:c.effectBurst,tooltip:"This will make each click launch 5 supplypods inaccuratly\naround the target turf (a 3x3 area). Combos well with the\nMissile Mode if you dont want shit lying everywhere after.",onClick:function(){return a("effectBurst")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Specific Target",selected:c.effectTarget,tooltip:"This will make the supplypod target a specific atom, instead\nof the mouses position. Smiting does this automatically!",onClick:function(){return a("effectTarget")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Name/Desc",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Custom Name/Desc",selected:c.effectName,tooltip:"Allows you to add a custom name and description.",onClick:function(){return a("effectName")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Alert Ghosts",selected:c.effectAnnounce,tooltip:"Alerts ghosts when a pod is launched. Useful if some dumb\nshit is aboutta come outta the pod.",onClick:function(){return a("effectAnnounce")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Sound",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Custom Falling Sound",selected:c.fallingSound,tooltip:"Choose a sound to play as the pod falls. Note that for this\nto work right you should know the exact length of the sound,\nin seconds.",onClick:function(){return a("fallSound")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Custom Landing Sound",selected:c.landingSound,tooltip:"Choose a sound to play when the pod lands.",onClick:function(){return a("landingSound")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Custom Opening Sound",selected:c.openingSound,tooltip:"Choose a sound to play when the pod opens.",onClick:function(){return a("openingSound")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Custom Leaving Sound",selected:c.leavingSound,tooltip:"Choose a sound to play when the pod departs (whether that be\ndelection in the case of a bluespace pod, or leaving for\ncentcom for a reversing pod).",onClick:function(){return a("leavingSound")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Admin Sound Volume",selected:c.soundVolume,tooltip:"Choose the volume for the sound to play at. Default values\nare between 1 and 100, but hey, do whatever. Im a tooltip,\nnot a cop.",onClick:function(){return a("soundVolume")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Timers",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Custom Falling Duration",selected:4!==c.fallDuration,tooltip:"Set how long the animation for the pod falling lasts. Create\ndramatic, slow falling pods!",onClick:function(){return a("fallDuration")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Custom Landing Time",selected:20!==c.landingDelay,tooltip:"Choose the amount of time it takes for the supplypod to hit\nthe station. By default this value is 0.5 seconds.",onClick:function(){return a("landingDelay")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Custom Opening Time",selected:30!==c.openingDelay,tooltip:"Choose the amount of time it takes for the supplypod to open\nafter landing. Useful for giving whatevers inside the pod a\nnice dramatic entrance! By default this value is 3 seconds.",onClick:function(){return a("openingDelay")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Custom Leaving Time",selected:30!==c.departureDelay,tooltip:"Choose the amount of time it takes for the supplypod to leave\nafter landing. By default this value is 3 seconds.",onClick:function(){return a("departureDelay")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Style",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Standard",selected:1===c.styleChoice,tooltip:"Same color scheme as the normal station-used supplypods",onClick:function(){return a("styleStandard")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Advanced",selected:2===c.styleChoice,tooltip:"The same as the stations upgraded blue-and-white\nBluespace Supplypods",onClick:function(){return a("styleBluespace")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Syndicate",selected:4===c.styleChoice,tooltip:"A menacing black and blood-red. Great for sending meme-ops\nin style!",onClick:function(){return a("styleSyndie")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Deathsquad",selected:5===c.styleChoice,tooltip:"A menacing black and dark blue. Great for sending deathsquads\nin style!",onClick:function(){return a("styleBlue")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Cult Pod",selected:6===c.styleChoice,tooltip:"A blood and rune covered cult pod!",onClick:function(){return a("styleCult")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Missile",selected:7===c.styleChoice,tooltip:"A large missile. Combos well with a missile mode, so the\nmissile doesnt stick around after landing.",onClick:function(){return a("styleMissile")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Syndicate Missile",selected:8===c.styleChoice,tooltip:"A large blood-red missile. Combos well with missile mode,\nso the missile doesnt stick around after landing.",onClick:function(){return a("styleSMissile")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Supply Crate",selected:9===c.styleChoice,tooltip:"A large, dark-green military supply crate.",onClick:function(){return a("styleBox")}}),(0,o.createComponentVNode)(2,i.Button,{content:"HONK",selected:10===c.styleChoice,tooltip:"A colorful, clown inspired look.",onClick:function(){return a("styleHONK")}}),(0,o.createComponentVNode)(2,i.Button,{content:"~Fruit",selected:11===c.styleChoice,tooltip:"For when an orange is angry",onClick:function(){return a("styleFruit")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Invisible",selected:12===c.styleChoice,tooltip:'Makes the supplypod invisible! Useful for when you want to\nuse this feature with a gateway or something. Combos well\nwith the "Stealth" and "Quiet Landing" effects.',onClick:function(){return a("styleInvisible")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Gondola",selected:13===c.styleChoice,tooltip:"This gondola can control when he wants to deliver his supplies\nif he has a smart enough mind, so offer up his body to ghosts\nfor maximum enjoyment. (Make sure to turn off bluespace and\nset an arbitrarily high open-time if you do!",onClick:function(){return a("styleGondola")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Show Contents (See Through Pod)",selected:14===c.styleChoice,tooltip:"By selecting this, the pod will instead look like whatevers\ninside it (as if it were the contents falling by themselves,\nwithout a pod). Useful for launching mechs at the station\nand standing tall as they soar in from the heavens.",onClick:function(){return a("styleSeeThrough")}})]})]})}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:c.numObjects+" turfs in "+c.bay,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{content:"undo Pod Bay",tooltip:"Manually undoes the possible things to launch in the\npod bay.",onClick:function(){return a("undo")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Enter Launch Mode",selected:c.giveLauncher,tooltip:"THE CODEX ASTARTES CALLS THIS MANEUVER: STEEL RAIN",onClick:function(){return a("giveLauncher")}}),(0,o.createComponentVNode)(2,i.Button,{content:"Clear Selected Bay",color:"bad",tooltip:"This will delete all objs and mobs from the selected bay.",tooltipPosition:"left",onClick:function(){return a("clearBay")}})],4)})})})],4)};t.CentcomPodLauncherContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.ChemAcclimator=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.ChemAcclimator=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:320,height:271,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Acclimator",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current Temperature",children:[l.chem_temp," K"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:l.target_temperature,unit:"K",width:"59px",minValue:0,maxValue:1e3,step:5,stepPixelSize:2,onChange:function(e,t){return c("set_target_temperature",{temperature:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Acceptable Temp. Difference",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:l.allowed_temperature_difference,unit:"K",width:"59px",minValue:1,maxValue:l.target_temperature,stepPixelSize:2,onChange:function(e,t){c("set_allowed_temperature_difference",{temperature:t})}})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"power-off",content:l.enabled?"On":"Off",selected:l.enabled,onClick:function(){return c("toggle_power")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Volume",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:l.max_volume,unit:"u",width:"50px",minValue:l.reagent_volume,maxValue:200,step:2,stepPixelSize:2,onChange:function(e,t){return c("change_volume",{volume:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current Operation",children:l.acclimate_state}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current State",children:l.emptying?"Emptying":"Filling"})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemDebugSynthesizer=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.ChemDebugSynthesizer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.amount,u=l.beakerCurrentVolume,s=l.beakerMaxVolume,p=l.isBeakerLoaded,m=l.beakerContents,f=void 0===m?[]:m;return(0,o.createComponentVNode)(2,a.Window,{width:390,height:330,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{title:"Recipient",buttons:p?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",onClick:function(){return c("ejectBeaker")}}),(0,o.createComponentVNode)(2,i.NumberInput,{value:d,unit:"u",minValue:1,maxValue:s,step:1,stepPixelSize:2,onChange:function(e,t){return c("amount",{amount:t})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"plus",content:"Input",onClick:function(){return c("input")}})],4):(0,o.createComponentVNode)(2,i.Button,{icon:"plus",content:"Create Beaker",onClick:function(){return c("makecup")}}),children:p?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:u})," / "+s+" u"]}),f.length>0?(0,o.createComponentVNode)(2,i.LabeledList,{children:f.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,children:[e.volume," u"]},e.name)}))}):(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Recipient Empty"})],0):(0,o.createComponentVNode)(2,i.Box,{color:"average",children:"No Recipient"})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemDispenser=void 0;var o=n(0),r=n(15),i=n(19),a=n(1),c=n(3),l=n(2);t.ChemDispenser=function(e,t){var n=(0,a.useBackend)(t),d=n.act,u=n.data,s=!!u.recordingRecipe,p=Object.keys(u.recipes).map((function(e){return{name:e,contents:u.recipes[e]}})),m=u.beakerTransferAmounts||[],f=s&&Object.keys(u.recordingRecipe).map((function(e){return{id:e,name:(0,i.toTitleCase)(e.replace(/_/," ")),volume:u.recordingRecipe[e]}}))||u.beakerContents||[];return(0,o.createComponentVNode)(2,l.Window,{width:565,height:620,resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,c.Section,{title:"Status",buttons:s&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,mx:1,color:"red",children:[(0,o.createComponentVNode)(2,c.Icon,{name:"circle",mr:1}),"Recording"]}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Energy",children:(0,o.createComponentVNode)(2,c.ProgressBar,{value:u.energy/u.maxEnergy,children:(0,r.toFixed)(u.energy)+" units"})})})}),(0,o.createComponentVNode)(2,c.Section,{title:"Recipes",buttons:(0,o.createFragment)([!s&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,mx:1,children:(0,o.createComponentVNode)(2,c.Button,{color:"transparent",content:"Clear recipes",onClick:function(){return d("clear_recipes")}})}),!s&&(0,o.createComponentVNode)(2,c.Button,{icon:"circle",disabled:!u.isBeakerLoaded,content:"Record",onClick:function(){return d("record_recipe")}}),s&&(0,o.createComponentVNode)(2,c.Button,{icon:"ban",color:"transparent",content:"Discard",onClick:function(){return d("cancel_recording")}}),s&&(0,o.createComponentVNode)(2,c.Button,{icon:"save",color:"green",content:"Save",onClick:function(){return d("save_recording")}})],0),children:(0,o.createComponentVNode)(2,c.Box,{mr:-1,children:[p.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:"tint",width:"129.5px",lineHeight:"21px",content:e.name,onClick:function(){return d("dispense_recipe",{recipe:e.name})}},e.name)})),0===p.length&&(0,o.createComponentVNode)(2,c.Box,{color:"light-gray",children:"No recipes."})]})}),(0,o.createComponentVNode)(2,c.Section,{title:"Dispense",buttons:m.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:"plus",selected:e===u.amount,content:e,onClick:function(){return d("amount",{target:e})}},e)})),children:(0,o.createComponentVNode)(2,c.Box,{mr:-1,children:u.chemicals.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:"tint",width:"129.5px",lineHeight:"21px",content:e.title,onClick:function(){return d("dispense",{reagent:e.id})}},e.id)}))})}),(0,o.createComponentVNode)(2,c.Section,{title:"Beaker",buttons:m.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:"minus",disabled:s,content:e,onClick:function(){return d("remove",{amount:e})}},e)})),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Beaker",buttons:!!u.isBeakerLoaded&&(0,o.createComponentVNode)(2,c.Button,{icon:"eject",content:"Eject",disabled:!u.isBeakerLoaded,onClick:function(){return d("eject")}}),children:(s?"Virtual beaker":u.isBeakerLoaded&&(0,o.createFragment)([(0,o.createComponentVNode)(2,c.AnimatedNumber,{initial:0,value:u.beakerCurrentVolume}),(0,o.createTextVNode)("/"),u.beakerMaxVolume,(0,o.createTextVNode)(" units")],0))||"No beaker"}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Contents",children:[(0,o.createComponentVNode)(2,c.Box,{color:"label",children:u.isBeakerLoaded||s?0===f.length&&"Nothing":"N/A"}),f.map((function(e){return(0,o.createComponentVNode)(2,c.Box,{color:"label",children:[(0,o.createComponentVNode)(2,c.AnimatedNumber,{initial:0,value:e.volume})," ","units of ",e.name]},e.name)}))]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemFilter=t.ChemFilterPane=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=function(e,t){var n=(0,r.useBackend)(t).act,a=e.title,c=e.list,l=e.reagentName,d=e.onReagentInput,u=a.toLowerCase();return(0,o.createComponentVNode)(2,i.Section,{title:a,minHeight:"240px",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Input,{placeholder:"Reagent",width:"140px",onInput:function(e,t){return d(t)}}),(0,o.createComponentVNode)(2,i.Button,{ml:1,icon:"plus",onClick:function(){return n("add",{which:u,name:l})}})],4),children:c.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"minus",content:e,onClick:function(){return n("remove",{which:u,reagent:e})}})],4,e)}))})};t.ChemFilterPane=c;t.ChemFilter=function(e,t){var n=(0,r.useBackend)(t),l=(n.act,n.data),d=l.left,u=void 0===d?[]:d,s=l.right,p=void 0===s?[]:s,m=(0,r.useLocalState)(t,"leftName",""),f=m[0],h=m[1],C=(0,r.useLocalState)(t,"rightName",""),g=C[0],b=C[1];return(0,o.createComponentVNode)(2,a.Window,{width:500,height:300,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,c,{title:"Left",list:u,reagentName:f,onReagentInput:function(e){return h(e)}})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,c,{title:"Right",list:p,reagentName:g,onReagentInput:function(e){return b(e)}})})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemHeater=void 0;var o=n(0),r=n(15),i=n(1),a=n(3),c=n(2),l=n(179);t.ChemHeater=function(e,t){var n=(0,i.useBackend)(t),d=n.act,u=n.data,s=u.targetTemp,p=u.isActive,m=u.isBeakerLoaded,f=u.currentTemp,h=u.beakerCurrentVolume,C=u.beakerMaxVolume,g=u.beakerContents,b=void 0===g?[]:g;return(0,o.createComponentVNode)(2,c.Window,{width:275,height:320,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Thermostat",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:p?"power-off":"times",selected:p,content:p?"On":"Off",onClick:function(){return d("power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target",children:(0,o.createComponentVNode)(2,a.NumberInput,{width:"65px",unit:"K",step:10,stepPixelSize:3,value:(0,r.round)(s),minValue:0,maxValue:1e3,onDrag:function(e,t){return d("temperature",{target:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Reading",children:(0,o.createComponentVNode)(2,a.Box,{width:"60px",textAlign:"right",children:m&&(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:f,format:function(e){return(0,r.toFixed)(e)+" K"}})||"\u2014"})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Beaker",buttons:!!m&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mr:2,children:[h," / ",C," units"]}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return d("eject")}})],4),children:(0,o.createComponentVNode)(2,l.BeakerContents,{beakerLoaded:m,beakerContents:b})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemMaster=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.ChemMaster=function(e,t){var n=(0,r.useBackend)(t).data.screen;return(0,o.createComponentVNode)(2,a.Window,{width:465,height:550,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:"analyze"===n&&(0,o.createComponentVNode)(2,p)||(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,u=c.screen,m=c.beakerContents,f=void 0===m?[]:m,h=c.bufferContents,C=void 0===h?[]:h,g=c.beakerCurrentVolume,b=c.beakerMaxVolume,N=c.isBeakerLoaded,v=c.isPillBottleLoaded,V=c.pillBottleCurrentAmount,y=c.pillBottleMaxAmount;return"analyze"===u?(0,o.createComponentVNode)(2,p):(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Beaker",buttons:!!c.isBeakerLoaded&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mr:2,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:g,initial:0})," / "+b+" units"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",onClick:function(){return a("eject")}})],4),children:[!N&&(0,o.createComponentVNode)(2,i.Box,{color:"label",mt:"3px",mb:"5px",children:"No beaker loaded."}),!!N&&0===f.length&&(0,o.createComponentVNode)(2,i.Box,{color:"label",mt:"3px",mb:"5px",children:"Beaker is empty."}),(0,o.createComponentVNode)(2,l,{children:f.map((function(e){return(0,o.createComponentVNode)(2,d,{chemical:e,transferTo:"buffer"},e.id)}))})]}),(0,o.createComponentVNode)(2,i.Section,{title:"Buffer",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mr:1,children:"Mode:"}),(0,o.createComponentVNode)(2,i.Button,{color:c.mode?"good":"bad",icon:c.mode?"exchange-alt":"times",content:c.mode?"Transfer":"Destroy",onClick:function(){return a("toggleMode")}})],4),children:[0===C.length&&(0,o.createComponentVNode)(2,i.Box,{color:"label",mt:"3px",mb:"5px",children:"Buffer is empty."}),(0,o.createComponentVNode)(2,l,{children:C.map((function(e){return(0,o.createComponentVNode)(2,d,{chemical:e,transferTo:"beaker"},e.id)}))})]}),(0,o.createComponentVNode)(2,i.Section,{title:"Packaging",children:(0,o.createComponentVNode)(2,s)}),!!v&&(0,o.createComponentVNode)(2,i.Section,{title:"Pill Bottle",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mr:2,children:[V," / ",y," pills"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",onClick:function(){return a("ejectPillBottle")}})],4)})],0)},l=i.Table,d=function(e,t){var n=(0,r.useBackend)(t).act,a=e.chemical,c=e.transferTo;return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{color:"label",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:a.volume,initial:0})," units of "+a.name]}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.Button,{content:"1",onClick:function(){return n("transfer",{id:a.id,amount:1,to:c})}}),(0,o.createComponentVNode)(2,i.Button,{content:"5",onClick:function(){return n("transfer",{id:a.id,amount:5,to:c})}}),(0,o.createComponentVNode)(2,i.Button,{content:"10",onClick:function(){return n("transfer",{id:a.id,amount:10,to:c})}}),(0,o.createComponentVNode)(2,i.Button,{content:"All",onClick:function(){return n("transfer",{id:a.id,amount:1e3,to:c})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"ellipsis-h",title:"Custom amount",onClick:function(){return n("transfer",{id:a.id,amount:-1,to:c})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"question",title:"Analyze",onClick:function(){return n("analyze",{id:a.id})}})]})]},a.id)},u=function(e){var t=e.label,n=e.amountUnit,r=e.amount,a=e.onChangeAmount,c=e.onCreate,l=e.sideNote;return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:t,children:[(0,o.createComponentVNode)(2,i.NumberInput,{width:"84px",unit:n,step:1,stepPixelSize:15,value:r,minValue:1,maxValue:10,onChange:a}),(0,o.createComponentVNode)(2,i.Button,{ml:1,content:"Create",onClick:c}),(0,o.createComponentVNode)(2,i.Box,{inline:!0,ml:1,color:"label",children:l})]})},s=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=(0,r.useSharedState)(t,"pillAmount",1),d=l[0],s=l[1],p=(0,r.useSharedState)(t,"patchAmount",1),m=p[0],f=p[1],h=(0,r.useSharedState)(t,"bottleAmount",1),C=h[0],g=h[1],b=(0,r.useSharedState)(t,"packAmount",1),N=b[0],v=b[1],V=c.condi,y=c.chosenPillStyle,k=c.pillStyles,x=void 0===k?[]:k;return(0,o.createComponentVNode)(2,i.LabeledList,{children:[!V&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pill type",children:x.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{width:"30px",selected:e.id===y,textAlign:"center",color:"transparent",onClick:function(){return a("pillStyle",{id:e.id})},children:(0,o.createComponentVNode)(2,i.Box,{mx:-1,className:e.className})},e.id)}))}),!V&&(0,o.createComponentVNode)(2,u,{label:"Pills",amount:d,amountUnit:"pills",sideNote:"max 50u",onChangeAmount:function(e,t){return s(t)},onCreate:function(){return a("create",{type:"pill",amount:d,volume:"auto"})}}),!V&&(0,o.createComponentVNode)(2,u,{label:"Patches",amount:m,amountUnit:"patches",sideNote:"max 40u",onChangeAmount:function(e,t){return f(t)},onCreate:function(){return a("create",{type:"patch",amount:m,volume:"auto"})}}),!V&&(0,o.createComponentVNode)(2,u,{label:"Bottles",amount:C,amountUnit:"bottles",sideNote:"max 30u",onChangeAmount:function(e,t){return g(t)},onCreate:function(){return a("create",{type:"bottle",amount:C,volume:"auto"})}}),!!V&&(0,o.createComponentVNode)(2,u,{label:"Packs",amount:N,amountUnit:"packs",sideNote:"max 10u",onChangeAmount:function(e,t){return v(t)},onCreate:function(){return a("create",{type:"condimentPack",amount:N,volume:"auto"})}}),!!V&&(0,o.createComponentVNode)(2,u,{label:"Bottles",amount:C,amountUnit:"bottles",sideNote:"max 50u",onChangeAmount:function(e,t){return g(t)},onCreate:function(){return a("create",{type:"condimentBottle",amount:C,volume:"auto"})}})]})},p=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data.analyzeVars;return(0,o.createComponentVNode)(2,i.Section,{title:"Analysis Results",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"arrow-left",content:"Back",onClick:function(){return a("goScreen",{screen:"home"})}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Name",children:c.name}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"State",children:c.state}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Color",children:[(0,o.createComponentVNode)(2,i.ColorBox,{color:c.color,mr:1}),c.color]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:c.description}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Metabolization Rate",children:[c.metaRate," u/minute"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Overdose Threshold",children:c.overD}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Addiction Threshold",children:c.addicD})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemPress=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.ChemPress=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.current_volume,u=l.product_name,s=l.pill_style,p=l.pill_styles,m=void 0===p?[]:p,f=l.product,h=l.min_volume,C=l.max_volume;return(0,o.createComponentVNode)(2,a.Window,{width:300,height:227,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Product",children:[(0,o.createComponentVNode)(2,i.Button.Checkbox,{content:"Pills",checked:"pill"===f,onClick:function(){return c("change_product",{product:"pill"})}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{content:"Patches",checked:"patch"===f,onClick:function(){return c("change_product",{product:"patch"})}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{content:"Bottles",checked:"bottle"===f,onClick:function(){return c("change_product",{product:"bottle"})}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Volume",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:d,unit:"u",width:"43px",minValue:h,maxValue:C,step:1,stepPixelSize:2,onChange:function(e,t){return c("change_current_volume",{volume:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Name",children:[(0,o.createComponentVNode)(2,i.Input,{value:u,placeholder:u,onChange:function(e,t){return c("change_product_name",{name:t})}}),(0,o.createComponentVNode)(2,i.Box,{as:"span",children:f})]}),"pill"===f&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Style",children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{width:"30px",selected:e.id===s,textAlign:"center",color:"transparent",onClick:function(){return c("change_pill_style",{id:e.id})},children:(0,o.createComponentVNode)(2,i.Box,{mx:-1,className:e.class_name})},e.id)}))})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemReactionChamber=void 0;var o=n(0),r=n(18),i=n(6),a=n(1),c=n(3),l=n(2);t.ChemReactionChamber=function(e,t){var n=(0,a.useBackend)(t),d=n.act,u=n.data,s=(0,a.useLocalState)(t,"reagentName",""),p=s[0],m=s[1],f=(0,a.useLocalState)(t,"reagentQuantity",1),h=f[0],C=f[1],g=u.emptying,b=u.reagents||[];return(0,o.createComponentVNode)(2,l.Window,{width:250,height:225,resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c.Section,{title:"Reagents",buttons:(0,o.createComponentVNode)(2,c.Box,{inline:!0,bold:!0,color:g?"bad":"good",children:g?"Emptying":"Filling"}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createVNode)(1,"tr","LabledList__row",[(0,o.createVNode)(1,"td","LabeledList__cell",(0,o.createComponentVNode)(2,c.Input,{fluid:!0,value:"",placeholder:"Reagent Name",onInput:function(e,t){return m(t)}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td",(0,i.classes)(["LabeledList__buttons","LabeledList__cell"]),[(0,o.createComponentVNode)(2,c.NumberInput,{value:h,minValue:1,maxValue:100,step:1,stepPixelSize:3,width:"39px",onDrag:function(e,t){return C(t)}}),(0,o.createComponentVNode)(2,c.Box,{inline:!0,mr:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"plus",onClick:function(){return d("add",{chem:p,amount:h})}})],4)],4),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:t,buttons:(0,o.createComponentVNode)(2,c.Button,{icon:"minus",color:"bad",onClick:function(){return d("remove",{chem:t})}}),children:e},t)}))(b)]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSplitter=void 0;var o=n(0),r=n(15),i=n(1),a=n(3),c=n(2);t.ChemSplitter=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data,u=d.straight,s=d.side,p=d.max_transfer;return(0,o.createComponentVNode)(2,c.Window,{width:220,height:105,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Straight",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:u,unit:"u",width:"55px",minValue:1,maxValue:p,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return l("set_amount",{target:"straight",amount:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Side",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:s,unit:"u",width:"55px",minValue:1,maxValue:p,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return l("set_amount",{target:"side",amount:t})}})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSynthesizer=void 0;var o=n(0),r=n(15),i=n(1),a=n(3),c=n(2);t.ChemSynthesizer=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data,u=d.amount,s=d.current_reagent,p=d.chemicals,m=void 0===p?[]:p,f=d.possible_amounts,h=void 0===f?[]:f;return(0,o.createComponentVNode)(2,c.Window,{width:300,height:375,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{children:h.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:(0,r.toFixed)(e,0),selected:e===u,onClick:function(){return l("amount",{target:e})}},(0,r.toFixed)(e,0))}))}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:m.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:"tint",content:e.title,width:"129px",selected:e.id===s,onClick:function(){return l("select",{reagent:e.id})}},e.id)}))})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CodexGigas=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=["Dark","Hellish","Fallen","Fiery","Sinful","Blood","Fluffy"],l=["Lord","Prelate","Count","Viscount","Vizier","Elder","Adept"],d=["hal","ve","odr","neit","ci","quon","mya","folth","wren","geyr","hil","niet","twou","phi","coa"],u=["the Red","the Soulless","the Master","the Lord of all things","Jr."];t.CodexGigas=function(e,t){var n=(0,r.useBackend)(t),s=n.act,p=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:450,height:450,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:[p.name,(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Prefix",children:c.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{content:e,disabled:1!==p.currentSection,onClick:function(){return s(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Title",children:l.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{content:e,disabled:p.currentSection>2,onClick:function(){return s(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Name",children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{content:e,disabled:p.currentSection>4,onClick:function(){return s(e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Suffix",children:u.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{content:e,disabled:4!==p.currentSection,onClick:function(){return s(" "+e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Submit",children:(0,o.createComponentVNode)(2,i.Button,{content:"Search",disabled:p.currentSection<4,onClick:function(){return s("search")}})})]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ComputerFabricator=void 0;var o=n(0),r=(n(19),n(1)),i=n(3),a=n(2);t.ComputerFabricator=function(e,t){var n=(0,r.useBackend)(t),s=n.act,p=n.data;return(0,o.createComponentVNode)(2,a.Window,{title:"Personal Computer Vendor",width:500,height:400,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{italic:!0,fontSize:"20px",children:"Your perfect device, only three steps away..."}),0!==p.state&&(0,o.createComponentVNode)(2,i.Button,{fluid:!0,mb:1,icon:"circle",content:"Clear Order",onClick:function(){return s("clean_order")}}),0===p.state&&(0,o.createComponentVNode)(2,c),1===p.state&&(0,o.createComponentVNode)(2,l),2===p.state&&(0,o.createComponentVNode)(2,d),3===p.state&&(0,o.createComponentVNode)(2,u)]})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act;n.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Step 1",minHeight:"306px",children:[(0,o.createComponentVNode)(2,i.Box,{mt:5,bold:!0,textAlign:"center",fontSize:"40px",children:"Choose your Device"}),(0,o.createComponentVNode)(2,i.Box,{mt:3,children:(0,o.createComponentVNode)(2,i.Grid,{width:"100%",children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"laptop",content:"Laptop",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return a("pick_device",{pick:"1"})}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"tablet-alt",content:"Tablet",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return a("pick_device",{pick:"2"})}})})]})})]})},l=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Step 2: Customize your device",minHeight:"282px",buttons:(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"good",children:[c.totalprice," cr"]}),children:[(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,position:"relative",children:["Battery:",(0,o.createComponentVNode)(2,i.Tooltip,{content:"Allows your device to operate without external utility power\nsource. Advanced batteries increase battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Standard",selected:1===c.hw_battery,onClick:function(){return a("hw_battery",{battery:"1"})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Upgraded",selected:2===c.hw_battery,onClick:function(){return a("hw_battery",{battery:"2"})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Advanced",selected:3===c.hw_battery,onClick:function(){return a("hw_battery",{battery:"3"})}})})]}),(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,position:"relative",children:["Hard Drive:",(0,o.createComponentVNode)(2,i.Tooltip,{content:"Stores file on your device. Advanced drives can store more\nfiles, but use more power, shortening battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Standard",selected:1===c.hw_disk,onClick:function(){return a("hw_disk",{disk:"1"})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Upgraded",selected:2===c.hw_disk,onClick:function(){return a("hw_disk",{disk:"2"})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Advanced",selected:3===c.hw_disk,onClick:function(){return a("hw_disk",{disk:"3"})}})})]}),(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,position:"relative",children:["Network Card:",(0,o.createComponentVNode)(2,i.Tooltip,{content:"Allows your device to wirelessly connect to stationwide NTNet\nnetwork. Basic cards are limited to on-station use, while\nadvanced cards can operate anywhere near the station, which\nincludes asteroid outposts",position:"right"})]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"None",selected:0===c.hw_netcard,onClick:function(){return a("hw_netcard",{netcard:"0"})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Standard",selected:1===c.hw_netcard,onClick:function(){return a("hw_netcard",{netcard:"1"})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Advanced",selected:2===c.hw_netcard,onClick:function(){return a("hw_netcard",{netcard:"2"})}})})]}),(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,position:"relative",children:["Nano Printer:",(0,o.createComponentVNode)(2,i.Tooltip,{content:"A device that allows for various paperwork manipulations,\nsuch as, scanning of documents or printing new ones.\nThis device was certified EcoFriendlyPlus and is capable of\nrecycling existing paper for printing purposes.",position:"right"})]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"None",selected:0===c.hw_nanoprint,onClick:function(){return a("hw_nanoprint",{print:"0"})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Standard",selected:1===c.hw_nanoprint,onClick:function(){return a("hw_nanoprint",{print:"1"})}})})]}),(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,position:"relative",children:["Card Reader:",(0,o.createComponentVNode)(2,i.Tooltip,{content:"Adds a slot that allows you to manipulate RFID cards.\nPlease note that this is not necessary to allow the device\nto read your identification, it is just necessary to\nmanipulate other cards.",position:"right"})]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"None",selected:0===c.hw_card,onClick:function(){return a("hw_card",{card:"0"})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Standard",selected:1===c.hw_card,onClick:function(){return a("hw_card",{card:"1"})}})})]}),2!==c.devtype&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,position:"relative",children:["Processor Unit:",(0,o.createComponentVNode)(2,i.Tooltip,{content:"A component critical for your device's functionality.\nIt allows you to run programs from your hard drive.\nAdvanced CPUs use more power, but allow you to run\nmore programs on background at once.",position:"right"})]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Standard",selected:1===c.hw_cpu,onClick:function(){return a("hw_cpu",{cpu:"1"})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Advanced",selected:2===c.hw_cpu,onClick:function(){return a("hw_cpu",{cpu:"2"})}})})]}),(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,position:"relative",children:["Tesla Relay:",(0,o.createComponentVNode)(2,i.Tooltip,{content:"An advanced wireless power relay that allows your device\nto connect to nearby area power controller to provide\nalternative power source. This component is currently\nunavailable on tablet computers due to size restrictions.",position:"right"})]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"None",selected:0===c.hw_tesla,onClick:function(){return a("hw_tesla",{tesla:"0"})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Standard",selected:1===c.hw_tesla,onClick:function(){return a("hw_tesla",{tesla:"1"})}})})]})],4)]}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,mt:3,content:"Confirm Order",color:"good",textAlign:"center",fontSize:"18px",lineHeight:"26px",onClick:function(){return a("confirm_order")}})]})},d=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Step 3: Payment",minHeight:"282px",children:[(0,o.createComponentVNode)(2,i.Box,{italic:!0,textAlign:"center",fontSize:"20px",children:"Your device is ready for fabrication..."}),(0,o.createComponentVNode)(2,i.Box,{bold:!0,mt:2,textAlign:"center",fontSize:"16px",children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,children:"Please insert the required"})," ",(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"good",children:[c.totalprice," cr"]})]}),(0,o.createComponentVNode)(2,i.Box,{bold:!0,mt:1,textAlign:"center",fontSize:"18px",children:"Current:"}),(0,o.createComponentVNode)(2,i.Box,{bold:!0,mt:.5,textAlign:"center",fontSize:"18px",color:c.credits>=c.totalprice?"good":"bad",children:[c.credits," cr"]}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Purchase",disabled:c.credits<c.totalprice,mt:8,color:"good",textAlign:"center",fontSize:"20px",lineHeight:"28px",onClick:function(){return a("purchase")}})]})},u=function(e,t){return(0,o.createComponentVNode)(2,i.Section,{minHeight:"282px",children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"28px",mt:10,children:"Thank you for your purchase!"}),(0,o.createComponentVNode)(2,i.Box,{italic:!0,mt:1,textAlign:"center",children:"If you experience any difficulties with your new device, please contact your local network administrator."})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Crayon=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Crayon=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.has_cap||l.can_change_colour,u=l.drawables||[];return(0,o.createComponentVNode)(2,a.Window,{width:600,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[!!d&&(0,o.createComponentVNode)(2,i.Section,{title:"Basic",children:[(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Cap",children:(0,o.createComponentVNode)(2,i.Button,{icon:l.is_capped?"power-off":"times",content:l.is_capped?"On":"Off",selected:l.is_capped,onClick:function(){return c("toggle_cap")}})})}),(0,o.createComponentVNode)(2,i.Button,{content:"Select New Color",onClick:function(){return c("select_colour")}})]}),(0,o.createComponentVNode)(2,i.Section,{title:"Stencil",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:u.map((function(e){var t=e.items||[];return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,children:t.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{content:e.item,selected:e.item===l.selected_stencil,onClick:function(){return c("select_stencil",{item:e.item})}},e.item)}))},e.name)}))})}),(0,o.createComponentVNode)(2,i.Section,{title:"Text",children:[(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current Buffer",children:l.text_buffer})}),(0,o.createComponentVNode)(2,i.Button,{content:"New Text",onClick:function(){return c("enter_text")}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.CrewConsole=void 0;var o=n(0),r=n(1),i=n(3),a=n(38),c=n(2),l=["#17d568","#2ecc71","#e67e22","#ed5100","#e74c3c","#ed2814"],d=function(e){return 0===e?a.COLORS.department.captain:e>=10&&e<20?a.COLORS.department.security:e>=20&&e<30?a.COLORS.department.medbay:e>=30&&e<40?a.COLORS.department.science:e>=40&&e<50?a.COLORS.department.engineering:e>=50&&e<60?a.COLORS.department.cargo:e>=200&&e<230?a.COLORS.department.centcom:a.COLORS.department.other},u=function(e){var t=e.type,n=e.value;return(0,o.createComponentVNode)(2,i.Box,{inline:!0,width:2,color:a.COLORS.damageType[t],textAlign:"center",children:n})};t.CrewConsole=function(){return(0,o.createComponentVNode)(2,c.Window,{title:"Crew Monitor",width:800,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{minHeight:"540px",children:(0,o.createComponentVNode)(2,s)})})})};var s=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,s=c.sensors||[];return(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,children:"Name"}),(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,collapsing:!0}),(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,collapsing:!0,textAlign:"center",children:"Vitals"}),(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,children:"Position"}),!!c.link_allowed&&(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,collapsing:!0,children:"Tracking"})]}),s.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:(f=e.ijob,f%10==0),color:d(e.ijob),children:[e.name," (",e.assignment,")"]}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"center",children:(0,o.createComponentVNode)(2,i.ColorBox,{color:(t=e.oxydam,n=e.toxdam,r=e.burndam,s=e.brutedam,p=t+n+r+s,m=Math.min(Math.max(Math.ceil(p/25),0),5),l[m])})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"center",children:null!==e.oxydam?(0,o.createComponentVNode)(2,i.Box,{inline:!0,children:[(0,o.createComponentVNode)(2,u,{type:"oxy",value:e.oxydam}),"/",(0,o.createComponentVNode)(2,u,{type:"toxin",value:e.toxdam}),"/",(0,o.createComponentVNode)(2,u,{type:"burn",value:e.burndam}),"/",(0,o.createComponentVNode)(2,u,{type:"brute",value:e.brutedam})]}):e.life_status?"Alive":"Dead"}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:null!==e.pos_x?e.area:"N/A"}),!!c.link_allowed&&(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,i.Button,{content:"Track",disabled:!e.can_track,onClick:function(){return a("select_person",{name:e.name})}})})]},e.name);var t,n,r,s,p,m,f}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Cryo=void 0;var o=n(0),r=n(1),i=n(3),a=n(179),c=n(2),l=[{label:"Brute",type:"bruteLoss"},{label:"Respiratory",type:"oxyLoss"},{label:"Toxin",type:"toxLoss"},{label:"Burn",type:"fireLoss"}];t.Cryo=function(){return(0,o.createComponentVNode)(2,c.Window,{width:400,height:550,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,d)})})};var d=function(e,t){var n=(0,r.useBackend)(t),c=n.act,d=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Occupant",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Occupant",children:d.occupant.name||"No Occupant"}),!!d.hasOccupant&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"State",color:d.occupant.statstate,children:d.occupant.stat}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Temperature",color:d.occupant.temperaturestatus,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:d.occupant.bodyTemperature})," K"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:d.occupant.health/d.occupant.maxHealth,color:d.occupant.health>0?"good":"average",children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:d.occupant.health})})}),l.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:d.occupant[e.type]/100,children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:d.occupant[e.type]})})},e.id)}))],0)]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Cell",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,i.Button,{icon:d.isOperating?"power-off":"times",disabled:d.isOpen,onClick:function(){return c("power")},color:d.isOperating&&"green",children:d.isOperating?"On":"Off"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:d.cellTemperature})," K"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Door",children:[(0,o.createComponentVNode)(2,i.Button,{icon:d.isOpen?"unlock":"lock",onClick:function(){return c("door")},content:d.isOpen?"Open":"Closed"}),(0,o.createComponentVNode)(2,i.Button,{icon:d.autoEject?"sign-out-alt":"sign-in-alt",onClick:function(){return c("autoeject")},content:d.autoEject?"Auto":"Manual"})]})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Beaker",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",disabled:!d.isBeakerLoaded,onClick:function(){return c("ejectbeaker")},content:"Eject"}),children:(0,o.createComponentVNode)(2,a.BeakerContents,{beakerLoaded:d.isBeakerLoaded,beakerContents:d.beakerContents})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.DecalPainter=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.DecalPainter=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.decal_list||[],u=l.color_list||[],s=l.dir_list||[];return(0,o.createComponentVNode)(2,a.Window,{width:500,height:400,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Decal Type",children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{content:e.name,selected:e.decal===l.decal_style,onClick:function(){return c("select decal",{decals:e.decal})}},e.decal)}))}),(0,o.createComponentVNode)(2,i.Section,{title:"Decal Color",children:u.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{content:"red"===e.colors?"Red":"white"===e.colors?"White":"Yellow",selected:e.colors===l.decal_color,onClick:function(){return c("select color",{colors:e.colors})}},e.colors)}))}),(0,o.createComponentVNode)(2,i.Section,{title:"Decal Direction",children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{content:1===e.dirs?"North":2===e.dirs?"South":4===e.dirs?"East":"West",selected:e.dirs===l.decal_direction,onClick:function(){return c("selected direction",{dirs:e.dirs})}},e.dirs)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.DisposalUnit=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.DisposalUnit=function(e,t){var n,c,l=(0,r.useBackend)(t),d=l.act,u=l.data;return u.full_pressure?(n="good",c="Ready"):u.panel_open?(n="bad",c="Power Disabled"):u.pressure_charging?(n="average",c="Pressurizing"):(n="bad",c="Off"),(0,o.createComponentVNode)(2,a.Window,{width:300,height:180,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"State",color:n,children:c}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:u.per,color:"good"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Handle",children:(0,o.createComponentVNode)(2,i.Button,{icon:u.flush?"toggle-on":"toggle-off",disabled:u.isai||u.panel_open,content:u.flush?"Disengage":"Engage",onClick:function(){return d(u.flush?"handle-0":"handle-1")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Eject",children:(0,o.createComponentVNode)(2,i.Button,{icon:"sign-out-alt",disabled:u.isai,content:"Eject Contents",onClick:function(){return d("eject")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,i.Button,{icon:"power-off",disabled:u.panel_open,selected:u.pressure_charging,onClick:function(){return d(u.pressure_charging?"pump-0":"pump-1")}})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.DnaConsoleCommands=t.DnaConsole=void 0;var o=n(0),r=n(18),i=n(33),a=n(6),c=n(19),l=n(1),d=n(3),u=n(2);var s=["A","T","C","G"],p={A:"green",T:"green",G:"blue",C:"blue",X:"grey"},m={1:"good",2:"bad",4:"average"},f=function(e,t){return e.Alias===t.Alias&&e.AppliedChromo===t.AppliedChromo};t.DnaConsole=function(e,t){var n=(0,l.useBackend)(t),r=n.data,i=(n.act,r.isPulsingRads),a=r.radPulseSeconds,c=r.view.consoleMode;return(0,o.createComponentVNode)(2,u.Window,{title:"DNA Console",width:539,height:710,resizable:!0,children:[!!i&&(0,o.createComponentVNode)(2,d.Dimmer,{fontSize:"14px",textAlign:"center",children:[(0,o.createComponentVNode)(2,d.Icon,{mr:1,name:"spinner",spin:!0}),"Radiation pulse in progress...",(0,o.createComponentVNode)(2,d.Box,{mt:1}),a,"s"]}),(0,o.createComponentVNode)(2,u.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,h),(0,o.createComponentVNode)(2,N),"storage"===c&&(0,o.createComponentVNode)(2,V),"sequencer"===c&&(0,o.createComponentVNode)(2,w),"enzymes"===c&&(0,o.createComponentVNode)(2,I)]})]})};var h=function(e,t){return(0,o.createComponentVNode)(2,d.Section,{title:"DNA Scanner",buttons:(0,o.createComponentVNode)(2,C),children:(0,o.createComponentVNode)(2,b)})},C=function(e,t){var n=(0,l.useBackend)(t),r=n.data,i=n.act,a=r.hasDelayedAction,c=r.isPulsingRads,u=r.isScannerConnected,s=r.isScrambleReady,p=r.isViableSubject,m=r.scannerLocked,f=r.scannerOpen,h=r.scrambleSeconds;return u?(0,o.createFragment)([!!a&&(0,o.createComponentVNode)(2,d.Button,{content:"Cancel Delayed Action",onClick:function(){return i("cancel_delay")}}),!!p&&(0,o.createComponentVNode)(2,d.Button,{disabled:!s||c,onClick:function(){return i("scramble_dna")},children:["Scramble DNA",!s&&" ("+h+"s)"]}),(0,o.createComponentVNode)(2,d.Box,{inline:!0,mr:1}),(0,o.createComponentVNode)(2,d.Button,{icon:m?"lock":"lock-open",color:m&&"bad",disabled:f,content:m?"Locked":"Unlocked",onClick:function(){return i("toggle_lock")}}),(0,o.createComponentVNode)(2,d.Button,{disabled:m,content:f?"Close":"Open",onClick:function(){return i("toggle_door")}})],0):(0,o.createComponentVNode)(2,d.Button,{content:"Connect Scanner",onClick:function(){return i("connect_scanner")}})},g=function(e,t){var n=e.status;return 0===n?(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:"good",children:"Conscious"}):2===n?(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:"average",children:"Unconscious"}):1===n?(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:"average",children:"Critical"}):3===n?(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:"bad",children:"Dead"}):4===n?(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:"bad",children:"Transforming"}):(0,o.createComponentVNode)(2,d.Box,{inline:!0,children:"Unknown"})},b=function(e,t){var n=(0,l.useBackend)(t),r=n.data,i=(n.act,r.subjectName),a=r.isScannerConnected,c=r.isViableSubject,u=r.subjectHealth,s=r.subjectRads,p=r.subjectStatus;return a?c?(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Status",children:[i,(0,o.createComponentVNode)(2,d.Icon,{mx:1,color:"label",name:"long-arrow-alt-right"}),(0,o.createComponentVNode)(2,g,{status:p})]}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,d.ProgressBar,{value:u,minValue:0,maxValue:100,ranges:{olive:[101,Infinity],good:[70,101],average:[30,70],bad:[-Infinity,30]},children:[u,"%"]})}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Radiation",children:(0,o.createComponentVNode)(2,d.ProgressBar,{value:s,minValue:0,maxValue:100,ranges:{bad:[71,Infinity],average:[30,71],good:[0,30],olive:[-Infinity,0]},children:[s,"%"]})})]}):(0,o.createComponentVNode)(2,d.Box,{color:"average",children:"No viable subject found in DNA Scanner."}):(0,o.createComponentVNode)(2,d.Box,{color:"bad",children:"DNA Scanner is not connected."})},N=function(e,t){var n=(0,l.useBackend)(t),r=n.data,i=n.act,a=r.hasDisk,c=r.isInjectorReady,u=r.injectorSeconds,s=r.view.consoleMode;return(0,o.createComponentVNode)(2,d.Section,{title:"DNA Console",buttons:!c&&(0,o.createComponentVNode)(2,d.Box,{lineHeight:"20px",color:"label",children:["Injector on cooldown (",u,"s)"]}),children:(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Mode",children:[(0,o.createComponentVNode)(2,d.Button,{content:"Storage",selected:"storage"===s,onClick:function(){return i("set_view",{consoleMode:"storage"})}}),(0,o.createComponentVNode)(2,d.Button,{content:"Sequencer",disabled:!r.isViableSubject,selected:"sequencer"===s,onClick:function(){return i("set_view",{consoleMode:"sequencer"})}}),(0,o.createComponentVNode)(2,d.Button,{content:"Enzymes",selected:"enzymes"===s,onClick:function(){return i("set_view",{consoleMode:"enzymes"})}})]}),!!a&&(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Disk",children:(0,o.createComponentVNode)(2,d.Button,{icon:"eject",content:"Eject",onClick:function(){i("eject_disk"),i("set_view",{storageMode:"console"})}})})]})})};t.DnaConsoleCommands=N;var v=function(e,t){var n=(0,l.useBackend)(t),r=n.data,i=n.act,a=r.hasDisk,c=r.view,u=c.storageMode,s=c.storageConsSubMode,p=c.storageDiskSubMode;return(0,o.createFragment)(["console"===u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Button,{selected:"mutations"===s,content:"Mutations",onClick:function(){return i("set_view",{storageConsSubMode:"mutations"})}}),(0,o.createComponentVNode)(2,d.Button,{selected:"chromosomes"===s,content:"Chromosomes",onClick:function(){return i("set_view",{storageConsSubMode:"chromosomes"})}})],4),"disk"===u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Button,{selected:"mutations"===p,content:"Mutations",onClick:function(){return i("set_view",{storageDiskSubMode:"mutations"})}}),(0,o.createComponentVNode)(2,d.Button,{selected:"diskenzymes"===p,content:"Enzymes",onClick:function(){return i("set_view",{storageDiskSubMode:"diskenzymes"})}})],4),(0,o.createComponentVNode)(2,d.Box,{inline:!0,mr:1}),(0,o.createComponentVNode)(2,d.Button,{content:"Console",selected:"console"===u,onClick:function(){return i("set_view",{storageMode:"console",storageConsSubMode:"mutations"})}}),(0,o.createComponentVNode)(2,d.Button,{content:"Disk",disabled:!a,selected:"disk"===u,onClick:function(){return i("set_view",{storageMode:"disk",storageDiskSubMode:"mutations"})}}),(0,o.createComponentVNode)(2,d.Button,{content:"Adv. Injector",selected:"injector"===u,onClick:function(){return i("set_view",{storageMode:"injector"})}})],0)},V=function(e,t){var n=(0,l.useBackend)(t),r=n.data,i=n.act,a=r.view,c=a.storageMode,u=a.storageConsSubMode,s=a.storageDiskSubMode,p=r.diskMakeupBuffer,m=r.diskHasMakeup,f=r.storage[c];return(0,o.createComponentVNode)(2,d.Section,{title:"Storage",buttons:(0,o.createComponentVNode)(2,v),children:["console"===c&&"mutations"===u&&(0,o.createComponentVNode)(2,y,{mutations:f}),"console"===c&&"chromosomes"===u&&(0,o.createComponentVNode)(2,k),"disk"===c&&"mutations"===s&&(0,o.createComponentVNode)(2,y,{mutations:f}),"disk"===c&&"diskenzymes"===s&&(0,o.createFragment)([(0,o.createComponentVNode)(2,P,{makeup:p}),(0,o.createComponentVNode)(2,d.Button,{icon:"times",color:"red",disabled:!m,content:"Delete",onClick:function(){return i("del_makeup_disk")}})],4),"injector"===c&&(0,o.createComponentVNode)(2,O)]})},y=function(e,t){var n=e.customMode,r=void 0===n?"":n,i=(0,l.useBackend)(t),a=i.data,u=i.act,s=e.mutations||[],p=a.view.storageMode+r,m=a.view["storage"+p+"MutationRef"],f=s.find((function(e){return e.ByondRef===m}));return!f&&s.length>0&&(f=s[0],m=f.ByondRef),(0,o.createComponentVNode)(2,d.Flex,{children:[(0,o.createComponentVNode)(2,d.Flex.Item,{width:"140px",children:(0,o.createComponentVNode)(2,d.Section,{title:(0,c.capitalize)(a.view.storageMode)+" Storage",level:2,children:s.map((function(e){return(0,o.createComponentVNode)(2,d.Button,{fluid:!0,ellipsis:!0,color:"transparent",selected:e.ByondRef===m,content:e.Name,onClick:function(){var t;return u("set_view",((t={})["storage"+p+"MutationRef"]=e.ByondRef,t))}},e.ByondRef)}))})}),(0,o.createComponentVNode)(2,d.Flex.Item,{children:(0,o.createComponentVNode)(2,d.Divider,{vertical:!0})}),(0,o.createComponentVNode)(2,d.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,d.Section,{title:"Mutation Info",level:2,children:(0,o.createComponentVNode)(2,x,{mutation:f})})})]})},k=function(e,t){var n,i=(0,l.useBackend)(t),a=i.data,c=i.act,u=null!=(n=a.chromoStorage)?n:[],s=(0,r.uniqBy)((function(e){return e.Name}))(u),p=a.view.storageChromoName,m=u.find((function(e){return e.Name===p}));return(0,o.createComponentVNode)(2,d.Flex,{children:[(0,o.createComponentVNode)(2,d.Flex.Item,{width:"140px",children:(0,o.createComponentVNode)(2,d.Section,{title:"Console Storage",level:2,children:s.map((function(e){return(0,o.createComponentVNode)(2,d.Button,{fluid:!0,ellipsis:!0,color:"transparent",selected:e.Name===p,content:e.Name,onClick:function(){return c("set_view",{storageChromoName:e.Name})}},e.Index)}))})}),(0,o.createComponentVNode)(2,d.Flex.Item,{children:(0,o.createComponentVNode)(2,d.Divider,{vertical:!0})}),(0,o.createComponentVNode)(2,d.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,d.Section,{title:"Chromosome Info",level:2,children:!m&&(0,o.createComponentVNode)(2,d.Box,{color:"label",children:"Nothing to show."})||(0,o.createFragment)([(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Name",children:m.Name}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Description",children:m.Description}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Amount",children:u.filter((function(e){return e.Name===m.Name})).length})]}),(0,o.createComponentVNode)(2,d.Button,{mt:2,icon:"eject",content:"Eject Chromosome",onClick:function(){return c("eject_chromo",{chromo:m.Name})}})],4)})})]})},x=function(e,t){var n,a,c,u=e.mutation,s=(0,l.useBackend)(t),p=s.data,h=s.act,C=p.diskCapacity,g=p.diskReadOnly,b=p.hasDisk,N=p.isInjectorReady,v=null!=(n=p.storage.disk)?n:[],V=null!=(a=p.storage.console)?a:[],y=null!=(c=p.storage.injector)?c:[];if(!u)return(0,o.createComponentVNode)(2,d.Box,{color:"label",children:"Nothing to show."});if("occupant"===u.Source&&!u.Discovered)return(0,o.createComponentVNode)(2,d.LabeledList,{children:(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Name",children:u.Alias})});var k=V.find((function(e){return f(e,u)})),x=v.find((function(e){return f(e,u)})),w=(0,i.flow)([(0,r.uniqBy)((function(e){return e.Name})),(0,r.filter)((function(e){return e.Name!==u.Name}))])([].concat(v,V));return(0,o.createFragment)([(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Name",children:(0,o.createComponentVNode)(2,d.Box,{inline:!0,color:m[u.Quality],children:u.Name})}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Description",children:u.Description}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Instability",children:u.Instability})]}),(0,o.createComponentVNode)(2,d.Divider),(0,o.createComponentVNode)(2,d.Box,{children:["disk"===u.Source&&(0,o.createComponentVNode)(2,j,{disabled:!b||C<=0||g,mutations:w,source:u}),"console"===u.Source&&(0,o.createComponentVNode)(2,j,{mutations:w,source:u}),["occupant","disk","console"].includes(u.Source)&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Dropdown,{width:"240px",options:y.map((function(e){return e.name})),disabled:0===y.length||!u.Active,selected:"Add to advanced injector",onSelected:function(e){return h("add_advinj_mut",{mutref:u.ByondRef,advinj:e,source:u.Source})}}),(0,o.createComponentVNode)(2,d.Button,{icon:"syringe",disabled:!N||!u.Active,content:"Print Activator",onClick:function(){return h("print_injector",{mutref:u.ByondRef,is_activator:1,source:u.Source})}}),(0,o.createComponentVNode)(2,d.Button,{icon:"syringe",disabled:!N||!u.Active,content:"Print Mutator",onClick:function(){return h("print_injector",{mutref:u.ByondRef,is_activator:0,source:u.Source})}})],4)]}),["disk","occupant"].includes(u.Source)&&(0,o.createComponentVNode)(2,d.Button,{icon:"save",disabled:k||!u.Active,content:"Save to Console",onClick:function(){return h("save_console",{mutref:u.ByondRef,source:u.Source})}}),["console","occupant"].includes(u.Source)&&(0,o.createComponentVNode)(2,d.Button,{icon:"save",disabled:x||!b||C<=0||g||!u.Active,content:"Save to Disk",onClick:function(){return h("save_disk",{mutref:u.ByondRef,source:u.Source})}}),["console","disk","injector"].includes(u.Source)&&(0,o.createComponentVNode)(2,d.Button,{icon:"times",color:"red",content:"Delete from "+u.Source,onClick:function(){return h("delete_"+u.Source+"_mut",{mutref:u.ByondRef})}}),(2===u.Class||!!u.Scrambled&&"occupant"===u.Source)&&(0,o.createComponentVNode)(2,d.Button,{content:"Nullify",onClick:function(){return h("nullify",{mutref:u.ByondRef})}}),(0,o.createComponentVNode)(2,d.Divider),(0,o.createComponentVNode)(2,_,{disabled:"occupant"!==u.Source,mutation:u})],0)},_=function(e,t){var n=e.mutation,r=e.disabled,i=(0,l.useBackend)(t),a=(i.data,i.act);return 0===n.CanChromo?(0,o.createComponentVNode)(2,d.Box,{color:"label",children:"No compatible chromosomes"}):1===n.CanChromo?r?(0,o.createComponentVNode)(2,d.Box,{color:"label",children:"No chromosome applied."}):(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Dropdown,{width:"240px",options:n.ValidStoredChromos,disabled:0===n.ValidStoredChromos.length,selected:0===n.ValidStoredChromos.length?"No Suitable Chromosomes":"Select a chromosome",onSelected:function(e){return a("apply_chromo",{chromo:e,mutref:n.ByondRef})}}),(0,o.createComponentVNode)(2,d.Box,{color:"label",mt:1,children:["Compatible with: ",n.ValidChromos]})],4):2===n.CanChromo?(0,o.createComponentVNode)(2,d.Box,{color:"label",children:["Applied chromosome: ",n.AppliedChromo]}):null},w=function(e,t){var n,r,i=(0,l.useBackend)(t),a=i.data,c=i.act,u=null!=(n=null==(r=a.storage)?void 0:r.occupant)?n:[],s=a.isJokerReady,p=a.isMonkey,m=a.jokerSeconds,f=a.subjectStatus,h=a.view,C=h.sequencerMutation,g=h.jokerActive,b=u.find((function(e){return e.Alias===C}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Flex,{spacing:1,mb:1,children:[(0,o.createComponentVNode)(2,d.Flex.Item,{width:u.length<=8?"154px":"174px",children:(0,o.createComponentVNode)(2,d.Section,{title:"Sequences",height:"214px",overflowY:u.length>8&&"scroll",children:u.map((function(e){return(0,o.createComponentVNode)(2,B,{url:e.Image,selected:e.Alias===C,onClick:function(){c("set_view",{sequencerMutation:e.Alias}),c("check_discovery",{alias:e.Alias})}},e.Alias)}))})}),(0,o.createComponentVNode)(2,d.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,d.Section,{title:"Sequence Info",minHeight:"100%",children:(0,o.createComponentVNode)(2,x,{mutation:b})})})]}),3===f&&(0,o.createComponentVNode)(2,d.Section,{color:"bad",children:"Genetic sequence corrupted. Subject diagnostic report: DECEASED."})||p&&"Monkified"!==(null==b?void 0:b.Name)&&(0,o.createComponentVNode)(2,d.Section,{color:"bad",children:"Genetic sequence corrupted. Subject diagnostic report: MONKEY."})||4===f&&(0,o.createComponentVNode)(2,d.Section,{color:"bad",children:"Genetic sequence corrupted. Subject diagnostic report: TRANSFORMING."})||(0,o.createComponentVNode)(2,d.Section,{title:"Genome Sequencer\u2122",buttons:!s&&(0,o.createComponentVNode)(2,d.Box,{lineHeight:"20px",color:"label",children:["Joker on cooldown (",m,"s)"]})||g&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Box,{mr:1,inline:!0,color:"label",children:"Click on a gene to reveal it."}),(0,o.createComponentVNode)(2,d.Button,{content:"Cancel Joker",onClick:function(){return c("set_view",{jokerActive:""})}})],4)||(0,o.createComponentVNode)(2,d.Button,{icon:"crown",color:"purple",content:"Use Joker",onClick:function(){return c("set_view",{jokerActive:"1"})}}),children:(0,o.createComponentVNode)(2,L,{mutation:b})})],0)},B=function(e,t){var n,r=e.url,i=e.selected,a=e.onClick;return i&&(n="2px solid #22aa00"),(0,o.createComponentVNode)(2,d.Box,{as:"img",src:r,style:{width:"64px",margin:"2px","margin-left":"4px",outline:n},onClick:a})},S=function(e,t){var n=e.gene,r=e.onChange,i=e.disabled,a=function(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,["gene","onChange","disabled"]),c=s.length,l=s.indexOf(n),u=i&&p.X||p[n];return(0,o.normalizeProps)((0,o.createComponentVNode)(2,d.Button,Object.assign({},a,{color:u,onClick:function(e){if(e.preventDefault(),r)if(-1!==l){var t=s[(l+1)%c];r(e,t)}else r(e,s[0])},oncontextmenu:function(e){if(e.preventDefault(),r)if(-1!==l){var t=s[(l-1+c)%c];r(e,t)}else r(e,s[c-1])},children:n})))},L=function(e,t){var n=e.mutation,r=(0,l.useBackend)(t),i=r.data,c=r.act,u=i.view.jokerActive;if(!n)return(0,o.createComponentVNode)(2,d.Box,{color:"average",children:"No genome selected for sequencing."});if(n.Scrambled)return(0,o.createComponentVNode)(2,d.Box,{color:"average",children:"Sequence unreadable due to unpredictable mutation."});for(var s=n.Sequence,p=n.DefaultSeq,m=[],f=function(e){var t=s.charAt(e),r=(0,o.createComponentVNode)(2,S,{width:"22px",textAlign:"center",disabled:!!n.Scrambled||1!==n.Class,className:"X"===(null==p?void 0:p.charAt(e))&&!n.Active&&(0,a.classes)(["outline-solid","outline-color-orange"]),gene:t,onChange:function(t,o){if(!t.ctrlKey)return u?(c("pulse_gene",{pos:e+1,gene:"J",alias:n.Alias}),void c("set_view",{jokerActive:""})):void c("pulse_gene",{pos:e+1,gene:o,alias:n.Alias});c("pulse_gene",{pos:e+1,gene:"X",alias:n.Alias})}});m.push(r)},h=0;h<s.length;h++)f(h);for(var C=[],g=0;g<m.length;g+=2){var b=(0,o.createComponentVNode)(2,d.Box,{inline:!0,m:.5,children:[m[g],(0,o.createComponentVNode)(2,d.Box,{mt:"-2px",ml:"10px",width:"2px",height:"8px",backgroundColor:"label"}),m[g+1]]},g);g%8==0&&0!==g&&C.push((0,o.createComponentVNode)(2,d.Box,{inline:!0,position:"relative",top:"-17px",left:"-1px",width:"8px",height:"2px",backgroundColor:"label"},g+"_divider")),C.push(b)}return(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Box,{m:-.5,children:C}),(0,o.createComponentVNode)(2,d.Box,{color:"label",mt:1,children:[(0,o.createVNode)(1,"b",null,"Tip:",16)," Ctrl+Click on the gene to set it to X. Right Click to cycle in reverse."]})],4)},I=function(e,t){var n=(0,l.useBackend)(t),r=n.data,i=(n.act,r.isScannerConnected);r.stdDevAcc,r.stdDevStr;return i?(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Flex,{spacing:1,mb:1,children:[(0,o.createComponentVNode)(2,d.Flex.Item,{width:"155px",children:(0,o.createComponentVNode)(2,T)}),(0,o.createComponentVNode)(2,d.Flex.Item,{width:"140px",children:(0,o.createComponentVNode)(2,A)}),(0,o.createComponentVNode)(2,d.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,E)})]}),(0,o.createComponentVNode)(2,M)],4):(0,o.createComponentVNode)(2,d.Section,{color:"bad",children:"DNA Scanner is not connected."})},T=function(e,t){var n=(0,l.useBackend)(t),r=n.data,i=n.act,a=r.radStrength,c=r.radDuration;return(0,o.createComponentVNode)(2,d.Section,{title:"Radiation Emitter",minHeight:"100%",children:(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Output level",children:(0,o.createComponentVNode)(2,d.NumberInput,{animated:!0,width:"32px",stepPixelSize:10,value:a,minValue:1,maxValue:15,onDrag:function(e,t){return i("set_pulse_strength",{val:t})}})}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Pulse duration",children:(0,o.createComponentVNode)(2,d.NumberInput,{animated:!0,width:"32px",stepPixelSize:10,value:c,minValue:1,maxValue:30,onDrag:function(e,t){return i("set_pulse_duration",{val:t})}})})]})})},A=function(e,t){var n=(0,l.useBackend)(t).data,r=n.stdDevAcc,i=n.stdDevStr;return(0,o.createComponentVNode)(2,d.Section,{title:"Probabilities",minHeight:"100%",children:(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Accuracy",textAlign:"right",children:r}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"P(\xb1"+i+")",textAlign:"right",children:"68 %"}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"P(\xb1"+2*i+")",textAlign:"right",children:"95 %"})]})})},E=function(e,t){for(var n=(0,l.useBackend)(t),r=n.data,i=n.act,a=r.subjectUNI,c=void 0===a?[]:a,u=[],s=[],p=function(e){var t=c.charAt(e),n=(0,o.createComponentVNode)(2,d.Button,{fluid:!0,textAlign:"center",content:t,onClick:function(){return i("makeup_pulse",{index:e+1})}},e);if(s.push(n),s.length>=3){var r=(0,o.createComponentVNode)(2,d.Box,{inline:!0,width:"22px",mx:"1px",children:s});u.push(r),s=[]}},m=0;m<c.length;m++)p(m);return(0,o.createComponentVNode)(2,d.Section,{title:"Unique Enzymes",minHeight:"100%",position:"relative",children:(0,o.createComponentVNode)(2,d.Box,{mx:"-1px",children:u})})},M=function(e,t){for(var n=(0,l.useBackend)(t),r=n.data,i=n.act,a=r.diskHasMakeup,c=r.hasDisk,u=r.isViableSubject,s=r.makeupCapacity,p=void 0===s?3:s,m=r.makeupStorage,f=[],h=function(e){var t=m[e],n=(0,o.createComponentVNode)(2,d.Collapsible,{title:t?t.label||t.name:"Slot "+e,buttons:(0,o.createFragment)([!(!c||!a)&&(0,o.createComponentVNode)(2,d.Button,{mr:1,disabled:!c||!a,content:"Import from disk",onClick:function(){return i("load_makeup_disk",{index:e})}}),(0,o.createComponentVNode)(2,d.Button,{disabled:!u,content:"Save",onClick:function(){return i("save_makeup_console",{index:e})}}),(0,o.createComponentVNode)(2,d.Button,{ml:1,icon:"times",color:"red",disabled:!t,onClick:function(){return i("del_makeup_console",{index:e})}})],0),children:(0,o.createComponentVNode)(2,R,{index:e,makeup:t})});f.push(n)},C=1;C<=p;C++)h(C);return(0,o.createComponentVNode)(2,d.Section,{title:"Genetic Makeup Buffers",children:f})},P=function(e,t){var n=e.makeup;return(0,o.createComponentVNode)(2,d.Section,{title:"Enzyme Information",children:(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Name",children:n.name||"None"}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Blood Type",children:n.blood_type||"None"}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Unique Enzyme",children:n.UE||"None"}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Unique Identifier",children:n.UI||"None"})]})})},R=function(e,t){var n=e.index,r=e.makeup,i=(0,l.useBackend)(t),a=i.act,c=i.data,u=c.isViableSubject,s=c.hasDisk,p=c.diskReadOnly,m=c.isInjectorReady,f=u?"makeup_apply":"makeup_delay";return r?(0,o.createFragment)([(0,o.createComponentVNode)(2,P,{makeup:r}),(0,o.createComponentVNode)(2,d.Divider),(0,o.createComponentVNode)(2,d.Box,{bold:!0,color:"label",mb:1,children:"Makeup Actions"}),(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Enzymes",children:[(0,o.createComponentVNode)(2,d.Button,{icon:"syringe",disabled:!m,content:"Print",onClick:function(){return a("makeup_injector",{index:n,type:"ue"})}}),(0,o.createComponentVNode)(2,d.Button,{icon:"exchange-alt",onClick:function(){return a(f,{index:n,type:"ue"})},children:["Transfer",!u&&" (Delayed)"]})]}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Identity",children:[(0,o.createComponentVNode)(2,d.Button,{icon:"syringe",disabled:!m,content:"Print",onClick:function(){return a("makeup_injector",{index:n,type:"ui"})}}),(0,o.createComponentVNode)(2,d.Button,{icon:"exchange-alt",onClick:function(){return a(f,{index:n,type:"ui"})},children:["Transfer",!u&&" (Delayed)"]})]}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Full Makeup",children:[(0,o.createComponentVNode)(2,d.Button,{icon:"syringe",disabled:!m,content:"Print",onClick:function(){return a("makeup_injector",{index:n,type:"mixed"})}}),(0,o.createComponentVNode)(2,d.Button,{icon:"exchange-alt",onClick:function(){return a(f,{index:n,type:"mixed"})},children:["Transfer",!u&&" (Delayed)"]})]}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{children:(0,o.createComponentVNode)(2,d.Button,{icon:"save",disabled:!s||p,content:"Export To Disk",onClick:function(){return a("save_makeup_disk",{index:n})}})})]})],4):(0,o.createComponentVNode)(2,d.Box,{color:"average",children:"No stored subject data."})},O=function(e,t){var n,r=(0,l.useBackend)(t),i=r.act,a=r.data,c=a.maxAdvInjectors,u=a.isInjectorReady,s=null!=(n=a.storage.injector)?n:[];return(0,o.createComponentVNode)(2,d.Section,{title:"Advanced Injectors",children:[s.map((function(e){return(0,o.createComponentVNode)(2,d.Collapsible,{title:e.name,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Button,{icon:"syringe",disabled:!u,content:"Print",onClick:function(){return i("print_adv_inj",{name:e.name})}}),(0,o.createComponentVNode)(2,d.Button,{ml:1,color:"red",icon:"times",onClick:function(){return i("del_adv_inj",{name:e.name})}})],4),children:(0,o.createComponentVNode)(2,y,{mutations:e.mutations,customMode:"advinj"+s.findIndex((function(t){return e.name===t.name}))})},e.name)})),(0,o.createComponentVNode)(2,d.Box,{mt:2,children:(0,o.createComponentVNode)(2,d.Button.Input,{minWidth:"200px",content:"Create new injector",disabled:s.length>=c,onCommit:function(e,t){return i("new_adv_inj",{name:t})}})})]})},j=function(e,t){var n=e.mutations,r=void 0===n?[]:n,i=e.source,a=(0,l.useBackend)(t),c=a.act;a.data;return(0,o.createComponentVNode)(2,d.Dropdown,{width:"240px",options:r.map((function(e){return e.Name})),disabled:0===r.length,selected:"Combine mutations",onSelected:function(e){return c("combine_"+i.Source,{firstref:(t=e,null==(n=r.find((function(e){return e.Name===t})))?void 0:n.ByondRef),secondref:i.ByondRef});var t,n}},i.ByondRef)}},function(e,t,n){"use strict";t.__esModule=!0,t.DnaVault=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.DnaVault=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.completed,u=l.used,s=l.choiceA,p=l.choiceB,m=l.dna,f=l.dna_max,h=l.plants,C=l.plants_max,g=l.animals,b=l.animals_max;return(0,o.createComponentVNode)(2,a.Window,{width:350,height:400,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"DNA Vault Database",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Human DNA",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:m/f,children:m+" / "+f+" Samples"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Plant DNA",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:h/C,children:h+" / "+C+" Samples"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Animal DNA",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:g/g,children:g+" / "+b+" Samples"})})]})}),!(!d||u)&&(0,o.createComponentVNode)(2,i.Section,{title:"Personal Gene Therapy",children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",mb:1,children:"Applicable Gene Therapy Treatments"}),(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:s,textAlign:"center",onClick:function(){return c("gene",{choice:s})}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:p,textAlign:"center",onClick:function(){return c("gene",{choice:p})}})})]})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.EightBallVote=void 0;var o=n(0),r=n(1),i=n(3),a=n(19),c=n(2);t.EightBallVote=function(e,t){var n=(0,r.useBackend)(t),a=(n.act,n.data.shaking);return(0,o.createComponentVNode)(2,c.Window,{width:400,height:600,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:!a&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No question is currently being asked."})||(0,o.createComponentVNode)(2,l)})})};var l=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.question,u=l.answers,s=void 0===u?[]:u;return(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"16px",m:1,children:['"',d,'"']}),(0,o.createComponentVNode)(2,i.Grid,{children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Grid.Column,{children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:(0,a.toTitleCase)(e.answer),selected:e.selected,fontSize:"16px",lineHeight:"24px",textAlign:"center",mb:1,onClick:function(){return c("vote",{answer:e.answer})}}),(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"30px",children:e.amount})]},e.answer)}))})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Electrolyzer=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Electrolyzer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:400,height:305,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Power",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject Cell",disabled:!l.hasPowercell||!l.open,onClick:function(){return c("eject")}}),(0,o.createComponentVNode)(2,i.Button,{icon:l.on?"power-off":"times",content:l.on?"On":"Off",selected:l.on,disabled:!l.hasPowercell,onClick:function(){return c("power")}})],4),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Cell",color:!l.hasPowercell&&"bad",children:l.hasPowercell&&(0,o.createComponentVNode)(2,i.ProgressBar,{value:l.powerLevel/100,content:l.powerLevel+"%",ranges:{good:[.6,Infinity],average:[.3,.6],bad:[-Infinity,.3]}})||"None"})})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Electropack=void 0;var o=n(0),r=n(15),i=n(1),a=n(3),c=n(2);t.Electropack=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data,u=d.power,s=d.code,p=d.frequency,m=d.minFrequency,f=d.maxFrequency;return(0,o.createComponentVNode)(2,c.Window,{width:260,height:137,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return l("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Frequency",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reset",onClick:function(){return l("reset",{reset:"freq"})}}),children:(0,o.createComponentVNode)(2,a.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:6,minValue:m/10,maxValue:f/10,value:p/10,format:function(e){return(0,r.toFixed)(e,1)},width:"80px",onDrag:function(e,t){return l("freq",{freq:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Code",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reset",onClick:function(){return l("reset",{reset:"code"})}}),children:(0,o.createComponentVNode)(2,a.NumberInput,{animate:!0,step:1,stepPixelSize:6,minValue:1,maxValue:100,value:s,width:"80px",onDrag:function(e,t){return l("code",{code:t})}})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.EmergencyShuttleConsole=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.EmergencyShuttleConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.timer_str,u=l.enabled,s=l.emagged,p=l.engines_started,m=l.authorizations_remaining,f=l.authorizations,h=void 0===f?[]:f;return(0,o.createComponentVNode)(2,a.Window,{width:400,height:350,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,fontSize:"40px",textAlign:"center",fontFamily:"monospace",children:d}),(0,o.createComponentVNode)(2,i.Box,{textAlign:"center",fontSize:"16px",mb:1,children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:"ENGINES:"}),(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:p?"good":"average",ml:1,children:p?"Online":"Idle"})]}),(0,o.createComponentVNode)(2,i.Section,{title:"Early Launch Authorization",level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Repeal All",color:"bad",disabled:!u,onClick:function(){return c("abort")}}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"exclamation-triangle",color:"good",content:"AUTHORIZE",disabled:!u,onClick:function(){return c("authorize")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"minus",content:"REPEAL",disabled:!u,onClick:function(){return c("repeal")}})})]}),(0,o.createComponentVNode)(2,i.Section,{title:"Authorizations",level:3,minHeight:"150px",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,color:s?"bad":"good",children:s?"ERROR":"Remaining: "+m}),children:h.length>0?h.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{bold:!0,fontSize:"16px",className:"candystripe",children:[e.name," (",e.job,")"]},e.name)})):(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"16px",color:"average",children:"No Active Authorizations"})})]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.EngravedMessage=void 0;var o=n(0),r=n(19),i=n(1),a=n(3),c=n(2);t.EngravedMessage=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data,u=d.admin_mode,s=d.creator_key,p=d.creator_name,m=d.has_liked,f=d.has_disliked,h=d.hidden_message,C=d.is_creator,g=d.num_likes,b=d.num_dislikes,N=d.realdate;return(0,o.createComponentVNode)(2,c.Window,{width:600,height:300,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"20px",mb:2,children:(0,r.decodeHtmlEntities)(h)}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",content:" "+g,disabled:C,selected:m,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return l("like")}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"circle",disabled:C,selected:!f&&!m,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return l("neutral")}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",content:" "+b,disabled:C,selected:f,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return l("dislike")}})})]})]}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Created On",children:N})})}),(0,o.createComponentVNode)(2,a.Section),!!u&&(0,o.createComponentVNode)(2,a.Section,{title:"Admin Panel",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Delete",color:"bad",onClick:function(){return l("delete")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Creator Ckey",children:s}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Creator Character Name",children:p})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ExosuitControlConsole=void 0;var o=n(0),r=n(15),i=n(1),a=n(3),c=n(2);t.ExosuitControlConsole=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data.mechs,u=void 0===d?[]:d;return(0,o.createComponentVNode)(2,c.Window,{width:500,height:500,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[0===u.length&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No exosuits detected"}),u.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"envelope",content:"Send Message",disabled:!e.pilot,onClick:function(){return l("send_message",{tracker_ref:e.tracker_ref})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"wifi",content:e.emp_recharging?"Recharging...":"EMP Burst",color:"bad",disabled:e.emp_recharging,onClick:function(){return l("shock",{tracker_ref:e.tracker_ref})}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Integrity",children:(0,o.createComponentVNode)(2,a.Box,{color:(e.integrity<=30?"bad":e.integrity<=70&&"average")||"good",children:[e.integrity,"%"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge",children:(0,o.createComponentVNode)(2,a.Box,{color:(e.charge<=30?"bad":e.charge<=70&&"average")||"good",children:"number"==typeof e.charge&&e.charge+"%"||"Not Found"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Airtank",children:"number"==typeof e.airtank&&(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:e.airtank,format:function(e){return(0,r.toFixed)(e,2)+" kPa"}})||"Not Equipped"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pilot",children:e.pilot||"None"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Location",children:e.location||"Unknown"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Active Equipment",children:e.active_equipment||"None"}),e.cargo_space>=0&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Used Cargo Space",children:(0,o.createComponentVNode)(2,a.Box,{color:(e.cargo_space<=30?"good":e.cargo_space<=70&&"average")||"bad",children:[e.cargo_space,"%"]})})]})},e.tracker_ref)}))]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ForbiddenLore=void 0;var o=n(0),r=n(18),i=n(33),a=n(1),c=n(3),l=n(2);t.ForbiddenLore=function(e,t){var n=(0,a.useBackend)(t),d=n.act,u=n.data,s=u.charges,p=(0,i.flow)([(0,r.sortBy)((function(e){return"Research"!==e.state}),(function(e){return"Side"===e.path}))])(u.to_know||[]);return(0,o.createComponentVNode)(2,l.Window,{width:500,height:900,resizable:!0,children:(0,o.createComponentVNode)(2,l.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c.Section,{title:"Research Eldritch Knowledge",children:["Charges left : ",s,null!==p?p.map((function(e){return(0,o.createComponentVNode)(2,c.Section,{title:e.name,level:2,children:[(0,o.createComponentVNode)(2,c.Box,{bold:!0,my:1,children:[e.path," path"]}),(0,o.createComponentVNode)(2,c.Box,{my:1,children:[(0,o.createComponentVNode)(2,c.Button,{content:e.state,disabled:e.disabled,onClick:function(){return d("research",{name:e.name,cost:e.cost})}})," ","Cost : ",e.cost]}),(0,o.createComponentVNode)(2,c.Box,{italic:!0,my:1,children:e.flavour}),(0,o.createComponentVNode)(2,c.Box,{my:1,children:e.desc})]},e.name)})):(0,o.createComponentVNode)(2,c.Box,{children:"No more knowledge can be found"})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Gateway=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Gateway=function(){return(0,o.createComponentVNode)(2,a.Window,{resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.gateway_present,d=void 0!==l&&l,u=c.gateway_status,s=void 0!==u&&u,p=c.current_target,m=void 0===p?null:p,f=c.destinations,h=void 0===f?[]:f;return d?m?(0,o.createComponentVNode)(2,i.Section,{title:m.name,children:[(0,o.createComponentVNode)(2,i.Icon,{name:"rainbow",size:4,color:"green"}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,onClick:function(){return a("deactivate")},children:"Deactivate"})]}):h.length?(0,o.createFragment)([!s&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Gateway Unpowered"}),h.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,children:e.availible&&(0,o.createComponentVNode)(2,i.Button,{fluid:!0,onClick:function(){return a("activate",{destination:e.ref})},children:"Activate"})||(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{m:1,textColor:"bad",children:e.reason}),!!e.timeout&&(0,o.createComponentVNode)(2,i.ProgressBar,{value:e.timeout,children:"Calibrating..."})],0)},e.ref)}))],0):(0,o.createComponentVNode)(2,i.Section,{children:"No gateway nodes detected."}):(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No linked gateway"}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,onClick:function(){return a("linkup")},children:"Linkup"})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.GlandDispenser=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.GlandDispenser=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data.glands,d=void 0===l?[]:l;return(0,o.createComponentVNode)(2,a.Window,{width:300,height:338,theme:"abductor",children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{width:"60px",height:"60px",m:.75,textAlign:"center",lineHeight:"55px",icon:"eject",backgroundColor:e.color,content:e.amount||"0",disabled:!e.amount,onClick:function(){return c("dispense",{gland_id:e.id})}},e.id)}))})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Gps=void 0;var o=n(0),r=n(18),i=n(33),a=n(15),c=n(119),l=n(1),d=n(3),u=n(2),s=function(e){return(0,r.map)(parseFloat)(e.split(", "))};t.Gps=function(e,t){var n=(0,l.useBackend)(t),p=n.act,m=n.data,f=m.currentArea,h=m.currentCoords,C=m.globalmode,g=m.power,b=m.tag,N=m.updating,v=(0,i.flow)([(0,r.map)((function(e,t){var n=e.dist&&Math.round((0,c.vecLength)((0,c.vecSubtract)(s(h),s(e.coords))));return Object.assign({},e,{dist:n,index:t})})),(0,r.sortBy)((function(e){return e.dist===undefined}),(function(e){return e.entrytag}))])(m.signals||[]);return(0,o.createComponentVNode)(2,u.Window,{title:"Global Positioning System",width:470,height:700,resizable:!0,children:(0,o.createComponentVNode)(2,u.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,d.Section,{title:"Control",buttons:(0,o.createComponentVNode)(2,d.Button,{icon:"power-off",content:g?"On":"Off",selected:g,onClick:function(){return p("power")}}),children:(0,o.createComponentVNode)(2,d.LabeledList,{children:[(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Tag",children:(0,o.createComponentVNode)(2,d.Button,{icon:"pencil-alt",content:b,onClick:function(){return p("rename")}})}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Scan Mode",children:(0,o.createComponentVNode)(2,d.Button,{icon:N?"unlock":"lock",content:N?"AUTO":"MANUAL",color:!N&&"bad",onClick:function(){return p("updating")}})}),(0,o.createComponentVNode)(2,d.LabeledList.Item,{label:"Range",children:(0,o.createComponentVNode)(2,d.Button,{icon:"sync",content:C?"MAXIMUM":"LOCAL",selected:!C,onClick:function(){return p("globalmode")}})})]})}),!!g&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d.Section,{title:"Current Location",children:(0,o.createComponentVNode)(2,d.Box,{fontSize:"18px",children:[f," (",h,")"]})}),(0,o.createComponentVNode)(2,d.Section,{title:"Detected Signals",children:(0,o.createComponentVNode)(2,d.Table,{children:[(0,o.createComponentVNode)(2,d.Table.Row,{bold:!0,children:[(0,o.createComponentVNode)(2,d.Table.Cell,{content:"Name"}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,content:"Direction"}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,content:"Coordinates"})]}),v.map((function(e){return(0,o.createComponentVNode)(2,d.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,d.Table.Cell,{bold:!0,color:"label",children:e.entrytag}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,opacity:e.dist!==undefined&&(0,a.clamp)(1.2/Math.log(Math.E+e.dist/20),.4,1),children:[e.degrees!==undefined&&(0,o.createComponentVNode)(2,d.Icon,{mr:1,size:1.2,name:"arrow-up",rotation:e.degrees}),e.dist!==undefined&&e.dist+"m"]}),(0,o.createComponentVNode)(2,d.Table.Cell,{collapsing:!0,children:e.coords})]},e.entrytag+e.coords+e.index)}))]})})],4)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.GravityGenerator=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.GravityGenerator=function(e,t){var n=(0,r.useBackend)(t),l=(n.act,n.data),d=l.charging_state,u=l.operational;return(0,o.createComponentVNode)(2,a.Window,{width:400,height:165,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[!u&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No data available"}),!!u&&0!==d&&(0,o.createComponentVNode)(2,i.NoticeBox,{danger:!0,children:"WARNING - Radiation detected"}),!!u&&0===d&&(0,o.createComponentVNode)(2,i.NoticeBox,{success:!0,children:"No radiation detected"}),!!u&&(0,o.createComponentVNode)(2,c)]})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.breaker,d=c.charge_count,u=c.charging_state,s=c.on,p=c.operational;return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,i.Button,{icon:l?"power-off":"times",content:l?"On":"Off",selected:l,disabled:!p,onClick:function(){return a("gentoggle")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Gravity Charge",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:d/100,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Charge Mode",children:[0===u&&(s&&(0,o.createComponentVNode)(2,i.Box,{color:"good",children:"Fully Charged"})||(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Not Charging"})),1===u&&(0,o.createComponentVNode)(2,i.Box,{color:"average",children:"Charging"}),2===u&&(0,o.createComponentVNode)(2,i.Box,{color:"average",children:"Discharging"})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagItemReclaimer=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.GulagItemReclaimer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.mobs,u=void 0===d?[]:d;return(0,o.createComponentVNode)(2,a.Window,{width:325,height:400,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[0===u.length&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No stored items"}),u.length>0&&(0,o.createComponentVNode)(2,i.Section,{title:"Stored Items",children:(0,o.createComponentVNode)(2,i.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{textAlign:"right",children:(0,o.createComponentVNode)(2,i.Button,{content:"Retrieve Items",disabled:!l.can_reclaim,onClick:function(){return c("release_items",{mobref:e.mob})}})})]},e.mob)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagTeleporterConsole=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.GulagTeleporterConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.teleporter,u=l.teleporter_lock,s=l.teleporter_state_open,p=l.teleporter_location,m=l.beacon,f=l.beacon_location,h=l.id,C=l.id_name,g=l.can_teleport,b=l.goal,N=void 0===b?0:b,v=l.prisoner,V=void 0===v?{}:v;return(0,o.createComponentVNode)(2,a.Window,{width:350,height:295,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Teleporter Console",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{content:s?"Open":"Closed",disabled:u,selected:s,onClick:function(){return c("toggle_open")}}),(0,o.createComponentVNode)(2,i.Button,{icon:u?"lock":"unlock",content:u?"Locked":"Unlocked",selected:u,disabled:s,onClick:function(){return c("teleporter_lock")}})],4),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Teleporter Unit",color:d?"good":"bad",buttons:!d&&(0,o.createComponentVNode)(2,i.Button,{content:"Reconnect",onClick:function(){return c("scan_teleporter")}}),children:d?p:"Not Connected"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Receiver Beacon",color:m?"good":"bad",buttons:!m&&(0,o.createComponentVNode)(2,i.Button,{content:"Reconnect",onClick:function(){return c("scan_beacon")}}),children:m?f:"Not Connected"})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Prisoner Details",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Prisoner ID",children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:h?C:"No ID",onClick:function(){return c("handle_id")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Point Goal",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:N,width:"48px",minValue:1,maxValue:1e3,onChange:function(e,t){return c("set_goal",{value:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Occupant",children:V.name||"No Occupant"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Criminal Status",children:V.crimstat||"No Status"})]})}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Process Prisoner",disabled:!g,textAlign:"center",color:"bad",onClick:function(){return c("teleport")}})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Holodeck=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Holodeck=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.can_toggle_safety,u=l.default_programs,s=void 0===u?[]:u,p=l.emag_programs,m=void 0===p?[]:p,f=l.emagged,h=l.program;return(0,o.createComponentVNode)(2,a.Window,{width:400,height:500,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Default Programs",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:f?"unlock":"lock",content:"Safeties",color:"bad",disabled:!d,selected:!f,onClick:function(){return c("safety")}}),children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:e.name.substring(11),textAlign:"center",selected:e.type===h,onClick:function(){return c("load_program",{type:e.type})}},e.type)}))}),!!f&&(0,o.createComponentVNode)(2,i.Section,{title:"Dangerous Programs",children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:e.name.substring(11),color:"bad",textAlign:"center",selected:e.type===h,onClick:function(){return c("load_program",{type:e.type})}},e.type)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Holopad=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Holopad=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data.calling;return(0,o.createComponentVNode)(2,a.Window,{width:440,height:245,resizable:!0,children:[!!d&&(0,o.createComponentVNode)(2,i.Modal,{fontSize:"36px",fontFamily:"monospace",children:[(0,o.createComponentVNode)(2,i.Flex,{align:"center",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{mr:2,mt:2,children:(0,o.createComponentVNode)(2,i.Icon,{name:"phone-alt",rotation:25})}),(0,o.createComponentVNode)(2,i.Flex.Item,{mr:2,children:"Dialing..."})]}),(0,o.createComponentVNode)(2,i.Box,{mt:2,textAlign:"center",fontSize:"24px",children:(0,o.createComponentVNode)(2,i.Button,{lineHeight:"40px",icon:"times",content:"Hang Up",color:"bad",onClick:function(){return l("hang_up")}})})]}),(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})]})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.on_network,d=c.on_cooldown,u=c.allowed,s=c.disk,p=c.disk_record,m=c.replay_mode,f=c.loop_mode,h=c.record_mode,C=c.holo_calls,g=void 0===C?[]:C;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Holopad",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"bell",content:d?"AI Presence Requested":"Request AI Presence",disabled:!l||d,onClick:function(){return a("AIrequest")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Communicator",children:(0,o.createComponentVNode)(2,i.Button,{icon:"phone-alt",content:u?"Connect To Holopad":"Call Holopad",disabled:!l,onClick:function(){return a("holocall",{headcall:u})}})}),g.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.connected?"Current Call":"Incoming Call",children:(0,o.createComponentVNode)(2,i.Button,{icon:e.connected?"phone-slash":"phone-alt",content:e.connected?"Disconnect call from "+e.caller:"Answer call from "+e.caller,color:e.connected?"bad":"good",disabled:!l,onClick:function(){return a(e.connected?"disconnectcall":"connectcall",{holopad:e.ref})}})},e.ref)}))]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Holodisk",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",disabled:!s||m||h,onClick:function(){return a("disk_eject")}}),children:!s&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No holodisk"})||(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Disk Player",children:[(0,o.createComponentVNode)(2,i.Button,{icon:m?"pause":"play",content:m?"Stop":"Replay",selected:m,disabled:h||!p,onClick:function(){return a("replay_mode")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:f?"Looping":"Loop",selected:f,disabled:h||!p,onClick:function(){return a("loop_mode")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"exchange-alt",content:"Change Offset",disabled:!m,onClick:function(){return a("offset")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Recorder",children:[(0,o.createComponentVNode)(2,i.Button,{icon:h?"pause":"video",content:h?"End Recording":"Record",selected:h,disabled:p&&!h||m,onClick:function(){return a("record_mode")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"trash",content:"Clear Recording",color:"bad",disabled:!p||m||h,onClick:function(){return a("record_clear")}})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.HypnoChair=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.HypnoChair=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:375,height:480,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Information",backgroundColor:"#450F44",children:"The Enhanced Interrogation Chamber is designed to induce a deep-rooted trance trigger into the subject. Once the procedure is complete, by using the implanted trigger phrase, the authorities are able to ensure immediate and complete obedience and truthfulness."}),(0,o.createComponentVNode)(2,i.Section,{title:"Occupant Information",textAlign:"center",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Name",children:l.occupant.name?l.occupant.name:"No Occupant"}),!!l.occupied&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",color:0===l.occupant.stat?"good":1===l.occupant.stat?"average":"bad",children:0===l.occupant.stat?"Conscious":1===l.occupant.stat?"Unconcious":"Dead"})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Operations",textAlign:"center",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Door",children:(0,o.createComponentVNode)(2,i.Button,{icon:l.open?"unlock":"lock",color:l.open?"default":"red",content:l.open?"Open":"Closed",onClick:function(){return c("door")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Phrase",children:(0,o.createComponentVNode)(2,i.Input,{value:l.trigger,onChange:function(e,t){return c("set_phrase",{phrase:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Interrogate Occupant",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"code-branch",content:l.interrogating?"Interrupt Interrogation":"Begin Enhanced Interrogation",onClick:function(){return c("interrogate")}}),1===l.interrogating&&(0,o.createComponentVNode)(2,i.Icon,{name:"cog",color:"orange",spin:!0})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ImplantChair=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.ImplantChair=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:375,height:280,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Occupant Information",textAlign:"center",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Name",children:l.occupant.name||"No Occupant"}),!!l.occupied&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",color:0===l.occupant.stat?"good":1===l.occupant.stat?"average":"bad",children:0===l.occupant.stat?"Conscious":1===l.occupant.stat?"Unconcious":"Dead"})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Operations",textAlign:"center",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Door",children:(0,o.createComponentVNode)(2,i.Button,{icon:l.open?"unlock":"lock",color:l.open?"default":"red",content:l.open?"Open":"Closed",onClick:function(){return c("door")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Implant Occupant",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"code-branch",content:l.ready?l.special_name||"Implant":"Recharging",onClick:function(){return c("implant")}}),0===l.ready&&(0,o.createComponentVNode)(2,i.Icon,{name:"cog",color:"orange",spin:!0})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Implants Remaining",children:[l.ready_implants,1===l.replenishing&&(0,o.createComponentVNode)(2,i.Icon,{name:"sync",color:"red",spin:!0})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.InfraredEmitter=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.InfraredEmitter=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.on,u=l.visible;return(0,o.createComponentVNode)(2,a.Window,{width:225,height:110,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:(0,o.createComponentVNode)(2,i.Button,{icon:d?"power-off":"times",content:d?"On":"Off",selected:d,onClick:function(){return c("power")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Visibility",children:(0,o.createComponentVNode)(2,i.Button,{icon:u?"eye":"eye-slash",content:u?"Visible":"Invisible",selected:u,onClick:function(){return c("visibility")}})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Intellicard=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Intellicard=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.name,u=l.isDead,s=l.isBraindead,p=l.health,m=l.wireless,f=l.radio,h=l.wiping,C=l.laws,g=void 0===C?[]:C,b=u||s;return(0,o.createComponentVNode)(2,a.Window,{width:500,height:500,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{title:d||"Empty Card",buttons:!!d&&(0,o.createComponentVNode)(2,i.Button,{icon:"trash",content:h?"Stop Wiping":"Wipe",disabled:u,onClick:function(){return c("wipe")}}),children:!!d&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",color:b?"bad":"good",children:b?"Offline":"Operation"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Software Integrity",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:p,minValue:0,maxValue:100,ranges:{good:[70,Infinity],average:[50,70],bad:[-Infinity,50]}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"signal",content:"Wireless Activity",selected:m,onClick:function(){return c("wireless")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"microphone",content:"Subspace Radio",selected:f,onClick:function(){return c("radio")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Laws",children:g.map((function(e){return(0,o.createComponentVNode)(2,i.BlockQuote,{children:e},e)}))})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Jukebox=void 0;var o=n(0),r=n(18),i=n(33),a=n(1),c=n(3),l=n(2);t.Jukebox=function(e,t){var n=(0,a.useBackend)(t),d=n.act,u=n.data,s=u.active,p=u.track_selected,m=u.track_length,f=u.track_beat,h=u.volume,C=(0,i.flow)([(0,r.sortBy)((function(e){return e.name}))])(u.songs||[]);return(0,o.createComponentVNode)(2,l.Window,{width:370,height:313,children:(0,o.createComponentVNode)(2,l.Window.Content,{children:[(0,o.createComponentVNode)(2,c.Section,{title:"Song Player",buttons:(0,o.createComponentVNode)(2,c.Button,{icon:s?"pause":"play",content:s?"Stop":"Play",selected:s,onClick:function(){return d("toggle")}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Track Selected",children:(0,o.createComponentVNode)(2,c.Dropdown,{"overflow-y":"scroll",width:"240px",options:C.map((function(e){return e.name})),disabled:s,selected:p||"Select a Track",onSelected:function(e){return d("select_track",{track:e})}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Track Length",children:p?m:"No Track Selected"}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Track Beat",children:[p?f:"No Track Selected",1===f?" beat":" beats"]})]})}),(0,o.createComponentVNode)(2,c.Section,{title:"Machine Settings",children:(0,o.createComponentVNode)(2,c.LabeledControls,{justify:"center",children:(0,o.createComponentVNode)(2,c.LabeledControls.Item,{label:"Volume",children:(0,o.createComponentVNode)(2,c.Box,{position:"relative",children:[(0,o.createComponentVNode)(2,c.Knob,{size:3.2,color:h>=50?"red":"green",value:h,unit:"%",minValue:0,maxValue:100,step:1,stepPixelSize:1,disabled:s,onDrag:function(e,t){return d("set_volume",{volume:t})}}),(0,o.createComponentVNode)(2,c.Button,{fluid:!0,position:"absolute",top:"-2px",right:"-22px",color:"transparent",icon:"fast-backward",onClick:function(){return d("set_volume",{volume:"min"})}}),(0,o.createComponentVNode)(2,c.Button,{fluid:!0,position:"absolute",top:"16px",right:"-22px",color:"transparent",icon:"fast-forward",onClick:function(){return d("set_volume",{volume:"max"})}}),(0,o.createComponentVNode)(2,c.Button,{fluid:!0,position:"absolute",top:"34px",right:"-22px",color:"transparent",icon:"undo",onClick:function(){return d("set_volume",{volume:"reset"})}})]})})})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.KeycardAuth=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.KeycardAuth=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:375,height:125,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{children:1===l.waiting&&(0,o.createVNode)(1,"span",null,"Waiting for another device to confirm your request...",16)}),(0,o.createComponentVNode)(2,i.Box,{children:0===l.waiting&&(0,o.createFragment)([!!l.auth_required&&(0,o.createComponentVNode)(2,i.Button,{icon:"check-square",color:"red",textAlign:"center",lineHeight:"60px",fluid:!0,onClick:function(){return c("auth_swipe")},content:"Authorize"}),0===l.auth_required&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"exclamation-triangle",fluid:!0,onClick:function(){return c("red_alert")},content:"Red Alert"}),(0,o.createComponentVNode)(2,i.Button,{icon:"wrench",fluid:!0,onClick:function(){return c("emergency_maint")},content:"Emergency Maintenance Access"}),(0,o.createComponentVNode)(2,i.Button,{icon:"meteor",fluid:!0,onClick:function(){return c("bsa_unlock")},content:"Bluespace Artillery Unlock"})],4)],0)})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.LaborClaimConsole=void 0;var o=n(0),r=n(19),i=n(1),a=n(3),c=n(2);t.LaborClaimConsole=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data,u=d.can_go_home,s=d.id_points,p=d.ores,m=d.status_info,f=d.unclaimed_points;return(0,o.createComponentVNode)(2,c.Window,{width:315,height:430,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:m}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shuttle controls",children:(0,o.createComponentVNode)(2,a.Button,{content:"Move shuttle",disabled:!u,onClick:function(){return l("move_shuttle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Points",children:s}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Unclaimed points",buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Claim points",disabled:!f,onClick:function(){return l("claim_points")}}),children:f})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Material values",children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:"Material"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:"Value"})]}),p.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,r.toTitleCase)(e.ore)}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,a.Box,{color:"label",inline:!0,children:e.value})})]},e.ore)}))]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.LanguageMenu=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.LanguageMenu=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.admin_mode,u=l.is_living,s=l.omnitongue,p=l.languages,m=void 0===p?[]:p,f=l.unknown_languages,h=void 0===f?[]:f;return(0,o.createComponentVNode)(2,a.Window,{title:"Language Menu",width:700,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Known Languages",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,buttons:(0,o.createFragment)([!!u&&(0,o.createComponentVNode)(2,i.Button,{content:e.is_default?"Default Language":"Select as Default",disabled:!e.can_speak,selected:e.is_default,onClick:function(){return c("select_default",{language_name:e.name})}}),!!d&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{content:"Grant",onClick:function(){return c("grant_language",{language_name:e.name})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Remove",onClick:function(){return c("remove_language",{language_name:e.name})}})],4)],0),children:[e.desc," ","Key: ,",e.key," ",e.can_understand?"Can understand.":"Cannot understand."," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})}),!!d&&(0,o.createComponentVNode)(2,i.Section,{title:"Unknown Languages",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Omnitongue "+(s?"Enabled":"Disabled"),selected:s,onClick:function(){return c("toggle_omnitongue")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:h.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Grant",onClick:function(){return c("grant_language",{language_name:e.name})}}),children:[e.desc," ","Key: ,",e.key," ",!!e.shadow&&"(gained from mob)"," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.LaunchpadRemote=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=n(180);t.LaunchpadRemote=function(e,t){var n=(0,r.useBackend)(t).data,l=n.has_pad,d=n.pad_closed;return(0,o.createComponentVNode)(2,a.Window,{title:"Briefcase Launchpad Remote",width:300,height:240,theme:"syndicate",children:(0,o.createComponentVNode)(2,a.Window.Content,{children:!l&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No Launchpad Connected"})||d&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Launchpad Closed"})||(0,o.createComponentVNode)(2,c.LaunchpadControl,{topLevel:!0})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MafiaPanel=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.MafiaPanel=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.players,u=l.actions,s=l.phase,p=l.roleinfo,m=l.role_theme,f=l.admin_controls,h=l.judgement_phase,C=l.timeleft,g=l.all_roles;return(0,o.createComponentVNode)(2,a.Window,{title:"Mafia",theme:m,width:650,height:550,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:s,children:!!p&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{children:(0,o.createComponentVNode)(2,i.TimeDisplay,{auto:"down",value:C})}),(0,o.createComponentVNode)(2,i.Box,{children:(0,o.createVNode)(1,"b",null,[(0,o.createTextVNode)("You are a "),p.role],0)}),(0,o.createComponentVNode)(2,i.Box,{children:(0,o.createVNode)(1,"b",null,p.desc,0)})],4)}),(0,o.createComponentVNode)(2,i.Flex,{children:!!u&&u.map((function(e){return(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Button,{onClick:function(){return c("mf_action",{atype:e})},children:e})},e)}))}),!!f&&(0,o.createComponentVNode)(2,i.Section,{title:"ADMIN CONTROLS",backgroundColor:"red",children:["THESE ARE DEBUG, THEY WILL BREAK THE GAME, DO NOT TOUCH ",(0,o.createVNode)(1,"br"),"Also because an admin did it: do not gib/delete/etc anyone! It will runtime the game to death! ",(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,i.Button,{icon:"arrow-right",onClick:function(){return c("next_phase")},children:"Next Phase"}),(0,o.createComponentVNode)(2,i.Button,{icon:"home",onClick:function(){return c("players_home")},children:"Send All Players Home"}),(0,o.createComponentVNode)(2,i.Button,{icon:"radiation",onClick:function(){return c("new_game")},children:"New Game"}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,i.Button,{icon:"skull",onClick:function(){return c("nuke")},color:"black",children:"Nuke (delete datum + landmarks, hope it fixes everything!)"})]}),(0,o.createComponentVNode)(2,i.Section,{title:"Players",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:!!d&&d.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{className:"candystripe",label:e.name,children:[!e.alive&&(0,o.createComponentVNode)(2,i.Box,{color:"red",children:"DEAD"}),e.votes!==undefined&&!!e.alive&&(0,o.createFragment)([(0,o.createTextVNode)("Votes : "),e.votes,(0,o.createTextVNode)(" ")],0),!!e.actions&&e.actions.map((function(t){return(0,o.createComponentVNode)(2,i.Button,{onClick:function(){return c("mf_targ_action",{atype:t,target:e.ref})},children:t},t)}))]},e.ref)}))})}),!!h&&(0,o.createComponentVNode)(2,i.Section,{title:"JUDGEMENT",children:(0,o.createComponentVNode)(2,i.Flex,{justify:"space-around",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"smile-beam",color:"good",onClick:function(){return c("vote_innocent")},children:"INNOCENT!"}),"Use these buttons to vote the accused innocent or guilty!",(0,o.createComponentVNode)(2,i.Button,{icon:"angry",color:"bad",onClick:function(){return c("vote_guilty")},children:"GUILTY!"})]})}),(0,o.createComponentVNode)(2,i.Flex,{mt:1,spacing:1,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,i.Section,{title:"Roles",minHeight:10,children:!!g&&g.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{children:(0,o.createComponentVNode)(2,i.Flex,{justify:"space-between",children:[e,(0,o.createComponentVNode)(2,i.Button,{content:"?",onClick:function(){return c("mf_lookup",{atype:e.slice(0,-3)})}})]})},e)}))})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:2,basis:0,children:(0,o.createComponentVNode)(2,i.Section,{title:"Notes",minHeight:10,children:p!==undefined&&!!p.action_log&&p.action_log.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{children:e},e)}))})})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MalfunctionModulePicker=void 0;var o=n(0),r=n(1),i=n(2),a=n(127);t.MalfunctionModulePicker=function(e,t){var n=(0,r.useBackend)(t),c=(n.act,n.data.processingTime);return(0,o.createComponentVNode)(2,i.Window,{width:620,height:525,theme:"malfunction",resizable:!0,children:(0,o.createComponentVNode)(2,i.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.GenericUplink,{currencyAmount:c,currencySymbol:"PT"})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MechBayPowerConsole=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.MechBayPowerConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data.recharge_port,d=l&&l.mech,u=d&&d.cell;return(0,o.createComponentVNode)(2,a.Window,{width:400,height:200,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Mech status",textAlign:"center",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Sync",onClick:function(){return c("reconnect")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Integrity",children:!l&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No power port detected. Please re-sync."})||!d&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No mech detected."})||(0,o.createComponentVNode)(2,i.ProgressBar,{value:d.health/d.maxhealth,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power",children:!l&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No power port detected. Please re-sync."})||!d&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No mech detected."})||!u&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No cell is installed."})||(0,o.createComponentVNode)(2,i.ProgressBar,{value:u.charge/u.maxcharge,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:u.charge})," / "+u.maxcharge]})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MedicalKiosk=void 0;var o=n(0),r=(n(19),n(1)),i=n(3),a=n(2);t.MedicalKiosk=function(e,t){var n=(0,r.useBackend)(t),m=(n.act,n.data),f=(0,r.useSharedState)(t,"scanIndex")[0],h=m.active_status_1,C=m.active_status_2,g=m.active_status_3,b=m.active_status_4;return(0,o.createComponentVNode)(2,a.Window,{width:575,height:420,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Flex,{mb:1,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{mr:1,children:(0,o.createComponentVNode)(2,i.Section,{minHeight:"100%",children:[(0,o.createComponentVNode)(2,c,{index:1,icon:"procedures",name:"General Health Scan",description:"Reads back exact values of your general health scan."}),(0,o.createComponentVNode)(2,c,{index:2,icon:"heartbeat",name:"Symptom Based Checkup",description:"Provides information based on various non-obvious symptoms,\nlike blood levels or disease status."}),(0,o.createComponentVNode)(2,c,{index:3,icon:"radiation-alt",name:"Neurological/Radiological Scan",description:"Provides information about brain trauma and radiation."}),(0,o.createComponentVNode)(2,c,{index:4,icon:"mortar-pestle",name:"Chemical and Psychoactive Scan",description:"Provides a list of consumed chemicals, as well as potential\nside effects."})]})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,l)})]}),!!h&&1===f&&(0,o.createComponentVNode)(2,d),!!C&&2===f&&(0,o.createComponentVNode)(2,u),!!g&&3===f&&(0,o.createComponentVNode)(2,s),!!b&&4===f&&(0,o.createComponentVNode)(2,p)]})})};var c=function(e,t){var n=e.index,a=e.name,c=e.description,l=e.icon,d=(0,r.useBackend)(t),u=d.act,s=d.data,p=(0,r.useSharedState)(t,"scanIndex"),m=p[0],f=p[1],h=s["active_status_"+n];return(0,o.createComponentVNode)(2,i.Flex,{spacing:1,align:"baseline",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{width:"16px",textAlign:"center",children:(0,o.createComponentVNode)(2,i.Icon,{name:h?"check":"dollar-sign",color:h?"green":"grey"})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:l,selected:h&&m===n,tooltip:c,tooltipPosition:"right",content:a,onClick:function(){h||u("beginScan_"+n),f(n)}})})]})},l=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.kiosk_cost,d=c.patient_name;return(0,o.createComponentVNode)(2,i.Section,{minHeight:"100%",children:[(0,o.createComponentVNode)(2,i.Box,{italic:!0,children:["Greetings Valued Employee! Please select a desired automatic health check procedure. Diagnosis costs ",(0,o.createVNode)(1,"b",null,[l,(0,o.createTextVNode)(" credits.")],0)]}),(0,o.createComponentVNode)(2,i.Box,{mt:1,children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mr:1,children:"Patient:"}),d]}),(0,o.createComponentVNode)(2,i.Button,{mt:1,tooltip:"Resets the current scanning target, cancelling current scans.",icon:"sync",color:"average",onClick:function(){return a("clearTarget")},content:"Reset Scanner"})]})},d=function(e,t){var n=(0,r.useBackend)(t).data,a=n.patient_health,c=n.brute_health,l=n.burn_health,d=n.suffocation_health,u=n.toxin_health;return(0,o.createComponentVNode)(2,i.Section,{title:"Patient Health",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Total Health",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:a/100,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:a}),"%"]})}),(0,o.createComponentVNode)(2,i.LabeledList.Divider),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Brute Damage",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:c/100,color:"bad",children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c})})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Burn Damage",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:l/100,color:"bad",children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:l})})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Oxygen Damage",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:d/100,color:"bad",children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:d})})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Toxin Damage",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:u/100,color:"bad",children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:u})})})]})})},u=function(e,t){var n=(0,r.useBackend)(t).data,a=n.patient_status,c=n.patient_illness,l=n.illness_info,d=n.bleed_status,u=n.blood_levels,s=n.blood_status;return(0,o.createComponentVNode)(2,i.Section,{title:"Symptom Based Checkup",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Patient Status",color:"good",children:a}),(0,o.createComponentVNode)(2,i.LabeledList.Divider),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Disease Status",children:c}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Disease information",children:l}),(0,o.createComponentVNode)(2,i.LabeledList.Divider),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood Levels",children:[(0,o.createComponentVNode)(2,i.ProgressBar,{value:u/100,color:"bad",children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:u})}),(0,o.createComponentVNode)(2,i.Box,{mt:1,color:"label",children:d})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood Information",children:s})]})})},s=function(e,t){var n=(0,r.useBackend)(t).data,a=n.clone_health,c=n.brain_damage,l=n.brain_health,d=n.rad_contamination_status,u=n.rad_contamination_value,s=n.rad_sickness_status,p=n.rad_sickness_value,m=n.trauma_status;return(0,o.createComponentVNode)(2,i.Section,{title:"Patient Neurological and Radiological Health",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Cellular Damage",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:a/100,color:"good",children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:a})})}),(0,o.createComponentVNode)(2,i.LabeledList.Divider),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Brain Damage",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:c/100,color:"good",children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c})})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Brain Status",color:"health-0",children:l}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Brain Trauma Status",children:m}),(0,o.createComponentVNode)(2,i.LabeledList.Divider),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Radiation Sickness Status",children:s}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Radiation Sickness Percentage",children:[p,"%"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Radiation Contamination Status",children:d}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Radiation Contamination Percentage",children:[u,"%"]})]})})},p=function(e,t){var n=(0,r.useBackend)(t).data,a=n.chemical_list,c=void 0===a?[]:a,l=n.overdose_list,d=void 0===l?[]:l,u=n.addict_list,s=void 0===u?[]:u,p=n.hallucinating_status;return(0,o.createComponentVNode)(2,i.Section,{title:"Chemical and Psychoactive Analysis",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Chemical Contents",children:[0===c.length&&(0,o.createComponentVNode)(2,i.Box,{color:"average",children:"No reagents detected."}),c.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{color:"good",children:[e.volume," units of ",e.name]},e.id)}))]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Overdose Status",color:"bad",children:[0===d.length&&(0,o.createComponentVNode)(2,i.Box,{color:"good",children:"Patient is not overdosing."}),d.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{children:["Overdosing on ",e.name]},e.id)}))]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Addiction Status",color:"bad",children:[0===s.length&&(0,o.createComponentVNode)(2,i.Box,{color:"good",children:"Patient has no addictions."}),s.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{children:["Addicted to ",e.name]},e.id)}))]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Psychoactive Status",children:p})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MiningVendor=void 0;var o=n(0),r=n(6),i=n(1),a=n(3),c=n(2);t.MiningVendor=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data,u=[].concat(d.product_records);return(0,o.createComponentVNode)(2,c.Window,{width:425,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"User",children:d.user&&(0,o.createComponentVNode)(2,a.Box,{children:["Welcome, ",(0,o.createVNode)(1,"b",null,d.user.name||"Unknown",0),","," ",(0,o.createVNode)(1,"b",null,d.user.job||"Unemployed",0),"!",(0,o.createVNode)(1,"br"),"Your balance is ",(0,o.createVNode)(1,"b",null,[d.user.points,(0,o.createTextVNode)(" mining points")],0),"."]})||(0,o.createComponentVNode)(2,a.Box,{color:"light-gray",children:["No registered ID card!",(0,o.createVNode)(1,"br"),"Please contact your local HoP!"]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Equipment",children:(0,o.createComponentVNode)(2,a.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:[(0,o.createVNode)(1,"span",(0,r.classes)(["vending32x32",e.path]),null,1,{style:{"vertical-align":"middle"}})," ",(0,o.createVNode)(1,"b",null,e.name,0)]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{style:{"min-width":"95px","text-align":"center"},disabled:!d.user||e.price>d.user.points,content:e.price+" points",onClick:function(){return l("purchase",{ref:e.ref})}})})]},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Mint=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Mint=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.inserted_materials||[];return(0,o.createComponentVNode)(2,a.Window,{width:300,height:250,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Materials",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:l.processing?"times":"power-off",content:l.processing?"Stop":"Start",selected:l.processing,onClick:function(){return c(l.processing?"stoppress":"startpress")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:d.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.material,buttons:(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:l.chosen_material===e.material,onClick:function(){return c("changematerial",{material_name:e.material})}}),children:[e.amount," cm\xb3"]},e.material)}))})}),(0,o.createComponentVNode)(2,i.Section,{children:["Pressed ",l.produced_coins," coins this cycle."]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Mule=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=n(60);t.Mule=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.on,s=d.cell,p=d.cellPercent,m=d.load,f=d.mode,h=d.modeStatus,C=d.haspai,g=d.autoReturn,b=d.autoPickup,N=d.reportDelivery,v=d.destination,V=d.home,y=d.id,k=d.destinations,x=void 0===k?[]:k,_=d.locked&&!d.siliconUser;return(0,o.createComponentVNode)(2,a.Window,{width:350,height:425,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,c.InterfaceLockNoticeBox),(0,o.createComponentVNode)(2,i.Section,{title:"Status",minHeight:"110px",buttons:!_&&(0,o.createComponentVNode)(2,i.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return l("power")}}),children:[(0,o.createComponentVNode)(2,i.ProgressBar,{value:s?p/100:0,color:s?"good":"bad"}),(0,o.createComponentVNode)(2,i.Flex,{mt:1,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Mode",color:h,children:f})})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Load",color:m?"good":"average",children:m||"None"})})})]})]}),!_&&(0,o.createComponentVNode)(2,i.Section,{title:"Controls",buttons:(0,o.createFragment)([!!m&&(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Unload",onClick:function(){return l("unload")}}),!!C&&(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject PAI",onClick:function(){return l("ejectpai")}})],0),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"ID",children:(0,o.createComponentVNode)(2,i.Input,{value:y,onChange:function(e,t){return l("setid",{value:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Destination",children:[(0,o.createComponentVNode)(2,i.Dropdown,{over:!0,selected:v||"None",options:x,width:"150px",onSelected:function(e){return l("destination",{value:e})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"stop",content:"Stop",onClick:function(){return l("stop")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"play",content:"Go",onClick:function(){return l("go")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Home",children:[(0,o.createComponentVNode)(2,i.Dropdown,{over:!0,selected:V,options:x,width:"150px",onSelected:function(e){return l("destination",{value:e})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"home",content:"Go Home",onClick:function(){return l("home")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:g,content:"Auto-Return",onClick:function(){return l("autored")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:b,content:"Auto-Pickup",onClick:function(){return l("autopick")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:N,content:"Report Delivery",onClick:function(){return l("report")}})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteChamberControlContent=t.NaniteChamberControl=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NaniteChamberControl=function(e,t){return(0,o.createComponentVNode)(2,a.Window,{width:380,height:570,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.status_msg,d=c.locked,u=c.occupant_name,s=c.has_nanites,p=c.nanite_volume,m=c.regen_rate,f=c.safety_threshold,h=c.cloud_id,C=c.scan_level;if(l)return(0,o.createComponentVNode)(2,i.NoticeBox,{textAlign:"center",children:l});var g=c.mob_programs||[];return(0,o.createComponentVNode)(2,i.Section,{title:"Chamber: "+u,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d?"lock":"lock-open",content:d?"Locked":"Unlocked",color:d?"bad":"default",onClick:function(){return a("toggle_lock")}}),children:s?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Status",level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"exclamation-triangle",content:"Destroy Nanites",color:"bad",onClick:function(){return a("remove_nanites")}}),children:(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Nanite Volume",children:p}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Growth Rate",children:m})]})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Safety Threshold",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:f,minValue:0,maxValue:500,width:"39px",onChange:function(e,t){return a("set_safety",{value:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:h,minValue:0,maxValue:100,step:1,stepPixelSize:3,width:"39px",onChange:function(e,t){return a("set_cloud",{value:t})}})})]})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Programs",level:2,children:g.map((function(e){var t=e.extra_settings||[],n=e.rules||[];return(0,o.createComponentVNode)(2,i.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.desc}),C>=2&&(0,o.createComponentVNode)(2,i.Grid.Column,{size:.6,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Activation Status",children:(0,o.createComponentVNode)(2,i.Box,{color:e.activated?"good":"bad",children:e.activated?"Active":"Inactive"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Nanites Consumed",children:[e.use_rate,"/s"]})]})})]}),C>=2&&(0,o.createComponentVNode)(2,i.Grid,{children:[!!e.can_trigger&&(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Triggers",level:2,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Cost",children:e.trigger_cost}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Cooldown",children:e.trigger_cooldown}),!!e.timer_trigger_delay&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Delay",children:[e.timer_trigger_delay," s"]}),!!e.timer_trigger&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Repeat Timer",children:[e.timer_trigger," s"]})]})})}),!(!e.timer_restart&&!e.timer_shutdown)&&(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[e.timer_restart&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Restart Timer",children:[e.timer_restart," s"]}),e.timer_shutdown&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shutdown Timer",children:[e.timer_shutdown," s"]})]})})})]}),C>=3&&!!e.has_extra_settings&&(0,o.createComponentVNode)(2,i.Section,{title:"Extra Settings",level:2,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:t.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,children:e.value},e.name)}))})}),C>=4&&(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Codes",level:2,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.activation_code&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Activation",children:e.activation_code}),!!e.deactivation_code&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Deactivation",children:e.deactivation_code}),!!e.kill_code&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Kill",children:e.kill_code}),!!e.can_trigger&&!!e.trigger_code&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger",children:e.trigger_code})]})})}),e.has_rules&&(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Rules",level:2,children:n.map((function(e){return(0,o.createFragment)([e.display,(0,o.createVNode)(1,"br")],0,e.display)}))})})]})]})},e.name)}))})],4):(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",textAlign:"center",fontSize:"30px",mb:1,children:"No Nanites Detected"}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,icon:"syringe",content:" Implant Nanites",color:"green",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return a("nanite_injection")}})],4)})};t.NaniteChamberControlContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteCloudControl=t.NaniteCloudBackupDetails=t.NaniteCloudBackupList=t.NaniteInfoBox=t.NaniteDiskBox=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=function(e,t){var n=(0,r.useBackend)(t).data,a=n.has_disk,c=n.has_program,d=n.disk;return a?c?(0,o.createComponentVNode)(2,l,{program:d}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Inserted disk has no program"}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No disk inserted"})};t.NaniteDiskBox=c;var l=function(e,t){var n=e.program,r=n.name,a=n.desc,c=n.activated,l=n.use_rate,d=n.can_trigger,u=n.trigger_cost,s=n.trigger_cooldown,p=n.activation_code,m=n.deactivation_code,f=n.kill_code,h=n.trigger_code,C=n.timer_restart,g=n.timer_shutdown,b=n.timer_trigger,N=n.timer_trigger_delay,v=n.extra_settings||[];return(0,o.createComponentVNode)(2,i.Section,{title:r,level:2,buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,color:c?"good":"bad",children:c?"Activated":"Deactivated"}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{mr:1,children:a}),(0,o.createComponentVNode)(2,i.Grid.Column,{size:.5,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Use Rate",children:l}),!!d&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Cost",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Cooldown",children:s})],4)]})})]}),(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Codes",level:3,mr:1,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Activation",children:p}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Deactivation",children:m}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Kill",children:f}),!!d&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger",children:h})]})})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Delays",level:3,mr:1,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Restart",children:[C," s"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shutdown",children:[g," s"]}),!!d&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger",children:[b," s"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Delay",children:[N," s"]})],4)]})})})]}),(0,o.createComponentVNode)(2,i.Section,{title:"Extra Settings",level:3,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:v.map((function(e){var t={number:(0,o.createFragment)([e.value,e.unit],0),text:e.value,type:e.value,boolean:e.value?e.true_text:e.false_text};return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,children:t[e.type]},e.name)}))})})]})};t.NaniteInfoBox=l;var d=function(e,t){var n=(0,r.useBackend)(t),a=n.act;return(n.data.cloud_backups||[]).map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Backup #"+e.cloud_id,textAlign:"center",onClick:function(){return a("set_view",{view:e.cloud_id})}},e.cloud_id)}))};t.NaniteCloudBackupList=d;var u=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,d=c.current_view,u=c.disk,s=c.has_program,p=c.cloud_backup,m=u&&u.can_rule||!1;if(!p)return(0,o.createComponentVNode)(2,i.NoticeBox,{children:"ERROR: Backup not found"});var f=c.cloud_programs||[];return(0,o.createComponentVNode)(2,i.Section,{title:"Backup #"+d,level:2,buttons:!!s&&(0,o.createComponentVNode)(2,i.Button,{icon:"upload",content:"Upload From Disk",color:"good",onClick:function(){return a("upload_program")}}),children:f.map((function(e){var t=e.rules||[];return(0,o.createComponentVNode)(2,i.Collapsible,{title:e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"minus-circle",color:"bad",onClick:function(){return a("remove_program",{program_id:e.id})}}),children:(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,l,{program:e}),(!!m||!!e.has_rules)&&(0,o.createComponentVNode)(2,i.Section,{mt:-2,title:"Rules",level:2,buttons:!!m&&(0,o.createComponentVNode)(2,i.Button,{icon:"plus",content:"Add Rule from Disk",color:"good",onClick:function(){return a("add_rule",{program_id:e.id})}}),children:e.has_rules?t.map((function(t){return(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Button,{icon:"minus-circle",color:"bad",onClick:function(){return a("remove_rule",{program_id:e.id,rule_id:t.id})}})," "+t.display]},t.display)})):(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"No Active Rules"})})]})},e.name)}))})};t.NaniteCloudBackupDetails=u;t.NaniteCloudControl=function(e,t){var n=(0,r.useBackend)(t),l=n.act,s=n.data,p=s.has_disk,m=s.current_view,f=s.new_backup_id;return(0,o.createComponentVNode)(2,a.Window,{width:375,height:700,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Program Disk",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",disabled:!p,onClick:function(){return l("eject")}}),children:(0,o.createComponentVNode)(2,c)}),(0,o.createComponentVNode)(2,i.Section,{title:"Cloud Storage",buttons:m?(0,o.createComponentVNode)(2,i.Button,{icon:"arrow-left",content:"Return",onClick:function(){return l("set_view",{view:0})}}):(0,o.createFragment)(["New Backup: ",(0,o.createComponentVNode)(2,i.NumberInput,{value:f,minValue:1,maxValue:100,stepPixelSize:4,width:"39px",onChange:function(e,t){return l("update_new_backup_value",{value:t})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"plus",onClick:function(){return l("create_backup")}})],0),children:s.current_view?(0,o.createComponentVNode)(2,u):(0,o.createComponentVNode)(2,d)})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteProgramHub=void 0;var o=n(0),r=n(18),i=n(1),a=n(3),c=n(2);t.NaniteProgramHub=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data,u=d.detail_view,s=d.disk,p=d.has_disk,m=d.has_program,f=d.programs,h=void 0===f?{}:f,C=(0,i.useSharedState)(t,"category"),g=C[0],b=C[1],N=h&&h[g]||[];return(0,o.createComponentVNode)(2,c.Window,{width:500,height:700,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Program Disk",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return l("eject")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"minus-circle",content:"Delete Program",onClick:function(){return l("clear")}})],4),children:p?m?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Program Name",children:s.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Description",children:s.desc})]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Program Installed"}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Insert Disk"})}),(0,o.createComponentVNode)(2,a.Section,{title:"Programs",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:u?"info":"list",content:u?"Detailed":"Compact",onClick:function(){return l("toggle_details")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Sync Research",onClick:function(){return l("refresh")}})],4),children:null!==h?(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{minWidth:"110px",children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:(0,r.map)((function(e,t){var n=t.substring(0,t.length-8);return(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:t===g,onClick:function(){return b(t)},children:n},t)}))(h)})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:u?N.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"download",content:"Download",disabled:!p,onClick:function(){return l("download",{program_id:e.id})}}),children:e.desc},e.id)})):(0,o.createComponentVNode)(2,a.LabeledList,{children:N.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"download",content:"Download",disabled:!p,onClick:function(){return l("download",{program_id:e.id})}})},e.id)}))})})]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No nanite programs are currently researched."})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteProgrammerContent=t.NaniteProgrammer=t.NaniteExtraBoolean=t.NaniteExtraType=t.NaniteExtraText=t.NaniteExtraNumber=t.NaniteExtraEntry=t.NaniteDelays=t.NaniteCodes=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Codes",level:3,mr:1,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Activation",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:c.activation_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return a("set_code",{target_code:"activation",code:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Deactivation",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:c.deactivation_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return a("set_code",{target_code:"deactivation",code:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Kill",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:c.kill_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return a("set_code",{target_code:"kill",code:t})}})}),!!c.can_trigger&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:c.trigger_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return a("set_code",{target_code:"trigger",code:t})}})})]})})};t.NaniteCodes=c;var l=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Delays",level:3,ml:1,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Restart Timer",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:c.timer_restart,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return a("set_restart_timer",{delay:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shutdown Timer",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:c.timer_shutdown,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return a("set_shutdown_timer",{delay:t})}})}),!!c.can_trigger&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Repeat Timer",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:c.timer_trigger,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return a("set_trigger_timer",{delay:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Delay",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:c.timer_trigger_delay,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return a("set_timer_trigger_delay",{delay:t})}})})],4)]})})};t.NaniteDelays=l;var d=function(e,t){var n=e.extra_setting,r=n.name,a=n.type,c={number:(0,o.createComponentVNode)(2,u,{extra_setting:n}),text:(0,o.createComponentVNode)(2,s,{extra_setting:n}),type:(0,o.createComponentVNode)(2,p,{extra_setting:n}),boolean:(0,o.createComponentVNode)(2,m,{extra_setting:n})};return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:r,children:c[a]})};t.NaniteExtraEntry=d;var u=function(e,t){var n=e.extra_setting,a=(0,r.useBackend)(t).act,c=n.name,l=n.value,d=n.min,u=n.max,s=n.unit;return(0,o.createComponentVNode)(2,i.NumberInput,{value:l,width:"64px",minValue:d,maxValue:u,unit:s,onChange:function(e,t){return a("set_extra_setting",{target_setting:c,value:t})}})};t.NaniteExtraNumber=u;var s=function(e,t){var n=e.extra_setting,a=(0,r.useBackend)(t).act,c=n.name,l=n.value;return(0,o.createComponentVNode)(2,i.Input,{value:l,width:"200px",onInput:function(e,t){return a("set_extra_setting",{target_setting:c,value:t})}})};t.NaniteExtraText=s;var p=function(e,t){var n=e.extra_setting,a=(0,r.useBackend)(t).act,c=n.name,l=n.value,d=n.types;return(0,o.createComponentVNode)(2,i.Dropdown,{over:!0,selected:l,width:"150px",options:d,onSelected:function(e){return a("set_extra_setting",{target_setting:c,value:e})}})};t.NaniteExtraType=p;var m=function(e,t){var n=e.extra_setting,a=(0,r.useBackend)(t).act,c=n.name,l=n.value,d=n.true_text,u=n.false_text;return(0,o.createComponentVNode)(2,i.Button.Checkbox,{content:l?d:u,checked:l,onClick:function(){return a("set_extra_setting",{target_setting:c})}})};t.NaniteExtraBoolean=m;t.NaniteProgrammer=function(e,t){return(0,o.createComponentVNode)(2,a.Window,{width:420,height:550,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,f)})})};var f=function(e,t){var n=(0,r.useBackend)(t),a=n.act,u=n.data,s=u.has_disk,p=u.has_program,m=u.name,f=u.desc,h=u.use_rate,C=u.can_trigger,g=u.trigger_cost,b=u.trigger_cooldown,N=u.activated,v=u.has_extra_settings,V=u.extra_settings,y=void 0===V?{}:V;return s?p?(0,o.createComponentVNode)(2,i.Section,{title:m,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",onClick:function(){return a("eject")}}),children:[(0,o.createComponentVNode)(2,i.Section,{title:"Info",level:2,children:(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:f}),(0,o.createComponentVNode)(2,i.Grid.Column,{size:.7,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Use Rate",children:h}),!!C&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Cost",children:g}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Trigger Cooldown",children:b})],4)]})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Settings",level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:N?"power-off":"times",content:N?"Active":"Inactive",selected:N,color:"bad",bold:!0,onClick:function(){return a("toggle_active")}}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,c)}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,l)})]}),!!v&&(0,o.createComponentVNode)(2,i.Section,{title:"Special",level:3,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:y.map((function(e){return(0,o.createComponentVNode)(2,d,{extra_setting:e},e.name)}))})})]})]}):(0,o.createComponentVNode)(2,i.Section,{title:"Blank Disk",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",onClick:function(){return a("eject")}})}):(0,o.createComponentVNode)(2,i.NoticeBox,{textAlign:"center",children:"Insert a nanite program disk"})};t.NaniteProgrammerContent=f},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteRemoteContent=t.NaniteRemote=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NaniteRemote=function(e,t){return(0,o.createComponentVNode)(2,a.Window,{width:420,height:500,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.code,d=c.locked,u=c.mode,s=c.program_name,p=c.relay_code,m=c.comms,f=c.message,h=c.saved_settings,C=void 0===h?[]:h;return d?(0,o.createComponentVNode)(2,i.NoticeBox,{children:"This interface is locked."}):(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Nanite Control",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"lock",content:"Lock Interface",onClick:function(){return a("lock")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Name",children:[(0,o.createComponentVNode)(2,i.Input,{value:s,maxLength:14,width:"130px",onChange:function(e,t){return a("update_name",{name:t})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"save",content:"Save",onClick:function(){return a("save")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:m?"Comm Code":"Signal Code",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:l,minValue:0,maxValue:9999,width:"47px",step:1,stepPixelSize:2,onChange:function(e,t){return a("set_code",{code:t})}})}),!!m&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Message",children:(0,o.createComponentVNode)(2,i.Input,{value:f,width:"270px",onChange:function(e,t){return a("set_message",{value:t})}})}),"Relay"===u&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Relay Code",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:p,minValue:0,maxValue:9999,width:"47px",step:1,stepPixelSize:2,onChange:function(e,t){return a("set_relay_code",{code:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Signal Mode",children:["Off","Local","Targeted","Area","Relay"].map((function(e){return(0,o.createComponentVNode)(2,i.Button,{content:e,selected:u===e,onClick:function(){return a("select_mode",{mode:e})}},e)}))})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Saved Settings",children:C.length>0?(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{width:"35%",children:"Name"}),(0,o.createComponentVNode)(2,i.Table.Cell,{width:"20%",children:"Mode"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:"Code"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:"Relay"})]}),C.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,color:"label",children:[e.name,":"]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.mode}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.code}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Relay"===e.mode&&e.relay_code}),(0,o.createComponentVNode)(2,i.Table.Cell,{textAlign:"right",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"upload",color:"good",onClick:function(){return a("load",{save_id:e.id})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"minus",color:"bad",onClick:function(){return a("remove_save",{save_id:e.id})}})]})]},e.id)}))]}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No settings currently saved"})})],4)};t.NaniteRemoteContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.NotificationPreferences=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NotificationPreferences=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=(n.data.ignore||[]).sort((function(e,t){var n=e.desc.toLowerCase(),o=t.desc.toLowerCase();return n<o?-1:n>o?1:0}));return(0,o.createComponentVNode)(2,a.Window,{title:"Notification Preferences",width:270,height:360,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{title:"Ghost Role Notifications",children:l.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:e.enabled?"times":"check",content:e.desc,color:e.enabled?"bad":"good",onClick:function(){return c("toggle_ignore",{key:e.key})}},e.key)}))})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtnetRelay=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtnetRelay=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.enabled,u=l.dos_capacity,s=l.dos_overload,p=l.dos_crashed;return(0,o.createComponentVNode)(2,a.Window,{title:"NtNet Quantum Relay",width:400,height:300,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Network Buffer",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"power-off",selected:d,content:d?"ENABLED":"DISABLED",onClick:function(){return c("toggle")}}),children:p?(0,o.createComponentVNode)(2,i.Box,{fontFamily:"monospace",children:[(0,o.createComponentVNode)(2,i.Box,{fontSize:"20px",children:"NETWORK BUFFER OVERFLOW"}),(0,o.createComponentVNode)(2,i.Box,{fontSize:"16px",children:"OVERLOAD RECOVERY MODE"}),(0,o.createComponentVNode)(2,i.Box,{children:"This system is suffering temporary outage due to overflow of traffic buffers. Until buffered traffic is processed, all further requests will be dropped. Frequent occurences of this error may indicate insufficient hardware capacity of your network. Please contact your network planning department for instructions on how to resolve this issue."}),(0,o.createComponentVNode)(2,i.Box,{fontSize:"20px",color:"bad",children:"ADMINISTRATOR OVERRIDE"}),(0,o.createComponentVNode)(2,i.Box,{fontSize:"16px",color:"bad",children:"CAUTION - DATA LOSS MAY OCCUR"}),(0,o.createComponentVNode)(2,i.Button,{icon:"signal",content:"PURGE BUFFER",mt:1,color:"bad",onClick:function(){return c("restart")}})]}):(0,o.createComponentVNode)(2,i.ProgressBar,{value:s,minValue:0,maxValue:u,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:s})," GQ"," / ",u," GQ"]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosAiRestorer=void 0;var o=n(0),r=n(2),i=n(176);t.NtosAiRestorer=function(){return(0,o.createComponentVNode)(2,r.NtosWindow,{width:370,height:400,resizable:!0,children:(0,o.createComponentVNode)(2,r.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.AiRestorerContent)})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosArcade=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtosArcade=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.NtosWindow,{width:450,height:350,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Outbomb Cuban Pete Ultra",textAlign:"center",children:[(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{size:2,children:[(0,o.createComponentVNode)(2,i.Box,{m:1}),(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Player Health",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:l.PlayerHitpoints,minValue:0,maxValue:30,ranges:{olive:[31,Infinity],good:[20,31],average:[10,20],bad:[-Infinity,10]},children:[l.PlayerHitpoints,"HP"]})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Player Magic",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:l.PlayerMP,minValue:0,maxValue:10,ranges:{purple:[11,Infinity],violet:[3,11],bad:[-Infinity,3]},children:[l.PlayerMP,"MP"]})})]}),(0,o.createComponentVNode)(2,i.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,i.Section,{backgroundColor:1===l.PauseState?"#1b3622":"#471915",children:l.Status})]}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:[(0,o.createComponentVNode)(2,i.ProgressBar,{value:l.Hitpoints,minValue:0,maxValue:45,ranges:{good:[30,Infinity],average:[5,30],bad:[-Infinity,5]},children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:l.Hitpoints}),"HP"]}),(0,o.createComponentVNode)(2,i.Box,{m:1}),(0,o.createComponentVNode)(2,i.Section,{inline:!0,width:"156px",textAlign:"center",children:(0,o.createVNode)(1,"img",null,null,1,{src:l.BossID})})]})]}),(0,o.createComponentVNode)(2,i.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,i.Button,{icon:"fist-raised",tooltip:"Go in for the kill!",tooltipPosition:"top",disabled:0===l.GameActive||1===l.PauseState,onClick:function(){return c("Attack")},content:"Attack!"}),(0,o.createComponentVNode)(2,i.Button,{icon:"band-aid",tooltip:"Heal yourself!",tooltipPosition:"top",disabled:0===l.GameActive||1===l.PauseState,onClick:function(){return c("Heal")},content:"Heal!"}),(0,o.createComponentVNode)(2,i.Button,{icon:"magic",tooltip:"Recharge your magic!",tooltipPosition:"top",disabled:0===l.GameActive||1===l.PauseState,onClick:function(){return c("Recharge_Power")},content:"Recharge!"})]}),(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Button,{icon:"sync-alt",tooltip:"One more game couldn't hurt.",tooltipPosition:"top",disabled:1===l.GameActive,onClick:function(){return c("Start_Game")},content:"Begin Game"}),(0,o.createComponentVNode)(2,i.Button,{icon:"ticket-alt",tooltip:"Claim at your local Arcade Computer for Prizes!",tooltipPosition:"top",disabled:1===l.GameActive,onClick:function(){return c("Dispense_Tickets")},content:"Claim Tickets"})]}),(0,o.createComponentVNode)(2,i.Box,{color:l.TicketCount>=1?"good":"normal",children:["Earned Tickets: ",l.TicketCount]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosAtmos=void 0;var o=n(0),r=n(18),i=n(33),a=n(15),c=n(1),l=n(3),d=n(38),u=n(2);t.NtosAtmos=function(e,t){var n=(0,c.useBackend)(t),s=(n.act,n.data),p=s.AirTemp,m=s.AirPressure,f=(0,i.flow)([(0,r.filter)((function(e){return e.percentage>=.01})),(0,r.sortBy)((function(e){return-e.percentage}))])(s.AirData||[]),h=Math.max.apply(Math,[1].concat(f.map((function(e){return e.percentage}))));return(0,o.createComponentVNode)(2,u.NtosWindow,{width:300,height:350,resizable:!0,children:(0,o.createComponentVNode)(2,u.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,l.Section,{children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Temperature",children:[p,"\xb0C"]}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Pressure",children:[m," kPa"]})]})}),(0,o.createComponentVNode)(2,l.Section,{children:(0,o.createComponentVNode)(2,l.LabeledList,{children:f.map((function(e){return(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:(0,d.getGasLabel)(e.name),children:(0,o.createComponentVNode)(2,l.ProgressBar,{color:(0,d.getGasColor)(e.name),value:e.percentage,minValue:0,maxValue:h,children:(0,a.toFixed)(e.percentage,2)+"%"})},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosBountyConsole=void 0;var o=n(0),r=n(1),i=n(3),a=n(44),c=n(2);t.NtosBountyConsole=function(e,t){var n=(0,r.useBackend)(t),a=n.act,d=n.data.bountydata,u=void 0===d?[]:d;return(0,o.createComponentVNode)(2,c.NtosWindow,{width:750,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,c.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{title:(0,o.createComponentVNode)(2,l),buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"print",content:"Print Bounty List",onClick:function(){return a("Print")}}),children:(0,o.createComponentVNode)(2,i.Table,{border:!0,children:[(0,o.createComponentVNode)(2,i.Table.Row,{bold:!0,italic:!0,color:"label",fontSize:1.25,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{p:1,textAlign:"center",children:"Bounty Object"}),(0,o.createComponentVNode)(2,i.Table.Cell,{p:1,textAlign:"center",children:"Description"}),(0,o.createComponentVNode)(2,i.Table.Cell,{p:1,textAlign:"center",children:"Progress"}),(0,o.createComponentVNode)(2,i.Table.Cell,{p:1,textAlign:"center",children:"Value"}),(0,o.createComponentVNode)(2,i.Table.Cell,{p:1,textAlign:"center",children:"Claim"})]}),u.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{backgroundColor:1===e.priority?"rgba(252, 152, 3, 0.25)":"",children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,p:1,children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{italic:!0,textAlign:"center",p:1,children:e.description}),(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,p:1,textAlign:"center",children:[1===e.priority?(0,o.createComponentVNode)(2,i.Box,{children:"High Priority"}):"",e.completion_string]}),(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,p:1,textAlign:"center",children:e.reward_string}),(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,p:1,children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,textAlign:"center",icon:1===e.claimed?"check":"",content:1===e.claimed?"Claimed":"Claim",disabled:1===e.claimed,color:1===e.can_claim?"green":"red",onClick:function(){return a("ClaimBounty",{bounty:e.bounty_ref})}})})]},e.name)}))]})})})})};var l=function(e,t){var n=(0,r.useBackend)(t),c=(n.act,n.data.stored_cash);return(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c,format:function(e){return(0,a.formatMoney)(e)}})," credits"]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosCardContent=t.NtosCard=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=n(177);t.NtosCard=function(e,t){return(0,o.createComponentVNode)(2,a.NtosWindow,{width:450,height:520,resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,l)})})};var l=function(e,t){var n=(0,r.useBackend)(t),a=n.act,l=n.data,d=(0,r.useLocalState)(t,"tab",1),u=d[0],s=d[1],p=l.authenticated,m=l.regions,f=void 0===m?[]:m,h=l.access_on_card,C=void 0===h?[]:h,g=l.jobs,b=void 0===g?{}:g,N=l.id_rank,v=l.id_owner,V=l.has_id,y=l.have_printer,k=l.have_id_slot,x=l.id_name,_=(0,r.useLocalState)(t,"department",Object.keys(b)[0]),w=_[0],B=_[1];if(!k)return(0,o.createComponentVNode)(2,i.NoticeBox,{children:"This program requires an ID slot in order to function"});var S=b[w]||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:V&&p?(0,o.createComponentVNode)(2,i.Input,{value:v,width:"250px",onInput:function(e,t){return a("PRG_edit",{name:t})}}):v||"No Card Inserted",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"print",content:"Print",disabled:!y||!V,onClick:function(){return a("PRG_print")}}),(0,o.createComponentVNode)(2,i.Button,{icon:p?"sign-out-alt":"sign-in-alt",content:p?"Log Out":"Log In",color:p?"bad":"good",onClick:function(){a(p?"PRG_logout":"PRG_authenticate")}})],4),children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"eject",content:x,onClick:function(){return a("PRG_eject")}})}),!!V&&!!p&&(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:1===u,onClick:function(){return s(1)},children:"Access"}),(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:2===u,onClick:function(){return s(2)},children:"Jobs"})]}),1===u&&(0,o.createComponentVNode)(2,c.AccessList,{accesses:f,selectedList:C,accessMod:function(e){return a("PRG_access",{access_target:e})},grantAll:function(){return a("PRG_grantall")},denyAll:function(){return a("PRG_denyall")},grantDep:function(e){return a("PRG_grantregion",{region:e})},denyDep:function(e){return a("PRG_denyregion",{region:e})}}),2===u&&(0,o.createComponentVNode)(2,i.Section,{title:N,buttons:(0,o.createComponentVNode)(2,i.Button.Confirm,{icon:"exclamation-triangle",content:"Terminate",color:"bad",onClick:function(){return a("PRG_terminate")}}),children:[(0,o.createComponentVNode)(2,i.Button.Input,{fluid:!0,content:"Custom...",onCommit:function(e,t){return a("PRG_assign",{assign_target:"Custom",custom_name:t})}}),(0,o.createComponentVNode)(2,i.Flex,{children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:Object.keys(b).map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:e===w,onClick:function(){return B(e)},children:e},e)}))})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,children:S.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:e.display_name,onClick:function(){return a("PRG_assign",{assign_target:e.job})}},e.job)}))})]})]})]})],0)};t.NtosCardContent=l},function(e,t,n){"use strict";t.__esModule=!0,t.NtosConfiguration=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtosConfiguration=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.PC_device_theme,u=l.power_usage,s=l.battery_exists,p=l.battery,m=void 0===p?{}:p,f=l.disk_size,h=l.disk_used,C=l.hardware,g=void 0===C?[]:C;return(0,o.createComponentVNode)(2,a.NtosWindow,{theme:d,width:420,height:630,resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Power Supply",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,mr:1,children:["Power Draw: ",u,"W"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Battery Status",color:!s&&"average",children:s?(0,o.createComponentVNode)(2,i.ProgressBar,{value:m.charge,minValue:0,maxValue:m.max,ranges:{good:[m.max/2,Infinity],average:[m.max/4,m.max/2],bad:[-Infinity,m.max/4]},children:[m.charge," / ",m.max]}):"Not Available"})})}),(0,o.createComponentVNode)(2,i.Section,{title:"File System",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:h,minValue:0,maxValue:f,color:"good",children:[h," GQ / ",f," GQ"]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Hardware Components",children:g.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createFragment)([!e.critical&&(0,o.createComponentVNode)(2,i.Button.Checkbox,{content:"Enabled",checked:e.enabled,mr:1,onClick:function(){return c("PC_toggle_component",{name:e.name})}}),(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,mr:1,children:["Power Usage: ",e.powerusage,"W"]})],0),children:e.desc},e.name)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosCrewManifest=void 0;var o=n(0),r=n(18),i=n(1),a=n(3),c=n(2);t.NtosCrewManifest=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data,u=d.have_printer,s=d.manifest,p=void 0===s?{}:s;return(0,o.createComponentVNode)(2,c.NtosWindow,{width:400,height:480,resizable:!0,children:(0,o.createComponentVNode)(2,c.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{title:"Crew Manifest",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"print",content:"Print",disabled:!u,onClick:function(){return l("PRG_print")}}),children:(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,a.Section,{level:2,title:t,children:(0,o.createComponentVNode)(2,a.Table,{children:e.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:["(",e.rank,")"]})]},e.name)}))})},t)}))(p)})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosCyborgRemoteMonitorSyndicate=void 0;var o=n(0),r=n(2),i=n(181);t.NtosCyborgRemoteMonitorSyndicate=function(e,t){return(0,o.createComponentVNode)(2,r.NtosWindow,{width:600,height:800,theme:"syndicate",children:(0,o.createComponentVNode)(2,r.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.NtosCyborgRemoteMonitorContent)})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosFileManager=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtosFileManager=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.PC_device_theme,s=d.usbconnected,p=d.files,m=void 0===p?[]:p,f=d.usbfiles,h=void 0===f?[]:f;return(0,o.createComponentVNode)(2,a.NtosWindow,{resizable:!0,theme:u,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,c,{files:m,usbconnected:s,onUpload:function(e){return l("PRG_copytousb",{name:e})},onDelete:function(e){return l("PRG_deletefile",{name:e})},onRename:function(e,t){return l("PRG_rename",{name:e,new_name:t})},onDuplicate:function(e){return l("PRG_clone",{file:e})}})}),s&&(0,o.createComponentVNode)(2,i.Section,{title:"Data Disk",children:(0,o.createComponentVNode)(2,c,{usbmode:!0,files:h,usbconnected:s,onUpload:function(e){return l("PRG_copyfromusb",{name:e})},onDelete:function(e){return l("PRG_deletefile",{name:e})},onRename:function(e,t){return l("PRG_rename",{name:e,new_name:t})},onDuplicate:function(e){return l("PRG_clone",{file:e})}})})]})})};var c=function(e){var t=e.files,n=void 0===t?[]:t,r=e.usbconnected,a=e.usbmode,c=e.onUpload,l=e.onDelete,d=e.onRename;return(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"File"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:"Type"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:"Size"})]}),n.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.undeletable?e.name:(0,o.createComponentVNode)(2,i.Button.Input,{fluid:!0,content:e.name,currentValue:e.name,tooltip:"Rename",onCommit:function(t,n){return d(e.name,n)}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.type}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.size}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:!e.undeletable&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button.Confirm,{icon:"trash",confirmIcon:"times",confirmContent:"",tooltip:"Delete",onClick:function(){return l(e.name)}}),!!r&&(a?(0,o.createComponentVNode)(2,i.Button,{icon:"download",tooltip:"Download",onClick:function(){return c(e.name)}}):(0,o.createComponentVNode)(2,i.Button,{icon:"upload",tooltip:"Upload",onClick:function(){return c(e.name)}}))],0)})]},e.name)}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosJobManagerContent=t.NtosJobManager=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtosJobManager=function(e,t){return(0,o.createComponentVNode)(2,a.NtosWindow,{width:400,height:620,resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.authed,d=c.cooldown,u=c.slots,s=void 0===u?[]:u,p=c.prioritized,m=void 0===p?[]:p;return l?(0,o.createComponentVNode)(2,i.Section,{children:[d>0&&(0,o.createComponentVNode)(2,i.Dimmer,{children:(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"20px",children:["On Cooldown: ",d,"s"]})}),(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Prioritized"}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Slots"})]}),s.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,i.Table.Cell,{bold:!0,children:(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,content:e.title,disabled:e.total<=0,checked:e.total>0&&m.includes(e.title),onClick:function(){return a("PRG_priority",{target:e.title})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[e.current," / ",e.total]}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.Button,{content:"Open",disabled:!e.status_open,onClick:function(){return a("PRG_open_job",{target:e.title})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Close",disabled:!e.status_close,onClick:function(){return a("PRG_close_job",{target:e.title})}})]})]},e.title)}))]})]}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Current ID does not have access permissions to change job slots."})};t.NtosJobManagerContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.NtosMain=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c={compconfig:"cog",ntndownloader:"download",filemanager:"folder",smmonitor:"radiation",alarmmonitor:"bell",cardmod:"id-card",arcade:"gamepad",ntnrc_client:"comment-alt",nttransfer:"exchange-alt",powermonitor:"plug",job_manage:"address-book",crewmani:"clipboard-list",robocontrol:"robot",atmosscan:"thermometer-half",shipping:"tags"};t.NtosMain=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.device_theme,s=d.programs,p=void 0===s?[]:s,m=d.has_light,f=d.light_on,h=d.comp_light_color;return(0,o.createComponentVNode)(2,a.NtosWindow,{title:"syndicate"===u?"Syndix Main Menu":"NtOS Main Menu",theme:u,width:400,height:500,resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:[!!m&&(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Button,{width:"144px",icon:"lightbulb",selected:f,onClick:function(){return l("PC_toggle_light")},children:["Flashlight: ",f?"ON":"OFF"]}),(0,o.createComponentVNode)(2,i.Button,{ml:1,onClick:function(){return l("PC_light_color")},children:["Color:",(0,o.createComponentVNode)(2,i.ColorBox,{ml:1,color:h})]})]}),(0,o.createComponentVNode)(2,i.Section,{title:"Programs",children:(0,o.createComponentVNode)(2,i.Table,{children:p.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,lineHeight:"24px",color:"transparent",icon:c[e.name]||"window-maximize-o",content:e.desc,onClick:function(){return l("PC_runprogram",{name:e.name})}})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,width:"18px",children:!!e.running&&(0,o.createComponentVNode)(2,i.Button,{lineHeight:"24px",color:"transparent",icon:"times",tooltip:"Close program",tooltipPosition:"left",onClick:function(){return l("PC_killprogram",{name:e.name})}})})]},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetChat=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtosNetChat=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.can_admin,u=l.adminmode,s=l.authed,p=l.username,m=l.active_channel,f=l.is_operator,h=l.all_channels,C=void 0===h?[]:h,g=l.clients,b=void 0===g?[]:g,N=l.messages,v=void 0===N?[]:N,V=null!==m,y=s||u;return(0,o.createComponentVNode)(2,a.NtosWindow,{width:900,height:675,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{children:(0,o.createComponentVNode)(2,i.Section,{height:"600px",children:(0,o.createComponentVNode)(2,i.Table,{height:"580px",children:(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{verticalAlign:"top",style:{width:"200px"},children:[(0,o.createComponentVNode)(2,i.Box,{height:"537px",overflowY:"scroll",children:[(0,o.createComponentVNode)(2,i.Button.Input,{fluid:!0,content:"New Channel...",onCommit:function(e,t){return c("PRG_newchannel",{new_channel_name:t})}}),C.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:e.chan,selected:e.id===m,color:"transparent",onClick:function(){return c("PRG_joinchannel",{id:e.id})}},e.chan)}))]}),(0,o.createComponentVNode)(2,i.Button.Input,{fluid:!0,mt:1,content:p+"...",currentValue:p,onCommit:function(e,t){return c("PRG_changename",{new_name:t})}}),!!d&&(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ADMIN MODE: "+(u?"ON":"OFF"),color:u?"bad":"good",onClick:function(){return c("PRG_toggleadmin")}})]}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:[(0,o.createComponentVNode)(2,i.Box,{height:"560px",overflowY:"scroll",children:V&&(y?v.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{children:e.msg},e.msg)})):(0,o.createComponentVNode)(2,i.Box,{textAlign:"center",children:[(0,o.createComponentVNode)(2,i.Icon,{name:"exclamation-triangle",mt:4,fontSize:"40px"}),(0,o.createComponentVNode)(2,i.Box,{mt:1,bold:!0,fontSize:"18px",children:"THIS CHANNEL IS PASSWORD PROTECTED"}),(0,o.createComponentVNode)(2,i.Box,{mt:1,children:"INPUT PASSWORD TO ACCESS"})]}))}),(0,o.createComponentVNode)(2,i.Input,{fluid:!0,selfClear:!0,mt:1,onEnter:function(e,t){return c("PRG_speak",{message:t})}})]}),(0,o.createComponentVNode)(2,i.Table.Cell,{verticalAlign:"top",style:{width:"150px"},children:[(0,o.createComponentVNode)(2,i.Box,{height:"477px",overflowY:"scroll",children:b.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{children:e.name},e.name)}))}),V&&y&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button.Input,{fluid:!0,content:"Save log...",defaultValue:"new_log",onCommit:function(e,t){return c("PRG_savelog",{log_name:t})}}),(0,o.createComponentVNode)(2,i.Button.Confirm,{fluid:!0,content:"Leave Channel",onClick:function(){return c("PRG_leavechannel")}})],4),!!f&&s&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button.Confirm,{fluid:!0,content:"Delete Channel",onClick:function(){return c("PRG_deletechannel")}}),(0,o.createComponentVNode)(2,i.Button.Input,{fluid:!0,content:"Rename Channel...",onCommit:function(e,t){return c("PRG_renamechannel",{new_name:t})}}),(0,o.createComponentVNode)(2,i.Button.Input,{fluid:!0,content:"Set Password...",onCommit:function(e,t){return c("PRG_setpassword",{new_password:t})}})],4)]})]})})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetDosContent=t.NtosNetDos=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtosNetDos=function(e,t){return(0,o.createComponentVNode)(2,a.NtosWindow,{width:400,height:250,theme:"syndicate",children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{children:(0,o.createComponentVNode)(2,c)})})};var c=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.relays,d=void 0===l?[]:l,u=c.focus,s=c.target,p=c.speed,m=c.overload,f=c.capacity,h=c.error;if(h)return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.NoticeBox,{children:h}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Reset",textAlign:"center",onClick:function(){return a("PRG_reset")}})],4);var C=function(e){for(var t="",n=m/f;t.length<e;)Math.random()>n?t+="0":t+="1";return t};return s?(0,o.createComponentVNode)(2,i.Section,{fontFamily:"monospace",textAlign:"center",children:[(0,o.createComponentVNode)(2,i.Box,{children:["CURRENT SPEED: ",p," GQ/s"]}),(0,o.createComponentVNode)(2,i.Box,{children:C(45)}),(0,o.createComponentVNode)(2,i.Box,{children:C(45)}),(0,o.createComponentVNode)(2,i.Box,{children:C(45)}),(0,o.createComponentVNode)(2,i.Box,{children:C(45)}),(0,o.createComponentVNode)(2,i.Box,{children:C(45)})]}):(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target",children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{content:e.id,selected:u===e.id,onClick:function(){return a("PRG_target_relay",{targid:e.id})}},e.id)}))})}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"EXECUTE",color:"bad",textAlign:"center",disabled:!u,mt:1,onClick:function(){return a("PRG_execute")}})]})};t.NtosNetDosContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetDownloader=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtosNetDownloader=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.PC_device_theme,s=d.disk_size,p=d.disk_used,m=d.downloadable_programs,f=void 0===m?[]:m,h=d.error,C=d.hacked_programs,g=void 0===C?[]:C,b=d.hackedavailable;return(0,o.createComponentVNode)(2,a.NtosWindow,{theme:u,width:480,height:735,resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:[!!h&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:[(0,o.createComponentVNode)(2,i.Box,{mb:1,children:h}),(0,o.createComponentVNode)(2,i.Button,{content:"Reset",onClick:function(){return l("PRG_reseterror")}})]}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Disk usage",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:p,minValue:0,maxValue:s,children:p+" GQ / "+s+" GQ"})})})}),(0,o.createComponentVNode)(2,i.Section,{children:f.map((function(e){return(0,o.createComponentVNode)(2,c,{program:e},e.filename)}))}),!!b&&(0,o.createComponentVNode)(2,i.Section,{title:"UNKNOWN Software Repository",children:[(0,o.createComponentVNode)(2,i.NoticeBox,{mb:1,children:"Please note that Nanotrasen does not recommend download of software from non-official servers."}),g.map((function(e){return(0,o.createComponentVNode)(2,c,{program:e},e.filename)}))]})]})})};var c=function(e,t){var n=e.program,a=(0,r.useBackend)(t),c=a.act,l=a.data,d=l.disk_size,u=l.disk_used,s=l.downloadcompletion,p=l.downloading,m=l.downloadname,f=l.downloadsize,h=d-u;return(0,o.createComponentVNode)(2,i.Box,{mb:3,children:[(0,o.createComponentVNode)(2,i.Flex,{align:"baseline",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{bold:!0,grow:1,children:n.filedesc}),(0,o.createComponentVNode)(2,i.Flex.Item,{color:"label",nowrap:!0,children:[n.size," GQ"]}),(0,o.createComponentVNode)(2,i.Flex.Item,{ml:2,width:"94px",textAlign:"center",children:n.filename===m&&(0,o.createComponentVNode)(2,i.ProgressBar,{color:"green",minValue:0,maxValue:f,value:s})||(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"download",content:"Download",disabled:p||n.size>h,onClick:function(){return c("PRG_downloadfile",{filename:n.filename})}})})]}),"Compatible"!==n.compatibility&&(0,o.createComponentVNode)(2,i.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,i.Icon,{mx:1,color:"red",name:"times"}),"Incompatible!"]}),n.size>h&&(0,o.createComponentVNode)(2,i.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,i.Icon,{mx:1,color:"red",name:"times"}),"Not enough disk space!"]}),(0,o.createComponentVNode)(2,i.Box,{mt:1,italic:!0,color:"label",fontSize:"12px",children:n.fileinfo})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetMonitor=void 0;var o=n(0),r=n(3),i=n(1),a=n(2);t.NtosNetMonitor=function(e,t){var n=(0,i.useBackend)(t),c=n.act,l=n.data,d=l.ntnetrelays,u=l.ntnetstatus,s=l.config_softwaredownload,p=l.config_peertopeer,m=l.config_communication,f=l.config_systemcontrol,h=l.idsalarm,C=l.idsstatus,g=l.ntnetmaxlogs,b=l.maxlogs,N=l.minlogs,v=l.ntnetlogs,V=void 0===v?[]:v;return(0,o.createComponentVNode)(2,a.NtosWindow,{resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,r.NoticeBox,{children:"WARNING: Disabling wireless transmitters when using a wireless device may prevent you from reenabling them!"}),(0,o.createComponentVNode)(2,r.Section,{title:"Wireless Connectivity",buttons:(0,o.createComponentVNode)(2,r.Button.Confirm,{icon:u?"power-off":"times",content:u?"ENABLED":"DISABLED",selected:u,onClick:function(){return c("toggleWireless")}}),children:d?(0,o.createComponentVNode)(2,r.LabeledList,{children:(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Active NTNet Relays",children:d})}):"No Relays Connected"}),(0,o.createComponentVNode)(2,r.Section,{title:"Firewall Configuration",children:(0,o.createComponentVNode)(2,r.LabeledList,{children:[(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Software Downloads",buttons:(0,o.createComponentVNode)(2,r.Button,{icon:s?"power-off":"times",content:s?"ENABLED":"DISABLED",selected:s,onClick:function(){return c("toggle_function",{id:"1"})}})}),(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Peer to Peer Traffic",buttons:(0,o.createComponentVNode)(2,r.Button,{icon:p?"power-off":"times",content:p?"ENABLED":"DISABLED",selected:p,onClick:function(){return c("toggle_function",{id:"2"})}})}),(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Communication Systems",buttons:(0,o.createComponentVNode)(2,r.Button,{icon:m?"power-off":"times",content:m?"ENABLED":"DISABLED",selected:m,onClick:function(){return c("toggle_function",{id:"3"})}})}),(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Remote System Control",buttons:(0,o.createComponentVNode)(2,r.Button,{icon:f?"power-off":"times",content:f?"ENABLED":"DISABLED",selected:f,onClick:function(){return c("toggle_function",{id:"4"})}})})]})}),(0,o.createComponentVNode)(2,r.Section,{title:"Security Systems",children:[!!h&&(0,o.createFragment)([(0,o.createComponentVNode)(2,r.NoticeBox,{children:"NETWORK INCURSION DETECTED"}),(0,o.createComponentVNode)(2,r.Box,{italics:!0,children:"Abnormal activity has been detected in the network. Check system logs for more information"})],4),(0,o.createComponentVNode)(2,r.LabeledList,{children:[(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"IDS Status",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,r.Button,{icon:C?"power-off":"times",content:C?"ENABLED":"DISABLED",selected:C,onClick:function(){return c("toggleIDS")}}),(0,o.createComponentVNode)(2,r.Button,{icon:"sync",content:"Reset",color:"bad",onClick:function(){return c("resetIDS")}})],4)}),(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Max Log Count",buttons:(0,o.createComponentVNode)(2,r.NumberInput,{value:g,minValue:N,maxValue:b,width:"39px",onChange:function(e,t){return c("updatemaxlogs",{new_number:t})}})})]}),(0,o.createComponentVNode)(2,r.Section,{title:"System Log",level:2,buttons:(0,o.createComponentVNode)(2,r.Button.Confirm,{icon:"trash",content:"Clear Logs",onClick:function(){return c("purgelogs")}}),children:V.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{className:"candystripe",children:e.entry},e.entry)}))})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosPowerMonitor=void 0;var o=n(0),r=n(2),i=n(128);t.NtosPowerMonitor=function(){return(0,o.createComponentVNode)(2,r.NtosWindow,{width:550,height:700,resizable:!0,children:(0,o.createComponentVNode)(2,r.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.PowerMonitorContent)})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosRadarSyndicate=void 0;var o=n(0),r=n(2),i=n(182);t.NtosRadarSyndicate=function(e,t){return(0,o.createComponentVNode)(2,r.NtosWindow,{width:800,height:600,theme:"syndicate",children:(0,o.createComponentVNode)(2,i.NtosRadarContent)})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosRequestKiosk=void 0;var o=n(0),r=n(183),i=n(2);t.NtosRequestKiosk=function(e,t){return(0,o.createComponentVNode)(2,i.NtosWindow,{width:550,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,i.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,r.RequestKioskContent)})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosRevelation=void 0;var o=n(0),r=n(3),i=n(1),a=n(2);t.NtosRevelation=function(e,t){var n=(0,i.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.NtosWindow,{width:400,height:250,theme:"syndicate",children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{children:(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Button.Input,{fluid:!0,content:"Obfuscate Name...",onCommit:function(e,t){return c("PRG_obfuscate",{new_name:t})},mb:1}),(0,o.createComponentVNode)(2,r.LabeledList,{children:(0,o.createComponentVNode)(2,r.LabeledList.Item,{label:"Payload Status",buttons:(0,o.createComponentVNode)(2,r.Button,{content:l.armed?"ARMED":"DISARMED",color:l.armed?"bad":"average",onClick:function(){return c("PRG_arm")}})})}),(0,o.createComponentVNode)(2,r.Button,{fluid:!0,bold:!0,content:"ACTIVATE",textAlign:"center",color:"bad",disabled:!l.armed})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosRoboControl=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtosRoboControl=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.bots,s=d.id_owner,p=d.has_id;return(0,o.createComponentVNode)(2,a.NtosWindow,{width:550,height:550,resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Robot Control Console",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Id Card",children:[s,!!p&&(0,o.createComponentVNode)(2,i.Button,{ml:2,icon:"eject",content:"Eject",onClick:function(){return l("ejectcard")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Bots in range",children:d.botcount})]})}),null==u?void 0:u.map((function(e){return(0,o.createComponentVNode)(2,c,{robot:e},e.bot_ref)}))]})})};var c=function(e,t){var n=e.robot,a=(0,r.useBackend)(t),c=a.act,l=a.data,d=l.mules||[],u=!!n.mule_check&&function(e,t){return null==e?void 0:e.find((function(e){return e.mule_ref===t}))}(d,n.bot_ref),s=1===n.mule_check?"rgba(110, 75, 14, 1)":"rgba(74, 59, 140, 1)";return(0,o.createComponentVNode)(2,i.Section,{title:n.name,style:{border:"4px solid "+s},buttons:u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"play",tooltip:"Go to Destination.",onClick:function(){return c("go",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"pause",tooltip:"Stop Moving.",onClick:function(){return c("stop",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"home",tooltip:"Travel Home.",tooltipPosition:"bottom-left",onClick:function(){return c("home",{robot:u.mule_ref})}})],4),children:(0,o.createComponentVNode)(2,i.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Model",children:n.model}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Location",children:n.locat}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:n.mode}),u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Loaded Cargo",children:l.load||"N/A"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Home",children:u.home}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Destination",children:u.dest||"N/A"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:u.power,minValue:0,maxValue:100,ranges:{good:[60,Infinity],average:[20,60],bad:[-Infinity,20]}})})],4)]})}),(0,o.createComponentVNode)(2,i.Flex.Item,{width:"150px",children:[u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Set Destination",onClick:function(){return c("destination",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Set ID",onClick:function(){return c("setid",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Set Home",onClick:function(){return c("sethome",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Unload Cargo",onClick:function(){return c("unload",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,content:"Auto Return",checked:u.autoReturn,onClick:function(){return c("autoret",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,content:"Auto Pickup",checked:u.autoPickup,onClick:function(){return c("autopick",{robot:u.mule_ref})}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,content:"Delivery Report",checked:u.reportDelivery,onClick:function(){return c("report",{robot:u.mule_ref})}})],4),!u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Stop Patrol",onClick:function(){return c("patroloff",{robot:n.bot_ref})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Start Patrol",onClick:function(){return c("patrolon",{robot:n.bot_ref})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Summon",onClick:function(){return c("summon",{robot:n.bot_ref})}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"Eject PAi",onClick:function(){return c("ejectpai",{robot:n.bot_ref})}})],4)]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosShipping=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.NtosShipping=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.NtosWindow,{width:450,height:350,resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"NTOS Shipping Hub.",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject Id",onClick:function(){return c("ejectid")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current User",children:l.current_user||"N/A"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Inserted Card",children:l.card_owner||"N/A"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Available Paper",children:l.has_printer?l.paperamt:"N/A"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Profit on Sale",children:[l.barcode_split,"%"]})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Shipping Options",children:[(0,o.createComponentVNode)(2,i.Box,{children:(0,o.createComponentVNode)(2,i.Button,{icon:"id-card",tooltip:"The currently ID card will become the current user.",tooltipPosition:"right",disabled:!l.has_id_slot,onClick:function(){return c("selectid")},content:"Set Current ID"})}),(0,o.createComponentVNode)(2,i.Box,{children:(0,o.createComponentVNode)(2,i.Button,{icon:"print",tooltip:"Print a barcode to use on a wrapped package.",tooltipPosition:"right",disabled:!l.has_printer||!l.current_user,onClick:function(){return c("print")},content:"Print Barcode"})}),(0,o.createComponentVNode)(2,i.Box,{children:(0,o.createComponentVNode)(2,i.Button,{icon:"tags",tooltip:"Set how much profit you'd like on your package.",tooltipPosition:"right",onClick:function(){return c("setsplit")},content:"Set Profit Margin"})}),(0,o.createComponentVNode)(2,i.Box,{children:(0,o.createComponentVNode)(2,i.Button,{icon:"sync-alt",content:"Reset ID",onClick:function(){return c("resetid")}})})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosStationAlertConsole=void 0;var o=n(0),r=n(2),i=n(184);t.NtosStationAlertConsole=function(){return(0,o.createComponentVNode)(2,r.NtosWindow,{width:315,height:500,resizable:!0,children:(0,o.createComponentVNode)(2,r.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.StationAlertConsoleContent)})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosSupermatterMonitorContent=t.NtosSupermatterMonitor=void 0;var o=n(0),r=n(18),i=n(33),a=n(15),c=n(1),l=n(3),d=n(38),u=n(2),s=function(e){return Math.log2(16+Math.max(0,e))-4};t.NtosSupermatterMonitor=function(e,t){return(0,o.createComponentVNode)(2,u.NtosWindow,{width:600,height:350,resizable:!0,children:(0,o.createComponentVNode)(2,u.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,p)})})};var p=function(e,t){var n=(0,c.useBackend)(t),u=n.act,p=n.data,f=p.active,h=p.SM_integrity,C=p.SM_power,g=p.SM_ambienttemp,b=p.SM_ambientpressure;if(!f)return(0,o.createComponentVNode)(2,m);var N=(0,i.flow)([function(e){return e.filter((function(e){return e.amount>=.01}))},(0,r.sortBy)((function(e){return-e.amount}))])(p.gases||[]),v=Math.max.apply(Math,[1].concat(N.map((function(e){return e.amount}))));return(0,o.createComponentVNode)(2,l.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,l.Flex.Item,{width:"270px",children:(0,o.createComponentVNode)(2,l.Section,{title:"Metrics",children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Integrity",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:h/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Relative EER",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:C,minValue:0,maxValue:5e3,ranges:{good:[-Infinity,5e3],average:[5e3,7e3],bad:[7e3,Infinity]},children:(0,a.toFixed)(C)+" MeV/cm3"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Temperature",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:s(g),minValue:0,maxValue:s(1e4),ranges:{teal:[-Infinity,s(80)],good:[s(80),s(373)],average:[s(373),s(1e3)],bad:[s(1e3),Infinity]},children:(0,a.toFixed)(g)+" K"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:s(b),minValue:0,maxValue:s(5e4),ranges:{good:[s(1),s(300)],average:[-Infinity,s(1e3)],bad:[s(1e3),+Infinity]},children:(0,a.toFixed)(b)+" kPa"})})]})})}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,l.Section,{title:"Gases",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"arrow-left",content:"Back",onClick:function(){return u("PRG_clear")}}),children:(0,o.createComponentVNode)(2,l.LabeledList,{children:N.map((function(e){return(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:(0,d.getGasLabel)(e.name),children:(0,o.createComponentVNode)(2,l.ProgressBar,{color:(0,d.getGasColor)(e.name),value:e.amount,minValue:0,maxValue:v,children:(0,a.toFixed)(e.amount,2)+"%"})},e.name)}))})})})]})};t.NtosSupermatterMonitorContent=p;var m=function(e,t){var n=(0,c.useBackend)(t),r=n.act,i=n.data.supermatters,a=void 0===i?[]:i;return(0,o.createComponentVNode)(2,l.Section,{title:"Detected Supermatters",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"sync",content:"Refresh",onClick:function(){return r("PRG_refresh")}}),children:(0,o.createComponentVNode)(2,l.Table,{children:a.map((function(e){return(0,o.createComponentVNode)(2,l.Table.Row,{children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.uid+". "+e.area_name}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,color:"label",children:"Integrity:"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,width:"120px",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:e.integrity/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,l.Button,{content:"Details",onClick:function(){return r("PRG_set",{target:e.uid})}})})]},e.uid)}))})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NuclearBomb=void 0;var o=n(0),r=n(6),i=n(1),a=n(3),c=n(2),l=function(e,t){var n=(0,i.useBackend)(t).act;return(0,o.createComponentVNode)(2,a.Box,{width:"185px",children:(0,o.createComponentVNode)(2,a.Grid,{width:"1px",children:[["1","4","7","C"],["2","5","8","0"],["3","6","9","E"]].map((function(e){return(0,o.createComponentVNode)(2,a.Grid.Column,{children:e.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,mb:1,content:e,textAlign:"center",fontSize:"40px",lineHeight:"50px",width:"55px",className:(0,r.classes)(["NuclearBomb__Button","NuclearBomb__Button--keypad","NuclearBomb__Button--"+e]),onClick:function(){return n("keypad",{digit:e})}},e)}))},e[0])}))})})};t.NuclearBomb=function(e,t){var n=(0,i.useBackend)(t),r=n.act,d=n.data,u=(d.anchored,d.disk_present,d.status1),s=d.status2;return(0,o.createComponentVNode)(2,c.Window,{width:350,height:442,theme:"retro",children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,a.Box,{m:1,children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,className:"NuclearBomb__displayBox",children:u}),(0,o.createComponentVNode)(2,a.Flex,{mb:1.5,children:[(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,a.Box,{className:"NuclearBomb__displayBox",children:s})}),(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",fontSize:"24px",lineHeight:"23px",textAlign:"center",width:"43px",ml:1,mr:"3px",mt:"3px",className:"NuclearBomb__Button NuclearBomb__Button--keypad",onClick:function(){return r("eject_disk")}})})]}),(0,o.createComponentVNode)(2,a.Flex,{ml:"3px",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,l)}),(0,o.createComponentVNode)(2,a.Flex.Item,{ml:1,width:"129px",children:(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"ARM",textAlign:"center",fontSize:"28px",lineHeight:"32px",mb:1,className:"NuclearBomb__Button NuclearBomb__Button--C",onClick:function(){return r("arm")}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"ANCHOR",textAlign:"center",fontSize:"28px",lineHeight:"32px",className:"NuclearBomb__Button NuclearBomb__Button--E",onClick:function(){return r("anchor")}}),(0,o.createComponentVNode)(2,a.Box,{textAlign:"center",color:"#9C9987",fontSize:"80px",children:(0,o.createComponentVNode)(2,a.Icon,{name:"radiation"})}),(0,o.createComponentVNode)(2,a.Box,{height:"80px",className:"NuclearBomb__NTIcon"})]})})]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.OperatingComputer=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=[{label:"Brute",type:"bruteLoss"},{label:"Burn",type:"fireLoss"},{label:"Toxin",type:"toxLoss"},{label:"Respiratory",type:"oxyLoss"}];t.OperatingComputer=function(e,t){var n=(0,r.useSharedState)(t,"tab",1),c=n[0],u=n[1];return(0,o.createComponentVNode)(2,a.Window,{width:350,height:470,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:1===c,onClick:function(){return u(1)},children:"Patient State"}),(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:2===c,onClick:function(){return u(2)},children:"Surgery Procedures"})]}),1===c&&(0,o.createComponentVNode)(2,l),2===c&&(0,o.createComponentVNode)(2,d)]})})};var l=function(e,t){var n=(0,r.useBackend)(t),a=(n.act,n.data),l=a.table,d=a.procedures,u=void 0===d?[]:d,s=a.patient,p=void 0===s?{}:s;return l?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Patient State",children:p&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"State",color:p.statstate,children:p.stat}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood Type",children:p.blood_type}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:p.health,minValue:p.minHealth,maxValue:p.maxHealth,color:p.health>=0?"good":"average",children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:p.health})})}),c.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:p[e.type]/p.maxHealth,color:"bad",children:(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:p[e.type]})})},e.type)}))]})||"No Patient Detected"}),0===u.length&&(0,o.createComponentVNode)(2,i.Section,{children:"No Active Procedures"}),u.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Next Step",children:[e.next_step,e.chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.chems_needed],0)]}),!!a.alternative_step&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Alternative Step",children:[e.alternative_step,e.alt_chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.alt_chems_needed],0)]})]})},e.name)}))],0):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No Table Detected"})},d=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data.surgeries,l=void 0===c?[]:c;return(0,o.createComponentVNode)(2,i.Section,{title:"Advanced Surgery Procedures",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"download",content:"Sync Research Database",onClick:function(){return a("sync")}}),l.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,children:e.desc},e.name)}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Orbit=void 0;var o=n(0),r=n(19),i=n(1),a=n(3),c=n(2);function l(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}var u=/ \[(?:ghost|dead)\]$/,s=/ \(([0-9]+)\)$/,p=function(e){return(0,r.createSearch)(e,(function(e){return e.name}))},m=function(e,t){return e<t?-1:e>t},f=function(e,t){var n=e.name,o=t.name,r=n.match(s),i=o.match(s);return r&&i&&n.replace(s,"")===o.replace(s,"")?parseInt(r[1],10)-parseInt(i[1],10):m(n,o)},h=function(e,t){var n=(0,i.useBackend)(t).act,r=e.searchText,c=e.source,l=e.title,d=c.filter(p(r));return d.sort(f),c.length>0&&(0,o.createComponentVNode)(2,a.Section,{title:l+" - ("+c.length+")",children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e.name.replace(u,""),onClick:function(){return n("orbit",{ref:e.ref})}},e.name)}))})},C=function(e,t){var n=(0,i.useBackend)(t).act,r=e.color,c=e.thing;return(0,o.createComponentVNode)(2,a.Button,{color:r,onClick:function(){return n("orbit",{ref:c.ref})},children:[c.name,c.orbiters&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,ml:1,children:["(",c.orbiters," ",(0,o.createComponentVNode)(2,a.Box,{as:"img",src:"ghost.png",opacity:.7}),")"]})]})};t.Orbit=function(e,t){for(var n,r=(0,i.useBackend)(t),d=r.act,u=r.data,s=u.alive,g=u.antagonists,b=u.dead,N=u.ghosts,v=u.misc,V=u.npcs,y=(0,i.useLocalState)(t,"searchText",""),k=y[0],x=y[1],_={},w=l(g);!(n=w()).done;){var B=n.value;_[B.antag]===undefined&&(_[B.antag]=[]),_[B.antag].push(B)}var S=Object.entries(_);S.sort((function(e,t){return m(e[0],t[0])}));return(0,o.createComponentVNode)(2,c.Window,{title:"Orbit",width:350,height:700,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Icon,{name:"search",mr:1})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,a.Input,{placeholder:"Search...",autoFocus:!0,fluid:!0,value:k,onInput:function(e,t){return x(t)},onEnter:function(e,t){return function(e){for(var t=0,n=[S.map((function(e){return e[0],e[1]})),s,N,b,V,v];t<n.length;t++){var o=n[t].filter(p(e)).sort(f)[0];if(o!==undefined){d("orbit",{ref:o.ref});break}}}(t)}})})]})}),g.length>0&&(0,o.createComponentVNode)(2,a.Section,{title:"Ghost-Visible Antagonists",children:S.map((function(e){var t=e[0],n=e[1];return(0,o.createComponentVNode)(2,a.Section,{title:t,level:2,children:n.filter(p(k)).sort(f).map((function(e){return(0,o.createComponentVNode)(2,C,{color:"bad",thing:e},e.name)}))},t)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Alive",children:s.filter(p(k)).sort(f).map((function(e){return(0,o.createComponentVNode)(2,C,{color:"good",thing:e},e.name)}))}),(0,o.createComponentVNode)(2,h,{title:"Ghosts",source:N,searchText:k}),(0,o.createComponentVNode)(2,h,{title:"Dead",source:b,searchText:k}),(0,o.createComponentVNode)(2,h,{title:"NPCs",source:V,searchText:k}),(0,o.createComponentVNode)(2,h,{title:"Misc",source:v,searchText:k})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.OreBox=void 0;var o=n(0),r=n(19),i=n(3),a=n(1),c=n(2);t.OreBox=function(e,t){var n=(0,a.useBackend)(t),l=n.act,d=n.data.materials;return(0,o.createComponentVNode)(2,c.Window,{width:335,height:415,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Section,{title:"Ores",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Empty",onClick:function(){return l("removeall")}}),children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Ore"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:"Amount"})]}),d.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(e.name)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{color:"label",inline:!0,children:e.amount})})]},e.type)}))]})}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Box,{children:["All ores will be placed in here when you are wearing a mining stachel on your belt or in a pocket while dragging the ore box.",(0,o.createVNode)(1,"br"),"Gibtonite is not accepted."]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.OreRedemptionMachine=void 0;var o=n(0),r=n(19),i=n(1),a=n(3),c=n(2);t.OreRedemptionMachine=function(e,t){var n=(0,i.useBackend)(t),r=n.act,d=n.data,u=d.unclaimedPoints,s=d.materials,p=d.alloys,m=d.diskDesigns,f=d.hasDisk;return(0,o.createComponentVNode)(2,c.Window,{title:"Ore Redemption Machine",width:440,height:550,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.BlockQuote,{mb:1,children:["This machine only accepts ore.",(0,o.createVNode)(1,"br"),"Gibtonite and Slag are not accepted."]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mr:1,children:"Unclaimed points:"}),u,(0,o.createComponentVNode)(2,a.Button,{ml:2,content:"Claim",disabled:0===u,onClick:function(){return r("Claim")}})]})]}),(0,o.createComponentVNode)(2,a.Section,{children:f&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:1,children:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject design disk",onClick:function(){return r("diskEject")}})}),(0,o.createComponentVNode)(2,a.Table,{children:m.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:["File ",e.index,": ",e.name]}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,a.Button,{disabled:!e.canupload,content:"Upload",onClick:function(){return r("diskUpload",{design:e.index})}})})]},e.index)}))})],4)||(0,o.createComponentVNode)(2,a.Button,{icon:"save",content:"Insert design disk",onClick:function(){return r("diskInsert")}})}),(0,o.createComponentVNode)(2,a.Section,{title:"Materials",children:(0,o.createComponentVNode)(2,a.Table,{children:s.map((function(e){return(0,o.createComponentVNode)(2,l,{material:e,onRelease:function(t){return r("Release",{id:e.id,sheets:t})}},e.id)}))})}),(0,o.createComponentVNode)(2,a.Section,{title:"Alloys",children:(0,o.createComponentVNode)(2,a.Table,{children:p.map((function(e){return(0,o.createComponentVNode)(2,l,{material:e,onRelease:function(t){return r("Smelt",{id:e.id,sheets:t})}},e.id)}))})})]})})};var l=function(e,t){var n=e.material,c=e.onRelease,l=(0,i.useLocalState)(t,"amount"+n.name,1),d=l[0],u=l[1],s=Math.floor(n.amount);return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,r.toTitleCase)(n.name).replace("Alloy","")}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,a.Box,{mr:2,color:"label",inline:!0,children:n.value&&n.value+" cr"})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,a.Box,{mr:2,color:"label",inline:!0,children:[s," sheets"]})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,a.NumberInput,{width:"32px",step:1,stepPixelSize:5,minValue:1,maxValue:50,value:d,onChange:function(e,t){return u(t)}}),(0,o.createComponentVNode)(2,a.Button,{disabled:s<1,content:"Release",onClick:function(){return c(d)}})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Pandemic=t.PandemicAntibodyDisplay=t.PandemicSymptomDisplay=t.PandemicDiseaseDisplay=t.PandemicBeakerDisplay=void 0;var o=n(0),r=n(18),i=n(1),a=n(3),c=n(2),l=function(e,t){var n=(0,i.useBackend)(t),r=n.act,c=n.data,l=c.has_beaker,d=c.beaker_empty,u=c.has_blood,s=c.blood,p=!l||d;return(0,o.createComponentVNode)(2,a.Section,{title:"Beaker",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Empty and Eject",color:"bad",disabled:p,onClick:function(){return r("empty_eject_beaker")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:"Empty",disabled:p,onClick:function(){return r("empty_beaker")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!l,onClick:function(){return r("eject_beaker")}})],4),children:l?d?(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Beaker is empty"}):u?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Blood DNA",children:s&&s.dna||"Unknown"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Blood Type",children:s&&s.type||"Unknown"})]}):(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"No blood detected"}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No beaker loaded"})})};t.PandemicBeakerDisplay=l;var d=function(e,t){var n=(0,i.useBackend)(t),r=n.act,c=n.data,l=c.is_ready;return(c.viruses||[]).map((function(e){var t=e.symptoms||[];return(0,o.createComponentVNode)(2,a.Section,{title:e.can_rename?(0,o.createComponentVNode)(2,a.Input,{value:e.name,onChange:function(t,n){return r("rename_disease",{index:e.index,name:n})}}):e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"flask",content:"Create culture bottle",disabled:!l,onClick:function(){return r("create_culture_bottle",{index:e.index})}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:e.description}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Agent",children:e.agent}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Spread",children:e.spread}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Possible Cure",children:e.cure})]})})]}),!!e.is_adv&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Statistics",level:2,children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Resistance",children:e.resistance}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Stealth",children:e.stealth})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Stage speed",children:e.stage_speed}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transmissibility",children:e.transmission})]})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Symptoms",level:2,children:t.map((function(e){return(0,o.createComponentVNode)(2,a.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,u,{symptom:e})})},e.name)}))})],4)]},e.name)}))};t.PandemicDiseaseDisplay=d;var u=function(e,t){var n=e.symptom,i=n.name,c=n.desc,l=n.stealth,d=n.resistance,u=n.stage_speed,s=n.transmission,p=n.level,m=n.neutered,f=(0,r.map)((function(e,t){return{desc:e,label:t}}))(n.threshold_desc||{});return(0,o.createComponentVNode)(2,a.Section,{title:i,level:2,buttons:!!m&&(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"bad",children:"Neutered"}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:2,children:c}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Level",children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Resistance",children:d}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Stealth",children:l}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Stage Speed",children:u}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transmission",children:s})]})})]}),f.length>0&&(0,o.createComponentVNode)(2,a.Section,{title:"Thresholds",level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:f.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:e.desc},e.label)}))})})]})};t.PandemicSymptomDisplay=u;var s=function(e,t){var n=(0,i.useBackend)(t),r=n.act,c=n.data,l=c.resistances||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Antibodies",children:l.length>0?(0,o.createComponentVNode)(2,a.LabeledList,{children:l.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:(0,o.createComponentVNode)(2,a.Button,{icon:"eye-dropper",content:"Create vaccine bottle",disabled:!c.is_ready,onClick:function(){return r("create_vaccine_bottle",{index:e.id})}})},e.name)}))}):(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"bad",mt:1,children:"No antibodies detected."})})};t.PandemicAntibodyDisplay=s;t.Pandemic=function(e,t){var n=(0,i.useBackend)(t).data;return(0,o.createComponentVNode)(2,c.Window,{width:520,height:550,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,l),!!n.has_blood&&(0,o.createFragment)([(0,o.createComponentVNode)(2,d),(0,o.createComponentVNode)(2,s)],4)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PaperSheet=void 0;var o=n(0),r=n(6),i=n(119),a=s(n(564)),c=s(n(565)),l=n(1),d=n(3),u=n(2);function s(e){return e&&e.__esModule?e:{"default":e}}function p(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function m(e,t){if(null==e)return{};var n,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||(r[n]=e[n]);return r}function f(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return h(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}function C(e,t){C=function(e,t){return new i(e,undefined,t)};var n=b(RegExp),o=RegExp.prototype,r=new WeakMap;function i(e,t,o){var i=n.call(this,e,t);return r.set(i,o||r.get(e)),i}function a(e,t){var n=r.get(t);return Object.keys(n).reduce((function(t,o){return t[o]=e[n[o]],t}),Object.create(null))}return g(i,n),i.prototype.exec=function(e){var t=o.exec.call(this,e);return t&&(t.groups=a(t,this)),t},i.prototype[Symbol.replace]=function(e,t){if("string"==typeof t){var n=r.get(this);return o[Symbol.replace].call(this,e,t.replace(/\$<([^>]+)>/g,(function(e,t){return"$"+n[t]})))}if("function"==typeof t){var i=this;return o[Symbol.replace].call(this,e,(function(){var e=[];return e.push.apply(e,arguments),"object"!=typeof e[e.length-1]&&e.push(a(e,i)),t.apply(this,e)}))}return o[Symbol.replace].call(this,e,t)},C.apply(this,arguments)}function g(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&V(e,t)}function b(e){var t="function"==typeof Map?new Map:undefined;return(b=function(e){if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;var n;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,o)}function o(){return N(e,arguments,y(this).constructor)}return o.prototype=Object.create(e.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0}}),V(o,e)})(e)}function N(e,t,n){return(N=v()?Reflect.construct:function(e,t,n){var o=[null];o.push.apply(o,t);var r=new(Function.bind.apply(e,o));return n&&V(r,n.prototype),r}).apply(null,arguments)}function v(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}function V(e,t){return(V=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function y(e){return(y=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var k=function(e,t,n,o){return void 0===o&&(o=!1),"<span style=\"color:'"+n+"';font-family:'"+t+"';"+(o?"font-weight: bold;":"")+'">'+e+"</span>"},x=/\[(_+)\]/g,_=C(/\[<input[\t-\r \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+(.*?)id="(paperfield_[0-9]+)"(.*?)\/>\]/gm,{id:2}),w=/%s(?:ign)?(?=\\s|$)/gim,B=function(e,t,n,o,r){var i=e.replace(x,(function(e,i,a,c){var l=function(e,t,n){t=n+"x "+t;var o=document.createElement("canvas").getContext("2d");return o.font=t,o.measureText(e).width}(e,t,n)+"px";return function(e,t,n,o,r,i){return'[<input type="text" style="font:\''+o+"x "+n+"';color:'"+r+"';min-width:"+t+";max-width:"+t+';" id="'+i+'" maxlength='+e+" size="+e+" />]"}(i.length,l,t,n,o,"paperfield_"+r++)}));return{counter:r,text:i}},S=function(e){return e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault(),e.cancelBubble=!0,e.returnValue=!1,!1},L=function(e,t){var n=e.image,i=e.opacity,a=(m(e,["image","opacity"]),"rotate("+n.rotate+"deg) translate("+n.x+"px,"+n.y+"px)"),c={transform:a,"-ms-transform":a,"-webkit-transform":a,opacity:i||1,position:"absolute"};return(0,o.createVNode)(1,"div",(0,r.classes)(["paper121x54",n.sprite]),null,1,{style:c})},I=function(e,t){return t?e.replace(/<input\s[^d]/g,"<input disabled "):e.replace(/<input\sdisabled\s/g,"<input ")},T=function(e,t){var n=e.value,i=e.stamps,a=e.backgroundColor,c=e.readOnly,l=(m(e,["value","stamps","backgroundColor","readOnly"]),!(0,r.isFalsy)(c)),u=i||[],s={__html:'<span class="paper-text">'+I(n,l)+"</span>"};return(0,o.createComponentVNode)(2,d.Box,{position:"relative",backgroundColor:a,width:"100%",height:"100%",children:[(0,o.createComponentVNode)(2,d.Box,{fillPositionedParent:!0,width:"100%",height:"100%",dangerouslySetInnerHTML:s,p:"10px"}),u.map((function(e,t){return(0,o.createComponentVNode)(2,L,{image:{sprite:e[0],x:e[1],y:e[2],rotate:e[3]}},e[0]+t)}))]})},A=function(e){function t(t,n){var o;return(o=e.call(this,t,n)||this).state={x:0,y:0,rotate:0},o}p(t,e);var n=t.prototype;return n.findStampPosition=function(e){for(var t=event.pageX,n=event.pageY,o={left:e.target.offsetLeft,top:e.target.offsetTop},r=e.target.offsetParent;r;)o.left+=r.offsetLeft,o.top+=r.offsetTop,r=r.offsetParent;var a=[t-o.left,n-o.top],c=(0,i.vecScale)([121,51],.5);return(0,i.vecSubtract)(a,c)},n.componentDidMount=function(){document.onwheel=this.handleWheel.bind(this)},n.handleMouseMove=function(e){var t=this.findStampPosition(e);S(e),this.setState({x:t[0],y:t[1]})},n.handleMouseClick=function(e){var t=this.findStampPosition(e),n=(0,l.useBackend)(this.context),o=n.act;n.data,o("stamp",{x:t[0],y:t[1],r:this.state.rotate}),this.setState({x:t[0],y:t[1]})},n.handleWheel=function(e){var t=e.deltaY>0?15:-15;if(e.deltaY<0&&0===this.state.rotate)this.setState({rotate:360+t});else if(e.deltaY>0&&360===this.state.rotate)this.setState({rotate:t});else{var n={rotate:t+this.state.rotate};this.setState((function(){return n}))}S(e)},n.render=function(){var e=this.props,t=e.value,n=e.stamp_class,r=e.stamps,i=m(e,["value","stamp_class","stamps"]),a=r||[],c={sprite:n,x:this.state.x,y:this.state.y,rotate:this.state.rotate};return(0,o.normalizeProps)((0,o.createComponentVNode)(2,d.Box,Object.assign({onClick:this.handleMouseClick.bind(this),onMouseMove:this.handleMouseMove.bind(this),onwheel:this.handleWheel.bind(this)},i,{children:[(0,o.createComponentVNode)(2,T,{readOnly:1,value:t,stamps:a}),(0,o.createComponentVNode)(2,L,{opacity:.5,image:c})]})))},t}(o.Component),E=function(e){function t(t,n){var o;return(o=e.call(this,t,n)||this).state={previewSelected:"Preview",old_text:t.value||"",textarea_text:"",combined_text:t.value||""},o}p(t,e);var n=t.prototype;return n.createPreview=function(e,t){void 0===t&&(t=!1);var n,o,r=(0,l.useBackend)(this.context).data,i=r.text,d=r.pen_color,u=r.pen_font,s=r.is_crayon,p=r.field_counter,m=r.edit_usr,h={text:i};if((e=e.trim()).length>0){var C=function(e){return a["default"].sanitize(e,{FORBID_ATTR:["class","style"],ALLOWED_TAGS:["br","code","li","p","pre","span","table","td","tr","th","ul","ol","menu","font","b","center","table","tr","th"]})}(e+="\n"===e[e.length]?" \n":"\n \n"),g=(n=d,o=m,C.replace(w,(function(){return k(o,"Times New Roman",n,!0)}))),b=B(g,u,12,d,p),N=function(e){return(0,c["default"])(e,{breaks:!0,smartypants:!0,smartLists:!0,walkTokens:function(e){switch(e.type){case"url":case"autolink":case"reflink":case"link":case"image":e.type="text",e.href=""}},baseUrl:"thisshouldbreakhttp"})}(b.text),v=k(N,u,d,s);h.text+=v,h.field_counter=b.counter}if(t){var V=function(e,t,n,o,r){var i;void 0===r&&(r=!1);for(var c={},l=[];null!==(i=_.exec(e));){var d=i[0],u=i.groups.id;if(u){var s=document.getElementById(u);if(0===(s&&s.value?s.value:"").length)continue;var p=a["default"].sanitize(s.value.trim(),{ALLOWED_TAGS:[]});if(0===p.length)continue;var m=s.cloneNode(!0);p.match(w)?(m.style.fontFamily="Times New Roman",r=!0,m.defaultValue=o):(m.style.fontFamily=t,m.defaultValue=p),r&&(m.style.fontWeight="bold"),m.style.color=n,m.disabled=!0;var h=document.createElement("div");h.appendChild(m),c[u]=p,l.push({value:"["+h.innerHTML+"]",raw_text:d})}}if(l.length>0)for(var C,g=f(l);!(C=g()).done;){var b=C.value;e=e.replace(b.raw_text,b.value)}return{text:e,fields:c}}(h.text,u,d,m,s);h.text=V.text,h.form_fields=V.fields}return h},n.onInputHandler=function(e,t){var n=this;if(t!==this.state.textarea_text){var o=this.state.old_text.length+this.state.textarea_text.length;if(o>5e3&&(t=o-5e3>=t.length?"":t.substr(0,t.length-(o-5e3)))===this.state.textarea_text)return;this.setState((function(){return{textarea_text:t,combined_text:n.createPreview(t)}}))}},n.finalUpdate=function(e){var t=(0,l.useBackend)(this.context).act,n=this.createPreview(e,!0);t("save",n),this.setState((function(){return{textarea_text:"",previewSelected:"save",combined_text:n.text}}))},n.render=function(){var e=this,t=this.props,n=(t.value,t.textColor),r=t.fontFamily,i=t.stamps,a=t.backgroundColor;return m(t,["value","textColor","fontFamily","stamps","backgroundColor"]),(0,o.createComponentVNode)(2,d.Flex,{direction:"column",fillPositionedParent:!0,children:[(0,o.createComponentVNode)(2,d.Flex.Item,{children:(0,o.createComponentVNode)(2,d.Tabs,{children:[(0,o.createComponentVNode)(2,d.Tabs.Tab,{textColor:"black",backgroundColor:"Edit"===this.state.previewSelected?"grey":"white",selected:"Edit"===this.state.previewSelected,onClick:function(){return e.setState({previewSelected:"Edit"})},children:"Edit"},"marked_edit"),(0,o.createComponentVNode)(2,d.Tabs.Tab,{textColor:"black",backgroundColor:"Preview"===this.state.previewSelected?"grey":"white",selected:"Preview"===this.state.previewSelected,onClick:function(){return e.setState((function(){return{previewSelected:"Preview",textarea_text:e.state.textarea_text,combined_text:e.createPreview(e.state.textarea_text).text}}))},children:"Preview"},"marked_preview"),(0,o.createComponentVNode)(2,d.Tabs.Tab,{textColor:"black",backgroundColor:"confirm"===this.state.previewSelected?"red":"save"===this.state.previewSelected?"grey":"white",selected:"confirm"===this.state.previewSelected||"save"===this.state.previewSelected,onClick:function(){"confirm"===e.state.previewSelected?e.finalUpdate(e.state.textarea_text):"Edit"===e.state.previewSelected?e.setState((function(){return{previewSelected:"confirm",textarea_text:e.state.textarea_text,combined_text:e.createPreview(e.state.textarea_text).text}})):e.setState({previewSelected:"confirm"})},children:"confirm"===this.state.previewSelected?"confirm":"save"},"marked_done")]})}),(0,o.createComponentVNode)(2,d.Flex.Item,{grow:1,basis:1,children:"Edit"===this.state.previewSelected&&(0,o.createComponentVNode)(2,d.TextArea,{value:this.state.textarea_text,textColor:n,fontFamily:r,height:window.innerHeight-80+"px",backgroundColor:a,onInput:this.onInputHandler.bind(this)})||(0,o.createComponentVNode)(2,T,{value:this.state.combined_text,stamps:i,fontFamily:r,textColor:n})})]})},t}(o.Component);t.PaperSheet=function(e,t){var n=(0,l.useBackend)(t).data,r=n.edit_mode,i=n.text,a=n.paper_color,c=n.pen_color,s=void 0===c?"black":c,p=n.pen_font,m=void 0===p?"Verdana":p,f=n.stamps,h=n.stamp_class,C=(n.stamped,a&&"white"!==a?a:"#FFFFFF"),g=f&&null!==f?f:[];return(0,o.createComponentVNode)(2,u.Window,{theme:"paper",width:400,height:500,resizable:!0,children:(0,o.createComponentVNode)(2,u.Window.Content,{children:(0,o.createComponentVNode)(2,d.Box,{fillPositionedParent:!0,backgroundColor:C,children:function(e){switch(e){case 0:return(0,o.createComponentVNode)(2,T,{value:i,stamps:g,readOnly:1});case 1:return(0,o.createComponentVNode)(2,E,{value:i,textColor:s,fontFamily:m,stamps:g,backgroundColor:C});case 2:return(0,o.createComponentVNode)(2,A,{value:i,stamps:g,stamp_class:h});default:return"ERROR ERROR WE CANNOT BE HERE!!"}}(r)})})})}},function(e,t,n){"use strict";e.exports=function(){var e=Object.hasOwnProperty,t=Object.setPrototypeOf,n=Object.isFrozen,o=Object.keys,r=Object.freeze,i=Object.seal,a="undefined"!=typeof Reflect&&Reflect,c=a.apply,l=a.construct;c||(c=function(e,t,n){return e.apply(t,n)}),r||(r=function(e){return e}),i||(i=function(e){return e}),l||(l=function(e,t){return new(Function.prototype.bind.apply(e,[null].concat(function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}(t))))});var d=k(Array.prototype.forEach),u=k(Array.prototype.indexOf),s=k(Array.prototype.join),p=k(Array.prototype.pop),m=k(Array.prototype.push),f=k(Array.prototype.slice),h=k(String.prototype.toLowerCase),C=k(String.prototype.match),g=k(String.prototype.replace),b=k(String.prototype.indexOf),N=k(String.prototype.trim),v=k(RegExp.prototype.test),V=x(RegExp),y=x(TypeError);function k(e){return function(t){for(var n=arguments.length,o=Array(n>1?n-1:0),r=1;r<n;r++)o[r-1]=arguments[r];return c(e,t,o)}}function x(e){return function(){for(var t=arguments.length,n=Array(t),o=0;o<t;o++)n[o]=arguments[o];return l(e,n)}}function _(e,o){t&&t(e,null);for(var r=o.length;r--;){var i=o[r];if("string"==typeof i){var a=h(i);a!==i&&(n(o)||(o[r]=a),i=a)}e[i]=!0}return e}function w(t){var n={},o=void 0;for(o in t)c(e,t,[o])&&(n[o]=t[o]);return n}var B=r(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),S=r(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","audio","canvas","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","video","view","vkern"]),L=r(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),I=r(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover"]),T=r(["#text"]),A=r(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","xmlns"]),E=r(["accent-height","accumulate","additive","alignment-baseline","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","tabindex","targetx","targety","transform","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),M=r(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),P=r(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),R=i(/\{\{[\s\S]*|[\s\S]*\}\}/gm),O=i(/<%[\s\S]*|[\s\S]*%>/gm),j=i(/^data-[\-\w.\u00B7-\uFFFF]/),D=i(/^aria-[\-\w]+$/),F=i(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),z=i(/^(?:\w+script|data):/i),W=i(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g),H="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function U(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var G=function(){return"undefined"==typeof window?null:window},K=function(e,t){if("object"!==(void 0===e?"undefined":H(e))||"function"!=typeof e.createPolicy)return null;var n=null;t.currentScript&&t.currentScript.hasAttribute("data-tt-policy-suffix")&&(n=t.currentScript.getAttribute("data-tt-policy-suffix"));var o="dompurify"+(n?"#"+n:"");try{return e.createPolicy(o,{createHTML:function(e){return e}})}catch(r){return null}};return function q(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:G(),t=function(e){return q(e)};if(t.version="2.0.12",t.removed=[],!e||!e.document||9!==e.document.nodeType)return t.isSupported=!1,t;var n=e.document,i=!1,a=e.document,c=e.DocumentFragment,l=e.HTMLTemplateElement,k=e.Node,x=e.NodeFilter,Y=e.NamedNodeMap,$=Y===undefined?e.NamedNodeMap||e.MozNamedAttrMap:Y,X=e.Text,Q=e.Comment,J=e.DOMParser,Z=e.trustedTypes;if("function"==typeof l){var ee=a.createElement("template");ee.content&&ee.content.ownerDocument&&(a=ee.content.ownerDocument)}var te=K(Z,n),ne=te&&Me?te.createHTML(""):"",oe=a,re=oe.implementation,ie=oe.createNodeIterator,ae=oe.getElementsByTagName,ce=oe.createDocumentFragment,le=n.importNode,de={};t.isSupported=re&&"undefined"!=typeof re.createHTMLDocument&&9!==a.documentMode;var ue=R,se=O,pe=j,me=D,fe=z,he=W,Ce=F,ge=null,be=_({},[].concat(U(B),U(S),U(L),U(I),U(T))),Ne=null,ve=_({},[].concat(U(A),U(E),U(M),U(P))),Ve=null,ye=null,ke=!0,xe=!0,_e=!1,we=!1,Be=!1,Se=!1,Le=!1,Ie=!1,Te=!1,Ae=!1,Ee=!1,Me=!1,Pe=!0,Re=!0,Oe=!1,je={},De=_({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","plaintext","script","style","svg","template","thead","title","video","xmp"]),Fe=null,ze=_({},["audio","video","img","source","image","track"]),We=null,He=_({},["alt","class","for","id","label","name","pattern","placeholder","summary","title","value","style","xmlns"]),Ue=null,Ge=a.createElement("form"),Ke=function(e){Ue&&Ue===e||(e&&"object"===(void 0===e?"undefined":H(e))||(e={}),ge="ALLOWED_TAGS"in e?_({},e.ALLOWED_TAGS):be,Ne="ALLOWED_ATTR"in e?_({},e.ALLOWED_ATTR):ve,We="ADD_URI_SAFE_ATTR"in e?_(w(He),e.ADD_URI_SAFE_ATTR):He,Fe="ADD_DATA_URI_TAGS"in e?_(w(ze),e.ADD_DATA_URI_TAGS):ze,Ve="FORBID_TAGS"in e?_({},e.FORBID_TAGS):{},ye="FORBID_ATTR"in e?_({},e.FORBID_ATTR):{},je="USE_PROFILES"in e&&e.USE_PROFILES,ke=!1!==e.ALLOW_ARIA_ATTR,xe=!1!==e.ALLOW_DATA_ATTR,_e=e.ALLOW_UNKNOWN_PROTOCOLS||!1,we=e.SAFE_FOR_JQUERY||!1,Be=e.SAFE_FOR_TEMPLATES||!1,Se=e.WHOLE_DOCUMENT||!1,Te=e.RETURN_DOM||!1,Ae=e.RETURN_DOM_FRAGMENT||!1,Ee=e.RETURN_DOM_IMPORT||!1,Me=e.RETURN_TRUSTED_TYPE||!1,Ie=e.FORCE_BODY||!1,Pe=!1!==e.SANITIZE_DOM,Re=!1!==e.KEEP_CONTENT,Oe=e.IN_PLACE||!1,Ce=e.ALLOWED_URI_REGEXP||Ce,Be&&(xe=!1),Ae&&(Te=!0),je&&(ge=_({},[].concat(U(T))),Ne=[],!0===je.html&&(_(ge,B),_(Ne,A)),!0===je.svg&&(_(ge,S),_(Ne,E),_(Ne,P)),!0===je.svgFilters&&(_(ge,L),_(Ne,E),_(Ne,P)),!0===je.mathMl&&(_(ge,I),_(Ne,M),_(Ne,P))),e.ADD_TAGS&&(ge===be&&(ge=w(ge)),_(ge,e.ADD_TAGS)),e.ADD_ATTR&&(Ne===ve&&(Ne=w(Ne)),_(Ne,e.ADD_ATTR)),e.ADD_URI_SAFE_ATTR&&_(We,e.ADD_URI_SAFE_ATTR),Re&&(ge["#text"]=!0),Se&&_(ge,["html","head","body"]),ge.table&&(_(ge,["tbody"]),delete Ve.tbody),r&&r(e),Ue=e)},qe=function(e){m(t.removed,{element:e});try{e.parentNode.removeChild(e)}catch(n){e.outerHTML=ne}},Ye=function(e,n){try{m(t.removed,{attribute:n.getAttributeNode(e),from:n})}catch(o){m(t.removed,{attribute:null,from:n})}n.removeAttribute(e)},$e=function(e){var t=void 0,n=void 0;if(Ie)e="<remove></remove>"+e;else{var o=C(e,/^[\r\n\t ]+/);n=o&&o[0]}var r=te?te.createHTML(e):e;try{t=(new J).parseFromString(r,"text/html")}catch(l){}if(i&&_(Ve,["title"]),!t||!t.documentElement){var c=(t=re.createHTMLDocument("")).body;c.parentNode.removeChild(c.parentNode.firstElementChild),c.outerHTML=r}return e&&n&&t.body.insertBefore(a.createTextNode(n),t.body.childNodes[0]||null),ae.call(t,Se?"html":"body")[0]};t.isSupported&&function(){try{var e=$e("<x/><title></title><img>");v(/<\/title/,e.querySelector("title").innerHTML)&&(i=!0)}catch(t){}}();var Xe=function(e){return ie.call(e.ownerDocument||e,e,x.SHOW_ELEMENT|x.SHOW_COMMENT|x.SHOW_TEXT,(function(){return x.FILTER_ACCEPT}),!1)},Qe=function(e){return!(e instanceof X||e instanceof Q||"string"==typeof e.nodeName&&"string"==typeof e.textContent&&"function"==typeof e.removeChild&&e.attributes instanceof $&&"function"==typeof e.removeAttribute&&"function"==typeof e.setAttribute&&"string"==typeof e.namespaceURI)},Je=function(e){return"object"===(void 0===k?"undefined":H(k))?e instanceof k:e&&"object"===(void 0===e?"undefined":H(e))&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},Ze=function(e,n,o){de[e]&&d(de[e],(function(e){e.call(t,n,o,Ue)}))},et=function(e){var n=void 0;if(Ze("beforeSanitizeElements",e,null),Qe(e))return qe(e),!0;var o=h(e.nodeName);if(Ze("uponSanitizeElement",e,{tagName:o,allowedTags:ge}),("svg"===o||"math"===o)&&0!==e.querySelectorAll("p, br").length)return qe(e),!0;if(!ge[o]||Ve[o]){if(Re&&!De[o]&&"function"==typeof e.insertAdjacentHTML)try{var r=e.innerHTML;e.insertAdjacentHTML("AfterEnd",te?te.createHTML(r):r)}catch(i){}return qe(e),!0}return"noscript"===o&&v(/<\/noscript/i,e.innerHTML)||"noembed"===o&&v(/<\/noembed/i,e.innerHTML)?(qe(e),!0):(!we||e.firstElementChild||e.content&&e.content.firstElementChild||!v(/</g,e.textContent)||(m(t.removed,{element:e.cloneNode()}),e.innerHTML?e.innerHTML=g(e.innerHTML,/</g,"<"):e.innerHTML=g(e.textContent,/</g,"<")),Be&&3===e.nodeType&&(n=e.textContent,n=g(n,ue," "),n=g(n,se," "),e.textContent!==n&&(m(t.removed,{element:e.cloneNode()}),e.textContent=n)),Ze("afterSanitizeElements",e,null),!1)},tt=function(e,t,n){if(Pe&&("id"===t||"name"===t)&&(n in a||n in Ge))return!1;if(xe&&v(pe,t));else if(ke&&v(me,t));else{if(!Ne[t]||ye[t])return!1;if(We[t]);else if(v(Ce,g(n,he,"")));else if("src"!==t&&"xlink:href"!==t&&"href"!==t||"script"===e||0!==b(n,"data:")||!Fe[e])if(_e&&!v(fe,g(n,he,"")));else if(n)return!1}return!0},nt=function(e){var n=void 0,r=void 0,i=void 0,a=void 0,c=void 0;Ze("beforeSanitizeAttributes",e,null);var l=e.attributes;if(l){var d={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Ne};for(c=l.length;c--;){var m=n=l[c],C=m.name,b=m.namespaceURI;if(r=N(n.value),i=h(C),d.attrName=i,d.attrValue=r,d.keepAttr=!0,d.forceKeepAttr=undefined,Ze("uponSanitizeAttribute",e,d),r=d.attrValue,!d.forceKeepAttr){if("name"===i&&"IMG"===e.nodeName&&l.id)a=l.id,l=f(l,[]),Ye("id",e),Ye(C,e),u(l,a)>c&&e.setAttribute("id",a.value);else{if("INPUT"===e.nodeName&&"type"===i&&"file"===r&&d.keepAttr&&(Ne[i]||!ye[i]))continue;"id"===C&&e.setAttribute(C,""),Ye(C,e)}if(d.keepAttr)if(we&&v(/\/>/i,r))Ye(C,e);else if(v(/svg|math/i,e.namespaceURI)&&v(V("</("+s(o(De),"|")+")","i"),r))Ye(C,e);else{Be&&(r=g(r,ue," "),r=g(r,se," "));var y=e.nodeName.toLowerCase();if(tt(y,i,r))try{b?e.setAttributeNS(b,C,r):e.setAttribute(C,r),p(t.removed)}catch(k){}}}}Ze("afterSanitizeAttributes",e,null)}},ot=function rt(e){var t=void 0,n=Xe(e);for(Ze("beforeSanitizeShadowDOM",e,null);t=n.nextNode();)Ze("uponSanitizeShadowNode",t,null),et(t)||(t.content instanceof c&&rt(t.content),nt(t));Ze("afterSanitizeShadowDOM",e,null)};return t.sanitize=function(o,r){var i=void 0,a=void 0,l=void 0,d=void 0,u=void 0;if(o||(o="\x3c!--\x3e"),"string"!=typeof o&&!Je(o)){if("function"!=typeof o.toString)throw y("toString is not a function");if("string"!=typeof(o=o.toString()))throw y("dirty is not a string, aborting")}if(!t.isSupported){if("object"===H(e.toStaticHTML)||"function"==typeof e.toStaticHTML){if("string"==typeof o)return e.toStaticHTML(o);if(Je(o))return e.toStaticHTML(o.outerHTML)}return o}if(Le||Ke(r),t.removed=[],"string"==typeof o&&(Oe=!1),Oe);else if(o instanceof k)1===(a=(i=$e("\x3c!--\x3e")).ownerDocument.importNode(o,!0)).nodeType&&"BODY"===a.nodeName||"HTML"===a.nodeName?i=a:i.appendChild(a);else{if(!Te&&!Be&&!Se&&-1===o.indexOf("<"))return te&&Me?te.createHTML(o):o;if(!(i=$e(o)))return Te?null:ne}i&&Ie&&qe(i.firstChild);for(var s=Xe(Oe?o:i);l=s.nextNode();)3===l.nodeType&&l===d||et(l)||(l.content instanceof c&&ot(l.content),nt(l),d=l);if(d=null,Oe)return o;if(Te){if(Ae)for(u=ce.call(i.ownerDocument);i.firstChild;)u.appendChild(i.firstChild);else u=i;return Ee&&(u=le.call(n,u,!0)),u}var p=Se?i.outerHTML:i.innerHTML;return Be&&(p=g(p,ue," "),p=g(p,se," ")),te&&Me?te.createHTML(p):p},t.setConfig=function(e){Ke(e),Le=!0},t.clearConfig=function(){Ue=null,Le=!1},t.isValidAttribute=function(e,t,n){Ue||Ke({});var o=h(e),r=h(t);return tt(o,r,n)},t.addHook=function(e,t){"function"==typeof t&&(de[e]=de[e]||[],m(de[e],t))},t.removeHook=function(e){de[e]&&p(de[e])},t.removeHooks=function(e){de[e]&&(de[e]=[])},t.removeAllHooks=function(){de={}},t}()}()},function(e,t,n){"use strict";e.exports=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}function n(e,n){var o;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(o=function(e,n){if(e){if("string"==typeof e)return t(e,n);var o=Object.prototype.toString.call(e).slice(8,-1);return"Object"===o&&e.constructor&&(o=e.constructor.name),"Map"===o||"Set"===o?Array.from(e):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?t(e,n):void 0}}(e))||n&&e&&"number"==typeof e.length){o&&(e=o);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(o=e[Symbol.iterator]()).next.bind(o)}var o=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e){function t(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}e.exports={defaults:{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:t,changeDefaults:function(t){e.exports.defaults=t}}})),r=(o.defaults,o.getDefaults,o.changeDefaults,/[&<>"']/),i=/[&<>"']/g,a=/[<>"']|&(?!#?\w+;)/,c=/[<>"']|&(?!#?\w+;)/g,l={"&":"&","<":"<",">":">",'"':""","'":"'"},d=function(e){return l[e]},u=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function s(e){return e.replace(u,(function(e,t){return"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""}))}var p=/(^|[^\[])\^/g,m=/[^\w:]/g,f=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i,h={},C=/^[^:]+:\/*[^/]*$/,g=/^([^:]+:)[\s\S]*$/,b=/^([^:]+:\/*[^/]*)[\s\S]*$/;function N(e,t){h[" "+e]||(C.test(e)?h[" "+e]=e+"/":h[" "+e]=v(e,"/",!0));var n=-1===(e=h[" "+e]).indexOf(":");return"//"===t.substring(0,2)?n?t:e.replace(g,"$1")+t:"/"===t.charAt(0)?n?t:e.replace(b,"$1")+t:e+t}function v(e,t,n){var o=e.length;if(0===o)return"";for(var r=0;r<o;){var i=e.charAt(o-r-1);if(i!==t||n){if(i===t||!n)break;r++}else r++}return e.substr(0,o-r)}var V={escape:function(e,t){if(t){if(r.test(e))return e.replace(i,d)}else if(a.test(e))return e.replace(c,d);return e},unescape:s,edit:function(e,t){e=e.source||e,t=t||"";var n={replace:function(t,o){return o=(o=o.source||o).replace(p,"$1"),e=e.replace(t,o),n},getRegex:function(){return new RegExp(e,t)}};return n},cleanUrl:function(e,t,n){if(e){var o;try{o=decodeURIComponent(s(n)).replace(m,"").toLowerCase()}catch(r){return null}if(0===o.indexOf("javascript:")||0===o.indexOf("vbscript:")||0===o.indexOf("data:"))return null}t&&!f.test(n)&&(n=N(t,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(r){return null}return n},resolveUrl:N,noopTest:{exec:function(){}},merge:function(e){for(var t,n,o=1;o<arguments.length;o++)for(n in t=arguments[o])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},splitCells:function(e,t){var n=e.replace(/\|/g,(function(e,t,n){for(var o=!1,r=t;--r>=0&&"\\"===n[r];)o=!o;return o?"|":" |"})).split(/ \|/),o=0;if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;o<n.length;o++)n[o]=n[o].trim().replace(/\\\|/g,"|");return n},rtrim:v,findClosingBracket:function(e,t){if(-1===e.indexOf(t[1]))return-1;for(var n=e.length,o=0,r=0;r<n;r++)if("\\"===e[r])r++;else if(e[r]===t[0])o++;else if(e[r]===t[1]&&--o<0)return r;return-1},checkSanitizeDeprecation:function(e){e&&e.sanitize&&e.silent}},y=o.defaults,k=V.rtrim,x=V.splitCells,_=V.escape,w=V.findClosingBracket;function B(e,t,n){var o=t.href,r=t.title?_(t.title):null,i=e[1].replace(/\\([\[\]])/g,"$1");return"!"!==e[0].charAt(0)?{type:"link",raw:n,href:o,title:r,text:i}:{type:"image",raw:n,href:o,title:r,text:_(i)}}var S=function(){function e(e){this.options=e||y}var t=e.prototype;return t.space=function(e){var t=this.rules.block.newline.exec(e);if(t)return t[0].length>1?{type:"space",raw:t[0]}:{raw:"\n"}},t.code=function(e,t){var n=this.rules.block.code.exec(e);if(n){var o=t[t.length-1];if(o&&"paragraph"===o.type)return{raw:n[0],text:n[0].trimRight()};var r=n[0].replace(/^ {4}/gm,"");return{type:"code",raw:n[0],codeBlockStyle:"indented",text:this.options.pedantic?r:k(r,"\n")}}},t.fences=function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],o=function(e,t){var n=e.match(/^(\s+)(?:```)/);if(null===n)return t;var o=n[1];return t.split("\n").map((function(e){var t=e.match(/^\s+/);return null===t?e:t[0].length>=o.length?e.slice(o.length):e})).join("\n")}(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim():t[2],text:o}}},t.heading=function(e){var t=this.rules.block.heading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[1].length,text:t[2]}},t.nptable=function(e){var t=this.rules.block.nptable.exec(e);if(t){var n={type:"table",header:x(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[],raw:t[0]};if(n.header.length===n.align.length){var o,r=n.align.length;for(o=0;o<r;o++)/^ *-+: *$/.test(n.align[o])?n.align[o]="right":/^ *:-+: *$/.test(n.align[o])?n.align[o]="center":/^ *:-+ *$/.test(n.align[o])?n.align[o]="left":n.align[o]=null;for(r=n.cells.length,o=0;o<r;o++)n.cells[o]=x(n.cells[o],n.header.length);return n}}},t.hr=function(e){var t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:t[0]}},t.blockquote=function(e){var t=this.rules.block.blockquote.exec(e);if(t){var n=t[0].replace(/^ *> ?/gm,"");return{type:"blockquote",raw:t[0],text:n}}},t.list=function(e){var t=this.rules.block.list.exec(e);if(t){for(var n,o,r,i,a,c,l,d=t[0],u=t[2],s=u.length>1,p=")"===u[u.length-1],m={type:"list",raw:d,ordered:s,start:s?+u.slice(0,-1):"",loose:!1,items:[]},f=t[0].match(this.rules.block.item),h=!1,C=f.length,g=0;g<C;g++)d=n=f[g],o=n.length,~(n=n.replace(/^ *([*+-]|\d+[.)]) */,"")).indexOf("\n ")&&(o-=n.length,n=this.options.pedantic?n.replace(/^ {1,4}/gm,""):n.replace(new RegExp("^ {1,"+o+"}","gm"),"")),g!==C-1&&(r=this.rules.block.bullet.exec(f[g+1])[0],(s?1===r.length||!p&&")"===r[r.length-1]:r.length>1||this.options.smartLists&&r!==u)&&(i=f.slice(g+1).join("\n"),m.raw=m.raw.substring(0,m.raw.length-i.length),g=C-1)),a=h||/\n\n(?!\s*$)/.test(n),g!==C-1&&(h="\n"===n.charAt(n.length-1),a||(a=h)),a&&(m.loose=!0),c=/^\[[ xX]\] /.test(n),l=undefined,c&&(l=" "!==n[1],n=n.replace(/^\[[ xX]\] +/,"")),m.items.push({type:"list_item",raw:d,task:c,checked:l,loose:a,text:n});return m}},t.html=function(e){var t=this.rules.block.html.exec(e);if(t)return{type:this.options.sanitize?"paragraph":"html",raw:t[0],pre:!this.options.sanitizer&&("pre"===t[1]||"script"===t[1]||"style"===t[1]),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(t[0]):_(t[0]):t[0]}},t.def=function(e){var t=this.rules.block.def.exec(e);if(t)return t[3]&&(t[3]=t[3].substring(1,t[3].length-1)),{tag:t[1].toLowerCase().replace(/\s+/g," "),raw:t[0],href:t[2],title:t[3]}},t.table=function(e){var t=this.rules.block.table.exec(e);if(t){var n={type:"table",header:x(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[]};if(n.header.length===n.align.length){n.raw=t[0];var o,r=n.align.length;for(o=0;o<r;o++)/^ *-+: *$/.test(n.align[o])?n.align[o]="right":/^ *:-+: *$/.test(n.align[o])?n.align[o]="center":/^ *:-+ *$/.test(n.align[o])?n.align[o]="left":n.align[o]=null;for(r=n.cells.length,o=0;o<r;o++)n.cells[o]=x(n.cells[o].replace(/^ *\| *| *\| *$/g,""),n.header.length);return n}}},t.lheading=function(e){var t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:t[1]}},t.paragraph=function(e){var t=this.rules.block.paragraph.exec(e);if(t)return{type:"paragraph",raw:t[0],text:"\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1]}},t.text=function(e,t){var n=this.rules.block.text.exec(e);if(n){var o=t[t.length-1];return o&&"text"===o.type?{raw:n[0],text:n[0]}:{type:"text",raw:n[0],text:n[0]}}},t.escape=function(e){var t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:_(t[1])}},t.tag=function(e,t,n){var o=this.rules.inline.tag.exec(e);if(o)return!t&&/^<a /i.test(o[0])?t=!0:t&&/^<\/a>/i.test(o[0])&&(t=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(o[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(o[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:o[0],inLink:t,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(o[0]):_(o[0]):o[0]}},t.link=function(e){var t=this.rules.inline.link.exec(e);if(t){var n=w(t[2],"()");if(n>-1){var o=(0===t[0].indexOf("!")?5:4)+t[1].length+n;t[2]=t[2].substring(0,n),t[0]=t[0].substring(0,o).trim(),t[3]=""}var r=t[2],i="";if(this.options.pedantic){var a=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);a?(r=a[1],i=a[3]):i=""}else i=t[3]?t[3].slice(1,-1):"";return B(t,{href:(r=r.trim().replace(/^<([\s\S]*)>$/,"$1"))?r.replace(this.rules.inline._escapes,"$1"):r,title:i?i.replace(this.rules.inline._escapes,"$1"):i},t[0])}},t.reflink=function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var o=(n[2]||n[1]).replace(/\s+/g," ");if(!(o=t[o.toLowerCase()])||!o.href){var r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return B(n,o,n[0])}},t.strong=function(e,t,n){void 0===n&&(n="");var o=this.rules.inline.strong.start.exec(e);if(o&&(!o[1]||o[1]&&(""===n||this.rules.inline.punctuation.exec(n)))){t=t.slice(-1*e.length);var r,i="**"===o[0]?this.rules.inline.strong.endAst:this.rules.inline.strong.endUnd;for(i.lastIndex=0;null!=(o=i.exec(t));)if(r=this.rules.inline.strong.middle.exec(t.slice(0,o.index+3)))return{type:"strong",raw:e.slice(0,r[0].length),text:e.slice(2,r[0].length-2)}}},t.em=function(e,t,n){void 0===n&&(n="");var o=this.rules.inline.em.start.exec(e);if(o&&(!o[1]||o[1]&&(""===n||this.rules.inline.punctuation.exec(n)))){t=t.slice(-1*e.length);var r,i="*"===o[0]?this.rules.inline.em.endAst:this.rules.inline.em.endUnd;for(i.lastIndex=0;null!=(o=i.exec(t));)if(r=this.rules.inline.em.middle.exec(t.slice(0,o.index+2)))return{type:"em",raw:e.slice(0,r[0].length),text:e.slice(1,r[0].length-1)}}},t.codespan=function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(/\n/g," "),o=/[^ ]/.test(n),r=n.startsWith(" ")&&n.endsWith(" ");return o&&r&&(n=n.substring(1,n.length-1)),n=_(n,!0),{type:"codespan",raw:t[0],text:n}}},t.br=function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}},t.del=function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[1]}},t.autolink=function(e,t){var n,o,r=this.rules.inline.autolink.exec(e);if(r)return o="@"===r[2]?"mailto:"+(n=_(this.options.mangle?t(r[1]):r[1])):n=_(r[1]),{type:"link",raw:r[0],text:n,href:o,tokens:[{type:"text",raw:n,text:n}]}},t.url=function(e,t){var n;if(n=this.rules.inline.url.exec(e)){var o,r;if("@"===n[2])r="mailto:"+(o=_(this.options.mangle?t(n[0]):n[0]));else{var i;do{i=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(i!==n[0]);o=_(n[0]),r="www."===n[1]?"http://"+o:o}return{type:"link",raw:n[0],text:o,href:r,tokens:[{type:"text",raw:o,text:o}]}}},t.inlineText=function(e,t,n){var o,r=this.rules.inline.text.exec(e);if(r)return o=t?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):_(r[0]):r[0]:_(this.options.smartypants?n(r[0]):r[0]),{type:"text",raw:r[0],text:o}},e}(),L=V.noopTest,I=V.edit,T=V.merge,A={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6}) +([^\n]*?)(?: +#+)? *(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|<![A-Z][\\s\\S]*?>\\n*|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\n*|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:L,table:L,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};A.def=I(A.def).replace("label",A._label).replace("title",A._title).getRegex(),A.bullet=/(?:[*+-]|\d{1,9}[.)])/,A.item=/^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/,A.item=I(A.item,"gm").replace(/bull/g,A.bullet).getRegex(),A.list=I(A.list).replace(/bull/g,A.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+A.def.source+")").getRegex(),A._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",A._comment=/<!--(?!-?>)[\s\S]*?-->/,A.html=I(A.html,"i").replace("comment",A._comment).replace("tag",A._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),A.paragraph=I(A._paragraph).replace("hr",A.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",A._tag).getRegex(),A.blockquote=I(A.blockquote).replace("paragraph",A.paragraph).getRegex(),A.normal=T({},A),A.gfm=T({},A.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n *([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n *\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),A.gfm.nptable=I(A.gfm.nptable).replace("hr",A.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",A._tag).getRegex(),A.gfm.table=I(A.gfm.table).replace("hr",A.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",A._tag).getRegex(),A.pedantic=T({},A.normal,{html:I("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",A._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,fences:L,paragraph:I(A.normal._paragraph).replace("hr",A.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",A.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var E={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:L,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",strong:{start:/^(?:(\*\*(?=[*punctuation]))|\*\*)(?![\s])|__/,middle:/^\*\*(?:(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)|\*(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)*?\*)+?\*\*$|^__(?![\s])((?:(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)|_(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)*?_)+?)__$/,endAst:/[^punctuation\s]\*\*(?!\*)|[punctuation]\*\*(?!\*)(?:(?=[punctuation\s]|$))/,endUnd:/[^\s]__(?!_)(?:(?=[punctuation\s])|$)/},em:{start:/^(?:(\*(?=[punctuation]))|\*)(?![*\s])|_/,middle:/^\*(?:(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)|\*(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)*?\*)+?\*$|^_(?![_\s])(?:(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)|_(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)*?_)+?_$/,endAst:/[^punctuation\s]\*(?!\*)|[punctuation]\*(?!\*)(?:(?=[punctuation\s]|$))/,endUnd:/[^\s]_(?!_)(?:(?=[punctuation\s])|$)/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:L,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n))|(?= {2,}\n))/,punctuation:/^([\s*punctuation])/,_punctuation:"!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~"};E.punctuation=I(E.punctuation).replace(/punctuation/g,E._punctuation).getRegex(),E._blockSkip="\\[[^\\]]*?\\]\\([^\\)]*?\\)|`[^`]*?`|<[^>]*?>",E._overlapSkip="__[^_]*?__|\\*\\*\\[^\\*\\]*?\\*\\*",E.em.start=I(E.em.start).replace(/punctuation/g,E._punctuation).getRegex(),E.em.middle=I(E.em.middle).replace(/punctuation/g,E._punctuation).replace(/overlapSkip/g,E._overlapSkip).getRegex(),E.em.endAst=I(E.em.endAst,"g").replace(/punctuation/g,E._punctuation).getRegex(),E.em.endUnd=I(E.em.endUnd,"g").replace(/punctuation/g,E._punctuation).getRegex(),E.strong.start=I(E.strong.start).replace(/punctuation/g,E._punctuation).getRegex(),E.strong.middle=I(E.strong.middle).replace(/punctuation/g,E._punctuation).replace(/blockSkip/g,E._blockSkip).getRegex(),E.strong.endAst=I(E.strong.endAst,"g").replace(/punctuation/g,E._punctuation).getRegex(),E.strong.endUnd=I(E.strong.endUnd,"g").replace(/punctuation/g,E._punctuation).getRegex(),E.blockSkip=I(E._blockSkip,"g").getRegex(),E.overlapSkip=I(E._overlapSkip,"g").getRegex(),E._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,E._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,E._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,E.autolink=I(E.autolink).replace("scheme",E._scheme).replace("email",E._email).getRegex(),E._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,E.tag=I(E.tag).replace("comment",A._comment).replace("attribute",E._attribute).getRegex(),E._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,E._href=/<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*/,E._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,E.link=I(E.link).replace("label",E._label).replace("href",E._href).replace("title",E._title).getRegex(),E.reflink=I(E.reflink).replace("label",E._label).getRegex(),E.reflinkSearch=I(E.reflinkSearch,"g").replace("reflink",E.reflink).replace("nolink",E.nolink).getRegex(),E.normal=T({},E),E.pedantic=T({},E.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:I(/^!?\[(label)\]\((.*?)\)/).replace("label",E._label).getRegex(),reflink:I(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",E._label).getRegex()}),E.gfm=T({},E.normal,{escape:I(E.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?= {2,}\n|[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),E.gfm.url=I(E.gfm.url,"i").replace("email",E.gfm._extended_email).getRegex(),E.breaks=T({},E.gfm,{br:I(E.br).replace("{2,}","*").getRegex(),text:I(E.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()});var M={block:A,inline:E},P=o.defaults,R=M.block,O=M.inline;function j(e){return e.replace(/---/g,"\u2014").replace(/--/g,"\u2013").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1\u2018").replace(/'/g,"\u2019").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1\u201c").replace(/"/g,"\u201d").replace(/\.{3}/g,"\u2026")}function D(e){var t,n,o="",r=e.length;for(t=0;t<r;t++)n=e.charCodeAt(t),Math.random()>.5&&(n="x"+n.toString(16)),o+="&#"+n+";";return o}var F=function(){function t(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||P,this.options.tokenizer=this.options.tokenizer||new S,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var t={block:R.normal,inline:O.normal};this.options.pedantic?(t.block=R.pedantic,t.inline=O.pedantic):this.options.gfm&&(t.block=R.gfm,this.options.breaks?t.inline=O.breaks:t.inline=O.gfm),this.tokenizer.rules=t}t.lex=function(e,n){return new t(n).lex(e)};var n,o,r,i=t.prototype;return i.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(e,this.tokens,!0),this.inline(this.tokens),this.tokens},i.blockTokens=function(e,t,n){var o,r,i,a;for(void 0===t&&(t=[]),void 0===n&&(n=!0),e=e.replace(/^ +$/gm,"");e;)if(o=this.tokenizer.space(e))e=e.substring(o.raw.length),o.type&&t.push(o);else if(o=this.tokenizer.code(e,t))e=e.substring(o.raw.length),o.type?t.push(o):((a=t[t.length-1]).raw+="\n"+o.raw,a.text+="\n"+o.text);else if(o=this.tokenizer.fences(e))e=e.substring(o.raw.length),t.push(o);else if(o=this.tokenizer.heading(e))e=e.substring(o.raw.length),t.push(o);else if(o=this.tokenizer.nptable(e))e=e.substring(o.raw.length),t.push(o);else if(o=this.tokenizer.hr(e))e=e.substring(o.raw.length),t.push(o);else if(o=this.tokenizer.blockquote(e))e=e.substring(o.raw.length),o.tokens=this.blockTokens(o.text,[],n),t.push(o);else if(o=this.tokenizer.list(e)){for(e=e.substring(o.raw.length),i=o.items.length,r=0;r<i;r++)o.items[r].tokens=this.blockTokens(o.items[r].text,[],!1);t.push(o)}else if(o=this.tokenizer.html(e))e=e.substring(o.raw.length),t.push(o);else if(n&&(o=this.tokenizer.def(e)))e=e.substring(o.raw.length),this.tokens.links[o.tag]||(this.tokens.links[o.tag]={href:o.href,title:o.title});else if(o=this.tokenizer.table(e))e=e.substring(o.raw.length),t.push(o);else if(o=this.tokenizer.lheading(e))e=e.substring(o.raw.length),t.push(o);else if(n&&(o=this.tokenizer.paragraph(e)))e=e.substring(o.raw.length),t.push(o);else if(o=this.tokenizer.text(e,t))e=e.substring(o.raw.length),o.type?t.push(o):((a=t[t.length-1]).raw+="\n"+o.raw,a.text+="\n"+o.text);else if(e){var c="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent)break;throw new Error(c)}return t},i.inline=function(e){var t,n,o,r,i,a,c=e.length;for(t=0;t<c;t++)switch((a=e[t]).type){case"paragraph":case"text":case"heading":a.tokens=[],this.inlineTokens(a.text,a.tokens);break;case"table":for(a.tokens={header:[],cells:[]},r=a.header.length,n=0;n<r;n++)a.tokens.header[n]=[],this.inlineTokens(a.header[n],a.tokens.header[n]);for(r=a.cells.length,n=0;n<r;n++)for(i=a.cells[n],a.tokens.cells[n]=[],o=0;o<i.length;o++)a.tokens.cells[n][o]=[],this.inlineTokens(i[o],a.tokens.cells[n][o]);break;case"blockquote":this.inline(a.tokens);break;case"list":for(r=a.items.length,n=0;n<r;n++)this.inline(a.items[n].tokens)}return e},i.inlineTokens=function(e,t,n,o,r){var i;void 0===t&&(t=[]),void 0===n&&(n=!1),void 0===o&&(o=!1),void 0===r&&(r="");var a,c=e;if(this.tokens.links){var l=Object.keys(this.tokens.links);if(l.length>0)for(;null!=(a=this.tokenizer.rules.inline.reflinkSearch.exec(c));)l.includes(a[0].slice(a[0].lastIndexOf("[")+1,-1))&&(c=c.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+c.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(a=this.tokenizer.rules.inline.blockSkip.exec(c));)c=c.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+c.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;e;)if(i=this.tokenizer.escape(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.tag(e,n,o))e=e.substring(i.raw.length),n=i.inLink,o=i.inRawBlock,t.push(i);else if(i=this.tokenizer.link(e))e=e.substring(i.raw.length),"link"===i.type&&(i.tokens=this.inlineTokens(i.text,[],!0,o)),t.push(i);else if(i=this.tokenizer.reflink(e,this.tokens.links))e=e.substring(i.raw.length),"link"===i.type&&(i.tokens=this.inlineTokens(i.text,[],!0,o)),t.push(i);else if(i=this.tokenizer.strong(e,c,r))e=e.substring(i.raw.length),i.tokens=this.inlineTokens(i.text,[],n,o),t.push(i);else if(i=this.tokenizer.em(e,c,r))e=e.substring(i.raw.length),i.tokens=this.inlineTokens(i.text,[],n,o),t.push(i);else if(i=this.tokenizer.codespan(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.br(e))e=e.substring(i.raw.length),t.push(i);else if(i=this.tokenizer.del(e))e=e.substring(i.raw.length),i.tokens=this.inlineTokens(i.text,[],n,o),t.push(i);else if(i=this.tokenizer.autolink(e,D))e=e.substring(i.raw.length),t.push(i);else if(n||!(i=this.tokenizer.url(e,D))){if(i=this.tokenizer.inlineText(e,o,j))e=e.substring(i.raw.length),r=i.raw.slice(-1),t.push(i);else if(e){var d="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent)break;throw new Error(d)}}else e=e.substring(i.raw.length),t.push(i);return t},n=t,r=[{key:"rules",get:function(){return{block:R,inline:O}}}],(o=null)&&e(n.prototype,o),r&&e(n,r),t}(),z=o.defaults,W=V.cleanUrl,H=V.escape,U=function(){function e(e){this.options=e||z}var t=e.prototype;return t.code=function(e,t,n){var o=(t||"").match(/\S*/)[0];if(this.options.highlight){var r=this.options.highlight(e,o);null!=r&&r!==e&&(n=!0,e=r)}return o?'<pre><code class="'+this.options.langPrefix+H(o,!0)+'">'+(n?e:H(e,!0))+"</code></pre>\n":"<pre><code>"+(n?e:H(e,!0))+"</code></pre>\n"},t.blockquote=function(e){return"<blockquote>\n"+e+"</blockquote>\n"},t.html=function(e){return e},t.heading=function(e,t,n,o){return this.options.headerIds?"<h"+t+' id="'+this.options.headerPrefix+o.slug(n)+'">'+e+"</h"+t+">\n":"<h"+t+">"+e+"</h"+t+">\n"},t.hr=function(){return this.options.xhtml?"<hr/>\n":"<hr>\n"},t.list=function(e,t,n){var o=t?"ol":"ul";return"<"+o+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"</"+o+">\n"},t.listitem=function(e){return"<li>"+e+"</li>\n"},t.checkbox=function(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "},t.paragraph=function(e){return"<p>"+e+"</p>\n"},t.table=function(e,t){return t&&(t="<tbody>"+t+"</tbody>"),"<table>\n<thead>\n"+e+"</thead>\n"+t+"</table>\n"},t.tablerow=function(e){return"<tr>\n"+e+"</tr>\n"},t.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"</"+n+">\n"},t.strong=function(e){return"<strong>"+e+"</strong>"},t.em=function(e){return"<em>"+e+"</em>"},t.codespan=function(e){return"<code>"+e+"</code>"},t.br=function(){return this.options.xhtml?"<br/>":"<br>"},t.del=function(e){return"<del>"+e+"</del>"},t.link=function(e,t,n){if(null===(e=W(this.options.sanitize,this.options.baseUrl,e)))return n;var o='<a href="'+H(e)+'"';return t&&(o+=' title="'+t+'"'),o+=">"+n+"</a>"},t.image=function(e,t,n){if(null===(e=W(this.options.sanitize,this.options.baseUrl,e)))return n;var o='<img src="'+e+'" alt="'+n+'"';return t&&(o+=' title="'+t+'"'),o+=this.options.xhtml?"/>":">"},t.text=function(e){return e},e}(),G=function(){function e(){}var t=e.prototype;return t.strong=function(e){return e},t.em=function(e){return e},t.codespan=function(e){return e},t.del=function(e){return e},t.html=function(e){return e},t.text=function(e){return e},t.link=function(e,t,n){return""+n},t.image=function(e,t,n){return""+n},t.br=function(){return""},e}(),K=function(){function e(){this.seen={}}return e.prototype.slug=function(e){var t=e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-");if(this.seen.hasOwnProperty(t)){var n=t;do{this.seen[n]++,t=n+"-"+this.seen[n]}while(this.seen.hasOwnProperty(t))}return this.seen[t]=0,t},e}(),q=o.defaults,Y=V.unescape,$=function(){function e(e){this.options=e||q,this.options.renderer=this.options.renderer||new U,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new G,this.slugger=new K}e.parse=function(t,n){return new e(n).parse(t)};var t=e.prototype;return t.parse=function(e,t){void 0===t&&(t=!0);var n,o,r,i,a,c,l,d,u,s,p,m,f,h,C,g,b,N,v="",V=e.length;for(n=0;n<V;n++)switch((s=e[n]).type){case"space":continue;case"hr":v+=this.renderer.hr();continue;case"heading":v+=this.renderer.heading(this.parseInline(s.tokens),s.depth,Y(this.parseInline(s.tokens,this.textRenderer)),this.slugger);continue;case"code":v+=this.renderer.code(s.text,s.lang,s.escaped);continue;case"table":for(d="",l="",i=s.header.length,o=0;o<i;o++)l+=this.renderer.tablecell(this.parseInline(s.tokens.header[o]),{header:!0,align:s.align[o]});for(d+=this.renderer.tablerow(l),u="",i=s.cells.length,o=0;o<i;o++){for(l="",a=(c=s.tokens.cells[o]).length,r=0;r<a;r++)l+=this.renderer.tablecell(this.parseInline(c[r]),{header:!1,align:s.align[r]});u+=this.renderer.tablerow(l)}v+=this.renderer.table(d,u);continue;case"blockquote":u=this.parse(s.tokens),v+=this.renderer.blockquote(u);continue;case"list":for(p=s.ordered,m=s.start,f=s.loose,i=s.items.length,u="",o=0;o<i;o++)g=(C=s.items[o]).checked,b=C.task,h="",C.task&&(N=this.renderer.checkbox(g),f?C.tokens.length>0&&"text"===C.tokens[0].type?(C.tokens[0].text=N+" "+C.tokens[0].text,C.tokens[0].tokens&&C.tokens[0].tokens.length>0&&"text"===C.tokens[0].tokens[0].type&&(C.tokens[0].tokens[0].text=N+" "+C.tokens[0].tokens[0].text)):C.tokens.unshift({type:"text",text:N}):h+=N),h+=this.parse(C.tokens,f),u+=this.renderer.listitem(h,b,g);v+=this.renderer.list(u,p,m);continue;case"html":v+=this.renderer.html(s.text);continue;case"paragraph":v+=this.renderer.paragraph(this.parseInline(s.tokens));continue;case"text":for(u=s.tokens?this.parseInline(s.tokens):s.text;n+1<V&&"text"===e[n+1].type;)u+="\n"+((s=e[++n]).tokens?this.parseInline(s.tokens):s.text);v+=t?this.renderer.paragraph(u):u;continue;default:var y='Token with "'+s.type+'" type was not found.';if(this.options.silent)return;throw new Error(y)}return v},t.parseInline=function(e,t){t=t||this.renderer;var n,o,r="",i=e.length;for(n=0;n<i;n++)switch((o=e[n]).type){case"escape":r+=t.text(o.text);break;case"html":r+=t.html(o.text);break;case"link":r+=t.link(o.href,o.title,this.parseInline(o.tokens,t));break;case"image":r+=t.image(o.href,o.title,o.text);break;case"strong":r+=t.strong(this.parseInline(o.tokens,t));break;case"em":r+=t.em(this.parseInline(o.tokens,t));break;case"codespan":r+=t.codespan(o.text);break;case"br":r+=t.br();break;case"del":r+=t.del(this.parseInline(o.tokens,t));break;case"text":r+=t.text(o.text);break;default:var a='Token with "'+o.type+'" type was not found.';if(this.options.silent)return;throw new Error(a)}return r},e}(),X=V.merge,Q=V.checkSanitizeDeprecation,J=V.escape,Z=o.getDefaults,ee=o.changeDefaults,te=o.defaults;function ne(e,t,n){if(null==e)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof e)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected");if("function"==typeof t&&(n=t,t=null),t=X({},ne.defaults,t||{}),Q(t),n){var o,r=t.highlight;try{o=F.lex(e,t)}catch(l){return n(l)}var i=function(e){var i;if(!e)try{i=$.parse(o,t)}catch(l){e=l}return t.highlight=r,e?n(e):n(null,i)};if(!r||r.length<3)return i();if(delete t.highlight,!o.length)return i();var a=0;return ne.walkTokens(o,(function(e){"code"===e.type&&(a++,setTimeout((function(){r(e.text,e.lang,(function(t,n){if(t)return i(t);null!=n&&n!==e.text&&(e.text=n,e.escaped=!0),0==--a&&i()}))}),0))})),void(0===a&&i())}try{var c=F.lex(e,t);return t.walkTokens&&ne.walkTokens(c,t.walkTokens),$.parse(c,t)}catch(l){if(l.message+="\nPlease report this to https://github.com/markedjs/marked.",t.silent)return"<p>An error occurred:</p><pre>"+J(l.message+"",!0)+"</pre>";throw l}}return ne.options=ne.setOptions=function(e){return X(ne.defaults,e),ee(ne.defaults),ne},ne.getDefaults=Z,ne.defaults=te,ne.use=function(e){var t=X({},e);if(e.renderer&&function(){var n=ne.defaults.renderer||new U,o=function(t){var o=n[t];n[t]=function(){for(var r=arguments.length,i=new Array(r),a=0;a<r;a++)i[a]=arguments[a];var c=e.renderer[t].apply(n,i);return!1===c&&(c=o.apply(n,i)),c}};for(var r in e.renderer)o(r);t.renderer=n}(),e.tokenizer&&function(){var n=ne.defaults.tokenizer||new S,o=function(t){var o=n[t];n[t]=function(){for(var r=arguments.length,i=new Array(r),a=0;a<r;a++)i[a]=arguments[a];var c=e.tokenizer[t].apply(n,i);return!1===c&&(c=o.apply(n,i)),c}};for(var r in e.tokenizer)o(r);t.tokenizer=n}(),e.walkTokens){var n=ne.defaults.walkTokens;t.walkTokens=function(t){e.walkTokens(t),n&&n(t)}}ne.setOptions(t)},ne.walkTokens=function(e,t){for(var o,r=n(e);!(o=r()).done;){var i=o.value;switch(t(i),i.type){case"table":for(var a,c=n(i.tokens.header);!(a=c()).done;){var l=a.value;ne.walkTokens(l,t)}for(var d,u=n(i.tokens.cells);!(d=u()).done;)for(var s,p=n(d.value);!(s=p()).done;){var m=s.value;ne.walkTokens(m,t)}break;case"list":ne.walkTokens(i.items,t);break;default:i.tokens&&ne.walkTokens(i.tokens,t)}}},ne.Parser=$,ne.parser=$.parse,ne.Renderer=U,ne.TextRenderer=G,ne.Lexer=F,ne.lexer=F.lex,ne.Tokenizer=S,ne.Slugger=K,ne.parse=ne,ne}()},function(e,t,n){"use strict";t.__esModule=!0,t.ParticleAccelerator=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.ParticleAccelerator=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.assembled,u=l.power,s=l.strength;return(0,o.createComponentVNode)(2,a.Window,{width:350,height:185,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Run Scan",onClick:function(){return c("scan")}}),children:(0,o.createComponentVNode)(2,i.Box,{color:d?"good":"bad",children:d?"Ready - All parts in place":"Unable to detect all parts"})})})}),(0,o.createComponentVNode)(2,i.Section,{title:"Particle Accelerator Controls",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,i.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,disabled:!d,onClick:function(){return c("power")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Particle Strength",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"backward",disabled:!d,onClick:function(){return c("remove_strength")}})," ",String(s).padStart(1,"0")," ",(0,o.createComponentVNode)(2,i.Button,{icon:"forward",disabled:!d,onClick:function(){return c("add_strength")}})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PersonalCrafting=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);function c(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return l(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}t.PersonalCrafting=function(e,t){for(var n,l=(0,r.useBackend)(t),u=l.act,s=l.data,p=s.busy,m=s.display_craftable_only,f=s.display_compact,h=s.crafting_recipes||{},C=[],g=[],b=0,N=Object.keys(h);b<N.length;b++){var v=N[b],V=h[v];if("has_subcats"in V)for(var y=0,k=Object.keys(V);y<k.length;y++){var x=k[y];if("has_subcats"!==x){C.push({name:x,category:v,subcategory:x});for(var _,w=c(V[x]);!(_=w()).done;){var B=_.value;g.push(Object.assign({},B,{category:x}))}}}else{C.push({name:v,category:v});for(var S,L=c(h[v]);!(S=L()).done;){var I=S.value;g.push(Object.assign({},I,{category:v}))}}}var T=(0,r.useLocalState)(t,"tab",null==(n=C[0])?void 0:n.name),A=T[0],E=T[1],M=g.filter((function(e){return e.category===A}));return(0,o.createComponentVNode)(2,a.Window,{title:"Crafting Menu",width:700,height:800,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[!!p&&(0,o.createComponentVNode)(2,i.Dimmer,{fontSize:"32px",children:[(0,o.createComponentVNode)(2,i.Icon,{name:"cog",spin:1})," Crafting..."]}),(0,o.createComponentVNode)(2,i.Section,{title:"Personal Crafting",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button.Checkbox,{content:"Compact",checked:f,onClick:function(){return u("toggle_compact")}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{content:"Craftable Only",checked:m,onClick:function(){return u("toggle_recipes")}})],4),children:(0,o.createComponentVNode)(2,i.Flex,{children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:C.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:e.name===A,onClick:function(){E(e.name),u("set_category",{category:e.category,subcategory:e.subcategory})},children:e.name},e.name)}))})}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,d,{craftables:M})})]})})]})})};var d=function(e,t){var n=e.craftables,a=void 0===n?[]:n,c=(0,r.useBackend)(t),l=c.act,d=c.data,u=d.craftability,s=void 0===u?{}:u,p=d.display_compact,m=d.display_craftable_only;return a.map((function(e){return m&&!s[e.ref]?null:p?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,className:"candystripe",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Craft",disabled:!s[e.ref],tooltip:e.tool_text&&"Tools needed: "+e.tool_text,tooltipPosition:"left",onClick:function(){return l("make",{recipe:e.ref})}}),children:e.req_text},e.name):(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Craft",disabled:!s[e.ref],onClick:function(){return l("make",{recipe:e.ref})}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.req_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Required",children:e.req_text}),!!e.catalyst_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Catalyst",children:e.catalyst_text}),!!e.tool_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Tools",children:e.tool_text})]})},e.name)}))}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableChemMixer=void 0;var o=n(0),r=n(19),i=n(1),a=n(3),c=n(2),l=n(18);t.PortableChemMixer=function(e,t){var n=(0,i.useBackend)(t),d=n.act,u=n.data,s=!!u.recordingRecipe,p=u.beakerTransferAmounts||[],m=s&&Object.keys(u.recordingRecipe).map((function(e){return{id:e,name:(0,r.toTitleCase)(e.replace(/_/," ")),volume:u.recordingRecipe[e]}}))||u.beakerContents||[],f=(0,l.sortBy)((function(e){return e.title}))(u.chemicals);return(0,o.createComponentVNode)(2,c.Window,{width:645,height:550,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Dispense",buttons:p.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:"plus",selected:e===u.amount,content:e,onClick:function(){return d("amount",{target:e})}},e)})),children:(0,o.createComponentVNode)(2,a.Box,{mr:-1,children:f.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:"tint",width:"150px",lineHeight:"21px",content:"("+e.volume+") "+e.title,onClick:function(){return d("dispense",{reagent:e.id})}},e.id)}))})}),(0,o.createComponentVNode)(2,a.Section,{title:"Disposal controls",buttons:p.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:"minus",disabled:s,content:e,onClick:function(){return d("remove",{amount:e})}},e)})),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Beaker",buttons:!!u.isBeakerLoaded&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!u.isBeakerLoaded,onClick:function(){return d("eject")}}),children:(s?"Virtual beaker":u.isBeakerLoaded&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.AnimatedNumber,{initial:0,value:u.beakerCurrentVolume}),(0,o.createTextVNode)("/"),u.beakerMaxVolume,(0,o.createTextVNode)(" units")],0))||"No beaker"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Contents",children:[(0,o.createComponentVNode)(2,a.Box,{color:"label",children:u.isBeakerLoaded||s?0===m.length&&"Nothing":"N/A"}),m.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{color:"label",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{initial:0,value:e.volume})," ","units of ",e.name]},e.name)}))]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableGenerator=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.PortableGenerator=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.stack_percent,u=(d>50?"good":d>15&&"average")||"bad";return(0,o.createComponentVNode)(2,a.Window,{width:450,height:340,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[!l.anchored&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Generator not anchored."}),(0,o.createComponentVNode)(2,i.Section,{title:"Status",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power switch",children:(0,o.createComponentVNode)(2,i.Button,{icon:l.active?"power-off":"times",onClick:function(){return c("toggle_power")},disabled:!l.ready_to_boot,children:l.active?"On":"Off"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:l.sheet_name+" sheets",children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:u,children:l.sheets}),l.sheets>=1&&(0,o.createComponentVNode)(2,i.Button,{ml:1,icon:"eject",disabled:l.active,onClick:function(){return c("eject")},children:"Eject"})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current sheet level",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:l.stack_percent/100,ranges:{good:[.1,Infinity],average:[.01,.1],bad:[-Infinity,.01]}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Heat level",children:l.current_heat<100?(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"good",children:"Nominal"}):l.current_heat<200?(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"average",children:"Caution"}):(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"bad",children:"DANGER"})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Output",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current output",children:l.power_output}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Adjust output",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"minus",onClick:function(){return c("lower_power")},children:l.power_generated}),(0,o.createComponentVNode)(2,i.Button,{icon:"plus",onClick:function(){return c("higher_power")},children:l.power_generated})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power available",children:(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:!l.connected&&"bad",children:l.connected?l.power_available:"Unconnected"})})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PortablePump=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=n(185);t.PortablePump=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.direction,s=(d.holding,d.target_pressure),p=d.default_pressure,m=d.min_pressure,f=d.max_pressure;return(0,o.createComponentVNode)(2,a.Window,{width:300,height:315,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,c.PortableBasicInfo),(0,o.createComponentVNode)(2,i.Section,{title:"Pump",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u?"sign-in-alt":"sign-out-alt",content:u?"In":"Out",selected:u,onClick:function(){return l("direction")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Output",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:s,unit:"kPa",width:"75px",minValue:m,maxValue:f,step:10,onChange:function(e,t){return l("pressure",{pressure:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"minus",disabled:s===m,onClick:function(){return l("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",disabled:s===p,onClick:function(){return l("pressure",{pressure:"reset"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"plus",disabled:s===f,onClick:function(){return l("pressure",{pressure:"max"})}})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableScrubber=void 0;var o=n(0),r=n(1),i=n(3),a=n(38),c=n(2),l=n(185);t.PortableScrubber=function(e,t){var n=(0,r.useBackend)(t),d=n.act,u=n.data.filter_types||[];return(0,o.createComponentVNode)(2,c.Window,{width:320,height:350,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[(0,o.createComponentVNode)(2,l.PortableBasicInfo),(0,o.createComponentVNode)(2,i.Section,{title:"Filters",children:u.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,a.getGasLabel)(e.gas_id,e.gas_name),selected:e.enabled,onClick:function(){return d("toggle_filter",{val:e.gas_id})}},e.id)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableTurret=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.PortableTurret=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.silicon_user,u=l.locked,s=l.on,p=l.check_weapons,m=l.neutralize_criminals,f=l.neutralize_all,h=l.neutralize_unidentified,C=l.neutralize_nonmindshielded,g=l.neutralize_cyborgs,b=l.ignore_heads,N=l.manual_control,v=l.allow_manual_control,V=l.lasertag_turret;return(0,o.createComponentVNode)(2,a.Window,{width:305,height:V?110:300,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.NoticeBox,{children:["Swipe an ID card to ",u?"unlock":"lock"," this interface."]}),(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",buttons:!V&&(!!v||!!N&&!!d)&&(0,o.createComponentVNode)(2,i.Button,{icon:N?"wifi":"terminal",content:N?"Remotely Controlled":"Manual Control",disabled:N,color:"bad",onClick:function(){return c("manual")}}),children:(0,o.createComponentVNode)(2,i.Button,{icon:s?"power-off":"times",content:s?"On":"Off",selected:s,disabled:u,onClick:function(){return c("power")}})})})}),!V&&(0,o.createComponentVNode)(2,i.Section,{title:"Target Settings",buttons:(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:b,content:"Ignore Heads",disabled:u,onClick:function(){return c("shootheads")}}),children:[(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:f,content:"Non-Security and Non-Command",disabled:u,onClick:function(){return c("shootall")}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:p,content:"Unauthorized Weapons",disabled:u,onClick:function(){return c("authweapon")}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:h,content:"Unidentified Life Signs",disabled:u,onClick:function(){return c("checkxenos")}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:C,content:"Non-Mindshielded",disabled:u,onClick:function(){return c("checkloyal")}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:m,content:"Wanted Criminals",disabled:u,onClick:function(){return c("shootcriminals")}}),(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:g,content:"Cyborgs",disabled:u,onClick:function(){return c("shootborgs")}})]})],0)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ProbingConsole=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.ProbingConsole=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.open,u=l.feedback,s=l.occupant,p=l.occupant_name,m=l.occupant_status;return(0,o.createComponentVNode)(2,a.Window,{width:330,height:207,theme:"abductor",children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Machine Report",children:u})})}),(0,o.createComponentVNode)(2,i.Section,{title:"Scanner",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:d?"sign-out-alt":"sign-in-alt",content:d?"Close":"Open",onClick:function(){return c("door")}}),children:s&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Name",children:p}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",color:3===m?"bad":2===m?"average":"good",children:3===m?"Deceased":2===m?"Unconcious":"Concious"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Experiments",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"thermometer",content:"Probe",onClick:function(){return c("experiment",{experiment_type:1})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"brain",content:"Dissect",onClick:function(){return c("experiment",{experiment_type:2})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"search",content:"Analyze",onClick:function(){return c("experiment",{experiment_type:3})}})]})]})||(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No Subject"})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ProximitySensor=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.ProximitySensor=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.minutes,u=l.seconds,s=l.timing,p=l.scanning,m=l.sensitivity;return(0,o.createComponentVNode)(2,a.Window,{width:250,height:185,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:(0,o.createComponentVNode)(2,i.Button,{icon:p?"lock":"unlock",content:p?"Armed":"Not Armed",selected:p,onClick:function(){return c("scanning")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Detection Range",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"backward",disabled:p,onClick:function(){return c("sense",{range:-1})}})," ",String(m).padStart(1,"1")," ",(0,o.createComponentVNode)(2,i.Button,{icon:"forward",disabled:p,onClick:function(){return c("sense",{range:1})}})]})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Auto Arm",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"clock-o",content:s?"Stop":"Start",selected:s,disabled:p,onClick:function(){return c("time")}}),children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",disabled:p||s,onClick:function(){return c("input",{adjust:-30})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"backward",disabled:p||s,onClick:function(){return c("input",{adjust:-1})}})," ",String(d).padStart(2,"0"),":",String(u).padStart(2,"0")," ",(0,o.createComponentVNode)(2,i.Button,{icon:"forward",disabled:p||s,onClick:function(){return c("input",{adjust:1})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",disabled:p||s,onClick:function(){return c("input",{adjust:30})}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Radio=void 0;var o=n(0),r=n(18),i=n(15),a=n(1),c=n(3),l=n(38),d=n(2);t.Radio=function(e,t){var n=(0,a.useBackend)(t),u=n.act,s=n.data,p=s.freqlock,m=s.frequency,f=s.minFrequency,h=s.maxFrequency,C=s.listening,g=s.broadcasting,b=s.command,N=s.useCommand,v=s.subspace,V=s.subspaceSwitchable,y=l.RADIO_CHANNELS.find((function(e){return e.freq===m})),k=(0,r.map)((function(e,t){return{name:t,status:!!e}}))(s.channels),x=106;return v&&(k.length>0?x+=21*k.length+6:x+=24),(0,o.createComponentVNode)(2,d.Window,{width:360,height:x,children:(0,o.createComponentVNode)(2,d.Window.Content,{children:(0,o.createComponentVNode)(2,c.Section,{children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Frequency",children:[p&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"light-gray",children:(0,i.toFixed)(m/10,1)+" kHz"})||(0,o.createComponentVNode)(2,c.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:10,minValue:f/10,maxValue:h/10,value:m/10,format:function(e){return(0,i.toFixed)(e,1)},onDrag:function(e,t){return u("frequency",{adjust:t-m/10})}}),y&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:y.color,ml:2,children:["[",y.name,"]"]})]}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Audio",children:[(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:C?"volume-up":"volume-mute",selected:C,onClick:function(){return u("listen")}}),(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:g?"microphone":"microphone-slash",selected:g,onClick:function(){return u("broadcast")}}),!!b&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:N,content:"High volume "+(N?"ON":"OFF"),onClick:function(){return u("command")}}),!!V&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:v,content:"Subspace Tx "+(v?"ON":"OFF"),onClick:function(){return u("subspace")}})]}),!!v&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Channels",children:[0===k.length&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"bad",children:"No encryption keys installed."}),k.map((function(e){return(0,o.createComponentVNode)(2,c.Box,{children:(0,o.createComponentVNode)(2,c.Button,{icon:e.status?"check-square-o":"square-o",selected:e.status,content:e.name,onClick:function(){return u("channel",{channel:e.name})}})},e.name)}))]})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.RadioactiveMicrolaser=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.RadioactiveMicrolaser=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.irradiate,u=l.stealth,s=l.scanmode,p=l.intensity,m=l.wavelength,f=l.on_cooldown,h=l.cooldown;return(0,o.createComponentVNode)(2,a.Window,{title:"Radioactive Microlaser",width:320,height:335,theme:"syndicate",children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Laser Status",children:(0,o.createComponentVNode)(2,i.Box,{color:f?"average":"good",children:f?"Recharging":"Ready"})})})}),(0,o.createComponentVNode)(2,i.Section,{title:"Scanner Controls",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Irradiation",children:(0,o.createComponentVNode)(2,i.Button,{icon:d?"power-off":"times",content:d?"On":"Off",selected:d,onClick:function(){return c("irradiate")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth Mode",children:(0,o.createComponentVNode)(2,i.Button,{icon:u?"eye-slash":"eye",content:u?"On":"Off",disabled:!d,selected:u,onClick:function(){return c("stealth")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Scan Mode",children:(0,o.createComponentVNode)(2,i.Button,{icon:s?"mortar-pestle":"heartbeat",content:s?"Scan Reagents":"Scan Health",disabled:d&&u,onClick:function(){return c("scanmode")}})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Laser Settings",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Radiation Intensity",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",onClick:function(){return c("radintensity",{adjust:-5})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"backward",onClick:function(){return c("radintensity",{adjust:-1})}})," ",(0,o.createComponentVNode)(2,i.NumberInput,{value:Math.round(p),width:"40px",minValue:1,maxValue:20,onChange:function(e,t){return c("radintensity",{target:t})}})," ",(0,o.createComponentVNode)(2,i.Button,{icon:"forward",onClick:function(){return c("radintensity",{adjust:1})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",onClick:function(){return c("radintensity",{adjust:5})}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Radiation Wavelength",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",onClick:function(){return c("radwavelength",{adjust:-5})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"backward",onClick:function(){return c("radwavelength",{adjust:-1})}})," ",(0,o.createComponentVNode)(2,i.NumberInput,{value:Math.round(m),width:"40px",minValue:0,maxValue:120,onChange:function(e,t){return c("radwavelength",{target:t})}})," ",(0,o.createComponentVNode)(2,i.Button,{icon:"forward",onClick:function(){return c("radwavelength",{adjust:1})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",onClick:function(){return c("radwavelength",{adjust:5})}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Laser Cooldown",children:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:h})})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.RapidPipeDispenser=void 0;var o=n(0),r=n(6),i=n(1),a=n(3),c=n(2),l=["Atmospherics","Disposals","Transit Tubes"],d={Atmospherics:"wrench",Disposals:"trash-alt","Transit Tubes":"bus",Pipes:"grip-lines","Disposal Pipes":"grip-lines",Devices:"microchip","Heat Exchange":"thermometer-half","Station Equipment":"microchip"},u={grey:"#bbbbbb",amethyst:"#a365ff",blue:"#4466ff",brown:"#b26438",cyan:"#48eae8",dark:"#808080",green:"#1edd00",orange:"#ffa030",purple:"#b535ea",red:"#ff3333",violet:"#6e00f6",yellow:"#ffce26"},s=[{name:"Dispense",bitmask:1},{name:"Connect",bitmask:2},{name:"Destroy",bitmask:4},{name:"Paint",bitmask:8}];t.RapidPipeDispenser=function(e,t){var n=(0,i.useBackend)(t),p=n.act,m=n.data,f=m.category,h=m.categories,C=void 0===h?[]:h,g=m.selected_color,b=m.piping_layer,N=m.mode,v=m.preview_rows.flatMap((function(e){return e.previews})),V=(0,i.useLocalState)(t,"categoryName"),y=V[0],k=V[1],x=C.find((function(e){return e.cat_name===y}))||C[0];return(0,o.createComponentVNode)(2,c.Window,{width:425,height:515,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Category",children:l.map((function(e,t){return(0,o.createComponentVNode)(2,a.Button,{selected:f===t,icon:d[e],color:"transparent",content:e,onClick:function(){return p("category",{category:t})}},e)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Modes",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:N&e.bitmask,content:e.name,onClick:function(){return p("mode",{mode:e.bitmask})}},e.bitmask)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Color",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,width:"64px",color:u[g],children:g}),Object.keys(u).map((function(e){return(0,o.createComponentVNode)(2,a.ColorBox,{ml:1,color:u[e],onClick:function(){return p("color",{paint_color:e})}},e)}))]})]})}),(0,o.createComponentVNode)(2,a.Flex,{m:-.5,children:[(0,o.createComponentVNode)(2,a.Flex.Item,{m:.5,children:(0,o.createComponentVNode)(2,a.Section,{children:[0===f&&(0,o.createComponentVNode)(2,a.Box,{mb:1,children:[1,2,3].map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,checked:e===b,content:"Layer "+e,onClick:function(){return p("piping_layer",{piping_layer:e})}},e)}))}),(0,o.createComponentVNode)(2,a.Box,{width:"108px",children:v.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{title:e.dir_name,selected:e.selected,style:{width:"48px",height:"48px",padding:0},onClick:function(){return p("setdir",{dir:e.dir,flipped:e.flipped})},children:(0,o.createComponentVNode)(2,a.Box,{className:(0,r.classes)(["pipes32x32",e.dir+"-"+e.icon_state]),style:{transform:"scale(1.5) translate(17%, 17%)"}})},e.dir)}))})]})}),(0,o.createComponentVNode)(2,a.Flex.Item,{m:.5,grow:1,children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Tabs,{children:C.map((function(e,t){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{fluid:!0,icon:d[e.cat_name],selected:e.cat_name===x.cat_name,onClick:function(){return k(e.cat_name)},children:e.cat_name},e.cat_name)}))}),null==x?void 0:x.recipes.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{fluid:!0,ellipsis:!0,checked:e.selected,content:e.pipe_name,title:e.pipe_name,onClick:function(){return p("pipe_type",{pipe_type:e.pipe_index,category:x.cat_name})}},e.pipe_index)}))]})})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.RemoteRobotControlContent=t.RemoteRobotControl=void 0;var o=n(0),r=n(19),i=n(1),a=n(3),c=n(2);t.RemoteRobotControl=function(e,t){return(0,o.createComponentVNode)(2,c.Window,{title:"Remote Robot Control",width:500,height:500,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,l)})})};var l=function(e,t){var n=(0,i.useBackend)(t),c=n.act,l=n.data.robots,d=void 0===l?[]:l;return d.length?d.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name+" ("+e.model+")",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Interface",onClick:function(){return c("interface",{ref:e.ref})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"phone-alt",content:"Call",onClick:function(){return c("callbot",{ref:e.ref})}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"Inactive"===(0,r.decodeHtmlEntities)(e.mode)?"bad":"Idle"===(0,r.decodeHtmlEntities)(e.mode)?"average":"good",children:(0,r.decodeHtmlEntities)(e.mode)})," ",e.hacked&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"bad",children:"(HACKED)"})||""]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Location",children:e.location})]})},e.ref)})):(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"No robots detected"})})};t.RemoteRobotControlContent=l},function(e,t,n){"use strict";t.__esModule=!0,t.RoboticsControlConsole=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.RoboticsControlConsole=function(e,t){var n=(0,r.useBackend)(t),d=(n.act,n.data),u=(0,r.useSharedState)(t,"tab",1),s=u[0],p=u[1],m=d.can_hack,f=d.cyborgs,h=void 0===f?[]:f,C=d.drones,g=void 0===C?[]:C;return(0,o.createComponentVNode)(2,a.Window,{width:500,height:460,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{icon:"list",lineHeight:"23px",selected:1===s,onClick:function(){return p(1)},children:["Cyborgs (",h.length,")"]}),(0,o.createComponentVNode)(2,i.Tabs.Tab,{icon:"list",lineHeight:"23px",selected:2===s,onClick:function(){return p(2)},children:["Drones (",g.length,")"]})]}),1===s&&(0,o.createComponentVNode)(2,c,{cyborgs:h,can_hack:m}),2===s&&(0,o.createComponentVNode)(2,l,{drones:g})]})})};var c=function(e,t){var n=e.cyborgs,a=e.can_hack,c=(0,r.useBackend)(t),l=c.act;c.data;return n.length?n.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,buttons:(0,o.createFragment)([!!a&&!e.emagged&&(0,o.createComponentVNode)(2,i.Button,{icon:"terminal",content:"Hack",color:"bad",onClick:function(){return l("magbot",{ref:e.ref})}}),(0,o.createComponentVNode)(2,i.Button.Confirm,{icon:e.locked_down?"unlock":"lock",color:e.locked_down?"good":"default",content:e.locked_down?"Release":"Lockdown",onClick:function(){return l("stopbot",{ref:e.ref})}}),(0,o.createComponentVNode)(2,i.Button.Confirm,{icon:"bomb",content:"Detonate",color:"bad",onClick:function(){return l("killbot",{ref:e.ref})}})],0),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:(0,o.createComponentVNode)(2,i.Box,{color:e.status?"bad":e.locked_down?"average":"good",children:e.status?"Not Responding":e.locked_down?"Locked Down":"Nominal"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Charge",children:(0,o.createComponentVNode)(2,i.Box,{color:e.charge<=30?"bad":e.charge<=70?"average":"good",children:"number"==typeof e.charge?e.charge+"%":"Not Found"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Module",children:e.module}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Master AI",children:(0,o.createComponentVNode)(2,i.Box,{color:e.synchronization?"default":"average",children:e.synchronization||"None"})})]})},e.ref)})):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No cyborg units detected within access parameters"})},l=function(e,t){var n=e.drones,a=(0,r.useBackend)(t).act;return n.length?n.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,buttons:(0,o.createComponentVNode)(2,i.Button.Confirm,{icon:"bomb",content:"Detonate",color:"bad",onClick:function(){return a("killdrone",{ref:e.ref})}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:(0,o.createComponentVNode)(2,i.Box,{color:e.status?"bad":"good",children:e.status?"Not Responding":"Nominal"})})})},e.ref)})):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No drone units detected within access parameters"})}},function(e,t,n){"use strict";t.__esModule=!0,t.Roulette=t.RouletteBetTable=t.RouletteBoard=t.RouletteNumberButton=void 0;var o=n(0),r=n(6),i=n(1),a=n(3),c=n(2),l=function(e){if(0===e)return"green";for(var t=[[1,10],[19,28]],n=!0,o=0;o<t.length;o++){var r=t[o];if(e>=r[0]&&e<=r[1]){n=!1;break}}var i=e%2==0;return(n?i:!i)?"red":"black"},d=function(e,t){var n=e.number,r=(0,i.useBackend)(t).act;return(0,o.createComponentVNode)(2,a.Button,{bold:!0,content:n,color:l(n),width:"40px",height:"28px",fontSize:"20px",textAlign:"center",mb:0,className:"Roulette__board-extrabutton",onClick:function(){return r("ChangeBetType",{type:n})}})};t.RouletteNumberButton=d;var u=function(e,t){var n=(0,i.useBackend)(t).act;return(0,o.createVNode)(1,"table","Table",[(0,o.createVNode)(1,"tr","Roulette__board-row",[(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{content:"0",color:"transparent",height:"88px",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:0})}}),2,{rowSpan:"3"}),[3,6,9,12,15,18,21,24,27,30,33,36].map((function(e){return(0,o.createVNode)(1,"td","Roulette__board-cell Table__cell-collapsing",(0,o.createComponentVNode)(2,d,{number:e}),2,null,e)})),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"2 to 1",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s3rd col"})}}),2)],0),(0,o.createVNode)(1,"tr",null,[[2,5,8,11,14,17,20,23,26,29,32,35].map((function(e){return(0,o.createVNode)(1,"td","Roulette__board-cell Table__cell-collapsing",(0,o.createComponentVNode)(2,d,{number:e}),2,null,e)})),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"2 to 1",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s2nd col"})}}),2)],0),(0,o.createVNode)(1,"tr",null,[[1,4,7,10,13,16,19,22,25,28,31,34].map((function(e){return(0,o.createVNode)(1,"td","Roulette__board-cell Table__cell-collapsing",(0,o.createComponentVNode)(2,d,{number:e}),2,null,e)})),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"2 to 1",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s1st col"})}}),2)],0),(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td"),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"1st 12",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s1-12"})}}),2,{colSpan:"4"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"2nd 12",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s13-24"})}}),2,{colSpan:"4"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"3rd 12",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s25-36"})}}),2,{colSpan:"4"})],4),(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td"),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"1-18",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s1-18"})}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"Even",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"even"})}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"Black",color:"black",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"black"})}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"Red",color:"red",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"red"})}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"Odd",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"odd"})}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td","Roulette__board-cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"19-36",color:"transparent",className:"Roulette__board-extrabutton",onClick:function(){return n("ChangeBetType",{type:"s19-36"})}}),2,{colSpan:"2"})],4)],4,{style:{width:"1px"}})};t.RouletteBoard=u;var s=function(e,t){var n=(0,i.useBackend)(t),c=n.act,d=n.data,u=(0,i.useLocalState)(t,"customBet",500),s=u[0],p=u[1],m=d.BetType;return m.startsWith("s")&&(m=m.substring(1,m.length)),(0,o.createVNode)(1,"table","Roulette__lowertable",[(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"th",(0,r.classes)(["Roulette","Roulette__lowertable--cell","Roulette__lowertable--header"]),"Last Spun:",16),(0,o.createVNode)(1,"th",(0,r.classes)(["Roulette","Roulette__lowertable--cell","Roulette__lowertable--header"]),"Current Bet:",16)],4),(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td",(0,r.classes)(["Roulette","Roulette__lowertable--cell","Roulette__lowertable--spinresult","Roulette__lowertable--spinresult-"+l(d.LastSpin)]),d.LastSpin,0),(0,o.createVNode)(1,"td",(0,r.classes)(["Roulette","Roulette__lowertable--cell","Roulette__lowertable--betscell"]),[(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:1,mb:1,fontSize:"25px",textAlign:"center",children:[d.BetAmount," cr on ",m]}),(0,o.createComponentVNode)(2,a.Box,{ml:1,mr:1,children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Bet 10 cr",onClick:function(){return c("ChangeBetAmount",{amount:10})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Bet 50 cr",onClick:function(){return c("ChangeBetAmount",{amount:50})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Bet 100 cr",onClick:function(){return c("ChangeBetAmount",{amount:100})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Bet 500 cr",onClick:function(){return c("ChangeBetAmount",{amount:500})}}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Bet custom amount...",onClick:function(){return c("ChangeBetAmount",{amount:s})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:.1,children:(0,o.createComponentVNode)(2,a.NumberInput,{value:s,minValue:0,maxValue:1e3,step:10,stepPixelSize:4,width:"40px",onChange:function(e,t){return p(t)}})})]})]})],4)],4),(0,o.createVNode)(1,"tr",null,(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,a.Box,{bold:!0,m:1,fontSize:"14px",textAlign:"center",children:"Swipe an ID card with a connected account to spin!"}),2,{colSpan:"2"}),2),(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td","Roulette__lowertable--cell",[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"House Balance:"}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:d.HouseBalance?d.HouseBalance+" cr":"None"})],4),(0,o.createVNode)(1,"td","Roulette__lowertable--cell",(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:d.IsAnchored?"Bolted":"Unbolted",m:1,color:"transparent",textAlign:"center",onClick:function(){return c("anchor")}}),2)],4)],4)};t.RouletteBetTable=s;t.Roulette=function(e,t){return(0,o.createComponentVNode)(2,c.Window,{width:603,height:475,theme:"cardtable",children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[(0,o.createComponentVNode)(2,u),(0,o.createComponentVNode)(2,s)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SatelliteControl=void 0;var o=n(0),r=n(1),i=n(3),a=n(174),c=n(2);t.SatelliteControl=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.satellites||[];return(0,o.createComponentVNode)(2,c.Window,{width:400,height:305,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[d.meteor_shield&&(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledListItem,{label:"Coverage",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:d.meteor_shield_coverage/d.meteor_shield_coverage_max,content:100*d.meteor_shield_coverage/d.meteor_shield_coverage_max+"%",ranges:{good:[1,Infinity],average:[.3,1],bad:[-Infinity,.3]}})})})}),(0,o.createComponentVNode)(2,i.Section,{title:"Satellite Controls",children:(0,o.createComponentVNode)(2,i.Box,{mr:-1,children:u.map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:e.active,content:"#"+e.id+" "+e.mode,onClick:function(){return l("toggle",{id:e.id})}},e.id)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ScannerGate=void 0;var o=n(0),r=n(1),i=n(3),a=n(60),c=n(2),l=["Positive","Harmless","Minor","Medium","Harmful","Dangerous","BIOHAZARD"],d=[{name:"Human",value:"human"},{name:"Lizardperson",value:"lizard"},{name:"Flyperson",value:"fly"},{name:"Felinid",value:"felinid"},{name:"Plasmaman",value:"plasma"},{name:"Mothperson",value:"moth"},{name:"Jellyperson",value:"jelly"},{name:"Podperson",value:"pod"},{name:"Golem",value:"golem"},{name:"Zombie",value:"zombie"}],u=[{name:"Starving",value:150},{name:"Obese",value:600}];t.ScannerGate=function(e,t){var n=(0,r.useBackend)(t),i=n.act,l=n.data;return(0,o.createComponentVNode)(2,c.Window,{width:400,height:300,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.InterfaceLockNoticeBox,{onLockedStatusChange:function(){return i("toggle_lock")}}),!l.locked&&(0,o.createComponentVNode)(2,p)]})})};var s={Off:{title:"Scanner Mode: Off",component:function(){return m}},Wanted:{title:"Scanner Mode: Wanted",component:function(){return f}},Guns:{title:"Scanner Mode: Guns",component:function(){return h}},Mindshield:{title:"Scanner Mode: Mindshield",component:function(){return C}},Disease:{title:"Scanner Mode: Disease",component:function(){return g}},Species:{title:"Scanner Mode: Species",component:function(){return b}},Nutrition:{title:"Scanner Mode: Nutrition",component:function(){return N}},Nanites:{title:"Scanner Mode: Nanites",component:function(){return v}}},p=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data.scan_mode,l=s[c]||s.off,d=l.component();return(0,o.createComponentVNode)(2,i.Section,{title:l.title,buttons:"Off"!==c&&(0,o.createComponentVNode)(2,i.Button,{icon:"arrow-left",content:"back",onClick:function(){return a("set_mode",{new_mode:"Off"})}}),children:(0,o.createComponentVNode)(2,d)})},m=function(e,t){var n=(0,r.useBackend)(t).act;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:2,children:"Select a scanning mode below."}),(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Button,{content:"Wanted",onClick:function(){return n("set_mode",{new_mode:"Wanted"})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Guns",onClick:function(){return n("set_mode",{new_mode:"Guns"})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Mindshield",onClick:function(){return n("set_mode",{new_mode:"Mindshield"})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Disease",onClick:function(){return n("set_mode",{new_mode:"Disease"})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Species",onClick:function(){return n("set_mode",{new_mode:"Species"})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Nutrition",onClick:function(){return n("set_mode",{new_mode:"Nutrition"})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Nanites",onClick:function(){return n("set_mode",{new_mode:"Nanites"})}})]})],4)},f=function(e,t){var n=(0,r.useBackend)(t).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any warrants for their arrest."]}),(0,o.createComponentVNode)(2,V)],4)},h=function(e,t){var n=(0,r.useBackend)(t).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any guns."]}),(0,o.createComponentVNode)(2,V)],4)},C=function(e,t){var n=(0,r.useBackend)(t).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","a mindshield."]}),(0,o.createComponentVNode)(2,V)],4)},g=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,d=c.reverse,u=c.disease_threshold;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:2,children:["Trigger if the person scanned ",d?"does not have":"has"," ","a disease equal or worse than ",u,"."]}),(0,o.createComponentVNode)(2,i.Box,{mb:2,children:l.map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:e===u,content:e,onClick:function(){return a("set_disease_threshold",{new_threshold:e})}},e)}))}),(0,o.createComponentVNode)(2,V)],4)},b=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.reverse,u=c.target_species,s=d.find((function(e){return e.value===u}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:2,children:["Trigger if the person scanned is ",l?"not":""," ","of the ",s.name," species.","zombie"===u&&" All zombie types will be detected, including dormant zombies."]}),(0,o.createComponentVNode)(2,i.Box,{mb:2,children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:e.value===u,content:e.name,onClick:function(){return a("set_target_species",{new_species:e.value})}},e.value)}))}),(0,o.createComponentVNode)(2,V)],4)},N=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.reverse,d=c.target_nutrition,s=u.find((function(e){return e.value===d}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","the ",s.name," nutrition level."]}),(0,o.createComponentVNode)(2,i.Box,{mb:2,children:u.map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:e.value===d,content:e.name,onClick:function(){return a("set_target_nutrition",{new_nutrition:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,V)],4)},v=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.reverse,d=c.nanite_cloud;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","nanite cloud ",d,"."]}),(0,o.createComponentVNode)(2,i.Box,{mb:2,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:d,width:"65px",minValue:1,maxValue:100,stepPixelSize:2,onChange:function(e,t){return a("set_nanite_cloud",{new_cloud:t})}})})})}),(0,o.createComponentVNode)(2,V)],4)},V=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data.reverse;return(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Scanning Mode",children:(0,o.createComponentVNode)(2,i.Button,{content:c?"Inverted":"Default",icon:c?"random":"long-arrow-alt-right",onClick:function(){return a("toggle_reverse")},color:c?"bad":"good"})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SeedExtractor=void 0;var o=n(0),r=n(18),i=n(33),a=n(19),c=n(1),l=n(3),d=n(2);t.SeedExtractor=function(e,t){var n,u,s=(0,c.useBackend)(t),p=s.act,m=s.data,f=(n=m.seeds,u=Object.keys(n).map((function(e){var t=function(e){var t,n=/([^;=]+)=([^;]+)/g,o={};do{(t=n.exec(e))&&(o[t[1]]=t[2]+"")}while(t);return o}(e);return t.amount=n[e],t.key=e,t.name=(0,a.toTitleCase)(t.name.replace("pack of ","")),t})),(0,i.flow)([(0,r.sortBy)((function(e){return e.name}))])(u));return(0,o.createComponentVNode)(2,d.Window,{width:1e3,height:400,resizable:!0,children:(0,o.createComponentVNode)(2,d.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,l.Section,{title:"Stored seeds:",children:(0,o.createComponentVNode)(2,l.Table,{cellpadding:"3",textAlign:"center",children:[(0,o.createComponentVNode)(2,l.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Name"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Lifespan"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Endurance"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Maturation"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Production"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Yield"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Potency"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Instability"}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Stock"})]}),f.map((function(e){return(0,o.createComponentVNode)(2,l.Table.Row,{children:[(0,o.createComponentVNode)(2,l.Table.Cell,{bold:!0,children:e.name}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.lifespan}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.endurance}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.maturation}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.production}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.yield}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.potency}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.instability}),(0,o.createComponentVNode)(2,l.Table.Cell,{children:[(0,o.createComponentVNode)(2,l.Button,{content:"Vend",onClick:function(){return p("select",{item:e.key})}}),"(",e.amount," left)"]})]},e.key)}))]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ShuttleManipulatorModification=t.ShuttleManipulatorTemplates=t.ShuttleManipulatorStatus=t.ShuttleManipulator=void 0;var o=n(0),r=n(18),i=n(1),a=n(3),c=n(2);t.ShuttleManipulator=function(e,t){var n=(0,i.useLocalState)(t,"tab",1),r=n[0],s=n[1];return(0,o.createComponentVNode)(2,c.Window,{title:"Shuttle Manipulator",width:800,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:1===r,onClick:function(){return s(1)},children:"Status"}),(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:2===r,onClick:function(){return s(2)},children:"Templates"}),(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:3===r,onClick:function(){return s(3)},children:"Modification"})]}),1===r&&(0,o.createComponentVNode)(2,l),2===r&&(0,o.createComponentVNode)(2,d),3===r&&(0,o.createComponentVNode)(2,u)]})})};var l=function(e,t){var n=(0,i.useBackend)(t),r=n.act,c=n.data.shuttles||[];return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Table,{children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"JMP",onClick:function(){return r("jump_to",{type:"mobile",id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Fly",disabled:!e.can_fly,onClick:function(){return r("fly",{id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.id}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.status}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:[e.mode,!!e.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),e.timeleft,(0,o.createTextVNode)(")"),(0,o.createComponentVNode)(2,a.Button,{content:"Fast Travel",disabled:!e.can_fast_travel,onClick:function(){return r("fast_travel",{id:e.id})}},e.id)],0)]})]},e.id)}))})})};t.ShuttleManipulatorStatus=l;var d=function(e,t){var n,c=(0,i.useBackend)(t),l=c.act,d=c.data,u=d.templates||{},s=d.selected||{},p=(0,i.useLocalState)(t,"templateId",Object.keys(u)[0]),m=p[0],f=p[1],h=null==(n=u[m])?void 0:n.templates;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Flex,{children:[(0,o.createComponentVNode)(2,a.Flex.Item,{children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{selected:m===t,onClick:function(){return f(t)},children:e.port_id},t)}))(u)})}),(0,o.createComponentVNode)(2,a.Flex.Item,{grow:1,basis:0,children:h.map((function(e){var t=e.shuttle_id===s.shuttle_id;return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{content:t?"Selected":"Select",selected:t,onClick:function(){return l("select_template",{shuttle_id:e.shuttle_id})}}),children:(!!e.description||!!e.admin_notes)&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[!!e.description&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Description",children:e.description}),!!e.admin_notes&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Admin Notes",children:e.admin_notes})]})},e.shuttle_id)}))})]})})};t.ShuttleManipulatorTemplates=d;var u=function(e,t){var n=(0,i.useBackend)(t),r=n.act,c=n.data,l=c.selected||{},d=c.existing_shuttle||{};return(0,o.createComponentVNode)(2,a.Section,{children:l?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{level:2,title:l.name,children:(!!l.description||!!l.admin_notes)&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[!!l.description&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Description",children:l.description}),!!l.admin_notes&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Admin Notes",children:l.admin_notes})]})}),d?(0,o.createComponentVNode)(2,a.Section,{level:2,title:"Existing Shuttle: "+d.name,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Jump To",onClick:function(){return r("jump_to",{type:"mobile",id:d.id})}}),children:[d.status,!!d.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),d.timeleft,(0,o.createTextVNode)(")")],0)]})})}):(0,o.createComponentVNode)(2,a.Section,{level:2,title:"Existing Shuttle: None"}),(0,o.createComponentVNode)(2,a.Section,{level:2,title:"Status",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Preview",onClick:function(){return r("preview",{shuttle_id:l.shuttle_id})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Load",color:"bad",onClick:function(){return r("load",{shuttle_id:l.shuttle_id})}})]})],0):"No shuttle selected"})};t.ShuttleManipulatorModification=u},function(e,t,n){"use strict";t.__esModule=!0,t.Signaler=void 0;var o=n(0),r=n(15),i=n(1),a=n(3),c=n(2);t.Signaler=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data,u=d.code,s=d.frequency,p=d.minFrequency,m=d.maxFrequency;return(0,o.createComponentVNode)(2,c.Window,{width:280,height:132,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.4,color:"label",children:"Frequency:"}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:6,minValue:p/10,maxValue:m/10,value:s/10,format:function(e){return(0,r.toFixed)(e,1)},width:"80px",onDrag:function(e,t){return l("freq",{freq:t})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return l("reset",{reset:"freq"})}})})]}),(0,o.createComponentVNode)(2,a.Grid,{mt:.6,children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.4,color:"label",children:"Code:"}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.NumberInput,{animate:!0,step:1,stepPixelSize:6,minValue:1,maxValue:100,value:u,width:"80px",onDrag:function(e,t){return l("code",{code:t})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return l("reset",{reset:"code"})}})})]}),(0,o.createComponentVNode)(2,a.Grid,{mt:.8,children:(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{mb:-.1,fluid:!0,icon:"arrow-up",content:"Send Signal",textAlign:"center",onClick:function(){return l("signal")}})})})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SkillPanel=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c={color:"lightgreen",fontWeight:"bold"},l={color:"#FFDB58",fontWeight:"bold"};t.SkillPanel=function(e,t){var n=(0,r.useBackend)(t),u=n.act,s=n.data.skills||[];return(0,o.createComponentVNode)(2,a.Window,{title:"Manage Skills",width:600,height:500,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{title:s.playername,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:s.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,children:[(0,o.createVNode)(1,"span",null,e.desc,0,{style:l}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,d,{skill_lvl_num:e.lvlnum,skill_lvl:e.lvl}),(0,o.createVNode)(1,"br"),"Total Experience: [",e.exp," XP]",(0,o.createVNode)(1,"br"),"XP To Next Level:\xa0",0!==e.exp_req?(0,o.createVNode)(1,"span",null,[(0,o.createTextVNode)("["),e.exp_prog,(0,o.createTextVNode)(" / "),e.exp_req,(0,o.createTextVNode)("]")],0):(0,o.createVNode)(1,"span",null,"[MAXXED]",16,{style:c}),(0,o.createVNode)(1,"br"),"Overall Skill Progress: [",e.exp," / ",e.max_exp,"]",(0,o.createComponentVNode)(2,i.ProgressBar,{value:e.exp_percent,color:"good"}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,i.Button,{content:"Adjust Exp",onClick:function(){return u("adj_exp",{skill:e.path})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Set Exp",onClick:function(){return u("set_exp",{skill:e.path})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Set Level",onClick:function(){return u("set_lvl",{skill:e.path})}}),(0,o.createVNode)(1,"br"),(0,o.createVNode)(1,"br")]},e.name)}))})})})})};var d=function(e){var t=e.skill_lvl_num,n=e.skill_lvl;return(0,o.createComponentVNode)(2,i.Box,{inline:!0,children:["Level: [",(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,textColor:"hsl("+50*t+", 50%, 50%)",children:n}),"]"]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Sleeper=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=[{label:"Brute",type:"bruteLoss"},{label:"Burn",type:"fireLoss"},{label:"Toxin",type:"toxLoss"},{label:"Oxygen",type:"oxyLoss"}];t.Sleeper=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.open,s=d.occupant,p=void 0===s?{}:s,m=d.occupied,f=(d.chems||[]).sort((function(e,t){var n=e.name.toLowerCase(),o=t.name.toLowerCase();return n<o?-1:n>o?1:0}));return(0,o.createComponentVNode)(2,a.Window,{width:310,height:465,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:p.name?p.name:"No Occupant",minHeight:"210px",buttons:!!p.stat&&(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,color:p.statstate,children:p.stat}),children:!!m&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.ProgressBar,{value:p.health,minValue:p.minHealth,maxValue:p.maxHealth,ranges:{good:[50,Infinity],average:[0,50],bad:[-Infinity,0]}}),(0,o.createComponentVNode)(2,i.Box,{mt:1}),(0,o.createComponentVNode)(2,i.LabeledList,{children:[c.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:p[e.type],minValue:0,maxValue:p.maxHealth,color:"bad"})},e.type)})),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Cells",color:p.cloneLoss?"bad":"good",children:p.cloneLoss?"Damaged":"Healthy"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Brain",color:p.brainLoss?"bad":"good",children:p.brainLoss?"Abnormal":"Healthy"})]})],4)}),(0,o.createComponentVNode)(2,i.Section,{title:"Medicines",minHeight:"205px",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:u?"door-open":"door-closed",content:u?"Open":"Closed",onClick:function(){return l("door")}}),children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"flask",content:e.name,disabled:!m||!e.allowed,width:"140px",onClick:function(){return l("inject",{chem:e.id})}},e.name)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SlimeBodySwapper=t.BodyEntry=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c={Dead:"bad",Unconscious:"average",Conscious:"good"},l={owner:"You Are Here",stranger:"Occupied",available:"Swap"},d=function(e,t){var n=e.body,r=e.swapFunc;return(0,o.createComponentVNode)(2,i.Section,{title:(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:n.htmlcolor,children:n.name}),level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{content:l[n.occupied],selected:"owner"===n.occupied,color:"stranger"===n.occupied&&"bad",onClick:function(){return r()}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",bold:!0,color:c[n.status],children:n.status}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Jelly",children:n.exoticblood}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Location",children:n.area})]})})};t.BodyEntry=d;t.SlimeBodySwapper=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data.bodies,u=void 0===l?[]:l;return(0,o.createComponentVNode)(2,a.Window,{width:400,height:400,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{children:u.map((function(e){return(0,o.createComponentVNode)(2,d,{body:e,swapFunc:function(){return c("swap",{ref:e.ref})}},e.name)}))})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SmartVend=void 0;var o=n(0),r=n(18),i=n(1),a=n(3),c=n(2);t.SmartVend=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data;return(0,o.createComponentVNode)(2,c.Window,{width:440,height:550,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,a.Section,{title:"Storage",buttons:!!d.isdryer&&(0,o.createComponentVNode)(2,a.Button,{icon:d.drying?"stop":"tint",onClick:function(){return l("Dry")},children:d.drying?"Stop drying":"Dry"}),children:0===d.contents.length&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:["Unfortunately, this ",d.name," is empty."]})||(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:"Item"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:d.verb?d.verb:"Dispense"})]}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"right",children:e.amount}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,a.Button,{content:"One",disabled:e.amount<1,onClick:function(){return l("Release",{name:e.name,amount:1})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Many",disabled:e.amount<=1,onClick:function(){return l("Release",{name:e.name})}})]})]},t)}))(d.contents)]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Smes=void 0;var o=n(0),r=n(1),i=n(3),a=n(44),c=n(2);t.Smes=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.capacityPercent,s=(d.capacity,d.charge),p=d.inputAttempt,m=d.inputting,f=d.inputLevel,h=d.inputLevelMax,C=d.inputAvailable,g=d.outputAttempt,b=d.outputting,N=d.outputLevel,v=d.outputLevelMax,V=d.outputUsed,y=(u>=100?"good":m&&"average")||"bad",k=(b?"good":s>0&&"average")||"bad";return(0,o.createComponentVNode)(2,c.Window,{width:340,height:350,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Stored Energy",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:.01*u,ranges:{good:[.5,Infinity],average:[.15,.5],bad:[-Infinity,.15]}})}),(0,o.createComponentVNode)(2,i.Section,{title:"Input",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Charge Mode",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:p?"sync-alt":"times",selected:p,onClick:function(){return l("tryinput")},children:p?"Auto":"Off"}),children:(0,o.createComponentVNode)(2,i.Box,{color:y,children:(u>=100?"Fully Charged":m&&"Charging")||"Not Charging"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target Input",children:(0,o.createComponentVNode)(2,i.Flex,{inline:!0,width:"100%",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",disabled:0===f,onClick:function(){return l("input",{target:"min"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"backward",disabled:0===f,onClick:function(){return l("input",{adjust:-1e4})}})]}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,mx:1,children:(0,o.createComponentVNode)(2,i.Slider,{value:f/1e3,fillValue:C/1e3,minValue:0,maxValue:h/1e3,step:5,stepPixelSize:4,format:function(e){return(0,a.formatPower)(1e3*e,1)},onDrag:function(e,t){return l("input",{target:1e3*t})}})}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:[(0,o.createComponentVNode)(2,i.Button,{icon:"forward",disabled:f===h,onClick:function(){return l("input",{adjust:1e4})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",disabled:f===h,onClick:function(){return l("input",{target:"max"})}})]})]})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Available",children:(0,a.formatPower)(C)})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Output",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Output Mode",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:g?"power-off":"times",selected:g,onClick:function(){return l("tryoutput")},children:g?"On":"Off"}),children:(0,o.createComponentVNode)(2,i.Box,{color:k,children:b?"Sending":s>0?"Not Sending":"No Charge"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target Output",children:(0,o.createComponentVNode)(2,i.Flex,{inline:!0,width:"100%",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",disabled:0===N,onClick:function(){return l("output",{target:"min"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"backward",disabled:0===N,onClick:function(){return l("output",{adjust:-1e4})}})]}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,mx:1,children:(0,o.createComponentVNode)(2,i.Slider,{value:N/1e3,minValue:0,maxValue:v/1e3,step:5,stepPixelSize:4,format:function(e){return(0,a.formatPower)(1e3*e,1)},onDrag:function(e,t){return l("output",{target:1e3*t})}})}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:[(0,o.createComponentVNode)(2,i.Button,{icon:"forward",disabled:N===v,onClick:function(){return l("output",{adjust:1e4})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",disabled:N===v,onClick:function(){return l("output",{target:"max"})}})]})]})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Outputting",children:(0,a.formatPower)(V)})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SmokeMachine=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.SmokeMachine=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.TankContents,u=(l.isTankLoaded,l.TankCurrentVolume),s=l.TankMaxVolume,p=l.active,m=l.setting,f=(l.screen,l.maxSetting),h=void 0===f?[]:f;return(0,o.createComponentVNode)(2,a.Window,{width:350,height:350,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Dispersal Tank",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:p?"power-off":"times",selected:p,content:p?"On":"Off",onClick:function(){return c("power")}}),children:[(0,o.createComponentVNode)(2,i.ProgressBar,{value:u/s,ranges:{bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{initial:0,value:u||0})," / "+s]}),(0,o.createComponentVNode)(2,i.Box,{mt:1,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Range",children:[1,2,3,4,5].map((function(e){return(0,o.createComponentVNode)(2,i.Button,{selected:m===e,icon:"plus",content:3*e,disabled:h<e,onClick:function(){return c("setting",{amount:e})}},e)}))})})})]}),(0,o.createComponentVNode)(2,i.Section,{title:"Contents",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"trash",content:"Purge",onClick:function(){return c("purge")}}),children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{color:"label",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{initial:0,value:e.volume})," ","units of ",e.name]},e.name)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SolarControl=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.SolarControl=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.generated,u=l.generated_ratio,s=l.azimuth_current,p=l.azimuth_rate,m=l.max_rotation_rate,f=l.tracking_state,h=l.connected_panels,C=l.connected_tracker;return(0,o.createComponentVNode)(2,a.Window,{width:380,height:230,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Scan for new hardware",onClick:function(){return c("refresh")}}),children:(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Solar tracker",color:C?"good":"bad",children:C?"OK":"N/A"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Solar panels",color:h>0?"good":"bad",children:h})]})}),(0,o.createComponentVNode)(2,i.Grid.Column,{size:1.5,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Power output",children:(0,o.createComponentVNode)(2,i.ProgressBar,{ranges:{good:[.66,Infinity],average:[.33,.66],bad:[-Infinity,.33]},minValue:0,maxValue:1,value:u,children:d+" W"})})})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Controls",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Tracking",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Off",selected:0===f,onClick:function(){return c("tracking",{mode:0})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"clock-o",content:"Timed",selected:1===f,onClick:function(){return c("tracking",{mode:1})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Auto",selected:2===f,disabled:!C,onClick:function(){return c("tracking",{mode:2})}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Azimuth",children:[(0===f||1===f)&&(0,o.createComponentVNode)(2,i.NumberInput,{width:"52px",unit:"\xb0",step:1,stepPixelSize:2,minValue:-360,maxValue:720,value:s,onDrag:function(e,t){return c("azimuth",{value:t})}}),1===f&&(0,o.createComponentVNode)(2,i.NumberInput,{width:"80px",unit:"\xb0/m",step:.01,stepPixelSize:1,minValue:-m-.01,maxValue:m+.01,value:p,format:function(e){return(Math.sign(e)>0?"+":"-")+Math.abs(e)},onDrag:function(e,t){return c("azimuth_rate",{value:t})}}),2===f&&(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mt:"3px",children:[s+" \xb0"," (auto)"]})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SpaceHeater=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.SpaceHeater=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:400,height:305,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{title:"Power",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject Cell",disabled:!l.hasPowercell||!l.open,onClick:function(){return c("eject")}}),(0,o.createComponentVNode)(2,i.Button,{icon:l.on?"power-off":"times",content:l.on?"On":"Off",selected:l.on,disabled:!l.hasPowercell,onClick:function(){return c("power")}})],4),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Cell",color:!l.hasPowercell&&"bad",children:l.hasPowercell&&(0,o.createComponentVNode)(2,i.ProgressBar,{value:l.powerLevel/100,ranges:{good:[.6,Infinity],average:[.3,.6],bad:[-Infinity,.3]},children:l.powerLevel+"%"})||"None"})})}),(0,o.createComponentVNode)(2,i.Section,{title:"Thermostat",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current Temperature",children:(0,o.createComponentVNode)(2,i.Box,{fontSize:"18px",color:Math.abs(l.targetTemp-l.currentTemp)>50?"bad":Math.abs(l.targetTemp-l.currentTemp)>20?"average":"good",children:[l.currentTemp,"\xb0C"]})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target Temperature",children:l.open&&(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:parseFloat(l.targetTemp),width:"65px",unit:"\xb0C",minValue:l.minTemp,maxValue:l.maxTemp,onChange:function(e,t){return c("target",{target:t})}})||l.targetTemp+"\xb0C"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Mode",children:l.open?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"thermometer-half",content:"Auto",selected:"auto"===l.mode,onClick:function(){return c("mode",{mode:"auto"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fire-alt",content:"Heat",selected:"heat"===l.mode,onClick:function(){return c("mode",{mode:"heat"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fan",content:"Cool",selected:"cool"===l.mode,onClick:function(){return c("mode",{mode:"cool"})}})],4):"Auto"}),(0,o.createComponentVNode)(2,i.LabeledList.Divider)]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SpawnersMenu=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.SpawnersMenu=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data.spawners||[];return(0,o.createComponentVNode)(2,a.Window,{title:"Spawners Menu",width:700,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,i.Section,{children:l.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name+" ("+e.amount_left+" left)",level:2,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{content:"Jump",onClick:function(){return c("jump",{name:e.name})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Spawn",onClick:function(){return c("spawn",{name:e.name})}})],4),children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,mb:1,fontSize:"20px",children:e.short_desc}),(0,o.createComponentVNode)(2,i.Box,{children:e.flavor_text}),!!e.important_info&&(0,o.createComponentVNode)(2,i.Box,{mt:1,bold:!0,color:"bad",fontSize:"26px",children:e.important_info})]},e.name)}))})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SuitStorageUnit=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.SuitStorageUnit=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.locked,u=l.open,s=l.safeties,p=l.uv_active,m=l.occupied,f=l.suit,h=l.helmet,C=l.mask,g=l.storage;return(0,o.createComponentVNode)(2,a.Window,{width:400,height:305,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[!(!m||!s)&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Biological entity detected in suit chamber. Please remove before continuing with operation."}),p&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Contents are currently being decontaminated. Please wait."})||(0,o.createComponentVNode)(2,i.Section,{title:"Storage",minHeight:"260px",buttons:(0,o.createFragment)([!u&&(0,o.createComponentVNode)(2,i.Button,{icon:d?"unlock":"lock",content:d?"Unlock":"Lock",onClick:function(){return c("lock")}}),!d&&(0,o.createComponentVNode)(2,i.Button,{icon:u?"sign-out-alt":"sign-in-alt",content:u?"Close":"Open",onClick:function(){return c("door")}})],0),children:d&&(0,o.createComponentVNode)(2,i.Box,{mt:6,bold:!0,textAlign:"center",fontSize:"40px",children:[(0,o.createComponentVNode)(2,i.Box,{children:"Unit Locked"}),(0,o.createComponentVNode)(2,i.Icon,{name:"lock"})]})||u&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Helmet",children:(0,o.createComponentVNode)(2,i.Button,{icon:h?"square":"square-o",content:h||"Empty",disabled:!h,onClick:function(){return c("dispense",{item:"helmet"})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Suit",children:(0,o.createComponentVNode)(2,i.Button,{icon:f?"square":"square-o",content:f||"Empty",disabled:!f,onClick:function(){return c("dispense",{item:"suit"})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Mask",children:(0,o.createComponentVNode)(2,i.Button,{icon:C?"square":"square-o",content:C||"Empty",disabled:!C,onClick:function(){return c("dispense",{item:"mask"})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Storage",children:(0,o.createComponentVNode)(2,i.Button,{icon:g?"square":"square-o",content:g||"Empty",disabled:!g,onClick:function(){return c("dispense",{item:"storage"})}})})]})||(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"recycle",content:"Decontaminate",disabled:m&&s,textAlign:"center",onClick:function(){return c("uv")}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.SyndPane=t.StatusPane=t.SyndContractorContent=t.SyndContractor=t.FakeTerminal=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);var c=function(e){var t,n;function r(t){var n;return(n=e.call(this,t)||this).timer=null,n.state={currentIndex:0,currentDisplay:[]},n}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var a=r.prototype;return a.tick=function(){var e=this.props,t=this.state;t.currentIndex<=e.allMessages.length?(this.setState((function(e){return{currentIndex:e.currentIndex+1}})),t.currentDisplay.push(e.allMessages[t.currentIndex])):(clearTimeout(this.timer),setTimeout(e.onFinished,e.finishedTimeout))},a.componentDidMount=function(){var e=this,t=this.props.linesPerSecond,n=void 0===t?2.5:t;this.timer=setInterval((function(){return e.tick()}),1e3/n)},a.componentWillUnmount=function(){clearTimeout(this.timer)},a.render=function(){return(0,o.createComponentVNode)(2,i.Box,{m:1,children:this.state.currentDisplay.map((function(e){return(0,o.createFragment)([e,(0,o.createVNode)(1,"br")],0,e)}))})},r}(o.Component);t.FakeTerminal=c;t.SyndContractor=function(e,t){return(0,o.createComponentVNode)(2,a.NtosWindow,{width:500,height:600,theme:"syndicate",resizable:!0,children:(0,o.createComponentVNode)(2,a.NtosWindow.Content,{scrollable:!0,children:(0,o.createComponentVNode)(2,l)})})};var l=function(e,t){var n=(0,r.useBackend)(t),a=n.data,l=n.act,d=["Recording biometric data...","Analyzing embedded syndicate info...","STATUS CONFIRMED","Contacting syndicate database...","Awaiting response...","Awaiting response...","Awaiting response...","Awaiting response...","Awaiting response...","Awaiting response...","Response received, ack 4851234...","CONFIRM ACC "+Math.round(2e4*Math.random()),"Setting up private accounts...","CONTRACTOR ACCOUNT CREATED","Searching for available contracts...","Searching for available contracts...","Searching for available contracts...","Searching for available contracts...","CONTRACTS FOUND","WELCOME, AGENT"],s=!!a.error&&(0,o.createComponentVNode)(2,i.Modal,{backgroundColor:"red",children:(0,o.createComponentVNode)(2,i.Flex,{align:"center",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{mr:2,children:(0,o.createComponentVNode)(2,i.Icon,{size:4,name:"exclamation-triangle"})}),(0,o.createComponentVNode)(2,i.Flex.Item,{mr:2,grow:1,textAlign:"center",children:[(0,o.createComponentVNode)(2,i.Box,{width:"260px",textAlign:"left",minHeight:"80px",children:a.error}),(0,o.createComponentVNode)(2,i.Button,{content:"Dismiss",onClick:function(){return l("PRG_clear_error")}})]})]})});return a.logged_in?a.logged_in&&a.first_load?(0,o.createComponentVNode)(2,i.Box,{backgroundColor:"rgba(0, 0, 0, 0.8)",minHeight:"525px",children:(0,o.createComponentVNode)(2,c,{allMessages:d,finishedTimeout:3e3,onFinished:function(){return l("PRG_set_first_load_finished")}})}):a.info_screen?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{backgroundColor:"rgba(0, 0, 0, 0.8)",minHeight:"500px",children:(0,o.createComponentVNode)(2,c,{allMessages:["SyndTract v2.0","","We've identified potentional high-value targets that are","currently assigned to your mission area. They are believed","to hold valuable information which could be of immediate","importance to our organisation.","","Listed below are all of the contracts available to you. You","are to bring the specified target to the designated","drop-off, and contact us via this uplink. We will send","a specialised extraction unit to put the body into.","","We want targets alive - but we will sometimes pay slight","amounts if they're not, you just won't recieve the shown","bonus. You can redeem your payment through this uplink in","the form of raw telecrystals, which can be put into your","regular Syndicate uplink to purchase whatever you may need.","We provide you with these crystals the moment you send the","target up to us, which can be collected at anytime through","this system.","","Targets extracted will be ransomed back to the station once","their use to us is fulfilled, with us providing you a small","percentage cut. You may want to be mindful of them","identifying you when they come back. We provide you with","a standard contractor loadout, which will help cover your","identity."],linesPerSecond:10})}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:"CONTINUE",color:"transparent",textAlign:"center",onClick:function(){return l("PRG_toggle_info")}})],4):(0,o.createFragment)([s,(0,o.createComponentVNode)(2,u)],0):(0,o.createComponentVNode)(2,i.Section,{minHeight:"525px",children:[(0,o.createComponentVNode)(2,i.Box,{width:"100%",textAlign:"center",children:(0,o.createComponentVNode)(2,i.Button,{content:"REGISTER USER",color:"transparent",onClick:function(){return l("PRG_login")}})}),!!a.error&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:a.error})]})};t.SyndContractorContent=l;var d=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data;return(0,o.createComponentVNode)(2,i.Section,{title:(0,o.createFragment)([(0,o.createTextVNode)("Contractor Status"),(0,o.createComponentVNode)(2,i.Button,{content:"View Information Again",color:"transparent",mb:0,ml:1,onClick:function(){return a("PRG_toggle_info")}})],4),buttons:(0,o.createComponentVNode)(2,i.Box,{bold:!0,mr:1,children:[c.contract_rep," Rep"]}),children:(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{size:.85,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"TC Availible",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Claim",disabled:c.redeemable_tc<=0,onClick:function(){return a("PRG_redeem_TC")}}),children:c.redeemable_tc}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"TC Earned",children:c.earned_tc})]})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Contracts Completed",children:c.contracts_completed}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current Status",children:"ACTIVE"})]})})]})})};t.StatusPane=d;var u=function(e,t){var n=(0,r.useLocalState)(t,"tab",1),a=n[0],c=n[1];return(0,o.createFragment)([(0,o.createComponentVNode)(2,d,{state:e.state}),(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:1===a,onClick:function(){return c(1)},children:"Contracts"}),(0,o.createComponentVNode)(2,i.Tabs.Tab,{selected:2===a,onClick:function(){return c(2)},children:"Hub"})]}),1===a&&(0,o.createComponentVNode)(2,s),2===a&&(0,o.createComponentVNode)(2,p)],0)};t.SyndPane=u;var s=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.contracts||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Availible Contracts",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Call Extraction",disabled:!c.ongoing_contract||c.extraction_enroute,onClick:function(){return a("PRG_call_extraction")}}),children:l.map((function(e){if(!c.ongoing_contract||2===e.status){var t=e.status>1;if(!(e.status>=5))return(0,o.createComponentVNode)(2,i.Section,{title:e.target?e.target+" ("+e.target_rank+")":"Invalid Target",level:t?1:2,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,mr:1,children:[e.payout," (+",e.payout_bonus,") TC"]}),(0,o.createComponentVNode)(2,i.Button,{content:t?"Abort":"Accept",disabled:e.extraction_enroute,color:t&&"bad",onClick:function(){return a("PRG_contract"+(t?"_abort":"-accept"),{contract_id:e.id})}})],4),children:(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.message}),(0,o.createComponentVNode)(2,i.Grid.Column,{size:.5,children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,mb:1,children:"Dropoff Location:"}),(0,o.createComponentVNode)(2,i.Box,{children:e.dropoff})]})]})},e.target)}}))}),(0,o.createComponentVNode)(2,i.Section,{title:"Dropoff Locator",textAlign:"center",opacity:c.ongoing_contract?100:0,children:(0,o.createComponentVNode)(2,i.Box,{bold:!0,children:c.dropoff_direction})})],4)},p=function(e,t){var n=(0,r.useBackend)(t),a=n.act,c=n.data,l=c.contractor_hub_items||[];return(0,o.createComponentVNode)(2,i.Section,{children:l.map((function(e){var t=e.cost?e.cost+" Rep":"FREE",n=-1!==e.limited;return(0,o.createComponentVNode)(2,i.Section,{title:e.name+" - "+t,level:2,buttons:(0,o.createFragment)([n&&(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,mr:1,children:[e.limited," remaining"]}),(0,o.createComponentVNode)(2,i.Button,{content:"Purchase",disabled:c.contract_rep<e.cost||n&&e.limited<=0,onClick:function(){return a("buy_hub",{item:e.name,cost:e.cost})}})],0),children:(0,o.createComponentVNode)(2,i.Table,{children:(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Icon,{fontSize:"60px",name:e.item_icon})}),(0,o.createComponentVNode)(2,i.Table.Cell,{verticalAlign:"top",children:e.desc})]})})},e.name)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.TachyonArrayContent=t.TachyonArray=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.TachyonArray=function(e,t){var n=(0,r.useBackend)(t),l=(n.act,n.data.records),d=void 0===l?[]:l;return(0,o.createComponentVNode)(2,a.Window,{width:500,height:225,resizable:!0,children:(0,o.createComponentVNode)(2,a.Window.Content,{scrollable:!0,children:d.length?(0,o.createComponentVNode)(2,c):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No Records"})})})};var c=function(e,t){var n,a=(0,r.useBackend)(t),c=a.act,l=a.data.records,d=void 0===l?[]:l,u=(0,r.useSharedState)(t,"record",null==(n=d[0])?void 0:n.name),s=u[0],p=u[1],m=d.find((function(e){return e.name===s}));return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Flex,{children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{icon:"file",selected:e.name===s,onClick:function(){return p(e.name)},children:e.name},e.name)}))})}),m?(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Section,{level:"2",title:m.name,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button.Confirm,{icon:"trash",content:"Delete",color:"bad",onClick:function(){return c("delete_record",{ref:m.ref})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"print",content:"Print",onClick:function(){return c("print_record",{ref:m.ref})}})],4),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Timestamp",children:m.timestamp}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Coordinates",children:m.coordinates}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Displacement",children:[m.displacement," seconds"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Epicenter Radius",children:[m.factual_epicenter_radius,m.theory_epicenter_radius&&" (Theoretical: "+m.theory_epicenter_radius+")"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Outer Radius",children:[m.factual_outer_radius,m.theory_outer_radius&&" (Theoretical: "+m.theory_outer_radius+")"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shockwave Radius",children:[m.factual_shockwave_radius,m.theory_shockwave_radius&&" (Theoretical: "+m.theory_shockwave_radius+")"]})]})})}):(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,basis:0,children:(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No Record Selected"})})]})})};t.TachyonArrayContent=c},function(e,t,n){"use strict";t.__esModule=!0,t.Tank=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Tank=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:400,height:120,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,i.ProgressBar,{value:l.tankPressure/1013,ranges:{good:[.35,Infinity],average:[.15,.35],bad:[-Infinity,.15]},children:l.tankPressure+" kPa"})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",disabled:l.ReleasePressure===l.minReleasePressure,onClick:function(){return c("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:parseFloat(l.releasePressure),width:"65px",unit:"kPa",minValue:l.minReleasePressure,maxValue:l.maxReleasePressure,onChange:function(e,t){return c("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",disabled:l.ReleasePressure===l.maxReleasePressure,onClick:function(){return c("pressure",{pressure:"max"})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"undo",content:"",disabled:l.ReleasePressure===l.defaultReleasePressure,onClick:function(){return c("pressure",{pressure:"reset"})}})]})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TankDispenser=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.TankDispenser=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data;return(0,o.createComponentVNode)(2,a.Window,{width:275,height:103,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Plasma",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:l.plasma?"square":"square-o",content:"Dispense",disabled:!l.plasma,onClick:function(){return c("plasma")}}),children:l.plasma}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Oxygen",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:l.oxygen?"square":"square-o",content:"Dispense",disabled:!l.oxygen,onClick:function(){return c("oxygen")}}),children:l.oxygen})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Teleporter=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Teleporter=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.calibrated,u=l.calibrating,s=l.power_station,p=l.regime_set,m=l.teleporter_hub,f=l.target;return(0,o.createComponentVNode)(2,a.Window,{width:470,height:140,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{children:!s&&(0,o.createComponentVNode)(2,i.Box,{color:"bad",textAlign:"center",children:"No power station linked."})||!m&&(0,o.createComponentVNode)(2,i.Box,{color:"bad",textAlign:"center",children:"No hub linked."})||(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current Regime",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"tools",content:"Change Regime",onClick:function(){return c("regimeset")}}),children:p}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Current Target",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"tools",content:"Set Target",onClick:function(){return c("settarget")}}),children:f}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Calibration",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"tools",content:"Calibrate Hub",onClick:function(){return c("calibrate")}}),children:u&&(0,o.createComponentVNode)(2,i.Box,{color:"average",children:"In Progress"})||d&&(0,o.createComponentVNode)(2,i.Box,{color:"good",children:"Optimal"})||(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Sub-Optimal"})})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ThermoMachine=void 0;var o=n(0),r=n(15),i=n(1),a=n(3),c=n(2);t.ThermoMachine=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data;return(0,o.createComponentVNode)(2,c.Window,{width:300,height:230,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d.temperature,format:function(e){return(0,r.toFixed)(e,2)}})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d.pressure,format:function(e){return(0,r.toFixed)(e,2)}})," kPa"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d.on?"power-off":"times",content:d.on?"On":"Off",selected:d.on,onClick:function(){return l("power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:Math.round(d.target),unit:"K",width:"62px",minValue:Math.round(d.min),maxValue:Math.round(d.max),step:5,stepPixelSize:3,onDrag:function(e,t){return l("target",{target:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:d.target===d.min,title:"Minimum temperature",onClick:function(){return l("target",{target:d.min})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",disabled:d.target===d.initial,title:"Room Temperature",onClick:function(){return l("target",{target:d.initial})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:d.target===d.max,title:"Maximum Temperature",onClick:function(){return l("target",{target:d.max})}})]})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Timer=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Timer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.minutes,u=l.seconds,s=l.timing,p=l.loop;return(0,o.createComponentVNode)(2,a.Window,{width:275,height:115,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Timing Unit",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:p?"Repeating":"Repeat",selected:p,onClick:function(){return c("repeat")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"clock-o",content:s?"Stop":"Start",selected:s,onClick:function(){return c("time")}})],4),children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",disabled:s,onClick:function(){return c("input",{adjust:-30})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"backward",disabled:s,onClick:function(){return c("input",{adjust:-1})}})," ",String(d).padStart(2,"0"),":",String(u).padStart(2,"0")," ",(0,o.createComponentVNode)(2,i.Button,{icon:"forward",disabled:s,onClick:function(){return c("input",{adjust:1})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",disabled:s,onClick:function(){return c("input",{adjust:30})}})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TransferValve=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.TransferValve=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.tank_one,u=l.tank_two,s=l.attached_device,p=l.valve;return(0,o.createComponentVNode)(2,a.Window,{width:310,height:320,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Valve Status",children:(0,o.createComponentVNode)(2,i.Button,{icon:p?"unlock":"lock",content:p?"Open":"Closed",disabled:!d||!u,onClick:function(){return c("toggle")}})})})}),(0,o.createComponentVNode)(2,i.Section,{title:"Valve Attachment",buttons:(0,o.createComponentVNode)(2,i.Button,{textAlign:"center",width:"30px",icon:"cog",disabled:!s,onClick:function(){return c("device")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:s?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Attachment",children:(0,o.createComponentVNode)(2,i.Button,{icon:"wrench",content:s,disabled:!s,onClick:function(){return c("remove_device")}})}):(0,o.createComponentVNode)(2,i.NoticeBox,{textAlign:"center",children:"Insert Assembly"})})}),(0,o.createComponentVNode)(2,i.Section,{title:"Attachment One",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:d?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Attachment",children:(0,o.createComponentVNode)(2,i.Button,{icon:"wrench",content:d,disabled:!d,onClick:function(){return c("tankone")}})}):(0,o.createComponentVNode)(2,i.NoticeBox,{textAlign:"center",children:"Insert Tank"})})}),(0,o.createComponentVNode)(2,i.Section,{title:"Attachment Two",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:u?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Attachment",children:(0,o.createComponentVNode)(2,i.Button,{icon:"wrench",content:u,disabled:!u,onClick:function(){return c("tanktwo")}})}):(0,o.createComponentVNode)(2,i.NoticeBox,{textAlign:"center",children:"Insert Tank"})})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TurbineComputer=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.TurbineComputer=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=Boolean(l.compressor&&!l.compressor_broke&&l.turbine&&!l.turbine_broke);return(0,o.createComponentVNode)(2,a.Window,{width:310,height:150,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:(0,o.createComponentVNode)(2,i.Section,{title:"Status",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:l.online?"power-off":"times",content:l.online?"Online":"Offline",selected:l.online,disabled:!d,onClick:function(){return c("toggle_power")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Reconnect",onClick:function(){return c("reconnect")}})],4),children:!d&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Compressor Status",color:!l.compressor||l.compressor_broke?"bad":"good",children:l.compressor_broke?l.compressor?"Offline":"Missing":"Online"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Turbine Status",color:!l.turbine||l.turbine_broke?"bad":"good",children:l.turbine_broke?l.turbine?"Offline":"Missing":"Online"})]})||(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Turbine Speed",children:[l.rpm," RPM"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Internal Temp",children:[l.temp," K"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Generated Power",children:l.power})]})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TurretControl=void 0;var o=n(0),r=n(1),i=n(3),a=n(2),c=n(60);t.TurretControl=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.locked&&!d.siliconUser,s=d.enabled,p=d.lethal,m=d.shootCyborgs;return(0,o.createComponentVNode)(2,a.Window,{width:305,height:168,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,c.InterfaceLockNoticeBox),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Turret Status",children:(0,o.createComponentVNode)(2,i.Button,{icon:s?"power-off":"times",content:s?"Enabled":"Disabled",selected:s,disabled:u,onClick:function(){return l("power")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Turret Mode",children:(0,o.createComponentVNode)(2,i.Button,{icon:p?"exclamation-triangle":"minus-circle",content:p?"Lethal":"Stun",color:p?"bad":"average",disabled:u,onClick:function(){return l("mode")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target Cyborgs",children:(0,o.createComponentVNode)(2,i.Button,{icon:m?"check":"times",content:m?"Yes":"No",selected:m,disabled:u,onClick:function(){return l("shoot_silicons")}})})]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.VaultController=void 0;var o=n(0),r=n(15),i=n(1),a=n(3),c=n(2);t.VaultController=function(e,t){var n=(0,i.useBackend)(t),l=n.act,d=n.data;return(0,o.createComponentVNode)(2,c.Window,{width:300,height:120,children:(0,o.createComponentVNode)(2,c.Window.Content,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Lock Status: ",buttons:(0,o.createComponentVNode)(2,a.Button,{content:d.doorstatus?"Locked":"Unlocked",icon:d.doorstatus?"lock":"unlock",disabled:d.stored<d.max,onClick:function(){return l("togglelock")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d.stored/d.max,ranges:{good:[1,Infinity],average:[.3,1],bad:[-Infinity,.3]},children:(0,r.toFixed)(d.stored/1e3)+" / "+(0,r.toFixed)(d.max/1e3)+" kW"})})})})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Vendatray=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Vendatray=function(e,t){var n=(0,r.useBackend)(t),l=n.act,d=n.data,u=d.product_name,s=d.product_cost,p=d.tray_open,m=d.registered,f=d.owner_name;return(0,o.createComponentVNode)(2,a.Window,{width:300,height:270,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Flex,{mb:1,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{mr:1,children:!!u&&(0,o.createComponentVNode)(2,c)}),(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,children:[(0,o.createComponentVNode)(2,i.Section,{fontSize:"18px",align:"center",children:[(0,o.createVNode)(1,"b",null,u||"Empty",0),(0,o.createComponentVNode)(2,i.Box,{fontSize:"16px",children:[(0,o.createVNode)(1,"i",null,[u?s:"N/A",(0,o.createTextVNode)(" cr ")],0),(0,o.createComponentVNode)(2,i.Button,{icon:"pen",onClick:function(){return l("Adjust")}})]})]}),(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"window-restore",content:p?"Open":"Closed",selected:p,onClick:function(){return l("Open")}}),(0,o.createComponentVNode)(2,i.Button.Confirm,{fluid:!0,icon:"money-bill-wave",content:"Purchase Item",disabled:!u,onClick:function(){return l("Buy")}})],4)]})]}),m?(0,o.createComponentVNode)(2,i.Section,{italics:!0,children:["Pays to the account of ",f,"."]}):(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:"Tray is unregistered."}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"cash-register",content:"Register Tray",disabled:m,onClick:function(){return l("Register")}})],4)]})})};var c=function(e,t){var n=(0,r.useBackend)(t).data.product_icon;return(0,o.createComponentVNode)(2,i.Section,{height:"100%",children:(0,o.createComponentVNode)(2,i.Box,{as:"img",m:1,src:"data:image/jpeg;base64,"+n,height:"96px",width:"96px",style:{"-ms-interpolation-mode":"nearest-neighbor","vertical-align":"middle"}})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Vending=void 0;var o=n(0),r=n(6),i=n(1),a=n(3),c=n(2),l=function(e,t){var n=(0,i.useBackend)(t),c=n.act,l=n.data,d=e.product,u=e.productStock,s=e.custom,p=l.onstation,m=l.department,f=l.user,h=!p||0===d.price||!d.premium&&m&&f&&m===f.department;return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:d.base64&&(0,o.createVNode)(1,"img",null,null,1,{src:"data:image/jpeg;base64,"+d.img,style:{"vertical-align":"middle","horizontal-align":"middle"}})||(0,o.createVNode)(1,"span",(0,r.classes)(["vending32x32",d.path]),null,1,{style:{"vertical-align":"middle","horizontal-align":"middle"}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:d.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:(0,o.createComponentVNode)(2,a.Box,{color:(s?"good":u<=0&&"bad")||u<=d.max_amount/2&&"average"||"good",children:[u," in stock"]})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:s&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:l.access?"FREE":d.price+" cr",onClick:function(){return c("dispense",{item:d.name})}})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,disabled:0===u||!h&&(!l.user||d.price>l.user.cash),content:h?"FREE":d.price+" cr",onClick:function(){return c("vend",{ref:d.ref})}})})]})};t.Vending=function(e,t){var n,r=(0,i.useBackend)(t),d=(r.act,r.data),u=d.user,s=d.onstation,p=d.product_records,m=void 0===p?[]:p,f=d.coin_records,h=void 0===f?[]:f,C=d.hidden_records,g=void 0===C?[]:C,b=d.stock,N=!1;return d.vending_machine_input?(n=d.vending_machine_input||[],N=!0):(n=[].concat(m,h),d.extended_inventory&&(n=[].concat(n,g))),n=n.filter((function(e){return!!e})),(0,o.createComponentVNode)(2,c.Window,{title:"Vending Machine",width:450,height:600,resizable:!0,children:(0,o.createComponentVNode)(2,c.Window.Content,{scrollable:!0,children:[!!s&&(0,o.createComponentVNode)(2,a.Section,{title:"User",children:u&&(0,o.createComponentVNode)(2,a.Box,{children:["Welcome, ",(0,o.createVNode)(1,"b",null,u.name,0),","," ",(0,o.createVNode)(1,"b",null,u.job||"Unemployed",0),"!",(0,o.createVNode)(1,"br"),"Your balance is ",(0,o.createVNode)(1,"b",null,[u.cash,(0,o.createTextVNode)(" credits")],0),"."]})||(0,o.createComponentVNode)(2,a.Box,{color:"light-grey",children:["No registered ID card!",(0,o.createVNode)(1,"br"),"Please contact your local HoP!"]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Products",children:(0,o.createComponentVNode)(2,a.Table,{children:n.map((function(e){return(0,o.createComponentVNode)(2,l,{custom:N,product:e,productStock:b[e.name]},e.name)}))})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Wires=void 0;var o=n(0),r=n(1),i=n(3),a=n(2);t.Wires=function(e,t){var n=(0,r.useBackend)(t),c=n.act,l=n.data,d=l.wires||[],u=l.status||[];return(0,o.createComponentVNode)(2,a.Window,{width:350,height:150+30*d.length,children:(0,o.createComponentVNode)(2,a.Window.Content,{children:[(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:d.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{className:"candystripe",label:e.color,labelColor:e.color,color:e.color,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{content:e.cut?"Mend":"Cut",onClick:function(){return c("cut",{wire:e.color})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Pulse",onClick:function(){return c("pulse",{wire:e.color})}}),(0,o.createComponentVNode)(2,i.Button,{content:e.attached?"Detach":"Attach",onClick:function(){return c("attach",{wire:e.color})}})],4),children:!!e.wire&&(0,o.createVNode)(1,"i",null,[(0,o.createTextVNode)("("),e.wire,(0,o.createTextVNode)(")")],0)},e.color)}))})}),!!u.length&&(0,o.createComponentVNode)(2,i.Section,{children:u.map((function(e){return(0,o.createComponentVNode)(2,i.Box,{children:e},e)}))})]})})}}]); \ No newline at end of file diff --git a/tgui/packages/tgui/public/tgui.html b/tgui/packages/tgui/public/tgui.html index 42010e1fb1e..72762950928 100644 --- a/tgui/packages/tgui/public/tgui.html +++ b/tgui/packages/tgui/public/tgui.html @@ -5,29 +5,59 @@ <meta charset="utf-8"> <!-- Inlined data --> -<meta id="tgui:ref" content="[tgui:ref]"> +<meta id="tgui:windowId" content="[tgui:windowId]"> <!-- Early setup --> <script type="text/javascript"> // Mark the beginning of initialization window.__inception__ = new Date().getTime(); -// Read tgui object ref into a global -window.__ref__ = document - .getElementById('tgui:ref') +// Read window id into a global +window.__windowId__ = document + .getElementById('tgui:windowId') .getAttribute('content'); -// Null if template marker was not replaced -if (window.__ref__ === '[' + 'tgui:ref' + ']') { - window.__ref__ = null; +if (window.__windowId__ === '[' + 'tgui:windowId' + ']') { + window.__windowId__ = null; } + // BYOND API object window.Byond = (function () { var Byond = {}; // Utility functions var hasOwn = Object.prototype.hasOwnProperty; + var assign = function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + for (var key in source) { + if (hasOwn.call(source, key)) { + target[key] = source[key]; + } + } + } + return target; + }; + // Trident engine version + var tridentVersion = (function () { + var groups = navigator.userAgent.match(/Trident\/(\d+).+?;/i); + var majorVersion = groups && groups[1]; + return majorVersion + ? parseInt(majorVersion, 10) + : null; + })(); // Basic checks to detect whether this page runs in BYOND - var isByond = !!navigator.userAgent.match(/Trident\/(\d+).+?;/i) + var isByond = tridentVersion !== null && location.hostname === '127.0.0.1' && location.pathname.indexOf('/tmp') === 0; + + // Version constants + Byond.IS_BYOND = isByond; + Byond.IS_LTE_IE8 = tridentVersion !== null && tridentVersion <= 4; + Byond.IS_LTE_IE9 = tridentVersion !== null && tridentVersion <= 5; + Byond.IS_LTE_IE10 = tridentVersion !== null && tridentVersion <= 6; + Byond.IS_LTE_IE11 = tridentVersion !== null && tridentVersion <= 7; + + // Callbacks for asynchronous calls + Byond.__callbacks__ = []; + // Makes a BYOND call. // See: https://secure.byond.com/docs/ref/skinparams.html Byond.call = function (path, params) { @@ -64,8 +94,61 @@ window.Byond = (function () { xhr.open('GET', url); xhr.send(); }; + + Byond.callAsync = function (path, params) { + if (!window.Promise) { + throw new Error('Async calls require API level of ES2015 or later.'); + } + var index = Byond.__callbacks__.length; + var promise = new window.Promise(function (resolve) { + Byond.__callbacks__.push(resolve); + }); + Byond.call(path, assign({}, params, { + callback: 'Byond.__callbacks__[' + index + ']', + })); + return promise; + }; + + Byond.topic = function (params) { + return Byond.call('', params); + }; + + Byond.command = function (command) { + return Byond.call('winset', { + command: command, + }); + }; + + Byond.winget = function (id, propName) { + var isArray = propName instanceof Array; + var isSpecific = propName && propName !== '*' && !isArray; + var promise = Byond.callAsync('winget', { + id: id, + property: isArray && propName.join(',') || propName || '*', + }); + if (isSpecific) { + promise = promise.then(function (props) { + return props[propName]; + }); + } + return promise; + }; + + Byond.winset = function (id, propName, propValue) { + var props = {}; + if (propName === 'string') { + props[propName] = propValue; + } + else { + assign(props, propName); + } + props.id = id; + return Byond.call('winset', props); + }; + return Byond; })(); + // Global error handling window.onerror = function (msg, url, line, col, error) { // Proper stacktrace @@ -78,7 +161,7 @@ window.onerror = function (msg, url, line, col, error) { } } // Append user agent info - stack += '\n\nUser Agent: ' + navigator.userAgent; + stack += '\nUser Agent: ' + navigator.userAgent; // Print error to the page var errorRoot = document.getElementById('FatalError'); var errorStack = document.getElementById('FatalError__stack'); @@ -91,12 +174,29 @@ window.onerror = function (msg, url, line, col, error) { errorStack.textContent = stack; } } - // Send logs to the server - Byond.call('', { - src: window.__ref__, - action: 'tgui:log', - fatal: '1', - log: stack, + // Set window geometry + var setFatalErrorGeometry = function () { + Byond.winset(window.__windowId__, { + titlebar: true, + size: '600x600', + 'is-visible': true, + 'can-resize': true, + }); + }; + setFatalErrorGeometry(); + setInterval(setFatalErrorGeometry, 1000); + // Use a hook that comes with the bundle to augment the stack + // and send errors to a dev server (if using a development build). + if (window.__logger__) { + stack = window.__logger__.fatal(error, stack); + } + // Send logs to the game server + Byond.topic({ + tgui: 1, + window_id: window.__windowId__, + type: 'log', + fatal: 1, + message: stack, }); // Short-circuit further updates window.__updateQueue__ = []; @@ -104,14 +204,16 @@ window.onerror = function (msg, url, line, col, error) { // Prevent default action return true; }; + // Early initialization window.__updateQueue__ = []; -window.update = function (stateJson) { - window.__updateQueue__.push(stateJson); +window.update = function (message) { + window.__updateQueue__.push(message); }; -Byond.call('', { - src: window.__ref__, - action: 'tgui:initialize', +Byond.topic({ + tgui: 1, + window_id: window.__windowId__, + type: 'ready', }); </script> diff --git a/tgui/packages/tgui/routes.js b/tgui/packages/tgui/routes.js index 2e88e4ca11c..d01340eae23 100644 --- a/tgui/packages/tgui/routes.js +++ b/tgui/packages/tgui/routes.js @@ -4,6 +4,8 @@ * @license MIT */ +import { selectBackend } from './backend'; +import { selectDebug } from './debug'; import { Window } from './layouts'; const requireInterface = require.context('./interfaces', false, /\.js$/); @@ -23,14 +25,27 @@ const routingError = (type, name) => () => { ); }; +const SuspendedWindow = () => { + return ( + <Window resizable> + <Window.Content scrollable /> + </Window> + ); +}; + export const getRoutedComponent = state => { + const { suspended, config } = selectBackend(state); + if (suspended) { + return SuspendedWindow; + } if (process.env.NODE_ENV !== 'production') { + const debug = selectDebug(state); // Show a kitchen sink - if (state.showKitchenSink) { - return require('./interfaces/manually-routed/KitchenSink').KitchenSink; + if (debug.kitchenSink) { + return require('./debug/KitchenSink').KitchenSink; } } - const name = state.config?.interface; + const name = config?.interface; let esModule; try { esModule = requireInterface(`./${name}.js`); diff --git a/tgui/packages/tgui/store.js b/tgui/packages/tgui/store.js index 078b86fe021..496e5a84bd0 100644 --- a/tgui/packages/tgui/store.js +++ b/tgui/packages/tgui/store.js @@ -5,26 +5,45 @@ */ import { flow } from 'common/fp'; -import { applyMiddleware, createStore as createReduxStore } from 'common/redux'; +import { applyMiddleware, combineReducers, createStore as createReduxStore } from 'common/redux'; import { Component } from 'inferno'; -import { backendReducer } from './backend'; -import { hotKeyMiddleware, hotKeyReducer } from './hotkeys'; +import { backendMiddleware, backendReducer } from './backend'; +import { debugReducer } from './debug'; +import { hotKeyMiddleware } from './hotkeys'; +import { createLogger } from './logging'; + +const logger = createLogger('store'); export const createStore = () => { const reducer = flow([ // State initializer (state = {}, action) => state, - // Global state reducers - backendReducer, - hotKeyReducer, + combineReducers({ + debug: debugReducer, + backend: backendReducer, + }), ]); const middleware = [ - // loggingMiddleware, hotKeyMiddleware, + backendMiddleware, ]; + if (process.env.NODE_ENV !== 'production') { + middleware.push(loggingMiddleware); + } return createReduxStore(reducer, applyMiddleware(...middleware)); }; +const loggingMiddleware = store => next => action => { + const { type, payload } = action; + if (type === 'backend/update') { + logger.debug('action', { type }); + } + else { + logger.debug('action', action); + } + return next(action); +}; + export class StoreProvider extends Component { getChildContext() { const { store } = this.props; diff --git a/tgui/packages/tgui/styles/components/Flex.scss b/tgui/packages/tgui/styles/components/Flex.scss index bfb9c438a34..ef737d76596 100644 --- a/tgui/packages/tgui/styles/components/Flex.scss +++ b/tgui/packages/tgui/styles/components/Flex.scss @@ -12,11 +12,11 @@ display: inline-flex; } -.Flex--ie8 { +.Flex--iefix { display: table !important; } -.Flex--ie8--column { +.Flex--iefix--column { display: block !important; & > .Flex__item { @@ -26,7 +26,7 @@ } } -.Flex__item--ie8 { +.Flex__item--iefix { display: table-cell !important; } diff --git a/tgui/packages/tgui/styles/components/Section.scss b/tgui/packages/tgui/styles/components/Section.scss index 753716a8ba9..32b6d6998cd 100644 --- a/tgui/packages/tgui/styles/components/Section.scss +++ b/tgui/packages/tgui/styles/components/Section.scss @@ -50,6 +50,16 @@ $color-separator: colors.$primary !default; padding: 8px 6px; } +.Section--fill { + display: flex; + flex-direction: column; + height: 100%; +} + +.Section--fill .Section__content { + flex-grow: 1; +} + .Section--level--1 .Section__titleText { font-size: 14px; } diff --git a/tgui/packages/tgui/styles/layouts/Layout.scss b/tgui/packages/tgui/styles/layouts/Layout.scss index 81ba1015313..7368b24f247 100644 --- a/tgui/packages/tgui/styles/layouts/Layout.scss +++ b/tgui/packages/tgui/styles/layouts/Layout.scss @@ -6,16 +6,8 @@ @use 'sass:color'; @use '../base.scss'; -.Layout__content { - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - overflow-x: hidden; - overflow-y: hidden; - margin-bottom: -6px; - +.Layout, +.Layout * { // Fancy scrollbar scrollbar-base-color: color.scale( base.$color-bg, @@ -40,6 +32,16 @@ $lightness: 10%); } +.Layout__content { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + overflow-x: hidden; + overflow-y: hidden; +} + .Layout__content--scrollable { overflow-y: scroll; margin-bottom: 0; diff --git a/tgui/packages/tgui/styles/layouts/TitleBar.scss b/tgui/packages/tgui/styles/layouts/TitleBar.scss index fcf778c503d..2dc8c316aed 100644 --- a/tgui/packages/tgui/styles/layouts/TitleBar.scss +++ b/tgui/packages/tgui/styles/layouts/TitleBar.scss @@ -4,6 +4,7 @@ */ @use 'sass:color'; +@use '../colors.scss'; $color-text: rgba(255, 255, 255, 0.75) !default; $color-background: #363636 !default; @@ -73,3 +74,14 @@ $color-shadow: rgba(0, 0, 0, 0.1) !default; line-height: 31px; text-align: center; } + +.TitleBar__devBuildIndicator { + position: absolute; + top: 6px; + right: 52px; + min-width: 20px; + padding: 2px 4px; + background-color: rgba(colors.$good, 0.75); + color: #fff; + text-align: center; +} diff --git a/tgui/packages/tgui/styles/layouts/Window.scss b/tgui/packages/tgui/styles/layouts/Window.scss index cdbd5cc5b1e..8684ba9bfd2 100644 --- a/tgui/packages/tgui/styles/layouts/Window.scss +++ b/tgui/packages/tgui/styles/layouts/Window.scss @@ -38,6 +38,21 @@ right: 0; } +.Window__contentPadding { + margin: 6px; + height: calc(100% - 12px); +} + +.Window__contentPadding:after { + height: 0; +} + +.Layout__content--scrollable .Window__contentPadding:after { + display: block; + content: ''; + height: 6px; +} + .Window__dimmer { position: fixed; top: 0; diff --git a/tgui/packages/tgui/styles/themes/paper.scss b/tgui/packages/tgui/styles/themes/paper.scss index d714e985b3f..cfbe4511109 100644 --- a/tgui/packages/tgui/styles/themes/paper.scss +++ b/tgui/packages/tgui/styles/themes/paper.scss @@ -1,7 +1,6 @@ /** - * @file - * @copyright 2020 Paul Bruner - * @license MIT + * Copyright (c) 2020 Paul Bruner + * SPDX-License-Identifier: MIT */ @use 'sass:color'; @@ -9,42 +8,49 @@ @use '../colors.scss' with ( $primary: #ffffff, + $bg-lightness: -25%, + $fg-lightness: -10%, + // Commenting out color maps will adjust all colors based on the lightness + // settings above, but will add extra 10KB to the theme. $fg-map-keys: (), $bg-map-keys: (), ); @use '../base.scss' with ( - $color-fg: rgb(0,0,0), - $color-bg: rgb(255, 255, 255), + $color-fg: #000000, + $color-bg: #ffffff, $color-bg-grad-spread: 0%, - $border-radius: 0px, ); + $font-size: 24px; + // A fat warning to anyone who wants to use this: this only half works. // It was made almost purely for the nuke ui, and requires a good amount of manual hacks to get it working as intended. .theme-paper { - $color-fg: rgb(0,0,0); - $color-bg: rgb(255, 255, 255); // Atomic classes @include meta.load-css('../atomic/color.scss'); // Components @include meta.load-css('../components/Tabs.scss'); - - + @include meta.load-css('../components/Section.scss', $with: ( + 'color-background': rgba(0, 0, 0, 0.1), + 'color-shadow': rgba(0, 0, 0, 0.2), + )); @include meta.load-css('../components/Button.scss', $with: ( 'color-default': #E8E4C9, 'color-disabled': #363636, 'color-selected': #9d0808, 'color-caution': #be6209, 'color-danger': #9a9d00, + 'color-transparent-text': rgba(0, 0, 0, 0.5), )); + // Layouts @include meta.load-css('../layouts/Layout.scss'); - @include meta.load-css('../layouts/Window.scss'); - @include meta.load-css('../layouts/TitleBar.scss', $with: ( - 'color-background':$color-bg, + 'color-text': rgba(0, 0, 0, 0.75), + 'color-background': base.$color-bg, + 'color-shadow-core': rgba(0, 0, 0, 0.25), )); .PaperInput { @@ -62,53 +68,51 @@ $font-size: 24px; overflow: visible; } -.PaperInput__baseline { - display: inline-block; - color: transparent; -} - -.PaperInput__input { - display: block; - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - border: 0; - outline: 0; - width: 100%; - font-size: 12px; - line-height: 17px; - height: 17px; - margin: 0; - padding: 0 6px; - font-family: Verdana, sans-serif; - background-color: transparent; - color: #fff; - color: inherit; - - &:-ms-input-placeholder { - font-style: italic; - color: #777; - color: rgba(255, 255, 255, 0.45); + .PaperInput__baseline { + display: inline-block; + color: transparent; } -} + .PaperInput__input { + display: block; + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + border: 0; + outline: 0; + width: 100%; + font-size: 12px; + line-height: 17px; + height: 17px; + margin: 0; + padding: 0 6px; + font-family: Verdana, sans-serif; + background-color: transparent; + color: #fff; + color: inherit; + &:-ms-input-placeholder { + font-style: italic; + color: #777; + color: rgba(255, 255, 255, 0.45); + } + } .Layout__content { background-image: none; } + .Window { background-image: none; - color: $color-fg; - $font-size: $font-size; + color: base.$color-fg; } + .paper-text { input:disabled { position: relative; display: inline-block; - border: none; background: transparent; border-bottom: 1px solid #000; @@ -119,10 +123,10 @@ $font-size: 24px; line-height: 17px; overflow: visible; } + input { position: relative; display: inline-block; - border: none; background: transparent; border-bottom: 1px solid #000; @@ -134,6 +138,7 @@ $font-size: 24px; overflow: visible; } } + .paper-field { position: relative; display: inline-block; @@ -162,7 +167,5 @@ $font-size: 24px; line-height: 17px; overflow: visible; } - } - } diff --git a/tgui/yarn.lock b/tgui/yarn.lock index b439262290c..e3781bdc13e 100644 --- a/tgui/yarn.lock +++ b/tgui/yarn.lock @@ -2,350 +2,349 @@ # yarn lockfile v1 -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.1.tgz#d5481c5095daa1c57e16e54c6f9198443afb49ff" - integrity sha512-IGhtTmpjGbYzcEDOw7DcQtbQSXcG9ftmAXtWTu9V936vDye4xjjekktFAtgZsWpzTj/X01jocB46mTywm/4SZw== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" + integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== dependencies: - "@babel/highlight" "^7.10.1" + "@babel/highlight" "^7.10.4" -"@babel/compat-data@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.10.1.tgz#b1085ffe72cd17bf2c0ee790fc09f9626011b2db" - integrity sha512-CHvCj7So7iCkGKPRFUfryXIkU2gSBw7VSZFYLsqVhrS47269VK2Hfi9S/YcublPMW8k1u2bQBlbDruoQEm4fgw== +"@babel/compat-data@^7.10.4": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.10.5.tgz#d38425e67ea96b1480a3f50404d1bf85676301a6" + integrity sha512-mPVoWNzIpYJHbWje0if7Ck36bpbtTvIxOi9+6WSK9wjGEXearAqlwBoTQvVjsAY2VIwgcs8V940geY3okzRCEw== dependencies: browserslist "^4.12.0" invariant "^2.2.4" semver "^5.5.0" "@babel/core@^7.6.2": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.10.2.tgz#bd6786046668a925ac2bd2fd95b579b92a23b36a" - integrity sha512-KQmV9yguEjQsXqyOUGKjS4+3K8/DlOCE2pZcq4augdQmtTy5iv5EHtmMSJ7V4c1BIPjuwtZYqYLCq9Ga+hGBRQ== + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.10.5.tgz#1f15e2cca8ad9a1d78a38ddba612f5e7cdbbd330" + integrity sha512-O34LQooYVDXPl7QWCdW9p4NR+QlzOr7xShPPJz8GsuCU3/8ua/wqTr7gmnxXv+WBESiGU/G5s16i6tUvHkNb+w== dependencies: - "@babel/code-frame" "^7.10.1" - "@babel/generator" "^7.10.2" - "@babel/helper-module-transforms" "^7.10.1" - "@babel/helpers" "^7.10.1" - "@babel/parser" "^7.10.2" - "@babel/template" "^7.10.1" - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.2" + "@babel/code-frame" "^7.10.4" + "@babel/generator" "^7.10.5" + "@babel/helper-module-transforms" "^7.10.5" + "@babel/helpers" "^7.10.4" + "@babel/parser" "^7.10.5" + "@babel/template" "^7.10.4" + "@babel/traverse" "^7.10.5" + "@babel/types" "^7.10.5" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.1" json5 "^2.1.2" - lodash "^4.17.13" + lodash "^4.17.19" resolve "^1.3.2" semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.10.1", "@babel/generator@^7.10.2": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.10.2.tgz#0fa5b5b2389db8bfdfcc3492b551ee20f5dd69a9" - integrity sha512-AxfBNHNu99DTMvlUPlt1h2+Hn7knPpH5ayJ8OqDWSeLld+Fi2AYBTC/IejWDM9Edcii4UzZRCsbUt0WlSDsDsA== +"@babel/generator@^7.10.5": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.10.5.tgz#1b903554bc8c583ee8d25f1e8969732e6b829a69" + integrity sha512-3vXxr3FEW7E7lJZiWQ3bM4+v/Vyr9C+hpolQ8BGFr9Y8Ri2tFLWTixmwKBafDujO1WVah4fhZBeU1bieKdghig== dependencies: - "@babel/types" "^7.10.2" + "@babel/types" "^7.10.5" jsesc "^2.5.1" - lodash "^4.17.13" source-map "^0.5.0" -"@babel/helper-annotate-as-pure@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.1.tgz#f6d08acc6f70bbd59b436262553fb2e259a1a268" - integrity sha512-ewp3rvJEwLaHgyWGe4wQssC2vjks3E80WiUe2BpMb0KhreTjMROCbxXcEovTrbeGVdQct5VjQfrv9EgC+xMzCw== +"@babel/helper-annotate-as-pure@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz#5bf0d495a3f757ac3bda48b5bf3b3ba309c72ba3" + integrity sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA== dependencies: - "@babel/types" "^7.10.1" + "@babel/types" "^7.10.4" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.1.tgz#0ec7d9be8174934532661f87783eb18d72290059" - integrity sha512-cQpVq48EkYxUU0xozpGCLla3wlkdRRqLWu1ksFMXA9CM5KQmyyRpSEsYXbao7JUkOw/tAaYKCaYyZq6HOFYtyw== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz#bb0b75f31bf98cbf9ff143c1ae578b87274ae1a3" + integrity sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg== dependencies: - "@babel/helper-explode-assignable-expression" "^7.10.1" - "@babel/types" "^7.10.1" + "@babel/helper-explode-assignable-expression" "^7.10.4" + "@babel/types" "^7.10.4" -"@babel/helper-compilation-targets@^7.10.2": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.2.tgz#a17d9723b6e2c750299d2a14d4637c76936d8285" - integrity sha512-hYgOhF4To2UTB4LTaZepN/4Pl9LD4gfbJx8A34mqoluT8TLbof1mhUlYuNWTEebONa8+UlCC4X0TEXu7AOUyGA== +"@babel/helper-compilation-targets@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz#804ae8e3f04376607cc791b9d47d540276332bd2" + integrity sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ== dependencies: - "@babel/compat-data" "^7.10.1" + "@babel/compat-data" "^7.10.4" browserslist "^4.12.0" invariant "^2.2.4" levenary "^1.1.1" semver "^5.5.0" -"@babel/helper-create-class-features-plugin@^7.10.1": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.2.tgz#7474295770f217dbcf288bf7572eb213db46ee67" - integrity sha512-5C/QhkGFh1vqcziq1vAL6SI9ymzUp8BCYjFpvYVhWP4DlATIb3u5q3iUd35mvlyGs8fO7hckkW7i0tmH+5+bvQ== +"@babel/helper-create-class-features-plugin@^7.10.4": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz#9f61446ba80e8240b0a5c85c6fdac8459d6f259d" + integrity sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A== dependencies: - "@babel/helper-function-name" "^7.10.1" - "@babel/helper-member-expression-to-functions" "^7.10.1" - "@babel/helper-optimise-call-expression" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-replace-supers" "^7.10.1" - "@babel/helper-split-export-declaration" "^7.10.1" + "@babel/helper-function-name" "^7.10.4" + "@babel/helper-member-expression-to-functions" "^7.10.5" + "@babel/helper-optimise-call-expression" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-replace-supers" "^7.10.4" + "@babel/helper-split-export-declaration" "^7.10.4" -"@babel/helper-create-regexp-features-plugin@^7.10.1", "@babel/helper-create-regexp-features-plugin@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.1.tgz#1b8feeab1594cbcfbf3ab5a3bbcabac0468efdbd" - integrity sha512-Rx4rHS0pVuJn5pJOqaqcZR4XSgeF9G/pO/79t+4r7380tXFJdzImFnxMU19f83wjSrmKHq6myrM10pFHTGzkUA== +"@babel/helper-create-regexp-features-plugin@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz#fdd60d88524659a0b6959c0579925e425714f3b8" + integrity sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g== dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/helper-regex" "^7.10.1" + "@babel/helper-annotate-as-pure" "^7.10.4" + "@babel/helper-regex" "^7.10.4" regexpu-core "^4.7.0" -"@babel/helper-define-map@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.10.1.tgz#5e69ee8308648470dd7900d159c044c10285221d" - integrity sha512-+5odWpX+OnvkD0Zmq7panrMuAGQBu6aPUgvMzuMGo4R+jUOvealEj2hiqI6WhxgKrTpFoFj0+VdsuA8KDxHBDg== +"@babel/helper-define-map@^7.10.4": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz#b53c10db78a640800152692b13393147acb9bb30" + integrity sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ== dependencies: - "@babel/helper-function-name" "^7.10.1" - "@babel/types" "^7.10.1" - lodash "^4.17.13" + "@babel/helper-function-name" "^7.10.4" + "@babel/types" "^7.10.5" + lodash "^4.17.19" -"@babel/helper-explode-assignable-expression@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.1.tgz#e9d76305ee1162ca467357ae25df94f179af2b7e" - integrity sha512-vcUJ3cDjLjvkKzt6rHrl767FeE7pMEYfPanq5L16GRtrXIoznc0HykNW2aEYkcnP76P0isoqJ34dDMFZwzEpJg== +"@babel/helper-explode-assignable-expression@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz#40a1cd917bff1288f699a94a75b37a1a2dbd8c7c" + integrity sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A== dependencies: - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.1" + "@babel/traverse" "^7.10.4" + "@babel/types" "^7.10.4" -"@babel/helper-function-name@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.10.1.tgz#92bd63829bfc9215aca9d9defa85f56b539454f4" - integrity sha512-fcpumwhs3YyZ/ttd5Rz0xn0TpIwVkN7X0V38B9TWNfVF42KEkhkAAuPCQ3oXmtTRtiPJrmZ0TrfS0GKF0eMaRQ== +"@babel/helper-function-name@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz#d2d3b20c59ad8c47112fa7d2a94bc09d5ef82f1a" + integrity sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ== dependencies: - "@babel/helper-get-function-arity" "^7.10.1" - "@babel/template" "^7.10.1" - "@babel/types" "^7.10.1" + "@babel/helper-get-function-arity" "^7.10.4" + "@babel/template" "^7.10.4" + "@babel/types" "^7.10.4" -"@babel/helper-get-function-arity@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.1.tgz#7303390a81ba7cb59613895a192b93850e373f7d" - integrity sha512-F5qdXkYGOQUb0hpRaPoetF9AnsXknKjWMZ+wmsIRsp5ge5sFh4c3h1eH2pRTTuy9KKAA2+TTYomGXAtEL2fQEw== +"@babel/helper-get-function-arity@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz#98c1cbea0e2332f33f9a4661b8ce1505b2c19ba2" + integrity sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A== dependencies: - "@babel/types" "^7.10.1" + "@babel/types" "^7.10.4" -"@babel/helper-hoist-variables@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.1.tgz#7e77c82e5dcae1ebf123174c385aaadbf787d077" - integrity sha512-vLm5srkU8rI6X3+aQ1rQJyfjvCBLXP8cAGeuw04zeAM2ItKb1e7pmVmLyHb4sDaAYnLL13RHOZPLEtcGZ5xvjg== +"@babel/helper-hoist-variables@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz#d49b001d1d5a68ca5e6604dda01a6297f7c9381e" + integrity sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA== dependencies: - "@babel/types" "^7.10.1" + "@babel/types" "^7.10.4" -"@babel/helper-member-expression-to-functions@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.1.tgz#432967fd7e12a4afef66c4687d4ca22bc0456f15" - integrity sha512-u7XLXeM2n50gb6PWJ9hoO5oO7JFPaZtrh35t8RqKLT1jFKj9IWeD1zrcrYp1q1qiZTdEarfDWfTIP8nGsu0h5g== +"@babel/helper-member-expression-to-functions@^7.10.4", "@babel/helper-member-expression-to-functions@^7.10.5": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.5.tgz#172f56e7a63e78112f3a04055f24365af702e7ee" + integrity sha512-HiqJpYD5+WopCXIAbQDG0zye5XYVvcO9w/DHp5GsaGkRUaamLj2bEtu6i8rnGGprAhHM3qidCMgp71HF4endhA== dependencies: - "@babel/types" "^7.10.1" + "@babel/types" "^7.10.5" -"@babel/helper-module-imports@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.10.1.tgz#dd331bd45bccc566ce77004e9d05fe17add13876" - integrity sha512-SFxgwYmZ3HZPyZwJRiVNLRHWuW2OgE5k2nrVs6D9Iv4PPnXVffuEHy83Sfx/l4SqF+5kyJXjAyUmrG7tNm+qVg== +"@babel/helper-module-imports@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz#4c5c54be04bd31670a7382797d75b9fa2e5b5620" + integrity sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw== dependencies: - "@babel/types" "^7.10.1" + "@babel/types" "^7.10.4" -"@babel/helper-module-transforms@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.10.1.tgz#24e2f08ee6832c60b157bb0936c86bef7210c622" - integrity sha512-RLHRCAzyJe7Q7sF4oy2cB+kRnU4wDZY/H2xJFGof+M+SJEGhZsb+GFj5j1AD8NiSaVBJ+Pf0/WObiXu/zxWpFg== +"@babel/helper-module-transforms@^7.10.4", "@babel/helper-module-transforms@^7.10.5": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.10.5.tgz#120c271c0b3353673fcdfd8c053db3c544a260d6" + integrity sha512-4P+CWMJ6/j1W915ITJaUkadLObmCRRSC234uctJfn/vHrsLNxsR8dwlcXv9ZhJWzl77awf+mWXSZEKt5t0OnlA== dependencies: - "@babel/helper-module-imports" "^7.10.1" - "@babel/helper-replace-supers" "^7.10.1" - "@babel/helper-simple-access" "^7.10.1" - "@babel/helper-split-export-declaration" "^7.10.1" - "@babel/template" "^7.10.1" - "@babel/types" "^7.10.1" - lodash "^4.17.13" + "@babel/helper-module-imports" "^7.10.4" + "@babel/helper-replace-supers" "^7.10.4" + "@babel/helper-simple-access" "^7.10.4" + "@babel/helper-split-export-declaration" "^7.10.4" + "@babel/template" "^7.10.4" + "@babel/types" "^7.10.5" + lodash "^4.17.19" -"@babel/helper-optimise-call-expression@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.1.tgz#b4a1f2561870ce1247ceddb02a3860fa96d72543" - integrity sha512-a0DjNS1prnBsoKx83dP2falChcs7p3i8VMzdrSbfLhuQra/2ENC4sbri34dz/rWmDADsmF1q5GbfaXydh0Jbjg== +"@babel/helper-optimise-call-expression@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz#50dc96413d594f995a77905905b05893cd779673" + integrity sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg== dependencies: - "@babel/types" "^7.10.1" + "@babel/types" "^7.10.4" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.1", "@babel/helper-plugin-utils@^7.8.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.1.tgz#ec5a5cf0eec925b66c60580328b122c01230a127" - integrity sha512-fvoGeXt0bJc7VMWZGCAEBEMo/HAjW2mP8apF5eXK0wSqwLAVHAISCWRoLMBMUs2kqeaG77jltVqu4Hn8Egl3nA== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.8.0": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" + integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== -"@babel/helper-regex@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.10.1.tgz#021cf1a7ba99822f993222a001cc3fec83255b96" - integrity sha512-7isHr19RsIJWWLLFn21ubFt223PjQyg1HY7CZEMRr820HttHPpVvrsIN3bUOo44DEfFV4kBXO7Abbn9KTUZV7g== +"@babel/helper-regex@^7.10.4": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.10.5.tgz#32dfbb79899073c415557053a19bd055aae50ae0" + integrity sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg== dependencies: - lodash "^4.17.13" + lodash "^4.17.19" -"@babel/helper-remap-async-to-generator@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.1.tgz#bad6aaa4ff39ce8d4b82ccaae0bfe0f7dbb5f432" - integrity sha512-RfX1P8HqsfgmJ6CwaXGKMAqbYdlleqglvVtht0HGPMSsy2V6MqLlOJVF/0Qyb/m2ZCi2z3q3+s6Pv7R/dQuZ6A== +"@babel/helper-remap-async-to-generator@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz#fce8bea4e9690bbe923056ded21e54b4e8b68ed5" + integrity sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg== dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/helper-wrap-function" "^7.10.1" - "@babel/template" "^7.10.1" - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.1" + "@babel/helper-annotate-as-pure" "^7.10.4" + "@babel/helper-wrap-function" "^7.10.4" + "@babel/template" "^7.10.4" + "@babel/traverse" "^7.10.4" + "@babel/types" "^7.10.4" -"@babel/helper-replace-supers@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.10.1.tgz#ec6859d20c5d8087f6a2dc4e014db7228975f13d" - integrity sha512-SOwJzEfpuQwInzzQJGjGaiG578UYmyi2Xw668klPWV5n07B73S0a9btjLk/52Mlcxa+5AdIYqws1KyXRfMoB7A== +"@babel/helper-replace-supers@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz#d585cd9388ea06e6031e4cd44b6713cbead9e6cf" + integrity sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A== dependencies: - "@babel/helper-member-expression-to-functions" "^7.10.1" - "@babel/helper-optimise-call-expression" "^7.10.1" - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.1" + "@babel/helper-member-expression-to-functions" "^7.10.4" + "@babel/helper-optimise-call-expression" "^7.10.4" + "@babel/traverse" "^7.10.4" + "@babel/types" "^7.10.4" -"@babel/helper-simple-access@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.10.1.tgz#08fb7e22ace9eb8326f7e3920a1c2052f13d851e" - integrity sha512-VSWpWzRzn9VtgMJBIWTZ+GP107kZdQ4YplJlCmIrjoLVSi/0upixezHCDG8kpPVTBJpKfxTH01wDhh+jS2zKbw== +"@babel/helper-simple-access@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz#0f5ccda2945277a2a7a2d3a821e15395edcf3461" + integrity sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw== dependencies: - "@babel/template" "^7.10.1" - "@babel/types" "^7.10.1" + "@babel/template" "^7.10.4" + "@babel/types" "^7.10.4" -"@babel/helper-split-export-declaration@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.1.tgz#c6f4be1cbc15e3a868e4c64a17d5d31d754da35f" - integrity sha512-UQ1LVBPrYdbchNhLwj6fetj46BcFwfS4NllJo/1aJsT+1dLTEnXJL0qHqtY7gPzF8S2fXBJamf1biAXV3X077g== +"@babel/helper-split-export-declaration@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.4.tgz#2c70576eaa3b5609b24cb99db2888cc3fc4251d1" + integrity sha512-pySBTeoUff56fL5CBU2hWm9TesA4r/rOkI9DyJLvvgz09MB9YtfIYe3iBriVaYNaPe+Alua0vBIOVOLs2buWhg== dependencies: - "@babel/types" "^7.10.1" + "@babel/types" "^7.10.4" -"@babel/helper-validator-identifier@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.1.tgz#5770b0c1a826c4f53f5ede5e153163e0318e94b5" - integrity sha512-5vW/JXLALhczRCWP0PnFDMCJAchlBvM7f4uk/jXritBnIa6E1KmqmtrS3yn1LAnxFBypQ3eneLuXjsnfQsgILw== +"@babel/helper-validator-identifier@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" + integrity sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw== -"@babel/helper-wrap-function@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.10.1.tgz#956d1310d6696257a7afd47e4c42dfda5dfcedc9" - integrity sha512-C0MzRGteVDn+H32/ZgbAv5r56f2o1fZSA/rj/TYo8JEJNHg+9BdSmKBUND0shxWRztWhjlT2cvHYuynpPsVJwQ== +"@babel/helper-wrap-function@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz#8a6f701eab0ff39f765b5a1cfef409990e624b87" + integrity sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug== dependencies: - "@babel/helper-function-name" "^7.10.1" - "@babel/template" "^7.10.1" - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.1" + "@babel/helper-function-name" "^7.10.4" + "@babel/template" "^7.10.4" + "@babel/traverse" "^7.10.4" + "@babel/types" "^7.10.4" -"@babel/helpers@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.10.1.tgz#a6827b7cb975c9d9cef5fd61d919f60d8844a973" - integrity sha512-muQNHF+IdU6wGgkaJyhhEmI54MOZBKsFfsXFhboz1ybwJ1Kl7IHlbm2a++4jwrmY5UYsgitt5lfqo1wMFcHmyw== +"@babel/helpers@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.10.4.tgz#2abeb0d721aff7c0a97376b9e1f6f65d7a475044" + integrity sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA== dependencies: - "@babel/template" "^7.10.1" - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.1" + "@babel/template" "^7.10.4" + "@babel/traverse" "^7.10.4" + "@babel/types" "^7.10.4" -"@babel/highlight@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.1.tgz#841d098ba613ba1a427a2b383d79e35552c38ae0" - integrity sha512-8rMof+gVP8mxYZApLF/JgNDAkdKa+aJt3ZYxF8z6+j/hpeXL7iMsKCPHa2jNMHu/qqBwzQF4OHNoYi8dMA/rYg== +"@babel/highlight@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.4.tgz#7d1bdfd65753538fabe6c38596cdb76d9ac60143" + integrity sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA== dependencies: - "@babel/helper-validator-identifier" "^7.10.1" + "@babel/helper-validator-identifier" "^7.10.4" chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.10.1", "@babel/parser@^7.10.2", "@babel/parser@^7.7.0": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.2.tgz#871807f10442b92ff97e4783b9b54f6a0ca812d0" - integrity sha512-PApSXlNMJyB4JiGVhCOlzKIif+TKFTvu0aQAhnTvfP/z3vVSN6ZypH5bfUNwFXXjRQtUEBNFd2PtmCmG2Py3qQ== +"@babel/parser@^7.10.4", "@babel/parser@^7.10.5", "@babel/parser@^7.7.0": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.5.tgz#e7c6bf5a7deff957cec9f04b551e2762909d826b" + integrity sha512-wfryxy4bE1UivvQKSQDU4/X6dr+i8bctjUjj8Zyt3DQy7NtPizJXT8M52nqpNKL+nq2PW8lxk4ZqLj0fD4B4hQ== -"@babel/plugin-proposal-async-generator-functions@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.1.tgz#6911af5ba2e615c4ff3c497fe2f47b35bf6d7e55" - integrity sha512-vzZE12ZTdB336POZjmpblWfNNRpMSua45EYnRigE2XsZxcXcIyly2ixnTJasJE4Zq3U7t2d8rRF7XRUuzHxbOw== +"@babel/plugin-proposal-async-generator-functions@^7.10.4": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.5.tgz#3491cabf2f7c179ab820606cec27fed15e0e8558" + integrity sha512-cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-remap-async-to-generator" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-remap-async-to-generator" "^7.10.4" "@babel/plugin-syntax-async-generators" "^7.8.0" -"@babel/plugin-proposal-class-properties@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.1.tgz#046bc7f6550bb08d9bd1d4f060f5f5a4f1087e01" - integrity sha512-sqdGWgoXlnOdgMXU+9MbhzwFRgxVLeiGBqTrnuS7LC2IBU31wSsESbTUreT2O418obpfPdGUR2GbEufZF1bpqw== +"@babel/plugin-proposal-class-properties@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz#a33bf632da390a59c7a8c570045d1115cd778807" + integrity sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg== dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-create-class-features-plugin" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-proposal-dynamic-import@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.1.tgz#e36979dc1dc3b73f6d6816fc4951da2363488ef0" - integrity sha512-Cpc2yUVHTEGPlmiQzXj026kqwjEQAD9I4ZC16uzdbgWgitg/UHKHLffKNCQZ5+y8jpIZPJcKcwsr2HwPh+w3XA== +"@babel/plugin-proposal-dynamic-import@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz#ba57a26cb98b37741e9d5bca1b8b0ddf8291f17e" + integrity sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-dynamic-import" "^7.8.0" -"@babel/plugin-proposal-json-strings@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.1.tgz#b1e691ee24c651b5a5e32213222b2379734aff09" - integrity sha512-m8r5BmV+ZLpWPtMY2mOKN7wre6HIO4gfIiV+eOmsnZABNenrt/kzYBwrh+KOfgumSWpnlGs5F70J8afYMSJMBg== +"@babel/plugin-proposal-json-strings@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz#593e59c63528160233bd321b1aebe0820c2341db" + integrity sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-json-strings" "^7.8.0" -"@babel/plugin-proposal-nullish-coalescing-operator@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.1.tgz#02dca21673842ff2fe763ac253777f235e9bbf78" - integrity sha512-56cI/uHYgL2C8HVuHOuvVowihhX0sxb3nnfVRzUeVHTWmRHTZrKuAh/OBIMggGU/S1g/1D2CRCXqP+3u7vX7iA== +"@babel/plugin-proposal-nullish-coalescing-operator@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz#02a7e961fc32e6d5b2db0649e01bf80ddee7e04a" + integrity sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" -"@babel/plugin-proposal-numeric-separator@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.1.tgz#a9a38bc34f78bdfd981e791c27c6fdcec478c123" - integrity sha512-jjfym4N9HtCiNfyyLAVD8WqPYeHUrw4ihxuAynWj6zzp2gf9Ey2f7ImhFm6ikB3CLf5Z/zmcJDri6B4+9j9RsA== +"@babel/plugin-proposal-numeric-separator@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz#ce1590ff0a65ad12970a609d78855e9a4c1aef06" + integrity sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-numeric-separator" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-proposal-object-rest-spread@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.10.1.tgz#cba44908ac9f142650b4a65b8aa06bf3478d5fb6" - integrity sha512-Z+Qri55KiQkHh7Fc4BW6o+QBuTagbOp9txE+4U1i79u9oWlf2npkiDx+Rf3iK3lbcHBuNy9UOkwuR5wOMH3LIQ== +"@babel/plugin-proposal-object-rest-spread@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.10.4.tgz#50129ac216b9a6a55b3853fdd923e74bf553a4c0" + integrity sha512-6vh4SqRuLLarjgeOf4EaROJAHjvu9Gl+/346PbDH9yWbJyfnJ/ah3jmYKYtswEyCoWZiidvVHjHshd4WgjB9BA== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-transform-parameters" "^7.10.1" + "@babel/plugin-transform-parameters" "^7.10.4" -"@babel/plugin-proposal-optional-catch-binding@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.1.tgz#c9f86d99305f9fa531b568ff5ab8c964b8b223d2" - integrity sha512-VqExgeE62YBqI3ogkGoOJp1R6u12DFZjqwJhqtKc2o5m1YTUuUWnos7bZQFBhwkxIFpWYJ7uB75U7VAPPiKETA== +"@babel/plugin-proposal-optional-catch-binding@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz#31c938309d24a78a49d68fdabffaa863758554dd" + integrity sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" -"@babel/plugin-proposal-optional-chaining@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.10.1.tgz#15f5d6d22708629451a91be28f8facc55b0e818c" - integrity sha512-dqQj475q8+/avvok72CF3AOSV/SGEcH29zT5hhohqqvvZ2+boQoOr7iGldBG5YXTO2qgCgc2B3WvVLUdbeMlGA== +"@babel/plugin-proposal-optional-chaining@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.10.4.tgz#750f1255e930a1f82d8cdde45031f81a0d0adff7" + integrity sha512-ZIhQIEeavTgouyMSdZRap4VPPHqJJ3NEs2cuHs5p0erH+iz6khB0qfgU8g7UuJkG88+fBMy23ZiU+nuHvekJeQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-optional-chaining" "^7.8.0" -"@babel/plugin-proposal-private-methods@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.1.tgz#ed85e8058ab0fe309c3f448e5e1b73ca89cdb598" - integrity sha512-RZecFFJjDiQ2z6maFprLgrdnm0OzoC23Mx89xf1CcEsxmHuzuXOdniEuI+S3v7vjQG4F5sa6YtUp+19sZuSxHg== +"@babel/plugin-proposal-private-methods@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz#b160d972b8fdba5c7d111a145fc8c421fc2a6909" + integrity sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-create-class-features-plugin" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-proposal-unicode-property-regex@^7.10.1", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.1.tgz#dc04feb25e2dd70c12b05d680190e138fa2c0c6f" - integrity sha512-JjfngYRvwmPwmnbRZyNiPFI8zxCZb8euzbCG/LxyKdeTb59tVciKo9GK9bi6JYKInk1H11Dq9j/zRqIH4KigfQ== +"@babel/plugin-proposal-unicode-property-regex@^7.10.4", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz#4483cda53041ce3413b7fe2f00022665ddfaa75d" + integrity sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-async-generators@^7.8.0": version "7.8.4" @@ -354,12 +353,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.1.tgz#d5bc0645913df5b17ad7eda0fa2308330bde34c5" - integrity sha512-Gf2Yx/iRs1JREDtVZ56OrjjgFHCaldpTnuy9BHla10qyVT3YkIIGEtoDWhyop0ksu1GvNjHIoYRBqm3zoR1jyQ== +"@babel/plugin-syntax-class-properties@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz#6644e6a0baa55a61f9e3231f6c9eeb6ee46c124c" + integrity sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-dynamic-import@^7.8.0": version "7.8.3" @@ -376,11 +375,11 @@ "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-jsx@^7": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.10.1.tgz#0ae371134a42b91d5418feb3c8c8d43e1565d2da" - integrity sha512-+OxyOArpVFXQeXKLO9o+r2I4dIoVoy6+Uu0vKELrlweDM3QJADZj+Z+5ERansZqIZBcLj42vHnDI8Rz9BnRIuQ== + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.10.4.tgz#39abaae3cbf710c4373d8429484e6ba21340166c" + integrity sha512-KCg9mio9jwiARCB7WAcQ7Y1q+qicILjoK8LP/VkPkEKaf5dkaZZK1EcTe91a3JJlZ3qy6L5s9X52boEYi8DM9g== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.0": version "7.8.3" @@ -389,12 +388,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-numeric-separator@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.1.tgz#25761ee7410bc8cf97327ba741ee94e4a61b7d99" - integrity sha512-uTd0OsHrpe3tH5gRPTxG8Voh99/WCU78vIm5NMRYPAqC8lR4vajt6KkCAknCHrx24vkPdd/05yfdGSB4EIY2mg== +"@babel/plugin-syntax-numeric-separator@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-object-rest-spread@^7.8.0": version "7.8.3" @@ -417,335 +416,334 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-top-level-await@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.1.tgz#8b8733f8c57397b3eaa47ddba8841586dcaef362" - integrity sha512-hgA5RYkmZm8FTFT3yu2N9Bx7yVVOKYT6yEdXXo6j2JTm0wNxgqaGeQVaSHRjhfnQbX91DtjFB6McRFSlcJH3xQ== +"@babel/plugin-syntax-top-level-await@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz#4bbeb8917b54fcf768364e0a81f560e33a3ef57d" + integrity sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-arrow-functions@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.1.tgz#cb5ee3a36f0863c06ead0b409b4cc43a889b295b" - integrity sha512-6AZHgFJKP3DJX0eCNJj01RpytUa3SOGawIxweHkNX2L6PYikOZmoh5B0d7hIHaIgveMjX990IAa/xK7jRTN8OA== +"@babel/plugin-transform-arrow-functions@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz#e22960d77e697c74f41c501d44d73dbf8a6a64cd" + integrity sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-async-to-generator@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.1.tgz#e5153eb1a3e028f79194ed8a7a4bf55f862b2062" - integrity sha512-XCgYjJ8TY2slj6SReBUyamJn3k2JLUIiiR5b6t1mNCMSvv7yx+jJpaewakikp0uWFQSF7ChPPoe3dHmXLpISkg== +"@babel/plugin-transform-async-to-generator@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz#41a5017e49eb6f3cda9392a51eef29405b245a37" + integrity sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ== dependencies: - "@babel/helper-module-imports" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-remap-async-to-generator" "^7.10.1" + "@babel/helper-module-imports" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-remap-async-to-generator" "^7.10.4" -"@babel/plugin-transform-block-scoped-functions@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.1.tgz#146856e756d54b20fff14b819456b3e01820b85d" - integrity sha512-B7K15Xp8lv0sOJrdVAoukKlxP9N59HS48V1J3U/JGj+Ad+MHq+am6xJVs85AgXrQn4LV8vaYFOB+pr/yIuzW8Q== +"@babel/plugin-transform-block-scoped-functions@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz#1afa595744f75e43a91af73b0d998ecfe4ebc2e8" + integrity sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-block-scoping@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.10.1.tgz#47092d89ca345811451cd0dc5d91605982705d5e" - integrity sha512-8bpWG6TtF5akdhIm/uWTyjHqENpy13Fx8chg7pFH875aNLwX8JxIxqm08gmAT+Whe6AOmaTeLPe7dpLbXt+xUw== +"@babel/plugin-transform-block-scoping@^7.10.4": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.10.5.tgz#b81b8aafefbfe68f0f65f7ef397b9ece68a6037d" + integrity sha512-6Ycw3hjpQti0qssQcA6AMSFDHeNJ++R6dIMnpRqUjFeBBTmTDPa8zgF90OVfTvAo11mXZTlVUViY1g8ffrURLg== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - lodash "^4.17.13" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-classes@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.1.tgz#6e11dd6c4dfae70f540480a4702477ed766d733f" - integrity sha512-P9V0YIh+ln/B3RStPoXpEQ/CoAxQIhRSUn7aXqQ+FZJ2u8+oCtjIXR3+X0vsSD8zv+mb56K7wZW1XiDTDGiDRQ== +"@babel/plugin-transform-classes@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz#405136af2b3e218bc4a1926228bc917ab1a0adc7" + integrity sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA== dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/helper-define-map" "^7.10.1" - "@babel/helper-function-name" "^7.10.1" - "@babel/helper-optimise-call-expression" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-replace-supers" "^7.10.1" - "@babel/helper-split-export-declaration" "^7.10.1" + "@babel/helper-annotate-as-pure" "^7.10.4" + "@babel/helper-define-map" "^7.10.4" + "@babel/helper-function-name" "^7.10.4" + "@babel/helper-optimise-call-expression" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-replace-supers" "^7.10.4" + "@babel/helper-split-export-declaration" "^7.10.4" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.1.tgz#59aa399064429d64dce5cf76ef9b90b7245ebd07" - integrity sha512-mqSrGjp3IefMsXIenBfGcPXxJxweQe2hEIwMQvjtiDQ9b1IBvDUjkAtV/HMXX47/vXf14qDNedXsIiNd1FmkaQ== +"@babel/plugin-transform-computed-properties@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz#9ded83a816e82ded28d52d4b4ecbdd810cdfc0eb" + integrity sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-destructuring@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.1.tgz#abd58e51337815ca3a22a336b85f62b998e71907" - integrity sha512-V/nUc4yGWG71OhaTH705pU8ZSdM6c1KmmLP8ys59oOYbT7RpMYAR3MsVOt6OHL0WzG7BlTU076va9fjJyYzJMA== +"@babel/plugin-transform-destructuring@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz#70ddd2b3d1bea83d01509e9bb25ddb3a74fc85e5" + integrity sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-dotall-regex@^7.10.1", "@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.1.tgz#920b9fec2d78bb57ebb64a644d5c2ba67cc104ee" - integrity sha512-19VIMsD1dp02RvduFUmfzj8uknaO3uiHHF0s3E1OHnVsNj8oge8EQ5RzHRbJjGSetRnkEuBYO7TG1M5kKjGLOA== +"@babel/plugin-transform-dotall-regex@^7.10.4", "@babel/plugin-transform-dotall-regex@^7.4.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz#469c2062105c1eb6a040eaf4fac4b488078395ee" + integrity sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-duplicate-keys@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.1.tgz#c900a793beb096bc9d4d0a9d0cde19518ffc83b9" - integrity sha512-wIEpkX4QvX8Mo9W6XF3EdGttrIPZWozHfEaDTU0WJD/TDnXMvdDh30mzUl/9qWhnf7naicYartcEfUghTCSNpA== +"@babel/plugin-transform-duplicate-keys@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz#697e50c9fee14380fe843d1f306b295617431e47" + integrity sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-exponentiation-operator@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.1.tgz#279c3116756a60dd6e6f5e488ba7957db9c59eb3" - integrity sha512-lr/przdAbpEA2BUzRvjXdEDLrArGRRPwbaF9rvayuHRvdQ7lUTTkZnhZrJ4LE2jvgMRFF4f0YuPQ20vhiPYxtA== +"@babel/plugin-transform-exponentiation-operator@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz#5ae338c57f8cf4001bdb35607ae66b92d665af2e" + integrity sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-for-of@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.1.tgz#ff01119784eb0ee32258e8646157ba2501fcfda5" - integrity sha512-US8KCuxfQcn0LwSCMWMma8M2R5mAjJGsmoCBVwlMygvmDUMkTCykc84IqN1M7t+agSfOmLYTInLCHJM+RUoz+w== +"@babel/plugin-transform-for-of@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz#c08892e8819d3a5db29031b115af511dbbfebae9" + integrity sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-function-name@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.1.tgz#4ed46fd6e1d8fde2a2ec7b03c66d853d2c92427d" - integrity sha512-//bsKsKFBJfGd65qSNNh1exBy5Y9gD9ZN+DvrJ8f7HXr4avE5POW6zB7Rj6VnqHV33+0vXWUwJT0wSHubiAQkw== +"@babel/plugin-transform-function-name@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz#6a467880e0fc9638514ba369111811ddbe2644b7" + integrity sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg== dependencies: - "@babel/helper-function-name" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-function-name" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-transform-jscript@^7.2.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-jscript/-/plugin-transform-jscript-7.10.1.tgz#92eb20dcc9e871870eac37dd47a9de0155551c96" - integrity sha512-AKQ7LjCWods+nzVfj7IHARwflha9AF0vXQR16uaT3cSQ2/EkNcbyuN9cVKuqJ4Gvh/CQAiBhLQsOnrvaIsfTfQ== + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-jscript/-/plugin-transform-jscript-7.10.4.tgz#8ad6be0d283c8773bbbea68e53be3c2d3ad4a676" + integrity sha512-CVMP07FAysZPhPVtwb4PH30JHcNrLpjyDL7nrIuc0d4ENhl4V0ojXjBPwz86HJ2q9Er6OPwNwsW4HXzLQsyhAA== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-literals@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.1.tgz#5794f8da82846b22e4e6631ea1658bce708eb46a" - integrity sha512-qi0+5qgevz1NHLZroObRm5A+8JJtibb7vdcPQF1KQE12+Y/xxl8coJ+TpPW9iRq+Mhw/NKLjm+5SHtAHCC7lAw== +"@babel/plugin-transform-literals@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz#9f42ba0841100a135f22712d0e391c462f571f3c" + integrity sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-member-expression-literals@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.1.tgz#90347cba31bca6f394b3f7bd95d2bbfd9fce2f39" - integrity sha512-UmaWhDokOFT2GcgU6MkHC11i0NQcL63iqeufXWfRy6pUOGYeCGEKhvfFO6Vz70UfYJYHwveg62GS83Rvpxn+NA== +"@babel/plugin-transform-member-expression-literals@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz#b1ec44fcf195afcb8db2c62cd8e551c881baf8b7" + integrity sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-modules-amd@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.1.tgz#65950e8e05797ebd2fe532b96e19fc5482a1d52a" - integrity sha512-31+hnWSFRI4/ACFr1qkboBbrTxoBIzj7qA69qlq8HY8p7+YCzkCT6/TvQ1a4B0z27VeWtAeJd6pr5G04dc1iHw== +"@babel/plugin-transform-modules-amd@^7.10.4": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz#1b9cddaf05d9e88b3aad339cb3e445c4f020a9b1" + integrity sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw== dependencies: - "@babel/helper-module-transforms" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-module-transforms" "^7.10.5" + "@babel/helper-plugin-utils" "^7.10.4" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-commonjs@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.1.tgz#d5ff4b4413ed97ffded99961056e1fb980fb9301" - integrity sha512-AQG4fc3KOah0vdITwt7Gi6hD9BtQP/8bhem7OjbaMoRNCH5Djx42O2vYMfau7QnAzQCa+RJnhJBmFFMGpQEzrg== +"@babel/plugin-transform-modules-commonjs@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz#66667c3eeda1ebf7896d41f1f16b17105a2fbca0" + integrity sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w== dependencies: - "@babel/helper-module-transforms" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-simple-access" "^7.10.1" + "@babel/helper-module-transforms" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-simple-access" "^7.10.4" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-systemjs@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.1.tgz#9962e4b0ac6aaf2e20431ada3d8ec72082cbffb6" - integrity sha512-ewNKcj1TQZDL3YnO85qh9zo1YF1CHgmSTlRQgHqe63oTrMI85cthKtZjAiZSsSNjPQ5NCaYo5QkbYqEw1ZBgZA== +"@babel/plugin-transform-modules-systemjs@^7.10.4": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.5.tgz#6270099c854066681bae9e05f87e1b9cadbe8c85" + integrity sha512-f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw== dependencies: - "@babel/helper-hoist-variables" "^7.10.1" - "@babel/helper-module-transforms" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-hoist-variables" "^7.10.4" + "@babel/helper-module-transforms" "^7.10.5" + "@babel/helper-plugin-utils" "^7.10.4" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-umd@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.1.tgz#ea080911ffc6eb21840a5197a39ede4ee67b1595" - integrity sha512-EIuiRNMd6GB6ulcYlETnYYfgv4AxqrswghmBRQbWLHZxN4s7mupxzglnHqk9ZiUpDI4eRWewedJJNj67PWOXKA== +"@babel/plugin-transform-modules-umd@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz#9a8481fe81b824654b3a0b65da3df89f3d21839e" + integrity sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA== dependencies: - "@babel/helper-module-transforms" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-module-transforms" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-named-capturing-groups-regex@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz#a2a72bffa202ac0e2d0506afd0939c5ecbc48c6c" - integrity sha512-f+tF/8UVPU86TrCb06JoPWIdDpTNSGGcAtaD9mLP0aYGA0OS0j7j7DHJR0GTFrUZPUU6loZhbsVZgTh0N+Qdnw== +"@babel/plugin-transform-named-capturing-groups-regex@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz#78b4d978810b6f3bcf03f9e318f2fc0ed41aecb6" + integrity sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.8.3" + "@babel/helper-create-regexp-features-plugin" "^7.10.4" -"@babel/plugin-transform-new-target@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.1.tgz#6ee41a5e648da7632e22b6fb54012e87f612f324" - integrity sha512-MBlzPc1nJvbmO9rPr1fQwXOM2iGut+JC92ku6PbiJMMK7SnQc1rytgpopveE3Evn47gzvGYeCdgfCDbZo0ecUw== +"@babel/plugin-transform-new-target@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz#9097d753cb7b024cb7381a3b2e52e9513a9c6888" + integrity sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-object-super@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.1.tgz#2e3016b0adbf262983bf0d5121d676a5ed9c4fde" - integrity sha512-WnnStUDN5GL+wGQrJylrnnVlFhFmeArINIR9gjhSeYyvroGhBrSAXYg/RHsnfzmsa+onJrTJrEClPzgNmmQ4Gw== +"@babel/plugin-transform-object-super@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz#d7146c4d139433e7a6526f888c667e314a093894" + integrity sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-replace-supers" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-replace-supers" "^7.10.4" -"@babel/plugin-transform-parameters@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.1.tgz#b25938a3c5fae0354144a720b07b32766f683ddd" - integrity sha512-tJ1T0n6g4dXMsL45YsSzzSDZCxiHXAQp/qHrucOq5gEHncTA3xDxnd5+sZcoQp+N1ZbieAaB8r/VUCG0gqseOg== +"@babel/plugin-transform-parameters@^7.10.4": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.5.tgz#59d339d58d0b1950435f4043e74e2510005e2c4a" + integrity sha512-xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw== dependencies: - "@babel/helper-get-function-arity" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-get-function-arity" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-property-literals@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.1.tgz#cffc7315219230ed81dc53e4625bf86815b6050d" - integrity sha512-Kr6+mgag8auNrgEpbfIWzdXYOvqDHZOF0+Bx2xh4H2EDNwcbRb9lY6nkZg8oSjsX+DH9Ebxm9hOqtKW+gRDeNA== +"@babel/plugin-transform-property-literals@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz#f6fe54b6590352298785b83edd815d214c42e3c0" + integrity sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-regenerator@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.1.tgz#10e175cbe7bdb63cc9b39f9b3f823c5c7c5c5490" - integrity sha512-B3+Y2prScgJ2Bh/2l9LJxKbb8C8kRfsG4AdPT+n7ixBHIxJaIG8bi8tgjxUMege1+WqSJ+7gu1YeoMVO3gPWzw== +"@babel/plugin-transform-regenerator@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz#2015e59d839074e76838de2159db421966fd8b63" + integrity sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw== dependencies: regenerator-transform "^0.14.2" -"@babel/plugin-transform-reserved-words@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.1.tgz#0fc1027312b4d1c3276a57890c8ae3bcc0b64a86" - integrity sha512-qN1OMoE2nuqSPmpTqEM7OvJ1FkMEV+BjVeZZm9V9mq/x1JLKQ4pcv8riZJMNN3u2AUGl0ouOMjRr2siecvHqUQ== +"@babel/plugin-transform-reserved-words@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz#8f2682bcdcef9ed327e1b0861585d7013f8a54dd" + integrity sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-shorthand-properties@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.1.tgz#e8b54f238a1ccbae482c4dce946180ae7b3143f3" - integrity sha512-AR0E/lZMfLstScFwztApGeyTHJ5u3JUKMjneqRItWeEqDdHWZwAOKycvQNCasCK/3r5YXsuNG25funcJDu7Y2g== +"@babel/plugin-transform-shorthand-properties@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz#9fd25ec5cdd555bb7f473e5e6ee1c971eede4dd6" + integrity sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-spread@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.10.1.tgz#0c6d618a0c4461a274418460a28c9ccf5239a7c8" - integrity sha512-8wTPym6edIrClW8FI2IoaePB91ETOtg36dOkj3bYcNe7aDMN2FXEoUa+WrmPc4xa1u2PQK46fUX2aCb+zo9rfw== +"@babel/plugin-transform-spread@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.10.4.tgz#4e2c85ea0d6abaee1b24dcfbbae426fe8d674cff" + integrity sha512-1e/51G/Ni+7uH5gktbWv+eCED9pP8ZpRhZB3jOaI3mmzfvJTWHkuyYTv0Z5PYtyM+Tr2Ccr9kUdQxn60fI5WuQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-sticky-regex@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.1.tgz#90fc89b7526228bed9842cff3588270a7a393b00" - integrity sha512-j17ojftKjrL7ufX8ajKvwRilwqTok4q+BjkknmQw9VNHnItTyMP5anPFzxFJdCQs7clLcWpCV3ma+6qZWLnGMA== +"@babel/plugin-transform-sticky-regex@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz#8f3889ee8657581130a29d9cc91d7c73b7c4a28d" + integrity sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-regex" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-regex" "^7.10.4" -"@babel/plugin-transform-template-literals@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.1.tgz#914c7b7f4752c570ea00553b4284dad8070e8628" - integrity sha512-t7B/3MQf5M1T9hPCRG28DNGZUuxAuDqLYS03rJrIk2prj/UV7Z6FOneijhQhnv/Xa039vidXeVbvjK2SK5f7Gg== +"@babel/plugin-transform-template-literals@^7.10.4": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.5.tgz#78bc5d626a6642db3312d9d0f001f5e7639fde8c" + integrity sha512-V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw== dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-annotate-as-pure" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-typeof-symbol@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.1.tgz#60c0239b69965d166b80a84de7315c1bc7e0bb0e" - integrity sha512-qX8KZcmbvA23zDi+lk9s6hC1FM7jgLHYIjuLgULgc8QtYnmB3tAVIYkNoKRQ75qWBeyzcoMoK8ZQmogGtC/w0g== +"@babel/plugin-transform-typeof-symbol@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz#9509f1a7eec31c4edbffe137c16cc33ff0bc5bfc" + integrity sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-unicode-escapes@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.1.tgz#add0f8483dab60570d9e03cecef6c023aa8c9940" - integrity sha512-zZ0Poh/yy1d4jeDWpx/mNwbKJVwUYJX73q+gyh4bwtG0/iUlzdEu0sLMda8yuDFS6LBQlT/ST1SJAR6zYwXWgw== +"@babel/plugin-transform-unicode-escapes@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz#feae523391c7651ddac115dae0a9d06857892007" + integrity sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg== dependencies: - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-unicode-regex@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.1.tgz#6b58f2aea7b68df37ac5025d9c88752443a6b43f" - integrity sha512-Y/2a2W299k0VIUdbqYm9X2qS6fE0CUBhhiPpimK6byy7OJ/kORLlIX+J6UrjgNu5awvs62k+6RSslxhcvVw2Tw== +"@babel/plugin-transform-unicode-regex@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz#e56d71f9282fac6db09c82742055576d5e6d80a8" + integrity sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" + "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/preset-env@^7.6.2": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.10.2.tgz#715930f2cf8573b0928005ee562bed52fb65fdfb" - integrity sha512-MjqhX0RZaEgK/KueRzh+3yPSk30oqDKJ5HP5tqTSB1e2gzGS3PLy7K0BIpnp78+0anFuSwOeuCf1zZO7RzRvEA== + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.10.4.tgz#fbf57f9a803afd97f4f32e4f798bb62e4b2bef5f" + integrity sha512-tcmuQ6vupfMZPrLrc38d0sF2OjLT3/bZ0dry5HchNCQbrokoQi4reXqclvkkAT5b+gWc23meVWpve5P/7+w/zw== dependencies: - "@babel/compat-data" "^7.10.1" - "@babel/helper-compilation-targets" "^7.10.2" - "@babel/helper-module-imports" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-proposal-async-generator-functions" "^7.10.1" - "@babel/plugin-proposal-class-properties" "^7.10.1" - "@babel/plugin-proposal-dynamic-import" "^7.10.1" - "@babel/plugin-proposal-json-strings" "^7.10.1" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.10.1" - "@babel/plugin-proposal-numeric-separator" "^7.10.1" - "@babel/plugin-proposal-object-rest-spread" "^7.10.1" - "@babel/plugin-proposal-optional-catch-binding" "^7.10.1" - "@babel/plugin-proposal-optional-chaining" "^7.10.1" - "@babel/plugin-proposal-private-methods" "^7.10.1" - "@babel/plugin-proposal-unicode-property-regex" "^7.10.1" + "@babel/compat-data" "^7.10.4" + "@babel/helper-compilation-targets" "^7.10.4" + "@babel/helper-module-imports" "^7.10.4" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-proposal-async-generator-functions" "^7.10.4" + "@babel/plugin-proposal-class-properties" "^7.10.4" + "@babel/plugin-proposal-dynamic-import" "^7.10.4" + "@babel/plugin-proposal-json-strings" "^7.10.4" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.10.4" + "@babel/plugin-proposal-numeric-separator" "^7.10.4" + "@babel/plugin-proposal-object-rest-spread" "^7.10.4" + "@babel/plugin-proposal-optional-catch-binding" "^7.10.4" + "@babel/plugin-proposal-optional-chaining" "^7.10.4" + "@babel/plugin-proposal-private-methods" "^7.10.4" + "@babel/plugin-proposal-unicode-property-regex" "^7.10.4" "@babel/plugin-syntax-async-generators" "^7.8.0" - "@babel/plugin-syntax-class-properties" "^7.10.1" + "@babel/plugin-syntax-class-properties" "^7.10.4" "@babel/plugin-syntax-dynamic-import" "^7.8.0" "@babel/plugin-syntax-json-strings" "^7.8.0" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" - "@babel/plugin-syntax-numeric-separator" "^7.10.1" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" "@babel/plugin-syntax-object-rest-spread" "^7.8.0" "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" "@babel/plugin-syntax-optional-chaining" "^7.8.0" - "@babel/plugin-syntax-top-level-await" "^7.10.1" - "@babel/plugin-transform-arrow-functions" "^7.10.1" - "@babel/plugin-transform-async-to-generator" "^7.10.1" - "@babel/plugin-transform-block-scoped-functions" "^7.10.1" - "@babel/plugin-transform-block-scoping" "^7.10.1" - "@babel/plugin-transform-classes" "^7.10.1" - "@babel/plugin-transform-computed-properties" "^7.10.1" - "@babel/plugin-transform-destructuring" "^7.10.1" - "@babel/plugin-transform-dotall-regex" "^7.10.1" - "@babel/plugin-transform-duplicate-keys" "^7.10.1" - "@babel/plugin-transform-exponentiation-operator" "^7.10.1" - "@babel/plugin-transform-for-of" "^7.10.1" - "@babel/plugin-transform-function-name" "^7.10.1" - "@babel/plugin-transform-literals" "^7.10.1" - "@babel/plugin-transform-member-expression-literals" "^7.10.1" - "@babel/plugin-transform-modules-amd" "^7.10.1" - "@babel/plugin-transform-modules-commonjs" "^7.10.1" - "@babel/plugin-transform-modules-systemjs" "^7.10.1" - "@babel/plugin-transform-modules-umd" "^7.10.1" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.8.3" - "@babel/plugin-transform-new-target" "^7.10.1" - "@babel/plugin-transform-object-super" "^7.10.1" - "@babel/plugin-transform-parameters" "^7.10.1" - "@babel/plugin-transform-property-literals" "^7.10.1" - "@babel/plugin-transform-regenerator" "^7.10.1" - "@babel/plugin-transform-reserved-words" "^7.10.1" - "@babel/plugin-transform-shorthand-properties" "^7.10.1" - "@babel/plugin-transform-spread" "^7.10.1" - "@babel/plugin-transform-sticky-regex" "^7.10.1" - "@babel/plugin-transform-template-literals" "^7.10.1" - "@babel/plugin-transform-typeof-symbol" "^7.10.1" - "@babel/plugin-transform-unicode-escapes" "^7.10.1" - "@babel/plugin-transform-unicode-regex" "^7.10.1" + "@babel/plugin-syntax-top-level-await" "^7.10.4" + "@babel/plugin-transform-arrow-functions" "^7.10.4" + "@babel/plugin-transform-async-to-generator" "^7.10.4" + "@babel/plugin-transform-block-scoped-functions" "^7.10.4" + "@babel/plugin-transform-block-scoping" "^7.10.4" + "@babel/plugin-transform-classes" "^7.10.4" + "@babel/plugin-transform-computed-properties" "^7.10.4" + "@babel/plugin-transform-destructuring" "^7.10.4" + "@babel/plugin-transform-dotall-regex" "^7.10.4" + "@babel/plugin-transform-duplicate-keys" "^7.10.4" + "@babel/plugin-transform-exponentiation-operator" "^7.10.4" + "@babel/plugin-transform-for-of" "^7.10.4" + "@babel/plugin-transform-function-name" "^7.10.4" + "@babel/plugin-transform-literals" "^7.10.4" + "@babel/plugin-transform-member-expression-literals" "^7.10.4" + "@babel/plugin-transform-modules-amd" "^7.10.4" + "@babel/plugin-transform-modules-commonjs" "^7.10.4" + "@babel/plugin-transform-modules-systemjs" "^7.10.4" + "@babel/plugin-transform-modules-umd" "^7.10.4" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.10.4" + "@babel/plugin-transform-new-target" "^7.10.4" + "@babel/plugin-transform-object-super" "^7.10.4" + "@babel/plugin-transform-parameters" "^7.10.4" + "@babel/plugin-transform-property-literals" "^7.10.4" + "@babel/plugin-transform-regenerator" "^7.10.4" + "@babel/plugin-transform-reserved-words" "^7.10.4" + "@babel/plugin-transform-shorthand-properties" "^7.10.4" + "@babel/plugin-transform-spread" "^7.10.4" + "@babel/plugin-transform-sticky-regex" "^7.10.4" + "@babel/plugin-transform-template-literals" "^7.10.4" + "@babel/plugin-transform-typeof-symbol" "^7.10.4" + "@babel/plugin-transform-unicode-escapes" "^7.10.4" + "@babel/plugin-transform-unicode-regex" "^7.10.4" "@babel/preset-modules" "^0.1.3" - "@babel/types" "^7.10.2" + "@babel/types" "^7.10.4" browserslist "^4.12.0" core-js-compat "^3.6.2" invariant "^2.2.2" @@ -763,54 +761,53 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/runtime-corejs3@^7.8.3": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.10.2.tgz#3511797ddf9a3d6f3ce46b99cc835184817eaa4e" - integrity sha512-+a2M/u7r15o3dV1NEizr9bRi+KUVnrs/qYxF0Z06DAPx/4VCWaz1WA7EcbE+uqGgt39lp5akWGmHsTseIkHkHg== - dependencies: - core-js-pure "^3.0.0" - regenerator-runtime "^0.13.4" - "@babel/runtime@^7.8.4": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.10.2.tgz#d103f21f2602497d38348a32e008637d506db839" - integrity sha512-6sF3uQw2ivImfVIl62RZ7MXhO2tap69WeWK57vAaimT6AZbE4FbqjdEJIN1UqoD6wI6B+1n9UiagafH1sxjOtg== + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.10.5.tgz#303d8bd440ecd5a491eae6117fd3367698674c5c" + integrity sha512-otddXKhdNn7d0ptoFRHtMLa8LqDxLYwTjB4nYgM1yy5N6gU/MUf8zqyyLltCH3yAVitBzmwK4us+DD0l/MauAg== dependencies: regenerator-runtime "^0.13.4" -"@babel/template@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.1.tgz#e167154a94cb5f14b28dc58f5356d2162f539811" - integrity sha512-OQDg6SqvFSsc9A0ej6SKINWrpJiNonRIniYondK2ViKhB06i3c0s+76XUft71iqBEe9S1OKsHwPAjfHnuvnCig== +"@babel/template@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.4.tgz#3251996c4200ebc71d1a8fc405fba940f36ba278" + integrity sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA== dependencies: - "@babel/code-frame" "^7.10.1" - "@babel/parser" "^7.10.1" - "@babel/types" "^7.10.1" + "@babel/code-frame" "^7.10.4" + "@babel/parser" "^7.10.4" + "@babel/types" "^7.10.4" -"@babel/traverse@^7.10.1", "@babel/traverse@^7.7.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.10.1.tgz#bbcef3031e4152a6c0b50147f4958df54ca0dd27" - integrity sha512-C/cTuXeKt85K+p08jN6vMDz8vSV0vZcI0wmQ36o6mjbuo++kPMdpOYw23W2XH04dbRt9/nMEfA4W3eR21CD+TQ== +"@babel/traverse@^7.10.4", "@babel/traverse@^7.10.5", "@babel/traverse@^7.7.0": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.10.5.tgz#77ce464f5b258be265af618d8fddf0536f20b564" + integrity sha512-yc/fyv2gUjPqzTz0WHeRJH2pv7jA9kA7mBX2tXl/x5iOE81uaVPuGPtaYk7wmkx4b67mQ7NqI8rmT2pF47KYKQ== dependencies: - "@babel/code-frame" "^7.10.1" - "@babel/generator" "^7.10.1" - "@babel/helper-function-name" "^7.10.1" - "@babel/helper-split-export-declaration" "^7.10.1" - "@babel/parser" "^7.10.1" - "@babel/types" "^7.10.1" + "@babel/code-frame" "^7.10.4" + "@babel/generator" "^7.10.5" + "@babel/helper-function-name" "^7.10.4" + "@babel/helper-split-export-declaration" "^7.10.4" + "@babel/parser" "^7.10.5" + "@babel/types" "^7.10.5" debug "^4.1.0" globals "^11.1.0" - lodash "^4.17.13" + lodash "^4.17.19" -"@babel/types@^7", "@babel/types@^7.10.1", "@babel/types@^7.10.2", "@babel/types@^7.4.4", "@babel/types@^7.7.0": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.2.tgz#30283be31cad0dbf6fb00bd40641ca0ea675172d" - integrity sha512-AD3AwWBSz0AWF0AkCN9VPiWrvldXq+/e3cHa4J89vo4ymjz1XwrBFFVZmkJTsQIPNk+ZVomPSXUJqq8yyjZsng== +"@babel/types@^7", "@babel/types@^7.10.4", "@babel/types@^7.10.5", "@babel/types@^7.4.4", "@babel/types@^7.7.0": + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.5.tgz#d88ae7e2fde86bfbfe851d4d81afa70a997b5d15" + integrity sha512-ixV66KWfCI6GKoA/2H9v6bQdbfXEwwpOdQ8cRvb4F+eyvhlaHxWFMQB4+3d9QFJXZsiiiqVrewNV0DFEQpyT4Q== dependencies: - "@babel/helper-validator-identifier" "^7.10.1" - lodash "^4.17.13" + "@babel/helper-validator-identifier" "^7.10.4" + lodash "^4.17.19" to-fast-properties "^2.0.0" +"@npmcli/move-file@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.0.1.tgz#de103070dac0f48ce49cf6693c23af59c0f70464" + integrity sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw== + dependencies: + mkdirp "^1.0.4" + "@types/color-name@^1.1.1": version "1.1.1" resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" @@ -995,16 +992,16 @@ acorn-jsx@^5.2.0: integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ== acorn-walk@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.1.1.tgz#345f0dffad5c735e7373d2fec9a1023e6a44b83e" - integrity sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ== + version "7.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== acorn@^6.4.1: version "6.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474" integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA== -acorn@^7.1.1: +acorn@^7.1.1, acorn@^7.2.0: version "7.3.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd" integrity sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA== @@ -1023,14 +1020,14 @@ ajv-errors@^1.0.0: integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.1.tgz#ef916e271c64ac12171fd8384eaae6b2345854da" - integrity sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ== + version "3.5.1" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.1.tgz#b83ca89c5d42d69031f424cad49aada0236c6957" + integrity sha512-KWcq3xN8fDjSB+IMoh2VaXVhRI0BBGxoYp3rx7Pkb6z0cFjYR9Q9l4yZqqals0/zsioCmocC5H6UvsGD4MoIBA== ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2: - version "6.12.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz#c629c5eced17baf314437918d2da88c99d5958cd" - integrity sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ== + version "6.12.3" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.3.tgz#18c5af38a111ddeb4f2697bd78d68abc1cabd706" + integrity sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA== dependencies: fast-deep-equal "^3.1.1" fast-json-stable-stringify "^2.0.0" @@ -1042,12 +1039,10 @@ alphanum-sort@^1.0.0: resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= -ansi-escapes@^4.2.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" - integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA== - dependencies: - type-fest "^0.11.0" +ansi-colors@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== ansi-regex@^4.1.0: version "4.1.0" @@ -1141,6 +1136,15 @@ array-unique@^0.3.2: resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= +array.prototype.flatmap@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.3.tgz#1c13f84a178566042dd63de4414440db9222e443" + integrity sha512-OOEk+lkePcg+ODXIpvuU9PAryCikCJyo7GlDG1upleEpQRx6mzL9puEBkozQ5iAx20KV0l3DbyQwqciJtqe5Pg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + function-bind "^1.1.1" + asn1.js@^4.0.0: version "4.10.1" resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" @@ -1287,9 +1291,9 @@ binary-extensions@^1.0.0: integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== binary-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" - integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== + version "2.1.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9" + integrity sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ== bindings@^1.5.0: version "1.5.0" @@ -1432,14 +1436,14 @@ browserify-zlib@^0.2.0: pako "~1.0.5" browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.8.5: - version "4.12.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.12.0.tgz#06c6d5715a1ede6c51fc39ff67fd647f740b656d" - integrity sha512-UH2GkcEDSI0k/lRkuDSzFl9ZZ87skSy9w2XAn1MsZnL+4c4rqbBd3e82UWHbYDpztABrPBhZsTEeuxVfHppqDg== + version "4.13.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.13.0.tgz#42556cba011e1b0a2775b611cba6a8eca18e940d" + integrity sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ== dependencies: - caniuse-lite "^1.0.30001043" - electron-to-chromium "^1.3.413" - node-releases "^1.1.53" - pkg-up "^2.0.0" + caniuse-lite "^1.0.30001093" + electron-to-chromium "^1.3.488" + escalade "^3.0.1" + node-releases "^1.1.58" buffer-from@^1.0.0: version "1.1.1" @@ -1491,28 +1495,27 @@ cacache@^12.0.2: unique-filename "^1.1.1" y18n "^4.0.0" -cacache@^13.0.1: - version "13.0.1" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-13.0.1.tgz#a8000c21697089082f85287a1aec6e382024a71c" - integrity sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w== +cacache@^15.0.4: + version "15.0.5" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.0.5.tgz#69162833da29170d6732334643c60e005f5f17d0" + integrity sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A== dependencies: - chownr "^1.1.2" - figgy-pudding "^3.5.1" + "@npmcli/move-file" "^1.0.1" + chownr "^2.0.0" fs-minipass "^2.0.0" glob "^7.1.4" - graceful-fs "^4.2.2" infer-owner "^1.0.4" - lru-cache "^5.1.1" - minipass "^3.0.0" + lru-cache "^6.0.0" + minipass "^3.1.1" minipass-collect "^1.0.2" minipass-flush "^1.0.5" minipass-pipeline "^1.2.2" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - p-map "^3.0.0" + mkdirp "^1.0.3" + p-map "^4.0.0" promise-inflight "^1.0.1" - rimraf "^2.7.1" - ssri "^7.0.0" + rimraf "^3.0.2" + ssri "^8.0.0" + tar "^6.0.2" unique-filename "^1.1.1" cache-base@^1.0.1: @@ -1569,12 +1572,12 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001043: - version "1.0.30001083" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001083.tgz#52410c20c6f029f604f0d45eca0439a82e712442" - integrity sha512-CnYJ27awX4h7yj5glfK7r1TOI13LBytpLzEgfj0s4mY75/F8pnQcYjL+oVpmS38FB59+vU0gscQ9D8tc+lIXvA== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001093: + version "1.0.30001100" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001100.tgz#2a58615e0c01cf716ab349b20ca4d86ef944aa4e" + integrity sha512-0eYdp1+wFCnMlCj2oudciuQn2B9xAFq3WpgpcBIZTxk/1HNA/O2YA7rpeYhnOqsqAJq1AHUgx6i1jtafg7m2zA== -chalk@2.4.2, chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -1583,19 +1586,14 @@ chalk@2.4.2, chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" - integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== +chalk@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== dependencies: ansi-styles "^4.1.0" supports-color "^7.1.0" -chardet@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - check-types@^8.0.3: version "8.0.3" resolved "https://registry.yarnpkg.com/check-types/-/check-types-8.0.3.tgz#3356cca19c889544f2d7a95ed49ce508a0ecf552" @@ -1635,11 +1633,16 @@ chokidar@^2.1.8: optionalDependencies: fsevents "^1.2.7" -chownr@^1.1.1, chownr@^1.1.2: +chownr@^1.1.1: version "1.1.4" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + chrome-trace-event@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" @@ -1670,18 +1673,6 @@ clean-stack@^2.0.0: resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== -cli-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" - integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== - dependencies: - restore-cursor "^3.1.0" - -cli-width@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" - integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== - cliui@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" @@ -1691,15 +1682,6 @@ cliui@^5.0.0: strip-ansi "^5.2.0" wrap-ansi "^5.1.0" -clone-deep@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" - integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== - dependencies: - is-plain-object "^2.0.4" - kind-of "^6.0.2" - shallow-clone "^3.0.0" - coa@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" @@ -1851,11 +1833,6 @@ core-js-compat@^3.6.2: browserslist "^4.8.5" semver "7.0.0" -core-js-pure@^3.0.0: - version "3.6.5" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.6.5.tgz#c79e75f5e38dbc85a662d91eea52b8256d53b813" - integrity sha512-lacdXOimsiD0QyNf9BC/mxivNJ/ybBGJXQFKzRekp1WTHoVUWsUHEn+2T8GJAzzIhyOuXA+gOxCVN3l+5PLPUA== - core-js@^3.2.1: version "3.6.5" resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.6.5.tgz#7395dc273af37fb2e50e9bd3d9fe841285231d1a" @@ -1907,7 +1884,7 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: safe-buffer "^5.0.1" sha.js "^2.4.8" -cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: +cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== @@ -1918,6 +1895,15 @@ cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" +cross-spawn@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + crypto-browserify@^3.11.0: version "3.12.0" resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" @@ -2112,7 +2098,7 @@ decode-uri-component@^0.2.0: resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= -deep-is@~0.1.3: +deep-is@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= @@ -2223,9 +2209,9 @@ domelementtype@^2.0.1: integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== dompurify@^2.0.11: - version "2.0.11" - resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.0.11.tgz#cd47935774230c5e478b183a572e726300b3891d" - integrity sha512-qVoGPjIW9IqxRij7klDQQ2j6nSe4UNWANBhZNLnsS7ScTtLb+3YdxkRY8brNTpkUiTtcXsCJO+jS0UCDfenLuA== + version "2.0.12" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.0.12.tgz#284a2b041e1c60b8e72d7b4d2fadad36141254ae" + integrity sha512-Fl8KseK1imyhErHypFPA8qpq9gPzlsJ/EukA6yk9o0gX23p1TzC+rh9LqNg1qvErRTc0UNMYlKxEGSfSh43NDg== domutils@^1.7.0: version "1.7.0" @@ -2267,15 +2253,15 @@ ejs@^2.6.1: resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.4.tgz#48661287573dcc53e366c7a1ae52c3a120eec9ba" integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA== -electron-to-chromium@^1.3.413: - version "1.3.473" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.473.tgz#d0cd5fe391046fb70674ec98149f0f97609d29b8" - integrity sha512-smevlzzMNz3vMz6OLeeCq5HRWEj2AcgccNPYnAx4Usx0IOciq9DU36RJcICcS09hXoY7t7deRfVYKD14IrGb9A== +electron-to-chromium@^1.3.488: + version "1.3.498" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.498.tgz#fd7188c8a49d6d0b5df1df55a1f1a4bf2c177457" + integrity sha512-W1hGwaQEU8j9su2jeAr3aabkPuuXw+j8t73eajGAkEJWbfWiwbxBwQN/8Qmv2qCy3uCDm2rOAaZneYQM8VGC4w== elliptic@^6.0.0, elliptic@^6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.2.tgz#05c5678d7173c049d8ca433552224a495d0e3762" - integrity sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw== + version "6.5.3" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.3.tgz#cb59eb2efdaf73a0bd78ccd7015a62ad6e0f93d6" + integrity sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw== dependencies: bn.js "^4.4.0" brorand "^1.0.1" @@ -2290,16 +2276,6 @@ emoji-regex@^7.0.1: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= - emojis-list@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" @@ -2317,24 +2293,22 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0: dependencies: once "^1.4.0" -enhanced-resolve@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" - integrity sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.4.0" - tapable "^1.0.0" - -enhanced-resolve@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz#2937e2b8066cd0fe7ce0990a98f0d71a35189f66" - integrity sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA== +enhanced-resolve@^4.1.0, enhanced-resolve@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz#3b806f3bfafc1ec7de69551ef93cca46c1704126" + integrity sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ== dependencies: graceful-fs "^4.1.2" memory-fs "^0.5.0" tapable "^1.0.0" +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + entities@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f" @@ -2355,21 +2329,21 @@ error-ex@^1.3.1: is-arrayish "^0.2.1" es-abstract@^1.17.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.4, es-abstract@^1.17.5: - version "1.17.5" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.5.tgz#d8c9d1d66c8981fb9200e2251d799eee92774ae9" - integrity sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg== + version "1.17.6" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a" + integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw== dependencies: es-to-primitive "^1.2.1" function-bind "^1.1.1" has "^1.0.3" has-symbols "^1.0.1" - is-callable "^1.1.5" - is-regex "^1.0.5" + is-callable "^1.2.0" + is-regex "^1.1.0" object-inspect "^1.7.0" object-keys "^1.1.1" object.assign "^4.1.0" - string.prototype.trimleft "^2.1.1" - string.prototype.trimright "^2.1.1" + string.prototype.trimend "^1.0.1" + string.prototype.trimstart "^1.0.1" es-to-primitive@^1.2.1: version "1.2.1" @@ -2385,6 +2359,11 @@ es6-object-assign@^1.1.0: resolved "https://registry.yarnpkg.com/es6-object-assign/-/es6-object-assign-1.1.0.tgz#c2c3582656247c39ea107cb1e6652b6f9f24523c" integrity sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw= +escalade@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.0.2.tgz#6a580d70edb87880f22b4c91d0d56078df6962c4" + integrity sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ== + escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" @@ -2396,21 +2375,21 @@ escape-string-regexp@^1.0.5: integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= eslint-plugin-react@^7.17.0: - version "7.20.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.20.0.tgz#f98712f0a5e57dfd3e5542ef0604b8739cd47be3" - integrity sha512-rqe1abd0vxMjmbPngo4NaYxTcR3Y4Hrmc/jg4T+sYz63yqlmJRknpEQfmWY+eDWPuMmix6iUIK+mv0zExjeLgA== + version "7.20.3" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.20.3.tgz#0590525e7eb83890ce71f73c2cf836284ad8c2f1" + integrity sha512-txbo090buDeyV0ugF3YMWrzLIUqpYTsWSDZV9xLSmExE1P/Kmgg9++PD931r+KEWS66O1c9R4srLVVHmeHpoAg== dependencies: array-includes "^3.1.1" + array.prototype.flatmap "^1.2.3" doctrine "^2.1.0" has "^1.0.3" - jsx-ast-utils "^2.2.3" - object.entries "^1.1.1" + jsx-ast-utils "^2.4.1" + object.entries "^1.1.2" object.fromentries "^2.0.2" object.values "^1.1.1" prop-types "^15.7.2" - resolve "^1.15.1" + resolve "^1.17.0" string.prototype.matchall "^4.0.2" - xregexp "^4.3.0" eslint-scope@^4.0.3: version "4.0.3" @@ -2420,7 +2399,7 @@ eslint-scope@^4.0.3: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-scope@^5.0.0: +eslint-scope@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.0.tgz#d0f971dfe59c69e0cada684b23d49dbf82600ce5" integrity sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w== @@ -2428,34 +2407,35 @@ eslint-scope@^5.0.0: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-utils@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" - integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== +eslint-utils@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== dependencies: eslint-visitor-keys "^1.1.0" -eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.2.0.tgz#74415ac884874495f78ec2a97349525344c981fa" - integrity sha512-WFb4ihckKil6hu3Dp798xdzSfddwKKU3+nGniKF6HfeW6OLd2OUDEPP7TcHtB5+QXOKg2s6B2DaMPE1Nn/kxKQ== +eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.2.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint@^6.7.2: - version "6.8.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.8.0.tgz#62262d6729739f9275723824302fb227c8c93ffb" - integrity sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig== +eslint@^7.4.0: + version "7.4.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.4.0.tgz#4e35a2697e6c1972f9d6ef2b690ad319f80f206f" + integrity sha512-gU+lxhlPHu45H3JkEGgYhWhkR9wLHHEXC9FbWFnTlEkbKyZKWgWRLgf61E8zWmBuI6g5xKBph9ltg3NtZMVF8g== dependencies: "@babel/code-frame" "^7.0.0" ajv "^6.10.0" - chalk "^2.1.0" - cross-spawn "^6.0.5" + chalk "^4.0.0" + cross-spawn "^7.0.2" debug "^4.0.1" doctrine "^3.0.0" - eslint-scope "^5.0.0" - eslint-utils "^1.4.3" - eslint-visitor-keys "^1.1.0" - espree "^6.1.2" - esquery "^1.0.1" + enquirer "^2.3.5" + eslint-scope "^5.1.0" + eslint-utils "^2.0.0" + eslint-visitor-keys "^1.2.0" + espree "^7.1.0" + esquery "^1.2.0" esutils "^2.0.2" file-entry-cache "^5.0.1" functional-red-black-tree "^1.0.1" @@ -2464,40 +2444,38 @@ eslint@^6.7.2: ignore "^4.0.6" import-fresh "^3.0.0" imurmurhash "^0.1.4" - inquirer "^7.0.0" is-glob "^4.0.0" js-yaml "^3.13.1" json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" + levn "^0.4.1" lodash "^4.17.14" minimatch "^3.0.4" - mkdirp "^0.5.1" natural-compare "^1.4.0" - optionator "^0.8.3" + optionator "^0.9.1" progress "^2.0.0" - regexpp "^2.0.1" - semver "^6.1.2" - strip-ansi "^5.2.0" - strip-json-comments "^3.0.1" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" table "^5.2.3" text-table "^0.2.0" v8-compile-cache "^2.0.3" -espree@^6.1.2: - version "6.2.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-6.2.1.tgz#77fc72e1fd744a2052c20f38a5b575832e82734a" - integrity sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== +espree@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.1.0.tgz#a9c7f18a752056735bf1ba14cb1b70adc3a5ce1c" + integrity sha512-dcorZSyfmm4WTuTnE5Y7MEN1DyoPYy1ZR783QW1FJoenn7RailyWFsq/UL6ZAAA7uXurN9FIpYyUs3OfiIW+Qw== dependencies: - acorn "^7.1.1" + acorn "^7.2.0" acorn-jsx "^5.2.0" - eslint-visitor-keys "^1.1.0" + eslint-visitor-keys "^1.2.0" esprima@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.0.1: +esquery@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== @@ -2544,19 +2522,6 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: md5.js "^1.3.4" safe-buffer "^5.1.1" -execa@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== - dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - expand-brackets@^2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" @@ -2628,15 +2593,6 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -external-editor@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" - integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== - dependencies: - chardet "^0.7.0" - iconv-lite "^0.4.24" - tmp "^0.0.33" - extglob@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" @@ -2672,7 +2628,7 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@~2.0.6: +fast-levenshtein@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= @@ -2687,13 +2643,6 @@ figgy-pudding@^3.5.1: resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== -figures@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" - integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== - dependencies: - escape-string-regexp "^1.0.5" - file-entry-cache@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" @@ -2767,13 +2716,6 @@ find-cache-dir@^3.3.1: make-dir "^3.0.2" pkg-dir "^4.1.0" -find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - find-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" @@ -2789,7 +2731,7 @@ find-up@^4.0.0: locate-path "^5.0.0" path-exists "^4.0.0" -findup-sync@3.0.0: +findup-sync@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== @@ -2920,13 +2862,6 @@ get-caller-file@^2.0.1: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-stream@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" - get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -2959,13 +2894,6 @@ glob@^7.1.3, glob@^7.1.4: once "^1.3.0" path-is-absolute "^1.0.0" -global-modules@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" - integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== - dependencies: - global-prefix "^3.0.0" - global-modules@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" @@ -2975,6 +2903,13 @@ global-modules@^1.0.0: is-windows "^1.0.1" resolve-dir "^1.0.0" +global-modules@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" + integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== + dependencies: + global-prefix "^3.0.0" + global-prefix@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" @@ -3007,7 +2942,7 @@ globals@^12.1.0: dependencies: type-fest "^0.8.1" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.4" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== @@ -3163,7 +3098,7 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= -iconv-lite@0.4.24, iconv-lite@^0.4.24: +iconv-lite@0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -3208,7 +3143,7 @@ import-fresh@^3.0.0: parent-module "^1.0.0" resolve-from "^4.0.0" -import-local@2.0.0: +import-local@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== @@ -3283,25 +3218,6 @@ ini@^1.3.4, ini@^1.3.5: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== -inquirer@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.1.0.tgz#1298a01859883e17c7264b82870ae1034f92dd29" - integrity sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg== - dependencies: - ansi-escapes "^4.2.1" - chalk "^3.0.0" - cli-cursor "^3.1.0" - cli-width "^2.0.0" - external-editor "^3.0.3" - figures "^3.0.0" - lodash "^4.17.15" - mute-stream "0.0.8" - run-async "^2.4.0" - rxjs "^6.5.3" - string-width "^4.1.0" - strip-ansi "^6.0.0" - through "^2.3.6" - internal-slot@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.2.tgz#9c2e9fb3cd8e5e4256c6f45fe310067fcfa378a3" @@ -3311,10 +3227,10 @@ internal-slot@^1.0.2: has "^1.0.3" side-channel "^1.0.2" -interpret@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" - integrity sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw== +interpret@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" + integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== invariant@^2.2.2, invariant@^2.2.4: version "2.2.4" @@ -3323,11 +3239,6 @@ invariant@^2.2.2, invariant@^2.2.4: dependencies: loose-envify "^1.0.0" -invert-kv@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" - integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== - ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" @@ -3386,7 +3297,7 @@ is-buffer@^1.1.5: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-callable@^1.1.4, is-callable@^1.1.5: +is-callable@^1.1.4, is-callable@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.0.tgz#83336560b54a38e35e3a2df7afd0454d691468bb" integrity sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw== @@ -3472,11 +3383,6 @@ is-fullwidth-code-point@^2.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - is-generator-function@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.7.tgz#d2132e529bb0000a7f80794d4bdf5cd5e5813522" @@ -3532,7 +3438,7 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" -is-regex@^1.0.5: +is-regex@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.0.tgz#ece38e389e490df0dc21caea2bd596f987f767ff" integrity sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw== @@ -3544,11 +3450,6 @@ is-resolvable@^1.0.0: resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== -is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= - is-string@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6" @@ -3617,10 +3518,10 @@ isobject@^3.0.0, isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= -jest-worker@^25.4.0: - version "25.5.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-25.5.0.tgz#2611d071b79cea0f43ee57a3d118593ac1547db1" - integrity sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw== +jest-worker@^26.0.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.1.0.tgz#65d5641af74e08ccd561c240e7db61284f82f33d" + integrity sha512-Z9P5pZ6UC+kakMbNJn+tA2RdVdNX5WH1x+5UCBZ9MxIK24pjYtFt96fK+UwBTrjLYm232g1xz0L3eTh51OW+yQ== dependencies: merge-stream "^2.0.0" supports-color "^7.0.0" @@ -3684,7 +3585,7 @@ jsonfile@^4.0.0: optionalDependencies: graceful-fs "^4.1.6" -jsx-ast-utils@^2.2.3: +jsx-ast-utils@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.4.1.tgz#1114a4c1209481db06c690c2b4f488cc665f657e" integrity sha512-z1xSldJ6imESSzOjd3NNkieVJKRlKYSOtMG8SFyCj2FIrvSaSuli/WjpBkEzCBoR9bYYYFgqJw61Xhu7Lcgk+w== @@ -3716,6 +3617,11 @@ kind-of@^6.0.0, kind-of@^6.0.2: resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== +klona@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/klona/-/klona-1.1.2.tgz#a79e292518a5a5412ec8d097964bff1571a64db0" + integrity sha512-xf88rTeHiXk+XE2Vhi6yj8Wm3gMZrygGdKjJqN8HkV+PwF/t50/LdAKHoHpPcxFAlmQszTZ1CugrK25S7qDRLA== + last-call-webpack-plugin@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" @@ -3724,13 +3630,6 @@ last-call-webpack-plugin@^3.0.0: lodash "^4.17.5" webpack-sources "^1.1.0" -lcid@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" - integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== - dependencies: - invert-kv "^2.0.0" - leven@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" @@ -3743,28 +3642,19 @@ levenary@^1.1.1: dependencies: leven "^3.1.0" -levn@^0.3.0, levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" + prelude-ls "^1.2.1" + type-check "~0.4.0" loader-runner@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== -loader-utils@1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7" - integrity sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA== - dependencies: - big.js "^5.2.2" - emojis-list "^2.0.0" - json5 "^1.0.1" - loader-utils@^1.2.3, loader-utils@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" @@ -3788,14 +3678,6 @@ loadjs@^4.2.0: resolved "https://registry.yarnpkg.com/loadjs/-/loadjs-4.2.0.tgz#2a0336376397a6a43edf98c9ec3229ddd5abb6f6" integrity sha512-AgQGZisAlTPbTEzrHPb6q+NYBMD+DP9uvGSIjSUM5uG+0jG15cb8axWpxuOIqrmQjn6scaaH8JwloiP27b2KXA== -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - locate-path@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" @@ -3821,10 +3703,10 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.5: - version "4.17.15" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" - integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== +lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.5: + version "4.17.19" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" + integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== loose-envify@^1.0.0, loose-envify@^1.4.0: version "1.4.0" @@ -3840,6 +3722,13 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + make-dir@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -3855,7 +3744,7 @@ make-dir@^3.0.2: dependencies: semver "^6.0.0" -map-age-cleaner@^0.1.1, map-age-cleaner@^0.1.3: +map-age-cleaner@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== @@ -3875,9 +3764,9 @@ map-visit@^1.0.0: object-visit "^1.0.0" marked@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/marked/-/marked-1.1.0.tgz#62504ad4d11550c942935ccc5e39d64e5a4c4e50" - integrity sha512-EkE7RW6KcXfMHy2PA7Jg0YJE1l8UPEZE8k45tylzmZM30/r1M1MUXWQfJlrSbsTeh7m/XTwHbWUENvAJZpp1YA== + version "1.1.1" + resolved "https://registry.yarnpkg.com/marked/-/marked-1.1.1.tgz#e5d61b69842210d5df57b05856e0c91572703e6a" + integrity sha512-mJzT8D2yPxoPh7h0UXkB+dBj4FykPJ2OIfxAWeIHrvoHDkFxukV/29QxoFQoPM6RLEwhIFdJpmKBlqVM3s2ZIw== md5.js@^1.3.4: version "1.3.5" @@ -3903,15 +3792,6 @@ media-typer@0.3.0: resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= -mem@^4.0.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-4.3.0.tgz#461af497bc4ae09608cdb2e60eefb69bff744178" - integrity sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w== - dependencies: - map-age-cleaner "^0.1.1" - mimic-fn "^2.0.0" - p-is-promise "^2.0.0" - mem@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/mem/-/mem-6.1.0.tgz#846eca0bd4708a8f04b9c3f3cd769e194ae63c5c" @@ -3920,7 +3800,7 @@ mem@^6.0.1: map-age-cleaner "^0.1.3" mimic-fn "^3.0.0" -memory-fs@^0.4.0, memory-fs@^0.4.1: +memory-fs@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= @@ -3995,11 +3875,6 @@ mime@1.6.0: resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mimic-fn@^2.0.0, mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - mimic-fn@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-3.0.0.tgz#76044cfa8818bbf6999c5c9acadf2d3649b14b4b" @@ -4055,6 +3930,14 @@ minipass@^3.0.0, minipass@^3.1.1: dependencies: yallist "^4.0.0" +minizlib@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.0.tgz#fd52c645301ef09a63a2c209697c294c6ce02cf3" + integrity sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + mississippi@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" @@ -4086,6 +3969,11 @@ mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: dependencies: minimist "^1.2.5" +mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + move-concurrently@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" @@ -4113,11 +4001,6 @@ ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -mute-stream@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" - integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== - nan@^2.12.1: version "2.14.1" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" @@ -4151,9 +4034,9 @@ negotiator@0.6.2: integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== neo-async@^2.5.0, neo-async@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" - integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw== + version "2.6.2" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== nice-try@^1.0.4: version "1.0.5" @@ -4189,21 +4072,22 @@ node-libs-browser@^2.2.1: util "^0.11.0" vm-browserify "^1.0.1" -node-notifier@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-6.0.0.tgz#cea319e06baa16deec8ce5cd7f133c4a46b68e12" - integrity sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw== +node-notifier@7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-7.0.1.tgz#a355e33e6bebacef9bf8562689aed0f4230ca6f9" + integrity sha512-VkzhierE7DBmQEElhTGJIoiZa1oqRijOtgOlsXg32KrJRXsPy0NXFBqWGW/wTswnJlDCs5viRYaqWguqzsKcmg== dependencies: growly "^1.3.0" is-wsl "^2.1.1" - semver "^6.3.0" + semver "^7.2.1" shellwords "^0.1.1" - which "^1.3.1" + uuid "^7.0.3" + which "^2.0.2" -node-releases@^1.1.53: - version "1.1.58" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.58.tgz#8ee20eef30fa60e52755fcc0942def5a734fe935" - integrity sha512-NxBudgVKiRh/2aPWMgPR7bPTX0VPmGx5QBwCtdHitnqFE5/O8DeBXuIMH1nwNnw/aMo6AjOrpsHzfY3UbUJ7yg== +node-releases@^1.1.58: + version "1.1.59" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.59.tgz#4d648330641cec704bff10f8e4fe28e453ab8e8e" + integrity sha512-H3JrdUczbdiwxN5FuJPyCHnGHIFqQ0wWxo+9j1kAXAzqNMAHlo+4I/sYYxpyK0irQ73HgdiyzD32oqQDcU2Osw== normalize-path@^2.1.1: version "2.1.1" @@ -4232,13 +4116,6 @@ normalize-url@^3.0.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" - nth-check@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" @@ -4261,9 +4138,9 @@ object-copy@^0.1.0: kind-of "^3.0.3" object-inspect@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67" - integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw== + version "1.8.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0" + integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA== object-is@^1.0.1: version "1.1.2" @@ -4295,7 +4172,7 @@ object.assign@^4.1.0: has-symbols "^1.0.0" object-keys "^1.0.11" -object.entries@^1.1.1: +object.entries@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.2.tgz#bc73f00acb6b6bb16c203434b10f9a7e797d3add" integrity sha512-BQdB9qKmb/HyNdMNWVr7O3+z5MUIx3aiegEIJqjMBbBf0YT9RRxTJSim4mzFqtyr7PDAHigq0N9dO0m0tRakQA== @@ -4353,13 +4230,6 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" -onetime@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" - integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== - dependencies: - mimic-fn "^2.1.0" - opencollective-postinstall@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz#7a0fff978f6dbfa4d006238fbac98ed4198c3259" @@ -4378,72 +4248,41 @@ optimize-css-assets-webpack-plugin@^5.0.3: cssnano "^4.1.10" last-call-webpack-plugin "^3.0.0" -optionator@^0.8.3: - version "0.8.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" - integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.6" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - word-wrap "~1.2.3" + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" os-browserify@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= -os-locale@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" - integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== - dependencies: - execa "^1.0.0" - lcid "^2.0.0" - mem "^4.0.0" - -os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - p-defer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - -p-is-promise@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" - integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== - -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - -p-limit@^2.0.0, p-limit@^2.2.0, p-limit@^2.3.0: +p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== dependencies: p-try "^2.0.0" -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= +p-limit@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.0.2.tgz#1664e010af3cadc681baafd3e2a437be7b0fb5fe" + integrity sha512-iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg== dependencies: - p-limit "^1.1.0" + p-try "^2.0.0" p-locate@^3.0.0: version "3.0.0" @@ -4459,18 +4298,13 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" -p-map@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d" - integrity sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ== +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== dependencies: aggregate-error "^3.0.0" -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -4557,11 +4391,16 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-key@^2.0.0, path-key@^2.0.1: +path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + path-parse@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" @@ -4607,13 +4446,6 @@ pkg-dir@^4.1.0: dependencies: find-up "^4.0.0" -pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" - integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= - dependencies: - find-up "^2.1.0" - pkg-up@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" @@ -4943,21 +4775,16 @@ postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.2 source-map "^0.6.1" supports-color "^6.1.0" -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== prepend-http@^1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= -private@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== - process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -5171,12 +4998,11 @@ regenerator-runtime@^0.13.3, regenerator-runtime@^0.13.4: integrity sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA== regenerator-transform@^0.14.2: - version "0.14.4" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.4.tgz#5266857896518d1616a78a0479337a30ea974cc7" - integrity sha512-EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw== + version "0.14.5" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" + integrity sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== dependencies: "@babel/runtime" "^7.8.4" - private "^0.1.8" regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" @@ -5194,10 +5020,10 @@ regexp.prototype.flags@^1.3.0: define-properties "^1.1.3" es-abstract "^1.17.0-next.1" -regexpp@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" - integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== +regexpp@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" + integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== regexpu-core@^4.7.0: version "4.7.0" @@ -5278,21 +5104,13 @@ resolve-url@^0.2.1: resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= -resolve@^1.12.0, resolve@^1.15.1, resolve@^1.3.2: +resolve@^1.12.0, resolve@^1.17.0, resolve@^1.3.2: version "1.17.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== dependencies: path-parse "^1.0.6" -restore-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" - integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== - dependencies: - onetime "^5.1.0" - signal-exit "^3.0.2" - ret@~0.1.10: version "0.1.15" resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" @@ -5320,13 +5138,20 @@ rimraf@2.6.3: dependencies: glob "^7.1.3" -rimraf@^2.5.4, rimraf@^2.6.3, rimraf@^2.7.1: +rimraf@^2.5.4, rimraf@^2.6.3: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== dependencies: glob "^7.1.3" +rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + ripemd160@^2.0.0, ripemd160@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" @@ -5335,11 +5160,6 @@ ripemd160@^2.0.0, ripemd160@^2.0.1: hash-base "^3.0.0" inherits "^2.0.1" -run-async@^2.4.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" - integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== - run-queue@^1.0.0, run-queue@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" @@ -5347,13 +5167,6 @@ run-queue@^1.0.0, run-queue@^1.0.3: dependencies: aproba "^1.1.1" -rxjs@^6.5.3: - version "6.5.5" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.5.tgz#c5c884e3094c8cfee31bf27eb87e54ccfc87f9ec" - integrity sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ== - dependencies: - tslib "^1.9.0" - safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" @@ -5376,21 +5189,21 @@ safe-regex@^1.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sass-loader@^8.0.0: - version "8.0.2" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-8.0.2.tgz#debecd8c3ce243c76454f2e8290482150380090d" - integrity sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ== +sass-loader@^9.0.2: + version "9.0.2" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-9.0.2.tgz#847c9b4c95328ddc8c7d35cf28c9d6e54e59a90b" + integrity sha512-nphcum3jNI442njnrZ5wJgSNX5lfEOHOKHCLf+PrTIaleploKqAMUuT9CVKjf+lyi6c2MCGPHh1vb9nGsjnZJA== dependencies: - clone-deep "^4.0.1" - loader-utils "^1.2.3" + klona "^1.1.1" + loader-utils "^2.0.0" neo-async "^2.6.1" - schema-utils "^2.6.1" - semver "^6.3.0" + schema-utils "^2.7.0" + semver "^7.3.2" sass@^1.22.12: - version "1.26.8" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.26.8.tgz#312652530721f9568d4c4000b0db07ec6eb23325" - integrity sha512-yvtzyrKLGiXQu7H12ekXqsfoGT/aTKeMDyVzCB675k1HYuaj0py63i8Uf4SI9CHXj6apDhpfwbUr3gGOjdpu2Q== + version "1.26.10" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.26.10.tgz#851d126021cdc93decbf201d1eca2a20ee434760" + integrity sha512-bzN0uvmzfsTvjz0qwccN1sPm2HxxpNI/Xa+7PlUEMS+nQvbyuEK7Y0qFqxlPHhiNHb1Ze8WQJtU31olMObkAMw== dependencies: chokidar ">=2.0.0 <4.0.0" @@ -5408,7 +5221,7 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.6.1, schema-utils@^2.6.5, schema-utils@^2.6.6, schema-utils@^2.7.0: +schema-utils@^2.6.5, schema-utils@^2.6.6, schema-utils@^2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7" integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== @@ -5427,11 +5240,16 @@ semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^6.0.0, semver@^6.1.2, semver@^6.3.0: +semver@^6.0.0, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +semver@^7.2.1, semver@^7.3.2: + version "7.3.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" + integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== + send@0.17.1: version "0.17.1" resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" @@ -5458,6 +5276,13 @@ serialize-javascript@^3.1.0: dependencies: randombytes "^2.1.0" +serialize-javascript@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" + integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw== + dependencies: + randombytes "^2.1.0" + serve-static@1.14.1: version "1.14.1" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" @@ -5501,13 +5326,6 @@ sha.js@^2.4.0, sha.js@^2.4.8: inherits "^2.0.1" safe-buffer "^5.0.1" -shallow-clone@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" - integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== - dependencies: - kind-of "^6.0.2" - shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" @@ -5515,11 +5333,23 @@ shebang-command@^1.2.0: dependencies: shebang-regex "^1.0.0" +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + shebang-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + shellwords@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" @@ -5533,11 +5363,6 @@ side-channel@^1.0.2: es-abstract "^1.17.0-next.1" object-inspect "^1.7.0" -signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" - integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== - simple-swizzle@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" @@ -5654,12 +5479,11 @@ ssri@^6.0.1: dependencies: figgy-pudding "^3.5.1" -ssri@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-7.1.0.tgz#92c241bf6de82365b5c7fb4bd76e975522e1294d" - integrity sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g== +ssri@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.0.tgz#79ca74e21f8ceaeddfcb4b90143c458b8d988808" + integrity sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA== dependencies: - figgy-pudding "^3.5.1" minipass "^3.1.1" stable@^0.1.8: @@ -5733,15 +5557,6 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" -string-width@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" - integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" - string.prototype.matchall@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.2.tgz#48bb510326fb9fdeb6a33ceaa81a6ea04ef7648e" @@ -5754,7 +5569,7 @@ string.prototype.matchall@^4.0.2: regexp.prototype.flags "^1.3.0" side-channel "^1.0.2" -string.prototype.trimend@^1.0.0: +string.prototype.trimend@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913" integrity sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g== @@ -5762,25 +5577,7 @@ string.prototype.trimend@^1.0.0: define-properties "^1.1.3" es-abstract "^1.17.5" -string.prototype.trimleft@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz#4408aa2e5d6ddd0c9a80739b087fbc067c03b3cc" - integrity sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - string.prototype.trimstart "^1.0.0" - -string.prototype.trimright@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz#c76f1cef30f21bbad8afeb8db1511496cfb0f2a3" - integrity sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - string.prototype.trimend "^1.0.0" - -string.prototype.trimstart@^1.0.0: +string.prototype.trimstart@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54" integrity sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw== @@ -5816,15 +5613,10 @@ strip-ansi@^6.0.0: dependencies: ansi-regex "^5.0.0" -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= - -strip-json-comments@^3.0.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.0.tgz#7638d31422129ecf4457440009fba03f9f9ac180" - integrity sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w== +strip-json-comments@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== style-loader@^1.0.0: version "1.2.1" @@ -5843,13 +5635,6 @@ stylehacks@^4.0.0: postcss "^7.0.0" postcss-selector-parser "^3.0.0" -supports-color@6.1.0, supports-color@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" - integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== - dependencies: - has-flag "^3.0.0" - supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -5857,6 +5642,13 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" +supports-color@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" + integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== + dependencies: + has-flag "^3.0.0" + supports-color@^7.0.0, supports-color@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" @@ -5898,6 +5690,18 @@ tapable@^1.0.0, tapable@^1.1.3: resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== +tar@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.0.2.tgz#5df17813468a6264ff14f766886c622b84ae2f39" + integrity sha512-Glo3jkRtPcvpDlAs/0+hozav78yoXKFr+c4wgw62NNMO3oo4AaJdCo21Uu7lcwr55h39W2XD1LMERc64wtbItg== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^3.0.0" + minizlib "^2.1.0" + mkdirp "^1.0.3" + yallist "^4.0.0" + terser-webpack-plugin@^1.4.3: version "1.4.4" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz#2c63544347324baafa9a56baaddf1634c8abfc2f" @@ -5913,25 +5717,25 @@ terser-webpack-plugin@^1.4.3: webpack-sources "^1.4.0" worker-farm "^1.7.0" -terser-webpack-plugin@^2.1.0: - version "2.3.7" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.3.7.tgz#4910ff5d1a872168cc7fa6cd3749e2b0d60a8a0b" - integrity sha512-xzYyaHUNhzgaAdBsXxk2Yvo/x1NJdslUaussK3fdpBbvttm1iIwU+c26dj9UxJcwk2c5UWt5F55MUTIA8BE7Dg== +terser-webpack-plugin@^3.0.6: + version "3.0.6" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-3.0.6.tgz#db0a108bbdd3680d72c9b491fbabad09ba207b99" + integrity sha512-z3HLOOPUHkCNGkeEHqqiMAIy1pjpHwS1o+i6Zn0Ws3EAvHJj46737efNNEvJ0Vx9BdDQM83d56qySDJOSORA0A== dependencies: - cacache "^13.0.1" + cacache "^15.0.4" find-cache-dir "^3.3.1" - jest-worker "^25.4.0" - p-limit "^2.3.0" + jest-worker "^26.0.0" + p-limit "^3.0.1" schema-utils "^2.6.6" - serialize-javascript "^3.1.0" + serialize-javascript "^4.0.0" source-map "^0.6.1" - terser "^4.6.12" + terser "^4.8.0" webpack-sources "^1.4.3" -terser@^4.1.2, terser@^4.6.12: - version "4.7.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.7.0.tgz#15852cf1a08e3256a80428e865a2fa893ffba006" - integrity sha512-Lfb0RiZcjRDXCC3OSHJpEkxJ9Qeqs6mp2v4jf2MHfy8vGERmVDuvjXdd/EnP5Deme5F2yBRBymKmKHCBg2echw== +terser@^4.1.2, terser@^4.8.0: + version "4.8.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" + integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw== dependencies: commander "^2.20.0" source-map "~0.6.1" @@ -5950,11 +5754,6 @@ through2@^2.0.0: readable-stream "~2.3.6" xtend "~4.0.1" -through@^2.3.6: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= - timers-browserify@^2.0.4: version "2.0.11" resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f" @@ -5967,13 +5766,6 @@ timsort@^0.3.0: resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - to-arraybuffer@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" @@ -6036,17 +5828,12 @@ tty-browserify@0.0.0: resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== dependencies: - prelude-ls "~1.1.2" - -type-fest@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" - integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== + prelude-ls "^1.2.1" type-fest@^0.7.1: version "0.7.1" @@ -6236,12 +6023,12 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= -v8-compile-cache@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz#00f7494d2ae2b688cfe2899df6ed2c54bef91dbe" - integrity sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w== +uuid@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-7.0.3.tgz#c5c9f2c8cf25dc0a372c4df1441c41f5bd0c680b" + integrity sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg== -v8-compile-cache@^2.0.3: +v8-compile-cache@^2.0.3, v8-compile-cache@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745" integrity sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ== @@ -6280,12 +6067,12 @@ watchpack@^1.6.1: watchpack-chokidar2 "^2.0.0" webpack-build-notifier@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/webpack-build-notifier/-/webpack-build-notifier-2.0.1.tgz#4ca07ae27b0addb971e76a89c7c9f5e3b5288e3c" - integrity sha512-WBNKQmkixDdW0AyiYyRXMJIgQL5UxXxpwCELfO1mi3yVrQ9ZkzbN9ceSIEPjqQGr6wON3ndhCsq2/3ij/tR5cQ== + version "2.1.0" + resolved "https://registry.yarnpkg.com/webpack-build-notifier/-/webpack-build-notifier-2.1.0.tgz#fb20adbfa0b1bbbc44c616519605b2b53afff1a2" + integrity sha512-szOijap/Ztk99ghCYFtxNOPOwVoJcczaL7UNAt5+WBgYtyEUPd/ZzC45zvOZick9Y83g81eINrB/208XvAHc+w== dependencies: - node-notifier "6.0.0" - strip-ansi "^5.2.0" + node-notifier "7.0.1" + strip-ansi "^6.0.0" webpack-bundle-analyzer@^3.5.1: version "3.8.0" @@ -6307,21 +6094,21 @@ webpack-bundle-analyzer@^3.5.1: ws "^6.0.0" webpack-cli@^3.3.9: - version "3.3.11" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.11.tgz#3bf21889bf597b5d82c38f215135a411edfdc631" - integrity sha512-dXlfuml7xvAFwYUPsrtQAA9e4DOe58gnzSxhgrO/ZM/gyXTBowrsYeubyN4mqGhYdpXMFNyQ6emjJS9M7OBd4g== + version "3.3.12" + resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.12.tgz#94e9ada081453cd0aa609c99e500012fd3ad2d4a" + integrity sha512-NVWBaz9k839ZH/sinurM+HcDvJOTXwSjYp1ku+5XKeOC03z8v5QitnK/x+lAxGXFyhdayoIf/GOpv85z3/xPag== dependencies: - chalk "2.4.2" - cross-spawn "6.0.5" - enhanced-resolve "4.1.0" - findup-sync "3.0.0" - global-modules "2.0.0" - import-local "2.0.0" - interpret "1.2.0" - loader-utils "1.2.3" - supports-color "6.1.0" - v8-compile-cache "2.0.3" - yargs "13.2.4" + chalk "^2.4.2" + cross-spawn "^6.0.5" + enhanced-resolve "^4.1.1" + findup-sync "^3.0.0" + global-modules "^2.0.0" + import-local "^2.0.0" + interpret "^1.4.0" + loader-utils "^1.4.0" + supports-color "^6.1.0" + v8-compile-cache "^2.1.1" + yargs "^13.3.2" webpack-external-import@^2.2.4: version "2.2.4" @@ -6397,7 +6184,14 @@ which@^1.2.14, which@^1.2.9, which@^1.3.1: dependencies: isexe "^2.0.0" -word-wrap@~1.2.3: +which@^2.0.1, which@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +word-wrap@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== @@ -6438,16 +6232,9 @@ ws@^6.0.0: async-limiter "~1.0.0" ws@^7.1.2: - version "7.3.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.0.tgz#4b2f7f219b3d3737bc1a2fbf145d825b94d38ffd" - integrity sha512-iFtXzngZVXPGgpTlP1rBqsUK82p9tKqsWRPg5L56egiljujJT3vGAYnHANvFxBieXrTFavhzhxW52jnaWV+w2w== - -xregexp@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.3.0.tgz#7e92e73d9174a99a59743f67a4ce879a04b5ae50" - integrity sha512-7jXDIFXh5yJ/orPn4SXjuVrWWoi4Cr8jfV1eHv9CixKSbU+jY4mxfrBwAuDvupPNKpMUY+FeIqsVw/JLT9+B8g== - dependencies: - "@babel/runtime-corejs3" "^7.8.3" + version "7.3.1" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.1.tgz#d0547bf67f7ce4f12a72dfe31262c68d7dc551c8" + integrity sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA== xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" @@ -6469,7 +6256,7 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yargs-parser@^13.1.0: +yargs-parser@^13.1.2: version "13.1.2" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== @@ -6477,19 +6264,18 @@ yargs-parser@^13.1.0: camelcase "^5.0.0" decamelize "^1.2.0" -yargs@13.2.4: - version "13.2.4" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.4.tgz#0b562b794016eb9651b98bd37acf364aa5d6dc83" - integrity sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg== +yargs@^13.3.2: + version "13.3.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" + integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== dependencies: cliui "^5.0.0" find-up "^3.0.0" get-caller-file "^2.0.1" - os-locale "^3.1.0" require-directory "^2.1.1" require-main-filename "^2.0.0" set-blocking "^2.0.0" string-width "^3.0.0" which-module "^2.0.0" y18n "^4.0.0" - yargs-parser "^13.1.0" + yargs-parser "^13.1.2"