@riebeckite/plugin-folder-pages 0.0.15 → 0.0.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -18,7 +18,6 @@ function collapseFolderEntryLocations(locations) {
18
18
  const basename = lastSegment(slug);
19
19
  if (!isEntryBasename(basename)) continue;
20
20
  const folder = parentFolder(slug);
21
- if (folder === "") continue;
22
21
  const slugs = byFolder.get(folder);
23
22
  if (slugs) slugs.push(slug);
24
23
  else byFolder.set(folder, [slug]);
@@ -109,6 +108,17 @@ function buildFolderPages(manifest) {
109
108
  };
110
109
  const isListed = (folder) => hasRoutableOwner(folder) || hasRoutablePage(folder) || isNavigable(folder) && generatedPath(folder) !== null;
111
110
  const generatedPath = (folder) => resolveGeneratedFolderLocation(manifest, folder);
111
+ const folderLanguage = (folder) => {
112
+ let language;
113
+ for (const entry of manifest.discoverableEntries) {
114
+ if (!entry.slug.startsWith(`${folder}/`)) continue;
115
+ const value = entry.publicLocation.language;
116
+ if (value === void 0) return void 0;
117
+ if (language === void 0) language = value;
118
+ else if (language !== value) return void 0;
119
+ }
120
+ return language;
121
+ };
112
122
  const folderLink = (folder) => {
113
123
  if (hasRoutableOwner(folder)) {
114
124
  const owner = routableBySlug.get(`${folder}/README`) ?? routableBySlug.get(`${folder}/index`);
@@ -147,6 +157,7 @@ function buildFolderPages(manifest) {
147
157
  pages.push({
148
158
  folder,
149
159
  pathname,
160
+ language: folderLanguage(folder),
150
161
  title: lastSegment(folder),
151
162
  pages: sortedPages(folder).map(toLink),
152
163
  folders: folders_.map((sub) => sub.link),
@@ -293,7 +304,8 @@ function folderPages(options = {}) {
293
304
  type: "folder-page",
294
305
  pathname: page.pathname,
295
306
  title: rendered.title,
296
- body: rendered.html
307
+ body: rendered.html,
308
+ language: page.language
297
309
  };
298
310
  }
299
311
  }
@@ -16,6 +16,7 @@ export type FolderPageLink = {
16
16
  export type FolderPage = {
17
17
  folder: string;
18
18
  pathname: string;
19
+ language?: string;
19
20
  title: string;
20
21
  pages: FolderPageLink[];
21
22
  folders: FolderPageLink[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@riebeckite/plugin-folder-pages",
3
- "version": "0.0.15",
3
+ "version": "0.0.17",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -14,12 +14,12 @@
14
14
  }
15
15
  },
16
16
  "dependencies": {
17
- "@riebeckite/core": "0.0.15"
17
+ "@riebeckite/core": "0.0.17"
18
18
  },
19
19
  "devDependencies": {
20
20
  "tsx": "^4.22.4",
21
- "@riebeckite/plugin-l10n": "0.0.15",
22
- "@riebeckite/plugin-taxonomy": "0.0.15"
21
+ "@riebeckite/plugin-l10n": "0.0.17",
22
+ "@riebeckite/plugin-taxonomy": "0.0.17"
23
23
  },
24
24
  "publishConfig": {
25
25
  "access": "public"