JSFiddle - React, Tailwind, and code Playground

by Glutamat

JavaScript

var sameElements = (function () {
    var f, of, objectFlagName;
    of = objectFlagName = "__pos";

    var tstr = function (o) {
        return Object.prototype.toString.call(o);
    };
    var types = {};
    (function () {
        var tmp = {};
        Object.defineProperty(types, "[object Number]", {
            set: function (v) {
                if (f)
                    tmp[v] = -~tmp[v];
                else
                    tmp[v] = ~-tmp[v];
            },
            get: function () {
                var ret = 1;
                for (var k in tmp) {
                    ret &= !tmp[k];
                }
                return ret;
            }
        });
    })();
    (function () {
        var tmp = {};
        Object.defineProperty(types, "[object String]", {

            set: function (v) {
                if (f) {
                    tmp[v] = -~tmp[v];
                } else {

                    tmp[v] = ~-tmp[v];
                }
            },
            get: function () {
                var ret = 1;
                for (var k in tmp) {
                    ret &= !tmp[k];
                }
                return ret;
            }
        });
    })();

    (function () {
        var tmp = [];
        function add (v) {
            tmp.push(v);
            if (v[of]===void 0) {
                v[of] = [tmp.length -1];
            } else {
                v[of].push(tmp.length -1)
            }            
           
        }
        Object.defineProperty(types, "[object Object]", {
            get: function () {
                var ret = true;
                for (var i = tmp.length - 1; i >= 0; i--) {
                    var c = tmp[i]
                    if (c !== void 0) {
                        ret = false
                        delete c[of]
                    }
                }
                return ret;
            },
            set: function (v) {

                if (f) {
                    add (v);
                }...