JSFiddle - React, Tailwind, and code Playground

by krisselden

JavaScript

var injections = [
    {
    "name": "controllers"},
{
    "name": "store",
    "before": "controllers"},
{
    "name": "giveStoreToControllers"},
{
    "name": "Analytics"},
{
    "name": "createPanelManager",
    "after": "connectControllers"},
{
    "name": "createWellManager",
    "after": "controllers"},
{
    "name": "createSaveReminderManager",
    "after": "connectControllers"},
{
    "name": "setTargetOfPanelControllers",
    "after": "createPanelManager"},
{
    "name": "connectControllers",
    "after": "controllers"},
{
    "name": "initializePushChannels"},
{
    "name": "transloaditClusterFactory",
    "after": "controllers"}
];

injections.sort(function(a, b) {
    if (a.before) {
        if (!b.before || a.before === b.name) {
            return -1;
        }
    } else if (a.after) {
        if (!b.after || a.after === b.name) {
            return 1;
        }
    }

    if (b.before) {
        if (!a.before || b.before === a.name) {
            return 1;
        }
    } else if (b.after) {
        if (!a.after || b.after === a.name) {
            return -1;
        }
    }

    return 0;
});

for (var i=0; i<injections.length; i++) {
    $(document.body).append($('<p></p>').text(injections[i].name));
}