<commit_before>({
    init: function (component, event, helper) {
        helper.bootstrapPerfFramework(component);
    },
    /**
     * Action executed after app shell has done Rendering
     */
    doneRendering: function (component, event, helper) {
        var config = helper.getDescriptorFromUrl(),
            def    = config && config.componentDef;

        if (def) {
            // Add a data attribute(data-app-rendered-component) to know when the app provided in the url have done rendering.
            $A.util.setDataAttribute(component.getElement(), 'app-render-component', def.substr(def.lastIndexOf(':') + 1));$A.util.setDataAttribute(component.getElement(), 'app-render-component', def.substr(def.lastIndexOf(':') + 1));
        }
    },

    locationChange: function (component, event, helper) {
        var descriptor = helper.getDescriptorFromUrl(),
            callback   = function (newCmp) {
                $A.log("Start rendering component: " + JSON.stringify(descriptor));

                // Wait 300ms to stabilize the browser
                $A.PERFCORE.later(300, function (t) {
                    // Create the context for Aura
                    $A.run(function () {
                        // Start timming 
                        $A.PERFCORE.mark('START:cmpRender');
                        helper.renderComponent(component.find('container'), newCmp);

                        // Use RAF to wait till the browser updates and paints
                        $A.PERFCORE.raf(function (t) {
                            $A.PERFCORE.mark('END:cmpRender');
                            $A.util.setDataAttribute(component.getElement(), 'app-rendered-component', 'true');
                        });
                    });
                });
                
            };

        if (descriptor) {
            //$A.log("Loading component for " + JSON.stringify(descriptor));
            helper.createComponent(descriptor.componentDef, descriptor.attributes && descriptor.attributes.values, callback);
        } else {
            //$A.log('No component specified, listing components');
            helper.createComponent('perfTest:registeredComponents', {}, callback);
        }
    }
})<commit_msg>Decrease wait before render to 50ms<commit_after>({
    init: function (component, event, helper) {
        helper.bootstrapPerfFramework(component);
    },
    /**
     * Action executed after app shell has done Rendering
     */
    doneRendering: function (component, event, helper) {
        var config = helper.getDescriptorFromUrl(),
            def    = config && config.componentDef;

        if (def) {
            // Add a data attribute(data-app-rendered-component) to know when the app provided in the url have done rendering.
            $A.util.setDataAttribute(component.getElement(), 'app-render-component', def.substr(def.lastIndexOf(':') + 1));$A.util.setDataAttribute(component.getElement(), 'app-render-component', def.substr(def.lastIndexOf(':') + 1));
        }
    },

    locationChange: function (component, event, helper) {
        var descriptor = helper.getDescriptorFromUrl(),
            callback   = function (newCmp) {
                $A.log("Start rendering component: " + JSON.stringify(descriptor));

                // Wait 50ms to stabilize the browser
                $A.PERFCORE.later(50, function (t) {
                    // Create the context for Aura
                    $A.run(function () {
                        // Start timming 
                        $A.PERFCORE.mark('START:cmpRender');
                        helper.renderComponent(component.find('container'), newCmp);

                        // Use RAF to wait till the browser updates and paints
                        $A.PERFCORE.raf(function (t) {
                            $A.PERFCORE.mark('END:cmpRender');
                            $A.util.setDataAttribute(component.getElement(), 'app-rendered-component', 'true');
                        });
                    });
                });
                
            };

        if (descriptor) {
            //$A.log("Loading component for " + JSON.stringify(descriptor));
            helper.createComponent(descriptor.componentDef, descriptor.attributes && descriptor.attributes.values, callback);
        } else {
            //$A.log('No component specified, listing components');
            helper.createComponent('perfTest:registeredComponents', {}, callback);
        }
    }
})
{'fraction_non_alphanumeric': 0.12037449843958983, 'fraction_numerical': 0.0035666518056174765, 'mean_word_length': 1.83270202020202, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7057966', 'n_tokens_mistral': 1135, 'n_tokens_neox': 1068, 'n_words': 245}