feat(database): integrate wizard into settings page, improve accessibility and test coverage
- Add "DB Wizard" link button to settings page header - Add help_link to database_url SETTING_METADATA pointing to /database-wizard - Add help_link rendering in settings template for any setting with a help_link - Fix SQLite whitespace path handling in build_connection_string - Add dark mode CSS overrides for wizard template - Add aria-describedby for all form inputs with help text - Add prefers-reduced-motion media query for smooth scrolling - Expand test coverage: 106 tests (up from 49) - db_wizard.py: 100% coverage - db_wizard view: 100% coverage - database.py API: 97.37% coverage - db_migrate.py: 96.60% coverage Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
This commit is contained in:
@@ -60,6 +60,10 @@
|
||||
class="inline-flex items-center px-3 py-2 border border-gray-300 text-sm font-medium rounded-md text-gray-700 bg-white hover:bg-gray-50">
|
||||
<i class="fas fa-magic mr-1.5" aria-hidden="true"></i> Wizard
|
||||
</a>
|
||||
<a href="/database-wizard"
|
||||
class="inline-flex items-center px-3 py-2 border border-gray-300 text-sm font-medium rounded-md text-gray-700 bg-white hover:bg-gray-50">
|
||||
<i class="fas fa-database mr-1.5" aria-hidden="true"></i> DB Wizard
|
||||
</a>
|
||||
<div class="relative" x-data="{ exportOpen: false }">
|
||||
<button @click="exportOpen = !exportOpen"
|
||||
class="inline-flex items-center px-3 py-2 border border-gray-300 text-sm font-medium rounded-md text-gray-700 bg-white hover:bg-gray-50">
|
||||
@@ -236,6 +240,14 @@
|
||||
</div>
|
||||
|
||||
<p class="text-xs text-gray-500 mb-2">{{ setting.metadata.description }}</p>
|
||||
{% if setting.metadata.get('help_link') %}
|
||||
<p class="text-xs mb-2">
|
||||
<a href="{{ setting.metadata.help_link }}"
|
||||
class="text-indigo-600 hover:underline focus:outline-none focus:ring-2 focus:ring-indigo-500 rounded">
|
||||
<i class="fas fa-external-link-alt mr-1" aria-hidden="true"></i>{{ setting.metadata.get('help_link_label', 'More info') }}
|
||||
</a>
|
||||
</p>
|
||||
{% endif %}
|
||||
|
||||
{% if setting.metadata.type == 'boolean' %}
|
||||
<!-- Boolean/Checkbox Input -->
|
||||
|
||||
Reference in New Issue
Block a user