Skip to content

Commit a65e631

Browse files
committed
fix(index): handle index files
1 parent f59edb3 commit a65e631

File tree

2 files changed

+15
-10
lines changed

2 files changed

+15
-10
lines changed

src/lib/list-folder.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,17 @@ export const listFolder = async (srcPath: string, exclude: string[] = [], mainPa
1717
const isDir = dirent.isDirectory();
1818
const ext = path.extname(filePath);
1919
let name = path.basename(filePath).replace(ext, '');
20+
const folder = filePath.replace(name, '').replace(ext, '');
2021

2122
if (name === 'index') {
22-
name = '_index';
23+
name = '__index__';
2324
}
2425

2526
const file = {
2627
isDir,
2728
name,
2829
path: filePath,
29-
...(!isDir ? { ext, folder: filePath.replace(name, '').replace(ext, '') } : {})
30+
...(!isDir ? { ext, folder } : {})
3031
};
3132

3233
// skip readmes as they are automatically resolved

src/lib/parser.ts

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,13 @@ export const parseFile = async (
3232
// parse file
3333
try {
3434
let content = '';
35+
let fileName = file.name;
36+
if (fileName === '__index__') {
37+
fileName = 'index';
38+
}
3539

3640
content = await jsdoc2md.render({
37-
files: [join(file.folder, file.name + file.ext)],
41+
files: [join(process.cwd(), file.folder, fileName + file.ext)],
3842
configure: configPath,
3943
partial: [
4044
resolve(__filename, '../../../template/header.hbs'),
@@ -44,7 +48,7 @@ export const parseFile = async (
4448
});
4549

4650
fileContent = parseVuepressFileHeader(
47-
await fs.readFile(`${join(folderInSrc, file.name + file.ext)}`, 'utf-8'),
51+
await fs.readFile(`${join(folderInSrc, fileName + file.ext)}`, 'utf-8'),
4852
file
4953
);
5054

@@ -92,15 +96,15 @@ export const parseVueFile = async (
9296
let fileContent = '';
9397

9498
try {
99+
let fileName = file.name;
100+
if (fileName === '__index__') {
101+
fileName = 'index';
102+
}
95103
// parse file
96-
const data = await compileTemplates(
97-
join(config.componentsRoot, file.name + file.ext),
98-
config,
99-
file.name + file.ext
100-
);
104+
const data = await compileTemplates(join(config.componentsRoot, fileName + file.ext), config, fileName + file.ext);
101105

102106
fileContent = parseVuepressFileHeader(
103-
await fs.readFile(`${join(folderInSrc, file.name + file.ext)}`, 'utf-8'),
107+
await fs.readFile(`${join(folderInSrc, fileName + file.ext)}`, 'utf-8'),
104108
file
105109
);
106110

0 commit comments

Comments
 (0)