// Wrapper for RequireJS. It will make the standard requirejs(), require(), and
// define() functions from Require JS available inside the anonymous function.
//
// See https://openedx.atlassian.net/wiki/display/PLAT/Integration+of+Require+JS+into+the+system
(function(requirejs, require, define) {
// HACK: this should be removed when it is safe to do so
    if (window.baseUrl) {
        requirejs.config({baseUrl: baseUrl});
    }

    // The current JS file will be loaded and run each time. It will require a
    // single dependency which will be loaded and stored by RequireJS. On
    // subsequent runs, RequireJS will return the dependency from memory, rather
    // than loading it again from the server. For that reason, it is a good idea to
    // keep the current JS file as small as possible, and move everything else into
    // RequireJS module dependencies.
    require(['js/capa/drag_and_drop/main'], function(Main) {
        Main();
    });

// End of wrapper for RequireJS. As you can see, we are passing
// namespaced Require JS variables to an anonymous function. Within
// it, you can use the standard requirejs(), require(), and define()
// functions as if they were in the global namespace.
}(RequireJS.requirejs, RequireJS.require, RequireJS.define)); // End-of: (function (requirejs, require, define)
