Remove GIPHY prompt bar
build-push / docker (push) Successful in 4m37s

This commit is contained in:
GHStaK
2026-03-24 17:27:30 +09:00
parent e3dbedc59f
commit 914f10f502
3 changed files with 10 additions and 18 deletions
+10
View File
@@ -268,6 +268,16 @@
- backend debug broadcasts
## Recent Change Log
- Date: `2026-03-24`
- What changed:
- Removed the remaining inline `Powered by GIPHY` / prompt-chip bar from Zone A image mode so the image search view now shows only the shared search controls and the results area.
- Why it changed:
- The user wanted that image-mode top strip removed entirely instead of reduced or restyled.
- How it was verified:
- static review of `frontend/index.html` and `frontend/app.js`
- What is still risky or incomplete:
- None beyond the usual need for a browser hard refresh if an older cached frontend bundle is still open in a tab.
- Date: `2026-03-24`
- What changed:
- Restored the video-search request path to tolerate a scheme-less `SEARXNG_BASE_URL` such as `192.168.1.66:8087` by normalizing it to `http://...` during search-service initialization.
-12
View File
@@ -11,8 +11,6 @@ const searchSubmitButton = document.getElementById("searchSubmitButton");
const searchResultsViewport = document.getElementById("searchResultsViewport");
const mediaTypeToggles = Array.from(document.querySelectorAll("[data-media-type-toggle]"));
const platformToggles = Array.from(document.querySelectorAll("[data-platform-toggle]"));
const imagePromptBar = document.getElementById("imagePromptBar");
const imagePromptChips = Array.from(document.querySelectorAll("[data-image-prompt]"));
const dropzone = document.getElementById("dropzone");
const fileInput = document.getElementById("fileInput");
const uploadResult = document.getElementById("uploadResult");
@@ -338,7 +336,6 @@ function renderImageResults(items = []) {
function applyMediaTypeUI() {
const isImageMode = activeMediaType === "image";
syncMediaTypeButtons();
setHidden(imagePromptBar, !isImageMode, "flex");
setHidden(queryVariants, true, "");
showWarning("");
searchResultsViewport.classList.toggle("image-results-scroll", isImageMode);
@@ -950,15 +947,6 @@ for (const button of mediaTypeToggles) {
});
}
for (const chip of imagePromptChips) {
chip.addEventListener("click", () => {
searchQuery.value = chip.dataset.imagePrompt || "";
if (activeMediaType === "image") {
setStatus("image prompt applied", 0);
}
});
}
async function uploadFile(file) {
const formData = new FormData();
formData.append("file", file);
-6
View File
@@ -52,12 +52,6 @@
<input id="searchQuery" type="text" placeholder="한글 검색어를 입력하세요" class="flex-1 rounded-2xl border border-white/10 bg-black/40 px-5 py-4 text-base text-white outline-none ring-0 placeholder:text-zinc-500" />
<button id="searchSubmitButton" class="rounded-2xl border border-white bg-white px-7 py-4 text-base font-medium text-black transition hover:bg-zinc-200">AI Search</button>
</form>
<div id="imagePromptBar" class="mt-4 hidden flex-wrap items-center gap-2">
<span class="mr-2 text-[11px] uppercase tracking-[0.24em] text-zinc-500">Powered by GIPHY</span>
<button type="button" class="image-prompt-chip rounded-full border border-white/10 px-3 py-2 text-xs uppercase tracking-[0.2em] text-zinc-200" data-image-prompt="cinematic city night">Cinematic City</button>
<button type="button" class="image-prompt-chip rounded-full border border-white/10 px-3 py-2 text-xs uppercase tracking-[0.2em] text-zinc-200" data-image-prompt="vintage fashion portrait">Vintage Portrait</button>
<button type="button" class="image-prompt-chip rounded-full border border-white/10 px-3 py-2 text-xs uppercase tracking-[0.2em] text-zinc-200" data-image-prompt="minimal product mockup">Product Mockup</button>
</div>
<div id="searchWarning" class="mt-3 hidden rounded-2xl border border-amber-500/30 bg-amber-500/10 px-4 py-3 text-sm text-amber-200"></div>
<div id="queryVariants" class="hidden"></div>
<div id="searchResultsViewport" class="mt-6">