Add `/.well-known/matrix/client` for Matrix clients
[gitter.git] / scripts / generate-service-sprite.js
blobc76db115871fb1f00edd137d5ec4e596462e2b5e
1 'use strict';
3 var Builder = require('node-spritesheet').Builder;
4 var services = require('@gitterhq/services');
5 var fse = require('fs-extra');
7 var legacyImages = [];
8 var retinaImages = [];
9 Object.keys(services).forEach(function(serviceKey) {
10   var service = services[serviceKey];
11   Object.keys(service.icons).map(function(iconKey) {
12     var icon = service.icons[iconKey];
14     fse.copySync(
15       icon.legacy,
16       __dirname + '/../output/temp-sprites/' + serviceKey + '-' + iconKey + '.png'
17     );
18     legacyImages.push(__dirname + '/../output/temp-sprites/' + serviceKey + '-' + iconKey + '.png');
19     fse.copySync(
20       icon.retina,
21       __dirname + '/../output/temp-sprites/' + serviceKey + '-' + iconKey + '@2x.png'
22     );
23     retinaImages.push(
24       __dirname + '/../output/temp-sprites/' + serviceKey + '-' + iconKey + '@2x.png'
25     );
26   });
27 });
29 var builder = new Builder({
30   outputDirectory: __dirname + '/../public/sprites',
31   outputCss: 'services.css',
32   selector: '.service-sprite',
33   filter: function(stupid_library_doesnt_work_unless_I_add_a_filter) {
34     return stupid_library_doesnt_work_unless_I_add_a_filter;
35   }
36 });
38 builder.addConfiguration('default', {
39   images: legacyImages,
40   pixelRatio: 1,
41   outputImage: 'services.png'
42 });
44 builder.addConfiguration('retina', {
45   images: retinaImages,
46   pixelRatio: 2,
47   outputImage: 'services@2x.png'
48 });
50 builder.build(function() {});