JSFiddle - React, Tailwind, and code Playground

by cmruser

JavaScript

(function() {
	(function(root, factory) {
  	// environment detection here
    return root.isvisible = factory();
  })
  (this, function() {
  	// module definition here
    var initialized = false,
    		status = "active",
        idleTime = 60000,
        idleStart = false,
        hidden = false,
        listeners = {},
        cgid = "customGUIDEvent",
        visibilitychange = void 0;
    
    if (typeof document.hidden !== "undefined") {
      hidden = "hidden";
      visibilitychange = "visibilitychange";
    }
    
    var helper = {
    	guid: function() {
      	var s4 = function() {
          return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
        };
        
      	return s4() + s4() + '-' + s4() + '-' + s4() + '-' + s4() + '-' + s4() + s4() + s4();
      },
      track: function() {
      		helper.wakeup();
          
          return isvisible.wakeup(helper.wakeup());
      },
      wakeup: function() {
      	var timer = [];
        
        timer.map(clearTimeout);
        
        if(status !== "active")
        	isvisible.wakeup();
        
        idleStart = +(new Date());
        
        return timer.push(setTimeout(function() {
          if (status === "active")
            return isvisible.idle();
        }, idleTime));
      }
    };
    
    var event = {
      add: function(obj, event, callback) {
      
      },
      remove: function(obj, event, callback) {
      
      },
      trigger: function(obj, event, memo) {
      	if(obj[cgid] && listeners[obj[cgid]] && listeners[obj[cgid]][event]) {
        	var ref = listeners[obj[cgid]][event];
          var results = [];
          
          for(var i = 0, i < ref.length; i++) {
          	var ev = ref[i];
            results.push(ev(memo || {}));
          }
          return results;
        }
      },
      attach: function() {
      	var listener = false;
        
        return function(el, ev, fn) {
        	//if(!listener)
          return listener(el, ev,...