3GPP-5GC-API / dist /index.html
ShawnAI's picture
Update dist/index.html
ca49b1a
raw
history blame
10.5 kB
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="description" content="SwaggerUI" />
<title>3GPP 5GC SBI OpenAPI</title>
<link rel="stylesheet" href="https://unpkg.com/[email protected]/swagger-ui.css" />
<style>
#swagger-ui {
padding: 10px;
margin: 0;
width: 100vw;
position: relative;
}
ul {
margin-top: 0.4em;
margin-bottom: 0;
}
h5 {
margin-top: 1em;
margin-bottom: 0;
}
/* table of contents */
#toc {
background-color: white;
z-index: 2;
/* width: 250px; */
position: fixed;
/* border: solid; */
}
#toc nav {
display: none;
overflow: auto;
padding-right: 1em;
height: calc(100vh - 48px);
}
#toc.active nav {
display: block;
}
#release-select {
z-index: 2;
position: relative;
float: right;
}
</style>
</head>
<body>
<select id="release-select" onchange="update(currentFile)">
<option value="Rel-18">Rel-18</option>
<option value="Rel-17">Rel-17</option>
<option value="Rel-16">Rel-16</option>
<option value="Rel-15">Rel-15</option>
</select>
<div id="toc">
<label><b>☰ 5GC NF List</b></label>
<nav class="toc">
<h5>AMF 29.518</h5>
<ul class="compact toc ulBare ulEmpty">
<li><a href="#" onclick="update('TS29518_Namf_Communication.yaml')">
Communication</a></li>
<li><a href="#" onclick="update('TS29518_Namf_EventExposure.yaml')">
Event Exposure</a></li>
<li><a href="#" onclick="update('TS29518_Namf_Location.yaml')">
Location</a></li>
<li><a href="#" onclick="update('TS29518_Namf_MT.yaml')">
MT</a></li>
<li><a href="#" onclick="update('TS29518_Namf_MBSCommunication.yaml')">
MBS Communication</a></li>
<li><a href="#" onclick="update('TS29518_Namf_MBSBroadcast.yaml')">
MBS Broadcast</a></li>
</ul>
<h5>SMF 29.502/508/542</h5>
<ul>
<li><a href="#" onclick="update('TS29502_Nsmf_PDUSession.yaml')">
PDU Session</a></li>
<li><a href="#" onclick="update('TS29508_Nsmf_EventExposure.yaml')">
Event Exposure</a></li>
<li><a href="#" onclick="update('TS29542_Nsmf_NIDD.yaml')">
NIDD</a></li>
</ul>
<h5>NRF 29.510</h5>
<ul>
<li><a href="#" onclick="update('TS29510_Nnrf_NFManagement.yaml')">
NF Management</a></li>
<li><a href="#" onclick="update('TS29510_Nnrf_NFDiscovery.yaml')">
NF Discovery</a></li>
<li><a href="#" onclick="update('TS29510_Nnrf_AccessToken.yaml')">
OAuth2</a></li>
<li><a href="#" onclick="update('TS29510_Nnrf_Bootstrapping.yaml')">
Bootstrapping</a></li>
</ul>
<h5>UDM 29.503</h5>
<ul>
<li><a href="#" onclick="update('TS29503_Nudm_SDM.yaml')">
SDM</a></li>
<li><a href="#" onclick="update('TS29503_Nudm_UECM.yaml')">
UECM</a></li>
<li><a href="#" onclick="update('TS29503_Nudm_UEAU.yaml')">
UE Authentication</a></li>
<li><a href="#" onclick="update('TS29503_Nudm_EE.yaml')">
Event Exposure</a></li>
<li><a href="#" onclick="update('TS29503_Nudm_PP.yaml')">
Parameter Provisioning</a></li>
<li><a href="#" onclick="update('TS29503_Nudm_NIDDAU.yaml')">
NIDD Authorization</a></li>
<li><a href="#" onclick="update('TS29503_Nudm_MT.yaml')">
MT</a></li>
<li><a href="#" onclick="update('TS29503_Nudm_SSAU.yaml')">
Service-Specific Authorization</a></li>
<li><a href="#" onclick="update('TS29503_Nudm_RSDS.yaml')">
RSDS</a></li>
<li><a href="#" onclick="update('TS29503_Nudm_UEID.yaml')">
UEID</a></li>
</ul>
<h5>NSSF 29.531</h5>
<ul>
<li><a href="#" onclick="update('TS29531_Nnssf_NSSAIAvailability.yaml')">
NSSAI Availability</a></li>
<li><a href="#" onclick="update('TS29531_Nnssf_NSSelection.yaml')">
NS Selection</a></li>
</ul>
<h5>LMF 29.572</h5>
<ul>
<li><a href="#" onclick="update('TS29572_Nlmf_Location.yaml')">
Location</a></li>
<li><a href="#" onclick="update('TS29572_Nlmf_Broadcast.yaml')">
Broadcast</a></li>
</ul>
<h5>AUSF 29.509</h5>
<ul>
<li><a href="#" onclick="update('TS29509_Nausf_UEAuthentication.yaml')">
UE Authentication</a></li>
<li><a href="#" onclick="update('TS29509_Nausf_SoRProtection.yaml')">
SoR Protection </a></li>
<li><a href="#" onclick="update('TS29509_Nausf_UPUProtection.yaml')">
UPU Protection </a></li>
</ul>
<h5>SMSF 29.540</h5>
<ul>
<li><a href="#" onclick="update('TS29540_Nsmsf_SMService.yaml')">
SM Service</a></li>
</ul>
<h5>PCF 29.514/534/507/512/554/525/537</h5>
<ul>
<li><a href="#" onclick="update('TS29514_Npcf_PolicyAuthorization.yaml')">
Policy Authorization</a></li>
<li><a href="#" onclick="update('TS29534_Npcf_AMPolicyAuthorization.yaml')">
AM Policy Authorization</a></li>
<li><a href="#" onclick="update('TS29507_Npcf_AMPolicyControl.yaml')">
AM Policy Control</a></li>
<li><a href="#" onclick="update('TS29512_Npcf_SMPolicyControl.yaml')">
SM Policy Control</a></li>
<li><a href="#" onclick="update('TS29554_Npcf_BDTPolicyControl.yaml')">
BDT Policy Control</a></li>
<li><a href="#" onclick="update('TS29523_Npcf_EventExposure.yaml')">
Event Exposure</a></li>
<li><a href="#" onclick="update('TS29525_Npcf_UEPolicyControl.yaml')">
UE Policy Control</a></li>
<li><a href="#" onclick="update('TS29537_Npcf_MBSPolicyControl.yaml')">
MBS Policy Control </a></li>
<li><a href="#" onclick="update('TS29537_Npcf_MBSPolicyAuthorization.yaml')">
MBS Policy Authorization</a></li>
</ul>
<h5>NSSAAF 29.526</h5>
<ul>
<li><a href="#" onclick="update('TS29526_Nnssaaf_NSSAA.yaml')">
NSSAA</a></li>
<li><a href="#" onclick="update('TS29526_Nnssaaf_AIW.yaml')">
AIW</a></li>
</ul>
<br></br>
</nav>
<!-- Add more API links here -->
</div>
<div id="swagger-ui"></div>
<script src="https://unpkg.com/[email protected]/swagger-ui-bundle.js" crossorigin></script>
<script>
let currentRelease = 'Rel-18';
let currentFile = 'TS29518_Namf_Communication.yaml';
function update(updatedFile) {
const selectElement = document.getElementById('release-select');
currentRelease = selectElement.value;
currentFile = updatedFile;
load(currentRelease, currentFile); // Load the corresponding file for the selected release
}
function load(loadRelease, loadFile) {
console.log('Load: ', loadRelease, loadFile, window.location.href);
window.ui = SwaggerUIBundle({
url: loadRelease + '/' + loadFile,
dom_id: '#swagger-ui'
});
}
window.onload = () => {
update(currentFile);
};
const toc = document.getElementById("toc");
const swagger = document.getElementById("swagger-ui");
toc.querySelector("label").addEventListener("click", e => {
toc.classList.toggle("active");
});
toc.querySelector("nav").addEventListener("click", e => {
toc.classList.remove("active");
});
swagger.addEventListener("click", e => {
toc.classList.remove("active");
});
</script>
</body>
</html>