diff --git a/_locales/en/messages.json b/_locales/en/messages.json
index ddf0b9b2..8b10b57d 100755
--- a/_locales/en/messages.json
+++ b/_locales/en/messages.json
@@ -313,6 +313,9 @@
"communitySlackSupport": {
"message": "Slack Support Live Chat"
},
+ "communityTelegramSupport": {
+ "message": "Telegram Channel"
+ },
"initialSetupBackupAndRestoreApiVersion": {
"message": "Backup and restore functionality disabled. You have firmware with API version $1, backup and restore requires $2. Please backup your settings via the CLI, see INAV documentation for procedure."
},
@@ -406,6 +409,42 @@
"initialSetupBattery": {
"message": "Battery voltage:"
},
+ "initialSetupBatteryDetectedCells": {
+ "message": "Battery detected cell count:"
+ },
+ "initialSetupBatteryDetectedCellsValue": {
+ "message": "$1"
+ },
+ "initialSetupBatteryPercentage": {
+ "message": "Battery left:"
+ },
+ "initialSetupBatteryPercentageValue": {
+ "message": "$1 %"
+ },
+ "initialSetupBatteryRemainingCapacity": {
+ "message": "Battery remaining capacity"
+ },
+ "initialSetupBatteryRemainingCapacityValue": {
+ "message": "$1 $2"
+ },
+ "initialSetupBatteryFull": {
+ "message": "Battery full when plugged in"
+ },
+ "initialSetupBatteryFullValue": {
+ "message": "$1"
+ },
+ "initialSetupBatteryThresholds": {
+ "message": "Battery use cap thresholds"
+ },
+ "initialSetupBatteryThresholdsValue": {
+ "message": "$1"
+ },
+ "initialSetup_Wh_drawn": {
+ "message": "Capacity drawn:"
+ },
+ "initialSetup_Wh_drawnValue": {
+ "message": "$1 Wh"
+ },
"initialSetupBatteryValue": {
"message": "$1 V"
},
@@ -483,6 +522,9 @@
"featureVBAT": {
"message": "Battery voltage monitoring"
},
+ "featureTX_PROF_SEL": {
+ "message": "Profile selection with TX stick command"
+ },
"featureINFLIGHT_ACC_CAL": {
"message": "In-flight level calibration"
},
@@ -573,6 +615,9 @@
"featureAIRMODE": {
"message": "Permanently enable AIRMODE"
},
+ "featureFW_LAUNCH": {
+ "message": "Permanently enable Launch Mode for Fixed Wing"
+ },
"configurationFeatureEnabled": {
"message": "Enabled"
},
@@ -637,16 +682,10 @@
"message": "Magnetometer Declination [deg]"
},
"configurationAutoDisarmDelay": {
- "message": "Disarm delay [Seconds]"
+ "message": "Seconds until disarm due to low THR"
},
"configurationAutoDisarmDelayHelp": {
- "message": "Requires MOTOR_STOP feature"
- },
- "configurationDisarmKillSwitch": {
- "message": "Disarm regardless of throttle value"
- },
- "configurationDisarmKillSwitchHelp": {
- "message": "When arming via radio channel"
+ "message": "Only used for stick arming (i.e. not using a switch)"
},
"configurationThrottleMinimum": {
"message": "Minimum Throttle"
@@ -690,6 +729,21 @@
"configurationBatteryMultiwiiCurrent": {
"message": "Enable support for legacy Multiwii MSP current output"
},
+ "configurationBatteryCapacity": {
+ "message": "Battery Capacity"
+ },
+ "configurationBatteryCapacityValue": {
+ "message": "Capacity"
+ },
+ "configurationBatteryCapacityWarning": {
+ "message": "Warning Capacity (%)"
+ },
+ "configurationBatteryCapacityCritical": {
+ "message": "Critical Capacity (%)"
+ },
+ "configurationBatteryCapacityUnit": {
+ "message": "Battery Capacity Unit"
+ },
"configuration3d": {
"message": "3D"
},
@@ -832,6 +886,15 @@
"pidTuningYawRate": {
"message": "YAW rate"
},
+ "pidTuningManualRollRate": {
+ "message": "Manual ROLL rate"
+ },
+ "pidTuningManualPitchRate": {
+ "message": "Manual PITCH rate"
+ },
+ "pidTuningManualYawRate": {
+ "message": "Manual YAW rate"
+ },
"magHoldYawRate": {
"message": "MagHold rate"
},
@@ -890,9 +953,15 @@
"receiverRcExpo": {
"message": "RC Expo"
},
- "receiverRcYawExpo": {
+ "receiverRcYawExpo": {
"message": "RC Yaw Expo"
},
+ "receiverManualRcExpo": {
+ "message": "Manual RC Expo"
+ },
+ "receiverManualRcYawExpo": {
+ "message": "Manual RC Yaw Expo"
+ },
"receiverChannelMap": {
"message": "Channel Map"
},
@@ -1052,37 +1121,37 @@
"message": "Roll D Adjustment"
},
"adjustmentsFunction21": {
- "message": "Alt P Adjustment"
+ "message": "RC Yaw Expo Adjustment"
},
"adjustmentsFunction22": {
- "message": "Alt I Adjustment"
+ "message": "Manual RC Expo Adjustment"
},
"adjustmentsFunction23": {
- "message": "Alt D Adjustment"
+ "message": "Manual RC Yaw Expo Adjustment"
},
"adjustmentsFunction24": {
- "message": "Vel P Adjustment"
+ "message": "Manual Pitch & Roll Rate Adjustment"
},
"adjustmentsFunction25": {
- "message": "Vel I Adjustment"
+ "message": "Manual Roll Rate Adjustment"
},
"adjustmentsFunction26": {
- "message": "Vel D Adjustment"
+ "message": "Manual Pitch Rate Adjustment"
},
"adjustmentsFunction27": {
- "message": "MAG P Adjustment"
+ "message": "Manual Yaw Rate Adjustment"
},
"adjustmentsFunction28": {
- "message": "Pos P Adjustment"
+ "message": "Navigation FW Cruise Throttle Adjustment"
},
"adjustmentsFunction29": {
- "message": "Pos I Adjustment"
+ "message": "Navigation FW Pitch To Throttle Adjustment"
},
"adjustmentsFunction30": {
- "message": "PosR P Adjustment"
+ "message": "Board Roll Alignment Adjustment"
},
"adjustmentsFunction31": {
- "message": "PosR I Adjustment"
+ "message": "Board Pitch Alignment Adjustment"
},
"adjustmentsFunction32": {
"message": "PosR D Adjustment"
@@ -2249,9 +2318,24 @@
"osdElement_MAIN_BATT_CELL_VOLTAGE": {
"message": "Battery Cell Voltage"
},
+ "osdElement_MAIN_BATT_REMAINING_PERCENTAGE": {
+ "message": "Battery Remaining Percentage"
+ },
+ "osdElement_MAIN_BATT_REMAINING_CAPACITY": {
+ "message": "Battery Remaining Capacity"
+ },
"osdElement_MAIN_BATT_CELL_VOLTAGE_HELP": {
"message": "Shows the average cell voltage from the main battery"
},
+ "osdElement_MAH_DRAWN": {
+ "message": "mAh drawn"
+ },
+ "osdElement_EFFICIENCY_MAH": {
+ "message": "Efficiency mAh/Km"
+ },
+ "osdElement_EFFICIENCY_WH": {
+ "message": "Efficiency Wh/Km"
+ },
"osdElement_THROTTLE_POSITION_AUTO_THR": {
"message": "Throttle Position / Auto Throttle"
},
@@ -2276,6 +2360,9 @@
"osdElement_GPS_HDOP_HELP": {
"message": "Shows the Horizontal Dilution Of Precission from the GPS. The lower, the most accurate the GPS fix is."
},
+ "osdElement_TRIP_DIST": {
+ "message": "Trip distance"
+ },
"osdElement_VARIO_HELP": {
"message": "Shows vertical speed using up or down arrows. Each arrow represents 10cm (~4 inches) per second."
},
@@ -2324,6 +2411,51 @@
"downloadUpdatesBtn": {
"message": "Download new app"
},
+ "tabMissionControl": {
+ "message": "Mission Control"
+ },
+ "loadMissionButton": {
+ "message": "Load mission from FC"
+ },
+ "saveMissionButton": {
+ "message": "Save mission to FC"
+ },
+ "loadEepromMissionButton": {
+ "message": "Load Eeprom mission"
+ },
+ "saveEepromMissionButton": {
+ "message": "Save Eeprom mission"
+ },
+ "editPointHead": {
+ "message": "Edit point"
+ },
+ "editPointButtonSave": {
+ "message": "Save"
+ },
+ "editPointButtonRemove": {
+ "message": "Remove"
+ },
+ "removeAllPointButtonSave": {
+ "message": "Remove all points"
+ },
+ "missionTotalInformationHead": {
+ "message": "Total information"
+ },
+ "missionRTHsettingsTitle": {
+ "message": "RTH settings"
+ },
+ "missionDefaultSettingsHead": {
+ "message": "Default settings"
+ },
+ "useOnlyStandalone": {
+ "message": "Use stand-alone application.
Please visit the website to read the release notes and download."
+ },
+ "eeprom_load_ok": {
+ "message": "EEPROM loaded"
+ },
+ "confirm_delete_all_points": {
+ "message": "Do you really want to delete all points?"
+ },
"servoMixer": {
"message": "Servo mixer"
},
diff --git a/gulpfile.js b/gulpfile.js
index fcf5735d..f90574f3 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -56,6 +56,7 @@ sources.js = [
'./js/libraries/google-analytics-bundle.js',
'./node_modules/jquery/dist/jquery.min.js',
'./node_modules/jquery-ui-npm/jquery-ui.min.js',
+ './node_modules/marked/lib/marked.js',
'./js/libraries/d3.min.js',
'./js/libraries/jquery.nouislider.all.min.js',
'./node_modules/three/three.min.js',
@@ -128,6 +129,10 @@ sources.receiverJs = [
'./tabs/receiver_msp.js'
];
+sources.debugTraceJs = [
+ './js/debug_trace.js'
+];
+
sources.hexParserJs = [
'./js/workers/hex_parser.js',
];
@@ -139,6 +144,7 @@ var output = {
mapJs: 'map.js',
receiverCss: 'receiver-msp.css',
receiverJs: 'receiver-msp.js',
+ debugTraceJs: 'debug-trace.js',
hexParserJs: 'hex_parser.js',
};
diff --git a/images/icons/cf_icon_position_edit.png b/images/icons/cf_icon_position_edit.png
new file mode 100644
index 00000000..d931b09a
Binary files /dev/null and b/images/icons/cf_icon_position_edit.png differ
diff --git a/js/debug_trace.js b/js/debug_trace.js
new file mode 100644
index 00000000..78252a94
--- /dev/null
+++ b/js/debug_trace.js
@@ -0,0 +1,9 @@
+function debugTraceOnLoad()
+{
+ var output = document.getElementById('debug-trace');
+ setInterval(function() {
+ output.innerText = getDebugTrace();
+ }, 100);
+}
+
+window.onload = debugTraceOnLoad;
diff --git a/js/fc.js b/js/fc.js
index 033c60f8..c1e2fc14 100644
--- a/js/fc.js
+++ b/js/fc.js
@@ -24,10 +24,12 @@ var CONFIG,
MOTOR_DATA,
SERVO_DATA,
GPS_DATA,
+ MISSION_PLANER,
ANALOG,
ARMING_CONFIG,
FC_CONFIG,
MISC,
+ VOLTMETER_CONFIG,
_3D,
DATAFLASH,
SDCARD,
@@ -48,7 +50,8 @@ var CONFIG,
CALIBRATION_DATA,
POSITION_ESTIMATOR,
RTH_AND_LAND_CONFIG,
- FW_CONFIG;
+ FW_CONFIG,
+ DEBUG_TRACE;
var FC = {
MAX_SERVO_RATE: 125,
@@ -141,7 +144,12 @@ var FC = {
throttle_MID: 0,
throttle_EXPO: 0,
dynamic_THR_breakpoint: 0,
- RC_YAW_EXPO: 0
+ RC_YAW_EXPO: 0,
+ manual_RC_EXPO: 0,
+ manual_RC_YAW_EXPO: 0,
+ manual_roll_rate: 0,
+ manual_pitch_rate: 0,
+ manual_yaw_rate: 0,
};
AUX_CONFIG = [];
@@ -171,6 +179,7 @@ var FC = {
altitude: 0,
barometer: 0,
sonar: 0,
+ air_speed: 0,
kinematics: [0.0, 0.0, 0.0],
debug: [0, 0, 0, 0]
};
@@ -198,11 +207,34 @@ var FC = {
packetCount: 0
};
+ MISSION_PLANER = {
+ maxWaypoints: 0,
+ isValidMission: 0,
+ countBusyPoints: 0,
+ bufferPoint: {
+ number: 0,
+ action: 0,
+ lat: 0,
+ lon: 0,
+ alt: 0,
+ endMission: 0,
+ p1: 0
+ }
+ };
+
ANALOG = {
voltage: 0,
mAhdrawn: 0,
+ mWhdrawn: 0,
rssi: 0,
- amperage: 0
+ amperage: 0,
+ power: 0,
+ cell_count: 0,
+ battery_percentage: 0,
+ battery_full_when_plugged_in: false,
+ use_capacity_thresholds: false,
+ battery_remaining_capacity: 0,
+ battery_flags: 0
};
ARMING_CONFIG = {
@@ -230,7 +262,24 @@ var FC = {
vbatscale: 0,
vbatmincellvoltage: 0,
vbatmaxcellvoltage: 0,
- vbatwarningcellvoltage: 0
+ vbatwarningcellvoltage: 0,
+ battery_capacity: 0,
+ battery_capacity_warning: 0,
+ battery_capacity_critical: 0,
+ battery_capacity_unit: 'mAh'
+ };
+
+ BATTERY_CONFIG = {
+ vbatscale: 0,
+ vbatmincellvoltage: 0,
+ vbatmaxcellvoltage: 0,
+ vbatwarningcellvoltage: 0,
+ current_offset: 0,
+ current_scale: 0,
+ capacity: 0,
+ capacity_warning: 0,
+ capacity_critical: 0,
+ capacity_unit: 0
};
ADVANCED_CONFIG = {
@@ -500,6 +549,13 @@ var FC = {
);
}
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ features.push(
+ {bit: 30, group: 'other', name: 'FW_LAUNCH', haveTip: false, showNameInTip: false},
+ {bit: 2, group: 'other', name: 'TX_PROF_SEL', haveTip: false, showNameInTip: false}
+ );
+ }
+
return features.reverse();
},
isFeatureEnabled: function (featureName, features) {
@@ -720,6 +776,10 @@ var FC = {
data.push('TBS Crossfire');
}
+ if (semver.gte(CONFIG.flightControllerVersion, "1.9.1")) {
+ data.push('FPort');
+ }
+
return data;
},
getSPIProtocolTypes: function () {
@@ -837,13 +897,13 @@ var FC = {
}
},
getOsdDisabledFields: function () {
- return ['CRAFT_NAME'];
+ return [];
},
getAccelerometerNames: function () {
return [ "NONE", "AUTO", "ADXL345", "MPU6050", "MMA845x", "BMA280", "LSM303DLHC", "MPU6000", "MPU6500", "MPU9250", "FAKE"];
},
getMagnetometerNames: function () {
- return ["NONE", "AUTO", "HMC5883", "AK8975", "GPSMAG", "MAG3110", "AK8963", "IST8310", "FAKE"];
+ return ["NONE", "AUTO", "HMC5883", "AK8975", "GPSMAG", "MAG3110", "AK8963", "IST8310", "QMC5883", "MPU9250", "FAKE"];
},
getBarometerNames: function () {
if (semver.gte(CONFIG.flightControllerVersion, "1.6.2")) {
@@ -862,7 +922,7 @@ var FC = {
}
},
getRangefinderNames: function () {
- return [ "NONE", "HCSR04", "SRF10"];
+ return [ "NONE", "HCSR04", "SRF10", "HCSR04I2C", "VL53L0X", "UIB"];
},
getArmingFlags: function () {
return {
@@ -936,7 +996,30 @@ var FC = {
}
},
getRcMapLetters: function () {
- return ['A', 'E', 'R', 'T', '5', '6', '7', '8'];
+ if (semver.gte(CONFIG.flightControllerVersion, '1.9.1'))
+ return ['A', 'E', 'R', 'T'];
+ else
+ return ['A', 'E', 'R', 'T', '5', '6', '7', '8'];
+ },
+ isRcMapValid: function (val) {
+ var strBuffer = val.split(''),
+ duplicityBuffer = [];
+
+ if (val.length != FC.getRcMapLetters().length)
+ return false;
+
+ // check if characters inside are all valid, also check for duplicity
+ for (var i = 0; i < val.length; i++) {
+ if (FC.getRcMapLetters().indexOf(strBuffer[i]) < 0)
+ return false;
+
+ if (duplicityBuffer.indexOf(strBuffer[i]) < 0)
+ duplicityBuffer.push(strBuffer[i]);
+ else
+ return false;
+ }
+
+ return true;
},
getServoMixInputNames: function () {
return [
diff --git a/js/gui.js b/js/gui.js
index 3028577d..a1ce5d8b 100644
--- a/js/gui.js
+++ b/js/gui.js
@@ -38,7 +38,8 @@ var GUI_control = function () {
'setup',
'osd',
'profiles',
- 'advanced_tuning'
+ 'advanced_tuning',
+ 'mission_control'
];
this.allowedTabs = this.defaultAllowedTabsWhenDisconnected;
diff --git a/js/msp/MSPCodes.js b/js/msp/MSPCodes.js
index 7cad702e..e6d37c69 100644
--- a/js/msp/MSPCodes.js
+++ b/js/msp/MSPCodes.js
@@ -20,7 +20,9 @@ var MSPCodes = {
MSP_POSITION_ESTIMATION_CONFIG: 16,
MSP_SET_POSITION_ESTIMATION_CONFIG: 17,
-
+ MSP_WP_MISSION_LOAD: 18,
+ MSP_WP_MISSION_SAVE: 19,
+ MSP_WP_GETINFO: 20,
MSP_RTH_AND_LAND_CONFIG: 21,
MSP_SET_RTH_AND_LAND_CONFIG: 22,
MSP_FW_CONFIG: 23,
@@ -151,9 +153,20 @@ var MSPCodes = {
MSP_BF_BUILD_INFO: 69, // build date as well as some space for future expansion
// INAV specific codes
- MSPV2_SETTING: 0x1003,
- MSPV2_SET_SETTING: 0x1004,
+ MSPV2_SETTING: 0x1003,
+ MSPV2_SET_SETTING: 0x1004,
- MSP2_COMMON_MOTOR_MIXER: 0x1005,
- MSP2_COMMON_SET_MOTOR_MIXER: 0x1006
+ MSP2_COMMON_MOTOR_MIXER: 0x1005,
+ MSP2_COMMON_SET_MOTOR_MIXER: 0x1006,
+
+ MSPV2_INAV_STATUS: 0x2000,
+ MSPV2_INAV_OPTICAL_FLOW: 0x2001,
+ MSPV2_INAV_ANALOG: 0x2002,
+ MSPV2_INAV_MISC: 0x2003,
+ MSPV2_INAV_SET_MISC: 0x2004,
+ MSPV2_INAV_BATTERY_CONFIG: 0x2005,
+ MSPV2_INAV_SET_BATTERY_CONFIG: 0x2006,
+ MSPV2_INAV_RATE_PROFILE: 0x2007,
+ MSPV2_INAV_SET_RATE_PROFILE: 0x2008,
+ MSPV2_INAV_AIR_SPEED: 0x2009,
};
diff --git a/js/msp/MSPHelper.js b/js/msp/MSPHelper.js
index 89e2ce47..4e684c77 100644
--- a/js/msp/MSPHelper.js
+++ b/js/msp/MSPHelper.js
@@ -42,11 +42,17 @@ var mspHelper = (function (gui) {
'BLACKBOX': 7,
'TELEMETRY_MAVLINK': 8,
'TELEMETRY_IBUS': 9,
- 'RUNCAM_DEVICE_CONTROL' : 10,
+ 'RUNCAM_DEVICE_CONTROL': 10,
'TBS_SMARTAUDIO': 11,
'IRC_TRAMP': 12
};
+ // Required for MSP_DEBUGMSG because console.log() doesn't allow omitting
+ // the newline at the end, so we keep the pending message here until we find a
+ // '\0', then print it. Messages sent by MSP_DEBUGMSG are guaranteed to
+ // always finish with a '\0'.
+ var debugMsgBuffer = '';
+
/**
*
* @param {MSP} dataHandler
@@ -132,14 +138,14 @@ var mspHelper = (function (gui) {
case MSPCodes.MSP_SENSOR_STATUS:
SENSOR_STATUS.isHardwareHealthy = data.getUint8(0);
- SENSOR_STATUS.gyroHwStatus = data.getUint8(1);
- SENSOR_STATUS.accHwStatus = data.getUint8(2);
- SENSOR_STATUS.magHwStatus = data.getUint8(3);
- SENSOR_STATUS.baroHwStatus = data.getUint8(4);
- SENSOR_STATUS.gpsHwStatus = data.getUint8(5);
- SENSOR_STATUS.rangeHwStatus = data.getUint8(6);
- SENSOR_STATUS.speedHwStatus = data.getUint8(7);
- SENSOR_STATUS.flowHwStatus = data.getUint8(8);
+ SENSOR_STATUS.gyroHwStatus = data.getUint8(1);
+ SENSOR_STATUS.accHwStatus = data.getUint8(2);
+ SENSOR_STATUS.magHwStatus = data.getUint8(3);
+ SENSOR_STATUS.baroHwStatus = data.getUint8(4);
+ SENSOR_STATUS.gpsHwStatus = data.getUint8(5);
+ SENSOR_STATUS.rangeHwStatus = data.getUint8(6);
+ SENSOR_STATUS.speedHwStatus = data.getUint8(7);
+ SENSOR_STATUS.flowHwStatus = data.getUint8(8);
if (semver.gte(CONFIG.flightControllerVersion, "1.5.0")) {
sensor_status_ex(SENSOR_STATUS);
}
@@ -225,11 +231,36 @@ var mspHelper = (function (gui) {
case MSPCodes.MSP_SONAR:
SENSOR_DATA.sonar = data.getInt32(0, true);
break;
+ case MSPCodes.MSPV2_INAV_AIR_SPEED:
+ SENSOR_DATA.air_speed = data.getInt32(0, true);
+ break;
case MSPCodes.MSP_ANALOG:
ANALOG.voltage = data.getUint8(0) / 10.0;
ANALOG.mAhdrawn = data.getUint16(1, true);
ANALOG.rssi = data.getUint16(3, true); // 0-1023
ANALOG.amperage = data.getInt16(5, true) / 100; // A
+ break;
+ case MSPCodes.MSPV2_INAV_ANALOG:
+ ANALOG.voltage = data.getUint16(offset, true) / 100.0;
+ offset += 2;
+ ANALOG.cell_count = data.getUint8(offset++);
+ ANALOG.battery_percentage = data.getUint8(offset++);
+ ANALOG.power = data.getUint16(offset, true);
+ offset += 2;
+ ANALOG.mAhdrawn = data.getUint16(offset, true);
+ offset += 2;
+ ANALOG.mWhdrawn = data.getUint16(offset, true);
+ offset += 2;
+ ANALOG.rssi = data.getUint16(offset, true); // 0-1023
+ offset += 2;
+ ANALOG.amperage = data.getInt16(offset, true) / 100; // A
+ offset += 2;
+ var battery_flags = data.getUint8(offset++);
+ ANALOG.battery_full_when_plugged_in = (battery_flags & 1 ? true : false);
+ ANALOG.use_capacity_thresholds = ((battery_flags & 2) >> 1 ? true : false);
+ ANALOG.battery_state = (battery_flags & 12) >> 2;
+ ANALOG.battery_remaining_capacity = data.getUint32(offset, true);
+ offset += 4;
//noinspection JSValidateTypes
dataHandler.analog_last_received_timestamp = Date.now();
break;
@@ -255,6 +286,32 @@ var mspHelper = (function (gui) {
offset += 2;
RC_tuning.RC_YAW_EXPO = parseFloat((data.getUint8(offset++) / 100).toFixed(2));
break;
+ case MSPCodes.MSPV2_INAV_RATE_PROFILE:
+ // compat
+ RC_tuning.RC_RATE = 100;
+ RC_tuning.roll_pitch_rate = 0;
+
+ // throttle
+ RC_tuning.throttle_MID = parseFloat((data.getUint8(offset++) / 100).toFixed(2));
+ RC_tuning.throttle_EXPO = parseFloat((data.getUint8(offset++) / 100).toFixed(2));
+ RC_tuning.dynamic_THR_PID = parseInt(data.getUint8(offset++));
+ RC_tuning.dynamic_THR_breakpoint = data.getUint16(offset, true);
+ offset += 2;
+
+ // stabilized
+ RC_tuning.RC_EXPO = parseFloat((data.getUint8(offset++) / 100).toFixed(2));
+ RC_tuning.RC_YAW_EXPO = parseFloat((data.getUint8(offset++) / 100).toFixed(2));
+ RC_tuning.roll_rate = data.getUint8(offset++) * 10;
+ RC_tuning.pitch_rate = data.getUint8(offset++) * 10;
+ RC_tuning.yaw_rate = data.getUint8(offset++) * 10;
+
+ // manual
+ RC_tuning.manual_RC_EXPO = parseFloat((data.getUint8(offset++) / 100).toFixed(2));
+ RC_tuning.manual_RC_YAW_EXPO = parseFloat((data.getUint8(offset++) / 100).toFixed(2));
+ RC_tuning.manual_roll_rate = data.getUint8(offset++);
+ RC_tuning.manual_pitch_rate = data.getUint8(offset++);
+ RC_tuning.manual_yaw_rate = data.getUint8(offset++);
+ break;
case MSPCodes.MSP_PID:
// PID data arrived, we need to scale it and save to appropriate bank / array
for (i = 0, needle = 0; i < (dataHandler.message_length_expected / 3); i++, needle += 3) {
@@ -294,6 +351,60 @@ var mspHelper = (function (gui) {
MISC.vbatmaxcellvoltage = data.getUint8(offset++) / 10; // 10-50
MISC.vbatwarningcellvoltage = data.getUint8(offset++) / 10; // 10-50
break;
+ case MSPCodes.MSPV2_INAV_MISC:
+ MISC.midrc = data.getInt16(offset, true);
+ offset += 2;
+ MISC.minthrottle = data.getUint16(offset, true); // 0-2000
+ offset += 2;
+ MISC.maxthrottle = data.getUint16(offset, true); // 0-2000
+ offset += 2;
+ MISC.mincommand = data.getUint16(offset, true); // 0-2000
+ offset += 2;
+ MISC.failsafe_throttle = data.getUint16(offset, true); // 1000-2000
+ offset += 2;
+ MISC.gps_type = data.getUint8(offset++);
+ MISC.sensors_baudrate = data.getUint8(offset++);
+ MISC.gps_ubx_sbas = data.getInt8(offset++);
+ MISC.rssi_channel = data.getUint8(offset++);
+ MISC.mag_declination = data.getInt16(offset, 1) / 10; // -18000-18000
+ offset += 2;
+ MISC.vbatscale = data.getUint16(offset, true);
+ offset += 2;
+ MISC.vbatmincellvoltage = data.getUint16(offset, true) / 100;
+ offset += 2;
+ MISC.vbatmaxcellvoltage = data.getUint16(offset, true) / 100;
+ offset += 2;
+ MISC.vbatwarningcellvoltage = data.getUint16(offset, true) / 100;
+ offset += 2;
+ MISC.battery_capacity = data.getUint32(offset, true);
+ offset += 4;
+ MISC.battery_capacity_warning = data.getUint32(offset, true);
+ offset += 4;
+ MISC.battery_capacity_critical = data.getUint32(offset, true);
+ offset += 4;
+ MISC.battery_capacity_unit = (data.getUint8(offset++) ? 'mWh' : 'mAh');
+ break;
+ case MSPCodes.MSPV2_INAV_BATTERY_CONFIG:
+ BATTERY_CONFIG.vbatscale = data.getUint16(offset, true);
+ offset += 2;
+ BATTERY_CONFIG.vbatmincellvoltage = data.getUint16(offset, true) / 100;
+ offset += 2;
+ BATTERY_CONFIG.vbatmaxcellvoltage = data.getUint16(offset, true) / 100;
+ offset += 2;
+ BATTERY_CONFIG.vbatwarningcellvoltage = data.getUint16(offset, true) / 100;
+ offset += 2;
+ BATTERY_CONFIG.current_offset = data.getUint16(offset, true);
+ offset += 2;
+ BATTERY_CONFIG.current_scale = data.getUint16(offset, true);
+ offset += 2;
+ BATTERY_CONFIG.capacity = data.getUint32(offset, true);
+ offset += 4;
+ BATTERY_CONFIG.capacity_warning = data.getUint32(offset, true);
+ offset += 4;
+ BATTERY_CONFIG.capacity_critical = data.getUint32(offset, true);
+ offset += 4;
+ BATTERY_CONFIG.battery_capacity_unit = (data.getUint8(offset++) ? 'mWh' : 'mAh');
+ break;
case MSPCodes.MSP_3D:
_3D.deadband3d_low = data.getUint16(offset, true);
offset += 2;
@@ -340,7 +451,13 @@ var mspHelper = (function (gui) {
}
break;
case MSPCodes.MSP_WP:
- console.log(data);
+ MISSION_PLANER.bufferPoint.number = data.getUint8(0);
+ MISSION_PLANER.bufferPoint.action = data.getUint8(1);
+ MISSION_PLANER.bufferPoint.lat = data.getInt32(2, true) / 10000000;
+ MISSION_PLANER.bufferPoint.lon = data.getInt32(6, true) / 10000000;
+ MISSION_PLANER.bufferPoint.alt = data.getInt32(10, true);
+ MISSION_PLANER.bufferPoint.p1 = data.getInt16(14, true);
+
break;
case MSPCodes.MSP_BOXIDS:
//noinspection JSUndeclaredVariable
@@ -462,6 +579,19 @@ var mspHelper = (function (gui) {
console.log('Settings Saved in EEPROM');
break;
case MSPCodes.MSP_DEBUGMSG:
+ for (var ii = 0; ii < data.byteLength; ii++) {
+ var c = data.readU8();
+ if (c == 0) {
+ // End of message
+ if (debugMsgBuffer.length > 1) {
+ console.log('[DEBUG] ' + debugMsgBuffer);
+ DEBUG_TRACE = (DEBUG_TRACE || '') + debugMsgBuffer;
+ }
+ debugMsgBuffer = '';
+ continue;
+ }
+ debugMsgBuffer += String.fromCharCode(c);
+ }
break;
case MSPCodes.MSP_DEBUG:
for (i = 0; i < 4; i++)
@@ -503,7 +633,7 @@ var mspHelper = (function (gui) {
BF_CONFIG.board_align_pitch = data.getInt16(8, true); // -180 - 360
BF_CONFIG.board_align_yaw = data.getInt16(10, true); // -180 - 360
BF_CONFIG.currentscale = data.getInt16(12, true);
- BF_CONFIG.currentoffset = data.getUint16(14, true);
+ BF_CONFIG.currentoffset = data.getInt16(14, true);
break;
case MSPCodes.MSP_SET_BF_CONFIG:
console.log('BF_CONFIG saved');
@@ -1147,6 +1277,23 @@ var mspHelper = (function (gui) {
case MSPCodes.MSPV2_SET_SETTING:
console.log("Setting set");
break;
+ case MSPCodes.MSP_WP_GETINFO:
+ // Reserved for waypoint capabilities data.getUint8(0);
+ MISSION_PLANER.maxWaypoints = data.getUint8(1);
+ MISSION_PLANER.isValidMission = data.getUint8(2);
+ MISSION_PLANER.countBusyPoints = data.getUint8(3);
+ break;
+ case MSPCodes.MSP_SET_WP:
+ console.log('Point saved');
+ break;
+ case MSPCodes.MSP_WP_MISSION_SAVE:
+ // buffer.push(0);
+ console.log(data);
+
+ break;
+ case MSPCodes.MSP_WP_MISSION_LOAD:
+ console.log('Mission load');
+ break;
default:
console.log('Unknown code detected: ' + dataHandler.code);
} else {
@@ -1231,6 +1378,28 @@ var mspHelper = (function (gui) {
buffer.push(highByte(RC_tuning.dynamic_THR_breakpoint));
buffer.push(Math.round(RC_tuning.RC_YAW_EXPO * 100));
break;
+ case MSPCodes.MSPV2_INAV_SET_RATE_PROFILE:
+ // throttle
+ buffer.push(Math.round(RC_tuning.throttle_MID * 100));
+ buffer.push(Math.round(RC_tuning.throttle_EXPO * 100));
+ buffer.push(RC_tuning.dynamic_THR_PID);
+ buffer.push(lowByte(RC_tuning.dynamic_THR_breakpoint));
+ buffer.push(highByte(RC_tuning.dynamic_THR_breakpoint));
+
+ // stabilized
+ buffer.push(Math.round(RC_tuning.RC_EXPO * 100));
+ buffer.push(Math.round(RC_tuning.RC_YAW_EXPO * 100));
+ buffer.push(Math.round(RC_tuning.roll_rate / 10));
+ buffer.push(Math.round(RC_tuning.pitch_rate / 10));
+ buffer.push(Math.round(RC_tuning.yaw_rate / 10));
+
+ // manual
+ buffer.push(Math.round(RC_tuning.manual_RC_EXPO * 100));
+ buffer.push(Math.round(RC_tuning.manual_RC_YAW_EXPO * 100));
+ buffer.push(RC_tuning.manual_roll_rate);
+ buffer.push(RC_tuning.manual_pitch_rate);
+ buffer.push(RC_tuning.manual_yaw_rate);
+ break;
case MSPCodes.MSP_SET_RX_MAP:
for (i = 0; i < RC_MAP.length; i++) {
@@ -1275,6 +1444,60 @@ var mspHelper = (function (gui) {
buffer.push(Math.round(MISC.vbatmaxcellvoltage * 10));
buffer.push(Math.round(MISC.vbatwarningcellvoltage * 10));
break;
+ case MSPCodes.MSPV2_INAV_SET_MISC:
+ buffer.push(lowByte(MISC.midrc));
+ buffer.push(highByte(MISC.midrc));
+ buffer.push(lowByte(MISC.minthrottle));
+ buffer.push(highByte(MISC.minthrottle));
+ buffer.push(lowByte(MISC.maxthrottle));
+ buffer.push(highByte(MISC.maxthrottle));
+ buffer.push(lowByte(MISC.mincommand));
+ buffer.push(highByte(MISC.mincommand));
+ buffer.push(lowByte(MISC.failsafe_throttle));
+ buffer.push(highByte(MISC.failsafe_throttle));
+ buffer.push(MISC.gps_type);
+ buffer.push(MISC.sensors_baudrate);
+ buffer.push(MISC.gps_ubx_sbas);
+ buffer.push(MISC.rssi_channel);
+ buffer.push(lowByte(Math.round(MISC.mag_declination * 10)));
+ buffer.push(highByte(Math.round(MISC.mag_declination * 10)));
+ buffer.push(lowByte(MISC.vbatscale));
+ buffer.push(highByte(MISC.vbatscale));
+ buffer.push(lowByte(Math.round(MISC.vbatmincellvoltage * 100)));
+ buffer.push(highByte(Math.round(MISC.vbatmincellvoltage * 100)));
+ buffer.push(lowByte(Math.round(MISC.vbatmaxcellvoltage * 100)));
+ buffer.push(highByte(Math.round(MISC.vbatmaxcellvoltage * 100)));
+ buffer.push(lowByte(Math.round(MISC.vbatwarningcellvoltage * 100)));
+ buffer.push(highByte(Math.round(MISC.vbatwarningcellvoltage * 100)));
+ for (byte_index = 0; byte_index < 4; ++byte_index)
+ buffer.push(specificByte(MISC.battery_capacity, byte_index));
+ for (byte_index = 0; byte_index < 4; ++byte_index)
+ buffer.push(specificByte(MISC.battery_capacity_warning, byte_index));
+ for (byte_index = 0; byte_index < 4; ++byte_index)
+ buffer.push(specificByte(MISC.battery_capacity_critical, byte_index));
+ buffer.push((MISC.battery_capacity_unit == 'mAh') ? 0 : 1);
+ break;
+ case MSPCodes.MSPV2_INAV_SET_BATTERY_CONFIG:
+ buffer.push(lowByte(BATTERY_CONFIG.vbatscale));
+ buffer.push(highByte(BATTERY_CONFIG.vbatscale));
+ buffer.push(lowByte(Math.round(BATTERY_CONFIG.vbatmincellvoltage * 100)));
+ buffer.push(highByte(Math.round(BATTERY_CONFIG.vbatmincellvoltage * 100)));
+ buffer.push(lowByte(Math.round(BATTERY_CONFIG.vbatmaxcellvoltage * 100)));
+ buffer.push(highByte(Math.round(BATTERY_CONFIG.vbatmaxcellvoltage * 100)));
+ buffer.push(lowByte(Math.round(BATTERY_CONFIG.vbatwarningcellvoltage * 100)));
+ buffer.push(highByte(Math.round(BATTERY_CONFIG.vbatwarningcellvoltage * 100)));
+ buffer.push(lowByte(BATTERY_CONFIG.current_offset));
+ buffer.push(highByte(BATTERY_CONFIG.current_offset));
+ buffer.push(lowByte(BATTERY_CONFIG.current_scale));
+ buffer.push(highByte(BATTERY_CONFIG.current_scale));
+ for (byte_index = 0; byte_index < 4; ++byte_index)
+ buffer.push(specificByte(BATTERY_CONFIG.capacity, byte_index));
+ for (byte_index = 0; byte_index < 4; ++byte_index)
+ buffer.push(specificByte(BATTERY_CONFIG.capacity_warning, byte_index));
+ for (byte_index = 0; byte_index < 4; ++byte_index)
+ buffer.push(specificByte(BATTERY_CONFIG.capacity_critical, byte_index));
+ buffer.push(BATTERY_CONFIG.capacity_unit);
+ break;
case MSPCodes.MSP_SET_RX_CONFIG:
buffer.push(RX_CONFIG.serialrx_provider);
@@ -1326,7 +1549,7 @@ var mspHelper = (function (gui) {
buffer.push(highByte(FAILSAFE_CONFIG.failsafe_fw_yaw_rate));
buffer.push(lowByte(FAILSAFE_CONFIG.failsafe_stick_motion_threshold));
buffer.push(highByte(FAILSAFE_CONFIG.failsafe_stick_motion_threshold));
- }
+ }
if (semver.gte(CONFIG.flightControllerVersion, "1.7.4")) {
buffer.push(lowByte(FAILSAFE_CONFIG.failsafe_min_distance));
buffer.push(highByte(FAILSAFE_CONFIG.failsafe_min_distance));
@@ -1627,6 +1850,44 @@ var mspHelper = (function (gui) {
buffer.push(SENSOR_CONFIG.opflow);
break;
+ case MSPCodes.MSP_SET_WP:
+ buffer.push(MISSION_PLANER.bufferPoint.number); // sbufReadU8(src); // number
+ buffer.push(MISSION_PLANER.bufferPoint.action); // sbufReadU8(src); // action
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.lat, 0)); // sbufReadU32(src); // lat
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.lat, 1));
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.lat, 2));
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.lat, 3));
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.lon, 0)); // sbufReadU32(src); // lon
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.lon, 1));
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.lon, 2));
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.lon, 3));
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.alt, 0)); // sbufReadU32(src); // to set altitude (cm)
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.alt, 1));
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.alt, 2));
+ buffer.push(specificByte(MISSION_PLANER.bufferPoint.alt, 3));
+ buffer.push(lowByte(MISSION_PLANER.bufferPoint.p1)); //sbufReadU16(src); // P1 speed or landing
+ buffer.push(highByte(MISSION_PLANER.bufferPoint.p1));
+ buffer.push(lowByte(0)); //sbufReadU16(src); // P2
+ buffer.push(highByte(0));
+ buffer.push(lowByte(0)); //sbufReadU16(src); // P3
+ buffer.push(highByte(0));
+ buffer.push(MISSION_PLANER.bufferPoint.endMission); //sbufReadU8(src); // future: to set nav flag
+ break;
+ case MSPCodes.MSP_WP:
+ console.log(MISSION_PLANER.bufferPoint.number);
+ buffer.push(MISSION_PLANER.bufferPoint.number+1);
+
+ break;
+ case MSPCodes.MSP_WP_MISSION_SAVE:
+ // buffer.push(0);
+ console.log(buffer);
+
+ break;
+ case MSPCodes.MSP_WP_MISSION_LOAD:
+ // buffer.push(0);
+ console.log(buffer);
+
+ break;
default:
return false;
}
@@ -1652,9 +1913,9 @@ var mspHelper = (function (gui) {
self.sendBlackboxConfiguration = function (onDataCallback) {
var message = [
- BLACKBOX.blackboxDevice & 0xFF,
- BLACKBOX.blackboxRateNum & 0xFF,
- BLACKBOX.blackboxRateDenom & 0xFF
+ BLACKBOX.blackboxDevice & 0xFF,
+ BLACKBOX.blackboxRateNum & 0xFF,
+ BLACKBOX.blackboxRateDenom & 0xFF
];
//noinspection JSUnusedLocalSymbols
@@ -2149,7 +2410,7 @@ var mspHelper = (function (gui) {
MSP.send_message(MSPCodes.MSP_IDENT, false, false, callback);
};
- self.loadINAVPidConfig = function(callback) {
+ self.loadINAVPidConfig = function (callback) {
if (semver.gt(CONFIG.flightControllerVersion, "1.3.0")) {
MSP.send_message(MSPCodes.MSP_INAV_PID, false, false, callback);
} else {
@@ -2161,7 +2422,7 @@ var mspHelper = (function (gui) {
MSP.send_message(MSPCodes.MSP_LOOP_TIME, false, false, callback);
};
- self.loadAdvancedConfig = function(callback) {
+ self.loadAdvancedConfig = function (callback) {
if (semver.gte(CONFIG.flightControllerVersion, "1.3.0")) {
MSP.send_message(MSPCodes.MSP_ADVANCED_CONFIG, false, false, callback);
} else {
@@ -2189,6 +2450,10 @@ var mspHelper = (function (gui) {
MSP.send_message(MSPCodes.MSP_RC_TUNING, false, false, callback);
};
+ self.loadRateProfileData = function (callback) {
+ MSP.send_message(MSPCodes.MSPV2_INAV_RATE_PROFILE, false, false, callback);
+ };
+
self.loadPidData = function (callback) {
MSP.send_message(MSPCodes.MSP_PID, false, false, callback);
};
@@ -2213,6 +2478,14 @@ var mspHelper = (function (gui) {
MSP.send_message(MSPCodes.MSP_MISC, false, false, callback);
};
+ self.loadMiscV2 = function (callback) {
+ MSP.send_message(MSPCodes.MSPV2_INAV_MISC, false, false, callback);
+ };
+
+ self.loadBatteryConfig = function (callback) {
+ MSP.send_message(MSPCodes.MSPV2_BATTERY_CONFIG, false, false, callback);
+ };
+
self.loadArmingConfig = function (callback) {
MSP.send_message(MSPCodes.MSP_ARMING_CONFIG, false, false, callback);
};
@@ -2309,6 +2582,10 @@ var mspHelper = (function (gui) {
MSP.send_message(MSPCodes.MSP_SET_RC_TUNING, mspHelper.crunch(MSPCodes.MSP_SET_RC_TUNING), false, callback);
};
+ self.saveRateProfileData = function (callback) {
+ MSP.send_message(MSPCodes.MSPV2_INAV_SET_RATE_PROFILE, mspHelper.crunch(MSPCodes.MSPV2_INAV_SET_RATE_PROFILE), false, callback);
+ };
+
self.savePidAdvanced = function (callback) {
if (semver.gte(CONFIG.flightControllerVersion, "1.4.0")) {
MSP.send_message(MSPCodes.MSP_SET_PID_ADVANCED, mspHelper.crunch(MSPCodes.MSP_SET_PID_ADVANCED), false, callback);
@@ -2325,6 +2602,14 @@ var mspHelper = (function (gui) {
MSP.send_message(MSPCodes.MSP_SET_MISC, mspHelper.crunch(MSPCodes.MSP_SET_MISC), false, callback);
};
+ self.saveMiscV2 = function (callback) {
+ MSP.send_message(MSPCodes.MSPV2_INAV_SET_MISC, mspHelper.crunch(MSPCodes.MSPV2_INAV_SET_MISC), false, callback);
+ };
+
+ self.saveBatteryConfig = function (callback) {
+ MSP.send_message(MSPCodes.MSPV2_SET_BATTERY_CONFIG, mspHelper.crunch(MSPCodes.MSPV2_SET_BATTERY_CONFIG), false, callback);
+ };
+
self.save3dConfig = function (callback) {
MSP.send_message(MSPCodes.MSP_SET_3D, mspHelper.crunch(MSPCodes.MSP_SET_3D), false, callback);
};
@@ -2342,7 +2627,7 @@ var mspHelper = (function (gui) {
};
self.saveRxConfig = function (callback) {
- if(semver.gte(CONFIG.apiVersion, "1.21.0")) {
+ if (semver.gte(CONFIG.apiVersion, "1.21.0")) {
MSP.send_message(MSPCodes.MSP_SET_RX_CONFIG, mspHelper.crunch(MSPCodes.MSP_SET_RX_CONFIG), false, callback);
} else {
callback();
@@ -2350,7 +2635,7 @@ var mspHelper = (function (gui) {
};
self.saveSensorConfig = function (callback) {
- if(semver.gte(CONFIG.flightControllerVersion, "1.5.0")) {
+ if (semver.gte(CONFIG.flightControllerVersion, "1.5.0")) {
MSP.send_message(MSPCodes.MSP_SET_SENSOR_CONFIG, mspHelper.crunch(MSPCodes.MSP_SET_SENSOR_CONFIG), false, callback);
} else {
callback();
@@ -2437,20 +2722,28 @@ var mspHelper = (function (gui) {
}
};
- self._getSetting = function(name) {
+ self.getMissionInfo = function (callback) {
+ if (semver.gte(CONFIG.flightControllerVersion, "1.8.1")) {
+ MSP.send_message(MSPCodes.MSP_WP_GETINFO, false, false, callback);
+ } else {
+ callback();
+ }
+ };
+
+ self._getSetting = function (name) {
var promise;
if (this._settings) {
promise = Promise.resolve(this._settings);
} else {
- promise = new Promise(function(resolve, reject) {
+ promise = new Promise(function (resolve, reject) {
var $this = this;
$.ajax({
url: chrome.runtime.getURL('/resources/settings.json'),
dataType: 'json',
- error: function(jqXHR, text, error) {
+ error: function (jqXHR, text, error) {
reject(error);
},
- success: function(data) {
+ success: function (data) {
$this._settings = data;
resolve(data);
}
@@ -2462,19 +2755,19 @@ var mspHelper = (function (gui) {
});
};
- self._encodeSettingName = function(name, data) {
+ self._encodeSettingName = function (name, data) {
for (var ii = 0; ii < name.length; ii++) {
data.push(name.charCodeAt(ii));
}
data.push(0);
};
- self.getSetting = function(name, callback) {
+ self.getSetting = function (name, callback) {
var $this = this;
return this._getSetting(name).then(function (setting) {
- var data = [];
+ var data = [];
$this._encodeSettingName(name, data);
- MSP.send_message(MSPCodes.MSPV2_SETTING, data, false, function(resp) {
+ MSP.send_message(MSPCodes.MSPV2_SETTING, data, false, function (resp) {
var value;
switch (setting.type) {
case "uint8_t":
@@ -2511,7 +2804,7 @@ var mspHelper = (function (gui) {
});
};
- self.encodeSetting = function(name, value) {
+ self.encodeSetting = function (name, value) {
var $this = this;
return this._getSetting(name).then(function (setting) {
if (setting.table) {
@@ -2554,15 +2847,15 @@ var mspHelper = (function (gui) {
});
};
- self.setSetting = function(name, value, callback) {
+ self.setSetting = function (name, value, callback) {
this.encodeSetting(name, value).then(function (data) {
MSP.send_message(MSPCodes.MSPV2_SET_SETTING, data, false, callback);
});
};
- self.getRTC = function(callback) {
+ self.getRTC = function (callback) {
if (semver.gt(CONFIG.flightControllerVersion, "1.7.3")) {
- MSP.send_message(MSPCodes.MSP_RTC, false, false, function(resp) {
+ MSP.send_message(MSPCodes.MSP_RTC, false, false, function (resp) {
var seconds = resp.data.read32();
var millis = resp.data.readU16();
if (callback) {
@@ -2574,7 +2867,7 @@ var mspHelper = (function (gui) {
}
};
- self.setRTC = function(callback) {
+ self.setRTC = function (callback) {
if (semver.gt(CONFIG.flightControllerVersion, "1.7.3")) {
var now = Date.now();
var secs = now / 1000;
diff --git a/js/periodicStatusUpdater.js b/js/periodicStatusUpdater.js
index 8bb03b3b..061af6da 100644
--- a/js/periodicStatusUpdater.js
+++ b/js/periodicStatusUpdater.js
@@ -61,18 +61,31 @@ helper.periodicStatusUpdater = (function () {
}
if (ANALOG != undefined) {
- var nbCells = Math.floor(ANALOG.voltage / MISC.vbatmaxcellvoltage) + 1;
- if (ANALOG.voltage == 0)
- nbCells = 1;
+ var nbCells;
+
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ nbCells = ANALOG.cell_count;
+ } else {
+ nbCells = Math.floor(ANALOG.voltage / MISC.vbatmaxcellvoltage) + 1;
+ if (ANALOG.voltage == 0)
+ nbCells = 1;
+ }
var min = MISC.vbatmincellvoltage * nbCells;
var max = MISC.vbatmaxcellvoltage * nbCells;
var warn = MISC.vbatwarningcellvoltage * nbCells;
- $(".battery-status").css({
- width: ((ANALOG.voltage - min) / (max - min) * 100) + "%",
- display: 'inline-block'
- });
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ $(".battery-status").css({
+ width: ANALOG.battery_percentage + "%",
+ display: 'inline-block'
+ });
+ } else {
+ $(".battery-status").css({
+ width: ((ANALOG.voltage - min) / (max - min) * 100) + "%",
+ display: 'inline-block'
+ });
+ }
if (active) {
$(".linkicon").css({
@@ -84,7 +97,7 @@ helper.periodicStatusUpdater = (function () {
});
}
- if (ANALOG.voltage < warn) {
+ if (((semver.gte(CONFIG.flightControllerVersion, '1.8.1')) && (((ANALOG.use_capacity_thresholds) && (ANALOG.battery_remaining_capacity <= (MISC.battery_capacity_warning - MISC.battery_capacity_critical))) || ((!ANALOG.use_capacity_thresholds) && (ANALOG.voltage < warn))) || (ANALOG.voltage < min)) || ((semver.lt(CONFIG.flightControllerVersion, '1.8.1')) && (ANALOG.voltage < warn))) {
$(".battery-status").css('background-color', '#D42133');
} else {
$(".battery-status").css('background-color', '#59AA29');
@@ -123,11 +136,15 @@ helper.periodicStatusUpdater = (function () {
MSP.send_message(MSPCodes.MSP_STATUS, false, false);
}
- MSP.send_message(MSPCodes.MSP_ANALOG, false, false);
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ MSP.send_message(MSPCodes.MSPV2_INAV_ANALOG, false, false);
+ } else {
+ MSP.send_message(MSPCodes.MSP_ANALOG, false, false);
+ }
privateScope.updateView();
}
};
return publicScope;
-})();
\ No newline at end of file
+})();
diff --git a/main.css b/main.css
index 34b66acb..273d03e6 100644
--- a/main.css
+++ b/main.css
@@ -1107,6 +1107,17 @@ dialog {
opacity: 0.5;
}
+.content_toolbar .btn-danger a {
+ background-color: #db250e;
+ border: 1px solid #b5480e;
+}
+
+.content_toolbar .btn-danger a:hover {
+ background-color: #b5480e;
+ transition: all ease 0.2s;
+}
+
+
.toolbar_scroll_bottom .content_wrapper {
/* content wrapper in view with toolbar in scroll bottom
leave 50px space for the toolbar
@@ -1658,7 +1669,7 @@ dialog {
color: white;
font-size: 10px;
margin-top: 20px;
- width: 90px;
+ width: 100px;
float: right;
margin-right: 20px;
line-height: 12px;
@@ -1750,6 +1761,7 @@ dialog {
.bottomStatusIcons {
background-color: #272727;
height: 31px;
+ margin-left: 5px;
margin-top: 2px;
border-bottom-left-radius: 5px;
border-bottom-right-radius: 5px;
diff --git a/main.html b/main.html
index f989e0c4..651e8cd5 100755
--- a/main.html
+++ b/main.html
@@ -1,9 +1,11 @@
-
+
+
+
@@ -14,7 +16,8 @@
@@ -185,6 +188,7 @@
+
@@ -199,7 +203,6 @@
title="Onboard Logging">
-
diff --git a/main.js b/main.js
index 8dcbb28c..a177d1ce 100644
--- a/main.js
+++ b/main.js
@@ -59,9 +59,20 @@ $(document).ready(function () {
}
});
+ win.setMinimumSize(1024, 800);
+
win.on('close', function () {
//Save window size and position
- var currentWin = this;
+ // var height = win.height;
+ // var width = win.width;
+ //
+ // if (height < 400) {
+ // height = 400
+ // }
+ // if (width < 512) {
+ // width = 512
+ // }
+
chrome.storage.local.set({'windowSize': {height: win.height, width: win.width, x: win.x, y: win.y}}, function () {
// Notify that we saved.
console.log('Settings saved');
@@ -189,6 +200,9 @@ $(document).ready(function () {
case 'gps':
TABS.gps.initialize(content_ready);
break;
+ case 'mission_control':
+ TABS.mission_control.initialize(content_ready);
+ break;
case 'motors':
TABS.motors.initialize(content_ready);
break;
diff --git a/manifest.json b/manifest.json
index c414107d..0ab160bc 100644
--- a/manifest.json
+++ b/manifest.json
@@ -1,7 +1,7 @@
{
"manifest_version": 2,
"minimum_chrome_version": "38",
- "version": "1.8.1",
+ "version": "1.9.3",
"author": "Several",
"name": "INAV - Configurator",
"short_name": "INAV",
diff --git a/package-lock.json b/package-lock.json
index 83459891..e4916ac8 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "inav-configurator",
- "version": "1.8.1",
+ "version": "1.9.3",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -10,11 +10,11 @@
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
},
"accepts": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz",
- "integrity": "sha1-w8p0NJOGSMPg2cHjKN1otiLChMo=",
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz",
+ "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=",
"requires": {
- "mime-types": "2.1.17",
+ "mime-types": "2.1.18",
"negotiator": "0.6.1"
}
},
@@ -45,6 +45,16 @@
"kind-of": "3.2.2",
"longest": "1.0.1",
"repeat-string": "1.6.1"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
}
},
"amdefine": {
@@ -144,12 +154,12 @@
"integrity": "sha1-/2YrSnggFJSj7lRNOjP+dJZQnrw=",
"requires": {
"archiver-utils": "1.3.0",
- "async": "2.5.0",
+ "async": "2.6.0",
"buffer-crc32": "0.2.13",
"glob": "7.1.2",
- "lodash": "4.17.4",
- "readable-stream": "2.3.3",
- "tar-stream": "1.5.4",
+ "lodash": "4.17.5",
+ "readable-stream": "2.3.5",
+ "tar-stream": "1.5.5",
"zip-stream": "1.2.0"
}
},
@@ -161,9 +171,9 @@
"glob": "7.1.2",
"graceful-fs": "4.1.11",
"lazystream": "1.0.0",
- "lodash": "4.17.4",
+ "lodash": "4.17.5",
"normalize-path": "2.1.1",
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
}
},
"archy": {
@@ -177,16 +187,13 @@
"integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
"requires": {
"delegates": "1.0.0",
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
}
},
"arr-diff": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
- "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
- "requires": {
- "arr-flatten": "1.1.0"
- }
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
+ "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA="
},
"arr-flatten": {
"version": "1.1.0",
@@ -194,9 +201,9 @@
"integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg=="
},
"arr-union": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz",
- "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0="
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
+ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ="
},
"array-differ": {
"version": "1.0.0",
@@ -209,9 +216,9 @@
"integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8="
},
"array-slice": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.0.0.tgz",
- "integrity": "sha1-5zA08A3MH0CHYAj9IP6ud71LfC8="
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz",
+ "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w=="
},
"array-union": {
"version": "1.0.2",
@@ -227,9 +234,9 @@
"integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY="
},
"array-unique": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
- "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM="
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
+ "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg="
},
"arraybuffer.slice": {
"version": "0.0.7",
@@ -246,12 +253,17 @@
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
"integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ="
},
+ "assign-symbols": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
+ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c="
+ },
"async": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/async/-/async-2.5.0.tgz",
- "integrity": "sha512-e+lJAJeNWuPCNyxZKOBdaJGyLGHugXVQtrAwtuAe2vhxTYxFTKE73p8JuTmdH0qdQZtDvI4dhJwjZc5zsfIsYw==",
+ "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"
+ "lodash": "4.17.5"
}
},
"async-limiter": {
@@ -264,6 +276,11 @@
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
},
+ "atob": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/atob/-/atob-2.0.3.tgz",
+ "integrity": "sha1-GcenYEc3dEaPILLS0DNyrX1Mv10="
+ },
"aws-sign2": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
@@ -289,6 +306,30 @@
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
},
+ "base": {
+ "version": "0.11.2",
+ "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
+ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
+ "requires": {
+ "cache-base": "1.0.1",
+ "class-utils": "0.3.6",
+ "component-emitter": "1.2.1",
+ "define-property": "1.0.0",
+ "isobject": "3.0.1",
+ "mixin-deep": "1.3.1",
+ "pascalcase": "0.1.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "requires": {
+ "is-descriptor": "1.0.2"
+ }
+ }
+ }
+ },
"base64-arraybuffer": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
@@ -336,11 +377,12 @@
}
},
"bl": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz",
- "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=",
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz",
+ "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==",
"requires": {
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5",
+ "safe-buffer": "5.1.1"
}
},
"blob": {
@@ -368,7 +410,7 @@
"requires": {
"ansi-align": "2.0.0",
"camelcase": "4.1.0",
- "chalk": "2.3.0",
+ "chalk": "2.3.2",
"cli-boxes": "1.0.0",
"string-width": "2.1.1",
"term-size": "1.2.0",
@@ -381,9 +423,9 @@
"integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg="
},
"ansi-styles": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz",
- "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==",
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
"requires": {
"color-convert": "1.9.1"
}
@@ -394,13 +436,13 @@
"integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0="
},
"chalk": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz",
- "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==",
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
+ "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
"requires": {
- "ansi-styles": "3.2.0",
+ "ansi-styles": "3.2.1",
"escape-string-regexp": "1.0.5",
- "supports-color": "4.5.0"
+ "supports-color": "5.3.0"
}
},
"is-fullwidth-code-point": {
@@ -426,32 +468,59 @@
}
},
"supports-color": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz",
- "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=",
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
+ "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
"requires": {
- "has-flag": "2.0.0"
+ "has-flag": "3.0.0"
}
}
}
},
"brace-expansion": {
- "version": "1.1.8",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz",
- "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=",
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"requires": {
"balanced-match": "1.0.0",
"concat-map": "0.0.1"
}
},
"braces": {
- "version": "1.8.5",
- "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
- "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.1.tgz",
+ "integrity": "sha512-SO5lYHA3vO6gz66erVvedSCkp7AKWdv6VcQ2N4ysXfPxdAlxAMMAdwegGGcv1Bqwm7naF1hNdk5d6AAIEHV2nQ==",
"requires": {
- "expand-range": "1.8.2",
- "preserve": "0.2.0",
- "repeat-element": "1.1.2"
+ "arr-flatten": "1.1.0",
+ "array-unique": "0.3.2",
+ "define-property": "1.0.0",
+ "extend-shallow": "2.0.1",
+ "fill-range": "4.0.0",
+ "isobject": "3.0.1",
+ "kind-of": "6.0.2",
+ "repeat-element": "1.1.2",
+ "snapdragon": "0.8.2",
+ "snapdragon-node": "2.1.1",
+ "split-string": "3.1.0",
+ "to-regex": "3.0.2"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "requires": {
+ "is-descriptor": "1.0.2"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "requires": {
+ "is-extendable": "0.1.1"
+ }
+ }
}
},
"buffer": {
@@ -460,7 +529,7 @@
"integrity": "sha1-pyyTb3e5a/UvX357RnGAYoVR3vs=",
"requires": {
"base64-js": "0.0.8",
- "ieee754": "1.1.8",
+ "ieee754": "1.1.11",
"isarray": "1.0.0"
}
},
@@ -469,13 +538,18 @@
"resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
"integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI="
},
+ "buffer-from": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz",
+ "integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA=="
+ },
"buffer-to-vinyl": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/buffer-to-vinyl/-/buffer-to-vinyl-1.1.0.tgz",
"integrity": "sha1-APFfruOreh3aLN5tkSG//dB7ImI=",
"requires": {
"file-type": "3.9.0",
- "readable-stream": "2.3.3",
+ "readable-stream": "2.3.5",
"uuid": "2.0.3",
"vinyl": "1.2.0"
},
@@ -485,7 +559,7 @@
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz",
"integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=",
"requires": {
- "clone": "1.0.2",
+ "clone": "1.0.4",
"clone-stats": "0.0.1",
"replace-ext": "0.0.1"
}
@@ -498,9 +572,25 @@
"integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s="
},
"builtin-modules": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
- "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8="
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-2.0.0.tgz",
+ "integrity": "sha512-3U5kUA5VPsRUA3nofm/BXX7GVHKfxz0hOBAPxXrIvHzlDRkQVqEn6yi8QJegxl4LzOHLdvb7XF5dVawa/VVYBg=="
+ },
+ "cache-base": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
+ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
+ "requires": {
+ "collection-visit": "1.0.0",
+ "component-emitter": "1.2.1",
+ "get-value": "2.0.6",
+ "has-value": "1.0.0",
+ "isobject": "3.0.1",
+ "set-value": "2.0.0",
+ "to-object-path": "0.3.0",
+ "union-value": "1.0.0",
+ "unset-value": "1.0.0"
+ }
},
"callsite": {
"version": "1.0.0",
@@ -581,6 +671,78 @@
"resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
"integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE="
},
+ "class-utils": {
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
+ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
+ "requires": {
+ "arr-union": "3.1.0",
+ "define-property": "0.2.5",
+ "isobject": "3.0.1",
+ "static-extend": "0.1.2"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "requires": {
+ "is-descriptor": "0.1.6"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
+ "is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
+ "is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "requires": {
+ "is-accessor-descriptor": "0.1.6",
+ "is-data-descriptor": "0.1.4",
+ "kind-of": "5.1.0"
+ }
+ },
+ "kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="
+ }
+ }
+ },
"cli-boxes": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz",
@@ -597,9 +759,9 @@
}
},
"clone": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.2.tgz",
- "integrity": "sha1-Jgt6meux7f4kdTgXX3gyQ8sZ0Uk="
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
+ "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4="
},
"clone-buffer": {
"version": "1.0.0",
@@ -612,13 +774,13 @@
"integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE="
},
"cloneable-readable": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.0.0.tgz",
- "integrity": "sha1-pikNQT8hemEjL5XkWP84QYz7ARc=",
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.2.tgz",
+ "integrity": "sha512-Bq6+4t+lbM8vhTs/Bef5c5AdEMtapp/iFb6+s4/Hh9MVTt8OLKH7ZOOZSCT+Ys7hsHvqv0GuMPJ1lnQJVHvxpg==",
"requires": {
"inherits": "2.0.3",
- "process-nextick-args": "1.0.7",
- "through2": "2.0.3"
+ "process-nextick-args": "2.0.0",
+ "readable-stream": "2.3.5"
}
},
"closure-util": {
@@ -642,17 +804,9 @@
"rimraf": "2.6.2",
"send": "0.16.1",
"socket.io": "2.0.4",
- "temp": "github:adam-lynch/node-temp#279c1350cb7e4f02515d91da9e35d39a40774016"
+ "temp": "0.8.3"
},
"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": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.2.tgz",
@@ -689,13 +843,10 @@
"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"
- }
+ "lodash": {
+ "version": "4.17.4",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz",
+ "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4="
}
}
},
@@ -709,6 +860,15 @@
"resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c="
},
+ "collection-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
+ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
+ "requires": {
+ "map-visit": "1.0.0",
+ "object-visit": "1.0.1"
+ }
+ },
"color-convert": {
"version": "1.9.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz",
@@ -728,9 +888,9 @@
"integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg=="
},
"combined-stream": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz",
- "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=",
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
+ "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
"requires": {
"delayed-stream": "1.0.0"
}
@@ -759,14 +919,14 @@
"integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM="
},
"compress-commons": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.0.tgz",
- "integrity": "sha1-WFhwku8g03y1i68AARLJJ4/3O58=",
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz",
+ "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=",
"requires": {
"buffer-crc32": "0.2.13",
"crc32-stream": "2.0.0",
"normalize-path": "2.1.1",
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
}
},
"concat-map": {
@@ -775,21 +935,29 @@
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
},
"concat-stream": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz",
- "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=",
+ "version": "1.6.2",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
"requires": {
+ "buffer-from": "1.0.0",
"inherits": "2.0.3",
- "readable-stream": "2.3.3",
+ "readable-stream": "2.3.5",
"typedarray": "0.0.6"
}
},
"concat-with-sourcemaps": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/concat-with-sourcemaps/-/concat-with-sourcemaps-1.0.4.tgz",
- "integrity": "sha1-9Vs74q60dgGxCi1SWcz7cP0vHdY=",
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/concat-with-sourcemaps/-/concat-with-sourcemaps-1.0.5.tgz",
+ "integrity": "sha512-YtnS0VEY+e2Khzsey/6mra9EoM6h/5gxaC0e3mcHpA5yfDxafhygytNmcJWodvUgyXzSiL5MSkPO6bQGgfliHw==",
"requires": {
- "source-map": "0.5.7"
+ "source-map": "0.6.1"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
+ }
}
},
"config-chain": {
@@ -797,7 +965,7 @@
"resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.11.tgz",
"integrity": "sha1-q6CXR9++TD5w52am5BWG4YWfxvI=",
"requires": {
- "ini": "1.3.4",
+ "ini": "1.3.5",
"proto-list": "1.2.4"
}
},
@@ -811,7 +979,7 @@
"mkdirp": "0.5.1",
"object-assign": "4.1.1",
"os-tmpdir": "1.0.2",
- "osenv": "0.1.4",
+ "osenv": "0.1.5",
"uuid": "2.0.3",
"write-file-atomic": "1.3.4",
"xdg-basedir": "2.0.0"
@@ -832,23 +1000,28 @@
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
"integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
},
+ "copy-descriptor": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
+ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40="
+ },
"core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
},
"crc": {
- "version": "3.4.4",
- "resolved": "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz",
- "integrity": "sha1-naHpgOO9RPxck79as9ozeNheRms="
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz",
+ "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ="
},
"crc32-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz",
"integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=",
"requires": {
- "crc": "3.4.4",
- "readable-stream": "2.3.3"
+ "crc": "3.5.0",
+ "readable-stream": "2.3.5"
}
},
"create-error-class": {
@@ -864,15 +1037,15 @@
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
"integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
"requires": {
- "lru-cache": "4.1.1",
+ "lru-cache": "4.1.2",
"shebang-command": "1.2.0",
"which": "1.3.0"
},
"dependencies": {
"lru-cache": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz",
- "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==",
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz",
+ "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==",
"requires": {
"pseudomap": "1.0.2",
"yallist": "2.1.2"
@@ -904,9 +1077,9 @@
}
},
"dateformat": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.0.0.tgz",
- "integrity": "sha1-J0Pjq7XD/CRi5SfcpEXgTp9N7hc="
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz",
+ "integrity": "sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI="
},
"debug": {
"version": "2.6.9",
@@ -921,13 +1094,18 @@
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
},
+ "decode-uri-component": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
+ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU="
+ },
"decompress": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/decompress/-/decompress-3.0.0.tgz",
"integrity": "sha1-rx3VDQbjv8QyRh033hGzjA2ZG+0=",
"requires": {
"buffer-to-vinyl": "1.1.0",
- "concat-stream": "1.6.0",
+ "concat-stream": "1.6.2",
"decompress-tar": "3.1.0",
"decompress-tarbz2": "3.1.0",
"decompress-targz": "3.1.0",
@@ -937,6 +1115,45 @@
"vinyl-fs": "2.4.4"
},
"dependencies": {
+ "arr-diff": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+ "requires": {
+ "arr-flatten": "1.1.0"
+ }
+ },
+ "array-unique": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+ "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM="
+ },
+ "braces": {
+ "version": "1.8.5",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+ "requires": {
+ "expand-range": "1.8.2",
+ "preserve": "0.2.0",
+ "repeat-element": "1.1.2"
+ }
+ },
+ "expand-brackets": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+ "requires": {
+ "is-posix-bracket": "0.1.1"
+ }
+ },
+ "extglob": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+ "requires": {
+ "is-extglob": "1.0.0"
+ }
+ },
"glob": {
"version": "5.0.15",
"resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
@@ -949,15 +1166,6 @@
"path-is-absolute": "1.0.1"
}
},
- "glob-parent": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
- "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
- "requires": {
- "is-glob": "3.1.0",
- "path-dirname": "1.0.2"
- }
- },
"glob-stream": {
"version": "5.3.5",
"resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz",
@@ -996,16 +1204,16 @@
}
},
"is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
},
"is-glob": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
- "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
"requires": {
- "is-extglob": "2.1.1"
+ "is-extglob": "1.0.0"
}
},
"isarray": {
@@ -1013,13 +1221,41 @@
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
},
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ },
+ "micromatch": {
+ "version": "2.3.11",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
+ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "requires": {
+ "arr-diff": "2.0.0",
+ "array-unique": "0.2.1",
+ "braces": "1.8.5",
+ "expand-brackets": "0.1.5",
+ "extglob": "0.3.2",
+ "filename-regex": "2.0.1",
+ "is-extglob": "1.0.0",
+ "is-glob": "2.0.1",
+ "kind-of": "3.2.2",
+ "normalize-path": "2.1.1",
+ "object.omit": "2.0.1",
+ "parse-glob": "3.0.4",
+ "regex-cache": "0.4.4"
+ }
+ },
"ordered-read-streams": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz",
"integrity": "sha1-cTfmmzKYuzQiR6G77jiByA4v14s=",
"requires": {
"is-stream": "1.1.0",
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
}
},
"string_decoder": {
@@ -1049,7 +1285,7 @@
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz",
"integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=",
"requires": {
- "clone": "1.0.2",
+ "clone": "1.0.4",
"clone-stats": "0.0.1",
"replace-ext": "0.0.1"
}
@@ -1059,7 +1295,7 @@
"resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz",
"integrity": "sha1-vm/zJwy1Xf19MGNkDegfJddTIjk=",
"requires": {
- "duplexify": "3.5.3",
+ "duplexify": "3.5.4",
"glob-stream": "5.3.5",
"graceful-fs": "4.1.11",
"gulp-sourcemaps": "1.6.0",
@@ -1069,7 +1305,7 @@
"merge-stream": "1.0.1",
"mkdirp": "0.5.1",
"object-assign": "4.1.1",
- "readable-stream": "2.3.3",
+ "readable-stream": "2.3.5",
"strip-bom": "2.0.0",
"strip-bom-stream": "1.0.0",
"through2": "2.0.3",
@@ -1088,7 +1324,7 @@
"is-tar": "1.0.0",
"object-assign": "2.1.1",
"strip-dirs": "1.1.1",
- "tar-stream": "1.5.4",
+ "tar-stream": "1.5.5",
"through2": "0.6.5",
"vinyl": "0.4.6"
},
@@ -1153,7 +1389,7 @@
"object-assign": "2.1.1",
"seek-bzip": "1.0.5",
"strip-dirs": "1.1.1",
- "tar-stream": "1.5.4",
+ "tar-stream": "1.5.5",
"through2": "0.6.5",
"vinyl": "0.4.6"
},
@@ -1217,7 +1453,7 @@
"is-gzip": "1.0.0",
"object-assign": "2.1.1",
"strip-dirs": "1.1.1",
- "tar-stream": "1.5.4",
+ "tar-stream": "1.5.5",
"through2": "0.6.5",
"vinyl": "0.4.6"
},
@@ -1292,7 +1528,7 @@
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz",
"integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=",
"requires": {
- "clone": "1.0.2",
+ "clone": "1.0.4",
"clone-stats": "0.0.1",
"replace-ext": "0.0.1"
}
@@ -1346,7 +1582,16 @@
"resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz",
"integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=",
"requires": {
- "clone": "1.0.2"
+ "clone": "1.0.4"
+ }
+ },
+ "define-property": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
+ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
+ "requires": {
+ "is-descriptor": "1.0.2",
+ "isobject": "3.0.1"
}
},
"del": {
@@ -1356,10 +1601,10 @@
"requires": {
"globby": "6.1.0",
"is-path-cwd": "1.0.0",
- "is-path-in-cwd": "1.0.0",
- "p-map": "1.1.1",
+ "is-path-in-cwd": "1.0.1",
+ "p-map": "1.2.0",
"pify": "3.0.0",
- "rimraf": "2.6.1"
+ "rimraf": "2.6.2"
}
},
"delayed-stream": {
@@ -1393,12 +1638,9 @@
"integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
},
"detect-file": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-0.1.0.tgz",
- "integrity": "sha1-STXe39lIhkjgBrASlWbpOGcR6mM=",
- "requires": {
- "fs-exists-sync": "0.1.0"
- }
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
+ "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc="
},
"dot-prop": {
"version": "3.0.0",
@@ -1432,7 +1674,7 @@
"decompress-targz": "4.1.1",
"decompress-unzip": "4.0.1",
"graceful-fs": "4.1.11",
- "make-dir": "1.1.0",
+ "make-dir": "1.2.0",
"pify": "2.3.0",
"strip-dirs": "2.1.0"
}
@@ -1444,7 +1686,7 @@
"requires": {
"file-type": "5.2.0",
"is-stream": "1.1.0",
- "tar-stream": "1.5.4"
+ "tar-stream": "1.5.5"
}
},
"decompress-tarbz2": {
@@ -1565,13 +1807,13 @@
"integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI="
},
"duplexify": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.3.tgz",
- "integrity": "sha512-g8ID9OroF9hKt2POf8YLayy+9594PzmM3scI00/uBXocX3TWNgoB67hjzkFe9ITAbQOne/lLdBxHXvYUM4ZgGA==",
+ "version": "3.5.4",
+ "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.4.tgz",
+ "integrity": "sha512-JzYSLYMhoVVBe8+mbHQ4KgpvHpm0DZpJuL8PY93Vyv1fW7jYJ90LoXa1di/CVbJM+TgMs91rbDapE/RNIfnJsA==",
"requires": {
- "end-of-stream": "1.4.0",
+ "end-of-stream": "1.4.1",
"inherits": "2.0.3",
- "readable-stream": "2.3.3",
+ "readable-stream": "2.3.5",
"stream-shift": "1.0.0"
}
},
@@ -1595,35 +1837,45 @@
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
},
"end-of-stream": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz",
- "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=",
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
+ "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
"requires": {
"once": "1.4.0"
}
},
"engine.io": {
- "version": "3.1.4",
- "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.1.4.tgz",
- "integrity": "sha1-PQIRtwpVLOhB/8fahiezAamkFi4=",
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.1.5.tgz",
+ "integrity": "sha512-D06ivJkYxyRrcEe0bTpNnBQNgP9d3xog+qZlLbui8EsMr/DouQpf5o9FzJnWYHEYE0YsFHllUv2R1dkgYZXHcA==",
"requires": {
- "accepts": "1.3.3",
+ "accepts": "1.3.5",
"base64id": "1.0.0",
"cookie": "0.3.1",
- "debug": "2.6.9",
+ "debug": "3.1.0",
"engine.io-parser": "2.1.2",
- "uws": "0.14.5",
+ "uws": "9.14.0",
"ws": "3.3.3"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "requires": {
+ "ms": "2.0.0"
+ }
+ }
}
},
"engine.io-client": {
- "version": "3.1.4",
- "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.4.tgz",
- "integrity": "sha1-T88TcLRxY70s6b4nM5ckMDUNTqE=",
+ "version": "3.1.6",
+ "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.6.tgz",
+ "integrity": "sha512-hnuHsFluXnsKOndS4Hv6SvUrgdYx1pk2NqfaDMW+GWdgfU3+/V25Cj7I8a0x92idSpa5PIhJRKxPvp9mnoLsfg==",
"requires": {
"component-emitter": "1.2.1",
"component-inherit": "0.0.3",
- "debug": "2.6.9",
+ "debug": "3.1.0",
"engine.io-parser": "2.1.2",
"has-cors": "1.1.0",
"indexof": "0.0.1",
@@ -1632,6 +1884,16 @@
"ws": "3.3.3",
"xmlhttprequest-ssl": "1.5.5",
"yeast": "0.1.2"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "requires": {
+ "ms": "2.0.0"
+ }
+ }
}
},
"engine.io-parser": {
@@ -1689,11 +1951,86 @@
}
},
"expand-brackets": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
- "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
+ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
"requires": {
- "is-posix-bracket": "0.1.1"
+ "debug": "2.6.9",
+ "define-property": "0.2.5",
+ "extend-shallow": "2.0.1",
+ "posix-character-classes": "0.1.1",
+ "regex-not": "1.0.2",
+ "snapdragon": "0.8.2",
+ "to-regex": "3.0.2"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "requires": {
+ "is-descriptor": "0.1.6"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "requires": {
+ "is-extendable": "0.1.1"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
+ "is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
+ "is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "requires": {
+ "is-accessor-descriptor": "0.1.6",
+ "is-data-descriptor": "0.1.4",
+ "kind-of": "5.1.0"
+ }
+ },
+ "kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="
+ }
}
},
"expand-range": {
@@ -1702,14 +2039,52 @@
"integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
"requires": {
"fill-range": "2.2.3"
+ },
+ "dependencies": {
+ "fill-range": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
+ "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
+ "requires": {
+ "is-number": "2.1.0",
+ "isobject": "2.1.0",
+ "randomatic": "1.1.7",
+ "repeat-element": "1.1.2",
+ "repeat-string": "1.6.1"
+ }
+ },
+ "is-number": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
+ "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=",
+ "requires": {
+ "kind-of": "3.2.2"
+ }
+ },
+ "isobject": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
+ "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
+ "requires": {
+ "isarray": "1.0.0"
+ }
+ },
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
}
},
"expand-tilde": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz",
- "integrity": "sha1-C4HrqJflo9MdHD0QL48BRB5VlEk=",
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
+ "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
"requires": {
- "os-homedir": "1.0.2"
+ "homedir-polyfill": "1.0.1"
}
},
"extend": {
@@ -1718,19 +2093,55 @@
"integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ="
},
"extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
+ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
"requires": {
- "is-extendable": "0.1.1"
+ "assign-symbols": "1.0.0",
+ "is-extendable": "1.0.1"
+ },
+ "dependencies": {
+ "is-extendable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "requires": {
+ "is-plain-object": "2.0.4"
+ }
+ }
}
},
"extglob": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
- "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
+ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
"requires": {
- "is-extglob": "1.0.0"
+ "array-unique": "0.3.2",
+ "define-property": "1.0.0",
+ "expand-brackets": "2.1.4",
+ "extend-shallow": "2.0.1",
+ "fragment-cache": "0.2.1",
+ "regex-not": "1.0.2",
+ "snapdragon": "0.8.2",
+ "to-regex": "3.0.2"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "requires": {
+ "is-descriptor": "1.0.2"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "requires": {
+ "is-extendable": "0.1.1"
+ }
+ }
}
},
"extract-zip": {
@@ -1744,6 +2155,16 @@
"yauzl": "2.4.1"
},
"dependencies": {
+ "concat-stream": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz",
+ "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=",
+ "requires": {
+ "inherits": "2.0.3",
+ "readable-stream": "2.3.5",
+ "typedarray": "0.0.6"
+ }
+ },
"minimist": {
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
@@ -1773,11 +2194,12 @@
"integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
},
"fancy-log": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.0.tgz",
- "integrity": "sha1-Rb4X0Cu5kX1gzP/UmVyZnmyMmUg=",
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.2.tgz",
+ "integrity": "sha1-9BEl49hPLn2JpD0G2VjI94vha+E=",
"requires": {
- "chalk": "1.1.3",
+ "ansi-gray": "0.1.1",
+ "color-support": "1.1.3",
"time-stamp": "1.1.0"
}
},
@@ -1815,7 +2237,7 @@
"integrity": "sha1-vRYiYsC26Uv7zc8Zo7uzdk94VpU=",
"requires": {
"filename-reserved-regex": "2.0.0",
- "strip-outer": "1.0.0",
+ "strip-outer": "1.0.1",
"trim-repeated": "1.0.0"
}
},
@@ -1829,15 +2251,24 @@
}
},
"fill-range": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
- "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
+ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
"requires": {
- "is-number": "2.1.0",
- "isobject": "2.1.0",
- "randomatic": "1.1.7",
- "repeat-element": "1.1.2",
- "repeat-string": "1.6.1"
+ "extend-shallow": "2.0.1",
+ "is-number": "3.0.0",
+ "repeat-string": "1.6.1",
+ "to-regex-range": "2.1.1"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "requires": {
+ "is-extendable": "0.1.1"
+ }
+ }
}
},
"filled-array": {
@@ -1851,14 +2282,14 @@
"integrity": "sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ="
},
"findup-sync": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.4.3.tgz",
- "integrity": "sha1-QAQ5Kee8YK3wt/SCfExudaDeyhI=",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz",
+ "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=",
"requires": {
- "detect-file": "0.1.0",
- "is-glob": "2.0.1",
- "micromatch": "2.3.11",
- "resolve-dir": "0.1.1"
+ "detect-file": "1.0.0",
+ "is-glob": "3.1.0",
+ "micromatch": "3.1.10",
+ "resolve-dir": "1.0.1"
}
},
"fined": {
@@ -1870,17 +2301,7 @@
"is-plain-object": "2.0.4",
"object.defaults": "1.1.0",
"object.pick": "1.3.0",
- "parse-filepath": "1.0.1"
- },
- "dependencies": {
- "expand-tilde": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
- "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
- "requires": {
- "homedir-polyfill": "1.0.1"
- }
- }
+ "parse-filepath": "1.0.2"
}
},
"first-chunk-stream": {
@@ -1889,9 +2310,9 @@
"integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04="
},
"flagged-respawn": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-0.3.2.tgz",
- "integrity": "sha1-/xke3c1wiKZ1smEP/8l2vpuAdLU="
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.0.tgz",
+ "integrity": "sha1-Tnmumy6zi/hrO7Vr8+ClaqX8q9c="
},
"for-in": {
"version": "1.0.2",
@@ -1899,9 +2320,9 @@
"integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA="
},
"for-own": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
- "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz",
+ "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=",
"requires": {
"for-in": "1.0.2"
}
@@ -1922,8 +2343,16 @@
"integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
"requires": {
"asynckit": "0.4.0",
- "combined-stream": "1.0.5",
- "mime-types": "2.1.17"
+ "combined-stream": "1.0.6",
+ "mime-types": "2.1.18"
+ }
+ },
+ "fragment-cache": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
+ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
+ "requires": {
+ "map-cache": "0.2.2"
}
},
"fresh": {
@@ -1931,11 +2360,6 @@
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
"integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
},
- "fs-exists-sync": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz",
- "integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0="
- },
"fs-extra": {
"version": "0.30.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz",
@@ -1945,7 +2369,7 @@
"jsonfile": "2.4.0",
"klaw": "1.3.1",
"path-is-absolute": "1.0.1",
- "rimraf": "2.6.1"
+ "rimraf": "2.6.2"
}
},
"fs.realpath": {
@@ -2011,6 +2435,11 @@
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
"integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ="
},
+ "get-value": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
+ "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg="
+ },
"getpass": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
@@ -2046,14 +2475,38 @@
"requires": {
"glob-parent": "2.0.0",
"is-glob": "2.0.1"
+ },
+ "dependencies": {
+ "glob-parent": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
+ "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
+ "requires": {
+ "is-glob": "2.0.1"
+ }
+ },
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "requires": {
+ "is-extglob": "1.0.0"
+ }
+ }
}
},
"glob-parent": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
- "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
+ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
"requires": {
- "is-glob": "2.0.1"
+ "is-glob": "3.1.0",
+ "path-dirname": "1.0.2"
}
},
"glob-stream": {
@@ -2090,7 +2543,7 @@
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz",
"integrity": "sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=",
"requires": {
- "brace-expansion": "1.1.8"
+ "brace-expansion": "1.1.11"
}
},
"readable-stream": {
@@ -2137,22 +2590,24 @@
}
},
"global-modules": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz",
- "integrity": "sha1-6lo77ULG1s6ZWk+KEmm12uIjgo0=",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
+ "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
"requires": {
- "global-prefix": "0.1.5",
- "is-windows": "0.2.0"
+ "global-prefix": "1.0.2",
+ "is-windows": "1.0.2",
+ "resolve-dir": "1.0.1"
}
},
"global-prefix": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz",
- "integrity": "sha1-jTvGuNo8qBEqFg2NSW/wRiv+948=",
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
+ "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
"requires": {
+ "expand-tilde": "2.0.2",
"homedir-polyfill": "1.0.1",
- "ini": "1.3.4",
- "is-windows": "0.2.0",
+ "ini": "1.3.5",
+ "is-windows": "1.0.2",
"which": "1.3.0"
}
},
@@ -2222,9 +2677,9 @@
}
},
"glogg": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.0.tgz",
- "integrity": "sha1-f+DxmfV6yQbPUS/urY+Q7kooT8U=",
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.1.tgz",
+ "integrity": "sha512-ynYqXLoluBKf9XGR1gA59yEJisIL7YHEH4xr3ZziHB5/yl4qWfaK8Js9jGe6gBGCSCKVqiyO30WnRZADvemUNw==",
"requires": {
"sparkles": "1.0.0"
}
@@ -2240,7 +2695,7 @@
"is-redirect": "1.0.0",
"is-retry-allowed": "1.1.0",
"is-stream": "1.1.0",
- "lowercase-keys": "1.0.0",
+ "lowercase-keys": "1.0.1",
"safe-buffer": "5.1.1",
"timed-out": "4.0.1",
"unzip-response": "2.0.1",
@@ -2286,8 +2741,8 @@
"chalk": "1.1.3",
"deprecated": "0.0.1",
"gulp-util": "3.0.8",
- "interpret": "1.0.3",
- "liftoff": "2.3.0",
+ "interpret": "1.1.0",
+ "liftoff": "2.5.0",
"minimist": "1.2.0",
"orchestrator": "0.3.8",
"pretty-hrtime": "1.0.3",
@@ -2302,15 +2757,15 @@
"resolved": "https://registry.npmjs.org/gulp-concat/-/gulp-concat-2.6.1.tgz",
"integrity": "sha1-Yz0WyV2IUEYorQJmVmPO5aR5M1M=",
"requires": {
- "concat-with-sourcemaps": "1.0.4",
+ "concat-with-sourcemaps": "1.0.5",
"through2": "2.0.3",
"vinyl": "2.1.0"
},
"dependencies": {
"clone": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz",
- "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs="
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
+ "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18="
},
"clone-stats": {
"version": "1.0.0",
@@ -2327,10 +2782,10 @@
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.1.0.tgz",
"integrity": "sha1-Ah+cLPlR1rk5lDyJ617lrdT9kkw=",
"requires": {
- "clone": "2.1.1",
+ "clone": "2.1.2",
"clone-buffer": "1.0.0",
"clone-stats": "1.0.0",
- "cloneable-readable": "1.0.0",
+ "cloneable-readable": "1.1.2",
"remove-trailing-separator": "1.1.0",
"replace-ext": "1.0.0"
}
@@ -2362,7 +2817,7 @@
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz",
"integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=",
"requires": {
- "clone": "1.0.2",
+ "clone": "1.0.4",
"clone-stats": "0.0.1",
"replace-ext": "0.0.1"
}
@@ -2378,8 +2833,8 @@
"array-uniq": "1.0.3",
"beeper": "1.1.1",
"chalk": "1.1.3",
- "dateformat": "2.0.0",
- "fancy-log": "1.3.0",
+ "dateformat": "2.2.0",
+ "fancy-log": "1.3.2",
"gulplog": "1.0.0",
"has-gulplog": "0.1.0",
"lodash._reescape": "3.0.0",
@@ -2406,7 +2861,7 @@
"resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz",
"integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=",
"requires": {
- "glogg": "1.0.0"
+ "glogg": "1.0.1"
}
},
"handlebars": {
@@ -2483,9 +2938,9 @@
"integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk="
},
"has-flag": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz",
- "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE="
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0="
},
"has-gulplog": {
"version": "0.1.0",
@@ -2496,16 +2951,16 @@
}
},
"has-symbol-support-x": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz",
- "integrity": "sha512-JkaetveU7hFbqnAC1EV1sF4rlojU2D4Usc5CmS69l6NfmPDnpnFUegzFg33eDkkpNCxZ0mQp65HwUDrNFS/8MA=="
+ "version": "1.4.2",
+ "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz",
+ "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw=="
},
"has-to-string-tag-x": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz",
"integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==",
"requires": {
- "has-symbol-support-x": "1.4.1"
+ "has-symbol-support-x": "1.4.2"
}
},
"has-unicode": {
@@ -2513,6 +2968,35 @@
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
"integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk="
},
+ "has-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
+ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
+ "requires": {
+ "get-value": "2.0.6",
+ "has-values": "1.0.0",
+ "isobject": "3.0.1"
+ }
+ },
+ "has-values": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
+ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
+ "requires": {
+ "is-number": "3.0.0",
+ "kind-of": "4.0.0"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
+ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
"hawk": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
@@ -2562,13 +3046,13 @@
"requires": {
"assert-plus": "0.2.0",
"jsprim": "1.4.1",
- "sshpk": "1.13.1"
+ "sshpk": "1.14.1"
}
},
"ieee754": {
- "version": "1.1.8",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz",
- "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q="
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.11.tgz",
+ "integrity": "sha512-VhDzCKN7K8ufStx/CLj5/PDTMgph+qwN5Pkd5i0sGnVwk56zJ0lkT8Qzi1xqWLS0Wp29DgDtNeS7v8/wMoZeHg=="
},
"imurmurhash": {
"version": "0.1.4",
@@ -2600,14 +3084,14 @@
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
},
"ini": {
- "version": "1.3.4",
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz",
- "integrity": "sha1-BTfLedr1m1mhpRff9wbIbsA5Fi4="
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
+ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw=="
},
"interpret": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.0.3.tgz",
- "integrity": "sha1-y8NcYu7uc/Gat7EKgBURQBr8D5A="
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
+ "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ="
},
"invert-kv": {
"version": "1.0.0",
@@ -2615,12 +3099,20 @@
"integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY="
},
"is-absolute": {
- "version": "0.2.6",
- "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.2.6.tgz",
- "integrity": "sha1-IN5p89uULvLYe5wto28XIjWxtes=",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
+ "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
"requires": {
- "is-relative": "0.2.1",
- "is-windows": "0.2.0"
+ "is-relative": "1.0.0",
+ "is-windows": "1.0.2"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "requires": {
+ "kind-of": "6.0.2"
}
},
"is-arrayish": {
@@ -2629,15 +3121,33 @@
"integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0="
},
"is-buffer": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.5.tgz",
- "integrity": "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw="
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="
},
"is-bzip2": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-bzip2/-/is-bzip2-1.0.0.tgz",
"integrity": "sha1-XuWOqlounIDiFAe+3yOuWsCRs/w="
},
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "requires": {
+ "kind-of": "6.0.2"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "requires": {
+ "is-accessor-descriptor": "1.0.0",
+ "is-data-descriptor": "1.0.0",
+ "kind-of": "6.0.2"
+ }
+ },
"is-dotfile": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz",
@@ -2657,9 +3167,9 @@
"integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik="
},
"is-extglob": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
- "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
},
"is-finite": {
"version": "1.0.2",
@@ -2678,11 +3188,11 @@
}
},
"is-glob": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
- "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
"requires": {
- "is-extglob": "1.0.0"
+ "is-extglob": "2.1.1"
}
},
"is-gzip": {
@@ -2706,11 +3216,21 @@
"integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ="
},
"is-number": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
- "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=",
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
"requires": {
"kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
}
},
"is-obj": {
@@ -2723,23 +3243,38 @@
"resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz",
"integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA="
},
+ "is-odd": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-odd/-/is-odd-2.0.0.tgz",
+ "integrity": "sha512-OTiixgpZAT1M4NHgS5IguFp/Vz2VI3U7Goh4/HA1adtwyLtSBrxYlcSYkhpAE07s4fKEcjrFxyvtQBND4vFQyQ==",
+ "requires": {
+ "is-number": "4.0.0"
+ },
+ "dependencies": {
+ "is-number": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz",
+ "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ=="
+ }
+ }
+ },
"is-path-cwd": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz",
"integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0="
},
"is-path-in-cwd": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz",
- "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=",
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz",
+ "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==",
"requires": {
- "is-path-inside": "1.0.0"
+ "is-path-inside": "1.0.1"
}
},
"is-path-inside": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz",
- "integrity": "sha1-/AbloWg/vaE95mev9xe7wQpI838=",
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz",
+ "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=",
"requires": {
"path-is-inside": "1.0.2"
}
@@ -2750,13 +3285,6 @@
"integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
"requires": {
"isobject": "3.0.1"
- },
- "dependencies": {
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
- }
}
},
"is-posix-bracket": {
@@ -2775,11 +3303,11 @@
"integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ="
},
"is-relative": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.2.1.tgz",
- "integrity": "sha1-0n9MfVFtF1+2ENuEu+7yPDvJeqU=",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
+ "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
"requires": {
- "is-unc-path": "0.1.2"
+ "is-unc-path": "1.0.0"
}
},
"is-retry-allowed": {
@@ -2803,9 +3331,9 @@
"integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
},
"is-unc-path": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-0.1.2.tgz",
- "integrity": "sha1-arBTpyVzwQJQ/0FqOBTDUXivObk=",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
+ "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
"requires": {
"unc-path-regex": "0.1.2"
}
@@ -2821,9 +3349,9 @@
"integrity": "sha1-1LVcafUYhvm2XHDWwmItN+KfSP4="
},
"is-windows": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz",
- "integrity": "sha1-3hqm1j6indJIc3tp8f+LgALSEIw="
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
+ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA=="
},
"is-zip": {
"version": "1.0.0",
@@ -2841,12 +3369,9 @@
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
},
"isobject": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
- "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
- "requires": {
- "isarray": "1.0.0"
- }
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
},
"isstream": {
"version": "0.1.2",
@@ -2897,7 +3422,7 @@
"escape-string-regexp": "1.0.5",
"js2xmlparser": "3.0.0",
"klaw": "2.0.0",
- "marked": "0.3.12",
+ "marked": "0.3.19",
"mkdirp": "0.5.1",
"requizzle": "0.2.1",
"strip-json-comments": "2.0.1",
@@ -2980,12 +3505,9 @@
"integrity": "sha1-9DG0t/By3FAKXxDOf07HGTDnATQ="
},
"kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "requires": {
- "is-buffer": "1.1.5"
- }
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz",
+ "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA=="
},
"klaw": {
"version": "1.3.1",
@@ -3019,7 +3541,7 @@
"resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz",
"integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=",
"requires": {
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
}
},
"lcid": {
@@ -3031,25 +3553,24 @@
}
},
"liftoff": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.3.0.tgz",
- "integrity": "sha1-qY8v9nGD2Lp8+soQVIvX/wVQs4U=",
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz",
+ "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=",
"requires": {
"extend": "3.0.1",
- "findup-sync": "0.4.3",
+ "findup-sync": "2.0.0",
"fined": "1.1.0",
- "flagged-respawn": "0.3.2",
- "lodash.isplainobject": "4.0.6",
- "lodash.isstring": "4.0.1",
- "lodash.mapvalues": "4.6.0",
+ "flagged-respawn": "1.0.0",
+ "is-plain-object": "2.0.4",
+ "object.map": "1.0.1",
"rechoir": "0.6.2",
- "resolve": "1.4.0"
+ "resolve": "1.6.0"
}
},
"lodash": {
- "version": "4.17.4",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz",
- "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4="
+ "version": "4.17.5",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
+ "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw=="
},
"lodash._basecopy": {
"version": "3.0.1",
@@ -3119,16 +3640,6 @@
"resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz",
"integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA="
},
- "lodash.isplainobject": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
- "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs="
- },
- "lodash.isstring": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz",
- "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE="
- },
"lodash.keys": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz",
@@ -3139,11 +3650,6 @@
"lodash.isarray": "3.0.4"
}
},
- "lodash.mapvalues": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz",
- "integrity": "sha1-G6+lAF3p3W9PJmaMMMo3IwzJaJw="
- },
"lodash.restparam": {
"version": "3.6.1",
"resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz",
@@ -3180,9 +3686,9 @@
"integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc="
},
"lowercase-keys": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz",
- "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY="
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz",
+ "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA=="
},
"lru-cache": {
"version": "2.7.3",
@@ -3190,30 +3696,56 @@
"integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI="
},
"magic-string": {
- "version": "0.22.4",
- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.4.tgz",
- "integrity": "sha512-kxBL06p6iO2qPBHsqGK2b3cRwiRGpnmSuVWNhwHcMX7qJOUr1HvricYP1LZOCdkQBUp0jiWg2d6WJwR3vYgByw==",
+ "version": "0.22.5",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.5.tgz",
+ "integrity": "sha512-oreip9rJZkzvA8Qzk9HFs8fZGF/u7H/gtrE8EN6RjKJ9kh2HlC+yQ2QezifqTZfGyiuAV0dRv5a+y/8gBb1m9w==",
"requires": {
"vlq": "0.2.3"
}
},
"make-dir": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.1.0.tgz",
- "integrity": "sha512-0Pkui4wLJ7rxvmfUvs87skoEaxmu0hCUApF8nonzpl7q//FWp9zu8W61Scz4sd/kUiqDxvUhtoam2efDyiBzcA==",
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.2.0.tgz",
+ "integrity": "sha512-aNUAa4UMg/UougV25bbrU4ZaaKNjJ/3/xnvg/twpmKROPdKZPZ9wGgI0opdZzO8q/zUFawoUuixuOv33eZ61Iw==",
"requires": {
"pify": "3.0.0"
}
},
+ "make-iterator": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.0.tgz",
+ "integrity": "sha1-V7713IXSOSO6I3ZzJNjo+PPZaUs=",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
"map-cache": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
"integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8="
},
+ "map-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
+ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
+ "requires": {
+ "object-visit": "1.0.1"
+ }
+ },
"marked": {
- "version": "0.3.12",
- "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.12.tgz",
- "integrity": "sha512-k4NaW+vS7ytQn6MgJn3fYpQt20/mOgYM5Ft9BYMfQJDz2QT6yEeS9XJ8k2Nw8JTeWK/znPPW2n3UJGzyYEiMoA=="
+ "version": "0.3.19",
+ "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz",
+ "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg=="
},
"merge": {
"version": "1.2.0",
@@ -3230,27 +3762,27 @@
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz",
"integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=",
"requires": {
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
}
},
"micromatch": {
- "version": "2.3.11",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
- "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "version": "3.1.10",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
+ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
"requires": {
- "arr-diff": "2.0.0",
- "array-unique": "0.2.1",
- "braces": "1.8.5",
- "expand-brackets": "0.1.5",
- "extglob": "0.3.2",
- "filename-regex": "2.0.1",
- "is-extglob": "1.0.0",
- "is-glob": "2.0.1",
- "kind-of": "3.2.2",
- "normalize-path": "2.1.1",
- "object.omit": "2.0.1",
- "parse-glob": "3.0.4",
- "regex-cache": "0.4.4"
+ "arr-diff": "4.0.0",
+ "array-unique": "0.3.2",
+ "braces": "2.3.1",
+ "define-property": "2.0.2",
+ "extend-shallow": "3.0.2",
+ "extglob": "2.0.4",
+ "fragment-cache": "0.2.1",
+ "kind-of": "6.0.2",
+ "nanomatch": "1.2.9",
+ "object.pick": "1.3.0",
+ "regex-not": "1.0.2",
+ "snapdragon": "0.8.2",
+ "to-regex": "3.0.2"
}
},
"mime": {
@@ -3259,16 +3791,16 @@
"integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ=="
},
"mime-db": {
- "version": "1.30.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz",
- "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE="
+ "version": "1.33.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz",
+ "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ=="
},
"mime-types": {
- "version": "2.1.17",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz",
- "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=",
+ "version": "2.1.18",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
+ "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
"requires": {
- "mime-db": "1.30.0"
+ "mime-db": "1.33.0"
}
},
"minimatch": {
@@ -3276,7 +3808,7 @@
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"requires": {
- "brace-expansion": "1.1.8"
+ "brace-expansion": "1.1.11"
}
},
"minimist": {
@@ -3285,10 +3817,11 @@
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ="
},
"minipass": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.1.tgz",
- "integrity": "sha512-u1aUllxPJUI07cOqzR7reGmQxmCqlH88uIIsf6XZFEWgw7gXKpJdR+5R9Y3KEDmWYkdIz9wXZs3C0jOPxejk/Q==",
+ "version": "2.2.4",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz",
+ "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==",
"requires": {
+ "safe-buffer": "5.1.1",
"yallist": "3.0.2"
},
"dependencies": {
@@ -3304,7 +3837,26 @@
"resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz",
"integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==",
"requires": {
- "minipass": "2.2.1"
+ "minipass": "2.2.4"
+ }
+ },
+ "mixin-deep": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz",
+ "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==",
+ "requires": {
+ "for-in": "1.0.2",
+ "is-extendable": "1.0.1"
+ },
+ "dependencies": {
+ "is-extendable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "requires": {
+ "is-plain-object": "2.0.4"
+ }
+ }
}
},
"mkdirp": {
@@ -3358,10 +3910,29 @@
"duplexer2": "0.0.2"
}
},
+ "nanomatch": {
+ "version": "1.2.9",
+ "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.9.tgz",
+ "integrity": "sha512-n8R9bS8yQ6eSXaV6jHUpKzD8gLsin02w1HSFiegwrs9E098Ylhw5jdyKPaYqvHknHaSCKTPp7C8dGCQ0q9koXA==",
+ "requires": {
+ "arr-diff": "4.0.0",
+ "array-unique": "0.3.2",
+ "define-property": "2.0.2",
+ "extend-shallow": "3.0.2",
+ "fragment-cache": "0.2.1",
+ "is-odd": "2.0.0",
+ "is-windows": "1.0.2",
+ "kind-of": "6.0.2",
+ "object.pick": "1.3.0",
+ "regex-not": "1.0.2",
+ "snapdragon": "0.8.2",
+ "to-regex": "3.0.2"
+ }
+ },
"natives": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/natives/-/natives-1.1.0.tgz",
- "integrity": "sha1-6f+EFBimsux6SV6TmYT3jxY+bjE="
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/natives/-/natives-1.1.2.tgz",
+ "integrity": "sha512-5bRASydE1gu6zPOenLN043++J8xj1Ob7ArkfdYO3JN4DF5rDmG7bMoiybkTyD+GnXQEMixVeDHMzuqm6kpBmiA=="
},
"ncp": {
"version": "2.0.0",
@@ -3469,7 +4040,7 @@
"file-exists": "2.0.0",
"merge": "1.2.0",
"multimeter": "0.1.1",
- "rimraf": "2.6.1",
+ "rimraf": "2.6.2",
"semver": "5.5.0",
"yargs": "3.32.0"
},
@@ -3495,7 +4066,7 @@
"graceful-ncp": "3.0.0",
"inherits": "2.0.3",
"lazy-req": "2.0.0",
- "lodash": "4.17.4",
+ "lodash": "4.17.5",
"optimist": "0.6.1",
"platform-overrides": "1.0.1",
"plist": "2.1.0",
@@ -3503,7 +4074,7 @@
"rcedit": "0.9.0",
"recursive-readdir-sync": "1.0.6",
"request": "2.81.0",
- "rimraf": "2.6.1",
+ "rimraf": "2.6.2",
"semver": "2.3.2",
"simple-glob": "0.1.0",
"tar-fs": "1.16.0",
@@ -3519,12 +4090,12 @@
"integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=",
"requires": {
"archiver-utils": "1.3.0",
- "async": "2.5.0",
+ "async": "2.6.0",
"buffer-crc32": "0.2.13",
"glob": "7.1.2",
- "lodash": "4.17.4",
- "readable-stream": "2.3.3",
- "tar-stream": "1.5.4",
+ "lodash": "4.17.5",
+ "readable-stream": "2.3.5",
+ "tar-stream": "1.5.5",
"walkdir": "0.0.11",
"zip-stream": "1.2.0"
}
@@ -3564,30 +4135,93 @@
"resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz",
"integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE="
},
+ "object-copy": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
+ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
+ "requires": {
+ "copy-descriptor": "0.1.1",
+ "define-property": "0.2.5",
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "requires": {
+ "is-descriptor": "0.1.6"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
+ "requires": {
+ "kind-of": "3.2.2"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
+ "requires": {
+ "kind-of": "3.2.2"
+ }
+ },
+ "is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "requires": {
+ "is-accessor-descriptor": "0.1.6",
+ "is-data-descriptor": "0.1.4",
+ "kind-of": "5.1.0"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="
+ }
+ }
+ },
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
+ "object-visit": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
+ "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
+ "requires": {
+ "isobject": "3.0.1"
+ }
+ },
"object.defaults": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz",
"integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=",
"requires": {
"array-each": "1.0.1",
- "array-slice": "1.0.0",
+ "array-slice": "1.1.0",
"for-own": "1.0.0",
"isobject": "3.0.1"
- },
- "dependencies": {
- "for-own": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz",
- "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=",
- "requires": {
- "for-in": "1.0.2"
- }
- },
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
- }
+ }
+ },
+ "object.map": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz",
+ "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=",
+ "requires": {
+ "for-own": "1.0.0",
+ "make-iterator": "1.0.0"
}
},
"object.omit": {
@@ -3597,6 +4231,16 @@
"requires": {
"for-own": "0.1.5",
"is-extendable": "0.1.1"
+ },
+ "dependencies": {
+ "for-own": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
+ "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
+ "requires": {
+ "for-in": "1.0.2"
+ }
+ }
}
},
"object.pick": {
@@ -3605,13 +4249,6 @@
"integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
"requires": {
"isobject": "3.0.1"
- },
- "dependencies": {
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
- }
}
},
"on-finished": {
@@ -3631,9 +4268,9 @@
}
},
"openlayers": {
- "version": "4.6.4",
- "resolved": "https://registry.npmjs.org/openlayers/-/openlayers-4.6.4.tgz",
- "integrity": "sha512-Oru7/xniirjech7H5zkMQSUj/JUymNveiE4vAwmyjAmcoNyO4zTRD/Pp7BPfxBPuAz45vDl78H1wEQD7RGWkGg==",
+ "version": "4.6.5",
+ "resolved": "https://registry.npmjs.org/openlayers/-/openlayers-4.6.5.tgz",
+ "integrity": "sha512-RH1jqHJA8/d4ZuMYewBMfbFvmriplQ3GvDSLpqxad3S55PFyMWkbg3lKSt2zHRhijiFq4PpsCsJQLDqmSDGSOQ==",
"requires": {
"async": "2.6.0",
"closure-util": "1.26.0",
@@ -3645,20 +4282,12 @@
"rbush": "2.0.1",
"rollup": "0.52.3",
"rollup-plugin-cleanup": "2.0.0",
- "rollup-plugin-commonjs": "8.3.0",
- "rollup-plugin-node-resolve": "3.0.2",
- "temp": "github:adam-lynch/node-temp#279c1350cb7e4f02515d91da9e35d39a40774016",
+ "rollup-plugin-commonjs": "8.4.1",
+ "rollup-plugin-node-resolve": "3.3.0",
+ "temp": "0.8.3",
"walk": "2.3.9"
},
"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": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz",
@@ -3702,7 +4331,7 @@
"requires": {
"end-of-stream": "0.1.5",
"sequencify": "0.0.7",
- "stream-consume": "0.1.0"
+ "stream-consume": "0.1.1"
},
"dependencies": {
"end-of-stream": {
@@ -3747,9 +4376,9 @@
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ="
},
"osenv": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz",
- "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=",
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
+ "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
"requires": {
"os-homedir": "1.0.2",
"os-tmpdir": "1.0.2"
@@ -3761,9 +4390,9 @@
"integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4="
},
"p-map": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.1.1.tgz",
- "integrity": "sha1-BfXkrpegaDcbwqXMhr+9vBnErno="
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz",
+ "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA=="
},
"package-json": {
"version": "2.4.0",
@@ -3781,7 +4410,7 @@
"resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
"integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=",
"requires": {
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
}
},
"got": {
@@ -3794,13 +4423,13 @@
"is-redirect": "1.0.0",
"is-retry-allowed": "1.1.0",
"is-stream": "1.1.0",
- "lowercase-keys": "1.0.0",
+ "lowercase-keys": "1.0.1",
"node-status-codes": "1.0.0",
"object-assign": "4.1.1",
"parse-json": "2.2.0",
"pinkie-promise": "2.0.1",
"read-all-stream": "3.1.0",
- "readable-stream": "2.3.3",
+ "readable-stream": "2.3.5",
"timed-out": "3.1.3",
"unzip-response": "1.0.2",
"url-parse-lax": "1.0.0"
@@ -3824,11 +4453,11 @@
}
},
"parse-filepath": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.1.tgz",
- "integrity": "sha1-FZ1hVdQ5BNFsEO9piRHaHpGWm3M=",
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz",
+ "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=",
"requires": {
- "is-absolute": "0.2.6",
+ "is-absolute": "1.0.0",
"map-cache": "0.2.2",
"path-root": "0.1.1"
}
@@ -3842,6 +4471,21 @@
"is-dotfile": "1.0.3",
"is-extglob": "1.0.0",
"is-glob": "2.0.1"
+ },
+ "dependencies": {
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "requires": {
+ "is-extglob": "1.0.0"
+ }
+ }
}
},
"parse-json": {
@@ -3873,6 +4517,11 @@
"better-assert": "1.0.2"
}
},
+ "pascalcase": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
+ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ="
+ },
"path-dirname": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
@@ -3916,7 +4565,7 @@
"resolved": "https://registry.npmjs.org/pbf/-/pbf-3.1.0.tgz",
"integrity": "sha512-/hYJmIsTmh7fMkHAWWXJ5b8IKLWdjdlAFb3IHkRBn1XUhIYBChVGfVwmHEAV3UfXTxsP/AKfYTXTS/dCPxJd5w==",
"requires": {
- "ieee754": "1.1.8",
+ "ieee754": "1.1.11",
"resolve-protobuf-schema": "2.0.0"
}
},
@@ -4006,6 +4655,11 @@
"array-slice": "0.2.3"
}
},
+ "arr-union": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz",
+ "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0="
+ },
"array-slice": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
@@ -4026,6 +4680,11 @@
}
}
},
+ "posix-character-classes": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
+ "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs="
+ },
"prepend-http": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
@@ -4042,9 +4701,9 @@
"integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE="
},
"process-nextick-args": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
- "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M="
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
+ "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw=="
},
"progress": {
"version": "1.1.8",
@@ -4088,7 +4747,7 @@
"resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz",
"integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==",
"requires": {
- "end-of-stream": "1.4.0",
+ "end-of-stream": "1.4.1",
"once": "1.4.0"
}
},
@@ -4121,30 +4780,12 @@
"kind-of": "4.0.0"
},
"dependencies": {
- "is-number": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
- "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
- "requires": {
- "kind-of": "3.2.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "requires": {
- "is-buffer": "1.1.5"
- }
- }
- }
- },
"kind-of": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
"integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
"requires": {
- "is-buffer": "1.1.5"
+ "is-buffer": "1.1.6"
}
}
}
@@ -4163,12 +4804,12 @@
}
},
"rc": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.4.tgz",
- "integrity": "sha1-oPYGyq4qO4YrvQ74VILAElsxX6M=",
+ "version": "1.2.6",
+ "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.6.tgz",
+ "integrity": "sha1-6xiYnG1PTxYsOZ953dKfODVWgJI=",
"requires": {
"deep-extend": "0.4.2",
- "ini": "1.3.4",
+ "ini": "1.3.5",
"minimist": "1.2.0",
"strip-json-comments": "2.0.1"
}
@@ -4184,18 +4825,18 @@
"integrity": "sha1-NcPhd/IHjveJ7kv6+kNzB06u9Po=",
"requires": {
"pinkie-promise": "2.0.1",
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
}
},
"readable-stream": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
- "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
+ "version": "2.3.5",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz",
+ "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
- "process-nextick-args": "1.0.7",
+ "process-nextick-args": "2.0.0",
"safe-buffer": "5.1.1",
"string_decoder": "1.0.3",
"util-deprecate": "1.0.2"
@@ -4206,7 +4847,7 @@
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
"integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
"requires": {
- "resolve": "1.4.0"
+ "resolve": "1.6.0"
}
},
"recursive-readdir-sync": {
@@ -4222,12 +4863,21 @@
"is-equal-shallow": "0.1.3"
}
},
+ "regex-not": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
+ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
+ "requires": {
+ "extend-shallow": "3.0.2",
+ "safe-regex": "1.1.0"
+ }
+ },
"registry-auth-token": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz",
"integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==",
"requires": {
- "rc": "1.2.4",
+ "rc": "1.2.6",
"safe-buffer": "5.1.1"
}
},
@@ -4236,7 +4886,7 @@
"resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz",
"integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=",
"requires": {
- "rc": "1.2.4"
+ "rc": "1.2.6"
}
},
"remove-trailing-separator": {
@@ -4275,7 +4925,7 @@
"aws-sign2": "0.6.0",
"aws4": "1.6.0",
"caseless": "0.12.0",
- "combined-stream": "1.0.5",
+ "combined-stream": "1.0.6",
"extend": "3.0.1",
"forever-agent": "0.6.1",
"form-data": "2.1.4",
@@ -4285,13 +4935,13 @@
"is-typedarray": "1.0.0",
"isstream": "0.1.2",
"json-stringify-safe": "5.0.1",
- "mime-types": "2.1.17",
+ "mime-types": "2.1.18",
"oauth-sign": "0.8.2",
"performance-now": "0.2.0",
"qs": "6.4.0",
"safe-buffer": "5.1.1",
"stringstream": "0.0.5",
- "tough-cookie": "2.3.3",
+ "tough-cookie": "2.3.4",
"tunnel-agent": "0.6.0",
"uuid": "3.2.1"
},
@@ -4320,20 +4970,20 @@
}
},
"resolve": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz",
- "integrity": "sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q==",
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.6.0.tgz",
+ "integrity": "sha512-mw7JQNu5ExIkcw4LPih0owX/TZXjD/ZUF/ZQ/pDnkw3ZKhDcZZw5klmBlj6gVMwjQ3Pz5Jgu7F3d0jcDVuEWdw==",
"requires": {
"path-parse": "1.0.5"
}
},
"resolve-dir": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz",
- "integrity": "sha1-shklmlYC+sXFxJatiUpujMQwJh4=",
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
+ "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
"requires": {
- "expand-tilde": "1.2.2",
- "global-modules": "0.2.3"
+ "expand-tilde": "2.0.2",
+ "global-modules": "1.0.0"
}
},
"resolve-protobuf-schema": {
@@ -4344,6 +4994,16 @@
"protocol-buffers-schema": "2.2.0"
}
},
+ "resolve-url": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
+ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo="
+ },
+ "ret": {
+ "version": "0.1.15",
+ "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
+ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg=="
+ },
"retry": {
"version": "0.10.1",
"resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz",
@@ -4359,9 +5019,9 @@
}
},
"rimraf": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz",
- "integrity": "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=",
+ "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"
}
@@ -4377,7 +5037,7 @@
"integrity": "sha1-hZdzGaO/VHUKnXX7kJx+UfWaLaQ=",
"requires": {
"acorn": "4.0.13",
- "magic-string": "0.22.4",
+ "magic-string": "0.22.5",
"rollup-pluginutils": "2.0.1"
},
"dependencies": {
@@ -4389,14 +5049,14 @@
}
},
"rollup-plugin-commonjs": {
- "version": "8.3.0",
- "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.3.0.tgz",
- "integrity": "sha512-PYs3OiYgENFYEmI3vOEm5nrp3eY90YZqd5vGmQqeXmhJsAWFIrFdROCvOasqJ1HgeTvqyYo9IGXnFDyoboNcgQ==",
+ "version": "8.4.1",
+ "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.4.1.tgz",
+ "integrity": "sha512-mg+WuD+jlwoo8bJtW3Mvx7Tz6TsIdMsdhuvCnDMoyjh0oxsVgsjB/N0X984RJCWwc5IIiqNVJhXeeITcc73++A==",
"requires": {
"acorn": "5.2.1",
"estree-walker": "0.5.1",
- "magic-string": "0.22.4",
- "resolve": "1.4.0",
+ "magic-string": "0.22.5",
+ "resolve": "1.6.0",
"rollup-pluginutils": "2.0.1"
},
"dependencies": {
@@ -4408,13 +5068,13 @@
}
},
"rollup-plugin-node-resolve": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.0.2.tgz",
- "integrity": "sha512-ZwmMip/yqw6cmDQJuCQJ1G7gw2z11iGUtQNFYrFZHmqadRHU+OZGC3nOXwXu+UTvcm5lzDspB1EYWrkTgPWybw==",
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.3.0.tgz",
+ "integrity": "sha512-9zHGr3oUJq6G+X0oRMYlzid9fXicBdiydhwGChdyeNRGPcN/majtegApRKHLR5drboUvEWU+QeUmGTyEZQs3WA==",
"requires": {
- "builtin-modules": "1.1.1",
+ "builtin-modules": "2.0.0",
"is-module": "1.0.0",
- "resolve": "1.4.0"
+ "resolve": "1.6.0"
}
},
"rollup-pluginutils": {
@@ -4424,6 +5084,88 @@
"requires": {
"estree-walker": "0.3.1",
"micromatch": "2.3.11"
+ },
+ "dependencies": {
+ "arr-diff": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+ "requires": {
+ "arr-flatten": "1.1.0"
+ }
+ },
+ "array-unique": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+ "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM="
+ },
+ "braces": {
+ "version": "1.8.5",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+ "requires": {
+ "expand-range": "1.8.2",
+ "preserve": "0.2.0",
+ "repeat-element": "1.1.2"
+ }
+ },
+ "expand-brackets": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+ "requires": {
+ "is-posix-bracket": "0.1.1"
+ }
+ },
+ "extglob": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+ "requires": {
+ "is-extglob": "1.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
+ "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA="
+ },
+ "is-glob": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
+ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
+ "requires": {
+ "is-extglob": "1.0.0"
+ }
+ },
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ },
+ "micromatch": {
+ "version": "2.3.11",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
+ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=",
+ "requires": {
+ "arr-diff": "2.0.0",
+ "array-unique": "0.2.1",
+ "braces": "1.8.5",
+ "expand-brackets": "0.1.5",
+ "extglob": "0.3.2",
+ "filename-regex": "2.0.1",
+ "is-extglob": "1.0.0",
+ "is-glob": "2.0.1",
+ "kind-of": "3.2.2",
+ "normalize-path": "2.1.1",
+ "object.omit": "2.0.1",
+ "parse-glob": "3.0.4",
+ "regex-cache": "0.4.4"
+ }
+ }
}
},
"run-sequence": {
@@ -4434,18 +5176,6 @@
"chalk": "1.1.3",
"fancy-log": "1.3.2",
"plugin-error": "0.1.2"
- },
- "dependencies": {
- "fancy-log": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.2.tgz",
- "integrity": "sha1-9BEl49hPLn2JpD0G2VjI94vha+E=",
- "requires": {
- "ansi-gray": "0.1.1",
- "color-support": "1.1.3",
- "time-stamp": "1.1.0"
- }
- }
}
},
"safe-buffer": {
@@ -4453,6 +5183,14 @@
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
"integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg=="
},
+ "safe-regex": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
+ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
+ "requires": {
+ "ret": "0.1.15"
+ }
+ },
"seek-bzip": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz",
@@ -4511,6 +5249,27 @@
"resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc="
},
+ "set-value": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz",
+ "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==",
+ "requires": {
+ "extend-shallow": "2.0.1",
+ "is-extendable": "0.1.1",
+ "is-plain-object": "2.0.4",
+ "split-string": "3.1.0"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "requires": {
+ "is-extendable": "0.1.1"
+ }
+ }
+ }
+ },
"setprototypeof": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
@@ -4590,6 +5349,128 @@
"resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz",
"integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc="
},
+ "snapdragon": {
+ "version": "0.8.2",
+ "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
+ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
+ "requires": {
+ "base": "0.11.2",
+ "debug": "2.6.9",
+ "define-property": "0.2.5",
+ "extend-shallow": "2.0.1",
+ "map-cache": "0.2.2",
+ "source-map": "0.5.7",
+ "source-map-resolve": "0.5.1",
+ "use": "3.1.0"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "requires": {
+ "is-descriptor": "0.1.6"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "requires": {
+ "is-extendable": "0.1.1"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
+ "is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
+ "is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "requires": {
+ "is-accessor-descriptor": "0.1.6",
+ "is-data-descriptor": "0.1.4",
+ "kind-of": "5.1.0"
+ }
+ },
+ "kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="
+ }
+ }
+ },
+ "snapdragon-node": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
+ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
+ "requires": {
+ "define-property": "1.0.0",
+ "isobject": "3.0.1",
+ "snapdragon-util": "3.0.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "requires": {
+ "is-descriptor": "1.0.2"
+ }
+ }
+ }
+ },
+ "snapdragon-util": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
+ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
"sntp": {
"version": "1.0.9",
"resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
@@ -4604,10 +5485,10 @@
"integrity": "sha1-waRZDO/4fs8TxyZS8Eb3FrKeYBQ=",
"requires": {
"debug": "2.6.9",
- "engine.io": "3.1.4",
+ "engine.io": "3.1.5",
"socket.io-adapter": "1.1.1",
"socket.io-client": "2.0.4",
- "socket.io-parser": "3.1.2"
+ "socket.io-parser": "3.1.3"
}
},
"socket.io-adapter": {
@@ -4625,27 +5506,35 @@
"component-bind": "1.0.0",
"component-emitter": "1.2.1",
"debug": "2.6.9",
- "engine.io-client": "3.1.4",
+ "engine.io-client": "3.1.6",
"has-cors": "1.1.0",
"indexof": "0.0.1",
"object-component": "0.0.3",
"parseqs": "0.0.5",
"parseuri": "0.0.5",
- "socket.io-parser": "3.1.2",
+ "socket.io-parser": "3.1.3",
"to-array": "0.1.4"
}
},
"socket.io-parser": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.1.2.tgz",
- "integrity": "sha1-28IoIVH8T6675Aru3Ady66YZ9/I=",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.1.3.tgz",
+ "integrity": "sha512-g0a2HPqLguqAczs3dMECuA1RgoGFPyvDqcbaDEdCWY9g59kdUAz3YRmaJBNKXflrHNwB7Q12Gkf/0CZXfdHR7g==",
"requires": {
"component-emitter": "1.2.1",
- "debug": "2.6.9",
+ "debug": "3.1.0",
"has-binary2": "1.0.2",
"isarray": "2.0.1"
},
"dependencies": {
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
"isarray": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
@@ -4658,15 +5547,40 @@
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
},
+ "source-map-resolve": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.1.tgz",
+ "integrity": "sha512-0KW2wvzfxm8NCTb30z0LMNyPqWCdDGE2viwzUaucqJdkTRXtZiSY3I+2A6nVAjmdOy0I4gU8DwnVVGsk9jvP2A==",
+ "requires": {
+ "atob": "2.0.3",
+ "decode-uri-component": "0.2.0",
+ "resolve-url": "0.2.1",
+ "source-map-url": "0.4.0",
+ "urix": "0.1.0"
+ }
+ },
+ "source-map-url": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
+ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM="
+ },
"sparkles": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.0.tgz",
"integrity": "sha1-Gsu/tZJDbRC76PeFt8xvgoFQEsM="
},
+ "split-string": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
+ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
+ "requires": {
+ "extend-shallow": "3.0.2"
+ }
+ },
"sshpk": {
- "version": "1.13.1",
- "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz",
- "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=",
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz",
+ "integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=",
"requires": {
"asn1": "0.2.3",
"assert-plus": "1.0.0",
@@ -4690,6 +5604,76 @@
"resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-0.2.2.tgz",
"integrity": "sha1-5sgLYjEj19gM8TLOU480YokHJQI="
},
+ "static-extend": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
+ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
+ "requires": {
+ "define-property": "0.2.5",
+ "object-copy": "0.1.0"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "requires": {
+ "is-descriptor": "0.1.6"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
+ "is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
+ "is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "requires": {
+ "is-accessor-descriptor": "0.1.6",
+ "is-data-descriptor": "0.1.4",
+ "kind-of": "5.1.0"
+ }
+ },
+ "kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="
+ }
+ }
+ },
"statuses": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
@@ -4701,7 +5685,7 @@
"integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=",
"requires": {
"duplexer2": "0.1.4",
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
},
"dependencies": {
"duplexer2": {
@@ -4709,15 +5693,15 @@
"resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
"integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=",
"requires": {
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
}
}
}
},
"stream-consume": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.0.tgz",
- "integrity": "sha1-pB6tGm1ggc63n2WwYZAbbY89HQ8="
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.1.tgz",
+ "integrity": "sha512-tNa3hzgkjEP7XbCkbRXe1jpg+ievoa0O4SCFlMOYEscGSS4JJsckGL8swUyAa/ApGU3Ae4t6Honor4HhL+tRyg=="
},
"stream-shift": {
"version": "1.0.0",
@@ -4822,9 +5806,9 @@
"integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo="
},
"strip-outer": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.0.tgz",
- "integrity": "sha1-qsC6YNLpDF1PJ1/Yhp/ZotMQ/7g=",
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz",
+ "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==",
"requires": {
"escape-string-regexp": "1.0.5"
}
@@ -4852,7 +5836,7 @@
"resolved": "https://registry.npmjs.org/tar/-/tar-3.1.5.tgz",
"integrity": "sha512-TKJKz1fqBOZBaIQ/MGRKU0EnTGmKMLy4ReTRgP10AgtfOWBbj9PBg4MgY80GFpqGbs2EzcIctW5gbwbP4woDYg==",
"requires": {
- "minipass": "2.2.1",
+ "minipass": "2.2.4",
"minizlib": "1.1.0",
"mkdirp": "0.5.1",
"yallist": "3.0.2"
@@ -4873,23 +5857,26 @@
"chownr": "1.0.1",
"mkdirp": "0.5.1",
"pump": "1.0.3",
- "tar-stream": "1.5.4"
+ "tar-stream": "1.5.5"
}
},
"tar-stream": {
- "version": "1.5.4",
- "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.4.tgz",
- "integrity": "sha1-NlSc8E7RrumyowwBQyUiONr5QBY=",
+ "version": "1.5.5",
+ "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz",
+ "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==",
"requires": {
- "bl": "1.2.1",
- "end-of-stream": "1.4.0",
- "readable-stream": "2.3.3",
+ "bl": "1.2.2",
+ "end-of-stream": "1.4.1",
+ "readable-stream": "2.3.5",
"xtend": "4.0.1"
}
},
"temp": {
- "version": "github:adam-lynch/node-temp#279c1350cb7e4f02515d91da9e35d39a40774016",
+ "version": "0.8.3",
+ "resolved": "https://registry.npmjs.org/temp/-/temp-0.8.3.tgz",
+ "integrity": "sha1-4Ma8TSa5AxJEEOT+2BEDAU38H1k=",
"requires": {
+ "os-tmpdir": "1.0.2",
"rimraf": "2.2.8"
},
"dependencies": {
@@ -4936,7 +5923,7 @@
"resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
"integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=",
"requires": {
- "readable-stream": "2.3.3",
+ "readable-stream": "2.3.5",
"xtend": "4.0.1"
}
},
@@ -4981,6 +5968,16 @@
"integrity": "sha1-HN+kcqnvUMI57maZm2YsoOs5k38=",
"requires": {
"extend-shallow": "2.0.1"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "requires": {
+ "is-extendable": "0.1.1"
+ }
+ }
}
},
"to-array": {
@@ -4988,6 +5985,44 @@
"resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz",
"integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA="
},
+ "to-object-path": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
+ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
+ "requires": {
+ "kind-of": "3.2.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "requires": {
+ "is-buffer": "1.1.6"
+ }
+ }
+ }
+ },
+ "to-regex": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
+ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
+ "requires": {
+ "define-property": "2.0.2",
+ "extend-shallow": "3.0.2",
+ "regex-not": "1.0.2",
+ "safe-regex": "1.1.0"
+ }
+ },
+ "to-regex-range": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
+ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
+ "requires": {
+ "is-number": "3.0.0",
+ "repeat-string": "1.6.1"
+ }
+ },
"touch": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/touch/-/touch-0.0.3.tgz",
@@ -5007,9 +6042,9 @@
}
},
"tough-cookie": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz",
- "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=",
+ "version": "2.3.4",
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz",
+ "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==",
"requires": {
"punycode": "1.4.1"
}
@@ -5138,6 +6173,38 @@
"underscore": "1.6.0"
}
},
+ "union-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz",
+ "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=",
+ "requires": {
+ "arr-union": "3.1.0",
+ "get-value": "2.0.6",
+ "is-extendable": "0.1.1",
+ "set-value": "0.4.3"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "requires": {
+ "is-extendable": "0.1.1"
+ }
+ },
+ "set-value": {
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz",
+ "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=",
+ "requires": {
+ "extend-shallow": "2.0.1",
+ "is-extendable": "0.1.1",
+ "is-plain-object": "2.0.4",
+ "to-object-path": "0.3.0"
+ }
+ }
+ }
+ },
"unique-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-1.0.0.tgz",
@@ -5148,6 +6215,42 @@
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.1.tgz",
"integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc="
},
+ "unset-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
+ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
+ "requires": {
+ "has-value": "0.3.1",
+ "isobject": "3.0.1"
+ },
+ "dependencies": {
+ "has-value": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
+ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
+ "requires": {
+ "get-value": "2.0.6",
+ "has-values": "0.1.4",
+ "isobject": "2.1.0"
+ },
+ "dependencies": {
+ "isobject": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
+ "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
+ "requires": {
+ "isarray": "1.0.0"
+ }
+ }
+ }
+ },
+ "has-values": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
+ "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E="
+ }
+ }
+ },
"unzip-response": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz",
@@ -5207,6 +6310,11 @@
}
}
},
+ "urix": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
+ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI="
+ },
"url-parse-lax": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz",
@@ -5220,6 +6328,14 @@
"resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz",
"integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k="
},
+ "use": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz",
+ "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==",
+ "requires": {
+ "kind-of": "6.0.2"
+ }
+ },
"user-home": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz",
@@ -5236,9 +6352,9 @@
"integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho="
},
"uws": {
- "version": "0.14.5",
- "resolved": "https://registry.npmjs.org/uws/-/uws-0.14.5.tgz",
- "integrity": "sha1-Z6rzPEaypYel9mZtAPdpEyjxSdw=",
+ "version": "9.14.0",
+ "resolved": "https://registry.npmjs.org/uws/-/uws-9.14.0.tgz",
+ "integrity": "sha512-HNMztPP5A1sKuVFmdZ6BPVpBQd5bUjNC8EFMFiICK+oho/OQsAJy5hnIx4btMHiOk8j04f/DbIlqnEZ9d72dqg==",
"optional": true
},
"v8flags": {
@@ -5276,7 +6392,7 @@
"resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz",
"integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=",
"requires": {
- "clone": "1.0.2",
+ "clone": "1.0.4",
"clone-stats": "0.0.1",
"replace-ext": "0.0.1"
}
@@ -5287,7 +6403,7 @@
"integrity": "sha1-TRmIkbVRWRHXcajNnFSApGoHSkU=",
"requires": {
"object-assign": "4.1.1",
- "readable-stream": "2.3.3"
+ "readable-stream": "2.3.5"
}
},
"vinyl-fs": {
@@ -5315,7 +6431,7 @@
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz",
"integrity": "sha1-dhPHeKGv6mLyXGMKCG1/Osu92Bg=",
"requires": {
- "natives": "1.1.0"
+ "natives": "1.1.2"
}
},
"isarray": {
@@ -5556,9 +6672,9 @@
"integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=",
"requires": {
"archiver-utils": "1.3.0",
- "compress-commons": "1.2.0",
- "lodash": "4.17.4",
- "readable-stream": "2.3.3"
+ "compress-commons": "1.2.2",
+ "lodash": "4.17.5",
+ "readable-stream": "2.3.5"
}
}
}
diff --git a/package.json b/package.json
index dc8394dc..23e767c9 100755
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "inav-configurator",
"description": "INAV Configurator",
- "version": "1.8.1",
+ "version": "1.9.3",
"main": "main.html",
"default_locale": "en",
"scripts": {
@@ -29,8 +29,9 @@
"inflection": "1.12.0",
"jquery": "2.1.4",
"jquery-ui-npm": "1.12.0",
- "nw": "^0.25.4",
- "nw-builder": "^3.5.1",
+ "marked": "^0.3.17",
+ "nw": "^0.25.4-sdk",
+ "nw-builder": "^3.4.1",
"openlayers": "^4.6.4",
"run-sequence": "^2.2.0",
"temp": "^0.8.3",
diff --git a/resources/osd/bold.mcm b/resources/osd/bold.mcm
index b2497cc9..af1a92a1 100644
--- a/resources/osd/bold.mcm
+++ b/resources/osd/bold.mcm
@@ -2179,49 +2179,49 @@ MAX7456
01010101
01010101
01010101
+00010101
01010101
+01010100
+10000001
01010101
+01010010
+10001000
+00010101
+01001010
+10101010
+10000101
+01010010
+10001000
+10100001
+01010100
+10000001
+00100001
01010101
+00010100
+00100001
01010101
+01010010
+10100001
+01010100
+00001010
+00000101
+01010010
+10101000
01010101
+01010010
+00000001
01010101
+01010010
+00000001
01010101
+01010010
+10101000
01010101
+01010100
+00001010
+00010101
01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
+01010000
01010101
01010101
01010101
@@ -10946,10 +10946,54 @@ MAX7456
01010101
01010101
01010101
+01010000
+00010100
+00000101
+01010010
+00010100
+10000101
+01010010
+00000000
+10000101
+01010010
+00000000
+10000101
+01010010
+00101000
+10000101
+01010000
+10101010
+00000101
+01010100
+10000010
+00010101
+01010100
+00000000
+00010101
+01010100
+00000101
01010101
+01010100
+10000101
01010101
+01010100
+10000000
01010101
+01010100
+10001000
01010101
+01010100
+10100010
+00010101
+01010100
+10000010
+00010101
+01010100
+10000010
+00010101
+01010100
+00000000
+00010101
01010101
01010101
01010101
@@ -10964,21 +11008,56 @@ MAX7456
01010101
01010101
01010101
+01010001
+01010100
01010101
+01001000
+01010010
01010101
+01001000
+01010010
01010101
+01001000
+00000010
01010101
+01001000
+10100010
01010101
+01010010
+10101000
01010101
+01010010
+00001000
01010101
+01010100
+01010001
01010101
+00000000
+00000000
+01010100
+10101010
+10101010
01010101
+00000000
+00000000
01010101
+01010100
+00010000
01010101
+01010010
+00001000
01010101
+01010010
+00100000
01010101
+01010010
+10100000
01010101
+01010010
+00001000
01010101
+01010100
+00000000
01010101
01010101
01010101
@@ -10992,135 +11071,56 @@ MAX7456
01010101
01010101
01010101
+01000001
01010101
01010101
+00100001
01010101
01010101
+00100000
01010101
01010101
+00100010
+00010101
01010101
+00101000
+10000101
01010101
+00100000
+10000101
01010101
+00100000
+10000101
01010101
+01000101
+00010101
01010101
+00000000
+00000000
01010101
+10101010
+10101010
+00010101
+00000000
+00000000
01010101
+00000100
+00010101
01010101
+00100010
+00010101
01010101
+10001000
+10000101
01010101
+10001000
+10000101
01010101
+10000000
+10000101
01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
+00010101
+00010101
01010101
01010101
01010101
diff --git a/resources/osd/bold/171.png b/resources/osd/bold/171.png
new file mode 100644
index 00000000..f8dcbcf6
Binary files /dev/null and b/resources/osd/bold/171.png differ
diff --git a/resources/osd/bold/172-173.png b/resources/osd/bold/172-173.png
new file mode 100644
index 00000000..e6ca6746
Binary files /dev/null and b/resources/osd/bold/172-173.png differ
diff --git a/resources/osd/bold/34.png b/resources/osd/bold/34.png
new file mode 100644
index 00000000..a146a468
Binary files /dev/null and b/resources/osd/bold/34.png differ
diff --git a/resources/osd/default.mcm b/resources/osd/default.mcm
index 78a67750..cc960007 100644
--- a/resources/osd/default.mcm
+++ b/resources/osd/default.mcm
@@ -2179,49 +2179,49 @@ MAX7456
01010101
01010101
01010101
+00010101
01010101
+01010100
+10000001
01010101
+01010010
+10001000
+00010101
+01001010
+10101010
+10000101
+01010010
+10001000
+10100001
+01010100
+10000001
+00100001
01010101
+00010100
+00100001
01010101
+01010010
+10100001
+01010100
+00001010
+00000101
+01010010
+10101000
01010101
+01010010
+00000001
01010101
+01010010
+00000001
01010101
+01010010
+10101000
01010101
+01010100
+00001010
+00010101
01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
+01010000
01010101
01010101
01010101
@@ -10946,15 +10946,53 @@ MAX7456
01010101
01010101
01010101
+01010100
01010101
+00010101
+01010010
+00010100
+10000101
+01010010
+00010100
+10000101
+01010010
+00000000
+10000101
+01010010
+00101000
+10000101
+01010100
+10101010
+00010101
+01010100
+10000010
+00010101
01010101
+00010100
01010101
01010101
+00010101
01010101
+01010100
+10000101
01010101
+01010100
+10000001
01010101
+01010100
+10001000
01010101
+01010100
+10100010
+00010101
+01010100
+10000010
+00010101
+01010100
+10000010
+00010101
01010101
+00010100
01010101
01010101
01010101
@@ -10970,21 +11008,56 @@ MAX7456
01010101
01010101
01010101
+01010001
+01010100
01010101
+01001000
+01010010
01010101
+01001000
+01010010
01010101
+01001000
+00000010
01010101
+01001000
+10100010
01010101
+01010010
+10101000
01010101
+01010010
+00001000
01010101
+01010100
+01010001
01010101
+00000000
+00000000
+01010100
+10101010
+10101010
01010101
+00000000
+00000000
01010101
+01010100
+00010000
01010101
+01010010
+00001000
01010101
+01010010
+00100000
01010101
+01010010
+10100000
01010101
+01010010
+00001000
01010101
+01010100
+00000000
01010101
01010101
01010101
@@ -10998,129 +11071,56 @@ MAX7456
01010101
01010101
01010101
+01000001
01010101
01010101
+00100001
01010101
01010101
+00100000
01010101
01010101
+00100010
+00010101
01010101
+00101000
+10000101
01010101
+00100000
+10000101
01010101
+00100000
+10000101
01010101
+01000101
+00010101
01010101
+00000000
+00000000
01010101
+10101010
+10101010
+00010101
+00000000
+00000000
01010101
+00000100
+00010101
01010101
+00100010
+00010101
01010101
+10001000
+10000101
01010101
+10001000
+10000101
01010101
+10000000
+10000101
01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
+00010101
+00010101
01010101
01010101
01010101
diff --git a/resources/osd/default/171.png b/resources/osd/default/171.png
new file mode 100644
index 00000000..3daae9f4
Binary files /dev/null and b/resources/osd/default/171.png differ
diff --git a/resources/osd/default/172-173.png b/resources/osd/default/172-173.png
new file mode 100644
index 00000000..e6ca6746
Binary files /dev/null and b/resources/osd/default/172-173.png differ
diff --git a/resources/osd/default/34.png b/resources/osd/default/34.png
new file mode 100644
index 00000000..a146a468
Binary files /dev/null and b/resources/osd/default/34.png differ
diff --git a/resources/osd/large.mcm b/resources/osd/large.mcm
index 837a1ad2..eda6f56f 100644
--- a/resources/osd/large.mcm
+++ b/resources/osd/large.mcm
@@ -2179,49 +2179,49 @@ MAX7456
01010101
01010101
01010101
+00010101
01010101
+01010100
+10000001
01010101
+01010010
+10001000
+00010101
+01001010
+10101010
+10000101
+01010010
+10001000
+10100001
+01010100
+10000001
+00100001
01010101
+00010100
+00100001
01010101
+01010010
+10100001
+01010100
+00001010
+00000101
+01010010
+10101000
01010101
+01010010
+00000001
01010101
+01010010
+00000001
01010101
+01010010
+10101000
01010101
+01010100
+00001010
+00010101
01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
+01010000
01010101
01010101
01010101
@@ -10946,15 +10946,53 @@ MAX7456
01010101
01010101
01010101
+01010100
01010101
+00010101
+01010010
+00010100
+10000101
+01010010
+00010100
+10000101
+01010010
+00000000
+10000101
+01010010
+00101000
+10000101
+01010100
+10101010
+00010101
+01010100
+10000010
+00010101
01010101
+00010100
01010101
01010101
+00010101
01010101
+01010100
+10000101
01010101
+01010100
+10000001
01010101
+01010100
+10001000
01010101
+01010100
+10100010
+00010101
+01010100
+10000010
+00010101
+01010100
+10000010
+00010101
01010101
+00010100
01010101
01010101
01010101
@@ -10970,21 +11008,56 @@ MAX7456
01010101
01010101
01010101
+01010001
+01010100
01010101
+01001000
+01010010
01010101
+01001000
+01010010
01010101
+01001000
+00000010
01010101
+01001000
+10100010
01010101
+01010010
+10101000
01010101
+01010010
+00001000
01010101
+01010100
+01010001
01010101
+00000000
+00000000
+01010100
+10101010
+10101010
01010101
+00000000
+00000000
01010101
+01010100
+00010000
01010101
+01010010
+00001000
01010101
+01010010
+00100000
01010101
+01010010
+10100000
01010101
+01010010
+00001000
01010101
+01010100
+00000000
01010101
01010101
01010101
@@ -10998,129 +11071,56 @@ MAX7456
01010101
01010101
01010101
+01000001
01010101
01010101
+00100001
01010101
01010101
+00100000
01010101
01010101
+00100010
+00010101
01010101
+00101000
+10000101
01010101
+00100000
+10000101
01010101
+00100000
+10000101
01010101
+01000101
+00010101
01010101
+00000000
+00000000
01010101
+10101010
+10101010
+00010101
+00000000
+00000000
01010101
+00000100
+00010101
01010101
+00100010
+00010101
01010101
+10001000
+10000101
01010101
+10001000
+10000101
01010101
+10000000
+10000101
01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
-01010101
+00010101
+00010101
01010101
01010101
01010101
diff --git a/resources/osd/large/171.png b/resources/osd/large/171.png
new file mode 100644
index 00000000..3daae9f4
Binary files /dev/null and b/resources/osd/large/171.png differ
diff --git a/resources/osd/large/172-173.png b/resources/osd/large/172-173.png
new file mode 100644
index 00000000..e6ca6746
Binary files /dev/null and b/resources/osd/large/172-173.png differ
diff --git a/resources/osd/large/34.png b/resources/osd/large/34.png
new file mode 100644
index 00000000..a146a468
Binary files /dev/null and b/resources/osd/large/34.png differ
diff --git a/src/css/tabs/mission_planer.css b/src/css/tabs/mission_planer.css
new file mode 100644
index 00000000..351448d3
--- /dev/null
+++ b/src/css/tabs/mission_planer.css
@@ -0,0 +1,127 @@
+.tab-mission-control .btn a {
+ /* common styles for content toolbar buttons */
+ /*margin-top: 0;*/
+ /*margin-bottom: 0;*/
+ /*margin-right: 20px;*/
+ background-color: #37a8db;
+ border-radius: 3px;
+ border: 1px solid #3394b5;
+ color: #fff;
+ /*float: right;*/
+ font-family: 'open_sansbold', Arial, serif;
+ font-size: 12px;
+ text-shadow: 0 1px rgba(0, 0, 0, 0.25);
+ display: block;
+ cursor: pointer;
+ transition: all ease 0.2s;
+ padding: 0 9px;
+ line-height: 28px;
+ margin: 5px;
+ float: left;
+ width: 130px;
+ text-align: center;
+}
+
+.tab-mission-control .btn a:hover {
+ background-color: #3394b5;
+ transition: all ease 0.2s;
+}
+
+.tab-mission-control .btn a:active {
+ background-color: #37a8db;
+ transition: all ease 0.0s;
+ box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.35);
+}
+
+.tab-mission-control .btn a.disabled {
+ cursor: default;
+ color: #fff;
+ background-color: #AFAFAF;
+ border: 1px solid #AFAFAF;
+ pointer-events: none;
+ text-shadow: none;
+ opacity: 0.5;
+}
+
+.tab-mission-control .btn-danger a {
+ background-color: #db250e;
+ border: 1px solid #b5480e;
+}
+
+.tab-mission-control .btn-danger a:hover {
+ background-color: #b5480e;
+ transition: all ease 0.2s;
+}
+
+.tab-mission-control .checksfail {
+ /*float: right;*/
+ margin-top: 3px;
+ height: 15px;
+ width: 15px;
+ background-image:url(../../../images/icons/nopass.svg);
+ background-size:contain;
+ background-position:center;
+ background-repeat:no-repeat;
+}
+
+.tab-mission-control .content_wrapper {
+ display: flex;
+ /*height: 150px;*/
+ height: 90%;
+ /*width: 75%;*/
+ flex-direction: row;
+ justify-content: space-between;
+ flex-wrap: wrap;
+ padding-bottom: 5px;
+ padding-top: 5px;
+}
+
+.tab-mission-control {
+ height: 100%;
+}
+
+#missionMap {
+ height: 100%;
+}
+
+.tab-mission-control input {
+ width: 115px;
+ padding-left: 3px;
+ height: 20px;
+ line-height: 20px;
+ text-align: left;
+ border: 1px solid silver;
+ border-radius: 3px;
+ font-size: 12px;
+ font-weight: normal;
+}
+
+.tab-mission-control select {
+ width: 118px;
+ padding-left: 3px;
+ height: 20px;
+ line-height: 20px;
+ text-align: left;
+ border: 1px solid silver;
+ border-radius: 3px;
+ font-size: 12px;
+ font-weight: normal;
+}
+
+.tab-mission-control .point {
+ display: block;
+ margin-bottom: 5px;
+ margin-left: 5px;
+}
+.tab-mission-control .point-label {
+ width: 60px;
+ display: inline-block;
+}
+
+.mission-control-settings {
+ top: 65px;
+ left: .5em;
+}
+.ol-touch .mission-control-settings {
+ top: 80px;
+}
diff --git a/src/css/tabs/receiver.css b/src/css/tabs/receiver.css
index a2c0e7ba..a8e9f417 100644
--- a/src/css/tabs/receiver.css
+++ b/src/css/tabs/receiver.css
@@ -176,6 +176,7 @@
color: white;
border-right: 1px solid silver;
font-weight: normal;
+ width: 50%;
}
.tab-receiver .tunings table th:first-child {
@@ -432,4 +433,4 @@
stroke: none;
fill: #828885;
font-size: 10px;
-}
\ No newline at end of file
+}
diff --git a/src/css/tabs/sensors.css b/src/css/tabs/sensors.css
index aa75fc92..a578383c 100644
--- a/src/css/tabs/sensors.css
+++ b/src/css/tabs/sensors.css
@@ -166,4 +166,14 @@
.tab-sensors .legend .item:nth-child(4) {
fill: #4DA74D;
+}
+
+.tab-sensors a.debug-trace {
+ float: right;
+ margin-right: 1em;
+ font-size: 90%;
+}
+
+.tab-sensors a.debug-trace:hover {
+ text-decoration: underline;
}
\ No newline at end of file
diff --git a/tabs/adjustments.js b/tabs/adjustments.js
index 110441e5..0ad3e587 100644
--- a/tabs/adjustments.js
+++ b/tabs/adjustments.js
@@ -70,6 +70,10 @@ TABS.adjustments.initialize = function (callback) {
availableFunctionCount = 21;
}
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ availableFunctionCount = 32;
+ }
+
var functionListOptions = $(functionListOptions).slice(0,availableFunctionCount);
functionList.empty().append(functionListOptions);
diff --git a/tabs/calibration.html b/tabs/calibration.html
index 584a7fe2..9cffa245 100755
--- a/tabs/calibration.html
+++ b/tabs/calibration.html
@@ -64,8 +64,8 @@
|
|
- |
- |
+ |
+ |
@@ -154,4 +154,4 @@
-
\ No newline at end of file
+
diff --git a/tabs/calibration.js b/tabs/calibration.js
index 221acc9a..d3b73631 100755
--- a/tabs/calibration.js
+++ b/tabs/calibration.js
@@ -55,6 +55,7 @@ TABS.calibration.initialize = function (callback) {
if (semver.gte(CONFIG.flightControllerVersion, "1.8.1")) {
loadChainer.setChain([
mspHelper.loadStatus,
+ mspHelper.loadSensorConfig,
mspHelper.loadCalibrationData
]);
loadChainer.setExitPoint(loadHtml);
@@ -111,7 +112,7 @@ TABS.calibration.initialize = function (callback) {
var pos = ['X', 'Y', 'Z'];
pos.forEach(function (item) {
$('[name=accGain' + item + ']').val(CALIBRATION_DATA.accGain[item]);
- $('[name=accZero' + item + ']').val(CALIBRATION_DATA.accGain[item]);
+ $('[name=accZero' + item + ']').val(CALIBRATION_DATA.accZero[item]);
$('[name=Mag' + item + ']').val(CALIBRATION_DATA.magZero[item]);
});
updateCalibrationSteps();
diff --git a/tabs/configuration.html b/tabs/configuration.html
index e5f34c3e..748ea738 100644
--- a/tabs/configuration.html
+++ b/tabs/configuration.html
@@ -271,14 +271,6 @@
-
-
+
+
+
diff --git a/tabs/configuration.js b/tabs/configuration.js
index 56c2fb97..45251fbb 100644
--- a/tabs/configuration.js
+++ b/tabs/configuration.js
@@ -24,9 +24,8 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
var loadChainer = new MSPChainerClass();
- loadChainer.setChain([
+ var loadChain = [
mspHelper.loadBfConfig,
- mspHelper.loadMisc,
mspHelper.loadArmingConfig,
mspHelper.loadLoopTime,
mspHelper.loadRxConfig,
@@ -36,15 +35,22 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
mspHelper.loadINAVPidConfig,
mspHelper.loadSensorConfig,
loadCraftName
- ]);
+ ];
+
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ loadChain.push(mspHelper.loadMiscV2);
+ } else {
+ loadChain.push(mspHelper.loadMisc);
+ }
+
+ loadChainer.setChain(loadChain);
loadChainer.setExitPoint(load_html);
loadChainer.execute();
var saveChainer = new MSPChainerClass();
- saveChainer.setChain([
+ var saveChain = [
mspHelper.saveBfConfig,
- mspHelper.saveMisc,
mspHelper.save3dConfig,
mspHelper.saveSensorAlignment,
mspHelper.saveAccTrim,
@@ -55,8 +61,17 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
mspHelper.saveINAVPidConfig,
mspHelper.saveSensorConfig,
saveCraftName,
- mspHelper.saveToEeprom
- ]);
+ ];
+
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ saveChain.push(mspHelper.saveMiscV2);
+ } else {
+ saveChain.push(mspHelper.saveMisc);
+ }
+
+ saveChain.push(mspHelper.saveToEeprom);
+
+ saveChainer.setChain(saveChain);
saveChainer.setExitPoint(reboot);
function reboot() {
@@ -295,7 +310,6 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
//fill motor disarm params and FC loop time
$('input[name="autodisarmdelay"]').val(ARMING_CONFIG.auto_disarm_delay);
- $('input[name="disarmkillswitch"]').prop('checked', ARMING_CONFIG.disarm_kill_switch);
$('div.disarm').show();
if(bit_check(BF_CONFIG.features, 4)) {//MOTOR_STOP
$('div.disarmdelay').show();
@@ -309,7 +323,15 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
$('#maxthrottle').val(MISC.maxthrottle);
$('#mincommand').val(MISC.mincommand);
- // fill battery
+ // Battery thresholds resolution is 100mV and voltage scale max is 255 before 1.8.1
+ if (semver.lt(CONFIG.flightControllerVersion, '1.8.1')) {
+ $('#mincellvoltage').attr('step', '0.1');
+ $('#maxcellvoltage').attr('step', '0.1');
+ $('#warningcellvoltage').attr('step', '0.1');
+ $('#voltagescale').attr('max', '255');
+ }
+
+ // fill battery voltage
$('#mincellvoltage').val(MISC.vbatmincellvoltage);
$('#maxcellvoltage').val(MISC.vbatmaxcellvoltage);
$('#warningcellvoltage').val(MISC.vbatwarningcellvoltage);
@@ -318,7 +340,12 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
// fill current
$('#currentscale').val(BF_CONFIG.currentscale);
$('#currentoffset').val(BF_CONFIG.currentoffset);
- $('#multiwiicurrentoutput').prop('checked', MISC.multiwiicurrentoutput);
+
+ // fill battery capacity
+ $('#battery_capacity').val(MISC.battery_capacity);
+ $('#battery_capacity_warning').val(MISC.battery_capacity_warning * 100 / MISC.battery_capacity);
+ $('#battery_capacity_critical').val(MISC.battery_capacity_critical * 100 / MISC.battery_capacity);
+ $('#battery_capacity_unit').val(MISC.battery_capacity_unit);
var escProtocols = FC.getEscProtocols();
var servoRates = FC.getServoRates();
@@ -564,6 +591,12 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
$(".requires-v1_7").hide();
}
+ if (semver.gte(CONFIG.flightControllerVersion, "1.8.1")) {
+ $(".requires-v1_8_1").show();
+ } else {
+ $(".requires-v1_8_1").hide();
+ }
+
$('#3ddeadbandlow').val(_3D.deadband3d_low);
$('#3ddeadbandhigh').val(_3D.deadband3d_high);
$('#3dneutral').val(_3D.neutral3d);
@@ -629,7 +662,6 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
MISC.mag_declination = parseFloat($('#mag_declination').val());
ARMING_CONFIG.auto_disarm_delay = parseInt($('input[name="autodisarmdelay"]').val());
- ARMING_CONFIG.disarm_kill_switch = ~~$('input[name="disarmkillswitch"]').is(':checked'); // ~~ boolean to decimal conversion
MISC.minthrottle = parseInt($('#minthrottle').val());
MISC.midrc = parseInt($('#midthrottle').val());
@@ -641,9 +673,13 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
MISC.vbatwarningcellvoltage = parseFloat($('#warningcellvoltage').val());
MISC.vbatscale = parseInt($('#voltagescale').val());
+ MISC.battery_capacity = parseInt($('#battery_capacity').val());
+ MISC.battery_capacity_warning = parseInt($('#battery_capacity_warning').val() * MISC.battery_capacity / 100);
+ MISC.battery_capacity_critical = parseInt($('#battery_capacity_critical').val() * MISC.battery_capacity / 100);
+ MISC.battery_capacity_unit = $('#battery_capacity_unit').val();
+
BF_CONFIG.currentscale = parseInt($('#currentscale').val());
BF_CONFIG.currentoffset = parseInt($('#currentoffset').val());
- MISC.multiwiicurrentoutput = ~~$('#multiwiicurrentoutput').is(':checked'); // ~~ boolean to decimal conversion
_3D.deadband3d_low = parseInt($('#3ddeadbandlow').val());
_3D.deadband3d_high = parseInt($('#3ddeadbandhigh').val());
@@ -713,7 +749,11 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
});
helper.interval.add('config_load_analog', function () {
- $('#batteryvoltage').val([ANALOG.voltage.toFixed(1)]);
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ $('#batteryvoltage').val([ANALOG.voltage.toFixed(2)]);
+ } else {
+ $('#batteryvoltage').val([ANALOG.voltage.toFixed(1)]);
+ }
$('#batterycurrent').val([ANALOG.amperage.toFixed(2)]);
}, 100, true); // 10 fps
GUI.content_ready(callback);
diff --git a/tabs/debug_trace.html b/tabs/debug_trace.html
new file mode 100644
index 00000000..a1d031f1
--- /dev/null
+++ b/tabs/debug_trace.html
@@ -0,0 +1,9 @@
+
+
+
Debug Trace
+
+
+
+
+
+
diff --git a/tabs/firmware_flasher.js b/tabs/firmware_flasher.js
index f7c912b6..4a613e6f 100755
--- a/tabs/firmware_flasher.js
+++ b/tabs/firmware_flasher.js
@@ -319,8 +319,12 @@ TABS.firmware_flasher.initialize = function (callback) {
$('div.release_info .status').text(summary.status);
$('div.release_info .file').text(summary.file).prop('href', summary.url);
- var formattedNotes = summary.notes.trim('\r').replace(/\r/g, '
');
+ var formattedNotes = marked(summary.notes);
$('div.release_info .notes').html(formattedNotes);
+ // Make links in the release notes open in a new window
+ $('div.release_info .notes a').each(function () {
+ $(this).attr('target', '_blank');
+ });
$('div.release_info').slideDown();
diff --git a/tabs/landing.html b/tabs/landing.html
index faf34635..7f13f33b 100644
--- a/tabs/landing.html
+++ b/tabs/landing.html
@@ -7,6 +7,7 @@
diff --git a/tabs/mission_control.html b/tabs/mission_control.html
new file mode 100644
index 00000000..5a0767ad
--- /dev/null
+++ b/tabs/mission_control.html
@@ -0,0 +1,119 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Distance (m):
+
+
+
+ Available Points
+ 0/0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tabs/mission_control.js b/tabs/mission_control.js
new file mode 100644
index 00000000..9d8f48fa
--- /dev/null
+++ b/tabs/mission_control.js
@@ -0,0 +1,602 @@
+'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');
+ }
+
+ var loadChainer = new MSPChainerClass();
+ loadChainer.setChain([
+ mspHelper.getMissionInfo
+ ]);
+ loadChainer.setExitPoint(loadHtml);
+ loadChainer.execute();
+
+ function updateTotalInfo() {
+ $('#availablePoints').text(MISSION_PLANER.countBusyPoints + '/' + MISSION_PLANER.maxWaypoints);
+ $('#missionValid').html(MISSION_PLANER.isValidMission ? chrome.i18n.getMessage('armingCheckPass') : chrome.i18n.getMessage('armingCheckFail'));
+ }
+
+ function loadHtml() {
+ $('#content').load("./tabs/mission_control.html", process_html);
+ }
+
+ function process_html() {
+ if (typeof require !== "undefined") {
+ chrome.storage.local.get('missionPlanerSettings', function (result) {
+ if (result.missionPlanerSettings) {
+ $('#MPdefaultPointAlt').val(result.missionPlanerSettings.alt);
+ $('#MPdefaultPointSpeed').val(result.missionPlanerSettings.speed);
+ } else {
+ chrome.storage.local.set({'missionPlanerSettings': {speed: 0, alt: 5000}});
+ $('#MPdefaultPointAlt').val(5000);
+ $('#MPdefaultPointSpeed').val(0);
+ }
+ });
+
+
+ initMap();
+ } else {
+ $('#missionMap, #missionControls').hide();
+ $('#notLoadMap').show();
+ }
+ localize();
+
+ GUI.content_ready(callback);
+ }
+
+ var markers = [];
+ var lines = [];
+ var map;
+ var selectedMarker = null;
+ var pointForSend = 0;
+
+ function clearEditForm() {
+ $('#pointLat').val('');
+ $('#pointLon').val('');
+ $('#pointAlt').val('');
+ $('#pointSpeed').val('');
+ $('[name=pointNumber]').val('');
+ $('#MPeditPoint').fadeOut(300);
+ }
+
+ 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 getPointIcon(isEdit) {
+ return new ol.style.Style({
+ image: new ol.style.Icon(({
+ anchor: [0.5, 1],
+ opacity: 1,
+ scale: 0.5,
+ src: '../images/icons/cf_icon_position' + (isEdit ? '_edit' : '') + '.png'
+ }))
+// text: new ol.style.Text({
+// text: '10',
+// offsetX: -1,
+// offsetY: -30,
+// overflow: true,
+// scale: 2,
+// fill: new ol.style.Fill({
+// color: 'black'
+// })
+// })
+ });
+ }
+
+ function addMarker(_pos, _alt, _action, _speed) {
+ var iconFeature = new ol.Feature({
+ geometry: new ol.geom.Point(_pos),
+ name: 'Null Island',
+ population: 4000,
+ rainfall: 500
+ });
+
+ iconFeature.setStyle(getPointIcon());
+
+ var vectorSource = new ol.source.Vector({
+ features: [iconFeature]
+ });
+
+ var vectorLayer = new ol.layer.Vector({
+ source: vectorSource
+ });
+
+ vectorLayer.alt = _alt;
+ vectorLayer.number = markers.length;
+ vectorLayer.action = _action;
+ vectorLayer.speedValue = _speed;
+
+ markers.push(vectorLayer);
+
+ return vectorLayer;
+ }
+
+ function initMap() {
+ 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);
+
+ /**
+ * @constructor
+ * @extends {ol.control.Control}
+ * @param {Object=} opt_options Control options.
+ */
+ app.PlannerSettingsControl = function (opt_options) {
+ var options = opt_options || {};
+ var button = document.createElement('button');
+
+ button.innerHTML = ' ';
+ button.style = 'background: url(\'../images/CF_settings_white.svg\') no-repeat 1px -1px;background-color: rgba(0,60,136,.5);';
+
+ var handleShowSettings = function () {
+ $('#MPeditPoint, #missionPalnerTotalInfo').hide();
+ $('#missionPlanerSettings').fadeIn(300);
+ };
+
+ button.addEventListener('click', handleShowSettings, false);
+ button.addEventListener('touchstart', handleShowSettings, false);
+
+ var element = document.createElement('div');
+ element.className = 'mission-control-settings ol-unselectable ol-control';
+ element.appendChild(button);
+ element.title = 'MP Settings';
+
+ ol.control.Control.call(this, {
+ element: element,
+ target: options.target
+ });
+
+ };
+ ol.inherits(app.PlannerSettingsControl, ol.control.Control);
+
+ /**
+ * @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({
+ controls: ol.control.defaults({
+ attributionOptions: {
+ collapsible: false
+ }
+ }).extend([
+ new app.PlannerSettingsControl()
+ ]),
+ 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: 14
+ })
+ });
+
+ map.on('click', function (evt) {
+ if (selectedMarker != null) {
+ try {
+ selectedMarker.getSource().getFeatures()[0].setStyle(getPointIcon());
+ selectedMarker = null;
+ clearEditForm();
+ } catch (e) {
+ GUI.log(e);
+ }
+ }
+
+ 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());
+
+ selectedFeature.setStyle(getPointIcon(true));
+
+ $('#pointLon').val(coord[0]);
+ $('#pointLat').val(coord[1]);
+ $('#pointAlt').val(selectedMarker.alt);
+ $('#pointType').val(selectedMarker.action);
+ $('#pointSpeed').val(selectedMarker.speedValue);
+ $('#MPeditPoint').fadeIn(300);
+ } else {
+ map.addLayer(addMarker(evt.coordinate, $('#MPdefaultPointAlt').val(), 1, $('#MPdefaultPointSpeed').val()));
+ 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 () {
+ if (confirm(chrome.i18n.getMessage('confirm_delete_all_points'))) {
+ removeAllPoints();
+ }
+ });
+
+ $('#removePoint').on('click', function () {
+ if (selectedMarker) {
+
+ var tmp = [];
+ for (var i in markers) {
+ if (markers[i] !== selectedMarker && typeof markers[i].action !== "undefined") {
+ tmp.push(markers[i]);
+ }
+ }
+ map.removeLayer(selectedMarker);
+ 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($('#pointLon').val()), parseFloat($('#pointLat').val())]));
+ t.alt = $('#pointAlt').val();
+ t.action = $('#pointType').val();
+ t.speedValue = $('#pointSpeed').val();
+ }
+ });
+
+ selectedMarker.getSource().getFeatures()[0].setStyle(getPointIcon());
+ selectedMarker = null;
+ clearEditForm();
+ repaint();
+ }
+ });
+
+ $('#loadMissionButton').on('click', function () {
+ if (markers.length) {
+ if (!confirm(chrome.i18n.getMessage('confirm_delete_all_points'))) {
+ return;
+ }
+ removeAllPoints();
+ }
+ $(this).addClass('disabled');
+ GUI.log('Start get point');
+
+ pointForSend = 0;
+ getNextPoint();
+ });
+
+ $('#saveMissionButton').on('click', function () {
+ $(this).addClass('disabled');
+ GUI.log('Start send point');
+
+ pointForSend = 0;
+ sendNextPoint();
+ });
+
+ $('#loadEepromMissionButton').on('click', function () {
+ if (markers.length) {
+ if (!confirm(chrome.i18n.getMessage('confirm_delete_all_points'))) {
+ return;
+ }
+ removeAllPoints();
+ }
+ GUI.log(chrome.i18n.getMessage('eeprom_load_ok'));
+
+ MSP.send_message(MSPCodes.MSP_WP_MISSION_LOAD, false, getPointsFromEprom);
+ });
+ $('#saveEepromMissionButton').on('click', function () {
+ GUI.log(chrome.i18n.getMessage('eeprom_saved_ok'));
+ MSP.send_message(MSPCodes.MSP_WP_MISSION_SAVE, false, false);
+ });
+
+ $('#rthEndMission').on('change', function () {
+ if ($(this).is(':checked')) {
+ $('#rthSettings').fadeIn(300);
+ } else {
+ $('#rthSettings').fadeOut(300);
+ }
+ });
+
+ $('#saveSettings').on('click', function () {
+ chrome.storage.local.set({'missionPlanerSettings': {speed: $('#MPdefaultPointSpeed').val(), alt: $('#MPdefaultPointAlt').val()}});
+ $('#missionPlanerSettings').hide();
+ $('#missionPalnerTotalInfo').fadeIn(300);
+ if (selectedMarker !== null) {
+ $('#MPeditPoint').fadeIn(300);
+ }
+ });
+
+ updateTotalInfo();
+ }
+
+ function removeAllPoints() {
+ for (var i in markers) {
+ map.removeLayer(markers[i]);
+ }
+ markers = [];
+ clearEditForm();
+ repaint();
+ }
+
+ function getPointsFromEprom() {
+ pointForSend = 0;
+ MSP.send_message(MSPCodes.MSP_WP_GETINFO, false, false, getNextPoint);
+ }
+
+ function endGetPoint() {
+ GUI.log('End get point');
+ $('#loadMissionButton').removeClass('disabled');
+ repaint();
+ updateTotalInfo();
+ }
+
+ function getNextPoint() {
+ if (MISSION_PLANER.countBusyPoints == 0) {
+ endGetPoint();
+ return;
+ }
+
+ if (pointForSend > 0) {
+ // console.log(MISSION_PLANER.bufferPoint.lon);
+ // console.log(MISSION_PLANER.bufferPoint.lat);
+ // console.log(MISSION_PLANER.bufferPoint.alt);
+ // console.log(MISSION_PLANER.bufferPoint.action);
+ if (MISSION_PLANER.bufferPoint.action == 4) {
+ $('#rthEndMission').attr('checked', true);
+ $('#rthSettings').fadeIn(300);
+ if (MISSION_PLANER.bufferPoint.p1 > 0) {
+ $('#rthLanding').attr('checked', true);
+ }
+ } else {
+ var coord = ol.proj.fromLonLat([MISSION_PLANER.bufferPoint.lon, MISSION_PLANER.bufferPoint.lat]);
+ map.addLayer(addMarker(coord, MISSION_PLANER.bufferPoint.alt, MISSION_PLANER.bufferPoint.action, MISSION_PLANER.bufferPoint.p1));
+ if (pointForSend === 1) {
+ map.getView().setCenter(coord);
+ }
+ }
+ }
+
+ if (pointForSend >= MISSION_PLANER.countBusyPoints) {
+ endGetPoint();
+ return;
+ }
+
+ MISSION_PLANER.bufferPoint.number = pointForSend;
+
+ pointForSend++;
+
+ MSP.send_message(MSPCodes.MSP_WP, mspHelper.crunch(MSPCodes.MSP_WP), false, getNextPoint);
+ }
+
+ function sendNextPoint() {
+ var isRTH = $('#rthEndMission').is(':checked');
+
+ if (pointForSend >= markers.length) {
+ if (isRTH) {
+ MISSION_PLANER.bufferPoint.number = pointForSend + 1;
+ MISSION_PLANER.bufferPoint.action = 4;
+ MISSION_PLANER.bufferPoint.lon = 0;
+ MISSION_PLANER.bufferPoint.lat = 0;
+ MISSION_PLANER.bufferPoint.alt = 0;
+ MISSION_PLANER.bufferPoint.endMission = 0xA5;
+ MISSION_PLANER.bufferPoint.p1 = $('#rthLanding').is(':checked') ? 1 : 0;
+ MSP.send_message(MSPCodes.MSP_SET_WP, mspHelper.crunch(MSPCodes.MSP_SET_WP), false, endSendPoint);
+ } else {
+ endSendPoint();
+ }
+
+ return;
+ }
+
+ var geometry = markers[pointForSend].getSource().getFeatures()[0].getGeometry();
+ var coordinate = ol.proj.toLonLat(geometry.getCoordinates());
+
+ MISSION_PLANER.bufferPoint.number = pointForSend + 1;
+ MISSION_PLANER.bufferPoint.action = markers[pointForSend].action;
+ MISSION_PLANER.bufferPoint.lon = parseInt(coordinate[0] * 10000000);
+ MISSION_PLANER.bufferPoint.lat = parseInt(coordinate[1] * 10000000);
+ MISSION_PLANER.bufferPoint.alt = markers[pointForSend].alt;
+ MISSION_PLANER.bufferPoint.p1 = markers[pointForSend].speedValue;
+ pointForSend++;
+ if (pointForSend >= markers.length && !isRTH) {
+ MISSION_PLANER.bufferPoint.endMission = 0xA5;
+ } else {
+ MISSION_PLANER.bufferPoint.endMission = 0;
+ }
+
+ MSP.send_message(MSPCodes.MSP_SET_WP, mspHelper.crunch(MSPCodes.MSP_SET_WP), false, sendNextPoint);
+ }
+
+ function endSendPoint() {
+ GUI.log('End send point');
+
+ MSP.send_message(MSPCodes.MSP_WP_GETINFO, false, false, updateTotalInfo);
+
+ $('#saveMissionButton').removeClass('disabled');
+ }
+};
+
+TABS.mission_control.cleanup = function (callback) {
+ if (callback) callback();
+};
diff --git a/tabs/osd.js b/tabs/osd.js
index 74208c26..ddd5b094 100644
--- a/tabs/osd.js
+++ b/tabs/osd.js
@@ -17,8 +17,11 @@ SYM.AH_BAR9_0 = 0x80;
SYM.AH_DECORATION = 0x13;
SYM.AMP = 0x9A;
SYM.MAH = 0x07;
+SYM.WH = 0xAB;
SYM.MAH_KM_0 = 157;
SYM.MAH_KM_1 = 158;
+SYM.WH_KM_0 = 172;
+SYM.WH_KM_1 = 173;
SYM.GPS_SAT1 = 0x1E;
SYM.GPS_SAT2 = 0x1F;
SYM.GPS_HDP1 = 0xBD;
@@ -33,6 +36,7 @@ SYM.AIR = 151;
SYM.DIR_TO_HOME = 0x60;
SYM.DIST_KM = 182;
SYM.DIST_MI = 184;
+SYM.TRIP_DIST = 0x22;
SYM.HEADING1 = 0xA9;
SYM.HEADING2 = 0xA8;
SYM.HEADING_N = 24;
@@ -402,6 +406,12 @@ OSD.constants = {
min_version: '1.7.4',
preview: FONT.symbol(SYM.VOLT) + FONT.embed_dot('3.90V')
},
+ {
+ name: 'MAIN_BATT_REMAINING_PERCENTAGE',
+ id: 38,
+ min_version: '1.8.1',
+ preview: '100%'
+ },
{
name: 'THROTTLE_POSITION',
id: 9,
@@ -574,6 +584,12 @@ OSD.constants = {
id: 12,
preview: FONT.symbol(SYM.MAH) + '690 ' // 4 chars
},
+ {
+ name: 'WH_DRAWN',
+ id: 36,
+ min_version: '1.8.1',
+ preview: FONT.symbol(SYM.WH) + FONT.embed_dot('1.25')
+ },
{
name: 'POWER',
id: 19,
@@ -581,10 +597,22 @@ OSD.constants = {
preview: 'W50 ' // 3 chars
},
{
- name: 'EFFICIENCY',
+ name: 'MAIN_BATT_REMAINING_CAPACITY',
+ id: 37,
+ min_version: '1.8.1',
+ preview: FONT.symbol(SYM.MAH) + '690 ' // 4 chars
+ },
+ {
+ name: 'EFFICIENCY_MAH',
id: 35,
min_version: '1.7.4',
preview: "123" + FONT.symbol(SYM.MAH_KM_0) + FONT.symbol(SYM.MAH_KM_1)
+ },
+ {
+ name: 'EFFICIENCY_WH',
+ id: 39,
+ min_version: '1.8.1',
+ preview: FONT.embed_dot('1.23') + FONT.symbol(SYM.WH_KM_0) + FONT.symbol(SYM.WH_KM_1)
}
]
},
@@ -641,6 +669,18 @@ OSD.constants = {
return FONT.symbol(SYM.DIST_KM) + FONT.embed_dot('1.73');
}
},
+ {
+ name: 'TRIP_DIST',
+ id: 40,
+ min_version: '1.9.1',
+ preview: function(osd_data) {
+ if (OSD.data.unit_mode === 0) {
+ // Imperial
+ return FONT.symbol(SYM.TRIP_DIST) + FONT.symbol(SYM.DIST_MI) + FONT.embed_dot('0.98');
+ }
+ return FONT.symbol(SYM.TRIP_DIST) + FONT.symbol(SYM.DIST_KM) + FONT.embed_dot('1.73');
+ }
+ },
{
name: 'GPS_HDOP',
id: 31,
@@ -1010,6 +1050,24 @@ TABS.osd.initialize = function (callback) {
if (typeof alarm.step === 'function') {
step = alarm.step(OSD.data)
}
+ var $input = $('');
+ var tooltip, help = chrome.i18n.getMessage('osdAlarm' + alarm.name + '_HELP');
+ if (help) {
+ tooltip = $('');
+ tooltip
+ .css('margin-top', '1px')
+ .attr('title', help)
+ .appendTo($input)
+ .jBox('Tooltip', {
+ delayOpen: 100,
+ delayClose: 100,
+ position: {
+ x: 'right',
+ y: 'center'
+ },
+ outside: 'x'
+ });
+ }
var alarmInput = $('' + label + '');
alarmInput.data('alarm', alarm);
if (typeof alarm.to_display === 'function') {
@@ -1026,26 +1084,10 @@ TABS.osd.initialize = function (callback) {
OSD.data.alarms[alarm.name] = val;
MSP.promise(MSPCodes.MSP_SET_OSD_CONFIG, OSD.msp.encodeOther())
.then(function () {
+ tooltip.close();
updateOsdView();
});
});
- var $input = $('');
- var help = chrome.i18n.getMessage('osdAlarm' + alarm.name + '_HELP');
- if (help) {
- $('')
- .css('margin-top', '1px')
- .attr('title', help)
- .appendTo($input)
- .jBox('Tooltip', {
- delayOpen: 100,
- delayClose: 100,
- position: {
- x: 'right',
- y: 'center'
- },
- outside: 'x'
- });
- }
$input.append(alarmInput);
$alarms.append($input);
}
diff --git a/tabs/pid_tuning.html b/tabs/pid_tuning.html
index 9e8cde35..a3da4fc2 100755
--- a/tabs/pid_tuning.html
+++ b/tabs/pid_tuning.html
@@ -167,6 +167,24 @@
degrees per second
+
+ |
+
+ %
+ |
+
+
+ |
+
+ %
+ |
+
+
+ |
+
+ %
+ |
+
|
diff --git a/tabs/pid_tuning.js b/tabs/pid_tuning.js
index 35cb7373..55dc76ab 100755
--- a/tabs/pid_tuning.js
+++ b/tabs/pid_tuning.js
@@ -9,14 +9,21 @@ TABS.pid_tuning.initialize = function (callback) {
var loadChainer = new MSPChainerClass();
- loadChainer.setChain([
+ var loadChain = [
mspHelper.loadPidNames,
mspHelper.loadPidData,
- mspHelper.loadRcTuningData,
mspHelper.loadINAVPidConfig,
mspHelper.loadPidAdvanced,
mspHelper.loadFilterConfig
- ]);
+ ];
+
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ loadChain.push(mspHelper.loadRateProfileData);
+ } else {
+ loadChain.push(mspHelper.loadRcTuningData);
+ }
+
+ loadChainer.setChain(loadChain);
loadChainer.setExitPoint(load_html);
loadChainer.execute();
@@ -58,6 +65,10 @@ TABS.pid_tuning.initialize = function (callback) {
$('.rate-tpa input[name="yaw"]').val(RC_tuning.yaw_rate.toFixed(2));
}
+ $('.rate-tpa input[name="manual_roll"]').val(RC_tuning.manual_roll_rate);
+ $('.rate-tpa input[name="manual_pitch"]').val(RC_tuning.manual_pitch_rate);
+ $('.rate-tpa input[name="manual_yaw"]').val(RC_tuning.manual_yaw_rate);
+
$('#tpa').val(RC_tuning.dynamic_THR_PID);
$('#tpa-breakpoint').val(RC_tuning.dynamic_THR_breakpoint);
}
@@ -80,6 +91,10 @@ TABS.pid_tuning.initialize = function (callback) {
RC_tuning.yaw_rate = parseFloat($('.rate-tpa input[name="yaw"]:visible').val());
RC_tuning.dynamic_THR_PID = parseInt($('#tpa').val());
RC_tuning.dynamic_THR_breakpoint = parseInt($('#tpa-breakpoint').val());
+
+ RC_tuning.manual_roll_rate = $('.rate-tpa input[name="manual_roll"]:visible').val();
+ RC_tuning.manual_pitch_rate = $('.rate-tpa input[name="manual_pitch"]:visible').val();
+ RC_tuning.manual_yaw_rate = $('.rate-tpa input[name="manual_yaw"]:visible').val();
}
function hideUnusedPids(sensors_detected) {
$('.tab-pid_tuning table.pid_tuning').hide();
@@ -231,7 +246,11 @@ TABS.pid_tuning.initialize = function (callback) {
}
function send_rc_tuning_changes() {
- MSP.send_message(MSPCodes.MSP_SET_RC_TUNING, mspHelper.crunch(MSPCodes.MSP_SET_RC_TUNING), false, saveINAVPidConfig);
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ MSP.send_message(MSPCodes.MSPV2_INAV_SET_RATE_PROFILE, mspHelper.crunch(MSPCodes.MSPV2_INAV_SET_RATE_PROFILE), false, saveINAVPidConfig);
+ } else {
+ MSP.send_message(MSPCodes.MSP_SET_RC_TUNING, mspHelper.crunch(MSPCodes.MSP_SET_RC_TUNING), false, saveINAVPidConfig);
+ }
}
function saveINAVPidConfig() {
diff --git a/tabs/profiles.js b/tabs/profiles.js
index 98b77b77..0111a2df 100644
--- a/tabs/profiles.js
+++ b/tabs/profiles.js
@@ -564,7 +564,7 @@ TABS.profiles.initialize = function (callback, scrollPosition) {
}
function processHtml() {
-
+ var modal;
var $presetList = $('#presets-list');
var presetsList = presets.model.extractPresetNames(presets.presets);
@@ -590,7 +590,7 @@ TABS.profiles.initialize = function (callback, scrollPosition) {
$('#execute-button').click(function () {
applyAndSave();
- OSD.GUI.jbox.close();
+ modal.close();
googleAnalytics.sendEvent('Presets', 'Applied', currentPreset.name);
});
@@ -600,7 +600,7 @@ TABS.profiles.initialize = function (callback, scrollPosition) {
//noinspection JSValidateTypes
$('#content').scrollTop((scrollPosition) ? scrollPosition : 0);
- var modal = new jBox('Modal', {
+ modal = new jBox('Modal', {
width: 600,
height: 240,
closeButton: 'title',
diff --git a/tabs/receiver.html b/tabs/receiver.html
index 6e2cbb99..f2af3660 100644
--- a/tabs/receiver.html
+++ b/tabs/receiver.html
@@ -25,9 +25,9 @@
@@ -74,26 +74,36 @@
-
-
-
-
+
@@ -124,4 +134,4 @@
-
\ No newline at end of file
+
diff --git a/tabs/receiver.js b/tabs/receiver.js
index 0681f658..b95c45d2 100644
--- a/tabs/receiver.js
+++ b/tabs/receiver.js
@@ -16,14 +16,21 @@ TABS.receiver.initialize = function (callback) {
var loadChainer = new MSPChainerClass();
- loadChainer.setChain([
- mspHelper.loadRcTuningData,
+ var loadChain = [
mspHelper.loadMisc,
mspHelper.loadRcData,
mspHelper.loadRcMap,
mspHelper.loadBfConfig,
mspHelper.loadRcDeadband
- ]);
+ ];
+
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ loadChain.push(mspHelper.loadRateProfileData);
+ } else {
+ loadChain.push(mspHelper.loadRcTuningData);
+ }
+
+ loadChainer.setChain(loadChain);
loadChainer.setExitPoint(load_html);
loadChainer.execute();
@@ -31,10 +38,53 @@ TABS.receiver.initialize = function (callback) {
$('#content').load("./tabs/receiver.html", process_html);
}
+ function drawRollPitchExpo() {
+ var pitch_roll_curve = $('.pitch_roll_curve canvas').get(0);
+ var context = pitch_roll_curve.getContext("2d");
+
+ var expoAVal = $('.tunings .rate input[name="expo"]');
+ var expoA = parseFloat(expoAVal.val());
+
+ var expoMVal = $('.tunings .rate input[name="manual_expo"]');
+ var expoM = parseFloat(expoMVal.val());
+
+ if (expoA <= parseFloat(expoAVal.prop('min')) || expoA >= parseFloat(expoAVal.prop('max')) ||
+ expoM <= parseFloat(expoMVal.prop('min')) || expoM >= parseFloat(expoMVal.prop('max'))) {
+ return;
+ }
+
+ var rateHeight = TABS.receiver.rateChartHeight;
+
+ // draw
+ context.clearRect(0, 0, 200, rateHeight);
+
+ context.beginPath();
+ context.moveTo(0, rateHeight);
+ context.quadraticCurveTo(110, rateHeight - ((rateHeight / 2) * (1 - expoA)), 200, 0);
+ context.lineWidth = 2;
+ context.strokeStyle = '#37a8db';
+ context.stroke();
+
+ context.beginPath();
+ context.moveTo(0, rateHeight);
+ context.quadraticCurveTo(110, rateHeight - ((rateHeight / 2) * (1 - expoM)), 200, 0);
+ context.lineWidth = 2;
+ context.strokeStyle = '#a837db';
+ context.stroke();
+ }
+
function process_html() {
// translate to user-selected language
localize();
+ if (semver.lt(CONFIG.flightControllerVersion, '1.9.1')) {
+ rcmap_options = $('select[name="rcmap_helper"] option');
+ for (i = 0; i < rcmap_options.length; ++i) {
+ option = rcmap_options[i];
+ option.setAttribute("value", option.getAttribute("value") + "5678");
+ }
+ }
+
// fill in data from RC_tuning
$('.tunings .throttle input[name="mid"]').val(RC_tuning.throttle_MID.toFixed(2));
$('.tunings .throttle input[name="expo"]').val(RC_tuning.throttle_EXPO.toFixed(2));
@@ -42,6 +92,9 @@ TABS.receiver.initialize = function (callback) {
$('.tunings .rate input[name="expo"]').val(RC_tuning.RC_EXPO.toFixed(2));
$('.tunings .yaw_rate input[name="yaw_expo"]').val(RC_tuning.RC_YAW_EXPO.toFixed(2));
+ $('.tunings .rate input[name="manual_expo"]').val(RC_tuning.manual_RC_EXPO.toFixed(2));
+ $('.tunings .yaw_rate input[name="manual_yaw_expo"]').val(RC_tuning.manual_RC_YAW_EXPO.toFixed(2));
+
$('.deadband input[name="yaw_deadband"]').val(RC_deadband.yaw_deadband);
$('.deadband input[name="deadband"]').val(RC_deadband.deadband);
@@ -107,9 +160,9 @@ TABS.receiver.initialize = function (callback) {
$(window).on('resize', self.resize).resize(); // trigger so labels get correctly aligned on creation
// handle rcmap & rssi aux channel
- var strBuffer = [];
+ var strBuffer = [], rcMapLetters = FC.getRcMapLetters();
for (var i = 0; i < RC_MAP.length; i++) {
- strBuffer[RC_MAP[i]] = FC.getRcMapLetters()[i];
+ strBuffer[RC_MAP[i]] = rcMapLetters[i];
}
// reconstruct
@@ -138,29 +191,12 @@ TABS.receiver.initialize = function (callback) {
});
$rcMap.focusout(function () {
- var val = $(this).val(),
- strBuffer = val.split(''),
- duplicityBuffer = [];
-
- if (val.length != 8) {
+ if (!FC.isRcMapValid($(this).val()))
$(this).val(last_valid);
- return false;
- }
+ });
- // check if characters inside are all valid, also check for duplicity
- for (var i = 0; i < val.length; i++) {
- if (FC.getRcMapLetters().indexOf(strBuffer[i]) < 0) {
- $(this).val(last_valid);
- return false;
- }
-
- if (duplicityBuffer.indexOf(strBuffer[i]) < 0) {
- duplicityBuffer.push(strBuffer[i]);
- } else {
- $(this).val(last_valid);
- return false;
- }
- }
+ $rcMap.on('input change', function() {
+ $(this).css("color", FC.isRcMapValid($(this).val()) ? "" : "#FF0000");
});
// handle helper
@@ -224,27 +260,7 @@ TABS.receiver.initialize = function (callback) {
$('.tunings .rate input').on('input change', function () {
setTimeout(function () { // let global validation trigger and adjust the values first
- var expoE = $('.tunings .rate input[name="expo"]'),
- expo = parseFloat(expoE.val()),
- pitch_roll_curve = $('.pitch_roll_curve canvas').get(0),
- context = pitch_roll_curve.getContext("2d");
-
- // local validation to deal with input event
- if (expo >= parseFloat(expoE.prop('min')) &&
- expo <= parseFloat(expoE.prop('max'))) {
- // continue
- } else {
- return;
- }
-
- // draw
- context.clearRect(0, 0, 200, rateHeight);
- context.beginPath();
- context.moveTo(0, rateHeight);
- context.quadraticCurveTo(110, rateHeight - ((rateHeight / 2) * (1 - expo)), 200, 0);
- context.lineWidth = 2;
- context.strokeStyle = '#37a8db';
- context.stroke();
+ drawRollPitchExpo();
}, 0);
}).trigger('input');
@@ -272,6 +288,9 @@ TABS.receiver.initialize = function (callback) {
RC_tuning.RC_EXPO = parseFloat($('.tunings .rate input[name="expo"]').val());
RC_tuning.RC_YAW_EXPO = parseFloat($('.tunings .yaw_rate input[name="yaw_expo"]').val());
+ RC_tuning.manual_RC_EXPO = parseFloat($('.tunings .rate input[name="manual_expo"]').val());
+ RC_tuning.manual_RC_YAW_EXPO = parseFloat($('.tunings .yaw_rate input[name="manual_yaw_expo"]').val());
+
RC_deadband.yaw_deadband = parseInt($('.deadband input[name="yaw_deadband"]').val());
RC_deadband.deadband = parseInt($('.deadband input[name="deadband"]').val());
@@ -309,7 +328,11 @@ TABS.receiver.initialize = function (callback) {
});
}
- MSP.send_message(MSPCodes.MSP_SET_RC_TUNING, mspHelper.crunch(MSPCodes.MSP_SET_RC_TUNING), false, save_rc_map);
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ MSP.send_message(MSPCodes.MSPV2_INAV_SET_RATE_PROFILE, mspHelper.crunch(MSPCodes.MSPV2_INAV_SET_RATE_PROFILE), false, save_rc_map);
+ } else {
+ MSP.send_message(MSPCodes.MSP_SET_RC_TUNING, mspHelper.crunch(MSPCodes.MSP_SET_RC_TUNING), false, save_rc_map);
+ }
});
$("a.sticks").click(function () {
diff --git a/tabs/sensors.html b/tabs/sensors.html
index ad95b131..44bf0177 100644
--- a/tabs/sensors.html
+++ b/tabs/sensors.html
@@ -18,7 +18,10 @@
+ type="checkbox" name="sonar_on" />Sonar
+
+ Open Debug Trace
@@ -227,6 +230,39 @@
+
+
+
+ Air speed - cm/s
+
+
+ -
+
+
+ - IAS:
+ - 0
+
+
+
+
+
+
\ No newline at end of file
+
diff --git a/tabs/sensors.js b/tabs/sensors.js
index a7a2754c..e8f0522f 100644
--- a/tabs/sensors.js
+++ b/tabs/sensors.js
@@ -15,6 +15,7 @@ TABS.sensors.initialize = function (callback) {
SENSOR_DATA.gyroscope[i] = 0;
SENSOR_DATA.magnetometer[i] = 0;
SENSOR_DATA.sonar = 0;
+ SENSOR_DATA.air_speed = 0;
SENSOR_DATA.altitude = 0;
SENSOR_DATA.debug[i] = 0;
}
@@ -172,6 +173,14 @@ TABS.sensors.initialize = function (callback) {
}
}
+ function plot_airspeed(enable) {
+ if (enable) {
+ $('.wrapper.airspeed').show();
+ } else {
+ $('.wrapper.airspeed').hide();
+ }
+ }
+
function plot_debug(enable) {
if (enable) {
$('.wrapper.debug').show();
@@ -193,6 +202,10 @@ TABS.sensors.initialize = function (callback) {
checkboxes.eq(4).prop('disabled', true);
}
+ if (semver.lt(CONFIG.flightControllerVersion, "1.9.1") || (!bit_check(CONFIG.activeSensors, 6))) { // airspeed
+ checkboxes.eq(5).prop('disabled', true);
+ }
+
$('.tab-sensors .info .checkboxes input').change(function () {
var enable = $(this).prop('checked');
var index = $(this).parent().index();
@@ -214,6 +227,9 @@ TABS.sensors.initialize = function (callback) {
plot_sonar(enable);
break;
case 5:
+ plot_airspeed(enable);
+ break;
+ case 6:
plot_debug(enable);
break;
}
@@ -248,12 +264,14 @@ TABS.sensors.initialize = function (callback) {
samples_mag_i = 0,
samples_altitude_i = 0,
samples_sonar_i = 0,
+ samples_airspeed_i = 0,
samples_debug_i = 0,
gyro_data = initDataArray(3),
accel_data = initDataArray(3),
mag_data = initDataArray(3),
altitude_data = (semver.gte(CONFIG.flightControllerVersion, "1.6.0")) ? initDataArray(2) : initDataArray(1),
sonar_data = initDataArray(1),
+ airspeed_data = initDataArray(1),
debug_data = [
initDataArray(1),
initDataArray(1),
@@ -266,6 +284,7 @@ TABS.sensors.initialize = function (callback) {
var magHelpers = initGraphHelpers('#mag', samples_mag_i, [-1, 1]);
var altitudeHelpers = initGraphHelpers('#altitude', samples_altitude_i);
var sonarHelpers = initGraphHelpers('#sonar', samples_sonar_i);
+ var airspeedHelpers = initGraphHelpers('#airspeed', samples_airspeed_i);
var debugHelpers = [
initGraphHelpers('#debug1', samples_debug_i),
initGraphHelpers('#debug2', samples_debug_i),
@@ -304,6 +323,8 @@ TABS.sensors.initialize = function (callback) {
$('.tab-sensors select[name="baro_refresh_rate"]').val(result.sensor_settings.rates.baro);
$('.tab-sensors select[name="sonar_refresh_rate"]').val(result.sensor_settings.rates.sonar);
+ $('.tab-sensors select[name="airspeed_refresh_rate"]').val(result.sensor_settings.rates.airspeed);
+
$('.tab-sensors select[name="debug_refresh_rate"]').val(result.sensor_settings.rates.debug);
// start polling data by triggering refresh rate change event
@@ -318,12 +339,13 @@ TABS.sensors.initialize = function (callback) {
// if any of the select fields change value, all of the select values are grabbed
// and timers are re-initialized with the new settings
var rates = {
- 'gyro': parseInt($('.tab-sensors select[name="gyro_refresh_rate"]').val(), 10),
- 'accel': parseInt($('.tab-sensors select[name="accel_refresh_rate"]').val(), 10),
- 'mag': parseInt($('.tab-sensors select[name="mag_refresh_rate"]').val(), 10),
- 'baro': parseInt($('.tab-sensors select[name="baro_refresh_rate"]').val(), 10),
- 'sonar': parseInt($('.tab-sensors select[name="sonar_refresh_rate"]').val(), 10),
- 'debug': parseInt($('.tab-sensors select[name="debug_refresh_rate"]').val(), 10)
+ 'gyro': parseInt($('.tab-sensors select[name="gyro_refresh_rate"]').val(), 10),
+ 'accel': parseInt($('.tab-sensors select[name="accel_refresh_rate"]').val(), 10),
+ 'mag': parseInt($('.tab-sensors select[name="mag_refresh_rate"]').val(), 10),
+ 'baro': parseInt($('.tab-sensors select[name="baro_refresh_rate"]').val(), 10),
+ 'sonar': parseInt($('.tab-sensors select[name="sonar_refresh_rate"]').val(), 10),
+ 'airspeed': parseInt($('.tab-sensors select[name="airspeed_refresh_rate"]').val(), 10),
+ 'debug': parseInt($('.tab-sensors select[name="debug_refresh_rate"]').val(), 10)
};
var scales = {
@@ -402,6 +424,21 @@ TABS.sensors.initialize = function (callback) {
}
if (checkboxes[5]) {
+ helper.interval.add('airspeed_pull', function airspeed_data_pull() {
+
+ /*
+ * Enable balancer
+ */
+ if (helper.mspQueue.shouldDrop()) {
+ update_airspeed_graphs();
+ return;
+ }
+
+ MSP.send_message(MSPCodes.MSPV2_INAV_AIR_SPEED, false, false, update_airspeed_graphs);
+ }, rates.airspeed, true);
+ }
+
+ if (checkboxes[6]) {
helper.interval.add('debug_pull', function debug_data_pull() {
/*
@@ -470,18 +507,46 @@ TABS.sensors.initialize = function (callback) {
raw_data_text_ements.x[4].text(SENSOR_DATA.sonar.toFixed(2));
}
+ function update_airspeed_graphs() {
+ updateGraphHelperSize(airspeedHelpers);
+
+ samples_airspeed_i = addSampleToData(airspeed_data, samples_airspeed_i, [SENSOR_DATA.air_speed]);
+ drawGraph(airspeedHelpers, airspeed_data, samples_airspeed_i);
+ raw_data_text_ements.x[5].text(SENSOR_DATA.air_speed);
+ }
+
function update_debug_graphs() {
for (var i = 0; i < 4; i++) {
updateGraphHelperSize(debugHelpers[i]);
addSampleToData(debug_data[i], samples_debug_i, [SENSOR_DATA.debug[i]]);
drawGraph(debugHelpers[i], debug_data[i], samples_debug_i);
- raw_data_text_ements.x[5 + i].text(SENSOR_DATA.debug[i]);
+ raw_data_text_ements.x[6 + i].text(SENSOR_DATA.debug[i]);
}
samples_debug_i++;
}
});
+ $("a.debug-trace").click(function () {
+ var windowWidth = 500;
+ var windowHeight = 510;
+
+ chrome.app.window.create("/tabs/debug_trace.html", {
+ id: "debug_trace",
+ innerBounds: {
+ minWidth: windowWidth, minHeight: windowHeight,
+ width: windowWidth, height: windowHeight,
+ },
+ alwaysOnTop: true
+ }, function (createdWindow) {
+ createdWindow.contentWindow.getDebugTrace = function () { return DEBUG_TRACE || ''; };
+ return true;
+ });
+ return false;
+ });
+
+
+
GUI.content_ready(callback);
});
};
diff --git a/tabs/servos.js b/tabs/servos.js
index 25610b10..27eadf18 100755
--- a/tabs/servos.js
+++ b/tabs/servos.js
@@ -11,22 +11,41 @@ TABS.servos.initialize = function (callback) {
var loadChainer = new MSPChainerClass();
- loadChainer.setChain([
- mspHelper.loadServoConfiguration,
- mspHelper.loadRcData,
- mspHelper.loadBfConfig,
- mspHelper.loadServoMixRules
- ]);
+ if (BF_CONFIG.mixerConfiguration == 23 || BF_CONFIG.mixerConfiguration == 24 || BF_CONFIG.mixerConfiguration == 25) {
+ loadChainer.setChain([
+ mspHelper.loadServoConfiguration,
+ mspHelper.loadRcData,
+ mspHelper.loadBfConfig,
+ mspHelper.loadServoMixRules
+ ]);
+ }
+ else {
+ loadChainer.setChain([
+ mspHelper.loadServoConfiguration,
+ mspHelper.loadRcData,
+ mspHelper.loadBfConfig
+ ]);
+ }
+
loadChainer.setExitPoint(load_html);
loadChainer.execute();
var saveChainer = new MSPChainerClass();
- saveChainer.setChain([
- mspHelper.sendServoConfigurations,
- mspHelper.sendServoMixer,
- mspHelper.saveToEeprom
- ]);
+ if (BF_CONFIG.mixerConfiguration == 23 || BF_CONFIG.mixerConfiguration == 24 || BF_CONFIG.mixerConfiguration == 25) {
+ saveChainer.setChain([
+ mspHelper.sendServoConfigurations,
+ mspHelper.sendServoMixer,
+ mspHelper.saveToEeprom
+ ]);
+ }
+ else {
+ saveChainer.setChain([
+ mspHelper.sendServoConfigurations,
+ mspHelper.saveToEeprom
+ ]);
+ }
+
saveChainer.setExitPoint(function () {
GUI.log(chrome.i18n.getMessage('servosEepromSave'));
SERVO_RULES.cleanup();
diff --git a/tabs/setup.html b/tabs/setup.html
index be54d626..34c6f752 100644
--- a/tabs/setup.html
+++ b/tabs/setup.html
@@ -89,17 +89,41 @@
+
+ |
+ 0 |
+
|
0 V |
+
+ |
+ 0 % |
+
+
+ |
+ NA |
+
+
+ |
+ 0 |
+
+
+ |
+ 0 |
+
+
+ |
+ 0.00 A |
+
|
0 mAh |
-
- |
- 0.00 A |
+
+ |
+ 0 Wh |
|
diff --git a/tabs/setup.js b/tabs/setup.js
index b2705664..b2b44d51 100755
--- a/tabs/setup.js
+++ b/tabs/setup.js
@@ -15,11 +15,18 @@ TABS.setup.initialize = function (callback) {
var loadChainer = new MSPChainerClass();
- loadChainer.setChain([
+ var loadChain = [
mspHelper.loadBfConfig,
- mspHelper.loadMisc,
mspHelper.queryFcStatus
- ]);
+ ];
+
+ if (semver.gte(CONFIG.flightControllerVersion, '1.8.1')) {
+ loadChain.push(mspHelper.loadMiscV2);
+ } else {
+ loadChain.push(mspHelper.loadMisc);
+ }
+
+ loadChainer.setChain(loadChain);
loadChainer.setExitPoint(load_html);
loadChainer.execute();
@@ -77,7 +84,13 @@ TABS.setup.initialize = function (callback) {
// cached elements
var bat_voltage_e = $('.bat-voltage'),
+ bat_percent_e = $('.bat-percent'),
+ bat_remaining_e = $('.bat-remain-cap'),
+ bat_cells_e = $('.bat-cells'),
+ bat_thresh_e = $('.bat-thresh'),
+ bat_full_e = $('.bat-full'),
bat_mah_drawn_e = $('.bat-mah-drawn'),
+ bat_mwh_drawn_e = $('.bat-mwh-drawn'),
bat_mah_drawing_e = $('.bat-mah-drawing'),
rssi_e = $('.rssi'),
gpsFix_e = $('.gpsFixType'),
@@ -133,9 +146,23 @@ TABS.setup.initialize = function (callback) {
helper.mspBalancedInterval.add('setup_data_pull_fast', 40, 1, get_fast_data);
helper.mspBalancedInterval.add('setup_data_pull_slow', 250, 1, get_slow_data);
+ if (semver.lt(CONFIG.flightControllerVersion, '1.8.1')) {
+ $('.requires-v1_8_1').hide();
+ }
+
helper.interval.add('gui_analog_update', function () {
+ bat_cells_e.text(chrome.i18n.getMessage('initialSetupBatteryDetectedCellsValue', [ANALOG.cell_count]));
bat_voltage_e.text(chrome.i18n.getMessage('initialSetupBatteryValue', [ANALOG.voltage]));
+ remaining_capacity_wh_decimals = ANALOG.battery_remaining_capacity.toString().length < 5 ? 3 : (7 - ANALOG.battery_remaining_capacity.toString().length);
+ remaining_capacity_value = MISC.battery_capacity_unit == 'mAh' ? ANALOG.battery_remaining_capacity : (ANALOG.battery_remaining_capacity / 1000).toFixed(remaining_capacity_wh_decimals < 0 ? 0 : remaining_capacity_wh_decimals);
+ remaining_capacity_unit = MISC.battery_capacity_unit == 'mAh' ? 'mAh' : 'Wh';
+ bat_remaining_e.text(chrome.i18n.getMessage('initialSetupBatteryRemainingCapacityValue', ((MISC.battery_capacity > 0) && ANALOG.battery_full_when_plugged_in) ? [remaining_capacity_value, remaining_capacity_unit] : ['NA', '']));
+ bat_percent_e.text(chrome.i18n.getMessage('initialSetupBatteryPercentageValue', [ANALOG.battery_percentage]));
+ bat_full_e.text(chrome.i18n.getMessage('initialSetupBatteryFullValue', [ANALOG.battery_full_when_plugged_in]));
+ bat_thresh_e.text(chrome.i18n.getMessage('initialSetupBatteryThresholdsValue', [ANALOG.use_capacity_thresholds]));
bat_mah_drawn_e.text(chrome.i18n.getMessage('initialSetupBatteryMahValue', [ANALOG.mAhdrawn]));
+ capacity_drawn_decimals = ANALOG.mWhdrawn.toString().length < 5 ? 3 : (7 - ANALOG.mWhdrawn.toString().length);
+ bat_mwh_drawn_e.text(chrome.i18n.getMessage('initialSetup_Wh_drawnValue', [(ANALOG.mWhdrawn / 1000).toFixed(capacity_drawn_decimals < 0 ? 0 : capacity_drawn_decimals)]));
bat_mah_drawing_e.text(chrome.i18n.getMessage('initialSetupBatteryAValue', [ANALOG.amperage.toFixed(2)]));
rssi_e.text(chrome.i18n.getMessage('initialSetupRSSIValue', [((ANALOG.rssi / 1023) * 100).toFixed(0)]));
}, 100, true);
|