all files / lib/utils/ encode.js

100% Statements 12/12
87.5% Branches 7/8
100% Functions 2/2
100% Lines 11/11
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21                13×    
"use strict";
 
Object.defineProperty(exports, "__esModule", {
    value: true
});
exports.default = encode;
 
var _token = require("../token");
 
var _token2 = _interopRequireDefault(_token);
 
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
function encode(tokens) {
    if (tokens instanceof _token2.default) {
        return new _token2.default(tokens.type, encode(tokens.content), tokens.alias);
    } else if (Array.isArray(tokens)) {
        return tokens.map(encode);
    }
    return tokens.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/\u00a0/g, " ");
}