Bun, Inferno->React migration (#22529)

Re-creation of https://github.com/Aurorastation/Aurora.3/pull/21046 to
skip merge conflict hell. Brings us modern TGUI.

**ALTERNATE TITLE: TGUI HELLSCAPE PR
ABANDON ALL HOPE YE WHO ENTER HERE**

- [x] Migrate build tools (javascript -> typescript, bun for package
management).
- [x] Upgrade all TGUI dependencies and associated root files to
TG-congruent versions (axios, babel, dompurify, eslint, highlight,
marked, prettier, sass, source-map, stacktrace-parser, typescript).
- [x] InfernoJS -> React migrations
- [x] React cleanup and polish (migrate all remaining .js files to
appropriate .ts or .tsx filetype, all remaining hooks, linting, error
corrections, etc.)
- [ ] Test all remaining TGUI interfaces
This commit is contained in:
Batrachophreno
2026-06-05 15:55:22 +02:00
committed by GitHub
parent a52729c105
commit 0d92359da7
930 changed files with 23130 additions and 50520 deletions
+16
View File
@@ -0,0 +1,16 @@
/// Stores information about a chat payload
/datum/chat_payload
/// Sequence number of this payload
var/sequence = 0
/// Message we are sending
var/list/content
/// Resend count
var/resends = 0
/// Converts the chat payload into a JSON string
/datum/chat_payload/proc/into_message()
return "{\"sequence\":[sequence],\"content\":[json_encode(content)]}"
/// Returns an HTML-encoded message from our contents.
/datum/chat_payload/proc/get_content_as_html()
return message_to_html(content)
-5
View File
@@ -47,11 +47,6 @@
lan = null
return lan
/datum/component/local_network_member/nano_host()
if(parent)
return parent.nano_host()
. = ..()
/datum/component/local_network_member/proc/get_new_tag(mob/user)
var/new_ident = input(user, "Enter a new ident tag.", "[parent]", id_tag) as null|text
if(new_ident && parent && user.Adjacent(parent) && CanInteract(user, GLOB.physical_state))
-1
View File
@@ -94,7 +94,6 @@
current.remove_vampire_powers()
current.mind = null
SSnanoui.user_transferred(current, new_character)
SStgui.on_transfer(current, new_character)
if(current.client && GLOB.ticket_panels[current.client])
var/datum/ticket_panel/tp = GLOB.ticket_panels[current.client]
+10 -3
View File
@@ -6,7 +6,8 @@
wires = list(
WIRE_POWER,
WIRE_IDSCAN, WIRE_AI,
WIRE_PANIC, WIRE_ALARM
WIRE_PANIC, WIRE_ALARM,
WIRE_RCON
)
add_duds(3)
..()
@@ -24,6 +25,7 @@
. += A.locked ? "The air alarm is locked." : "The air alarm is unlocked."
. += (A.shorted || (A.stat & (NOPOWER|BROKEN))) ? "The Air Alarm is offline." : "The Air Alarm is working properly!"
. += A.aidisabled ? "The 'AI control allowed' light is off." : "The 'AI control allowed' light is on."
. += A.rcon_setting ? "The remote control link is enabled." : "The remote control link is disabled."
/datum/wires/alarm/on_cut(wire, mend, source)
var/obj/structure/machinery/alarm/A = holder
@@ -51,6 +53,12 @@
A.post_alert(2)
A.update_icon()
if(WIRE_RCON)
if(!mend)
A.rcon_setting = FALSE
else
A.rcon_setting = TRUE
/datum/wires/alarm/on_pulse(wire)
var/obj/structure/machinery/alarm/A = holder
switch(wire)
@@ -67,7 +75,6 @@
A.shorted = 0
A.update_icon()
if (WIRE_AI)
if (A.aidisabled == 0)
A.aidisabled = 1
@@ -83,7 +90,7 @@
A.mode = 1 // AALARM_MODE_SCRUB
A.apply_mode()
if(WIRE_ALARM)
if(WIRE_ALARM, WIRE_RCON)
if (A.alarm_area.atmosalert(0, A))
A.post_alert(0)
A.update_icon()
+2 -2
View File
@@ -31,7 +31,7 @@
if(WIRE_TRANSMIT)
R.set_broadcasting(!R.get_broadcasting() && !is_cut(WIRE_SIGNAL))
SSnanoui.update_uis(holder)
SStgui.update_uis(holder)
/datum/wires/radio/on_cut(wire, mend, source)
var/obj/item/radio/R = holder
@@ -45,4 +45,4 @@
if(WIRE_TRANSMIT)
R.set_broadcasting(mend && !is_cut(WIRE_SIGNAL))
SSnanoui.update_uis(holder)
SStgui.update_uis(holder)