Some checks failed
Build and Release / Create Release (push) Successful in 0s
Trigger Vault Plugin Rebuild / Trigger Vault Rebuild (push) Successful in 0s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 2m48s
Build and Release / Lint (push) Failing after 5m2s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, darwin, linux-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Has been skipped
Build and Release / Build Binaries (arm64, darwin, linux-latest) (push) Has been skipped
Build and Release / Build Binaries (arm64, linux, linux-latest) (push) Has been skipped
Build and Release / Unit Tests (push) Successful in 5m37s
Go's semantic import versioning requires v2+ modules to include the major version in the module path. This enables using proper version tags (v3.x.x) instead of pseudo-versions. Updated module path: code.gitcaddy.com/server/v3
32 lines
857 B
Go
32 lines
857 B
Go
// Copyright 2025 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package fileicon
|
|
|
|
import "code.gitcaddy.com/server/v3/modules/git"
|
|
|
|
type EntryInfo struct {
|
|
BaseName string
|
|
EntryMode git.EntryMode
|
|
SymlinkToMode git.EntryMode
|
|
IsOpen bool
|
|
}
|
|
|
|
func EntryInfoFromGitTreeEntry(commit *git.Commit, fullPath string, gitEntry *git.TreeEntry) *EntryInfo {
|
|
ret := &EntryInfo{BaseName: gitEntry.Name(), EntryMode: gitEntry.Mode()}
|
|
if gitEntry.IsLink() {
|
|
if res, err := git.EntryFollowLink(commit, fullPath, gitEntry); err == nil && res.TargetEntry.IsDir() {
|
|
ret.SymlinkToMode = res.TargetEntry.Mode()
|
|
}
|
|
}
|
|
return ret
|
|
}
|
|
|
|
func EntryInfoFolder() *EntryInfo {
|
|
return &EntryInfo{EntryMode: git.EntryModeTree}
|
|
}
|
|
|
|
func EntryInfoFolderOpen() *EntryInfo {
|
|
return &EntryInfo{EntryMode: git.EntryModeTree, IsOpen: true}
|
|
}
|