JSFiddle - React, Tailwind, and code Playground

by sushant_ceb

HTML

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.js"></script>
<div ng-app="myApp">
  <div ng-controller="MyCtrl">
    Hello, {{name}}!
  </div>
</div>

JavaScript

var myApp = angular.module('myApp', []);
myApp.config(['$provide', function($provide) {

  $provide.decorator('$log', [
    '$delegate',
    function $logDecorator($delegate) {
      enhanceLoggerFn($delegate);
      return $delegate;
    }
  ]);
}]);

function enhanceLoggerFn($log) {
console.log('1');
  var enhanceLogger = function($log) {
    var separator = "::",

      /**
       * Capture the original $log functions; for use in enhancedLogFn()
       */
      _$log = (function($log) {
        return {
          log: $log.log,
          info: $log.info,
          warn: $log.warn,
          debug: $log.debug,
          error: $log.error
        };
      })($log),

      /**
       * Partial application to pre-capture a logger function
       */
      prepareLogFn = function(logFn) {
        /**
         * Invoke the specified `logFn` with the supplant functionality...
         */
        var enhancedLogFn = function() {
          try {
            var args = Array.prototype.slice.call(arguments);

            // prepend a timestamp and optional classname to the original output message
            //args[0] = supplant("{0} - {1}{2}", [now, className, args[0]]);
            //args = colorify(supplant.apply(null, args), colorCSS);
						console.log('2');
            logFn.apply(null, args);
          } catch (error) {
            $log.error("LogEnhancer ERROR: " + error);
          }

        };

        // Only needed to support angular-mocks expectations
        enhancedLogFn.logs = [];

        return enhancedLogFn;
      },

      /**
       * Support to generate class-specific logger instance with classname only
       */
      getInstance = function(className, colorCSS, customSeparator) {
        className = (className !== undefined) ? className + (customSeparator || separator) : "";

        var instance = {
          log: prepareLogFn(_$log.log, className, colorCSS),
          info: prepareLogFn(_$log.info, className, colorCSS),
          warn:...