- Delete old Vite+Svelte frontend - Initialize new SvelteKit project with TypeScript - Configure Tailwind CSS v4 + DaisyUI - Implement JWT authentication with auto-refresh - Create login page with form validation (Zod) - Add protected route guards - Update Docker configuration for single-stage build - Add E2E tests with Playwright (6/11 passing) - Fix Svelte 5 reactivity with $state() runes Known issues: - 5 E2E tests failing (timing/async issues) - Token refresh implementation needs debugging - Validation error display timing
29 lines
1.2 KiB
JavaScript
29 lines
1.2 KiB
JavaScript
import fs from 'fs'
|
|
import { download } from 'libphonenumber-metadata-generator'
|
|
|
|
const metadataFileOutputPath = process.argv[2]
|
|
const infoFileOutputPath = process.argv[3]
|
|
|
|
// Pulls the latest released metadata from Google's repostory.
|
|
// Updates `PhoneNumberMetadata.xml` and `metadata-info.json` files.
|
|
download().then(({ date, version, changes, xml }) => {
|
|
// Print the metadata version and a list of changes.
|
|
console.log('========================================')
|
|
console.log(`= Metadata / ${version}`)
|
|
console.log('=')
|
|
console.log(`= Date: ${date.toUTCString()
|
|
.slice(0, date.toUTCString().indexOf('00:00:00') - 1)
|
|
.slice(date.toUTCString().indexOf(',') + ', '.length)
|
|
}`)
|
|
console.log('=')
|
|
const consoleOutputPrefix = '= '
|
|
console.log(`= Changes:\n${changes.map(_ => consoleOutputPrefix + '* ' + _.replace(/\n/g, '\n' + consoleOutputPrefix + ' ')).join('\n')}`)
|
|
console.log('========================================')
|
|
// Write metadata changes info.
|
|
fs.writeFileSync(infoFileOutputPath, JSON.stringify({ date, version, changes }, null, 2))
|
|
// Write the latest metadata XML to `PhoneNumberMetadata.xml` file.
|
|
fs.writeFileSync(metadataFileOutputPath, xml)
|
|
}).catch((error) => {
|
|
console.error(error)
|
|
process.exit(1)
|
|
}) |