mirror of
https://github.com/iNavFlight/inav-configurator.git
synced 2025-07-14 20:10:11 +03:00
add first version mission planer
This commit is contained in:
parent
a058f0a96c
commit
6cd87dbd64
9 changed files with 721 additions and 213 deletions
|
@ -2319,5 +2319,29 @@
|
||||||
},
|
},
|
||||||
"downloadUpdatesBtn": {
|
"downloadUpdatesBtn": {
|
||||||
"message": "Download new app"
|
"message": "Download new app"
|
||||||
|
},
|
||||||
|
"tabMissionControl": {
|
||||||
|
"message": "Mission Control"
|
||||||
|
},
|
||||||
|
"loadMissionButton": {
|
||||||
|
"message": "Load mission"
|
||||||
|
},
|
||||||
|
"saveMissionButton": {
|
||||||
|
"message": "Save mission"
|
||||||
|
},
|
||||||
|
"editPointHead": {
|
||||||
|
"message": "Edit point"
|
||||||
|
},
|
||||||
|
"editPointButtonSave": {
|
||||||
|
"message": "Save"
|
||||||
|
},
|
||||||
|
"editPointButtonRemove": {
|
||||||
|
"message": "Remove"
|
||||||
|
},
|
||||||
|
"removeAllPointButtonSave": {
|
||||||
|
"message": "Remove all points"
|
||||||
|
},
|
||||||
|
"missionTotalInformationHead": {
|
||||||
|
"message": "Total information"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,7 +38,8 @@ var GUI_control = function () {
|
||||||
'setup',
|
'setup',
|
||||||
'osd',
|
'osd',
|
||||||
'profiles',
|
'profiles',
|
||||||
'advanced_tuning'
|
'advanced_tuning',
|
||||||
|
'mission_control'
|
||||||
];
|
];
|
||||||
this.allowedTabs = this.defaultAllowedTabsWhenDisconnected;
|
this.allowedTabs = this.defaultAllowedTabsWhenDisconnected;
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||||
<link type="text/css" rel="stylesheet" href="./build/styles.css" media="all"/>
|
<link type="text/css" rel="stylesheet" href="./build/styles.css" media="all"/>
|
||||||
<script type="text/javascript" src="./build/script.js"></script>
|
<script type="text/javascript" src="./build/script.js"></script>
|
||||||
|
<link type="text/css" rel="stylesheet" href="./build/map.css" media="all"/>
|
||||||
|
<script type="text/javascript" src="./build/map.js"></script>
|
||||||
<title></title>
|
<title></title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
@ -14,7 +16,8 @@
|
||||||
<div class="modal__text" data-i18n="appUpdateNotificationDescription"></div>
|
<div class="modal__text" data-i18n="appUpdateNotificationDescription"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal__buttons modal__buttons--upbottom">
|
<div class="modal__buttons modal__buttons--upbottom">
|
||||||
<a href="https://github.com/iNavFlight/inav-configurator/releases" target="_blank" id="update-notification-download" class="modal__button modal__button--main modal__button--main--inline" data-i18n="downloadUpdatesBtn"></a>
|
<a href="https://github.com/iNavFlight/inav-configurator/releases" target="_blank" id="update-notification-download"
|
||||||
|
class="modal__button modal__button--main modal__button--main--inline" data-i18n="downloadUpdatesBtn"></a>
|
||||||
<a id="update-notification-close" class="modal__button modal__button--main modal__button--main--inline" data-i18n="closeUpdateBtn"></a>
|
<a id="update-notification-close" class="modal__button modal__button--main modal__button--main--inline" data-i18n="closeUpdateBtn"></a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -185,6 +188,7 @@
|
||||||
<li class="tab_servos"><a href="#" data-i18n="tabServos" class="tabicon ic_servo" title="Servos"></a>
|
<li class="tab_servos"><a href="#" data-i18n="tabServos" class="tabicon ic_servo" title="Servos"></a>
|
||||||
</li>
|
</li>
|
||||||
<li class="tab_gps"><a href="#" data-i18n="tabGPS" class="tabicon ic_gps" title="GPS"></a></li>
|
<li class="tab_gps"><a href="#" data-i18n="tabGPS" class="tabicon ic_gps" title="GPS"></a></li>
|
||||||
|
<li class="tab_mission_control"><a href="#" data-i18n="tabMissionControl" class="tabicon ic_mission" title="Mission Control"></a></li>
|
||||||
<li class="tab_motors"><a href="#" data-i18n="tabMotorTesting" class="tabicon ic_motor"
|
<li class="tab_motors"><a href="#" data-i18n="tabMotorTesting" class="tabicon ic_motor"
|
||||||
title="Motors"></a></li>
|
title="Motors"></a></li>
|
||||||
<li class="tab_osd"><a href="#" data-i18n="tabOSD" class="tabicon ic_osd" title="OSD"></a></li>
|
<li class="tab_osd"><a href="#" data-i18n="tabOSD" class="tabicon ic_osd" title="OSD"></a></li>
|
||||||
|
@ -199,7 +203,6 @@
|
||||||
title="Onboard Logging"></a></li>
|
title="Onboard Logging"></a></li>
|
||||||
<li class="tab_cli"><a href="#" data-i18n="tabCLI" class="tabicon ic_cli" title="CLI"></a></li>
|
<li class="tab_cli"><a href="#" data-i18n="tabCLI" class="tabicon ic_cli" title="CLI"></a></li>
|
||||||
|
|
||||||
<!--<li class=""><a href="#" class="tabicon ic_mission">Mission (spare icon)</a></li>-->
|
|
||||||
<!--<li class=""><a href="#" class="tabicon ic_advanced">Advanced (spare icon)</a></li>-->
|
<!--<li class=""><a href="#" class="tabicon ic_advanced">Advanced (spare icon)</a></li>-->
|
||||||
<!--<li class=""><a href="#" class="tabicon ic_wizzard">Wizzard (spare icon)</a></li>-->
|
<!--<li class=""><a href="#" class="tabicon ic_wizzard">Wizzard (spare icon)</a></li>-->
|
||||||
</ul>
|
</ul>
|
||||||
|
|
3
main.js
3
main.js
|
@ -189,6 +189,9 @@ $(document).ready(function () {
|
||||||
case 'gps':
|
case 'gps':
|
||||||
TABS.gps.initialize(content_ready);
|
TABS.gps.initialize(content_ready);
|
||||||
break;
|
break;
|
||||||
|
case 'mission_control':
|
||||||
|
TABS.mission_control.initialize(content_ready);
|
||||||
|
break;
|
||||||
case 'motors':
|
case 'motors':
|
||||||
TABS.motors.initialize(content_ready);
|
TABS.motors.initialize(content_ready);
|
||||||
break;
|
break;
|
||||||
|
|
411
package-lock.json
generated
411
package-lock.json
generated
|
@ -1,26 +1,13 @@
|
||||||
{
|
{
|
||||||
"name": "inav-configurator",
|
"name": "inav-configurator",
|
||||||
"version": "1.7.3",
|
"version": "1.8.1",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@mapbox/point-geometry": {
|
|
||||||
"version": "0.1.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz",
|
|
||||||
"integrity": "sha1-ioP5M1x4YO/6Lu7KJUMyqgru2PI="
|
|
||||||
},
|
|
||||||
"@mapbox/vector-tile": {
|
|
||||||
"version": "1.3.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-1.3.0.tgz",
|
|
||||||
"integrity": "sha1-xJX5clJb78zvzYOPRf+jfvO3D+g=",
|
|
||||||
"requires": {
|
|
||||||
"@mapbox/point-geometry": "0.1.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"abbrev": {
|
"abbrev": {
|
||||||
"version": "1.1.0",
|
"version": "1.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
|
||||||
"integrity": "sha1-0FVMIlZjbi9W58LlrRg/hZQo2B8="
|
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
|
||||||
},
|
},
|
||||||
"accepts": {
|
"accepts": {
|
||||||
"version": "1.3.3",
|
"version": "1.3.3",
|
||||||
|
@ -32,9 +19,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"acorn": {
|
"acorn": {
|
||||||
"version": "5.0.3",
|
"version": "5.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.2.1.tgz",
|
||||||
"integrity": "sha1-xGDfCEkUY/AozLguqzcwvwEIez0="
|
"integrity": "sha512-jG0u7c4Ly+3QkkW18V+NRDN+4bWHdln30NL1ZL2AvFZZmQe/BfopYCtghCKKVBUSetZ4QKcyA0pY6/4Gw8Pv8w=="
|
||||||
},
|
},
|
||||||
"after": {
|
"after": {
|
||||||
"version": "0.8.2",
|
"version": "0.8.2",
|
||||||
|
@ -118,9 +105,9 @@
|
||||||
"integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8="
|
"integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8="
|
||||||
},
|
},
|
||||||
"aproba": {
|
"aproba": {
|
||||||
"version": "1.1.2",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/aproba/-/aproba-1.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
|
||||||
"integrity": "sha512-ZpYajIfO0j2cOFTO955KUMIKNmj6zhX8kVztMAxFsDaMwz+9Z9SV0uou2pC9HJqcfpffOsjnbrDMvkNy+9RXPw=="
|
"integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="
|
||||||
},
|
},
|
||||||
"archiver": {
|
"archiver": {
|
||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
|
@ -212,9 +199,9 @@
|
||||||
"integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM="
|
"integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM="
|
||||||
},
|
},
|
||||||
"arraybuffer.slice": {
|
"arraybuffer.slice": {
|
||||||
"version": "0.0.6",
|
"version": "0.0.7",
|
||||||
"resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz",
|
"resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz",
|
||||||
"integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco="
|
"integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog=="
|
||||||
},
|
},
|
||||||
"asn1": {
|
"asn1": {
|
||||||
"version": "0.2.3",
|
"version": "0.2.3",
|
||||||
|
@ -234,6 +221,11 @@
|
||||||
"lodash": "4.17.4"
|
"lodash": "4.17.4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"async-limiter": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg=="
|
||||||
|
},
|
||||||
"asynckit": {
|
"asynckit": {
|
||||||
"version": "0.4.0",
|
"version": "0.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
||||||
|
@ -250,9 +242,9 @@
|
||||||
"integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4="
|
"integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4="
|
||||||
},
|
},
|
||||||
"babylon": {
|
"babylon": {
|
||||||
"version": "7.0.0-beta.24",
|
"version": "7.0.0-beta.19",
|
||||||
"resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.24.tgz",
|
"resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.19.tgz",
|
||||||
"integrity": "sha512-k1yiJYz1Zt6/xfxx0OC7obTNOF5WktZ8P8z1y+7kwP4INOygqqgzolO5fse4jYIb3CzHyU7WNC38EjYa1wjEGQ=="
|
"integrity": "sha512-Vg0C9s/REX6/WIXN37UKpv5ZhRi6A4pjHlpkE34+8/a6c2W1Q692n3hmc+SZG5lKRnaExLUbxtJ1SVT+KaCQ/A=="
|
||||||
},
|
},
|
||||||
"backo2": {
|
"backo2": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
|
@ -612,36 +604,44 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"closure-util": {
|
"closure-util": {
|
||||||
"version": "1.22.0",
|
"version": "1.26.0",
|
||||||
"resolved": "https://registry.npmjs.org/closure-util/-/closure-util-1.22.0.tgz",
|
"resolved": "https://registry.npmjs.org/closure-util/-/closure-util-1.26.0.tgz",
|
||||||
"integrity": "sha512-DX5IhSawO9838/fKNaH3Cx8jeeJGWORodHhTFkxCOVsr71OtXCfo/rtXsV24eq3iq31jdmgUQvlNIXEMHTlkWg==",
|
"integrity": "sha512-zpWABEochWrY48soiEttuqJk/OSYscS9PcvKgHvKUefM29+R8rqx5Bp8KIZHR0Nsq1JrNgxg2VTmJ/IsqN5VOA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"acorn": "5.0.3",
|
"acorn": "5.2.1",
|
||||||
"async": "2.5.0",
|
"async": "2.6.0",
|
||||||
"fs-extra": "3.0.1",
|
"fs-extra": "4.0.2",
|
||||||
"gaze": "1.1.2",
|
"gaze": "1.1.2",
|
||||||
"get-down": "1.2.0",
|
"get-down": "1.2.0",
|
||||||
"glob": "7.1.2",
|
"glob": "7.1.2",
|
||||||
"graceful-fs": "4.1.11",
|
"graceful-fs": "4.1.11",
|
||||||
"handlebars": "4.0.10",
|
"handlebars": "4.0.11",
|
||||||
"lodash": "4.17.4",
|
"lodash": "4.17.4",
|
||||||
"minimatch": "3.0.4",
|
"minimatch": "3.0.4",
|
||||||
"mkdirp": "0.5.1",
|
"mkdirp": "0.5.1",
|
||||||
"nomnom": "1.8.1",
|
"nomnom": "1.8.1",
|
||||||
"npmlog": "4.1.2",
|
"npmlog": "4.1.2",
|
||||||
"rimraf": "2.6.1",
|
"rimraf": "2.6.2",
|
||||||
"send": "0.15.3",
|
"send": "0.16.1",
|
||||||
"socket.io": "2.0.1",
|
"socket.io": "2.0.4",
|
||||||
"temp": "github:adam-lynch/node-temp#279c1350cb7e4f02515d91da9e35d39a40774016"
|
"temp": "github:adam-lynch/node-temp#279c1350cb7e4f02515d91da9e35d39a40774016"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"async": {
|
||||||
|
"version": "2.6.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz",
|
||||||
|
"integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==",
|
||||||
|
"requires": {
|
||||||
|
"lodash": "4.17.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"fs-extra": {
|
"fs-extra": {
|
||||||
"version": "3.0.1",
|
"version": "4.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.2.tgz",
|
||||||
"integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=",
|
"integrity": "sha1-+RcExT0bRh+JNFKwwwfZmXZHq2s=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"graceful-fs": "4.1.11",
|
"graceful-fs": "4.1.11",
|
||||||
"jsonfile": "3.0.1",
|
"jsonfile": "4.0.0",
|
||||||
"universalify": "0.1.1"
|
"universalify": "0.1.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -664,12 +664,20 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"jsonfile": {
|
"jsonfile": {
|
||||||
"version": "3.0.1",
|
"version": "4.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
|
||||||
"integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=",
|
"integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"graceful-fs": "4.1.11"
|
"graceful-fs": "4.1.11"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"rimraf": {
|
||||||
|
"version": "2.6.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz",
|
||||||
|
"integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
|
||||||
|
"requires": {
|
||||||
|
"glob": "7.1.2"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -1572,23 +1580,23 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"engine.io": {
|
"engine.io": {
|
||||||
"version": "3.1.1",
|
"version": "3.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.1.4.tgz",
|
||||||
"integrity": "sha1-CAUf+5UZB6MmfnLgvLPQ83fkZgs=",
|
"integrity": "sha1-PQIRtwpVLOhB/8fahiezAamkFi4=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"accepts": "1.3.3",
|
"accepts": "1.3.3",
|
||||||
"base64id": "1.0.0",
|
"base64id": "1.0.0",
|
||||||
"cookie": "0.3.1",
|
"cookie": "0.3.1",
|
||||||
"debug": "2.6.8",
|
"debug": "2.6.9",
|
||||||
"engine.io-parser": "2.1.1",
|
"engine.io-parser": "2.1.2",
|
||||||
"uws": "0.14.5",
|
"uws": "0.14.5",
|
||||||
"ws": "2.3.1"
|
"ws": "3.3.3"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"debug": {
|
"debug": {
|
||||||
"version": "2.6.8",
|
"version": "2.6.9",
|
||||||
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz",
|
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
|
||||||
"integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=",
|
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ms": "2.0.0"
|
"ms": "2.0.0"
|
||||||
}
|
}
|
||||||
|
@ -1601,28 +1609,27 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"engine.io-client": {
|
"engine.io-client": {
|
||||||
"version": "3.1.1",
|
"version": "3.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.4.tgz",
|
||||||
"integrity": "sha1-QVqYUrrbFPoAj6PvHjFgjbZ2EyU=",
|
"integrity": "sha1-T88TcLRxY70s6b4nM5ckMDUNTqE=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"component-emitter": "1.2.1",
|
"component-emitter": "1.2.1",
|
||||||
"component-inherit": "0.0.3",
|
"component-inherit": "0.0.3",
|
||||||
"debug": "2.6.8",
|
"debug": "2.6.9",
|
||||||
"engine.io-parser": "2.1.1",
|
"engine.io-parser": "2.1.2",
|
||||||
"has-cors": "1.1.0",
|
"has-cors": "1.1.0",
|
||||||
"indexof": "0.0.1",
|
"indexof": "0.0.1",
|
||||||
"parsejson": "0.0.3",
|
|
||||||
"parseqs": "0.0.5",
|
"parseqs": "0.0.5",
|
||||||
"parseuri": "0.0.5",
|
"parseuri": "0.0.5",
|
||||||
"ws": "2.3.1",
|
"ws": "3.3.3",
|
||||||
"xmlhttprequest-ssl": "1.5.3",
|
"xmlhttprequest-ssl": "1.5.4",
|
||||||
"yeast": "0.1.2"
|
"yeast": "0.1.2"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"debug": {
|
"debug": {
|
||||||
"version": "2.6.8",
|
"version": "2.6.9",
|
||||||
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz",
|
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
|
||||||
"integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=",
|
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ms": "2.0.0"
|
"ms": "2.0.0"
|
||||||
}
|
}
|
||||||
|
@ -1635,12 +1642,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"engine.io-parser": {
|
"engine.io-parser": {
|
||||||
"version": "2.1.1",
|
"version": "2.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.2.tgz",
|
||||||
"integrity": "sha1-4Ps/DgRi9/WLt3waUun1p+JuRmg=",
|
"integrity": "sha512-dInLFzr80RijZ1rGpx1+56/uFoH7/7InhH3kZt+Ms6hT8tNx3NGW/WNSA/f8As1WkOfkuyb3tnRyuXGxusclMw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"after": "0.8.2",
|
"after": "0.8.2",
|
||||||
"arraybuffer.slice": "0.0.6",
|
"arraybuffer.slice": "0.0.7",
|
||||||
"base64-arraybuffer": "0.1.5",
|
"base64-arraybuffer": "0.1.5",
|
||||||
"blob": "0.0.4",
|
"blob": "0.0.4",
|
||||||
"has-binary2": "1.0.2"
|
"has-binary2": "1.0.2"
|
||||||
|
@ -1927,9 +1934,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"fresh": {
|
"fresh": {
|
||||||
"version": "0.5.0",
|
"version": "0.5.2",
|
||||||
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
|
||||||
"integrity": "sha1-9HTKXmqSRtb9jglTz6m5yAWvp44="
|
"integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
|
||||||
},
|
},
|
||||||
"fs-exists-sync": {
|
"fs-exists-sync": {
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
|
@ -1958,7 +1965,7 @@
|
||||||
"resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
|
"resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
|
||||||
"integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
|
"integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"aproba": "1.1.2",
|
"aproba": "1.2.0",
|
||||||
"console-control-strings": "1.1.0",
|
"console-control-strings": "1.1.0",
|
||||||
"has-unicode": "2.0.1",
|
"has-unicode": "2.0.1",
|
||||||
"object-assign": "4.1.1",
|
"object-assign": "4.1.1",
|
||||||
|
@ -2410,9 +2417,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"handlebars": {
|
"handlebars": {
|
||||||
"version": "4.0.10",
|
"version": "4.0.11",
|
||||||
"resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.10.tgz",
|
"resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz",
|
||||||
"integrity": "sha1-PTDHGLCaPZbyPqTMH0A8TTup/08=",
|
"integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"async": "1.5.2",
|
"async": "1.5.2",
|
||||||
"optimist": "0.6.1",
|
"optimist": "0.6.1",
|
||||||
|
@ -2880,17 +2887,17 @@
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"jsdoc": {
|
"jsdoc": {
|
||||||
"version": "3.5.4",
|
"version": "3.5.5",
|
||||||
"resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.4.tgz",
|
"resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.5.5.tgz",
|
||||||
"integrity": "sha512-VmTw0J+2L16IxAe0JSDSAcH0F+DbZxaj8wN1AjHtKMQU/hO0ciIl5ZE93XqrrFIbknobuqHKJCXZj6+Hk57MjA==",
|
"integrity": "sha512-6PxB65TAU4WO0Wzyr/4/YhlGovXl0EVYfpKbpSroSj0qBxT4/xod/l40Opkm38dRHRdQgdeY836M0uVnJQG7kg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"babylon": "7.0.0-beta.24",
|
"babylon": "7.0.0-beta.19",
|
||||||
"bluebird": "3.5.0",
|
"bluebird": "3.5.1",
|
||||||
"catharsis": "0.8.9",
|
"catharsis": "0.8.9",
|
||||||
"escape-string-regexp": "1.0.5",
|
"escape-string-regexp": "1.0.5",
|
||||||
"js2xmlparser": "3.0.0",
|
"js2xmlparser": "3.0.0",
|
||||||
"klaw": "2.0.0",
|
"klaw": "2.0.0",
|
||||||
"marked": "0.3.6",
|
"marked": "0.3.9",
|
||||||
"mkdirp": "0.5.1",
|
"mkdirp": "0.5.1",
|
||||||
"requizzle": "0.2.1",
|
"requizzle": "0.2.1",
|
||||||
"strip-json-comments": "2.0.1",
|
"strip-json-comments": "2.0.1",
|
||||||
|
@ -2899,9 +2906,9 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"bluebird": {
|
"bluebird": {
|
||||||
"version": "3.5.0",
|
"version": "3.5.1",
|
||||||
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
|
||||||
"integrity": "sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw="
|
"integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA=="
|
||||||
},
|
},
|
||||||
"klaw": {
|
"klaw": {
|
||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
|
@ -3187,7 +3194,7 @@
|
||||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.4.tgz",
|
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.4.tgz",
|
||||||
"integrity": "sha512-kxBL06p6iO2qPBHsqGK2b3cRwiRGpnmSuVWNhwHcMX7qJOUr1HvricYP1LZOCdkQBUp0jiWg2d6WJwR3vYgByw==",
|
"integrity": "sha512-kxBL06p6iO2qPBHsqGK2b3cRwiRGpnmSuVWNhwHcMX7qJOUr1HvricYP1LZOCdkQBUp0jiWg2d6WJwR3vYgByw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"vlq": "0.2.2"
|
"vlq": "0.2.3"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"make-dir": {
|
"make-dir": {
|
||||||
|
@ -3211,9 +3218,9 @@
|
||||||
"integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8="
|
"integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8="
|
||||||
},
|
},
|
||||||
"marked": {
|
"marked": {
|
||||||
"version": "0.3.6",
|
"version": "0.3.9",
|
||||||
"resolved": "https://registry.npmjs.org/marked/-/marked-0.3.6.tgz",
|
"resolved": "https://registry.npmjs.org/marked/-/marked-0.3.9.tgz",
|
||||||
"integrity": "sha1-ssbGGPzOzk74bE/Gy4p8v1rtqNc="
|
"integrity": "sha512-nW5u0dxpXxHfkHzzrveY45gCbi+R4PaO4WRZYqZNl+vB0hVGeqlFn0aOg1c8AKL63TrNFn9Bm2UP4AdiZ9TPLw=="
|
||||||
},
|
},
|
||||||
"merge": {
|
"merge": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
|
@ -3254,9 +3261,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"mime": {
|
"mime": {
|
||||||
"version": "1.3.4",
|
"version": "1.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz",
|
"resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
|
||||||
"integrity": "sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM="
|
"integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ=="
|
||||||
},
|
},
|
||||||
"mime-db": {
|
"mime-db": {
|
||||||
"version": "1.30.0",
|
"version": "1.30.0",
|
||||||
|
@ -3300,9 +3307,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"minizlib": {
|
"minizlib": {
|
||||||
"version": "1.0.3",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz",
|
||||||
"integrity": "sha1-1cGr93vhVGGZUuJTM27Mq5sqMvU=",
|
"integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"minipass": "2.2.1"
|
"minipass": "2.2.1"
|
||||||
}
|
}
|
||||||
|
@ -3414,7 +3421,7 @@
|
||||||
"resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
|
"resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
|
||||||
"integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
|
"integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"abbrev": "1.1.0"
|
"abbrev": "1.1.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"normalize-path": {
|
"normalize-path": {
|
||||||
|
@ -3617,41 +3624,48 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"openlayers": {
|
"openlayers": {
|
||||||
"version": "4.3.3",
|
"version": "4.6.4",
|
||||||
"resolved": "https://registry.npmjs.org/openlayers/-/openlayers-4.3.3.tgz",
|
"resolved": "https://registry.npmjs.org/openlayers/-/openlayers-4.6.4.tgz",
|
||||||
"integrity": "sha512-hFOPwplmgjgCyIrnXoVixtZeZ4mog84xpI9PLoXWiyO7iGmIH3/XxhBPuSLuvrHg+/huoFzA0OckRLvr3T2DAg==",
|
"integrity": "sha512-Oru7/xniirjech7H5zkMQSUj/JUymNveiE4vAwmyjAmcoNyO4zTRD/Pp7BPfxBPuAz45vDl78H1wEQD7RGWkGg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@mapbox/vector-tile": "1.3.0",
|
"async": "2.6.0",
|
||||||
"async": "2.5.0",
|
"closure-util": "1.26.0",
|
||||||
"closure-util": "1.22.0",
|
"fs-extra": "4.0.3",
|
||||||
"fs-extra": "4.0.1",
|
"jsdoc": "3.5.5",
|
||||||
"jsdoc": "3.5.4",
|
|
||||||
"nomnom": "1.8.1",
|
"nomnom": "1.8.1",
|
||||||
"pbf": "3.0.5",
|
"pbf": "3.1.0",
|
||||||
"pixelworks": "1.1.0",
|
"pixelworks": "1.1.0",
|
||||||
"rbush": "2.0.1",
|
"rbush": "2.0.1",
|
||||||
"rollup": "0.47.6",
|
"rollup": "0.52.3",
|
||||||
"rollup-plugin-cleanup": "1.0.1",
|
"rollup-plugin-cleanup": "2.0.0",
|
||||||
"rollup-plugin-commonjs": "8.2.1",
|
"rollup-plugin-commonjs": "8.2.6",
|
||||||
"rollup-plugin-node-resolve": "3.0.0",
|
"rollup-plugin-node-resolve": "3.0.0",
|
||||||
"temp": "github:adam-lynch/node-temp#279c1350cb7e4f02515d91da9e35d39a40774016",
|
"temp": "github:adam-lynch/node-temp#279c1350cb7e4f02515d91da9e35d39a40774016",
|
||||||
"walk": "2.3.9"
|
"walk": "2.3.9"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"async": {
|
||||||
|
"version": "2.6.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz",
|
||||||
|
"integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==",
|
||||||
|
"requires": {
|
||||||
|
"lodash": "4.17.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"fs-extra": {
|
"fs-extra": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz",
|
||||||
"integrity": "sha1-f8DGyJV/mD9X8waiTlud3Y0N2IA=",
|
"integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"graceful-fs": "4.1.11",
|
"graceful-fs": "4.1.11",
|
||||||
"jsonfile": "3.0.1",
|
"jsonfile": "4.0.0",
|
||||||
"universalify": "0.1.1"
|
"universalify": "0.1.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"jsonfile": {
|
"jsonfile": {
|
||||||
"version": "3.0.1",
|
"version": "4.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
|
||||||
"integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=",
|
"integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"graceful-fs": "4.1.11"
|
"graceful-fs": "4.1.11"
|
||||||
}
|
}
|
||||||
|
@ -3836,14 +3850,6 @@
|
||||||
"resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
|
||||||
"integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY="
|
"integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY="
|
||||||
},
|
},
|
||||||
"parsejson": {
|
|
||||||
"version": "0.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/parsejson/-/parsejson-0.0.3.tgz",
|
|
||||||
"integrity": "sha1-q343WfIJ7OmUN5c/fQ8fZK4OZKs=",
|
|
||||||
"requires": {
|
|
||||||
"better-assert": "1.0.2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"parseqs": {
|
"parseqs": {
|
||||||
"version": "0.0.5",
|
"version": "0.0.5",
|
||||||
"resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz",
|
||||||
|
@ -3899,9 +3905,9 @@
|
||||||
"integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0="
|
"integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0="
|
||||||
},
|
},
|
||||||
"pbf": {
|
"pbf": {
|
||||||
"version": "3.0.5",
|
"version": "3.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/pbf/-/pbf-3.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/pbf/-/pbf-3.1.0.tgz",
|
||||||
"integrity": "sha1-JPD6LL6xblxWpZAbt+nCrAyAWb4=",
|
"integrity": "sha512-/hYJmIsTmh7fMkHAWWXJ5b8IKLWdjdlAFb3IHkRBn1XUhIYBChVGfVwmHEAV3UfXTxsP/AKfYTXTS/dCPxJd5w==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ieee754": "1.1.8",
|
"ieee754": "1.1.8",
|
||||||
"resolve-protobuf-schema": "2.0.0"
|
"resolve-protobuf-schema": "2.0.0"
|
||||||
|
@ -4054,9 +4060,9 @@
|
||||||
"integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM="
|
"integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM="
|
||||||
},
|
},
|
||||||
"quickselect": {
|
"quickselect": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/quickselect/-/quickselect-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/quickselect/-/quickselect-1.0.1.tgz",
|
||||||
"integrity": "sha1-AmMIGPmq5OyrJvAQP5jQYcF8WPM="
|
"integrity": "sha512-Jt30UQSzTbxf6L2bFTMabHtGtYUzQcvOY0a+s5brm8tzndV/XWifBIH9v5QKtH5gGCZ5RRDwRhdhGMDVHAEGNQ=="
|
||||||
},
|
},
|
||||||
"randomatic": {
|
"randomatic": {
|
||||||
"version": "1.1.7",
|
"version": "1.1.7",
|
||||||
|
@ -4105,7 +4111,7 @@
|
||||||
"resolved": "https://registry.npmjs.org/rbush/-/rbush-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/rbush/-/rbush-2.0.1.tgz",
|
||||||
"integrity": "sha1-TPrKKMMGS8DudUMaG3mZDode76k=",
|
"integrity": "sha1-TPrKKMMGS8DudUMaG3mZDode76k=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"quickselect": "1.0.0"
|
"quickselect": "1.0.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rc": {
|
"rc": {
|
||||||
|
@ -4308,14 +4314,14 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rollup": {
|
"rollup": {
|
||||||
"version": "0.47.6",
|
"version": "0.52.3",
|
||||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-0.47.6.tgz",
|
"resolved": "https://registry.npmjs.org/rollup/-/rollup-0.52.3.tgz",
|
||||||
"integrity": "sha512-bH3eWh7MzbiKTQcHQN7Ievqbs/yY7T+ZcJYboBYkp7BkRlAr2DXHPfiqlvlEH/M95giEBpinHEi/s9CVIgYT6w=="
|
"integrity": "sha512-cw+vb9NqaTXlwJyb8G+Ve+uhhlVTcl1NKBkfANdeQqVcpZFilQgeNnAnNiu7MwfeXrqiKEGz+3R03a3zeFkmEQ=="
|
||||||
},
|
},
|
||||||
"rollup-plugin-cleanup": {
|
"rollup-plugin-cleanup": {
|
||||||
"version": "1.0.1",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/rollup-plugin-cleanup/-/rollup-plugin-cleanup-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/rollup-plugin-cleanup/-/rollup-plugin-cleanup-2.0.0.tgz",
|
||||||
"integrity": "sha1-ygVsdP5uoheD+ZhRljsXPL6Ok1k=",
|
"integrity": "sha1-hZdzGaO/VHUKnXX7kJx+UfWaLaQ=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"acorn": "4.0.13",
|
"acorn": "4.0.13",
|
||||||
"magic-string": "0.22.4",
|
"magic-string": "0.22.4",
|
||||||
|
@ -4330,26 +4336,21 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rollup-plugin-commonjs": {
|
"rollup-plugin-commonjs": {
|
||||||
"version": "8.2.1",
|
"version": "8.2.6",
|
||||||
"resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.2.6.tgz",
|
||||||
"integrity": "sha512-ZTwAetmKimCsuWost/+n4FaOpMoczBRTx+kuQaZCIKXTx/R1wNBezuX5NS0vnPKM3hBoErdpAqmNyVSCi5XKbg==",
|
"integrity": "sha512-qK0+uhktmnAgZkHkqFuajNmPw93fjrO7+CysDaxWE5jrUR9XSlSvuao5ZJP+XizxA8weakhgYYBtbVz9SGBpjA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"acorn": "5.1.2",
|
"acorn": "5.2.1",
|
||||||
"estree-walker": "0.5.0",
|
"estree-walker": "0.5.1",
|
||||||
"magic-string": "0.22.4",
|
"magic-string": "0.22.4",
|
||||||
"resolve": "1.4.0",
|
"resolve": "1.4.0",
|
||||||
"rollup-pluginutils": "2.0.1"
|
"rollup-pluginutils": "2.0.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"acorn": {
|
|
||||||
"version": "5.1.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.1.2.tgz",
|
|
||||||
"integrity": "sha512-o96FZLJBPY1lvTuJylGA9Bk3t/GKPPJG8H0ydQQl01crzwJgspa4AEIq/pVTXigmK0PHVQhiAtn8WMBLL9D2WA=="
|
|
||||||
},
|
|
||||||
"estree-walker": {
|
"estree-walker": {
|
||||||
"version": "0.5.0",
|
"version": "0.5.1",
|
||||||
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.5.1.tgz",
|
||||||
"integrity": "sha512-/bEAy+yKAZQrEWUhGmS3H9XpGqSDBtRzX0I2PgMw9kA2n1jN22uV5B5p7MFdZdvWdXCRJztXAfx6ZeRfgkEETg=="
|
"integrity": "sha512-7HgCgz1axW7w5aOvgOQkoR1RMBkllygJrssU3BvymKQ95lxXYv6Pon17fBRDm9qhkvXZGijOULoSF9ShOk/ZLg=="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -4416,19 +4417,19 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"send": {
|
"send": {
|
||||||
"version": "0.15.3",
|
"version": "0.16.1",
|
||||||
"resolved": "https://registry.npmjs.org/send/-/send-0.15.3.tgz",
|
"resolved": "https://registry.npmjs.org/send/-/send-0.16.1.tgz",
|
||||||
"integrity": "sha1-UBP5+ZAj31DRvZiSwZ4979HVMwk=",
|
"integrity": "sha512-ElCLJdJIKPk6ux/Hocwhk7NFHpI3pVm/IZOYWqUmoxcgeyM+MpxHHKhb8QmlJDX1pU6WrgaHBkVNm73Sv7uc2A==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"debug": "2.6.7",
|
"debug": "2.6.9",
|
||||||
"depd": "1.1.1",
|
"depd": "1.1.1",
|
||||||
"destroy": "1.0.4",
|
"destroy": "1.0.4",
|
||||||
"encodeurl": "1.0.1",
|
"encodeurl": "1.0.1",
|
||||||
"escape-html": "1.0.3",
|
"escape-html": "1.0.3",
|
||||||
"etag": "1.8.1",
|
"etag": "1.8.1",
|
||||||
"fresh": "0.5.0",
|
"fresh": "0.5.2",
|
||||||
"http-errors": "1.6.2",
|
"http-errors": "1.6.2",
|
||||||
"mime": "1.3.4",
|
"mime": "1.4.1",
|
||||||
"ms": "2.0.0",
|
"ms": "2.0.0",
|
||||||
"on-finished": "2.3.0",
|
"on-finished": "2.3.0",
|
||||||
"range-parser": "1.2.0",
|
"range-parser": "1.2.0",
|
||||||
|
@ -4436,9 +4437,9 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"debug": {
|
"debug": {
|
||||||
"version": "2.6.7",
|
"version": "2.6.9",
|
||||||
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.7.tgz",
|
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
|
||||||
"integrity": "sha1-krrR9tBbu2u6Isyoi80OyJTChh4=",
|
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ms": "2.0.0"
|
"ms": "2.0.0"
|
||||||
}
|
}
|
||||||
|
@ -4548,22 +4549,21 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"socket.io": {
|
"socket.io": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.0.4.tgz",
|
||||||
"integrity": "sha1-BkwSUXhGLkd6bfI9L9rRjdHFkU8=",
|
"integrity": "sha1-waRZDO/4fs8TxyZS8Eb3FrKeYBQ=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"debug": "2.6.8",
|
"debug": "2.6.9",
|
||||||
"engine.io": "3.1.1",
|
"engine.io": "3.1.4",
|
||||||
"object-assign": "4.1.1",
|
|
||||||
"socket.io-adapter": "1.1.1",
|
"socket.io-adapter": "1.1.1",
|
||||||
"socket.io-client": "2.0.1",
|
"socket.io-client": "2.0.4",
|
||||||
"socket.io-parser": "3.1.2"
|
"socket.io-parser": "3.1.2"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"debug": {
|
"debug": {
|
||||||
"version": "2.6.8",
|
"version": "2.6.9",
|
||||||
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz",
|
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
|
||||||
"integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=",
|
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ms": "2.0.0"
|
"ms": "2.0.0"
|
||||||
}
|
}
|
||||||
|
@ -4581,36 +4581,37 @@
|
||||||
"integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs="
|
"integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs="
|
||||||
},
|
},
|
||||||
"socket.io-client": {
|
"socket.io-client": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.0.4.tgz",
|
||||||
"integrity": "sha1-HVL4x0Zgxou2aVlT+hGZcRVfrZM=",
|
"integrity": "sha1-CRilUkBtxeVAs4Dc2Xr8SmQzL44=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"backo2": "1.0.2",
|
"backo2": "1.0.2",
|
||||||
"base64-arraybuffer": "0.1.5",
|
"base64-arraybuffer": "0.1.5",
|
||||||
"component-bind": "1.0.0",
|
"component-bind": "1.0.0",
|
||||||
"component-emitter": "1.2.1",
|
"component-emitter": "1.2.1",
|
||||||
"debug": "2.6.4",
|
"debug": "2.6.9",
|
||||||
"engine.io-client": "3.1.1",
|
"engine.io-client": "3.1.4",
|
||||||
"has-cors": "1.1.0",
|
"has-cors": "1.1.0",
|
||||||
"indexof": "0.0.1",
|
"indexof": "0.0.1",
|
||||||
"object-component": "0.0.3",
|
"object-component": "0.0.3",
|
||||||
|
"parseqs": "0.0.5",
|
||||||
"parseuri": "0.0.5",
|
"parseuri": "0.0.5",
|
||||||
"socket.io-parser": "3.1.2",
|
"socket.io-parser": "3.1.2",
|
||||||
"to-array": "0.1.4"
|
"to-array": "0.1.4"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"debug": {
|
"debug": {
|
||||||
"version": "2.6.4",
|
"version": "2.6.9",
|
||||||
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.4.tgz",
|
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
|
||||||
"integrity": "sha1-dYaps8OXQcAoKuM0RcTorHRzT+A=",
|
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ms": "0.7.3"
|
"ms": "2.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ms": {
|
"ms": {
|
||||||
"version": "0.7.3",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/ms/-/ms-0.7.3.tgz",
|
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
|
||||||
"integrity": "sha1-cIFVpeROM/X9D8U+gdDUCpG+H/8="
|
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -4620,15 +4621,15 @@
|
||||||
"integrity": "sha1-28IoIVH8T6675Aru3Ady66YZ9/I=",
|
"integrity": "sha1-28IoIVH8T6675Aru3Ady66YZ9/I=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"component-emitter": "1.2.1",
|
"component-emitter": "1.2.1",
|
||||||
"debug": "2.6.8",
|
"debug": "2.6.9",
|
||||||
"has-binary2": "1.0.2",
|
"has-binary2": "1.0.2",
|
||||||
"isarray": "2.0.1"
|
"isarray": "2.0.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"debug": {
|
"debug": {
|
||||||
"version": "2.6.8",
|
"version": "2.6.9",
|
||||||
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz",
|
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
|
||||||
"integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=",
|
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ms": "2.0.0"
|
"ms": "2.0.0"
|
||||||
}
|
}
|
||||||
|
@ -4845,7 +4846,7 @@
|
||||||
"integrity": "sha512-TKJKz1fqBOZBaIQ/MGRKU0EnTGmKMLy4ReTRgP10AgtfOWBbj9PBg4MgY80GFpqGbs2EzcIctW5gbwbP4woDYg==",
|
"integrity": "sha512-TKJKz1fqBOZBaIQ/MGRKU0EnTGmKMLy4ReTRgP10AgtfOWBbj9PBg4MgY80GFpqGbs2EzcIctW5gbwbP4woDYg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"minipass": "2.2.1",
|
"minipass": "2.2.1",
|
||||||
"minizlib": "1.0.3",
|
"minizlib": "1.1.0",
|
||||||
"mkdirp": "0.5.1",
|
"mkdirp": "0.5.1",
|
||||||
"yallist": "3.0.2"
|
"yallist": "3.0.2"
|
||||||
},
|
},
|
||||||
|
@ -4993,7 +4994,7 @@
|
||||||
"resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz",
|
"resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz",
|
||||||
"integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=",
|
"integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"abbrev": "1.1.0"
|
"abbrev": "1.1.1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5099,9 +5100,9 @@
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"ultron": {
|
"ultron": {
|
||||||
"version": "1.1.0",
|
"version": "1.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz",
|
||||||
"integrity": "sha1-sHoualQagV/Go0zNRTO67DB8qGQ="
|
"integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og=="
|
||||||
},
|
},
|
||||||
"unbzip2-stream": {
|
"unbzip2-stream": {
|
||||||
"version": "1.2.5",
|
"version": "1.2.5",
|
||||||
|
@ -5344,9 +5345,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"vlq": {
|
"vlq": {
|
||||||
"version": "0.2.2",
|
"version": "0.2.3",
|
||||||
"resolved": "https://registry.npmjs.org/vlq/-/vlq-0.2.2.tgz",
|
"resolved": "https://registry.npmjs.org/vlq/-/vlq-0.2.3.tgz",
|
||||||
"integrity": "sha1-4xbVJXtAuGu0PLjV/qXX9U1rDKE="
|
"integrity": "sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow=="
|
||||||
},
|
},
|
||||||
"walk": {
|
"walk": {
|
||||||
"version": "2.3.9",
|
"version": "2.3.9",
|
||||||
|
@ -5425,19 +5426,13 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ws": {
|
"ws": {
|
||||||
"version": "2.3.1",
|
"version": "3.3.3",
|
||||||
"resolved": "https://registry.npmjs.org/ws/-/ws-2.3.1.tgz",
|
"resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz",
|
||||||
"integrity": "sha1-a5Sz5EfLajY/eF6vlK9jWejoHIA=",
|
"integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"safe-buffer": "5.0.1",
|
"async-limiter": "1.0.0",
|
||||||
"ultron": "1.1.0"
|
"safe-buffer": "5.1.1",
|
||||||
},
|
"ultron": "1.1.1"
|
||||||
"dependencies": {
|
|
||||||
"safe-buffer": {
|
|
||||||
"version": "5.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.0.1.tgz",
|
|
||||||
"integrity": "sha1-0mPKVGls2KMGtcplUekt5XkY++c="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"xdg-basedir": {
|
"xdg-basedir": {
|
||||||
|
@ -5464,9 +5459,9 @@
|
||||||
"integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk="
|
"integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk="
|
||||||
},
|
},
|
||||||
"xmlhttprequest-ssl": {
|
"xmlhttprequest-ssl": {
|
||||||
"version": "1.5.3",
|
"version": "1.5.4",
|
||||||
"resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.3.tgz",
|
"resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.4.tgz",
|
||||||
"integrity": "sha1-GFqIjATspGw+QHDZn3tJ3jUomS0="
|
"integrity": "sha1-BPVgkVcks4kIhxXMDteBPpZ3v1c="
|
||||||
},
|
},
|
||||||
"xtend": {
|
"xtend": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
"jquery-ui-npm": "1.12.0",
|
"jquery-ui-npm": "1.12.0",
|
||||||
"nw": "^0.25.4-sdk",
|
"nw": "^0.25.4-sdk",
|
||||||
"nw-builder": "^3.4.1",
|
"nw-builder": "^3.4.1",
|
||||||
"openlayers": "^4.3.3",
|
"openlayers": "^4.6.4",
|
||||||
"run-sequence": "^2.2.0",
|
"run-sequence": "^2.2.0",
|
||||||
"temp": "^0.8.3",
|
"temp": "^0.8.3",
|
||||||
"three": "0.72.0"
|
"three": "0.72.0"
|
||||||
|
|
65
src/css/tabs/mission_planer.css
Normal file
65
src/css/tabs/mission_planer.css
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
.tab-calibration .content_toolbar {
|
||||||
|
height: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-mission-control .waypoint {
|
||||||
|
padding-left: 19px;
|
||||||
|
padding-right: 19px;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
}
|
||||||
|
.tab-mission-control .waypoint-left {
|
||||||
|
width: 54%;
|
||||||
|
float: left;
|
||||||
|
padding-right: 5px;
|
||||||
|
}
|
||||||
|
.tab-mission-control .waypoint-right{
|
||||||
|
width: 40%;
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-mission-control .content_wrapper {
|
||||||
|
height: calc(100% - 150px);
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-mission-control .content_toolbar {
|
||||||
|
height: 150px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-mission-control input {
|
||||||
|
width: 157px;
|
||||||
|
padding-left: 3px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
text-align: left;
|
||||||
|
border: 1px solid silver;
|
||||||
|
border-radius: 3px;
|
||||||
|
margin-left: 11px;
|
||||||
|
font-size: 12px;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-mission-control .point {
|
||||||
|
display: inline-block;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-mission-control .point-label {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 1236px) {
|
||||||
|
.tab-mission-control .waypoint-left {
|
||||||
|
width: 96%;
|
||||||
|
}
|
||||||
|
.tab-mission-control .waypoint-right{
|
||||||
|
width: 96%;
|
||||||
|
float: left;
|
||||||
|
padding-right: 19px;
|
||||||
|
}
|
||||||
|
.tab-mission-control .content_toolbar {
|
||||||
|
height: 240px;
|
||||||
|
}
|
||||||
|
.tab-mission-control .content_wrapper {
|
||||||
|
height: calc(100% - 240px);
|
||||||
|
}
|
||||||
|
}
|
61
tabs/mission_control.html
Normal file
61
tabs/mission_control.html
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
<div class="tab-mission-control toolbar_fixed_bottom">
|
||||||
|
<div class="content_wrapper">
|
||||||
|
<div id="missionMap"></div>
|
||||||
|
</div>
|
||||||
|
<div class="content_toolbar">
|
||||||
|
<div class="waypoint waypoint-left">
|
||||||
|
<div class="gui_box" style="padding-bottom: 10px">
|
||||||
|
<div class="gui_box_titlebar">
|
||||||
|
<div class="spacer_box_title i18n-replaced" data-i18n="editPointHead">Edit point</div>
|
||||||
|
</div>
|
||||||
|
<div class="spacer">
|
||||||
|
<input type="hidden" name="pointNumber" value="">
|
||||||
|
<div class="point">
|
||||||
|
<label class="point-label" for="pointLat">Lat: </label>
|
||||||
|
<input id="pointLat" type="text" required>
|
||||||
|
</div>
|
||||||
|
<div class="point">
|
||||||
|
<label class="point-label" for="pointLon">Lon: </label>
|
||||||
|
<input id="pointLon" type="text" required>
|
||||||
|
</div>
|
||||||
|
<div class="point">
|
||||||
|
<label class="point-label" for="pointAlt">Alt: </label>
|
||||||
|
<input id="pointAlt" type="text" value="0" required>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div id="savePoint" class="btn save_btn" style="padding-top: 10px; display: inline-block">
|
||||||
|
<a class="save" href="#" data-i18n="editPointButtonSave" style="float: left">Save</a>
|
||||||
|
</div>
|
||||||
|
<div id="removePoint" class="btn btn-danger save_btn" style="padding-top: 10px; display: inline-block;">
|
||||||
|
<a class="save" href="#" data-i18n="editPointButtonRemove" style="float: left">Remove</a>
|
||||||
|
</div>
|
||||||
|
<div id="removeAllPoints" class="btn save_btn" style="padding-top: 10px; display: inline-block">
|
||||||
|
<a class="save" href="#" data-i18n="removeAllPointButtonSave" style="float: left">Remove all points</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="waypoint waypoint-right">
|
||||||
|
<div class="gui_box" style="padding-bottom: 10px">
|
||||||
|
<div class="gui_box_titlebar">
|
||||||
|
<div class="spacer_box_title i18n-replaced" data-i18n="missionTotalInformationHead">Total information</div>
|
||||||
|
</div>
|
||||||
|
<div class="spacer">
|
||||||
|
<div>
|
||||||
|
<span>Distance (m):</span>
|
||||||
|
<span id="missionDistance"></span>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<span>Available Points</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="btn save_btn">
|
||||||
|
<a class="save" href="#" data-i18n="loadMissionButton">Load mission</a>
|
||||||
|
<a class="save" href="#" data-i18n="saveMissionButton">Save mission</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
356
tabs/mission_control.js
Normal file
356
tabs/mission_control.js
Normal file
|
@ -0,0 +1,356 @@
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
TABS.mission_control = {};
|
||||||
|
TABS.mission_control.isYmapLoad = false;
|
||||||
|
TABS.mission_control.initialize = function (callback) {
|
||||||
|
|
||||||
|
if (GUI.active_tab != 'mission_control') {
|
||||||
|
GUI.active_tab = 'mission_control';
|
||||||
|
googleAnalytics.sendAppView('Mission Control');
|
||||||
|
}
|
||||||
|
|
||||||
|
function load_html() {
|
||||||
|
$('#content').load("./tabs/mission_control.html", process_html);
|
||||||
|
}
|
||||||
|
|
||||||
|
load_html();
|
||||||
|
|
||||||
|
function process_html() {
|
||||||
|
initMap();
|
||||||
|
localize();
|
||||||
|
|
||||||
|
GUI.content_ready(callback);
|
||||||
|
}
|
||||||
|
|
||||||
|
var markers = [];
|
||||||
|
var lines = [];
|
||||||
|
var map;
|
||||||
|
var selectedMarker;
|
||||||
|
|
||||||
|
function clearEditForm() {
|
||||||
|
$('#pointLat').val('');
|
||||||
|
$('#pointLon').val('');
|
||||||
|
$('#pointAlt').val('');
|
||||||
|
$('[name=pointNumber]').val('')
|
||||||
|
}
|
||||||
|
|
||||||
|
function repaint() {
|
||||||
|
var oldPos;
|
||||||
|
for (var i in lines) {
|
||||||
|
map.removeLayer(lines[i]);
|
||||||
|
}
|
||||||
|
lines = [];
|
||||||
|
$('#missionDistance').text(0);
|
||||||
|
|
||||||
|
map.getLayers().forEach(function (t) {
|
||||||
|
//feature.getGeometry().getType()
|
||||||
|
if (t instanceof ol.layer.Vector && typeof t.alt !== 'undefined') {
|
||||||
|
var geometry = t.getSource().getFeatures()[0].getGeometry();
|
||||||
|
if (typeof oldPos !== 'undefined') {
|
||||||
|
paintLine(oldPos, geometry.getCoordinates());
|
||||||
|
}
|
||||||
|
|
||||||
|
oldPos = geometry.getCoordinates();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function paintLine(pos1, pos2) {
|
||||||
|
var line = new ol.geom.LineString([pos1, pos2]);
|
||||||
|
|
||||||
|
var feature = new ol.Feature({
|
||||||
|
geometry: line
|
||||||
|
});
|
||||||
|
feature.setStyle(new ol.style.Style({
|
||||||
|
stroke: new ol.style.Stroke({
|
||||||
|
color: '#1497f1',
|
||||||
|
width: 3
|
||||||
|
})
|
||||||
|
}));
|
||||||
|
|
||||||
|
var vectorSource = new ol.source.Vector({
|
||||||
|
features: [feature]
|
||||||
|
});
|
||||||
|
|
||||||
|
var vectorLayer = new ol.layer.Vector({
|
||||||
|
source: vectorSource
|
||||||
|
});
|
||||||
|
|
||||||
|
lines.push(vectorLayer);
|
||||||
|
|
||||||
|
var length = ol.Sphere.getLength(line) + parseFloat($('#missionDistance').text());
|
||||||
|
$('#missionDistance').text(length.toFixed(3));
|
||||||
|
|
||||||
|
map.addLayer(vectorLayer);
|
||||||
|
}
|
||||||
|
|
||||||
|
function addMarker(pos) {
|
||||||
|
var iconFeature = new ol.Feature({
|
||||||
|
geometry: new ol.geom.Point(pos),
|
||||||
|
name: 'Null Island',
|
||||||
|
population: 4000,
|
||||||
|
rainfall: 500
|
||||||
|
});
|
||||||
|
|
||||||
|
var iconStyle = new ol.style.Style({
|
||||||
|
image: new ol.style.Icon(({
|
||||||
|
anchor: [0.5, 1],
|
||||||
|
opacity: 1,
|
||||||
|
scale: 0.5,
|
||||||
|
src: '../images/icons/cf_icon_position.png'
|
||||||
|
}))
|
||||||
|
// text: new ol.style.Text({
|
||||||
|
// text: '10',
|
||||||
|
// offsetX: -1,
|
||||||
|
// offsetY: -30,
|
||||||
|
// overflow: true,
|
||||||
|
// scale: 2,
|
||||||
|
// fill: new ol.style.Fill({
|
||||||
|
// color: 'black'
|
||||||
|
// })
|
||||||
|
// })
|
||||||
|
});
|
||||||
|
|
||||||
|
iconFeature.setStyle(iconStyle);
|
||||||
|
|
||||||
|
var vectorSource = new ol.source.Vector({
|
||||||
|
features: [iconFeature]
|
||||||
|
});
|
||||||
|
|
||||||
|
var vectorLayer = new ol.layer.Vector({
|
||||||
|
source: vectorSource
|
||||||
|
});
|
||||||
|
|
||||||
|
vectorLayer.alt = 0;
|
||||||
|
vectorLayer.number = markers.length;
|
||||||
|
|
||||||
|
markers.push(vectorLayer);
|
||||||
|
|
||||||
|
return vectorLayer;
|
||||||
|
}
|
||||||
|
|
||||||
|
function initMap() {
|
||||||
|
// var center = ol.proj.fromLonLat([e.data.lon, e.data.lat]);
|
||||||
|
//
|
||||||
|
// mapView.setCenter(center);
|
||||||
|
// iconGeometry.setCoordinates(center);
|
||||||
|
|
||||||
|
var app = {};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @constructor
|
||||||
|
* @extends {ol.interaction.Pointer}
|
||||||
|
*/
|
||||||
|
app.Drag = function () {
|
||||||
|
|
||||||
|
ol.interaction.Pointer.call(this, {
|
||||||
|
handleDownEvent: app.Drag.prototype.handleDownEvent,
|
||||||
|
handleDragEvent: app.Drag.prototype.handleDragEvent,
|
||||||
|
handleMoveEvent: app.Drag.prototype.handleMoveEvent,
|
||||||
|
handleUpEvent: app.Drag.prototype.handleUpEvent
|
||||||
|
});
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @type {ol.Pixel}
|
||||||
|
* @private
|
||||||
|
*/
|
||||||
|
this.coordinate_ = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @type {string|undefined}
|
||||||
|
* @private
|
||||||
|
*/
|
||||||
|
this.cursor_ = 'pointer';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @type {ol.Feature}
|
||||||
|
* @private
|
||||||
|
*/
|
||||||
|
this.feature_ = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @type {string|undefined}
|
||||||
|
* @private
|
||||||
|
*/
|
||||||
|
this.previousCursor_ = undefined;
|
||||||
|
|
||||||
|
};
|
||||||
|
ol.inherits(app.Drag, ol.interaction.Pointer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {ol.MapBrowserEvent} evt Map browser event.
|
||||||
|
* @return {boolean} `true` to start the drag sequence.
|
||||||
|
*/
|
||||||
|
app.Drag.prototype.handleDownEvent = function (evt) {
|
||||||
|
var map = evt.map;
|
||||||
|
|
||||||
|
var feature = map.forEachFeatureAtPixel(evt.pixel,
|
||||||
|
function (feature, layer) {
|
||||||
|
return feature;
|
||||||
|
});
|
||||||
|
|
||||||
|
if (feature) {
|
||||||
|
this.coordinate_ = evt.coordinate;
|
||||||
|
this.feature_ = feature;
|
||||||
|
}
|
||||||
|
|
||||||
|
return !!feature;
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {ol.MapBrowserEvent} evt Map browser event.
|
||||||
|
*/
|
||||||
|
app.Drag.prototype.handleDragEvent = function (evt) {
|
||||||
|
var map = evt.map;
|
||||||
|
|
||||||
|
var feature = map.forEachFeatureAtPixel(evt.pixel,
|
||||||
|
function (feature, layer) {
|
||||||
|
return feature;
|
||||||
|
});
|
||||||
|
|
||||||
|
var deltaX = evt.coordinate[0] - this.coordinate_[0];
|
||||||
|
var deltaY = evt.coordinate[1] - this.coordinate_[1];
|
||||||
|
|
||||||
|
var geometry = /** @type {ol.geom.SimpleGeometry} */
|
||||||
|
(this.feature_.getGeometry());
|
||||||
|
geometry.translate(deltaX, deltaY);
|
||||||
|
|
||||||
|
this.coordinate_[0] = evt.coordinate[0];
|
||||||
|
this.coordinate_[1] = evt.coordinate[1];
|
||||||
|
repaint();
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {ol.MapBrowserEvent} evt Event.
|
||||||
|
*/
|
||||||
|
app.Drag.prototype.handleMoveEvent = function (evt) {
|
||||||
|
if (this.cursor_) {
|
||||||
|
var map = evt.map;
|
||||||
|
var feature = map.forEachFeatureAtPixel(evt.pixel,
|
||||||
|
function (feature, layer) {
|
||||||
|
return feature;
|
||||||
|
});
|
||||||
|
var element = evt.map.getTargetElement();
|
||||||
|
if (feature) {
|
||||||
|
if (element.style.cursor != this.cursor_) {
|
||||||
|
this.previousCursor_ = element.style.cursor;
|
||||||
|
element.style.cursor = this.cursor_;
|
||||||
|
}
|
||||||
|
} else if (this.previousCursor_ !== undefined) {
|
||||||
|
element.style.cursor = this.previousCursor_;
|
||||||
|
this.previousCursor_ = undefined;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {ol.MapBrowserEvent} evt Map browser event.
|
||||||
|
* @return {boolean} `false` to stop the drag sequence.
|
||||||
|
*/
|
||||||
|
app.Drag.prototype.handleUpEvent = function (evt) {
|
||||||
|
this.coordinate_ = null;
|
||||||
|
this.feature_ = null;
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
|
||||||
|
var lat = GPS_DATA.lat / 10000000;
|
||||||
|
var lon = GPS_DATA.lon / 10000000;
|
||||||
|
|
||||||
|
map = new ol.Map({
|
||||||
|
interactions: ol.interaction.defaults().extend([new app.Drag()]),
|
||||||
|
layers: [
|
||||||
|
new ol.layer.Tile({
|
||||||
|
source: new ol.source.OSM()
|
||||||
|
})
|
||||||
|
],
|
||||||
|
target: document.getElementById('missionMap'),
|
||||||
|
view: new ol.View({
|
||||||
|
center: ol.proj.fromLonLat([lon, lat]),
|
||||||
|
zoom: 10
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
|
map.on('click', function (evt) {
|
||||||
|
var selectedFeature = map.forEachFeatureAtPixel(evt.pixel,
|
||||||
|
function (feature, layer) {
|
||||||
|
return feature;
|
||||||
|
});
|
||||||
|
selectedMarker = map.forEachFeatureAtPixel(evt.pixel,
|
||||||
|
function (feature, layer) {
|
||||||
|
return layer;
|
||||||
|
});
|
||||||
|
if (selectedFeature) {
|
||||||
|
var geometry = selectedFeature.getGeometry();
|
||||||
|
var coord = ol.proj.toLonLat(geometry.getCoordinates());
|
||||||
|
|
||||||
|
$('#pointLat').val(coord[0]);
|
||||||
|
$('#pointLon').val(coord[1]);
|
||||||
|
$('#pointAlt').val(selectedMarker.alt);
|
||||||
|
} else {
|
||||||
|
map.addLayer(addMarker(evt.coordinate));
|
||||||
|
repaint();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// change mouse cursor when over marker
|
||||||
|
$(map.getViewport()).on('mousemove', function (e) {
|
||||||
|
var pixel = map.getEventPixel(e.originalEvent);
|
||||||
|
var hit = map.forEachFeatureAtPixel(pixel, function (feature, layer) {
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
if (hit) {
|
||||||
|
map.getTarget().style.cursor = 'pointer';
|
||||||
|
} else {
|
||||||
|
map.getTarget().style.cursor = '';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#removeAllPoints').on('click', function () {
|
||||||
|
for (var i in markers) {
|
||||||
|
map.removeLayer(markers[i]);
|
||||||
|
}
|
||||||
|
markers = [];
|
||||||
|
clearEditForm();
|
||||||
|
repaint();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#removePoint').on('click', function () {
|
||||||
|
if (selectedMarker) {
|
||||||
|
map.removeLayer(selectedMarker);
|
||||||
|
var tmp = [];
|
||||||
|
for (var i in markers) {
|
||||||
|
if (markers[i] !== selectedMarker) {
|
||||||
|
tmp.push(markers[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
markers = tmp;
|
||||||
|
selectedMarker = null;
|
||||||
|
clearEditForm();
|
||||||
|
repaint();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#savePoint').on('click', function () {
|
||||||
|
if (selectedMarker) {
|
||||||
|
map.getLayers().forEach(function (t) {
|
||||||
|
if (t === selectedMarker) {
|
||||||
|
var geometry = t.getSource().getFeatures()[0].getGeometry();
|
||||||
|
geometry.setCoordinates(ol.proj.fromLonLat([parseFloat($('#pointLat').val()), parseFloat($('#pointLon').val())]));
|
||||||
|
t.alt = $('#pointAlt').val();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
selectedMarker = null;
|
||||||
|
clearEditForm();
|
||||||
|
repaint();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
TABS.mission_control.cleanup = function (callback) {
|
||||||
|
if (callback) callback();
|
||||||
|
};
|
Loading…
Add table
Add a link
Reference in a new issue