@@ -18,7 +18,7 @@
- {{needActions[f.action]}}
+ {{needActions[f.action]}}
|
@@ -28,7 +28,7 @@
-
+
{{f.name | basename}}
@@ -67,7 +67,7 @@
diff --git a/gui/default/syncthing/transfer/remoteNeededFilesModalView.html b/gui/default/syncthing/transfer/remoteNeededFilesModalView.html
index b9fc8f685..821174ea9 100644
--- a/gui/default/syncthing/transfer/remoteNeededFilesModalView.html
+++ b/gui/default/syncthing/transfer/remoteNeededFilesModalView.html
@@ -1,4 +1,4 @@
-
+
Loading data...
diff --git a/gui/default/syncthing/usagereport/usageReportModalView.html b/gui/default/syncthing/usagereport/usageReportModalView.html
index fa4093487..991502616 100644
--- a/gui/default/syncthing/usagereport/usageReportModalView.html
+++ b/gui/default/syncthing/usagereport/usageReportModalView.html
@@ -1,4 +1,4 @@
-
+
{{reportData | json}}
diff --git a/gui/default/syncthing/usagereport/usageReportPreviewModalView.html b/gui/default/syncthing/usagereport/usageReportPreviewModalView.html
index 5450f8917..af6856a74 100644
--- a/gui/default/syncthing/usagereport/usageReportPreviewModalView.html
+++ b/gui/default/syncthing/usagereport/usageReportPreviewModalView.html
@@ -1,4 +1,4 @@
-
+
The encrypted usage report is sent daily. It is used to track common platforms, folder sizes and app versions. If the reported data set is changed you will be prompted with this dialog again.
@@ -23,7 +23,7 @@
diff --git a/gui/default/vendor/bootstrap/css/daterangepicker.css b/gui/default/vendor/bootstrap/css/daterangepicker.css
deleted file mode 100644
index 86f4b775e..000000000
--- a/gui/default/vendor/bootstrap/css/daterangepicker.css
+++ /dev/null
@@ -1,269 +0,0 @@
-.daterangepicker {
- position: absolute;
- color: inherit;
- background-color: #fff;
- border-radius: 4px;
- width: 278px;
- padding: 4px;
- margin-top: 1px;
- top: 100px;
- left: 20px;
- /* Calendars */ }
- .daterangepicker:before, .daterangepicker:after {
- position: absolute;
- display: inline-block;
- border-bottom-color: rgba(0, 0, 0, 0.2);
- content: ''; }
- .daterangepicker:before {
- top: -7px;
- border-right: 7px solid transparent;
- border-left: 7px solid transparent;
- border-bottom: 7px solid #ccc; }
- .daterangepicker:after {
- top: -6px;
- border-right: 6px solid transparent;
- border-bottom: 6px solid #fff;
- border-left: 6px solid transparent; }
- .daterangepicker.opensleft:before {
- right: 9px; }
- .daterangepicker.opensleft:after {
- right: 10px; }
- .daterangepicker.openscenter:before {
- left: 0;
- right: 0;
- width: 0;
- margin-left: auto;
- margin-right: auto; }
- .daterangepicker.openscenter:after {
- left: 0;
- right: 0;
- width: 0;
- margin-left: auto;
- margin-right: auto; }
- .daterangepicker.opensright:before {
- left: 9px; }
- .daterangepicker.opensright:after {
- left: 10px; }
- .daterangepicker.dropup {
- margin-top: -5px; }
- .daterangepicker.dropup:before {
- top: initial;
- bottom: -7px;
- border-bottom: initial;
- border-top: 7px solid #ccc; }
- .daterangepicker.dropup:after {
- top: initial;
- bottom: -6px;
- border-bottom: initial;
- border-top: 6px solid #fff; }
- .daterangepicker.dropdown-menu {
- max-width: none;
- z-index: 3001; }
- .daterangepicker.single .ranges, .daterangepicker.single .calendar {
- float: none; }
- .daterangepicker.show-calendar .calendar {
- display: block; }
- .daterangepicker .calendar {
- display: none;
- max-width: 270px;
- margin: 4px; }
- .daterangepicker .calendar.single .calendar-table {
- border: none; }
- .daterangepicker .calendar th, .daterangepicker .calendar td {
- white-space: nowrap;
- text-align: center;
- min-width: 32px; }
- .daterangepicker .calendar-table {
- border: 1px solid #fff;
- padding: 4px;
- border-radius: 4px;
- background-color: #fff; }
- .daterangepicker table {
- width: 100%;
- margin: 0; }
- .daterangepicker td, .daterangepicker th {
- text-align: center;
- width: 20px;
- height: 20px;
- border-radius: 4px;
- border: 1px solid transparent;
- white-space: nowrap;
- cursor: pointer; }
- .daterangepicker td.available:hover, .daterangepicker th.available:hover {
- background-color: #eee;
- border-color: transparent;
- color: inherit; }
- .daterangepicker td.week, .daterangepicker th.week {
- font-size: 80%;
- color: #ccc; }
- .daterangepicker td.off, .daterangepicker td.off.in-range, .daterangepicker td.off.start-date, .daterangepicker td.off.end-date {
- background-color: #fff;
- border-color: transparent;
- color: #999; }
- .daterangepicker td.in-range {
- background-color: #ebf4f8;
- border-color: transparent;
- color: #000;
- border-radius: 0; }
- .daterangepicker td.start-date {
- border-radius: 4px 0 0 4px; }
- .daterangepicker td.end-date {
- border-radius: 0 4px 4px 0; }
- .daterangepicker td.start-date.end-date {
- border-radius: 4px; }
- .daterangepicker td.active, .daterangepicker td.active:hover {
- background-color: #357ebd;
- border-color: transparent;
- color: #fff; }
- .daterangepicker th.month {
- width: auto; }
- .daterangepicker td.disabled, .daterangepicker option.disabled {
- color: #999;
- cursor: not-allowed;
- text-decoration: line-through; }
- .daterangepicker select.monthselect, .daterangepicker select.yearselect {
- font-size: 12px;
- padding: 1px;
- height: auto;
- margin: 0;
- cursor: default; }
- .daterangepicker select.monthselect {
- margin-right: 2%;
- width: 56%; }
- .daterangepicker select.yearselect {
- width: 40%; }
- .daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect {
- width: 50px;
- margin-bottom: 0; }
- .daterangepicker .input-mini {
- border: 1px solid #ccc;
- border-radius: 4px;
- color: #555;
- height: 30px;
- line-height: 30px;
- display: block;
- vertical-align: middle;
- margin: 0 0 5px 0;
- padding: 0 6px 0 28px;
- width: 100%; }
- .daterangepicker .input-mini.active {
- border: 1px solid #08c;
- border-radius: 4px; }
- .daterangepicker .daterangepicker_input {
- position: relative; }
- .daterangepicker .daterangepicker_input i {
- position: absolute;
- left: 8px;
- top: 8px; }
- .daterangepicker.rtl .input-mini {
- padding-right: 28px;
- padding-left: 6px; }
- .daterangepicker.rtl .daterangepicker_input i {
- left: auto;
- right: 8px; }
- .daterangepicker .calendar-time {
- text-align: center;
- margin: 5px auto;
- line-height: 30px;
- position: relative;
- padding-left: 28px; }
- .daterangepicker .calendar-time select.disabled {
- color: #ccc;
- cursor: not-allowed; }
-
-.ranges {
- font-size: 11px;
- float: none;
- margin: 4px;
- text-align: left; }
- .ranges ul {
- list-style: none;
- margin: 0 auto;
- padding: 0;
- width: 100%; }
- .ranges li {
- font-size: 13px;
- background-color: #f5f5f5;
- border: 1px solid #f5f5f5;
- border-radius: 4px;
- color: #08c;
- padding: 3px 12px;
- margin-bottom: 8px;
- cursor: pointer; }
- .ranges li:hover {
- background-color: #08c;
- border: 1px solid #08c;
- color: #fff; }
- .ranges li.active {
- background-color: #08c;
- border: 1px solid #08c;
- color: #fff; }
-
-/* Larger Screen Styling */
-@media (min-width: 564px) {
- .daterangepicker {
- width: auto; }
- .daterangepicker .ranges ul {
- width: 160px; }
- .daterangepicker.single .ranges ul {
- width: 100%; }
- .daterangepicker.single .calendar.left {
- clear: none; }
- .daterangepicker.single.ltr .ranges, .daterangepicker.single.ltr .calendar {
- float: left; }
- .daterangepicker.single.rtl .ranges, .daterangepicker.single.rtl .calendar {
- float: right; }
- .daterangepicker.ltr {
- direction: ltr;
- text-align: left; }
- .daterangepicker.ltr .calendar.left {
- clear: left;
- margin-right: 0; }
- .daterangepicker.ltr .calendar.left .calendar-table {
- border-right: none;
- border-top-right-radius: 0;
- border-bottom-right-radius: 0; }
- .daterangepicker.ltr .calendar.right {
- margin-left: 0; }
- .daterangepicker.ltr .calendar.right .calendar-table {
- border-left: none;
- border-top-left-radius: 0;
- border-bottom-left-radius: 0; }
- .daterangepicker.ltr .left .daterangepicker_input {
- padding-right: 12px; }
- .daterangepicker.ltr .calendar.left .calendar-table {
- padding-right: 12px; }
- .daterangepicker.ltr .ranges, .daterangepicker.ltr .calendar {
- float: left; }
- .daterangepicker.rtl {
- direction: rtl;
- text-align: right; }
- .daterangepicker.rtl .calendar.left {
- clear: right;
- margin-left: 0; }
- .daterangepicker.rtl .calendar.left .calendar-table {
- border-left: none;
- border-top-left-radius: 0;
- border-bottom-left-radius: 0; }
- .daterangepicker.rtl .calendar.right {
- margin-right: 0; }
- .daterangepicker.rtl .calendar.right .calendar-table {
- border-right: none;
- border-top-right-radius: 0;
- border-bottom-right-radius: 0; }
- .daterangepicker.rtl .left .daterangepicker_input {
- padding-left: 12px; }
- .daterangepicker.rtl .calendar.left .calendar-table {
- padding-left: 12px; }
- .daterangepicker.rtl .ranges, .daterangepicker.rtl .calendar {
- text-align: right;
- float: right; } }
-@media (min-width: 730px) {
- .daterangepicker .ranges {
- width: auto; }
- .daterangepicker.ltr .ranges {
- float: left; }
- .daterangepicker.rtl .ranges {
- float: right; }
- .daterangepicker .calendar.left {
- clear: none !important; } }
diff --git a/gui/default/vendor/daterangepicker/daterangepicker.css b/gui/default/vendor/daterangepicker/daterangepicker.css
new file mode 100644
index 000000000..31dc93183
--- /dev/null
+++ b/gui/default/vendor/daterangepicker/daterangepicker.css
@@ -0,0 +1,392 @@
+.daterangepicker {
+ position: absolute;
+ color: inherit;
+ background-color: #fff;
+ border-radius: 4px;
+ border: 1px solid #ddd;
+ width: 278px;
+ max-width: none;
+ padding: 0;
+ margin-top: 7px;
+ top: 100px;
+ left: 20px;
+ z-index: 3001;
+ display: none;
+ font-family: arial;
+ font-size: 15px;
+ line-height: 1em;
+}
+
+.daterangepicker:before, .daterangepicker:after {
+ position: absolute;
+ display: inline-block;
+ border-bottom-color: rgba(0, 0, 0, 0.2);
+ content: '';
+}
+
+.daterangepicker:before {
+ top: -7px;
+ border-right: 7px solid transparent;
+ border-left: 7px solid transparent;
+ border-bottom: 7px solid #ccc;
+}
+
+.daterangepicker:after {
+ top: -6px;
+ border-right: 6px solid transparent;
+ border-bottom: 6px solid #fff;
+ border-left: 6px solid transparent;
+}
+
+.daterangepicker.opensleft:before {
+ right: 9px;
+}
+
+.daterangepicker.opensleft:after {
+ right: 10px;
+}
+
+.daterangepicker.openscenter:before {
+ left: 0;
+ right: 0;
+ width: 0;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+.daterangepicker.openscenter:after {
+ left: 0;
+ right: 0;
+ width: 0;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+.daterangepicker.opensright:before {
+ left: 9px;
+}
+
+.daterangepicker.opensright:after {
+ left: 10px;
+}
+
+.daterangepicker.drop-up {
+ margin-top: -7px;
+}
+
+.daterangepicker.drop-up:before {
+ top: initial;
+ bottom: -7px;
+ border-bottom: initial;
+ border-top: 7px solid #ccc;
+}
+
+.daterangepicker.drop-up:after {
+ top: initial;
+ bottom: -6px;
+ border-bottom: initial;
+ border-top: 6px solid #fff;
+}
+
+.daterangepicker.single .daterangepicker .ranges, .daterangepicker.single .calendar {
+ float: none;
+}
+
+.daterangepicker.single .drp-selected {
+ display: none;
+}
+
+.daterangepicker.show-calendar .calendar {
+ display: block;
+}
+
+.daterangepicker.show-calendar .drp-buttons {
+ display: block;
+}
+
+.daterangepicker.auto-apply .drp-buttons {
+ display: none;
+}
+
+.daterangepicker .calendar {
+ display: none;
+ max-width: 270px;
+}
+
+.daterangepicker .calendar.left {
+ padding: 12px 0 12px 8px;
+}
+
+.daterangepicker .calendar.right {
+ padding: 12px 8px;
+}
+
+.daterangepicker .calendar.single .calendar-table {
+ border: none;
+}
+
+.daterangepicker .calendar-table .next span, .daterangepicker .calendar-table .prev span {
+ color: #fff;
+ border: solid black;
+ border-width: 0 2px 2px 0;
+ border-radius: 0;
+ display: inline-block;
+ padding: 3px;
+}
+
+.daterangepicker .calendar-table .next span {
+ transform: rotate(-45deg);
+ -webkit-transform: rotate(-45deg);
+}
+
+.daterangepicker .calendar-table .prev span {
+ transform: rotate(135deg);
+ -webkit-transform: rotate(135deg);
+}
+
+.daterangepicker .calendar-table th, .daterangepicker .calendar-table td {
+ white-space: nowrap;
+ text-align: center;
+ vertical-align: middle;
+ min-width: 32px;
+ width: 32px;
+ height: 24px;
+ line-height: 24px;
+ font-size: 12px;
+ border-radius: 4px;
+ border: 1px solid transparent;
+ white-space: nowrap;
+ cursor: pointer;
+}
+
+.daterangepicker .calendar-table {
+ border: 1px solid #fff;
+ border-radius: 4px;
+ background-color: #fff;
+}
+
+.daterangepicker .calendar-table table {
+ width: 100%;
+ margin: 0;
+ border-spacing: 0;
+ border-collapse: collapse;
+}
+
+.daterangepicker td.available:hover, .daterangepicker th.available:hover {
+ background-color: #eee;
+ border-color: transparent;
+ color: inherit;
+}
+
+.daterangepicker td.week, .daterangepicker th.week {
+ font-size: 80%;
+ color: #ccc;
+}
+
+.daterangepicker td.off, .daterangepicker td.off.in-range, .daterangepicker td.off.start-date, .daterangepicker td.off.end-date {
+ background-color: #fff;
+ border-color: transparent;
+ color: #999;
+}
+
+.daterangepicker td.in-range {
+ background-color: #ebf4f8;
+ border-color: transparent;
+ color: #000;
+ border-radius: 0;
+}
+
+.daterangepicker td.start-date {
+ border-radius: 4px 0 0 4px;
+}
+
+.daterangepicker td.end-date {
+ border-radius: 0 4px 4px 0;
+}
+
+.daterangepicker td.start-date.end-date {
+ border-radius: 4px;
+}
+
+.daterangepicker td.active, .daterangepicker td.active:hover {
+ background-color: #357ebd;
+ border-color: transparent;
+ color: #fff;
+}
+
+.daterangepicker th.month {
+ width: auto;
+}
+
+.daterangepicker td.disabled, .daterangepicker option.disabled {
+ color: #999;
+ cursor: not-allowed;
+ text-decoration: line-through;
+}
+
+.daterangepicker select.monthselect, .daterangepicker select.yearselect {
+ font-size: 12px;
+ padding: 1px;
+ height: auto;
+ margin: 0;
+ cursor: default;
+}
+
+.daterangepicker select.monthselect {
+ margin-right: 2%;
+ width: 56%;
+}
+
+.daterangepicker select.yearselect {
+ width: 40%;
+}
+
+.daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect {
+ width: 50px;
+ margin: 0 auto;
+ background: #eee;
+ border: 1px solid #eee;
+ padding: 2px;
+ outline: 0;
+ font-size: 12px;
+}
+
+.daterangepicker .calendar-time {
+ text-align: center;
+ margin: 4px auto 0 auto;
+ line-height: 30px;
+ position: relative;
+}
+
+.daterangepicker .calendar-time select.disabled {
+ color: #ccc;
+ cursor: not-allowed;
+}
+
+.daterangepicker .drp-buttons {
+ clear: both;
+ text-align: right;
+ padding: 8px 12px;
+ border-top: 1px solid #ddd;
+ display: none;
+ line-height: 12px;
+ vertical-align: middle;
+}
+
+.daterangepicker .drp-selected {
+ display: inline-block;
+ font-size: 12px;
+ padding-right: 8px;
+}
+
+.daterangepicker .drp-buttons .btn {
+ margin-left: 8px;
+ font-size: 12px;
+ font-weight: bold;
+ padding: 4px 8px;
+}
+
+.daterangepicker.show-ranges .calendar.left {
+ border-left: 1px solid #ddd;
+}
+
+.daterangepicker .ranges {
+ float: none;
+ text-align: left;
+ margin: 0;
+}
+
+.daterangepicker.show-calendar .ranges {
+ margin-top: 12px;
+}
+
+.daterangepicker .ranges ul {
+ list-style: none;
+ margin: 0 auto;
+ padding: 0;
+ width: 100%;
+}
+
+.daterangepicker .ranges li {
+ font-size: 12px;
+ padding: 8px 12px;
+ cursor: pointer;
+}
+
+.daterangepicker .ranges li:hover {
+ background-color: #eee;
+}
+
+.daterangepicker .ranges li.active {
+ background-color: #08c;
+ color: #fff;
+}
+
+/* Larger Screen Styling */
+@media (min-width: 564px) {
+ .daterangepicker {
+ width: auto; }
+ .daterangepicker .ranges ul {
+ width: 160px; }
+ .daterangepicker.single .ranges ul {
+ width: 100%; }
+ .daterangepicker.single .calendar.left {
+ clear: none; }
+ .daterangepicker.single.ltr .ranges, .daterangepicker.single.ltr .calendar {
+ float: left; }
+ .daterangepicker.single.rtl .ranges, .daterangepicker.single.rtl .calendar {
+ float: right; }
+ .daterangepicker.ltr {
+ direction: ltr;
+ text-align: left; }
+ .daterangepicker.ltr .calendar.left {
+ clear: left;
+ margin-right: 0; }
+ .daterangepicker.ltr .calendar.left .calendar-table {
+ border-right: none;
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0; }
+ .daterangepicker.ltr .calendar.right {
+ margin-left: 0; }
+ .daterangepicker.ltr .calendar.right .calendar-table {
+ border-left: none;
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0; }
+ .daterangepicker.ltr .left .daterangepicker_input {
+ padding-right: 12px; }
+ .daterangepicker.ltr .calendar.left .calendar-table {
+ padding-right: 12px; }
+ .daterangepicker.ltr .ranges, .daterangepicker.ltr .calendar {
+ float: left; }
+ .daterangepicker.rtl {
+ direction: rtl;
+ text-align: right; }
+ .daterangepicker.rtl .calendar.left {
+ clear: right;
+ margin-left: 0; }
+ .daterangepicker.rtl .calendar.left .calendar-table {
+ border-left: none;
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0; }
+ .daterangepicker.rtl .calendar.right {
+ margin-right: 0; }
+ .daterangepicker.rtl .calendar.right .calendar-table {
+ border-right: none;
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0; }
+ .daterangepicker.rtl .left .daterangepicker_input {
+ padding-left: 12px; }
+ .daterangepicker.rtl .calendar.left .calendar-table {
+ padding-left: 12px; }
+ .daterangepicker.rtl .ranges, .daterangepicker.rtl .calendar {
+ text-align: right;
+ float: right; } }
+@media (min-width: 730px) {
+ .daterangepicker .ranges {
+ width: auto; }
+ .daterangepicker.ltr .ranges {
+ float: left; }
+ .daterangepicker.rtl .ranges {
+ float: right; }
+ .daterangepicker .calendar.left {
+ clear: none !important; } }
diff --git a/gui/default/vendor/bootstrap/js/daterangepicker.js b/gui/default/vendor/daterangepicker/daterangepicker.js
similarity index 84%
rename from gui/default/vendor/bootstrap/js/daterangepicker.js
rename to gui/default/vendor/daterangepicker/daterangepicker.js
index 733d27405..59224f17f 100644
--- a/gui/default/vendor/bootstrap/js/daterangepicker.js
+++ b/gui/default/vendor/daterangepicker/daterangepicker.js
@@ -1,16 +1,17 @@
/**
-* @version: 2.1.25
+* @version: 3.0.0
* @author: Dan Grossman http://www.dangrossman.info/
-* @copyright: Copyright (c) 2012-2017 Dan Grossman. All rights reserved.
+* @copyright: Copyright (c) 2012-2018 Dan Grossman. All rights reserved.
* @license: Licensed under the MIT license. See http://www.opensource.org/licenses/mit-license.php
-* @website: https://www.daterangepicker.com/
+* @website: http://www.daterangepicker.com/
*/
-// Follow the UMD template https://github.com/umdjs/umd/blob/master/templates/returnExportsGlobal.js
+// Following the UMD template https://github.com/umdjs/umd/blob/master/templates/returnExportsGlobal.js
(function (root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Make globaly available as well
define(['moment', 'jquery'], function (moment, jquery) {
- return (root.daterangepicker = factory(moment, jquery));
+ if (!jquery.fn) jquery.fn = {}; // webpack server rendering
+ return factory(moment, jquery);
});
} else if (typeof module === 'object' && module.exports) {
// Node / Browserify
@@ -20,7 +21,8 @@
jQuery = require('jquery');
if (!jQuery.fn) jQuery.fn = {};
}
- module.exports = factory(require('moment'), jQuery);
+ var moment = (typeof window != 'undefined' && typeof window.moment != 'undefined') ? window.moment : require('moment');
+ module.exports = factory(moment, jQuery);
} else {
// Browser globals
root.daterangepicker = factory(root.moment, root.jQuery);
@@ -35,10 +37,12 @@
this.endDate = moment().endOf('day');
this.minDate = false;
this.maxDate = false;
- this.dateLimit = false;
+ this.maxSpan = false;
this.autoApply = false;
this.singleDatePicker = false;
this.showDropdowns = false;
+ this.minYear = moment().subtract(100, 'year').format('YYYY');
+ this.maxYear = moment().add(100, 'year').format('YYYY');
this.showWeekNumbers = false;
this.showISOWeekNumbers = false;
this.showCustomRangeLabel = true;
@@ -60,8 +64,8 @@
this.drops = 'up';
this.buttonClasses = 'btn btn-sm';
- this.applyClass = 'btn-success';
- this.cancelClass = 'btn-default';
+ this.applyButtonClasses = 'btn-primary';
+ this.cancelButtonClasses = 'btn-default';
this.locale = {
direction: 'ltr',
@@ -93,34 +97,21 @@
//html template for the picker UI
if (typeof options.template !== 'string' && !(options.template instanceof $))
- options.template = '