fix: tiptap duplicate link extension warning + settings editor number inputs to text+inputMode

This commit is contained in:
2026-04-28 10:07:03 +08:00
parent d6a9601591
commit 748a9fa8c8
2 changed files with 20 additions and 9 deletions
+1
View File
@@ -35,6 +35,7 @@ export function TiptapEditor({
code: false, code: false,
blockquote: false, blockquote: false,
horizontalRule: false, horizontalRule: false,
link: false,
}), }),
Link.configure({ Link.configure({
openOnClick: false, openOnClick: false,
+19 -9
View File
@@ -420,18 +420,15 @@ export function SettingsEditor({
)} )}
{setting.value ? "On" : "Off"} {setting.value ? "On" : "Off"}
</button> </button>
) : ( ) : typeof setting.value === "number" ? (
<input <input
type={typeof setting.value === "number" ? "number" : "text"} type="text"
inputMode="numeric"
pattern="[0-9]*"
value={setting.value} value={setting.value}
onChange={(e) => { onChange={(e) => {
const raw = e.target.value const cleaned = e.target.value.replace(/[^0-9]/g, "")
const updated = const updated = cleaned === "" ? 0 : Number(cleaned)
typeof setting.value === "number"
? raw === ""
? 0
: Number(raw)
: raw
updateSetting( updateSetting(
cat.category, cat.category,
setting.title, setting.title,
@@ -440,6 +437,19 @@ export function SettingsEditor({
}} }}
className="flex-1 min-w-0 px-3 py-1.5 rounded-md border border-border bg-text/5 text-text text-sm placeholder:text-text/40 outline-none focus:border-primary focus:ring-2 focus:ring-primary/50 transition-colors" className="flex-1 min-w-0 px-3 py-1.5 rounded-md border border-border bg-text/5 text-text text-sm placeholder:text-text/40 outline-none focus:border-primary focus:ring-2 focus:ring-primary/50 transition-colors"
/> />
) : (
<input
type="text"
value={setting.value}
onChange={(e) => {
updateSetting(
cat.category,
setting.title,
e.target.value
)
}}
className="flex-1 min-w-0 px-3 py-1.5 rounded-md border border-border bg-text/5 text-text text-sm placeholder:text-text/40 outline-none focus:border-primary focus:ring-2 focus:ring-primary/50 transition-colors"
/>
)} )}
<div className="flex items-center gap-0.5"> <div className="flex items-center gap-0.5">