Use htmx to switch between settings tabs

This commit is contained in:
Peter Stockings
2025-12-01 09:31:10 +11:00
parent 5574fb3d24
commit 1402723a6e
2 changed files with 22 additions and 45 deletions

View File

@@ -5,12 +5,12 @@
<!-- Settings Navigation -->
<div class="mb-6 border-b border-gray-200 dark:border-gray-700">
<nav class="-mb-px flex space-x-8">
<a href="{{ url_for('settings.api_keys') }}"
class="border-b-2 border-transparent text-gray-500 hover:text-gray-700 hover:border-gray-300 dark:text-gray-400 dark:hover:text-gray-300 py-4 px-1 text-sm font-medium">
<a hx-get="{{ url_for('settings.api_keys') }}" hx-target="#container" hx-swap="innerHTML" hx-push-url="true"
class="border-b-2 border-transparent text-gray-500 hover:text-gray-700 hover:border-gray-300 dark:text-gray-400 dark:hover:text-gray-300 py-4 px-1 text-sm font-medium cursor-pointer">
API Keys
</a>
<a href="{{ url_for('settings.export') }}"
class="border-b-2 border-blue-500 text-blue-600 dark:text-blue-400 py-4 px-1 text-sm font-medium">
<a hx-get="{{ url_for('settings.export') }}" hx-target="#container" hx-swap="innerHTML" hx-push-url="true"
class="border-b-2 border-blue-500 text-blue-600 dark:text-blue-400 py-4 px-1 text-sm font-medium cursor-pointer">
Export Data
</a>
</nav>
@@ -24,7 +24,6 @@
<div class="bg-white dark:bg-gray-800 rounded-lg shadow p-6 mb-6">
<h2 class="text-lg font-semibold text-gray-900 dark:text-white mb-4">What's Included</h2>
<div class="grid grid-cols-1 md:grid-cols-2 gap-4 mb-6">
<div class="flex items-start space-x-3">
<svg class="w-5 h-5 text-green-500 mt-0.5" fill="currentColor" viewBox="0 0 20 20">
@@ -38,7 +37,6 @@
</p>
</div>
</div>
<div class="flex items-start space-x-3">
<svg class="w-5 h-5 text-green-500 mt-0.5" fill="currentColor" viewBox="0 0 20 20">
<path fill-rule="evenodd"
@@ -51,7 +49,6 @@
</p>
</div>
</div>
<div class="flex items-start space-x-3">
<svg class="w-5 h-5 text-green-500 mt-0.5" fill="currentColor" viewBox="0 0 20 20">
<path fill-rule="evenodd"
@@ -63,7 +60,6 @@
<p class="text-sm text-gray-600 dark:text-gray-400">Environment variables and configurations</p>
</div>
</div>
<div class="flex items-start space-x-3">
<svg class="w-5 h-5 text-green-500 mt-0.5" fill="currentColor" viewBox="0 0 20 20">
<path fill-rule="evenodd"
@@ -75,7 +71,6 @@
<p class="text-sm text-gray-600 dark:text-gray-400">API key names and scopes (keys are masked)</p>
</div>
</div>
<div class="flex items-start space-x-3">
<svg class="w-5 h-5 text-green-500 mt-0.5" fill="currentColor" viewBox="0 0 20 20">
<path fill-rule="evenodd"
@@ -87,7 +82,6 @@
<p class="text-sm text-gray-600 dark:text-gray-400">Last 100 invocations per function</p>
</div>
</div>
<div class="flex items-start space-x-3">
<svg class="w-5 h-5 text-green-500 mt-0.5" fill="currentColor" viewBox="0 0 20 20">
<path fill-rule="evenodd"
@@ -100,7 +94,6 @@
</div>
</div>
</div>
<div
class="bg-yellow-50 dark:bg-yellow-900/20 border border-yellow-200 dark:border-yellow-800 rounded-lg p-4 mb-6">
<div class="flex items-start space-x-3">
@@ -121,19 +114,17 @@
</div>
</div>
</div>
<div class="flex justify-center">
<a href="{{ url_for('settings.export', download='true') }}"
class="px-6 py-3 bg-blue-600 text-white font-medium rounded-lg hover:bg-blue-700 transition-colors flex items-center space-x-2">
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
d="M4 16v1a3 3 0 003 3h10a 3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4" />
d="M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4" />
</svg>
<span>Export My Data</span>
</a>
</div>
</div>
<div class="bg-gray-50 dark:bg-gray-900 rounded-lg p-4">
<h3 class="font-medium text-gray-900 dark:text-white mb-2">What to Do With Your Export</h3>
<ul class="text-sm text-gray-600 dark:text-gray-400 space-y-1">