ultisuite-backend/internal/api/ultidraw/paths.go
R3D347HR4Y 0466a1c169
Some checks are pending
CI / Go tests (push) Waiting to run
CI / Integration tests (push) Waiting to run
CI / DB migrations (push) Waiting to run
wow
2026-06-11 01:22:52 +02:00

41 lines
807 B
Go

package ultidraw
import "strings"
const ExcalidrawExtension = "excalidraw"
// Config holds UltiDraw editor integration settings.
type Config struct {
Enabled bool
HocuspocusPublicURL string
HocuspocusSecret string
APIInternalURL string
}
func normalizePath(p string) string {
p = strings.TrimSpace(p)
if p == "" {
return "/"
}
if !strings.HasPrefix(p, "/") {
p = "/" + p
}
return strings.ReplaceAll(p, "//", "/")
}
func fileNameFromPath(p string) string {
p = normalizePath(p)
if p == "/" {
return ""
}
if i := strings.LastIndex(p, "/"); i >= 0 {
return p[i+1:]
}
return p
}
func isExcalidrawPath(path string) bool {
lower := strings.ToLower(path)
return strings.HasSuffix(lower, "."+ExcalidrawExtension) || strings.HasSuffix(lower, ".excalidraw.json")
}