1
0
mirror of https://github.com/tabler/tabler.git synced 2025-12-21 17:34:25 +04:00
Files
tabler/preview/.build/download-images.mjs
2025-03-24 01:26:53 +01:00

60 lines
1.5 KiB
JavaScript

// #!/usr/bin/env node
// import { readFileSync, createWriteStream, existsSync, writeFileSync } from 'node:fs'
// import { join, dirname } from 'node:path'
// import request, { head } from 'request'
// import { fileURLToPath } from 'node:url';
// const __dirname = dirname(fileURLToPath(import.meta.url))
// const filePath = join(__dirname, '..', 'preview', 'pages', '_data', 'photos.json')
// const photos = JSON.parse(readFileSync(filePath, 'utf8'))
// const urlTitle = (str) => {
// str = str
// .toLowerCase()
// .replaceAll('&', 'and')
// .replace(/[^[a-z0-9-]/g, '-')
// .replace(/-+/g, '-')
// return str
// }
// const download = function (uri, filename, callback, error) {
// head(uri, function (err, res, body) {
// request(uri).pipe(createWriteStream(filename))
// .on('close', callback)
// .on('error', error)
// })
// }
// async function downloadPhotos() {
// for (const key in photos) {
// const photo = photos[key]
// let filename, i = 1;
// do {
// filename = `${urlTitle(photo['title'])}${i > 1 ? `-${i}` : ''}.jpg`
// i++
// } while (existsSync(join(__dirname, `../preview/static/photos/${filename}`)))
// await new Promise((resolve, reject) => {
// download(photo['path'], join(__dirname, `../preview/static/photos/${filename}`), function () {
// resolve()
// }, function () {
// reject()
// });
// })
// photos[key]['file'] = filename
// photos[key]['horizontal'] = photo['width'] > photo['height']
// }
// writeFileSync(filePath, JSON.stringify(photos))
// }
// downloadPhotos();