Add Markdown and ZIP notebook import

This commit is contained in:
eezd committed 2026-10-21 12:56:38 +08:00
1 parent 903a617439
commit 34d2acbbd5
18 files changed
+1166 -16

No files matched your search

+10 -6
View File
@@ -696,12 +696,7 @@ func (v *Vault) SaveAsset(note, origName string, r io.Reader, limit int64) (stri
if int64(len(data)) > limit {
return "", ErrTooLarge
}
ext := strings.ToLower(filepath.Ext(origName))
if !extPattern.MatchString(ext) {
ext = sniffExt(data)
}
sum := sha256.Sum256(data)
name := hex.EncodeToString(sum[:8]) + ext
name := assetName(data, origName)
dir := AssetsDir(p)
v.mu.Lock()
defer v.mu.Unlock()
@@ -722,6 +717,15 @@ func (v *Vault) SaveAsset(note, origName string, r io.Reader, limit int64) (stri
return EscapeLinkPath(path.Base(AssetsDir(note))) + "/" + name, nil
}
func assetName(data []byte, origName string) string {
ext := strings.ToLower(filepath.Ext(origName))
if !extPattern.MatchString(ext) {
ext = sniffExt(data)
}
sum := sha256.Sum256(data)
return hex.EncodeToString(sum[:8]) + ext
}
func sniffExt(data []byte) string {
switch http.DetectContentType(data) {
case "image/png":