summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.changeset/orange-sheep-deliver.md5
-rw-r--r--packages/astro/src/content/utils.ts12
2 files changed, 10 insertions, 7 deletions
diff --git a/.changeset/orange-sheep-deliver.md b/.changeset/orange-sheep-deliver.md
new file mode 100644
index 000000000..cf8ecf318
--- /dev/null
+++ b/.changeset/orange-sheep-deliver.md
@@ -0,0 +1,5 @@
+---
+'astro': patch
+---
+
+Fix: internal content collection error on spaces in file name
diff --git a/packages/astro/src/content/utils.ts b/packages/astro/src/content/utils.ts
index afde00743..857da52ef 100644
--- a/packages/astro/src/content/utils.ts
+++ b/packages/astro/src/content/utils.ts
@@ -163,11 +163,10 @@ export function getEntryType(
entryPath: string,
paths: Pick<ContentPaths, 'config'>
): 'content' | 'config' | 'ignored' | 'unsupported' {
- const { dir: rawDir, ext, base } = path.parse(entryPath);
- const dir = appendForwardSlash(pathToFileURL(rawDir).href);
- const fileUrl = new URL(base, dir);
+ const { ext, base } = path.parse(entryPath);
+ const fileUrl = pathToFileURL(entryPath);
- if (hasUnderscoreInPath(fileUrl) || isOnIgnoreList(fileUrl)) {
+ if (hasUnderscoreInPath(fileUrl) || isOnIgnoreList(base)) {
return 'ignored';
} else if ((contentFileExts as readonly string[]).includes(ext)) {
return 'content';
@@ -178,9 +177,8 @@ export function getEntryType(
}
}
-function isOnIgnoreList(fileUrl: URL) {
- const { base } = path.parse(fileURLToPath(fileUrl));
- return ['.DS_Store'].includes(base);
+function isOnIgnoreList(fileName: string) {
+ return ['.DS_Store'].includes(fileName);
}
function hasUnderscoreInPath(fileUrl: URL): boolean {