- Split app.py into route blueprints (files, layers, images, polygon, mask, krita) - Create services layer (polygon_storage, comfyui, file_browser) - Extract config constants to config.py - Split templates into Jinja partials (base, components, modals) - Add browse dialog for visual file navigation - Add /api/browse endpoint for directory listing
24 lines
1.2 KiB
HTML
24 lines
1.2 KiB
HTML
<!-- Krita modal for ORA Editor -->
|
|
|
|
<div x-show="showKritaModal" @keydown.escape.window="closeKritaModal()"
|
|
class="fixed inset-0 z-50 flex items-center justify-center bg-black bg-opacity-75">
|
|
<div class="bg-gray-800 rounded-lg p-6 max-w-lg w-full mx-4 border border-gray-600">
|
|
<h2 class="text-xl font-bold mb-4">Open in Krita</h2>
|
|
|
|
<p class="text-gray-300 mb-4">File exported to:</p>
|
|
|
|
<div class="bg-gray-700 rounded p-3 mb-4 font-mono text-sm text-green-400 break-all" x-text="kritaTempPath"></div>
|
|
|
|
<p class="text-gray-400 text-sm mb-4">Copy the path and open it in Krita manually. Browsers cannot open local files directly.</p>
|
|
|
|
<div class="flex gap-4 justify-end">
|
|
<button
|
|
@click="copyKritaPath()"
|
|
:class="kritaPathCopied ? 'bg-green-600' : 'bg-blue-600 hover:bg-blue-700'"
|
|
class="px-4 py-2 rounded transition"
|
|
x-text="kritaPathCopied ? 'Copied!' : 'Copy Path'"
|
|
></button>
|
|
<button @click="closeKritaModal()" class="bg-gray-600 hover:bg-gray-500 px-4 py-2 rounded transition">Close</button>
|
|
</div>
|
|
</div>
|
|
</div> |