UNPKG

2gis-maps

Version:

Interactive 2GIS maps API, based on Leaflet

53 lines (38 loc) 1.89 kB
var gulp = require('gulp'); var fs = require('fs'); var mkdirp = require('mkdirp'); var config = require('../../app/config'); var deps = require('../deps')(config); var { copyImg } = require('./copyImg'); function collectImagesStats(cb) { var skins = deps.getSkinsList(); var imagesStatsPerSkin = deps.getImagesFilesStats(skins); mkdirp.sync('./gulp/tmp'); mkdirp.sync('./gulp/tmp/less'); skins.forEach(function(skinName) { var skinImagesFilesStats = imagesStatsPerSkin[skinName]; var statisticsObject; var statisticsString = ''; var imageExtension; var originalImageName; var originalImageStatisticObject; for (var imageName in skinImagesFilesStats) { originalImageName = imageName.replace(/@\d+(\.\d+)?x/, ''); statisticsObject = skinImagesFilesStats[imageName]; originalImageStatisticObject = skinImagesFilesStats[originalImageName]; imageExtension = (typeof statisticsObject.extension === 'undefined') ? 'svg' : statisticsObject.extension; statisticsString += '.imageData(\'' + imageName + '\') { ' + '@filename: \'' + imageName + '\'; ' + '@extension: \'' + imageExtension + '\'; ' + '@hasVectorVersion: ' + !!statisticsObject.hasVectorVersion + '; ' + '@width: ' + statisticsObject.width + 'px; ' + '@height: ' + statisticsObject.height + 'px; ' + '@originalWidth: ' + originalImageStatisticObject.width + 'px; ' + '@originalHeight: ' + originalImageStatisticObject.height + 'px; ' + '}\n'; } fs.writeFileSync('./gulp/tmp/less/images-files-statistics.' + skinName + '.less', statisticsString); }); cb(); } exports.collectImagesStats = gulp.series(copyImg, collectImagesStats);