Outline.prototype.init = function()

in lib/@uncharted/strippets/src/strippets.outline.js [147:179]


Outline.prototype.init = function($parent, options, initialState, initialHighlights) {
    var t = this;
    t.Settings = $.extend({}, t.defaults, options);
    t._id = t.generateId();

    t.constructLayout($parent);
    t.initializeReader();
    t.initializeMainContent();
    t.initializeSidebar();
    t.registerEvents();
    t.registerStateMachine();

    var state = _.some(Outline._states, function(s) {
        return s === initialState;
    }) ? initialState : 'minimal';
    // Set Initial State
    t._currentOutlinePosition = t.Settings.centerOutlinePosition;
    t.toStateIndex = Outline._states.indexOf('hidden');
    t.stateIndex = Outline._states.indexOf('hidden');
    t.transitionPromise = Promise.resolve();
    t.readingModeEnabled = t.Settings.reader.enabled;
    if (initialHighlights) {
        t.highlights = (initialHighlights instanceof Array) ? initialHighlights : [initialHighlights];
    }

    if (state !== 'hidden') {
        t.transitionState(state).then(function() {
            if (t.highlights) {
                t.feature.highlight(t.highlights);
            }
        });
    }
};