UNPKG

@mdfriday/foundry

Version:

The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.

57 lines 2.06 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DefaultLanguageConfig = void 0; exports.decodeLanguageConfig = decodeLanguageConfig; exports.validateLanguageConfig = validateLanguageConfig; /** * Default language configuration */ exports.DefaultLanguageConfig = { languageCode: 'en', languageName: 'English', title: '', weight: 0, contentDir: 'content', disabled: false, params: {} }; /** * Creates language configurations from provider data */ function decodeLanguageConfig(data) { const configs = {}; if (data.languages && typeof data.languages === 'object') { for (const [langCode, langData] of Object.entries(data.languages)) { const langConfig = langData; configs[langCode] = { languageCode: langCode, languageName: langConfig.languageName || langConfig.name || exports.DefaultLanguageConfig.languageName, title: langConfig.title || exports.DefaultLanguageConfig.title, weight: langConfig.weight !== undefined ? langConfig.weight : exports.DefaultLanguageConfig.weight, contentDir: langConfig.contentDir || exports.DefaultLanguageConfig.contentDir, disabled: langConfig.disabled !== undefined ? langConfig.disabled : exports.DefaultLanguageConfig.disabled, params: langConfig.params || exports.DefaultLanguageConfig.params }; } } else { // If no languages configured, create default English config configs['en'] = { languageCode: 'en', languageName: 'English', title: data.title || '', weight: 0, contentDir: 'content', disabled: false, params: data.params || {} }; } return configs; } /** * Validates language configuration */ function validateLanguageConfig(configs, defaultLang) { return Object.prototype.hasOwnProperty.call(configs, defaultLang); } //# sourceMappingURL=language.js.map