92 lines
3.1 KiB
HTML
92 lines
3.1 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<title>KnowledgeBase</title>
|
|
{{template "views/partials/header"}}
|
|
<script src="https://unpkg.com/htmx.org"></script>
|
|
<script src="https://unpkg.com/htmx.org/dist/ext/sse.js"></script>
|
|
<script src="https://unpkg.com/hyperscript.org@0.9.12"></script>
|
|
<style>
|
|
.section-box {
|
|
background-color: #2a2a2a; /* Darker background for the form */
|
|
padding: 20px;
|
|
margin-bottom: 20px;
|
|
border-radius: 10px;
|
|
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
|
|
}
|
|
|
|
body {
|
|
background-color: #1a1a1a; /* Lighter overall background */
|
|
color: #ffffff;
|
|
font-family: sans-serif;
|
|
padding: 20px;
|
|
}
|
|
|
|
input, button {
|
|
width: 100%;
|
|
padding: 10px;
|
|
margin-top: 5px;
|
|
border-radius: 5px;
|
|
border: none;
|
|
}
|
|
|
|
input[type="text"], input[type="file"] {
|
|
background-color: #333333;
|
|
color: white;
|
|
}
|
|
|
|
button {
|
|
background-color: #4a76a8; /* Blue color for buttons */
|
|
color: white;
|
|
cursor: pointer;
|
|
}
|
|
|
|
button:hover {
|
|
background-color: #5a86b8;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
{{template "views/partials/menu"}}
|
|
<header class="text-center mb-8">
|
|
<h1 class="text-3xl md:text-5xl font-bold">Knowledgebase (items: {{.KnowledgebaseItemsCount}})</h1>
|
|
</header>
|
|
<div class="max-w-4xl mx-auto">
|
|
<!-- Add Site Form -->
|
|
<div class="section-box">
|
|
<form action="/knowledgebase" method="POST">
|
|
<h2>Add sites to KB</h2>
|
|
<label for="url">URL:</label>
|
|
<input type="text" name="url" id="url" placeholder="Enter URL here">
|
|
<label for="chunk_size">Chunk size:</label>
|
|
<input type="text" name="chunk_size" id="chunk_size" placeholder="Enter chunk size here">
|
|
<button type="submit">Add Site</button>
|
|
</form>
|
|
</div>
|
|
|
|
<!-- File Upload Form -->
|
|
<div class="section-box">
|
|
<form id='form' hx-encoding='multipart/form-data' hx-post='/knowledgebase/upload'>
|
|
<h2>Upload File</h2>
|
|
<label for="file">File:</label>
|
|
<input type='file' name='file' id='file'>
|
|
<label for="chunk_size">Chunk size:</label>
|
|
<input type="text" name="chunk_size" id="chunk_size" placeholder="Enter chunk size here">
|
|
<button type="submit">Upload File</button>
|
|
<progress id='progress' value='0' max='100'></progress>
|
|
</form>
|
|
</div>
|
|
|
|
<!-- Reset Knowledge Base -->
|
|
<div class="section-box">
|
|
<button hx-swap="none" hx-trigger="click" hx-delete="/knowledgebase/reset">Reset Knowledge Base</button>
|
|
</div>
|
|
</div>
|
|
<script>
|
|
htmx.on('#form', 'htmx:xhr:progress', function(evt) {
|
|
htmx.find('#progress').setAttribute('value', evt.detail.loaded / evt.detail.total * 100);
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|