remove temp debounce

This commit is contained in:
Michael Freno
2025-12-20 13:34:18 -05:00
parent 9cea36988c
commit e9a2b00254
7 changed files with 5 additions and 62 deletions

BIN
bun.lockb

Binary file not shown.

View File

@@ -30,6 +30,7 @@
"@tursodatabase/api": "^1.9.2",
"@typeschema/valibot": "^0.13.4",
"bcrypt": "^6.0.0",
"es-toolkit": "^1.43.0",
"google-auth-library": "^10.5.0",
"highlight.js": "^11.11.1",
"jose": "^6.1.3",
@@ -42,7 +43,7 @@
"zod": "^4.2.1"
},
"engines": {
"node": ">=22"
"node": "24.x"
},
"devDependencies": {
"@tailwindcss/typography": "^0.5.19",

View File

@@ -12,7 +12,7 @@ import type {
CommentReaction,
UserPublicData
} from "~/types/comment";
import { debounce } from "~/lib/comment-utils";
import { debounce } from "es-toolkit";
import UserDefaultImage from "~/components/icons/UserDefaultImage";
import ReplyIcon from "~/components/icons/ReplyIcon";
import TrashIcon from "~/components/icons/TrashIcon";

View File

@@ -100,34 +100,3 @@ export function insertSoftHyphens(
})
.join(" ");
}
/**
* Creates a debounced function that delays execution until after specified delay
* @param fn - The function to debounce
* @param delay - Delay in milliseconds
* @returns Debounced function with cancel method
*/
export function debounce<T extends (...args: any[]) => any>(
fn: T,
delay: number
): T & { cancel: () => void } {
let timeoutId: ReturnType<typeof setTimeout> | undefined;
const debounced = function (this: any, ...args: Parameters<T>) {
if (timeoutId !== undefined) {
clearTimeout(timeoutId);
}
timeoutId = setTimeout(() => {
fn.apply(this, args);
}, delay);
} as T & { cancel: () => void };
debounced.cancel = () => {
if (timeoutId !== undefined) {
clearTimeout(timeoutId);
timeoutId = undefined;
}
};
return debounced;
}

View File

@@ -190,33 +190,6 @@ export function sortComments(
}
}
// ============================================================================
// Debounce Utility
// ============================================================================
/**
* Debounces a function call to limit execution frequency
* Useful for window resize and scroll events
*/
export function debounce<T extends (...args: any[]) => any>(
func: T,
wait: number
): (...args: Parameters<T>) => void {
let timeout: ReturnType<typeof setTimeout> | null = null;
return function executedFunction(...args: Parameters<T>) {
const later = () => {
timeout = null;
func(...args);
};
if (timeout !== null) {
clearTimeout(timeout);
}
timeout = setTimeout(later, wait);
};
}
// ============================================================================
// Validation Utilities
// ============================================================================

View File

@@ -4,7 +4,7 @@ import { Title, Meta } from "@solidjs/meta";
import { createAsync } from "@solidjs/router";
import { getRequestEvent } from "solid-js/web";
import { api } from "~/lib/api";
import { debounce } from "~/lib/client-utils";
import { debounce } from "es-toolkit";
import Dropzone from "~/components/blog/Dropzone";
import TextEditor from "~/components/blog/TextEditor";
import TagMaker from "~/components/blog/TagMaker";

View File

@@ -4,7 +4,7 @@ import { Title, Meta } from "@solidjs/meta";
import { createAsync } from "@solidjs/router";
import { getRequestEvent } from "solid-js/web";
import { api } from "~/lib/api";
import { debounce } from "~/lib/client-utils";
import { debounce } from "es-toolkit";
import Dropzone from "~/components/blog/Dropzone";
import TextEditor from "~/components/blog/TextEditor";
import TagMaker from "~/components/blog/TagMaker";