Youen Toupin
3 years ago
8 changed files with 8817 additions and 26 deletions
@ -1,7 +1,7 @@
|
||||
@echo off |
||||
|
||||
pushd src |
||||
node embed.js |
||||
node ../tools/embed.js |
||||
node ../node_modules/typescript/lib/tsc.js |
||||
node purify.js |
||||
node ../tools/purify.js |
||||
popd |
||||
|
@ -1,6 +1,6 @@
|
||||
#!/bin/bash |
||||
|
||||
cd src |
||||
node embed.js |
||||
node ../tools/embed.js |
||||
../node_modules/typescript/bin/tsc |
||||
node purify.js |
||||
node ../tools/purify.js |
||||
|
File diff suppressed because it is too large
Load Diff
Before Width: | Height: | Size: 128 KiB After Width: | Height: | Size: 128 KiB |
File diff suppressed because one or more lines are too long
@ -1,22 +0,0 @@
|
||||
let fs = require('fs') |
||||
|
||||
function embedSvg(src, dst) { |
||||
fs.readFile(src, 'utf8', function(err, data) { |
||||
if(err) throw err; |
||||
data = data.replace(/<\?xml[^\?]*\?>[\r\n]*/g, ''); |
||||
data = data.replace(/<svg[^>]*>[\r\n]*/g, ''); |
||||
data = data.replace(/<\/svg>[\r\n]*/g, ''); |
||||
|
||||
data = data.replace(/>\s*<desc[^>]*>/g, ' '); |
||||
data = data.replace(/<\/desc>/g, '>'); |
||||
data = data.replace(/"/g, '"'); |
||||
|
||||
data = "(<any>window)['"+src+"'] = `" + data + "`;"; |
||||
|
||||
fs.writeFile(dst, data, function(err) { |
||||
if(err) throw err; |
||||
}); |
||||
}); |
||||
} |
||||
|
||||
embedSvg('climate-zones-map.svg', 'climate-zones-map.svg.ts'); |
@ -0,0 +1,51 @@
|
||||
let fs = require('fs') |
||||
|
||||
function embedSvg(src, dst) { |
||||
fs.readFile(src, 'utf8', function(err, data) { |
||||
if(err) throw err; |
||||
data = data.replace(/<\?xml[^\?]*\?>[\r\n]*/g, ''); |
||||
data = data.replace(/<svg[^>]*>[\r\n]*/g, ''); |
||||
data = data.replace(/<\/svg>[\r\n]*/g, ''); |
||||
|
||||
data = data.replace(/>\s*<desc[^>]*>/g, ' '); |
||||
data = data.replace(/<\/desc>/g, '>'); |
||||
data = data.replace(/"/g, '"'); |
||||
|
||||
data = "(<any>window)['"+src.replace(/^.*[\\\/]/, '')+"'] = `" + data + "`;"; |
||||
|
||||
fs.writeFile(dst, data, function(err) { |
||||
if(err) throw err; |
||||
}); |
||||
}); |
||||
} |
||||
|
||||
function embedCsv(src, dst) { |
||||
fs.readFile(src, 'utf8', function(err, csvData) { |
||||
if(err) throw err; |
||||
|
||||
let csvLines = csvData.split('\n').map(str => str.split(';')); |
||||
|
||||
let jsData = {}; |
||||
|
||||
let zones = csvLines[0]; |
||||
for(let zoneIdx = 0; zoneIdx < zones.length; ++zoneIdx) { |
||||
let zoneName = zones[zoneIdx]; |
||||
let zoneData = []; |
||||
|
||||
for(let lineIdx = 1; lineIdx < csvLines.length; ++lineIdx) { |
||||
zoneData[lineIdx-1] = Math.round(Number(csvLines[lineIdx][zoneIdx])); |
||||
} |
||||
|
||||
jsData[zoneName] = zoneData; |
||||
} |
||||
|
||||
let content = "(<any>window)['"+src.replace(/^.*[\\\/]/, '')+"'] = " + JSON.stringify(jsData) + ";"; |
||||
|
||||
fs.writeFile(dst, content, function(err) { |
||||
if(err) throw err; |
||||
}); |
||||
}); |
||||
} |
||||
|
||||
embedSvg('../data/climate-zones-map.svg', 'climate-zones-map.svg.ts'); |
||||
embedCsv('../data/climate-zones-data.csv', 'climate-zones-data.ts'); |
Loading…
Reference in new issue