Fix dart sass import regression

Fixes #12072
This commit is contained in:
Bjørn Erik Pedersen
2024-02-20 14:46:03 +01:00
parent 48eec2a4e6
commit 621194a319
7 changed files with 14 additions and 13 deletions

View File

@@ -336,7 +336,7 @@ func (s *SourceFilesystems) ResolvePaths(filename string, checkExists bool) []hu
// It will return an empty string if the filename is not a member of a static filesystem.
func (s SourceFilesystems) MakeStaticPathRelative(filename string) string {
for _, staticFs := range s.Static {
rel, _ := staticFs.MakePathRelative(filename)
rel, _ := staticFs.MakePathRelative(filename, true)
if rel != "" {
return rel
}
@@ -345,8 +345,8 @@ func (s SourceFilesystems) MakeStaticPathRelative(filename string) string {
}
// MakePathRelative creates a relative path from the given filename.
func (d *SourceFilesystem) MakePathRelative(filename string) (string, bool) {
cps, err := d.ReverseLookup(filename)
func (d *SourceFilesystem) MakePathRelative(filename string, checkExists bool) (string, bool) {
cps, err := d.ReverseLookup(filename, checkExists)
if err != nil {
panic(err)
}
@@ -358,11 +358,11 @@ func (d *SourceFilesystem) MakePathRelative(filename string) (string, bool) {
}
// ReverseLookup returns the component paths for the given filename.
func (d *SourceFilesystem) ReverseLookup(filename string) ([]hugofs.ComponentPath, error) {
func (d *SourceFilesystem) ReverseLookup(filename string, checkExists bool) ([]hugofs.ComponentPath, error) {
var cps []hugofs.ComponentPath
hugofs.WalkFilesystems(d.Fs, func(fs afero.Fs) bool {
if rfs, ok := fs.(hugofs.ReverseLookupProvder); ok {
if c, err := rfs.ReverseLookup(filename, true); err == nil {
if c, err := rfs.ReverseLookup(filename, checkExists); err == nil {
cps = append(cps, c...)
}
}

View File

@@ -380,11 +380,11 @@ Main.
`
b := hugolib.Test(t, files)
rel, found := b.H.BaseFs.Assets.MakePathRelative(filepath.FromSlash("/themes/t1/src/main.js"))
rel, found := b.H.BaseFs.Assets.MakePathRelative(filepath.FromSlash("/themes/t1/src/main.js"), true)
b.Assert(found, qt.Equals, true)
b.Assert(rel, qt.Equals, filepath.FromSlash("foo/bar/main.js"))
rel, found = b.H.BaseFs.Assets.MakePathRelative(filepath.FromSlash("/bar.txt"))
rel, found = b.H.BaseFs.Assets.MakePathRelative(filepath.FromSlash("/bar.txt"), true)
b.Assert(found, qt.Equals, true)
b.Assert(rel, qt.Equals, filepath.FromSlash("foo/baz.txt"))
}
@@ -460,7 +460,7 @@ Home.
b.AssertFileContent("public/index.html", "Home.")
stat := func(path string) hugofs.FileMetaInfo {
ps, err := b.H.BaseFs.Content.ReverseLookup(filepath.FromSlash(path))
ps, err := b.H.BaseFs.Content.ReverseLookup(filepath.FromSlash(path), true)
b.Assert(err, qt.IsNil)
b.Assert(ps, qt.HasLen, 1)
first := ps[0]