office-ui-fabric-react
Version:
Reusable React components for building experiences for Office 365.
40 lines (39 loc) • 1.88 kB
JavaScript
define(["require", "exports", 'react', 'react-dom', './components/App/App', './components/App/AppState', '../utilities/router/index', './pages/GettingStartedPage/GettingStartedPage', '../utilities/resources', './utilities/debugging', './app.scss', './ColorStyles.scss'], function (require, exports, React, ReactDOM, App_1, AppState_1, index_1, GettingStartedPage_1, resources_1, Debugging) {
"use strict";
resources_1.setBaseUrl('./dist/');
/* tslint:disable:no-string-literal */
window['Debugging'] = Debugging;
/* tslint:enable:no-string-literal */
var rootElement;
function _onLoad() {
rootElement = rootElement || document.getElementById('content');
ReactDOM.render(React.createElement(index_1.Router, null, React.createElement(index_1.Route, {component: App_1.App}, _getAppRoutes())), rootElement);
}
function _getAppRoutes() {
var routes = [];
AppState_1.AppState.examplePages.forEach(function (group) {
group.links
.filter(function (link) { return link.hasOwnProperty('component'); })
.forEach(function (link, linkIndex) {
var component = link.component;
routes.push(React.createElement(index_1.Route, {key: linkIndex, path: link.url, component: component}));
});
});
// Default route.
routes.push(React.createElement(index_1.Route, {key: 'gettingstarted', component: GettingStartedPage_1.GettingStartedPage}));
return routes;
}
function _onUnload() {
if (rootElement) {
ReactDOM.unmountComponentAtNode(rootElement);
}
}
var isReady = document.readyState === 'interactive' || document.readyState === 'complete';
if (isReady) {
_onLoad();
}
else {
window.onload = _onLoad;
}
window.onunload = _onUnload;
});