v0.0.1-alpha.5
Added tooltip UI which shows the status of each Mojang service. Updated dependencies.
This commit is contained in:
@@ -16,34 +16,40 @@ const minecraftAgent = {
|
||||
const authpath = 'https://authserver.mojang.com'
|
||||
const statuses = [
|
||||
{
|
||||
service: 'minecraft.net',
|
||||
service: 'sessionserver.mojang.com',
|
||||
status: 'grey',
|
||||
name: 'Minecraft.net'
|
||||
},
|
||||
{
|
||||
service: 'api.mojang.com',
|
||||
status: 'grey',
|
||||
name: 'Public API'
|
||||
},
|
||||
{
|
||||
service: 'textures.minecraft.net',
|
||||
status: 'grey',
|
||||
name: 'Minecraft Skins'
|
||||
name: 'Multiplayer Session Service',
|
||||
essential: true
|
||||
},
|
||||
{
|
||||
service: 'authserver.mojang.com',
|
||||
status: 'grey',
|
||||
name: 'Authentication Service'
|
||||
name: 'Authentication Service',
|
||||
essential: true
|
||||
},
|
||||
{
|
||||
service: 'sessionserver.mojang.com',
|
||||
service: 'textures.minecraft.net',
|
||||
status: 'grey',
|
||||
name: 'Multiplayer Session Service'
|
||||
name: 'Minecraft Skins',
|
||||
essential: false
|
||||
},
|
||||
{
|
||||
service: 'api.mojang.com',
|
||||
status: 'grey',
|
||||
name: 'Public API',
|
||||
essential: false
|
||||
},
|
||||
{
|
||||
service: 'minecraft.net',
|
||||
status: 'grey',
|
||||
name: 'Minecraft.net',
|
||||
essential: false
|
||||
},
|
||||
{
|
||||
service: 'account.mojang.com',
|
||||
status: 'grey',
|
||||
name: 'Mojang accounts website'
|
||||
name: 'Mojang Accounts Website',
|
||||
essential: false
|
||||
}
|
||||
]
|
||||
|
||||
|
||||
@@ -141,27 +141,52 @@ server_selection_button.addEventListener('click', (e) => {
|
||||
// Update Mojang Status Color
|
||||
const refreshMojangStatuses = async function(){
|
||||
console.log('Refreshing Mojang Statuses..')
|
||||
|
||||
let status = 'grey'
|
||||
let tooltipEssentialHTML = ``
|
||||
let tooltipNonEssentialHTML = ``
|
||||
|
||||
try {
|
||||
const statuses = await Mojang.status()
|
||||
greenCount = 0
|
||||
|
||||
for(let i=0; i<statuses.length; i++){
|
||||
if(statuses[i].status === 'yellow' && status !== 'red'){
|
||||
const service = statuses[i]
|
||||
|
||||
if(service.essential){
|
||||
tooltipEssentialHTML += `<div class="mojangStatusContainer">
|
||||
<span class="mojangStatusIcon" style="color: ${Mojang.statusToHex(service.status)};">•</span>
|
||||
<span class="mojangStatusName">${service.name}</span>
|
||||
</div>`
|
||||
} else {
|
||||
tooltipNonEssentialHTML += `<div class="mojangStatusContainer">
|
||||
<span class="mojangStatusIcon" style="color: ${Mojang.statusToHex(service.status)};">•</span>
|
||||
<span class="mojangStatusName">${service.name}</span>
|
||||
</div>`
|
||||
}
|
||||
|
||||
if(service.status === 'yellow' && status !== 'red'){
|
||||
status = 'yellow'
|
||||
continue
|
||||
} else if(statuses[i].status === 'red'){
|
||||
} else if(service.status === 'red'){
|
||||
status = 'red'
|
||||
break
|
||||
}
|
||||
|
||||
++greenCount
|
||||
}
|
||||
|
||||
if(greenCount == statuses.length){
|
||||
status = 'green'
|
||||
}
|
||||
|
||||
} catch (err) {
|
||||
console.warn('Unable to refresh Mojang service status.')
|
||||
console.debug(err)
|
||||
}
|
||||
|
||||
document.getElementById('mojangStatusEssentialContainer').innerHTML = tooltipEssentialHTML
|
||||
document.getElementById('mojangStatusNonEssentialContainer').innerHTML = tooltipNonEssentialHTML
|
||||
document.getElementById('mojang_status_icon').style.color = Mojang.statusToHex(status)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user