+
+
+
+
+
diff --git a/src/content/docs/en/guides/images.md b/src/content/docs/en/guides/images.md
index 73f8166..e83c07a 100644
--- a/src/content/docs/en/guides/images.md
+++ b/src/content/docs/en/guides/images.md
@@ -29,6 +29,7 @@ Use modern formats like WebP for better compression and reduced data transfer:
Use tools like cwebp or online converters to convert existing images to WebP format.
### Implement Lazy Loading for Images
+
Lazy loading only loads images when they become visible in the viewport:
diff --git a/src/content/docs/nb/hosting/content-delivery-network.mdx b/src/content/docs/nb/hosting/content-delivery-network.mdx
index 12ad702..a06fbef 100644
--- a/src/content/docs/nb/hosting/content-delivery-network.mdx
+++ b/src/content/docs/nb/hosting/content-delivery-network.mdx
@@ -8,5 +8,9 @@ import { Aside } from '@astrojs/starlight/components';
Content Delivery Network, eller CDN som det gjerne kalles, er en tjeneste som gjør at du kan levere innhold til brukerne med høy hastighet og stor pålitelighet. Spesielt nyttig i tilfeller hvor du har mange brukere som trenger tilgang til innholdet på samme tid, eller fra ulike deler av verden.
diff --git a/src/content/i18n/nb-NO.json b/src/content/i18n/nb-NO.json
index ea065c9..bda4fe2 100644
--- a/src/content/i18n/nb-NO.json
+++ b/src/content/i18n/nb-NO.json
@@ -1,42 +1,42 @@
{
- "skipLink.label": "Hopp til innhold",
- "search.label": "Søk",
- "search.ctrlKey": "Ctrl",
- "search.cancelLabel": "Avbryt",
- "search.devWarning": "Search is only available in production builds. \nTry building and previewing the site to test it out locally.",
- "themeSelect.accessibleLabel": "Velg utseende",
- "themeSelect.dark": "Mørk",
- "themeSelect.light": "Lys",
- "themeSelect.auto": "Auto",
- "languageSelect.accessibleLabel": "Velg språk",
- "menuButton.accessibleLabel": "Meny",
- "sidebarNav.accessibleLabel": "Main",
- "tableOfContents.onThisPage": "På denne siden",
- "tableOfContents.overview": "Oversikt",
- "i18n.untranslatedContent": "Dette innholdet er ikke tilgjengelig på ditt språk ennå.",
- "page.editLink": "Rediger siden",
- "page.lastUpdated": "Sist oppdatert:",
- "page.previousLink": "Forrige",
- "page.nextLink": "Neste",
- "page.draft": "Dette innholdet er et utkast og blir ikke inkludert i produksjonsbyggingen.",
- "404.text": "Ai! Den siden fant jeg ikke dessverre, men slapp av, det er ikke du som har gjort noe feil, bare vi som har litt rusk i maskineriet.",
- "aside.note": "Note",
- "aside.tip": "Tip",
- "aside.caution": "Caution",
- "aside.danger": "Danger",
- "fileTree.directory": "Mappe",
- "builtWithStarlight.label": "Bygget med Astro, på Starlight-fundamentet",
- "expressiveCode.copyButtonCopied": "Kopiert!",
- "expressiveCode.copyButtonTooltip": "Kopier til utklippstavle",
- "expressiveCode.terminalWindowFallbackTitle": "Terminalen",
- "pagefind.clear_search": "Tøm",
- "pagefind.load_more": "Last inn flere resultater",
- "pagefind.search_label": "Søk på denne nettsiden",
- "pagefind.filters_label": "Filtre",
- "pagefind.zero_results": "Ingen resultater for [SEARCH_TERM]",
- "pagefind.many_results": "[COUNT] resultater for [SEARCH_TERM]",
- "pagefind.one_result": "[COUNT] resultat for [SEARCH_TERM]",
- "pagefind.alt_search": "Ingen resultater for [SEARCH_TERM]. Viser resultater for [DIFFERENT_TERM] i stedet",
- "pagefind.search_suggestion": "Ingen resultater for [SEARCH_TERM]. Prøv et av følgende søk i stedet:",
- "pagefind.searching": "Søker etter [SEARCH_TERM]..."
+ "skipLink.label": "Hopp til innhold",
+ "search.label": "Søk",
+ "search.ctrlKey": "Ctrl",
+ "search.cancelLabel": "Avbryt",
+ "search.devWarning": "Search is only available in production builds. \nTry building and previewing the site to test it out locally.",
+ "themeSelect.accessibleLabel": "Velg utseende",
+ "themeSelect.dark": "Mørk",
+ "themeSelect.light": "Lys",
+ "themeSelect.auto": "Auto",
+ "languageSelect.accessibleLabel": "Velg språk",
+ "menuButton.accessibleLabel": "Meny",
+ "sidebarNav.accessibleLabel": "Main",
+ "tableOfContents.onThisPage": "På denne siden",
+ "tableOfContents.overview": "Oversikt",
+ "i18n.untranslatedContent": "Dette innholdet er ikke tilgjengelig på ditt språk ennå.",
+ "page.editLink": "Rediger siden",
+ "page.lastUpdated": "Sist oppdatert:",
+ "page.previousLink": "Forrige",
+ "page.nextLink": "Neste",
+ "page.draft": "Dette innholdet er et utkast og blir ikke inkludert i produksjonsbyggingen.",
+ "404.text": "Ai! Den siden fant jeg ikke dessverre, men slapp av, det er ikke du som har gjort noe feil, bare vi som har litt rusk i maskineriet.",
+ "aside.note": "Note",
+ "aside.tip": "Tip",
+ "aside.caution": "Caution",
+ "aside.danger": "Danger",
+ "fileTree.directory": "Mappe",
+ "builtWithStarlight.label": "Bygget med Astro, på Starlight-fundamentet",
+ "expressiveCode.copyButtonCopied": "Kopiert!",
+ "expressiveCode.copyButtonTooltip": "Kopier til utklippstavle",
+ "expressiveCode.terminalWindowFallbackTitle": "Terminalen",
+ "pagefind.clear_search": "Tøm",
+ "pagefind.load_more": "Last inn flere resultater",
+ "pagefind.search_label": "Søk på denne nettsiden",
+ "pagefind.filters_label": "Filtre",
+ "pagefind.zero_results": "Ingen resultater for [SEARCH_TERM]",
+ "pagefind.many_results": "[COUNT] resultater for [SEARCH_TERM]",
+ "pagefind.one_result": "[COUNT] resultat for [SEARCH_TERM]",
+ "pagefind.alt_search": "Ingen resultater for [SEARCH_TERM]. Viser resultater for [DIFFERENT_TERM] i stedet",
+ "pagefind.search_suggestion": "Ingen resultater for [SEARCH_TERM]. Prøv et av følgende søk i stedet:",
+ "pagefind.searching": "Søker etter [SEARCH_TERM]..."
}
diff --git a/src/utils/documents.ts b/src/utils/documents.ts
new file mode 100644
index 0000000..c4f10fe
--- /dev/null
+++ b/src/utils/documents.ts
@@ -0,0 +1,35 @@
+import fs from 'fs';
+import path from 'path';
+
+const folderPath = 'src/content/docs/guides/';
+const absolutePath = path.join(process.cwd(), folderPath);
+
+type FileObject = {
+ label: string;
+ slug: string;
+};
+
+export function getFilesInGuidesFolder(): FileObject[] {
+ const fileNames: FileObject[] = [];
+
+ // Read the contents of the folder
+ const files = fs.readdirSync(absolutePath);
+
+ // Iterate over each file
+ files.forEach((file) => {
+ // Get the full path of the file
+ const filePath = `${absolutePath}/${file}`;
+
+ // Check if the path points to a file (not a directory)
+ if (fs.statSync(filePath).isFile()) {
+ const fileName = file.replaceAll('.md', '');
+ const fileToPush: FileObject = {
+ label: fileName.replaceAll('-', ' '),
+ slug: 'guides/' + fileName,
+ };
+ fileNames.push(fileToPush);
+ }
+ });
+
+ return fileNames;
+}