<!DOCTYPE html>
<!--
~ Copyright 2014,2015 Open Networking Laboratory
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~     http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<html>
<head>
    <meta charset="utf-8">
    <link rel="shortcut icon" href="../data/img/onos-logo.png">
    <title>ONOS Angular</title>

    <!-- Third party library code included here -->
    <!--TODO: use minified versions, once debugging is complete -->
    <script src="../tp/angular.js"></script>
    <script src="../tp/angular-route.js"></script>

    <script src="../tp/d3.js"></script>
    <script src="../tp/topojson.v1.min.js"></script>

    <!-- ONOS UI Framework included here -->
    <!-- TODO: use a single catenated-minified file here -->
    <script src="onos.js"></script>
    <script src="directives.js"></script>

    <script src="fw/util/util.js"></script>
    <script src="fw/util/fn.js"></script>
    <script src="fw/util/random.js"></script>
    <script src="fw/util/theme.js"></script>
    <script src="fw/util/keys.js"></script>

    <script src="fw/mast/mast.js"></script>
    <script src="fw/nav/nav.js"></script>

    <script src="fw/svg/svg.js"></script>
    <script src="fw/svg/glyph.js"></script>
    <script src="fw/svg/icon.js"></script>
    <script src="fw/svg/geodata.js"></script>
    <script src="fw/svg/map.js"></script>
    <script src="fw/svg/zoom.js"></script>
    <script src="fw/svg/svgUtil.js"></script>

    <script src="fw/remote/remote.js"></script>
    <script src="fw/remote/urlfn.js"></script>
    <script src="fw/remote/rest.js"></script>
    <script src="fw/remote/websocket.js"></script>
    <script src="fw/remote/wsevent.js"></script>

    <script src="fw/widget/widget.js"></script>
    <script src="fw/widget/table.js"></script>
    <script src="fw/widget/toolbar.js"></script>

    <script src="fw/layer/layer.js"></script>
    <script src="fw/layer/panel.js"></script>
    <script src="fw/layer/flash.js"></script>
    <script src="fw/layer/quickhelp.js"></script>
    <script src="fw/layer/veil.js"></script>

    <!-- Framework and library stylesheets included here -->
    <!-- TODO: use a single catenated-minified file here -->
    <link rel="stylesheet" href="onos.css">
    <link rel="stylesheet" href="common.css">
    <link rel="stylesheet" href="fw/mast/mast.css">
    <link rel="stylesheet" href="fw/svg/glyph.css">
    <link rel="stylesheet" href="fw/svg/icon.css">
    <link rel="stylesheet" href="fw/layer/panel.css">
    <link rel="stylesheet" href="fw/layer/flash.css">
    <link rel="stylesheet" href="fw/layer/quickhelp.css">
    <link rel="stylesheet" href="fw/layer/veil.css">
    <link rel="stylesheet" href="fw/nav/nav.css">

    <!-- This is where contributed javascript will get injected -->
    <!-- {INJECTED-JAVASCRIPT} -->
    <script src="view/sample/sample.js"></script>
    <script src="view/topo/topo.js"></script>
    <script src="view/topo/topoEvent.js"></script>
    <script src="view/topo/topoFilter.js"></script>
    <script src="view/topo/topoForce.js"></script>
    <script src="view/topo/topoInst.js"></script>
    <script src="view/topo/topoModel.js"></script>
    <script src="view/topo/topoPanel.js"></script>
    <script src="view/topo/topoSelect.js"></script>
    <script src="view/topo/topoTraffic.js"></script>
    <script src="view/device/device.js"></script>
    <!-- TODO: inject javascript refs server-side -->

    <!-- This is where contributed stylesheets will get injected -->
    <!-- {INJECTED-STYLESHEETS} -->
    <link rel="stylesheet" href="view/sample/sample.css">
    <link rel="stylesheet" href="view/topo/topo.css">
    <link rel="stylesheet" href="view/device/device.css">
    <!-- TODO: inject style-sheet refs server-side -->
</head>
<body class="light" ng-app="onosApp">
    <div id="frame" ng-controller="OnosCtrl as onosCtrl">
        <div id="mast"
             ng-controller="MastCtrl as mastCtrl"
             ng-include="'fw/mast/mast.html'"></div>

        <div id="view" ng-view></div>

        <div id="nav"
             ng-controller="NavCtrl as navCtrl"
             ng-include="'fw/nav/nav.html'"></div>

        <div id="floatpanels"></div>
        <div id="alerts"></div>
        <div id="flash"></div>
        <div id="quickhelp"></div>
        <div id="veil"
             resize
             ng-style="resizeWithOffset(0, 0)"></div>
    </div>
</body>
</html>
