// Define jquery and jquery-ui because they've been preloaded but we still want them to be useable in modules define('jquery', [], function () { return jQuery; }); define('jquery-ui', [], function () { return jQuery; }); // Setup requireJS require.config({ urlArgs: 'v=' + 638778895609557298, deps: [ 'jquery', 'jquery-ui', 'jquery.autocomplete.min', 'Extensions', 'json2', 'Ksw/Context' ], paths: { 'knockout': 'knockout/knockout-3.3.0', 'knockout-bindingHandlers': 'knockout/bindingHandlers', 'knockout-components': 'knockout/components', 'text': 'require-js/text', 'videojs': 'video-js/video' }, shim: { 'jquery.autocomplete.min': { deps: ['jquery', 'jquery-ui'] }, 'knockout': { exports: 'ko' }, 'knockout-bindingHandlers': { deps: ['knockout'] } } }); // Initial entry-point for launching modules require(['jquery'], function ($) { $(function () { if (typeof Ksw != 'undefined' && Ksw.JavaScriptResources) { require(Ksw.JavaScriptResources, function () { var viewModel; // Attempt to load and initialize the view model for (var index = 0; index < arguments.length; index++) { var argument = arguments[index]; if (argument && argument.ViewModel) { if (viewModel) { throw 'Unable to determine which view model for which to apply bindings. Multiple root view models have been identified.'; } else { viewModel = new argument.ViewModel({}); } } } // If we have a view model, apply its bindings using knockout if (viewModel) { require(['knockout', 'knockout-bindingHandlers'], function (ko) { ko.applyBindings(viewModel); }); } }); }; }); });