style: format web/src with oxfmt defaults (via vp fmt)
One-time mechanical sweep, isolated from any functional change. - oxfmt defaults: double quotes, semicolons, 2-space indent, LF, printWidth 100, trailing commas, bracket spacing, arrow parens. - vite.config.ts gains an fmt.ignorePatterns block for web/static: vendored/minified assets (htmx.min.js, compiled css) must never be reformatted. - Verified: rebuild after the sweep produces byte-identical JS/CSS bundles; only sourcemaps changed (they embed sourcesContent).
This commit is contained in:
1 parent
8aeecaa0ef
commit
77cd268f4e
37 files changed
+1151
-1853
No files matched your search
+8
-24
@@ -24,9 +24,7 @@ async function refreshConflicts(): Promise<void> {
|
||||
// ownership: JS decides what shows; templ rendered what they look like).
|
||||
|
||||
function filterConflicts(): void {
|
||||
const select = document.getElementById(
|
||||
"status-filter",
|
||||
) as HTMLSelectElement | null;
|
||||
const select = document.getElementById("status-filter") as HTMLSelectElement | null;
|
||||
const filter = select?.value ?? "unresolved";
|
||||
let total = 0;
|
||||
let visible = 0;
|
||||
@@ -44,9 +42,7 @@ function filterConflicts(): void {
|
||||
}
|
||||
|
||||
function toggleAllConflicts(): void {
|
||||
const selectAll = document.getElementById(
|
||||
"select-all-conflicts",
|
||||
) as HTMLInputElement | null;
|
||||
const selectAll = document.getElementById("select-all-conflicts") as HTMLInputElement | null;
|
||||
if (!selectAll) return;
|
||||
document.querySelectorAll<HTMLElement>(".conflict-item").forEach((item) => {
|
||||
if (item.style.display === "none") return;
|
||||
@@ -57,9 +53,7 @@ function toggleAllConflicts(): void {
|
||||
}
|
||||
|
||||
function getSelectedConflictIds(): string[] {
|
||||
return Array.from(
|
||||
document.querySelectorAll<HTMLInputElement>(".conflict-checkbox:checked"),
|
||||
)
|
||||
return Array.from(document.querySelectorAll<HTMLInputElement>(".conflict-checkbox:checked"))
|
||||
.map((box) => box.dataset.conflictId || "")
|
||||
.filter((id) => id !== "");
|
||||
}
|
||||
@@ -75,12 +69,8 @@ function updateBulkActions(): void {
|
||||
function resolveSelected(): void {
|
||||
const ids = getSelectedConflictIds();
|
||||
if (ids.length === 0) return;
|
||||
const strategyEl = document.getElementById(
|
||||
"bulk-strategy",
|
||||
) as HTMLSelectElement | null;
|
||||
const strategy = (strategyEl?.value ?? "most_recent") as
|
||||
| "most_recent"
|
||||
| "highest_progress";
|
||||
const strategyEl = document.getElementById("bulk-strategy") as HTMLSelectElement | null;
|
||||
const strategy = (strategyEl?.value ?? "most_recent") as "most_recent" | "highest_progress";
|
||||
void bulkResolve(strategy, ids);
|
||||
}
|
||||
|
||||
@@ -195,9 +185,7 @@ async function dismissAllResolved(): Promise<void> {
|
||||
|
||||
function showResolveModal(conflictId: string): void {
|
||||
const modal = document.getElementById("resolve-modal");
|
||||
const conflictIdInput = document.getElementById(
|
||||
"resolve-conflict-id",
|
||||
) as HTMLInputElement;
|
||||
const conflictIdInput = document.getElementById("resolve-conflict-id") as HTMLInputElement;
|
||||
|
||||
if (modal && conflictIdInput) {
|
||||
conflictIdInput.value = conflictId;
|
||||
@@ -216,12 +204,8 @@ function handleResolveSubmit(event: Event): void {
|
||||
event.preventDefault();
|
||||
|
||||
const form = event.target as HTMLFormElement;
|
||||
const conflictId = (
|
||||
form.querySelector("#resolve-conflict-id") as HTMLInputElement
|
||||
)?.value;
|
||||
const winner = (
|
||||
form.querySelector('input[name="winner"]:checked') as HTMLInputElement
|
||||
)?.value;
|
||||
const conflictId = (form.querySelector("#resolve-conflict-id") as HTMLInputElement)?.value;
|
||||
const winner = (form.querySelector('input[name="winner"]:checked') as HTMLInputElement)?.value;
|
||||
|
||||
if (!conflictId || !winner) {
|
||||
showToast("Please select a winner", "error");
|
||||
|
||||
Reference in new issue
Block a user