Versie 0.2.0
This commit is contained in:
commit
e77d8fd373
495 files changed
+81026
No files matched your search
@@ -0,0 +1,34 @@
|
||||
// Generated, do not edit. sha256:6cbe401d306ec892f1f72668153c40a7ef9e20306ce9e0d40df746e713359910
|
||||
import { readFileSync, writeFileSync, mkdirSync } from 'node:fs';
|
||||
import { join } from 'node:path';
|
||||
import { CONFIG } from '../shared/config.js';
|
||||
import { installDir } from './portfolios.mjs';
|
||||
|
||||
const file = () => join(installDir(), CONFIG.INSTALLATION.SETTINGS_FILE_NAME);
|
||||
|
||||
function read() {
|
||||
try { return JSON.parse(readFileSync(file(), 'utf8')); }
|
||||
catch (e) { if (e.code === 'ENOENT') return {}; throw e; }
|
||||
}
|
||||
|
||||
function write(settings) {
|
||||
mkdirSync(installDir(), { recursive: true });
|
||||
writeFileSync(file(), `${JSON.stringify(settings, null, 2)}\n`);
|
||||
}
|
||||
|
||||
const known = code => Object.hasOwn(CONFIG.LOCALE_TAGS, code);
|
||||
|
||||
export function installLocale() {
|
||||
const { locale } = read();
|
||||
return known(locale) ? locale : CONFIG.INSTALLATION.DEFAULT_LOCALE;
|
||||
}
|
||||
|
||||
export function setInstallLocale(code) {
|
||||
if (!known(code)) throw new Error(`Unknown locale: '${code}'.`);
|
||||
write({ ...read(), locale: code });
|
||||
}
|
||||
|
||||
export function adoptInstallLocale(fromPortfolio) {
|
||||
if (known(read().locale)) return;
|
||||
setInstallLocale(known(fromPortfolio) ? fromPortfolio : CONFIG.INSTALLATION.DEFAULT_LOCALE);
|
||||
}
|
||||
Reference in new issue
Block a user