-
Locked 🔒
-
-
Stored locally
+
+
+
+
+
Active Storage
+
+ Locked 🔒
+
+
+
+
+
+
+ Provider
+ --
+
+
+ Bucket
+ --
+
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Enable Public Access in the Cloudflare dashboard to get your r2.dev URL.
+
-
-
-
Verification Failed
-
- Open Cloudflare Dashboard →
-
+
+
+
+
+
+
+
+
Create a bucket with this exact name in your storage provider.
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The public URL where your files will be accessible.
+
+
+
+
+
+
+
+
+
+
@@ -404,4 +429,4 @@
-
+
\ No newline at end of file
diff --git a/js/ui/components/UploadModal.js b/js/ui/components/UploadModal.js
index 645d4aee..98a525bd 100644
--- a/js/ui/components/UploadModal.js
+++ b/js/ui/components/UploadModal.js
@@ -36,6 +36,7 @@ export class UploadModal {
safeEncodeNpub,
eventTarget,
container,
+ onRequestStorageSettings,
} = {}) {
this.authService = authService || null;
this.r2Service = r2Service || null;
@@ -60,6 +61,7 @@ export class UploadModal {
this.eventTarget =
eventTarget instanceof EventTarget ? eventTarget : new EventTarget();
this.container = container || null;
+ this.onRequestStorageSettings = typeof onRequestStorageSettings === "function" ? onRequestStorageSettings : null;
this.root = null;
this.isVisible = false;
@@ -67,6 +69,7 @@ export class UploadModal {
this.cloudflareSettings = this.r2Service?.getSettings?.() || null;
this.isStorageUnlocked = false;
this.activeConnectionId = null;
+ this.storageConfigured = false;
// UI References
this.form = null;
@@ -76,6 +79,7 @@ export class UploadModal {
this.toggles = {};
this.submitButton = null;
this.submitStatus = null;
+ this.summaryView = {};
// Logic/State
this.nip71FormManager = new Nip71FormManager();
@@ -125,14 +129,8 @@ export class UploadModal {
if (this.storageService) {
const pubkey = this.getCurrentPubkey ? this.getCurrentPubkey() : null;
this.isStorageUnlocked = pubkey ? this.storageService.isUnlocked(pubkey) : false;
- if (this.isStorageUnlocked) {
- await this.loadFromStorage();
- } else {
- // Attempt legacy load if not unlocked (or maybe just show locked state)
- // For now we keep legacy behavior as fallback if storageService isn't used
- // But user requested provider agnostic.
- // We will update UI state in setSourceMode or similar
- }
+ // Even if locked, we want to know if there's *potentially* a connection saved to show correct UI state (locked vs empty)
+ await this.loadFromStorage();
} else {
await this.loadR2Settings();
}
@@ -172,6 +170,11 @@ export class UploadModal {
progress: $("#upload-progress-container"),
};
+ this.storageViews = {
+ summary: $("#storage-summary-view"),
+ form: $("#storage-form-view"),
+ };
+
// Inputs (Common)
this.inputs = {
title: $("#input-title"),
@@ -225,6 +228,7 @@ export class UploadModal {
r2HelpLink: $("#link-r2-help"),
copyBucket: $("#btn-copy-bucket"),
storageUnlock: $("#btn-storage-unlock"),
+ manageStorage: $("#btn-manage-storage"),
};
// Status text
@@ -233,6 +237,8 @@ export class UploadModal {
storageLock: $("#storage-lock-status"),
uploadMain: $("#upload-status-text"),
uploadPercent: $("#upload-percent-text"),
+ summaryProvider: $("#summary-provider"),
+ summaryBucket: $("#summary-bucket"),
};
this.nip71FormManager.registerSection("main", this.form);
@@ -294,6 +300,16 @@ export class UploadModal {
this.toggles.storageUnlock.addEventListener("click", () => this.handleUnlock());
}
+ // Manage Storage
+ if (this.toggles.manageStorage) {
+ this.toggles.manageStorage.addEventListener("click", () => {
+ if (this.onRequestStorageSettings) {
+ this.close();
+ this.onRequestStorageSettings();
+ }
+ });
+ }
+
// Automation
this.setupDescriptionMirror();
this.setupMutuallyExclusiveCheckboxes(this.toggles.nsfw, this.toggles.kids);
@@ -333,9 +349,11 @@ export class UploadModal {
this.sourceSections.upload.classList.remove("hidden");
this.sourceSections.external.classList.add("hidden");
- // Auto-show settings if missing
- if (!this.hasValidR2Settings() && this.sourceSections.settings.classList.contains("hidden")) {
+ // Auto-show settings if missing or not configured
+ if (!this.storageConfigured && !this.hasValidR2Settings() && this.sourceSections.settings.classList.contains("hidden")) {
this.toggles.storageSettings.click(); // Expand
+ } else if (this.storageConfigured) {
+ // Keep collapsed if configured, per requirements
}
if (this.toggles.browseThumbnail) {
@@ -461,15 +479,7 @@ export class UploadModal {
this.isStorageUnlocked = pubkey ? this.storageService.isUnlocked(pubkey) : false;
this.updateLockUi();
- if (this.isStorageUnlocked) {
- await this.loadFromStorage();
- } else {
- // Locked: Clear sensitive data from UI and memory
- this.cloudflareSettings = null;
- this.fillSettingsForm({});
- this.updateStorageStatus(false);
- this.activeConnectionId = null;
- }
+ await this.loadFromStorage();
} else if (this.r2Service && typeof this.r2Service.loadSettings === "function") {
await this.loadR2Settings();
}
@@ -483,13 +493,24 @@ export class UploadModal {
this.cloudflareSettings = settings || {};
this.fillSettingsForm(this.cloudflareSettings);
this.updateStorageStatus(this.hasValidR2Settings());
+
+ // Legacy mode implies no storage service or not used
+ this.toggleStorageView("form");
return settings;
}
async loadFromStorage() {
if (!this.storageService) return;
const pubkey = this.getCurrentPubkey ? this.getCurrentPubkey() : null;
- if (!pubkey) return;
+
+ this.cloudflareSettings = null;
+ this.activeConnectionId = null;
+ this.storageConfigured = false;
+
+ if (!pubkey) {
+ this.toggleStorageView("form");
+ return;
+ }
try {
const connections = await this.storageService.listConnections(pubkey);
@@ -498,32 +519,56 @@ export class UploadModal {
const targetConn = defaultConn || connections.find(c => c.provider === PROVIDERS.R2 || c.provider === "cloudflare_r2");
if (targetConn) {
- const details = await this.storageService.getConnection(pubkey, targetConn.id);
- if (details) {
- // Map generic S3 or R2 details to settings
- // R2 settings struct: accountId, accessKeyId, secretAccessKey, baseDomain
- this.cloudflareSettings = {
- accountId: details.accountId, // Might be undefined for generic S3
- accessKeyId: details.accessKeyId,
- secretAccessKey: details.secretAccessKey,
- baseDomain: details.meta?.baseDomain || "",
- // Add generic endpoint for internal use if needed
- endpoint: details.endpoint,
- region: details.region,
- bucket: details.bucket
- };
- this.fillSettingsForm(this.cloudflareSettings);
+ this.storageConfigured = true;
+ this.toggleStorageView("summary");
- const providerLabel = targetConn.provider === PROVIDERS.R2 || targetConn.provider === "cloudflare_r2"
- ? "R2"
- : (targetConn.meta?.label || "S3");
- this.updateStorageStatus(true, providerLabel);
+ // Populate Summary
+ const providerName = targetConn.meta?.provider === "cloudflare_r2" ? "Cloudflare R2" : (targetConn.meta?.label || "S3 Storage");
+ const bucketName = targetConn.meta?.bucket || "Unknown Bucket";
- this.activeConnectionId = targetConn.id;
+ if (this.statusText.summaryProvider) this.statusText.summaryProvider.textContent = providerName;
+ if (this.statusText.summaryBucket) this.statusText.summaryBucket.textContent = bucketName;
+
+ if (this.isStorageUnlocked) {
+ const details = await this.storageService.getConnection(pubkey, targetConn.id);
+ if (details) {
+ // Map generic S3 or R2 details to settings
+ // R2 settings struct: accountId, accessKeyId, secretAccessKey, baseDomain
+ this.cloudflareSettings = {
+ accountId: details.accountId, // Might be undefined for generic S3
+ accessKeyId: details.accessKeyId,
+ secretAccessKey: details.secretAccessKey,
+ baseDomain: details.meta?.baseDomain || "",
+ // Add generic endpoint for internal use if needed
+ endpoint: details.endpoint,
+ region: details.region,
+ bucket: details.bucket
+ };
+ this.fillSettingsForm(this.cloudflareSettings);
+ this.updateStorageStatus(true, providerName);
+ this.activeConnectionId = targetConn.id;
+ }
+ } else {
+ // Locked state, can't get details yet
+ this.updateStorageStatus(false);
}
+ } else {
+ // No connections configured
+ this.toggleStorageView("form");
}
} catch (err) {
console.error("Failed to load connection", err);
+ this.toggleStorageView("form");
+ }
+ }
+
+ toggleStorageView(viewName) {
+ if (viewName === "summary") {
+ this.storageViews.summary.classList.remove("hidden");
+ this.storageViews.form.classList.add("hidden");
+ } else {
+ this.storageViews.summary.classList.add("hidden");
+ this.storageViews.form.classList.remove("hidden");
}
}
@@ -544,8 +589,10 @@ export class UploadModal {
}
try {
- this.toggles.storageUnlock.textContent = "Unlocking...";
- this.toggles.storageUnlock.disabled = true;
+ if (this.toggles.storageUnlock) {
+ this.toggles.storageUnlock.textContent = "Unlocking...";
+ this.toggles.storageUnlock.disabled = true;
+ }
await this.storageService.unlock(pubkey, { signer });
this.isStorageUnlocked = true;
this.updateLockUi();
@@ -554,8 +601,10 @@ export class UploadModal {
console.error("Unlock failed", err);
alert("Failed to unlock storage: " + err.message);
} finally {
- this.toggles.storageUnlock.textContent = "Unlock";
- this.toggles.storageUnlock.disabled = false;
+ if (this.toggles.storageUnlock) {
+ this.toggles.storageUnlock.textContent = "Unlock";
+ this.toggles.storageUnlock.disabled = false;
+ }
}
}
@@ -566,14 +615,17 @@ export class UploadModal {
this.statusText.storageLock.className = locked ? "text-xs text-critical" : "text-xs text-success";
}
if (this.toggles.storageUnlock) {
- if (locked) {
+ // Show unlock button only if locked AND we have a configuration to unlock
+ if (locked && this.storageConfigured) {
this.toggles.storageUnlock.classList.remove("hidden");
} else {
this.toggles.storageUnlock.classList.add("hidden");
}
}
if (this.statusText.storage) {
- if (locked) {
+ if (locked && this.storageConfigured) {
+ this.statusText.storage.classList.add("hidden"); // Summary view has its own status area
+ } else if (locked) {
this.statusText.storage.classList.add("hidden");
this.statusText.storage.textContent = "";
} else {
@@ -610,7 +662,7 @@ export class UploadModal {
const secret = this.inputs.r2Secret?.value?.trim();
if (!accountId || !keyId || !secret) {
- alert("Please fill in Account ID, Access Key ID, and Secret Access Key.");
+ alert("Please fill in Account ID/Endpoint, Access Key ID, and Secret Access Key.");
return;
}
@@ -642,7 +694,7 @@ export class UploadModal {
const npub = pubkey ? this.safeEncodeNpub(pubkey) : null;
if (!settings.baseDomain) {
- this.wizard.errorText.textContent = "Public Bucket URL is required.";
+ this.wizard.errorText.textContent = "Public URL is required.";
this.wizard.errorContainer.classList.remove("hidden");
return;
}
@@ -663,7 +715,7 @@ export class UploadModal {
// Dynamic Cloudflare Link
// https://dash.cloudflare.com/?to=/:account/r2/default/buckets/:bucket/settings
- if (settings.accountId && npub) {
+ if (settings.accountId && npub && !settings.accountId.includes("://")) {
const bucketName = this.inputs.r2BucketName?.value || "";
const cfLink = `https://dash.cloudflare.com/?to=/${settings.accountId}/r2/default/buckets/${bucketName}/settings`;
this.wizard.guideLink.href = cfLink;
@@ -681,16 +733,31 @@ export class UploadModal {
if (pubkey) {
// Save to secure storage
const connectionId = this.activeConnectionId || `r2-${Date.now()}`;
- await this.storageService.saveConnection(pubkey, connectionId, {
- provider: PROVIDERS.R2,
- accountId: settings.accountId,
+
+ // Heuristic for provider type
+ let provider = PROVIDERS.GENERIC;
+ let payload = {
accessKeyId: settings.accessKeyId,
secretAccessKey: settings.secretAccessKey,
+ };
+
+ // If account ID doesn't look like a URL, assume R2/S3-account-based
+ if (settings.accountId && !settings.accountId.includes("://")) {
+ provider = PROVIDERS.R2;
+ payload.accountId = settings.accountId;
+ } else {
+ payload.endpoint = settings.accountId;
+ }
+
+ await this.storageService.saveConnection(pubkey, connectionId, {
+ provider,
+ ...payload,
}, {
- provider: PROVIDERS.R2,
- label: "Default R2",
+ provider,
+ label: provider === PROVIDERS.R2 ? "Default R2" : "Default S3",
baseDomain: settings.baseDomain,
- defaultForUploads: true
+ defaultForUploads: true,
+ bucket: this.inputs.r2BucketName?.value || sanitizeBucketName(npub)
});
this.activeConnectionId = connectionId;
}
@@ -712,6 +779,8 @@ export class UploadModal {
this.toggles.storageSettings.setAttribute("aria-expanded", "false");
// Reset wizard to start for next edit
this.goToCredentialsStep();
+ // Reload state to potentially switch to summary view
+ this.loadFromStorage();
}, 1500);
} catch (err) {
userLogger.error("Verification crashed:", err);
diff --git a/js/ui/initUploadModal.js b/js/ui/initUploadModal.js
index 466f17e5..1849bbbf 100644
--- a/js/ui/initUploadModal.js
+++ b/js/ui/initUploadModal.js
@@ -48,6 +48,11 @@ export function initUploadModal({
safeEncodeNpub,
eventTarget: events,
container,
+ onRequestStorageSettings: () => {
+ if (app && app.profileController && typeof app.profileController.show === "function") {
+ app.profileController.show("storage");
+ }
+ },
});
const boundSubmitHandler =
diff --git a/verification/upload_modal_static.png b/verification/upload_modal_static.png
new file mode 100644
index 0000000000000000000000000000000000000000..2523a64191756df2314f2b2121fcf431314fa800
GIT binary patch
literal 57531
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