Skip to content
Snippets Groups Projects
Select Git revision
  • 1c887b510f5fab822ad43b136924586cac47a2e0
  • master default protected
  • 3-regression-l-onglet-network-reste-vide
  • v1.7.5 protected
  • v1.7.4 protected
  • v1.7.3 protected
  • v1.7.2 protected
  • v1.7.1 protected
  • v1.7.0 protected
  • v1.6.31 protected
  • v1.6.30 protected
  • v1.6.29 protected
  • v1.6.28 protected
  • v1.6.27 protected
  • v1.6.26 protected
  • v1.6.25 protected
  • v1.6.24 protected
  • v1.6.23 protected
  • v1.6.22 protected
  • v1.6.21 protected
  • v1.6.20 protected
  • v1.6.19 protected
  • v1.6.18 protected
23 results

cesium.js

Blame
  • cesium.js 1.60 KiB
    "use strict";
    
    const
      request = require('request'),
      fs = require('fs-extra'),
      rm = require('rimraf'),
      path = require('path'),
      AdmZip = require('adm-zip'),
      tmp = require('tmp');
    
    const CESIUM_VERSION = '0.12.2';
    const CESIUM_RELEASE = 'https://github.com/duniter/cesium/releases/download/v' + CESIUM_VERSION + '/cesium-v' + CESIUM_VERSION + '-web.zip';
    const OUTPUT_ZIP = tmp.fileSync().name;
    const EXTRACT_PATH = path.join(__dirname, './cesium');
    const EXTRACT_OVERWRITE = true;
    
    const outputStream = fs.createWriteStream(OUTPUT_ZIP);
    
    outputStream.on('close', () => {
      console.log('Extracting Cesium to path %s...', EXTRACT_PATH);
      const zip = new AdmZip(OUTPUT_ZIP);
      zip.extractAllTo(EXTRACT_PATH, EXTRACT_OVERWRITE);
    
      const cesiumSourceFolder = EXTRACT_PATH;
      const cesiumPublicFolder = path.join(__dirname, 'public', 'cesium');
      if (fs.existsSync(cesiumPublicFolder)) {
        // Remove existing cesium installation
        rm.sync(cesiumPublicFolder);
      }
    
      // Move extracted Cesium to destination folder
      fs.renameSync(cesiumSourceFolder, cesiumPublicFolder);
    
      // Configure Cesium
      const cesiumConfigFile = path.join(__dirname, 'public', 'cesium', 'config.js');
      let config = fs.readFileSync(cesiumConfigFile, 'utf8');
      config = config.replace(/"plugins"(\n|.)*"version"/, '"plugins\": {},\n\t"version"');
      config = config.replace(/"compatProtocol_0_80": true,/, '"compatProtocol_0_80": false,');
      fs.writeFileSync(cesiumConfigFile, config);
    
      process.exit(0);
    });
    
    console.log('Downloading file %s...', CESIUM_RELEASE);
    
    request({
      followAllRedirects: true,
      url: CESIUM_RELEASE
    }).pipe(outputStream);