upgrading/extension/upgrades/0.13-to-0.14/uuid-preset-rename.ts
upgrading/extension/upgrades/0.13-to-0.14/uuid-preset-rename.tsBrowse 76 files
379 tokens
1,312 bytes
Token encoding: o200k_base
Snapshot fac8604
← Back to SKILL.md
1/**2 * Renames uuid field presets (0.13 → 0.14):3 * Before: field.uuid() / field.id.uuidv4() / field.id.uuidv7()4 * After: field.uuidString() / field.id.uuidv4String() / field.id.uuidv7String()5 *6 * Run from the project root: pnpm exec tsx <path-to-this-file>7 */8 9import { execSync } from 'node:child_process';10import { readFileSync, writeFileSync } from 'node:fs';11import { join } from 'pathe';12 13const replacements: Array<[RegExp, string]> = [14 [/\bfield\.id\.uuidv4\(\)/g, 'field.id.uuidv4String()'],15 [/\bfield\.id\.uuidv7\(\)/g, 'field.id.uuidv7String()'],16 [/\bfield\.uuid\(\)/g, 'field.uuidString()'],17];18 19const raw = execSync('git ls-files --cached --others --exclude-standard -- "*.ts"', {20 encoding: 'utf-8',21}).trim();22 23const files = raw.split('\n').filter(Boolean);24let changed = 0;25for (const file of files) {26 const abs = join(process.cwd(), file);27 let content: string;28 try {29 content = readFileSync(abs, 'utf-8');30 } catch {31 continue;32 }33 const original = content;34 for (const [pattern, replacement] of replacements) {35 content = content.replace(pattern, replacement);36 }37 if (content !== original) {38 writeFileSync(abs, content, 'utf-8');39 console.log(`updated ${file}`);40 changed++;41 }42}43console.log(`done — ${changed} file(s) updated`);44