JSFiddle - React, Tailwind, and code Playground

JavaScript

var nav = navigator;

var module =  {
    Plugins: {
            list: function() {
                var list = [];
                if (nav.plugins) {
                    for (var i = 0, l = nav.plugins.length; i < l; i++)
                    {
                        var plugin = {};

                        if (nav.plugins[i].name) {
                            plugin.name = nav.plugins[i].name;
                        }

                        if (nav.plugins[i].description) {
                            plugin.description = nav.plugins[i].description;
                        }

                        list[list.length] = plugin;
                    }                    
                }

                return list;
            },
            get: function (name) {
                for (var i = 0, l = nav.plugins.length; i < l; i++)
                {
                    if (nav.plugins[i].name === name) {
                        return nav.plugins[i];
                    }
                }
                return undefined;
            },
            
            Flash: {
                version: function () {
                    var vers   = 0;
                    var plugin = module.Plugins.get("Shockwave Flash");
                    
                    if (plugin !== undefined) {                        
                        vers = parseFloat(plugin.description.match(/\d{1,2}/));
                    } else {
                        // Test IE
                        var minVersion = 9;
                        var maxVersion = 12;                        
                        for (var i = maxVersion; i >= minVersion; i--)
                        {
                            try
                            {
                                var test = new win.ActiveXObject("ShockwaveFlash.ShockwaveFlash." + i);
                                return i;
                            }
                            catch (e) { /* nothing to see here*/ }
     ...