First cut
This commit is contained in:
26
scripts/canonicalize.js
Normal file
26
scripts/canonicalize.js
Normal file
@@ -0,0 +1,26 @@
|
||||
#!/usr/bin/env node
|
||||
import fs from 'fs';
|
||||
import path from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
|
||||
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
||||
const root = path.resolve(__dirname, '..');
|
||||
|
||||
const { stringifyCanonical } = await import(path.join(root, 'shared/src/canonical-json.ts'));
|
||||
|
||||
const files = [
|
||||
'site-context.json',
|
||||
'content/events.json',
|
||||
'config/sms-sites.json',
|
||||
...fs.readdirSync(path.join(root, 'content/sections'))
|
||||
.filter(f => f.endsWith('.json'))
|
||||
.map(f => `content/sections/${f}`),
|
||||
];
|
||||
|
||||
for (const rel of files) {
|
||||
const abs = path.join(root, rel);
|
||||
const parsed = JSON.parse(fs.readFileSync(abs, 'utf-8'));
|
||||
fs.writeFileSync(abs, stringifyCanonical(parsed));
|
||||
console.log(` ✓ ${rel}`);
|
||||
}
|
||||
console.log('\nDone. All files canonicalized.');
|
||||
Reference in New Issue
Block a user