mirror of https://github.com/MISP/misp-dashboard
fix: [web] Added missing thirdparty dependencies
parent
c34d94cf7f
commit
93f3a8143e
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,314 @@
|
|||
.selected-path-container {
|
||||
padding-left: 10px;
|
||||
border: 1px solid #DCC896;
|
||||
background: rgb(250, 240, 210);
|
||||
border-radius: 4px;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.group-conditions > button[data-not="group"].active {
|
||||
color: #FFF;
|
||||
background-color: #C9302C;
|
||||
border-color: #AC2925;
|
||||
}
|
||||
|
||||
.query-builder, .query-builder * {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.query-builder {
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
.query-builder .hide {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.query-builder .pull-right {
|
||||
float: right !important;
|
||||
}
|
||||
|
||||
.query-builder .btn {
|
||||
text-transform: none;
|
||||
display: inline-block;
|
||||
padding: 6px 12px;
|
||||
margin-bottom: 0px;
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
line-height: 1.42857;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
vertical-align: middle;
|
||||
touch-action: manipulation;
|
||||
cursor: pointer;
|
||||
user-select: none;
|
||||
background-image: none;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.query-builder .btn.focus, .query-builder .btn:focus, .query-builder .btn:hover {
|
||||
color: #333;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.query-builder .btn.active, .query-builder .btn:active {
|
||||
background-image: none;
|
||||
outline: 0px none;
|
||||
box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.125) inset;
|
||||
}
|
||||
|
||||
.query-builder .btn-success {
|
||||
color: #FFF;
|
||||
background-color: #5CB85C;
|
||||
border-color: #4CAE4C;
|
||||
}
|
||||
|
||||
.query-builder .btn-primary {
|
||||
color: #FFF;
|
||||
background-color: #337AB7;
|
||||
border-color: #2E6DA4;
|
||||
}
|
||||
|
||||
.query-builder .btn-danger {
|
||||
color: #FFF;
|
||||
background-color: #D9534F;
|
||||
border-color: #D43F3A;
|
||||
}
|
||||
|
||||
.query-builder .btn-success.active, .query-builder .btn-success.focus,
|
||||
.query-builder .btn-success:active, .query-builder .btn-success:focus,
|
||||
.query-builder .btn-success:hover {
|
||||
color: #FFF;
|
||||
background-color: #449D44;
|
||||
border-color: #398439;
|
||||
}
|
||||
|
||||
.query-builder .btn-primary.active, .query-builder .btn-primary.focus,
|
||||
.query-builder .btn-primary:active, .query-builder .btn-primary:focus,
|
||||
.query-builder .btn-primary:hover {
|
||||
color: #FFF;
|
||||
background-color: #286090;
|
||||
border-color: #204D74;
|
||||
}
|
||||
|
||||
.query-builder .btn-danger.active, .query-builder .btn-danger.focus,
|
||||
.query-builder .btn-danger:active, .query-builder .btn-danger:focus,
|
||||
.query-builder .btn-danger:hover {
|
||||
color: #FFF;
|
||||
background-color: #C9302C;
|
||||
border-color: #AC2925;
|
||||
}
|
||||
|
||||
.query-builder .btn-group {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.query-builder .btn-group > .btn {
|
||||
position: relative;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.query-builder .btn-group > .btn:first-child {
|
||||
margin-left: 0px;
|
||||
}
|
||||
|
||||
.query-builder .btn-group > .btn:first-child:not(:last-child) {
|
||||
border-top-right-radius: 0px;
|
||||
border-bottom-right-radius: 0px;
|
||||
}
|
||||
|
||||
.query-builder .btn-group > .btn:last-child:not(:first-child) {
|
||||
border-top-left-radius: 0px;
|
||||
border-bottom-left-radius: 0px;
|
||||
}
|
||||
|
||||
.query-builder .btn-group .btn + .btn, .query-builder .btn-group .btn + .btn-group,
|
||||
.query-builder .btn-group .btn-group + .btn, .query-builder .btn-group .btn-group + .btn-group {
|
||||
margin-left: -1px;
|
||||
}
|
||||
|
||||
.query-builder .btn-xs, .query-builder .btn-group-xs > .btn {
|
||||
padding: 1px 5px;
|
||||
line-height: 1.5;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
|
||||
/*!
|
||||
* jQuery QueryBuilder 2.5.2
|
||||
* Copyright 2014-2018 Damien "Mistic" Sorel (http://www.strangeplanet.fr)
|
||||
* Licensed under MIT (https://opensource.org/licenses/MIT)
|
||||
*/
|
||||
.query-builder .rules-group-container, .query-builder .rule-container, .query-builder .rule-placeholder {
|
||||
position: relative;
|
||||
margin: 4px 0;
|
||||
border-radius: 5px;
|
||||
padding: 5px;
|
||||
border: 1px solid #EEE;
|
||||
background: rgba(255, 255, 255, 0.9);
|
||||
}
|
||||
|
||||
.query-builder .rule-container .rule-filter-container,
|
||||
.query-builder .rule-container .rule-operator-container,
|
||||
.query-builder .rule-container .rule-value-container, .query-builder .error-container, .query-builder .drag-handle {
|
||||
display: inline-block;
|
||||
margin: 0 5px 0 0;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.query-builder .rules-group-container {
|
||||
padding: 10px;
|
||||
padding-bottom: 6px;
|
||||
border: 1px solid #DCC896;
|
||||
background: rgba(250, 240, 210, 0.5);
|
||||
}
|
||||
|
||||
.query-builder .rules-group-header {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.query-builder .rules-group-header .group-conditions .btn.readonly:not(.active),
|
||||
.query-builder .rules-group-header .group-conditions input[name$='_cond'] {
|
||||
border: 0;
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.query-builder .rules-group-header .group-conditions .btn.readonly {
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.query-builder .rules-list {
|
||||
list-style: none;
|
||||
padding: 0 0 0 15px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.query-builder .rule-value-container {
|
||||
border-left: 1px solid #DDD;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.query-builder .rule-value-container label {
|
||||
margin-bottom: 0;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.query-builder .rule-value-container label.block {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.query-builder .rule-value-container select,
|
||||
.query-builder .rule-value-container input[type='text'],
|
||||
.query-builder .rule-value-container input[type='number'] {
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
.query-builder .error-container {
|
||||
display: none;
|
||||
cursor: help;
|
||||
color: #F00;
|
||||
}
|
||||
|
||||
.query-builder .has-error {
|
||||
background-color: #FDD;
|
||||
border-color: #F99;
|
||||
}
|
||||
|
||||
.query-builder .has-error .error-container {
|
||||
display: inline-block !important;
|
||||
}
|
||||
|
||||
.query-builder .rules-list > *::before, .query-builder .rules-list > *::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
left: -10px;
|
||||
width: 10px;
|
||||
height: calc(50% + 4px);
|
||||
border-color: #CCC;
|
||||
border-style: solid;
|
||||
}
|
||||
|
||||
.query-builder .rules-list > *::before {
|
||||
top: -4px;
|
||||
border-width: 0 0 2px 2px;
|
||||
}
|
||||
|
||||
.query-builder .rules-list > *::after {
|
||||
top: 50%;
|
||||
border-width: 0 0 0 2px;
|
||||
}
|
||||
|
||||
.query-builder .rules-list > *:first-child::before {
|
||||
top: -12px;
|
||||
height: calc(50% + 14px);
|
||||
}
|
||||
|
||||
.query-builder .rules-list > *:last-child::before {
|
||||
border-radius: 0 0 0 4px;
|
||||
}
|
||||
|
||||
.query-builder .rules-list > *:last-child::after {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.query-builder.bt-checkbox-glyphicons .checkbox input[type='checkbox']:checked + label::after {
|
||||
font-family: 'Glyphicons Halflings';
|
||||
content: '\e013';
|
||||
}
|
||||
|
||||
.query-builder.bt-checkbox-glyphicons .checkbox label::after {
|
||||
padding-left: 4px;
|
||||
padding-top: 2px;
|
||||
font-size: 9px;
|
||||
}
|
||||
|
||||
.query-builder .error-container + .tooltip .tooltip-inner {
|
||||
color: #F99 !important;
|
||||
}
|
||||
|
||||
.query-builder p.filter-description {
|
||||
margin: 5px 0 0 0;
|
||||
background: #D9EDF7;
|
||||
border: 1px solid #BCE8F1;
|
||||
color: #31708F;
|
||||
border-radius: 5px;
|
||||
padding: 2.5px 5px;
|
||||
font-size: .8em;
|
||||
}
|
||||
|
||||
.query-builder .rules-group-header [data-invert] {
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.query-builder .drag-handle {
|
||||
cursor: move;
|
||||
vertical-align: middle;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.query-builder .dragging {
|
||||
position: fixed;
|
||||
opacity: .5;
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
.query-builder .dragging::before, .query-builder .dragging::after {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.query-builder .rule-placeholder {
|
||||
border: 1px dashed #BBB;
|
||||
opacity: .7;
|
||||
}
|
|
@ -0,0 +1,144 @@
|
|||
// doT.js
|
||||
// 2011-2014, Laura Doktorova, https://github.com/olado/doT
|
||||
// Licensed under the MIT license.
|
||||
|
||||
(function () {
|
||||
"use strict";
|
||||
|
||||
var doT = {
|
||||
name: "doT",
|
||||
version: "1.1.1",
|
||||
templateSettings: {
|
||||
evaluate: /\{\{([\s\S]+?(\}?)+)\}\}/g,
|
||||
interpolate: /\{\{=([\s\S]+?)\}\}/g,
|
||||
encode: /\{\{!([\s\S]+?)\}\}/g,
|
||||
use: /\{\{#([\s\S]+?)\}\}/g,
|
||||
useParams: /(^|[^\w$])def(?:\.|\[[\'\"])([\w$\.]+)(?:[\'\"]\])?\s*\:\s*([\w$\.]+|\"[^\"]+\"|\'[^\']+\'|\{[^\}]+\})/g,
|
||||
define: /\{\{##\s*([\w\.$]+)\s*(\:|=)([\s\S]+?)#\}\}/g,
|
||||
defineParams:/^\s*([\w$]+):([\s\S]+)/,
|
||||
conditional: /\{\{\?(\?)?\s*([\s\S]*?)\s*\}\}/g,
|
||||
iterate: /\{\{~\s*(?:\}\}|([\s\S]+?)\s*\:\s*([\w$]+)\s*(?:\:\s*([\w$]+))?\s*\}\})/g,
|
||||
varname: "it",
|
||||
strip: true,
|
||||
append: true,
|
||||
selfcontained: false,
|
||||
doNotSkipEncoded: false
|
||||
},
|
||||
template: undefined, //fn, compile template
|
||||
compile: undefined, //fn, for express
|
||||
log: true
|
||||
}, _globals;
|
||||
|
||||
doT.encodeHTMLSource = function(doNotSkipEncoded) {
|
||||
var encodeHTMLRules = { "&": "&", "<": "<", ">": ">", '"': """, "'": "'", "/": "/" },
|
||||
matchHTML = doNotSkipEncoded ? /[&<>"'\/]/g : /&(?!#?\w+;)|<|>|"|'|\//g;
|
||||
return function(code) {
|
||||
return code ? code.toString().replace(matchHTML, function(m) {return encodeHTMLRules[m] || m;}) : "";
|
||||
};
|
||||
};
|
||||
|
||||
_globals = (function(){ return this || (0,eval)("this"); }());
|
||||
|
||||
/* istanbul ignore else */
|
||||
if (typeof module !== "undefined" && module.exports) {
|
||||
module.exports = doT;
|
||||
} else if (typeof define === "function" && define.amd) {
|
||||
define(function(){return doT;});
|
||||
} else {
|
||||
_globals.doT = doT;
|
||||
}
|
||||
|
||||
var startend = {
|
||||
append: { start: "'+(", end: ")+'", startencode: "'+encodeHTML(" },
|
||||
split: { start: "';out+=(", end: ");out+='", startencode: "';out+=encodeHTML(" }
|
||||
}, skip = /$^/;
|
||||
|
||||
function resolveDefs(c, block, def) {
|
||||
return ((typeof block === "string") ? block : block.toString())
|
||||
.replace(c.define || skip, function(m, code, assign, value) {
|
||||
if (code.indexOf("def.") === 0) {
|
||||
code = code.substring(4);
|
||||
}
|
||||
if (!(code in def)) {
|
||||
if (assign === ":") {
|
||||
if (c.defineParams) value.replace(c.defineParams, function(m, param, v) {
|
||||
def[code] = {arg: param, text: v};
|
||||
});
|
||||
if (!(code in def)) def[code]= value;
|
||||
} else {
|
||||
new Function("def", "def['"+code+"']=" + value)(def);
|
||||
}
|
||||
}
|
||||
return "";
|
||||
})
|
||||
.replace(c.use || skip, function(m, code) {
|
||||
if (c.useParams) code = code.replace(c.useParams, function(m, s, d, param) {
|
||||
if (def[d] && def[d].arg && param) {
|
||||
var rw = (d+":"+param).replace(/'|\\/g, "_");
|
||||
def.__exp = def.__exp || {};
|
||||
def.__exp[rw] = def[d].text.replace(new RegExp("(^|[^\\w$])" + def[d].arg + "([^\\w$])", "g"), "$1" + param + "$2");
|
||||
return s + "def.__exp['"+rw+"']";
|
||||
}
|
||||
});
|
||||
var v = new Function("def", "return " + code)(def);
|
||||
return v ? resolveDefs(c, v, def) : v;
|
||||
});
|
||||
}
|
||||
|
||||
function unescape(code) {
|
||||
return code.replace(/\\('|\\)/g, "$1").replace(/[\r\t\n]/g, " ");
|
||||
}
|
||||
|
||||
doT.template = function(tmpl, c, def) {
|
||||
c = c || doT.templateSettings;
|
||||
var cse = c.append ? startend.append : startend.split, needhtmlencode, sid = 0, indv,
|
||||
str = (c.use || c.define) ? resolveDefs(c, tmpl, def || {}) : tmpl;
|
||||
|
||||
str = ("var out='" + (c.strip ? str.replace(/(^|\r|\n)\t* +| +\t*(\r|\n|$)/g," ")
|
||||
.replace(/\r|\n|\t|\/\*[\s\S]*?\*\//g,""): str)
|
||||
.replace(/'|\\/g, "\\$&")
|
||||
.replace(c.interpolate || skip, function(m, code) {
|
||||
return cse.start + unescape(code) + cse.end;
|
||||
})
|
||||
.replace(c.encode || skip, function(m, code) {
|
||||
needhtmlencode = true;
|
||||
return cse.startencode + unescape(code) + cse.end;
|
||||
})
|
||||
.replace(c.conditional || skip, function(m, elsecase, code) {
|
||||
return elsecase ?
|
||||
(code ? "';}else if(" + unescape(code) + "){out+='" : "';}else{out+='") :
|
||||
(code ? "';if(" + unescape(code) + "){out+='" : "';}out+='");
|
||||
})
|
||||
.replace(c.iterate || skip, function(m, iterate, vname, iname) {
|
||||
if (!iterate) return "';} } out+='";
|
||||
sid+=1; indv=iname || "i"+sid; iterate=unescape(iterate);
|
||||
return "';var arr"+sid+"="+iterate+";if(arr"+sid+"){var "+vname+","+indv+"=-1,l"+sid+"=arr"+sid+".length-1;while("+indv+"<l"+sid+"){"
|
||||
+vname+"=arr"+sid+"["+indv+"+=1];out+='";
|
||||
})
|
||||
.replace(c.evaluate || skip, function(m, code) {
|
||||
return "';" + unescape(code) + "out+='";
|
||||
})
|
||||
+ "';return out;")
|
||||
.replace(/\n/g, "\\n").replace(/\t/g, '\\t').replace(/\r/g, "\\r")
|
||||
.replace(/(\s|;|\}|^|\{)out\+='';/g, '$1').replace(/\+''/g, "");
|
||||
//.replace(/(\s|;|\}|^|\{)out\+=''\+/g,'$1out+=');
|
||||
|
||||
if (needhtmlencode) {
|
||||
if (!c.selfcontained && _globals && !_globals._encodeHTML) _globals._encodeHTML = doT.encodeHTMLSource(c.doNotSkipEncoded);
|
||||
str = "var encodeHTML = typeof _encodeHTML !== 'undefined' ? _encodeHTML : ("
|
||||
+ doT.encodeHTMLSource.toString() + "(" + (c.doNotSkipEncoded || '') + "));"
|
||||
+ str;
|
||||
}
|
||||
try {
|
||||
return new Function(c.varname, str);
|
||||
} catch (e) {
|
||||
/* istanbul ignore else */
|
||||
if (typeof console !== "undefined") console.log("Could not create a template function: " + str);
|
||||
throw e;
|
||||
}
|
||||
};
|
||||
|
||||
doT.compile = function(tmpl, def) {
|
||||
return doT.template(tmpl, null, def);
|
||||
};
|
||||
}());
|
|
@ -0,0 +1,132 @@
|
|||
/*!
|
||||
* jQuery.extendext 0.1.2
|
||||
*
|
||||
* Copyright 2014-2016 Damien "Mistic" Sorel (http://www.strangeplanet.fr)
|
||||
* Licensed under MIT (http://opensource.org/licenses/MIT)
|
||||
*
|
||||
* Based on jQuery.extend by jQuery Foundation, Inc. and other contributors
|
||||
*/
|
||||
|
||||
/*jshint -W083 */
|
||||
|
||||
(function (root, factory) {
|
||||
if (typeof define === 'function' && define.amd) {
|
||||
define(['jquery'], factory);
|
||||
}
|
||||
else if (typeof module === 'object' && module.exports) {
|
||||
module.exports = factory(require('jquery'));
|
||||
}
|
||||
else {
|
||||
factory(root.jQuery);
|
||||
}
|
||||
}(this, function ($) {
|
||||
"use strict";
|
||||
|
||||
$.extendext = function () {
|
||||
var options, name, src, copy, copyIsArray, clone,
|
||||
target = arguments[0] || {},
|
||||
i = 1,
|
||||
length = arguments.length,
|
||||
deep = false,
|
||||
arrayMode = 'default';
|
||||
|
||||
// Handle a deep copy situation
|
||||
if (typeof target === "boolean") {
|
||||
deep = target;
|
||||
|
||||
// Skip the boolean and the target
|
||||
target = arguments[i++] || {};
|
||||
}
|
||||
|
||||
// Handle array mode parameter
|
||||
if (typeof target === "string") {
|
||||
arrayMode = target.toLowerCase();
|
||||
if (arrayMode !== 'concat' && arrayMode !== 'replace' && arrayMode !== 'extend') {
|
||||
arrayMode = 'default';
|
||||
}
|
||||
|
||||
// Skip the string param
|
||||
target = arguments[i++] || {};
|
||||
}
|
||||
|
||||
// Handle case when target is a string or something (possible in deep copy)
|
||||
if (typeof target !== "object" && !$.isFunction(target)) {
|
||||
target = {};
|
||||
}
|
||||
|
||||
// Extend jQuery itself if only one argument is passed
|
||||
if (i === length) {
|
||||
target = this;
|
||||
i--;
|
||||
}
|
||||
|
||||
for (; i < length; i++) {
|
||||
// Only deal with non-null/undefined values
|
||||
if ((options = arguments[i]) !== null) {
|
||||
// Special operations for arrays
|
||||
if ($.isArray(options) && arrayMode !== 'default') {
|
||||
clone = target && $.isArray(target) ? target : [];
|
||||
|
||||
switch (arrayMode) {
|
||||
case 'concat':
|
||||
target = clone.concat($.extend(deep, [], options));
|
||||
break;
|
||||
|
||||
case 'replace':
|
||||
target = $.extend(deep, [], options);
|
||||
break;
|
||||
|
||||
case 'extend':
|
||||
options.forEach(function (e, i) {
|
||||
if (typeof e === 'object') {
|
||||
var type = $.isArray(e) ? [] : {};
|
||||
clone[i] = $.extendext(deep, arrayMode, clone[i] || type, e);
|
||||
|
||||
} else if (clone.indexOf(e) === -1) {
|
||||
clone.push(e);
|
||||
}
|
||||
});
|
||||
|
||||
target = clone;
|
||||
break;
|
||||
}
|
||||
|
||||
} else {
|
||||
// Extend the base object
|
||||
for (name in options) {
|
||||
src = target[name];
|
||||
copy = options[name];
|
||||
|
||||
// Prevent never-ending loop
|
||||
if (target === copy) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// Recurse if we're merging plain objects or arrays
|
||||
if (deep && copy && ( $.isPlainObject(copy) ||
|
||||
(copyIsArray = $.isArray(copy)) )) {
|
||||
|
||||
if (copyIsArray) {
|
||||
copyIsArray = false;
|
||||
clone = src && $.isArray(src) ? src : [];
|
||||
|
||||
} else {
|
||||
clone = src && $.isPlainObject(src) ? src : {};
|
||||
}
|
||||
|
||||
// Never move original objects, clone them
|
||||
target[name] = $.extendext(deep, arrayMode, clone, copy);
|
||||
|
||||
// Don't bring in undefined values
|
||||
} else if (copy !== undefined) {
|
||||
target[name] = copy;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Return the modified object
|
||||
return target;
|
||||
};
|
||||
}));
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue