<!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/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/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/layer/layer.js"></script>
    <script src="fw/layer/panel.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/icon.css">
    <link rel="stylesheet" href="fw/layer/panel.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/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="deathmask"></div>
    </div>
</body>
</html>
