04/26 Fixed HIBP issue 2

This commit is contained in:
2026-04-26 15:29:28 -04:00
parent f2bc51e1c6
commit e8f57df2df
2 changed files with 29 additions and 15 deletions
+1 -1
View File
@@ -8,7 +8,7 @@
/>
<meta
http-equiv="Content-Security-Policy"
content="default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self' data:; font-src 'self'; connect-src 'self' https://api.pwnedpasswords.com; frame-ancestors 'none';"
content="default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self' data:; font-src 'self'; connect-src 'self' https://api.pwnedpasswords.com;"
/>
<meta name="csrf-token" content="{{ csrf_token() }}" />
<title>{% block title %}PassKeeper{% endblock %}</title>
+28 -14
View File
@@ -127,7 +127,6 @@
id="sidebar-import-export"
data-view="import-export"
data-tooltip="Import / Export"
onclick="Vault.switchToImportExport()"
>
<span class="sidebar-icon">📤</span>
<span class="sidebar-label">Import / Export</span>
@@ -282,18 +281,21 @@
<h2 class="vault-title">Import / Export</h2>
</header>
<div class="panel-body">
<!-- Export -->
<section class="import-export-section">
<h3 class="import-export-heading">Export Vault</h3>
<p class="import-export-desc">
Download an encrypted backup of your entire vault. The file contains
AES-256-GCM ciphertext — your master password is required to read it.
Keep it safe.
AES-256-GCM ciphertext — your master password is required to read
it. Keep it safe.
</p>
<div class="import-export-row">
<button class="btn-primary" id="btn-export-json">Download encrypted JSON</button>
<button class="btn-secondary" id="btn-export-csv">Download CSV (plaintext — handle with care)</button>
<button class="btn-primary" id="btn-export-json">
Download encrypted JSON
</button>
<button class="btn-secondary" id="btn-export-csv">
Download CSV (plaintext — handle with care)
</button>
</div>
</section>
@@ -301,16 +303,26 @@
<section class="import-export-section">
<h3 class="import-export-heading">Import</h3>
<p class="import-export-desc">
Import from a PassKeeper encrypted JSON export, or from a CSV file exported
by Chrome, Bitwarden, or 1Password. Duplicates are not checked — review
your vault after importing.
Import from a PassKeeper encrypted JSON export, or from a CSV file
exported by Chrome, Bitwarden, or 1Password. Duplicates are not
checked — review your vault after importing.
</p>
<div class="import-export-row">
<label class="btn-secondary import-file-label" for="import-file-input">
<label
class="btn-secondary import-file-label"
for="import-file-input"
>
Choose file&hellip;
</label>
<input type="file" id="import-file-input" accept=".json,.csv" class="hidden" />
<span id="import-file-name" class="import-file-name">No file chosen</span>
<input
type="file"
id="import-file-input"
accept=".json,.csv"
class="hidden"
/>
<span id="import-file-name" class="import-file-name"
>No file chosen</span
>
</div>
<div id="import-preview" class="import-preview hidden"></div>
<div class="import-export-row">
@@ -320,7 +332,6 @@
</div>
<div id="import-result" class="import-result hidden"></div>
</section>
</div>
</div>
@@ -687,7 +698,10 @@
<option value="">— No folder —</option>
</select>
</div>
<div class="type-fields" data-for-types="password note card bank address ssn">
<div
class="type-fields"
data-for-types="password note card bank address ssn"
>
<div class="form-group">
<label for="field-tags">Tags</label>
<input