#!/usr/bin/env node

// This generates src/stripped-emoji.json as used by the EmojiProvider autocomplete
// provider.

const EMOJIBASE = require('emojibase-data/en/compact.json');

const fs = require('fs');

const output = EMOJIBASE.map(
    (datum) => {
        const newDatum = {
            name: datum.annotation,
            shortname: `:${datum.shortcodes[0]}:`,
            category: datum.group,
            emoji_order: datum.order,
        };
        if (datum.shortcodes.length > 1) {
            newDatum.aliases = datum.shortcodes.slice(1).map(s => `:${s}:`);
        }
        if (datum.emoticon) {
            newDatum.aliases_ascii = [ datum.emoticon ];
        }
        return newDatum;
    }
);

// Write to a file in src. Changes should be checked into git. This file is copied by
// babel using --copy-files
fs.writeFileSync('./src/stripped-emoji.json', JSON.stringify(output));