broadfield-dev commited on
Commit
d3f976c
·
verified ·
1 Parent(s): 1474415

Update templates/index.html

Browse files
Files changed (1) hide show
  1. templates/index.html +35 -7
templates/index.html CHANGED
@@ -134,9 +134,9 @@
134
  data.results.forEach(item => {
135
  // Create Card
136
  const div = document.createElement('div');
137
- div.className = "bg-slate-800/50 p-4 rounded-lg border border-slate-700 hover:border-indigo-500/50 transition flex flex-col gap-2";
138
 
139
- // Header: Title + Score
140
  const header = document.createElement('div');
141
  header.className = "flex justify-between items-start";
142
  header.innerHTML = `
@@ -144,18 +144,46 @@
144
  <h3 class="font-semibold text-slate-200 text-sm">${item.title}</h3>
145
  <span class="text-xs text-slate-500">${formatDate(item.date)}</span>
146
  </div>
147
- <span class="bg-indigo-900/50 text-indigo-300 text-xs px-2 py-1 rounded font-mono">
148
- score: ${item.score}
149
  </span>
150
  `;
151
 
152
- // Body: Snippet
153
  const body = document.createElement('div');
154
- body.className = "text-xs text-slate-300 snippet-text bg-slate-900/50 p-2 rounded";
155
- body.textContent = item.snippet;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
156
 
157
  div.appendChild(header);
158
  div.appendChild(body);
 
 
159
  resultsArea.appendChild(div);
160
  });
161
  } else if (data.success) {
 
134
  data.results.forEach(item => {
135
  // Create Card
136
  const div = document.createElement('div');
137
+ div.className = "bg-slate-800/50 p-4 rounded-lg border border-slate-700 hover:border-indigo-500/50 transition flex flex-col gap-3";
138
 
139
+ // 1. Header: Title, Date, Score
140
  const header = document.createElement('div');
141
  header.className = "flex justify-between items-start";
142
  header.innerHTML = `
 
144
  <h3 class="font-semibold text-slate-200 text-sm">${item.title}</h3>
145
  <span class="text-xs text-slate-500">${formatDate(item.date)}</span>
146
  </div>
147
+ <span class="bg-indigo-900/50 text-indigo-300 text-xs px-2 py-1 rounded font-mono border border-indigo-500/20">
148
+ ${item.score}
149
  </span>
150
  `;
151
 
152
+ // 2. Body: Clean Text
153
  const body = document.createElement('div');
154
+ body.className = "text-sm text-slate-300 snippet-text pl-2 border-l-2 border-slate-600";
155
+ body.textContent = item.text;
156
+
157
+ // 3. Footer: Tags & Labels
158
+ const footer = document.createElement('div');
159
+ footer.className = "flex flex-wrap gap-2 mt-1";
160
+
161
+ // Render Tags (Green)
162
+ if (item.tags && item.tags.length > 0) {
163
+ item.tags.forEach(tag => {
164
+ const span = document.createElement('span');
165
+ span.className = "px-2 py-0.5 rounded text-[10px] uppercase font-bold tracking-wider bg-emerald-900/40 text-emerald-400 border border-emerald-700/50";
166
+ span.textContent = tag;
167
+ footer.appendChild(span);
168
+ });
169
+ }
170
+
171
+ // Render Labels (Blue)
172
+ if (item.labels && item.labels.length > 0) {
173
+ item.labels.forEach(lbl => {
174
+ // Filter out generic 'text' label to reduce noise
175
+ if(lbl === 'text') return;
176
+ const span = document.createElement('span');
177
+ span.className = "px-2 py-0.5 rounded text-[10px] uppercase font-bold tracking-wider bg-sky-900/40 text-sky-400 border border-sky-700/50";
178
+ span.textContent = lbl;
179
+ footer.appendChild(span);
180
+ });
181
+ }
182
 
183
  div.appendChild(header);
184
  div.appendChild(body);
185
+ if (footer.hasChildNodes()) div.appendChild(footer);
186
+
187
  resultsArea.appendChild(div);
188
  });
189
  } else if (data.success) {