diff --git a/.gitignore b/.gitignore index ebdb1e1d43..5d4cb248c5 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ node_modules .tmp .sass-cache .bundle +.idea bower_components phantomjsdriver.log openshift-jvm diff --git a/Gruntfile.js b/Gruntfile.js index 62f027f8c4..42f7330743 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -263,7 +263,7 @@ module.exports = function (grunt) { '.tmp/styles/main.css': '<%= yeoman.app %>/styles/main.less' }, options: { - paths: ['<%= yeoman.app %>/styles'], + paths: ['<%= yeoman.app %>/styles', 'bower_components/'], sourceMap: true, sourceMapFilename: '.tmp/styles/main.css.map', sourceMapURL: 'main.css.map', @@ -276,7 +276,7 @@ module.exports = function (grunt) { }, options: { cleancss: true, - paths: ['<%= yeoman.app %>/styles'] + paths: ['<%= yeoman.app %>/styles', 'bower_components/'] } } }, diff --git a/app/index.html b/app/index.html index c7a11ec74a..0e6c640974 100644 --- a/app/index.html +++ b/app/index.html @@ -15,6 +15,7 @@ + @@ -97,7 +98,6 @@

JavaScript Required

- @@ -109,6 +109,7 @@

JavaScript Required

+ @@ -117,7 +118,7 @@

JavaScript Required

- + diff --git a/app/scripts/controllers/imagestream.js b/app/scripts/controllers/imagestream.js index 72eb40e9a2..d1e2ac6287 100644 --- a/app/scripts/controllers/imagestream.js +++ b/app/scripts/controllers/imagestream.js @@ -10,7 +10,7 @@ angular.module('openshiftConsole') .controller('ImageStreamController', function ($scope, $routeParams, DataService, ProjectsService, $filter, ImageStreamsService) { $scope.projectName = $routeParams.project; $scope.imageStream = null; - $scope.tagsByName = {}; + $scope.tags = []; $scope.tagShowOlder = {}; $scope.alerts = {}; $scope.renderOptions = $scope.renderOptions || {}; @@ -48,7 +48,7 @@ angular.module('openshiftConsole') }; } $scope.imageStream = imageStream; - $scope.tagsByName = ImageStreamsService.tagsByName($scope.imageStream); + $scope.tags = _.toArray(ImageStreamsService.tagsByName($scope.imageStream)); })); }, // failure diff --git a/app/scripts/controllers/quota.js b/app/scripts/controllers/quota.js index 12436faf79..7570ea4684 100644 --- a/app/scripts/controllers/quota.js +++ b/app/scripts/controllers/quota.js @@ -102,13 +102,13 @@ angular.module('openshiftConsole') $scope.project = project; DataService.list("resourcequotas", context, function(quotas) { - $scope.quotas = quotas.by("metadata.name"); + $scope.quotas = _.sortBy(quotas.by("metadata.name"), "metadata.name"); $scope.orderedTypesByQuota = orderTypes($scope.quotas); Logger.log("quotas", $scope.quotas); }); DataService.list("appliedclusterresourcequotas", context, function(quotas) { - $scope.clusterQuotas = quotas.by("metadata.name"); + $scope.clusterQuotas = _.sortBy(quotas.by("metadata.name"), "metadata.name"); $scope.orderedTypesByClusterQuota = orderTypes($scope.clusterQuotas); $scope.namespaceUsageByClusterQuota = {}; _.each($scope.clusterQuotas, function(quota, quotaName) { @@ -121,10 +121,11 @@ angular.module('openshiftConsole') }); DataService.list("limitranges", context, function(limitRanges) { - $scope.limitRanges = limitRanges.by("metadata.name"); + $scope.limitRanges = _.sortBy(limitRanges.by("metadata.name"), "metadata.name"); $scope.emptyMessageLimitRanges = "There are no limit ranges set on this project."; // Convert to a sane format for a view to a build a table with rows per resource type - angular.forEach($scope.limitRanges, function(limitRange, name){ + angular.forEach($scope.limitRanges, function(limitRange){ + var name = limitRange.metadata.name; $scope.limitsByType[name] = {}; angular.forEach(limitRange.spec.limits, function(limit) { diff --git a/app/styles/main.less b/app/styles/main.less index 6dc25b8534..191743d0d4 100644 --- a/app/styles/main.less +++ b/app/styles/main.less @@ -1,5 +1,5 @@ @bower-components-path: "../../bower_components"; -@pf-less-path: "@{bower-components-path}/patternfly/less"; +@pf-less-path: "@{bower-components-path}/patternfly/dist/less"; // PatternFly @import "@{pf-less-path}/patternfly.less"; diff --git a/app/views/browse/imagestream.html b/app/views/browse/imagestream.html index ada5ceae14..cb57062fe3 100644 --- a/app/views/browse/imagestream.html +++ b/app/views/browse/imagestream.html @@ -63,10 +63,10 @@

Pull Spec - + {{emptyMessage}} - + {{tag.name}} diff --git a/app/views/overview.html b/app/views/overview.html index b3ae013b96..c5d0d69654 100644 --- a/app/views/overview.html +++ b/app/views/overview.html @@ -66,7 +66,7 @@

Welcome to project {{projectName}}.

-
@@ -74,7 +74,7 @@

Welcome to project {{projectName}}.

-
@@ -82,13 +82,13 @@

Welcome to project {{projectName}}.

-
+
-
diff --git a/app/views/quota.html b/app/views/quota.html index e841f3e7a0..9c998e9038 100644 --- a/app/views/quota.html +++ b/app/views/quota.html @@ -10,20 +10,20 @@

- Cluster Quota + Cluster Quota Learn More

-
+
{{quotaHelp}}

Loading...There are no resource quotas set on this project.

-

{{quota.metadata.name}}

+

{{quota.metadata.name}}

Limits resource usage across a set of projects.
Scopes:
@@ -113,9 +113,9 @@

Memory Limit

-

Project Quota

+

Project Quota

-

{{quota.metadata.name}}

+

{{quota.metadata.name}}

{{quotaHelp}}
Scopes:
@@ -202,13 +202,13 @@

Memory Limit

Limit Range

-
+
{{limitRangeHelp}}

{{emptyMessageLimitRanges}}

-
-

{{limitRangeName}}

+
+

{{limitRange.metadata.name}}

{{limitRangeHelp}}
@@ -250,7 +250,7 @@

{{limitRangeName}}

- + diff --git a/bower.json b/bower.json index 1ce7e75347..cd16bcce56 100644 --- a/bower.json +++ b/bower.json @@ -2,22 +2,23 @@ "name": "origin-web-console", "version": "1.3.0-alpha", "dependencies": { - "angular": "1.3.20", + "angular": "1.5.11", "json3": "3.3.2", "es5-shim": "3.1.1", - "angular-resource": "1.3.20", - "angular-cookies": "1.3.20", - "angular-sanitize": "1.3.20", - "angular-animate": "1.3.20", - "angular-touch": "1.3.20", - "angular-route": "1.3.20", + "es5-dom-shim": "*", + "angular-resource": "1.5.11", + "angular-cookies": "1.5.11", + "angular-sanitize": "1.5.11", + "angular-animate": "1.5.11", + "angular-touch": "1.5.11", + "angular-route": "1.5.11", "angular-bootstrap": "0.14.3", - "angular-patternfly": "3.10.0", + "angular-patternfly": "3.18.1", "uri.js": "1.18.0", "moment": "2.14.2", "moment-timezone": "0.5.3", - "patternfly": "3.10.0", - "hawtio-core": "2.0.11", + "patternfly": "3.18.1", + "hawtio-core": "2.0.37", "hawtio-extension-service": "2.0.2", "jquery": "2.1.4", "lodash": "3.10.1", @@ -25,11 +26,11 @@ "microplugin": "0.0.3", "selectize": "0.12.1", "messenger": "1.4.1", - "kubernetes-label-selector": "1.4.1", + "kubernetes-label-selector": "1.4.2", "kubernetes-topology-graph": "0.0.23", - "kubernetes-container-terminal": "1.0.1", + "kubernetes-container-terminal": "1.0.3", "registry-image-widgets": "0.0.2", - "openshift-object-describer": "1.1.2", + "openshift-object-describer": "1.1.4", "layout.attrs": "2.1.1", "bootstrap-hover-dropdown": "2.1.3", "angular-ui-ace": "0.2.3", @@ -40,7 +41,7 @@ "ng-sortable": "1.3.4", "ui-select": "angular-ui-select#0.19.4", "matchHeight": "0.7.0", - "angular-key-value-editor": "2.9.2", + "angular-key-value-editor": "3.0.0", "angular-inview": "1.5.7", "js-yaml": "3.6.1", "angular-moment": "1.0.0", @@ -48,8 +49,8 @@ "file-saver": "1.3.3" }, "devDependencies": { - "angular-mocks": "1.3.20", - "angular-scenario": "1.3.20" + "angular-mocks": "1.5.11", + "angular-scenario": "1.5.11" }, "appPath": "app", "resolutions": { diff --git a/dist/scripts/scripts.js b/dist/scripts/scripts.js index f7a22dc2e2..c8a4d0b493 100644 --- a/dist/scripts/scripts.js +++ b/dist/scripts/scripts.js @@ -5109,9 +5109,9 @@ b[a.metadata.name] = d; }; e.get(b.project).then(_.spread(function(a, e) { c.project = a, d.list("resourcequotas", e, function(a) { -c.quotas = a.by("metadata.name"), c.orderedTypesByQuota = k(c.quotas), f.log("quotas", c.quotas); +c.quotas = _.sortBy(a.by("metadata.name"), "metadata.name"), c.orderedTypesByQuota = k(c.quotas), f.log("quotas", c.quotas); }), d.list("appliedclusterresourcequotas", e, function(a) { -c.clusterQuotas = a.by("metadata.name"), c.orderedTypesByClusterQuota = k(c.clusterQuotas), c.namespaceUsageByClusterQuota = {}, _.each(c.clusterQuotas, function(a, d) { +c.clusterQuotas = _.sortBy(a.by("metadata.name"), "metadata.name"), c.orderedTypesByClusterQuota = k(c.clusterQuotas), c.namespaceUsageByClusterQuota = {}, _.each(c.clusterQuotas, function(a, d) { if (a.status) { var e = _.find(a.status.namespaces, { namespace:b.project @@ -5120,7 +5120,8 @@ c.namespaceUsageByClusterQuota[d] = e.status; } }), f.log("cluster quotas", c.clusterQuotas); }), d.list("limitranges", e, function(a) { -c.limitRanges = a.by("metadata.name"), c.emptyMessageLimitRanges = "There are no limit ranges set on this project.", angular.forEach(c.limitRanges, function(a, b) { +c.limitRanges = _.sortBy(a.by("metadata.name"), "metadata.name"), c.emptyMessageLimitRanges = "There are no limit ranges set on this project.", angular.forEach(c.limitRanges, function(a) { +var b = a.metadata.name; c.limitsByType[b] = {}, angular.forEach(a.spec.limits, function(a) { var d = c.limitsByType[b][a.type] = {}; angular.forEach(a.max, function(a, b) { @@ -5949,7 +5950,7 @@ d.unwatchAll(i); }); })); } ]), angular.module("openshiftConsole").controller("ImageStreamController", [ "$scope", "$routeParams", "DataService", "ProjectsService", "$filter", "ImageStreamsService", function(a, b, c, d, e, f) { -a.projectName = b.project, a.imageStream = null, a.tagsByName = {}, a.tagShowOlder = {}, a.alerts = {}, a.renderOptions = a.renderOptions || {}, a.renderOptions.hideFilterWidget = !0, a.breadcrumbs = [ { +a.projectName = b.project, a.imageStream = null, a.tags = [], a.tagShowOlder = {}, a.alerts = {}, a.renderOptions = a.renderOptions || {}, a.renderOptions.hideFilterWidget = !0, a.breadcrumbs = [ { title:"Image Streams", link:"project/" + b.project + "/browse/images" }, { @@ -5962,7 +5963,7 @@ a.loaded = !0, a.imageStream = d, a.emptyMessage = "No tags to show", g.push(c.w "DELETED" === c && (a.alerts.deleted = { type:"warning", message:"This image stream has been deleted." -}), a.imageStream = b, a.tagsByName = f.tagsByName(a.imageStream); +}), a.imageStream = b, a.tags = _.toArray(f.tagsByName(a.imageStream)); })); }, function(b) { a.loaded = !0, a.alerts.load = { diff --git a/dist/scripts/templates.js b/dist/scripts/templates.js index 4e3e8a979b..3859a41c30 100644 --- a/dist/scripts/templates.js +++ b/dist/scripts/templates.js @@ -3166,10 +3166,10 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function( "\n" + "\n" + "\n" + - "\n" + + "\n" + "\n" + "\n" + - "\n" + + "\n" + "\n" + "
{{limit.type}} {{type | computeResourceLabel : true}} {{(typeLimits.min | usageWithUnits : type) || "—"}} {{(typeLimits.max | usageWithUnits : type) || "—"}}Pull Spec
{{emptyMessage}}
\n" + "{{tag.name}}\n" + @@ -11328,22 +11328,22 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function( "\n" + "\n" + "\n" + - "
\n" + + "
\n" + "\n" + "
\n" + "\n" + "\n" + - "
\n" + + "
\n" + "\n" + "
\n" + "\n" + "\n" + - "
\n" + + "
\n" + "\n" + "
\n" + "\n" + "\n" + - "
\n" + + "
\n" + "\n" + "
\n" + "\n" + @@ -12309,19 +12309,19 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function( "
\n" + "
\n" + "

\n" + - "Cluster Quota\n" + + "Cluster Quota\n" + "\n" + "\n" + "Learn More \n" + "\n" + "\n" + "

\n" + - "
\n" + + "
\n" + "
{{quotaHelp}}
\n" + "

Loading...There are no resource quotas set on this project.

\n" + "
\n" + "
\n" + - "

1\">{{quota.metadata.name}}

\n" + + "

{{quota.metadata.name}}

\n" + "
Limits resource usage across a set of projects.
\n" + "
\n" + "
Scopes:
\n" + @@ -12402,9 +12402,9 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function( "
\n" + "
\n" + "
\n" + - "

Project Quota

\n" + + "

Project Quota

\n" + "
\n" + - "

1\">{{quota.metadata.name}}

\n" + + "

{{quota.metadata.name}}

\n" + "
{{quotaHelp}}
\n" + "
\n" + "
Scopes:
\n" + @@ -12482,12 +12482,12 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function( "
\n" + "
\n" + "

Limit Range

\n" + - "
\n" + + "
\n" + "
{{limitRangeHelp}}
\n" + "

{{emptyMessageLimitRanges}}

\n" + "
\n" + - "
\n" + - "

1\">{{limitRangeName}}

\n" + + "
\n" + + "

{{limitRange.metadata.name}}

\n" + "
{{limitRangeHelp}}
\n" + "
\n" + "\n" + @@ -12529,7 +12529,7 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function( "\n" + "\n" + "\n" + - "\n" + + "\n" + "\n" + "\n" + "\n" + diff --git a/dist/scripts/vendor.js b/dist/scripts/vendor.js index 2d89b202e1..924e04bfe6 100644 --- a/dist/scripts/vendor.js +++ b/dist/scripts/vendor.js @@ -3211,74 +3211,81 @@ var Kb = a.jQuery, Lb = a.$; return _.noConflict = function(b) { return a.$ === _ && (a.$ = Lb), b && a.jQuery === _ && (a.jQuery = Kb), _; }, typeof b === za && (a.jQuery = a.$ = _), _; -}), function(a, b, c) { +}), function(a) { "use strict"; -function d(a, b) { +function b(a, b) { return b = b || Error, function() { -var c, d, e = arguments[0], f = "[" + (a ? a + ":" :"") + e + "] ", g = arguments[1], h = arguments; -for (c = f + g.replace(/\{\d+\}/g, function(a) { -var b = +a.slice(1, -1); -return b + 2 < h.length ? ma(h[b + 2]) :a; -}), c = c + "\nhttp://errors.angularjs.org/1.3.20/" + (a ? a + "/" :"") + e, d = 2; d < arguments.length; d++) c = c + (2 == d ? "?" :"&") + "p" + (d - 2) + "=" + encodeURIComponent(ma(arguments[d])); -return new b(c); +var c, d, e = 2, f = arguments, g = f[0], h = "[" + (a ? a + ":" :"") + g + "] ", i = f[1]; +for (h += i.replace(/\{\d+\}/g, function(a) { +var b = +a.slice(1, -1), c = b + e; +return c < f.length ? ta(f[c]) :a; +}), h += "\nhttp://errors.angularjs.org/1.5.11/" + (a ? a + "/" :"") + g, d = e, c = "?"; d < f.length; d++, c = "&") h += c + "p" + (d - e) + "=" + encodeURIComponent(ta(f[d])); +return new b(h); }; } -function e(a) { -if (null == a || z(a)) return !1; +function c(a) { +if (null == a || A(a)) return !1; +if (ce(a) || v(a) || Sd && a instanceof Sd) return !0; var b = "length" in Object(a) && a.length; -return !(a.nodeType !== td || !b) || (u(a) || md(a) || 0 === b || "number" == typeof b && b > 0 && b - 1 in a); +return w(b) && (b >= 0 && (b - 1 in a || a instanceof Array) || "function" == typeof a.item); } -function f(a, b, c) { -var d, g; -if (a) if (x(a)) for (d in a) "prototype" == d || "length" == d || "name" == d || a.hasOwnProperty && !a.hasOwnProperty(d) || b.call(c, a[d], d, a); else if (md(a) || e(a)) { +function d(a, b, e) { +var f, g; +if (a) if (y(a)) for (f in a) "prototype" === f || "length" === f || "name" === f || a.hasOwnProperty && !a.hasOwnProperty(f) || b.call(e, a[f], f, a); else if (ce(a) || c(a)) { var h = "object" != typeof a; -for (d = 0, g = a.length; d < g; d++) (h || d in a) && b.call(c, a[d], d, a); -} else if (a.forEach && a.forEach !== f) a.forEach(b, c, a); else for (d in a) a.hasOwnProperty(d) && b.call(c, a[d], d, a); +for (f = 0, g = a.length; f < g; f++) (h || f in a) && b.call(e, a[f], f, a); +} else if (a.forEach && a.forEach !== d) a.forEach(b, e, a); else if (u(a)) for (f in a) b.call(e, a[f], f, a); else if ("function" == typeof a.hasOwnProperty) for (f in a) a.hasOwnProperty(f) && b.call(e, a[f], f, a); else for (f in a) Md.call(a, f) && b.call(e, a[f], f, a); return a; } -function g(a) { -return Object.keys(a).sort(); -} -function h(a, b, c) { -for (var d = g(a), e = 0; e < d.length; e++) b.call(c, a[d[e]], d[e]); +function e(a, b, c) { +for (var d = Object.keys(a).sort(), e = 0; e < d.length; e++) b.call(c, a[d[e]], d[e]); return d; } -function i(a) { +function f(a) { return function(b, c) { a(c, b); }; } -function j() { -return ++kd; +function g() { +return ++ae; } -function k(a, b) { +function h(a, b) { b ? a.$$hashKey = b :delete a.$$hashKey; } -function l(a) { -for (var b = a.$$hashKey, c = 1, d = arguments.length; c < d; c++) { -var e = arguments[c]; -if (e) for (var f = Object.keys(e), g = 0, h = f.length; g < h; g++) { -var i = f[g]; -a[i] = e[i]; +function i(a, b, c) { +for (var d = a.$$hashKey, e = 0, f = b.length; e < f; ++e) { +var g = b[e]; +if (t(g) || y(g)) for (var j = Object.keys(g), k = 0, l = j.length; k < l; k++) { +var m = j[k], n = g[m]; +c && t(n) ? x(n) ? a[m] = new Date(n.valueOf()) :z(n) ? a[m] = new RegExp(n) :n.nodeName ? a[m] = n.cloneNode(!0) :J(n) ? a[m] = n.clone() :(t(a[m]) || (a[m] = ce(n) ? [] :{}), i(a[m], [ n ], !0)) :a[m] = n; } } -return k(a, b), a; +return h(a, d), a; } -function m(a) { +function j(a) { +return i(a, Vd.call(arguments, 1), !1); +} +function k(a) { +return i(a, Vd.call(arguments, 1), !0); +} +function l(a) { return parseInt(a, 10); } -function n(a, b) { -return l(Object.create(a), b); +function m(a, b) { +return j(Object.create(a), b); } -function o() {} -function p(a) { +function n() {} +function o(a) { return a; } -function q(a) { +function p(a) { return function() { return a; }; } +function q(a) { +return y(a.toString) && a.toString !== Yd; +} function r(a) { return "undefined" == typeof a; } @@ -3289,558 +3296,656 @@ function t(a) { return null !== a && "object" == typeof a; } function u(a) { -return "string" == typeof a; +return null !== a && "object" == typeof a && !Zd(a); } function v(a) { -return "number" == typeof a; +return "string" == typeof a; } function w(a) { -return "[object Date]" === hd.call(a); +return "number" == typeof a; } function x(a) { -return "function" == typeof a; +return "[object Date]" === Yd.call(a); } function y(a) { -return "[object RegExp]" === hd.call(a); +return "function" == typeof a; } function z(a) { -return a && a.window === a; +return "[object RegExp]" === Yd.call(a); } function A(a) { -return a && a.$evalAsync && a.$watch; +return a && a.window === a; } function B(a) { -return "[object File]" === hd.call(a); +return a && a.$evalAsync && a.$watch; } function C(a) { -return "[object FormData]" === hd.call(a); +return "[object File]" === Yd.call(a); } function D(a) { -return "[object Blob]" === hd.call(a); +return "[object FormData]" === Yd.call(a); } function E(a) { -return "boolean" == typeof a; +return "[object Blob]" === Yd.call(a); } function F(a) { -return a && x(a.then); +return "boolean" == typeof a; } function G(a) { -return !(!a || !(a.nodeName || a.prop && a.attr && a.find)); +return a && y(a.then); } function H(a) { +return a && w(a.length) && de.test(Yd.call(a)); +} +function I(a) { +return "[object ArrayBuffer]" === Yd.call(a); +} +function J(a) { +return !(!a || !(a.nodeName || a.prop && a.attr && a.find)); +} +function K(a) { var b, c = {}, d = a.split(","); for (b = 0; b < d.length; b++) c[d[b]] = !0; return c; } -function I(a) { -return Xc(a.nodeName || a[0] && a[0].nodeName); +function L(a) { +return Nd(a.nodeName || a[0] && a[0].nodeName); } -function J(a, b) { +function M(a, b) { var c = a.indexOf(b); -return c >= 0 && a.splice(c, 1), b; +return c >= 0 && a.splice(c, 1), c; } -function K(a, b, c, d) { -if (z(a) || A(a)) throw id("cpws", "Can't copy! Making copies of Window or Scope instances is not supported."); -if (b) { -if (a === b) throw id("cpi", "Can't copy! Source and destination are identical."); -if (c = c || [], d = d || [], t(a)) { -var e = c.indexOf(a); -if (e !== -1) return d[e]; -c.push(a), d.push(b); +function N(a, b) { +function c(a, b) { +var c, d = b.$$hashKey; +if (ce(a)) for (var f = 0, g = a.length; f < g; f++) b.push(e(a[f])); else if (u(a)) for (c in a) b[c] = e(a[c]); else if (a && "function" == typeof a.hasOwnProperty) for (c in a) a.hasOwnProperty(c) && (b[c] = e(a[c])); else for (c in a) Md.call(a, c) && (b[c] = e(a[c])); +return h(b, d), b; } -var g; -if (md(a)) { -b.length = 0; -for (var h = 0; h < a.length; h++) g = K(a[h], null, c, d), t(a[h]) && (c.push(a[h]), d.push(g)), b.push(g); -} else { -var i = b.$$hashKey; -md(b) ? b.length = 0 :f(b, function(a, c) { -delete b[c]; -}); -for (var j in a) a.hasOwnProperty(j) && (g = K(a[j], null, c, d), t(a[j]) && (c.push(a[j]), d.push(g)), b[j] = g); -k(b, i); +function e(a) { +if (!t(a)) return a; +var b = g.indexOf(a); +if (b !== -1) return i[b]; +if (A(a) || B(a)) throw $d("cpws", "Can't copy! Making copies of Window or Scope instances is not supported."); +var d = !1, e = f(a); +return void 0 === e && (e = ce(a) ? [] :Object.create(Zd(a)), d = !0), g.push(a), i.push(e), d ? c(a, e) :e; } -} else if (b = a, a) if (md(a)) b = K(a, [], c, d); else if (w(a)) b = new Date(a.getTime()); else if (y(a)) b = new RegExp(a.source, a.toString().match(/[^\/]*$/)[0]), b.lastIndex = a.lastIndex; else if (t(a)) { -var l = Object.create(Object.getPrototypeOf(a)); -b = K(a, l, c, d); +function f(a) { +switch (Yd.call(a)) { +case "[object Int8Array]": +case "[object Int16Array]": +case "[object Int32Array]": +case "[object Float32Array]": +case "[object Float64Array]": +case "[object Uint8Array]": +case "[object Uint8ClampedArray]": +case "[object Uint16Array]": +case "[object Uint32Array]": +return new a.constructor(e(a.buffer), a.byteOffset, a.length); + +case "[object ArrayBuffer]": +if (!a.slice) { +var b = new ArrayBuffer(a.byteLength); +return new Uint8Array(b).set(new Uint8Array(a)), b; +} +return a.slice(0); + +case "[object Boolean]": +case "[object Number]": +case "[object String]": +case "[object Date]": +return new a.constructor(a.valueOf()); + +case "[object RegExp]": +var c = new RegExp(a.source, a.toString().match(/[^\/]*$/)[0]); +return c.lastIndex = a.lastIndex, c; + +case "[object Blob]": +return new a.constructor([ a ], { +type:a.type +}); } -return b; +if (y(a.cloneNode)) return a.cloneNode(!0); } -function L(a, b) { -if (md(a)) { -b = b || []; -for (var c = 0, d = a.length; c < d; c++) b[c] = a[c]; -} else if (t(a)) { -b = b || {}; -for (var e in a) "$" === e.charAt(0) && "$" === e.charAt(1) || (b[e] = a[e]); +var g = [], i = []; +if (b) { +if (H(b) || I(b)) throw $d("cpta", "Can't copy! TypedArray destination cannot be mutated."); +if (a === b) throw $d("cpi", "Can't copy! Source and destination are identical."); +return ce(b) ? b.length = 0 :d(b, function(a, c) { +"$$hashKey" !== c && delete b[c]; +}), g.push(a), i.push(b), c(a, b); } -return b || a; +return e(a); } -function M(a, b) { +function O(a, b) { if (a === b) return !0; if (null === a || null === b) return !1; if (a !== a && b !== b) return !0; -var d, e, f, g = typeof a, h = typeof b; -if (g == h && "object" == g) { -if (!md(a)) { -if (w(a)) return !!w(b) && M(a.getTime(), b.getTime()); -if (y(a)) return !!y(b) && a.toString() == b.toString(); -if (A(a) || A(b) || z(a) || z(b) || md(b) || w(b) || y(b)) return !1; -f = {}; -for (e in a) if ("$" !== e.charAt(0) && !x(a[e])) { -if (!M(a[e], b[e])) return !1; -f[e] = !0; -} -for (e in b) if (!f.hasOwnProperty(e) && "$" !== e.charAt(0) && b[e] !== c && !x(b[e])) return !1; +var c, d, e, f = typeof a, g = typeof b; +if (f === g && "object" === f) { +if (!ce(a)) { +if (x(a)) return !!x(b) && O(a.getTime(), b.getTime()); +if (z(a)) return !!z(b) && a.toString() === b.toString(); +if (B(a) || B(b) || A(a) || A(b) || ce(b) || x(b) || z(b)) return !1; +e = pa(); +for (d in a) if ("$" !== d.charAt(0) && !y(a[d])) { +if (!O(a[d], b[d])) return !1; +e[d] = !0; +} +for (d in b) if (!(d in e) && "$" !== d.charAt(0) && s(b[d]) && !y(b[d])) return !1; return !0; } -if (!md(b)) return !1; -if ((d = a.length) == b.length) { -for (e = 0; e < d; e++) if (!M(a[e], b[e])) return !1; +if (!ce(b)) return !1; +if ((c = a.length) === b.length) { +for (d = 0; d < c; d++) if (!O(a[d], b[d])) return !1; return !0; } } return !1; } -function N(a, b, c) { -return a.concat(ed.call(b, c)); +function P(a, b, c) { +return a.concat(Vd.call(b, c)); } -function O(a, b) { -return ed.call(a, b || 0); +function Q(a, b) { +return Vd.call(a, b || 0); } -function P(a, b) { -var c = arguments.length > 2 ? O(arguments, 2) :[]; -return !x(b) || b instanceof RegExp ? b :c.length ? function() { -return arguments.length ? b.apply(a, N(c, arguments, 0)) :b.apply(a, c); +function R(a, b) { +var c = arguments.length > 2 ? Q(arguments, 2) :[]; +return !y(b) || b instanceof RegExp ? b :c.length ? function() { +return arguments.length ? b.apply(a, P(c, arguments, 0)) :b.apply(a, c); } :function() { return arguments.length ? b.apply(a, arguments) :b.call(a); }; } -function Q(a, d) { -var e = d; -return "string" == typeof a && "$" === a.charAt(0) && "$" === a.charAt(1) ? e = c :z(d) ? e = "$WINDOW" :d && b === d ? e = "$DOCUMENT" :A(d) && (e = "$SCOPE"), e; +function S(b, c) { +var d = c; +return "string" == typeof b && "$" === b.charAt(0) && "$" === b.charAt(1) ? d = void 0 :A(c) ? d = "$WINDOW" :c && a.document === c ? d = "$DOCUMENT" :B(c) && (d = "$SCOPE"), d; } -function R(a, b) { -return "undefined" == typeof a ? c :(v(b) || (b = b ? 2 :null), JSON.stringify(a, Q, b)); +function T(a, b) { +if (!r(a)) return w(b) || (b = b ? 2 :null), JSON.stringify(a, S, b); } -function S(a) { -return u(a) ? JSON.parse(a) :a; +function U(a) { +return v(a) ? JSON.parse(a) :a; } -function T(a) { -a = bd(a).clone(); +function V(a, b) { +a = a.replace(ie, ""); +var c = Date.parse("Jan 01, 1970 00:00:00 " + a) / 6e4; +return be(c) ? b :c; +} +function W(a, b) { +return a = new Date(a.getTime()), a.setMinutes(a.getMinutes() + b), a; +} +function X(a, b, c) { +c = c ? -1 :1; +var d = a.getTimezoneOffset(), e = V(b, d); +return W(a, c * (e - d)); +} +function Y(a) { +a = Sd(a).clone(); try { a.empty(); } catch (b) {} -var c = bd("
").append(a).html(); +var c = Sd("
").append(a).html(); try { -return a[0].nodeType === vd ? Xc(c) :c.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/, function(a, b) { -return "<" + Xc(b); +return a[0].nodeType === pe ? Nd(c) :c.match(/^(<[^>]+>)/)[1].replace(/^<([\w-]+)/, function(a, b) { +return "<" + Nd(b); }); } catch (b) { -return Xc(c); +return Nd(c); } } -function U(a) { +function Z(a) { try { return decodeURIComponent(a); } catch (b) {} } -function V(a) { -var b, c, d = {}; -return f((a || "").split("&"), function(a) { -if (a && (b = a.replace(/\+/g, "%20").split("="), c = U(b[0]), s(c))) { -var e = !s(b[1]) || U(b[1]); -Yc.call(d, c) ? md(d[c]) ? d[c].push(e) :d[c] = [ d[c], e ] :d[c] = e; -} -}), d; +function $(a) { +var b = {}; +return d((a || "").split("&"), function(a) { +var c, d, e; +a && (d = a = a.replace(/\+/g, "%20"), c = a.indexOf("="), c !== -1 && (d = a.substring(0, c), e = a.substring(c + 1)), d = Z(d), s(d) && (e = !s(e) || Z(e), Md.call(b, d) ? ce(b[d]) ? b[d].push(e) :b[d] = [ b[d], e ] :b[d] = e)); +}), b; } -function W(a) { +function _(a) { var b = []; -return f(a, function(a, c) { -md(a) ? f(a, function(a) { -b.push(Y(c, !0) + (a === !0 ? "" :"=" + Y(a, !0))); -}) :b.push(Y(c, !0) + (a === !0 ? "" :"=" + Y(a, !0))); +return d(a, function(a, c) { +ce(a) ? d(a, function(a) { +b.push(ba(c, !0) + (a === !0 ? "" :"=" + ba(a, !0))); +}) :b.push(ba(c, !0) + (a === !0 ? "" :"=" + ba(a, !0))); }), b.length ? b.join("&") :""; } -function X(a) { -return Y(a, !0).replace(/%26/gi, "&").replace(/%3D/gi, "=").replace(/%2B/gi, "+"); +function aa(a) { +return ba(a, !0).replace(/%26/gi, "&").replace(/%3D/gi, "=").replace(/%2B/gi, "+"); } -function Y(a, b) { +function ba(a, b) { return encodeURIComponent(a).replace(/%40/gi, "@").replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%3B/gi, ";").replace(/%20/g, b ? "%20" :"+"); } -function Z(a, b) { -var c, d, e = qd.length; -for (a = bd(a), d = 0; d < e; ++d) if (c = qd[d] + b, u(c = a.attr(c))) return c; +function ca(a, b) { +var c, d, e = je.length; +for (d = 0; d < e; ++d) if (c = je[d] + b, v(c = a.getAttribute(c))) return c; return null; } -function $(a, b) { -var c, d, e = {}; -f(qd, function(b) { -var e = b + "app"; -!c && a.hasAttribute && a.hasAttribute(e) && (c = a, d = a.getAttribute(e)); -}), f(qd, function(b) { -var e, f = b + "app"; -!c && (e = a.querySelector("[" + f.replace(":", "\\:") + "]")) && (c = e, d = e.getAttribute(f)); -}), c && (e.strictDi = null !== Z(c, "strict-di"), b(c, d ? [ d ] :[], e)); -} -function _(c, d, e) { +function da(a) { +var b = a.currentScript, c = b && b.getAttribute("src"); +if (!c) return !0; +var d = a.createElement("a"); +if (d.href = c, a.location.origin === d.origin) return !0; +switch (d.protocol) { +case "http:": +case "https:": +case "ftp:": +case "blob:": +case "file:": +case "data:": +return !0; + +default: +return !1; +} +} +function ea(b, c) { +var e, f, g = {}; +if (d(je, function(a) { +var c = a + "app"; +!e && b.hasAttribute && b.hasAttribute(c) && (e = b, f = b.getAttribute(c)); +}), d(je, function(a) { +var c, d = a + "app"; +!e && (c = b.querySelector("[" + d.replace(":", "\\:") + "]")) && (e = c, f = c.getAttribute(d)); +}), e) { +if (!ke) return void a.console.error("Angular: disabling automatic bootstrap. '); } ]), angular.module("patternfly.navigation").run([ "$templateCache", function(a) { "use strict"; -a.put("navigation/vertical-navigation.html", "
'); +a.put("navigation/vertical-navigation.html", "
'); } ]), angular.module("patternfly.notification").run([ "$templateCache", function(a) { "use strict"; a.put("notification/inline-notification.html", '
{{pfNotificationHeader}} {{pfNotificationMessage}}
'), a.put("notification/notification-drawer.html", '

{{drawerTitle}}

'), a.put("notification/notification-list.html", '
'), a.put("notification/notification.html", '
{{pfNotificationHeader}} {{pfNotificationMessage}}
'), -a.put("notification/toast-notification-list.html", '
'), a.put("notification/toast-notification.html", '
{{header}} {{message}} {{message}}
'); +a.put("notification/toast-notification-list.html", '
'), a.put("notification/toast-notification.html", '
{{header}} {{message}} {{message}}
'); } ]), angular.module("patternfly.sort").run([ "$templateCache", function(a) { "use strict"; -a.put("sort/sort.html", '
'); +a.put("sort/sort.html", '
'); } ]), angular.module("patternfly.toolbars").run([ "$templateCache", function(a) { "use strict"; -a.put("toolbars/toolbar.html", '
'); +a.put("toolbars/toolbar.html", '
'); } ]), angular.module("patternfly.views").run([ "$templateCache", function(a) { "use strict"; -a.put("views/cardview/card-view.html", '
'), a.put("views/listview/list-view.html", '
'); +a.put("views/cardview/card-view.html", '
'), a.put("views/listview/list-view.html", '
'); +} ]), angular.module("patternfly.wizard").run([ "$templateCache", function(a) { +"use strict"; +a.put("wizard/wizard-review-page.html", ''), +a.put("wizard/wizard-step.html", '
'), a.put("wizard/wizard-substep.html", ''), a.put("wizard/wizard.html", '
'); } ]), function(a, b) { "use strict"; "object" == typeof exports ? module.exports = b(require("./punycode"), require("./IPv6"), require("./SecondLevelDomains")) :"function" == typeof define && define.amd ? define([ "./punycode", "./IPv6", "./SecondLevelDomains" ], b) :a.URI = b(a.punycode, a.IPv6, a.SecondLevelDomains, a); @@ -37880,30 +40579,42 @@ c.name && (a[0] = "[" + c.name + "] " + a[0]), c.level === b.WARN && console.war }, "function" == typeof define && define.amd ? define(b) :"undefined" != typeof module && module.exports ? module.exports = b :(b._prevLogger = a.Logger, b.noConflict = function() { return a.Logger = b._prevLogger, b; }, a.Logger = b); -}(this), Logger.setLevel(Logger.INFO), Logger.storagePrefix = "hawtio", window.LogBuffer = 100, "localStorage" in window) { -if ("logLevel" in window.localStorage) { -var logLevel = JSON.parse(window.localStorage.logLevel); -Logger.setLevel(logLevel); -} else { -var logLevel = JSON.stringify(Logger.INFO); -window.localStorage.logLevel = logLevel; +}(this), function() { +"use strict"; +if (Logger.setLevel(Logger.INFO), Logger.storagePrefix = "hawtio", Logger.oldGet = Logger.get, Logger.loggers = {}, Logger.get = function(a) { +var b = Logger.oldGet(a); +return Logger.loggers[a] = b, b; +}, window.LogBuffer = 100, "localStorage" in window) { +"logLevel" in window.localStorage || (window.localStorage.logLevel = JSON.stringify(Logger.INFO)); +var a = Logger.DEBUG; +try { +a = JSON.parse(window.localStorage.logLevel); +} catch (b) { +console.error("Failed to parse log level setting: ", b); } -if ("showLog" in window.localStorage) { -var showLog = window.localStorage.showLog; -if ("true" === showLog) { -var container = document.getElementById("log-panel"); -container && container.setAttribute("style", "bottom: 50%;"); +if (Logger.setLevel(a), "showLog" in window.localStorage) { +var c = window.localStorage.showLog; +if ("true" === c) { +var d = document.getElementById("log-panel"); +d && d.setAttribute("style", "bottom: 50%;"); } } if ("logBuffer" in window.localStorage) { -var logBuffer = window.localStorage.logBuffer; -window.LogBuffer = parseInt(logBuffer); +var e = window.localStorage.logBuffer; +window.LogBuffer = parseInt(e, 10); } else window.localStorage.logBuffer = window.LogBuffer; +if ("childLoggers" in window.localStorage) { +var f = []; +try { +f = JSON.parse(localStorage.childLoggers); +} catch (b) {} +f.forEach(function(a) { +Logger.get(a.logger).setLevel(Logger[a.level]); +}); } - -var consoleLogger = null; - -"console" in window && (window.JSConsole = window.console, consoleLogger = function(a, b) { +} +var g = null; +"console" in window && (window.JSConsole = window.console, g = function(a, b) { var c = window.JSConsole, d = c.log; if (b.name && (a[0] = "[" + b.name + "] " + a[0]), b.level === Logger.WARN && "warn" in c ? d = c.warn :b.level === Logger.ERROR && "error" in c ? d = c.error :b.level === Logger.INFO && "info" in c && (d = c.info), d && d.apply) try { d.apply(c, a); @@ -37933,164 +40644,228 @@ var g = b[f]; return e += "
\n"; }, Logger.setHandler(function(a, b) { function c() { -e && d && (e.appendChild(d), e.childNodes.length > parseInt(window.LogBuffer) && e.removeChild(e.firstChild), p && (e.scrollTop = e.scrollHeight)), consoleLogger && consoleLogger(a, b); -for (var c = window.logInterceptors, f = 0; f < c.length; f++) c[f](b.level.name, g); +e && d && (e.appendChild(d), e.childNodes.length > parseInt(window.LogBuffer) && e.removeChild(e.firstChild), q && (e.scrollTop = e.scrollHeight)), g && g(a, b); +for (var c = window.logInterceptors, f = 0; f < c.length; f++) c[f](b.level.name, h); } var d = void 0, e = void 0, f = document.getElementById("hawtio-log-panel"); f && (e = document.getElementById("hawtio-log-panel-statements"), d = document.createElement("li")); -var g = "", h = []; +var h = "", i = []; if ("ERROR" === b.level.name && 1 === a.length && Logger.isString(a[0])) { -var i = a[0], j = i.split(/\n/); -if (j.length > 1) { -var k = "Error: Jolokia-Error: "; -if (0 === j[0].search(k)) { -var l = j[0].slice(k.length); -window.JSConsole.info("msg: ", l); +var j = a[0], k = j.split(/\n/); +if (k.length > 1) { +var l = "Error: Jolokia-Error: "; +if (0 === k[0].search(l)) { +var m = k[0].slice(l.length); +window.JSConsole.info("msg: ", m); try { -var m = JSON.parse(l), n = new Error(); -n.message = m.error, n.stack = m.stacktrace.replace("\\t", "  ").replace("\\n", "\n"), a = [ n ]; -} catch (o) {} +var n = JSON.parse(m), o = new Error(); +o.message = n.error, o.stack = n.stacktrace.replace("\\t", "  ").replace("\\n", "\n"), a = [ o ]; +} catch (p) {} } else { -var n = new Error(); -n.message = j[0], n.stack = i, a = [ n ]; +var o = new Error(); +o.message = k[0], o.stack = j, a = [ o ]; } } } -var p = !1; +var q = !1; if (d) { -for (var q = 0; q < a.length; q++) { -var i = a[q]; -if (Logger.isArray(i) || Logger.isObject(i)) { -var r = ""; +for (var r = 0; r < a.length; r++) { +var j = a[r]; +if (Logger.isArray(j) || Logger.isObject(j)) { +var s = ""; try { -r = '
' + JSON.stringify(i, null, 2) + "
"; -} catch (n) { -r = i + " (failed to convert) "; +s = '
' + JSON.stringify(j, null, 2) + "
"; +} catch (o) { +s = j + " (failed to convert) "; } -g += r; -} else Logger.isError(i) ? ("message" in i && (g += i.message), "stack" in i && h.push(function() { -var a = Logger.formatStackTraceString(i.stack), c = Logger; +h += s; +} else Logger.isError(j) ? ("message" in j && (h += j.message), "stack" in j && i.push(function() { +var a = Logger.formatStackTraceString(j.stack), c = Logger; b.name && (c = Logger.get(b.name)), c.info("Stack trace: ", a); -})) :g += i; +})) :h += j; } -b.name && (g = '[' + b.name + "] " + g), d.innerHTML = g, d.className = b.level.name, f && ((f.scrollHeight = 0) && (p = !0), e.scrollTop > e.scrollHeight - f.scrollHeight - 200 && (p = !0)); +b.name && (h = '[' + b.name + "] " + h), d.innerHTML = h, d.className = b.level.name, f && (0 === f.scrollHeight && (q = !0), e.scrollTop > e.scrollHeight - f.scrollHeight - 200 && (q = !0)); } -c(), h.forEach(function(a) { +c(), i.forEach(function(a) { a(); }); }); +}(); -var hawtioPluginLoader = function(a, b, c) { -var d = Logger.get("hawtio-loader"); -return a.log = d, a.urls = [], a.modules = [], a.tasks = [], a.registerPreBootstrapTask = function(b, c) { -c ? a.tasks.unshift(b) :a.tasks.push(b); +var hawtioPluginLoader = function(a) { +"use strict"; +function b(a, b) { +angular.isArray(b) || (b = [ b ]); +var c = []; +return b.forEach(function(b) { +a.forEach(function(a) { +b === a && c.push(a); +}); +}), c; +} +var c = Logger.get("hawtio-loader"), d = document.documentElement; +return a.log = c, a.urls = [], a.modules = [], a.tasks = [], a.setBootstrapElement = function(a) { +c.debug("Setting bootstrap element to: ", a), d = a; +}, a.getBootstrapElement = function() { +return d; +}, a.registerPreBootstrapTask = function(b, d) { +angular.isFunction(b) && (c.debug("Adding legacy task"), b = { +task:b +}), b.name || (b.name = "unnamed-task-" + (a.tasks.length + 1)), b.depends && !angular.isArray(b.depends) && "*" !== b.depends && (b.depends = [ b.depends ]), d ? a.tasks.unshift(b) :a.tasks.push(b); }, a.addModule = function(b) { -d.debug("Adding module: " + b), a.modules.push(b); +c.debug("Adding module: " + b), a.modules.push(b); }, a.addUrl = function(b) { -d.debug("Adding URL: " + b), a.urls.push(b); +c.debug("Adding URL: " + b), a.urls.push(b); }, a.getModules = function() { return a.modules; }, a.loaderCallback = null, a.setLoaderCallback = function(b) { a.loaderCallback = b; -}, a.loadPlugins = function(b) { -var c = a.loaderCallback, e = {}, f = a.urls.length, g = f, h = function() { -a.tasks.push(b); -var c = a.tasks.length, d = function() { -var b = a.tasks.shift(); -b ? (a.log.debug("Executing task ", c - a.tasks.length), b(d)) :a.log.debug("All tasks executed"); +}, a.loadPlugins = function(d) { +var e = a.loaderCallback, f = {}, g = a.urls.length, h = g, i = function() { +var c = [], e = [], f = { +name:"Hawtio Bootstrap", +depends:"*", +runs:0, +task:function(b) { +function d() { +e.forEach(function(b) { +a.log.info(" name: " + b.name + " depends: ", b.depends); +}); +} +e.length > 0 && (a.log.info("tasks yet to run: "), d(), f.runs = f.runs + 1, a.log.info("Task list restarted : ", f.runs, " times"), 5 === f.runs ? (a.log.info("Orphaned tasks: "), d(), e.length = 0) :e.push(f)), a.log.debug("Executed tasks: ", c), b(); +} }; -d(); -}, i = function() { +a.registerPreBootstrapTask(f); +var g = function() { +var f = null, h = []; +for (0 === a.tasks.length && (f = e.shift()); !f && e.length > 0; ) { +var i = e.shift(); +if ("*" === i.depends) a.tasks.length > 0 ? h.push(i) :f = i; else { +var j = b(c, i.depends); +j.length === i.depends.length ? f = i :h.push(i); +} +} +if (h.length > 0 && h.forEach(function(a) { +e.push(a); +}), f || (f = a.tasks.shift()), f && f.depends && a.tasks.length > 0) if (a.log.debug("Task '" + f.name + "' has dependencies: ", f.depends), "*" === f.depends) { +if (a.tasks.length > 0) return a.log.debug("Task '" + f.name + "' wants to run after all other tasks, deferring"), e.push(f), void g(); +} else { +var j = b(c, f.depends); +if (j.length != f.depends.length) return a.log.debug("Deferring task: '" + f.name + "'"), e.push(f), void g(); +} +if (f) { +a.log.debug("Executing task: '" + f.name + "'"); +var k = function() { +k.notFired && (k.notFired = !1, c.push(f.name), setTimeout(g, 1)); +}; +k.notFired = !0, f.task(k); +} else a.log.debug("All tasks executed"), setTimeout(d, 1); +}; +setTimeout(g, 1); +}, j = function() { var a = 0; -$.each(e, function(b, c) { +$.each(f, function(b, c) { a += c.Scripts.length; }); -var b = a, f = function() { +var b = a, d = function() { $.ajaxSetup({ async:!0 -}), a -= 1, c && c.scriptLoaderCallback(c, b, a + 1), 0 === a && h(); +}), a -= 1, e && e.scriptLoaderCallback(e, b, a + 1), 0 === a && i(); }; -a > 0 ? $.each(e, function(a, b) { +a > 0 ? $.each(f, function(a, b) { b.Scripts.forEach(function(a) { -var c = b.Context + "/" + a; -d.debug("Fetching script: ", c), $.ajaxSetup({ +var e = b.Context + "/" + a; +c.debug("Fetching script: ", e), $.ajaxSetup({ async:!1 -}), $.getScript(c).done(function(a) { -d.debug("Loaded script: ", c); -}).fail(function(a, b, e) { -d.info('Failed loading script: "', e.message, '" (', c, ":", e.lineNumber, ")"); -}).always(f); +}), $.getScript(e).done(function(a) { +c.debug("Loaded script: ", e); +}).fail(function(a, b, d) { +c.info('Failed loading script: "', d.message, '" (', e, ":", d.lineNumber, ")"); +}).always(d); }); }) :($.ajaxSetup({ async:!0 -}), h()); +}), i()); }; -if (0 === f) i(); else { -var j = function() { -f -= 1, c && c.urlLoaderCallback(c, g, f + 1), 0 === f && i(); -}, k = new RegExp(/^jolokia:/); +if (0 === g) j(); else { +var k = function() { +g -= 1, e && e.urlLoaderCallback(e, h, g + 1), 0 === g && j(); +}, l = new RegExp(/^jolokia:/); $.each(a.urls, function(a, b) { -if (k.test(b)) { -var c = b.split(":"); -c = c.reverse(), c.pop(), b = c.pop(); -var f = c.reverse().join(":"), g = new Jolokia(b); +if (l.test(b)) { +var d = b.split(":"); +d = d.reverse(), d.pop(), b = d.pop(); +var e = d.reverse().join(":"), g = new Jolokia(b); try { -var h = g.getAttribute(f, null); -$.extend(e, h); +var h = g.getAttribute(e, null); +$.extend(f, h); } catch (i) {} -j(); -} else d.debug("Trying url: ", b), $.get(b, function(a) { +k(); +} else c.debug("Trying url: ", b), $.get(b, function(a) { if (angular.isString(a)) try { a = angular.fromJson(a); } catch (b) { return; } -$.extend(e, a); +$.extend(f, a); }).always(function() { -j(); +k(); }); }); } }, a.debug = function() { -d.debug("urls and modules"), d.debug(a.urls), d.debug(a.modules); +c.debug("urls and modules"), c.debug(a.urls), c.debug(a.modules); }, a.setLoaderCallback({ -scriptLoaderCallback:function(a, b, c) { -d.debug("Total scripts: ", b, " Remaining: ", c); +scriptLoaderCallback:function(a, b, d) { +c.debug("Total scripts: ", b, " Remaining: ", d); }, -urlLoaderCallback:function(a, b, c) { -d.debug("Total URLs: ", b, " Remaining: ", c); +urlLoaderCallback:function(a, b, d) { +c.debug("Total URLs: ", b, " Remaining: ", d); } }), a; -}(hawtioPluginLoader || {}, window, void 0), HawtioCore; - -!function(a) { -a.injector = null, a.pluginName = "hawtio-core"; -var b = Logger.get(a.pluginName), c = angular.module(a.pluginName, []); -c.config([ "$locationProvider", function(a) { -a.html5Mode(!0); -} ]), c.run(function() { -b.debug("loaded"); +}(hawtioPluginLoader || {}, window, void 0), HawtioCore = function() { +"use strict"; +function a() {} +Object.defineProperty(a.prototype, "injector", { +get:function() { +return b.UpgradeAdapter ? b.UpgradeAdapter.ng1Injector :b._injector; +}, +enumerable:!0, +configurable:!0 }); -var d = { +var b = new a(); +b.pluginName = "hawtio-core"; +var c = Logger.get(b.pluginName), d = angular.module(b.pluginName, []); +d.config([ "$locationProvider", function(a) { +a.html5Mode(!0); +} ]), d.run([ "documentBase", function(a) { +c.debug("loaded"); +} ]); +var e = { length:0, key:function(a) {}, getItem:function(a) { -return dummyStorage[a]; +return e[a]; }, setItem:function(a, b) { -dummyStorage[a] = b; +e[a] = b; }, removeItem:function(a) { -var b = dummyStorage[a]; -return delete dummyStorage[a], b; +var b = e[a]; +return delete e[a], b; }, clear:function() {} }; -a.dummyLocalStorage = d, c.factory("localStorage", function() { -return window.localStorage || d; -}), c.factory("viewRegistry", function() { +return b.dummyLocalStorage = e, b.documentBase = function() { +var a = $("head").find("base"), b = "/"; +return a && a.length > 0 ? b = a.attr("href") :c.warn("Document is missing a 'base' tag, defaulting to '/'"), b; +}, d.factory("localStorage", function() { +return window.localStorage || e; +}), d.factory("documentBase", function() { +return b.documentBase(); +}), d.factory("viewRegistry", function() { return {}; -}), c.factory("helpRegistry", function() { +}), d.factory("helpRegistry", function() { return { addUserDoc:function() {}, addDevDoc:function() {}, @@ -38102,13 +40877,13 @@ getTopics:function() {}, disableAutodiscover:function() {}, discoverHelpFiles:function() {} }; -}), c.factory("preferencesRegistry", function() { +}), d.factory("preferencesRegistry", function() { return { addTab:function() {}, getTab:function() {}, getTabs:function() {} }; -}), c.factory("pageTitle", function() { +}), d.factory("pageTitle", function() { return { addTitleElement:function() {}, getTitle:function() {}, @@ -38116,25 +40891,50 @@ getTitleWithSeparator:function() {}, getTitleExcluding:function() {}, getTitleArrayExcluding:function() {} }; -}), c.factory("toastr", [ "$window", function(a) { +}), d.factory("toastr", [ "$window", function(a) { var b = a.toastr; return b || (b = {}, a.toastr = b), b; -} ]), c.factory("branding", function() { +} ]), d.factory("HawtioDashboard", function() { +return { +hasDashboard:!1, +inDashboard:!1, +getAddLink:function() { +return ""; +} +}; +}), d.factory("branding", function() { return {}; -}), c.factory("userDetails", function() { +}), d.factory("userDetails", function() { return { logout:function() { -b.debug("Dummy userDetails.logout()"); +c.debug("Dummy userDetails.logout()"); } }; -}), hawtioPluginLoader.addModule("ng"), hawtioPluginLoader.addModule("ngSanitize"), hawtioPluginLoader.addModule(a.pluginName), $(function() { -hawtioPluginLoader.loadPlugins(function() { -a.injector ? b.debug("Application already bootstrapped") :(a.injector = angular.bootstrap(document, hawtioPluginLoader.getModules()), b.debug("Bootstrapped application")); -}); +}), hawtioPluginLoader.addModule("ng"), hawtioPluginLoader.addModule("ngSanitize"), hawtioPluginLoader.addModule(b.pluginName), $(function() { +if (jQuery.uaMatch = function(a) { +a = a.toLowerCase(); +var b = /(chrome)[ \/]([\w.]+)/.exec(a) || /(webkit)[ \/]([\w.]+)/.exec(a) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a) || /(msie) ([\w.]+)/.exec(a) || a.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a) || []; +return { +browser:b[1] || "", +version:b[2] || "0" +}; +}, !jQuery.browser) { +var a = jQuery.uaMatch(navigator.userAgent), d = {}; +a.browser && (d[a.browser] = !0, d.version = a.version), d.chrome ? d.webkit = !0 :d.webkit && (d.safari = !0), jQuery.browser = d; +} +window.ng && window.ng.upgrade && (b.UpgradeAdapter = new ng.upgrade.UpgradeAdapter()), hawtioPluginLoader.loadPlugins(function() { +if (b.injector || b.UpgradeAdapterRef) return void c.debug("Application already bootstrapped"); +var a = localStorage.hawtioCoreStrictDi || !1; +a && c.debug("Using strict dependency injection"); +var d = hawtioPluginLoader.getBootstrapElement(); +c.debug("Using bootstrap element: ", d), b.UpgradeAdapter ? (c.debug("ngUpgrade detected, bootstrapping in Angular 1/2 hybrid mode"), b.UpgradeAdapterRef = b.UpgradeAdapter.bootstrap(d, hawtioPluginLoader.getModules(), { +strictDi:a +}), b._injector = b.UpgradeAdapterRef.ng1Injector) :b._injector = angular.bootstrap(d, hawtioPluginLoader.getModules(), { +strictDi:a +}), c.debug("Bootstrapped application"); }); -}(HawtioCore || (HawtioCore = {})); - -var HawtioExtensionService; +}), b; +}(), HawtioExtensionService; !function(a) { a.pluginName = "hawtio-extension-service", a.templatePath = "plugins/hawtio-extension-service/html", a._module = angular.module(a.pluginName, []), a._module.service("HawtioExtension", function() { @@ -41948,7 +44748,7 @@ return Math.pow(30 * (a - d), 2) + Math.pow(59 * (b - e), 2) + Math.pow(11 * (c }.call(function() { return this || ("undefined" != typeof window ? window :global); }()), function(a, b) { -"function" == typeof define && define.amd ? define([ "base1/angular", "base1/term" ], b) :b(a.angular, a.Terminal); +"function" == typeof define && define.amd ? define([ "angular", "term" ], b) :b(a.angular, a.Terminal); }(this, function(a, b) { "use strict"; function c(a) { @@ -54887,8 +57687,6 @@ keyValidatorErrorTooltip:f.keyValidatorErrorTooltip || g.keyValidatorErrorToolti keyValidatorErrorTooltipIcon:f.keyValidatorErrorTooltipIcon || g.keyValidatorErrorTooltipIcon, valueValidatorErrorTooltip:f.valueValidatorErrorTooltip || g.valueValidatorErrorTooltip, valueValidatorErrorTooltipIcon:f.valueValidatorErrorTooltipIcon || g.valueValidatorErrorTooltipIcon, -secretValueTooltip:f.secretValueTooltip || g.secretValueTooltip, -secretValueIcon:f.secretValueIcon || g.secretValueIcon, keyPlaceholder:f.keyPlaceholder || g.keyPlaceholder, valuePlaceholder:f.valuePlaceholder || g.valuePlaceholder }), e.append(a(i)(b)); @@ -54961,8 +57759,6 @@ keyValidatorErrorTooltipIcon:"pficon pficon-help", valueValidatorError:"Validation error", valueValidatorErrorTooltip:void 0, valueValidatorErrorTooltipIcon:"pficon pficon-help", -secretValueTooltip:void 0, -secretValueIcon:"fa fa-user-secret", keyPlaceholder:"", valuePlaceholder:"", keyRequiredError:"Key is required" diff --git a/dist/styles/fonts/PatternFlyIcons-webfont.eot b/dist/styles/fonts/PatternFlyIcons-webfont.eot index d8c511a06c..a09ee71ae8 100644 Binary files a/dist/styles/fonts/PatternFlyIcons-webfont.eot and b/dist/styles/fonts/PatternFlyIcons-webfont.eot differ diff --git a/dist/styles/fonts/PatternFlyIcons-webfont.svg b/dist/styles/fonts/PatternFlyIcons-webfont.svg index 90e6696f1b..b8fc87bb57 100644 --- a/dist/styles/fonts/PatternFlyIcons-webfont.svg +++ b/dist/styles/fonts/PatternFlyIcons-webfont.svg @@ -88,4 +88,6 @@ + + \ No newline at end of file diff --git a/dist/styles/fonts/PatternFlyIcons-webfont.ttf b/dist/styles/fonts/PatternFlyIcons-webfont.ttf index eef73f7a81..cffbff2ae3 100644 Binary files a/dist/styles/fonts/PatternFlyIcons-webfont.ttf and b/dist/styles/fonts/PatternFlyIcons-webfont.ttf differ diff --git a/dist/styles/fonts/PatternFlyIcons-webfont.woff b/dist/styles/fonts/PatternFlyIcons-webfont.woff index 8dddd08cf6..bf8a282149 100644 Binary files a/dist/styles/fonts/PatternFlyIcons-webfont.woff and b/dist/styles/fonts/PatternFlyIcons-webfont.woff differ diff --git a/dist/styles/main.css b/dist/styles/main.css index 4a6394c299..e74017cf8a 100644 --- a/dist/styles/main.css +++ b/dist/styles/main.css @@ -1,7 +1,6 @@ -.ie9.layout-pf-alt-fixed .nav-pf-vertical-alt,.ie9.layout-pf-fixed .nav-pf-secondary-nav,.ie9.layout-pf-fixed .nav-pf-tertiary-nav,.ie9.layout-pf-fixed .nav-pf-vertical,hr{box-sizing:content-box} div.code,pre,textarea{overflow:auto} .text-left,caption,th{text-align:left} -.btn,.datepicker table{-moz-user-select:none;-webkit-user-select:none} +.btn,.datepicker table{-webkit-user-select:none;-moz-user-select:none} .navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.pre-scrollable{max-height:340px} .c3 svg,html{-webkit-tap-highlight-color:transparent} .list-view-pf-top-align .list-view-pf-actions,.list-view-pf-top-align .list-view-pf-checkbox{align-self:flex-start} @@ -32,7 +31,7 @@ sup{top:-.5em} sub{bottom:-.25em} img{border:0;vertical-align:middle} svg:not(:root){overflow:hidden} -hr{height:0} +hr{box-sizing:content-box;height:0} code,div.code,kbd,pre,samp{font-size:1em} button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0} button{overflow:visible} @@ -947,7 +946,7 @@ select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.i .navbar-collapse.in{overflow-y:visible} .navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-left:0;padding-right:0} } -.carousel-inner,.embed-responsive,.modal,.modal-open,.progress{overflow:hidden} +.embed-responsive,.modal,.modal-open,.progress{overflow:hidden} @media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px} } .container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-20px;margin-left:-20px} @@ -1271,7 +1270,6 @@ a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-gro .close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer} button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none} .modal-content,.popover{background-clip:padding-box} -.btn-danger,.btn-default,.btn-primary,.carousel-control.left,.carousel-control.right,.pager li>a,.pager li>span{background-repeat:repeat-x} .modal{display:none;position:fixed;z-index:1050;-webkit-overflow-scrolling:touch;outline:0} .modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out} .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)} @@ -1332,7 +1330,7 @@ button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance .popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff} .popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#bbb} .popover.left>.arrow:after{right:1px;border-right-width:0;border-left-color:#fff} -.carousel-inner{width:100%} +.carousel-inner{overflow:hidden;width:100%} .carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left} @media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-moz-transition:-moz-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;-moz-perspective:1000px;perspective:1000px} .carousel-inner>.item.active.right,.carousel-inner>.item.next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);left:0} @@ -1348,8 +1346,8 @@ button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance .carousel-inner>.active.left{left:-100%} .carousel-inner>.active.right{left:100%} .carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);font-size:20px;background-color:rgba(0,0,0,0)} -.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0%,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0%,rgba(0,0,0,.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,.5) 0%,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)} -.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0%,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0%,rgba(0,0,0,.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0%,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)} +.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0%,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0%,rgba(0,0,0,.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,.5) 0%,rgba(0,0,0,.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)} +.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0%,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0%,rgba(0,0,0,.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0%,rgba(0,0,0,.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)} .carousel-control:focus,.carousel-control:hover{outline:0;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)} .carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;margin-top:-10px;z-index:5;display:inline-block} .carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px} @@ -2078,18 +2076,18 @@ button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance .btn.disabled,.btn[disabled],fieldset[disabled] .btn{background-color:#fafafa!important;background-image:none!important;border-color:#d1d1d1!important;color:#8b8d8f!important;opacity:1} .btn.disabled:active,.btn[disabled]:active,fieldset[disabled] .btn:active{-webkit-box-shadow:none;box-shadow:none} .btn.disabled.btn-link,.btn[disabled].btn-link,fieldset[disabled] .btn.btn-link{background-color:transparent!important;border:0} -.btn-danger{background-color:#a30000;background-image:-webkit-linear-gradient(top,#c00 0%,#a30000 100%);background-image:-o-linear-gradient(top,#c00 0%,#a30000 100%);background-image:linear-gradient(to bottom,#c00 0%,#a30000 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffcc0000', endColorstr='#ffa30000', GradientType=0);border-color:#8b0000;color:#fff} +.btn-danger{background-color:#a30000;background-image:-webkit-linear-gradient(top,#c00 0%,#a30000 100%);background-image:-o-linear-gradient(top,#c00 0%,#a30000 100%);background-image:linear-gradient(to bottom,#c00 0%,#a30000 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffcc0000', endColorstr='#ffa30000', GradientType=0);border-color:#8b0000;color:#fff} .btn-danger.active,.btn-danger:active,.btn-danger:focus,.btn-danger:hover,.open .dropdown-toggle.btn-danger{background-color:#a30000;background-image:none;border-color:#8b0000;color:#fff} .btn-danger.active,.btn-danger:active,.open .dropdown-toggle.btn-danger{background-image:none} .btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open .dropdown-toggle.btn-danger.focus,.open .dropdown-toggle.btn-danger:focus,.open .dropdown-toggle.btn-danger:hover{background-color:#8a0000;border-color:#670000} .btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#a30000;border-color:#8b0000} -.btn-default{background-color:#f1f1f1;background-image:-webkit-linear-gradient(top,#fafafa 0%,#ededed 100%);background-image:-o-linear-gradient(top,#fafafa 0%,#ededed 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#ededed 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa', endColorstr='#ffededed', GradientType=0);border-color:#bbb;color:#4d5258} +.btn-default{background-color:#f1f1f1;background-image:-webkit-linear-gradient(top,#fafafa 0%,#ededed 100%);background-image:-o-linear-gradient(top,#fafafa 0%,#ededed 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#ededed 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa', endColorstr='#ffededed', GradientType=0);border-color:#bbb;color:#4d5258} .btn-default.active,.btn-default:active,.btn-default:focus,.btn-default:hover,.open .dropdown-toggle.btn-default{background-color:#f1f1f1;background-image:none;border-color:#bbb;color:#4d5258} .btn-default.active,.btn-default:active,.open .dropdown-toggle.btn-default{background-image:none} .btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open .dropdown-toggle.btn-default.focus,.open .dropdown-toggle.btn-default:focus,.open .dropdown-toggle.btn-default:hover{background-color:#e5e5e5;border-color:#a9a9a9} .btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#f1f1f1;border-color:#bbb} .btn-link,.btn-link:active{-webkit-box-shadow:none;box-shadow:none} -.btn-primary{background-color:#0088ce;background-image:-webkit-linear-gradient(top,#39a5dc 0%,#0088ce 100%);background-image:-o-linear-gradient(top,#39a5dc 0%,#0088ce 100%);background-image:linear-gradient(to bottom,#39a5dc 0%,#0088ce 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff39a5dc', endColorstr='#ff0088ce', GradientType=0);border-color:#00659c;color:#fff} +.btn-primary{background-color:#0088ce;background-image:-webkit-linear-gradient(top,#39a5dc 0%,#0088ce 100%);background-image:-o-linear-gradient(top,#39a5dc 0%,#0088ce 100%);background-image:linear-gradient(to bottom,#39a5dc 0%,#0088ce 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff39a5dc', endColorstr='#ff0088ce', GradientType=0);border-color:#00659c;color:#fff} .btn-primary.active,.btn-primary:active,.btn-primary:focus,.btn-primary:hover,.open .dropdown-toggle.btn-primary{background-color:#0088ce;background-image:none;border-color:#00659c;color:#fff} .btn-primary.active,.btn-primary:active,.open .dropdown-toggle.btn-primary{background-image:none} .btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open .dropdown-toggle.btn-primary.focus,.open .dropdown-toggle.btn-primary:focus,.open .dropdown-toggle.btn-primary:hover{background-color:#0077b5;border-color:#004e78} @@ -2104,6 +2102,9 @@ button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance .dropdown-menu>li>a:active{background-color:#0088ce;border-color:#0088ce;color:#fff!important;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)} .dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-color:#0088ce!important;border-color:#0088ce!important;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)} .dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{border-color:transparent} +.dropdown-menu>.selected>a{background-color:#0088ce;border-color:#0088ce;color:#fff} +.dropdown-menu>.selected>a small{color:rgba(255,255,255,.5)} +.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{border-color:transparent} .dropdown-header{padding-left:10px;padding-right:10px;text-transform:uppercase} .btn-group>.dropdown-menu,.dropdown>.dropdown-menu,.input-group-btn>.dropdown-menu{margin-top:-1px} .dropup .dropdown-menu{margin-bottom:-1px} @@ -2115,7 +2116,7 @@ button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance .dropdown-submenu>a:after{content:"\f105";display:block;position:absolute;right:10px;top:2px} .dropdown-submenu>.dropdown-menu{left:100%;margin-top:0;top:-6px} .dropup .dropdown-submenu>.dropdown-menu{bottom:-5px;top:auto} -.dropdown-kebab-pf .btn-link{color:#252525;font-size:17px;line-height:1;padding:4px 0} +.dropdown-kebab-pf .btn-link{color:#252525;font-size:17px;line-height:1;padding:4px 10px;margin-left:-10px;margin-right:-10px} .dropdown-kebab-pf .btn-link:active,.dropdown-kebab-pf .btn-link:focus,.dropdown-kebab-pf .btn-link:hover{color:#0088ce} .dropdown-kebab-pf .dropdown-menu{left:-15px;margin-top:11px} .dropdown-kebab-pf .dropdown-menu.dropdown-menu-right{left:auto;right:-15px} @@ -2127,6 +2128,7 @@ button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance .dropdown-kebab-pf.dropup .dropdown-menu:after{border-top-color:#fff;bottom:-10px} .chars-remaining-pf span{font-weight:600;padding-right:5px} .chars-warn-remaining-pf{color:#c00} +.fields-status-pf{color:#8b8d8f;margin-bottom:15px} .form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{-webkit-box-shadow:none;box-shadow:none;color:#8b8d8f} .form-control[disabled]:hover,.form-control[readonly]:hover,fieldset[disabled] .form-control:hover{border-color:#bbb} .form-control:hover{border-color:#7dc3e8} @@ -2136,6 +2138,11 @@ button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance .has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label,.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label,.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#363636} .help-block{margin-bottom:0px} .input-group .input-group-btn .btn{-webkit-box-shadow:none;box-shadow:none} +label.required-pf:after{color:#c00;content:"*";margin-left:3px} +span.required-pf{color:#c00} +.fields-section-pf{border-color:#ededed;border-style:solid;border-width:1px 0 0;margin-top:25px;padding:15px 0 0} +.fields-section-header-pf{border:none;font-size:13px;margin:0;padding-right:10px;width:auto} +.fields-section-header-pf .fa-angle-right{cursor:pointer;font-size:15px;width:15px} .label{border-radius:0;font-size:100%} h1 .label,h2 .label,h3 .label,h4 .label,h5 .label,h6 .label{font-size:75%} .list-group{border-top:1px solid #ededed} @@ -2148,7 +2155,7 @@ h1 .label,h2 .label,h3 .label,h4 .label,h5 .label,h6 .label{font-size:75%} .modal-footer>.btn{padding-left:10px;padding-right:10px} .modal-footer>.btn>.fa-angle-left{margin-right:5px} .modal-footer>.btn>.fa-angle-right{margin-left:5px} -.pager li>a,.pager li>span{background-color:#f1f1f1;background-image:-webkit-linear-gradient(top,#fafafa 0%,#ededed 100%);background-image:-o-linear-gradient(top,#fafafa 0%,#ededed 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#ededed 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa', endColorstr='#ffededed', GradientType=0);border-color:#bbb;color:#4d5258;font-weight:600;line-height:22px;padding:2px 14px} +.pager li>a,.pager li>span{background-color:#f1f1f1;background-image:-webkit-linear-gradient(top,#fafafa 0%,#ededed 100%);background-image:-o-linear-gradient(top,#fafafa 0%,#ededed 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#ededed 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa', endColorstr='#ffededed', GradientType=0);border-color:#bbb;color:#4d5258;font-weight:600;line-height:22px;padding:2px 14px} .open .dropdown-toggle.pager li>a,.open .dropdown-toggle.pager li>span,.pager li a:active,.pager li>a.active,.pager li>a:active,.pager li>span.active,.pager li>span:active{background-image:none} .open .dropdown-toggle.pager li>a,.open .dropdown-toggle.pager li>span,.pager li>a.active,.pager li>a:active,.pager li>a:focus,.pager li>a:hover,.pager li>span.active,.pager li>span:active,.pager li>span:focus,.pager li>span:hover{background-color:#f1f1f1;background-image:none;border-color:#bbb;color:#4d5258} .open .dropdown-toggle.pager li>a.focus,.open .dropdown-toggle.pager li>a:focus,.open .dropdown-toggle.pager li>a:hover,.open .dropdown-toggle.pager li>span.focus,.open .dropdown-toggle.pager li>span:focus,.open .dropdown-toggle.pager li>span:hover,.pager li>a.active.focus,.pager li>a.active:focus,.pager li>a.active:hover,.pager li>a:active.focus,.pager li>a:active:focus,.pager li>a:active:hover,.pager li>span.active.focus,.pager li>span.active:focus,.pager li>span.active:hover,.pager li>span:active.focus,.pager li>span:active:focus,.pager li>span:active:hover{background-color:#e5e5e5;border-color:#a9a9a9} @@ -2174,6 +2181,18 @@ h1 .label,h2 .label,h3 .label,h4 .label,h5 .label,h6 .label{font-size:75%} .pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:1px;border-top-left-radius:1px} .pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:1px;border-top-right-radius:1px} .pagination-sm>li>a>.i,.pagination-sm>li>span>.i{font-size:12px;margin-top:2px} +.content-view-pf-pagination{background-color:#f5f5f5;border:1px solid #d1d1d1;border-top:none;display:flex;flex-wrap:wrap;justify-content:space-between} +.content-view-pf-pagination .form-group{align-items:baseline;display:flex;flex-grow:1;float:left;margin:5px} +@supports (display:flex){.content-view-pf-pagination .form-group{float:none} +} +.content-view-pf-pagination .form-group:last-child{justify-content:flex-end;float:right} +.content-view-pf-pagination .form-group .pagination-pf-pagesize.bootstrap-select.btn-group{display:flex;margin-right:5px;width:auto} +.content-view-pf-pagination .pagination-pf-page{margin-left:10px;margin-right:5px;padding:0 2px 2px;text-align:right;width:2.5em} +.content-view-pf-pagination .pagination{display:flex;margin:0 0 0 10px} +.content-view-pf-pagination .pagination a{float:none} +@supports (display:flex){.content-view-pf-pagination .form-group:last-child{float:none} +.content-view-pf-pagination .pagination a{display:block} +} .panel-title{font-weight:700} .panel-group .panel{color:#4d5258} .panel-group .panel+.panel{margin-top:-1px} @@ -2425,8 +2444,10 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .bs-searchbox+.bs-actionsbox{padding:0 8px 4px} .bs-searchbox .form-control{margin-bottom:0;width:100%;float:none} .bootstrap-switch{display:inline-block;direction:ltr;cursor:pointer;border-radius:1px;border:1px solid #bbb;position:relative;text-align:left;overflow:hidden;line-height:8px;z-index:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s} +.c3 text,.log-line-number{-moz-user-select:none;-webkit-user-select:none} .bootstrap-switch .bootstrap-switch-container{display:inline-block;top:0;border-radius:1px;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)} .bootstrap-switch .bootstrap-switch-handle-off,.bootstrap-switch .bootstrap-switch-handle-on,.bootstrap-switch .bootstrap-switch-label{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;cursor:pointer;display:inline-block!important;height:100%;padding:2px 6px;font-size:13px;line-height:21px} +.ie9.layout-pf-alt-fixed .nav-pf-vertical-alt,.ie9.layout-pf-fixed .nav-pf-secondary-nav,.ie9.layout-pf-fixed .nav-pf-tertiary-nav,.ie9.layout-pf-fixed .nav-pf-vertical,.list-group-item-header{box-sizing:content-box} .bootstrap-switch .bootstrap-switch-handle-off,.bootstrap-switch .bootstrap-switch-handle-on{text-align:center;z-index:1} .bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-primary,.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-primary{color:#fff;background:#0088ce} .bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-info,.bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-info{color:#fff;background:#00659c} @@ -2437,8 +2458,7 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .bootstrap-switch .bootstrap-switch-label{text-align:center;margin-top:-1px;margin-bottom:-1px;color:#4d5258} .bootstrap-switch .bootstrap-switch-handle-on{border-bottom-left-radius:0px;border-top-left-radius:0px} .bootstrap-switch .bootstrap-switch-handle-off{border-bottom-right-radius:0px;border-top-right-radius:0px} -.bootstrap-switch input[type=radio],.bootstrap-switch input[type=checkbox]{position:absolute!important;top:0;left:0;opacity:0;filter:alpha(opacity=0);z-index:-1} -.bootstrap-switch input[type=radio].form-control,.bootstrap-switch input[type=checkbox].form-control{height:auto} +.bootstrap-switch input[type=radio],.bootstrap-switch input[type=checkbox]{position:absolute!important;top:0;left:0;margin:0;z-index:-1;opacity:0;filter:alpha(opacity=0)} .bootstrap-switch.bootstrap-switch-mini .bootstrap-switch-handle-off,.bootstrap-switch.bootstrap-switch-mini .bootstrap-switch-handle-on,.bootstrap-switch.bootstrap-switch-mini .bootstrap-switch-label{padding:1px 5px;font-size:11px;line-height:1.5} .bootstrap-switch.bootstrap-switch-small .bootstrap-switch-handle-off,.bootstrap-switch.bootstrap-switch-small .bootstrap-switch-handle-on,.bootstrap-switch.bootstrap-switch-small .bootstrap-switch-label{padding:2px 6px;font-size:11px;line-height:1.5} .bootstrap-switch.bootstrap-switch-large .bootstrap-switch-handle-off,.bootstrap-switch.bootstrap-switch-large .bootstrap-switch-handle-on,.bootstrap-switch.bootstrap-switch-large .bootstrap-switch-label{padding:2px 10px;font-size:15px;line-height:1.3333333} @@ -2458,12 +2478,11 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .bootstrap-touchspin .input-group-btn-vertical i{position:absolute;font-weight:400} .c3 svg{font:10px sans-serif} .c3 line,.c3 path{fill:none;stroke:#000} -.c3 text{-webkit-user-select:none;-moz-user-select:none;user-select:none} +.c3 text{user-select:none} .c3-bars path,.c3-event-rect,.c3-legend-item-tile,.c3-xgrid-focus,.c3-ygrid{shape-rendering:crispEdges} .c3-chart-arc text{fill:#fff;font-size:13px} .c3-grid text{fill:#aaa} .c3-text.c3-empty{fill:grey;font-size:2em} -.c3-legend-item,.trademark-pf{font-size:12px} .c3-circle._expanded_{stroke-width:1px;stroke:#fff} .c3-selected-circle{fill:#fff;stroke-width:2px} .c3-bar{stroke-width:0} @@ -2473,6 +2492,7 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .c3-target.c3-defocused{opacity:.3!important} .c3-region{fill:#4682b4;fill-opacity:.1} .c3-brush .extent{fill-opacity:.1} +.c3-legend-item{font-size:12px} .c3-legend-item-hidden{opacity:.15} .c3-legend-background{opacity:.75;fill:#fff;stroke:#d3d3d3;stroke-width:1} .c3-title{font:14px sans-serif} @@ -2491,11 +2511,11 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .c3-chart-arc .c3-gauge-value{fill:#000} /*! * Datetimepicker for Bootstrap 3 - * version : 4.17.37 + * version : 4.17.45 * https://github.com/Eonasdan/bootstrap-datetimepicker/ */ .bootstrap-datetimepicker-widget{list-style:none} -.bootstrap-datetimepicker-widget.dropdown-menu{margin:2px 0} +.bootstrap-datetimepicker-widget.dropdown-menu{display:block;margin:2px 0} @media (min-width:768px){.bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs{width:38em} } @media (min-width:992px){.bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs{width:38em} @@ -2565,6 +2585,7 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .about-modal-pf .pficon-close{color:#fff} .product-versions-pf{margin-bottom:30px;margin-top:30px} .product-versions-pf li strong{margin-right:10px} +.trademark-pf{font-size:12px} .blank-slate-pf{background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:1px;margin-bottom:20px;padding:30px;text-align:center} .datepicker,.datepicker table tr td,.datepicker table tr td span,.datepicker table tr th{border-radius:1px} @media (min-width:768px){.blank-slate-pf{padding:60px} @@ -2635,16 +2656,22 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .bootstrap-touchspin .input-group-btn-vertical i{font-size:9px;left:6px;top:2px} .bootstrap-touchspin .input-group-btn-vertical i.fa-angle-down,.bootstrap-touchspin .input-group-btn-vertical i.fa-angle-up{font-size:13px;line-height:13px;top:0;left:7px} .treeview .list-group{border-top:0} -.treeview .list-group-item{background:0 0;border-bottom:1px solid transparent!important;border-top:1px solid transparent!important;margin-bottom:0;overflow:hidden;padding:0 10px;text-overflow:ellipsis;white-space:nowrap} -.treeview .list-group-item:hover{background:#def3ff!important;border-color:#bee1f4!important} -.treeview .list-group-item.node-selected{background:#0088ce!important;border-color:#0088ce!important;color:#fff!important} +.treeview .list-group-item{background:0 0;border-bottom:1px solid transparent!important;border-top:1px solid transparent!important;cursor:default!important;margin-bottom:0;overflow:hidden;padding:0 10px;text-overflow:ellipsis;white-space:nowrap} +.treeview .list-group-item:hover{background:0 0!important} +.treeview .list-group-item.node-selected{background:0 0!important;border-color:transparent!important;color:inherit!important} .treeview .list-group-item.node-check-changed span.node-icon,.treeview .list-group-item.node-check-changed span.text{color:#39a5dc} .treeview span.icon{display:inline-block;font-size:14px;min-width:10px;text-align:center} .treeview span.icon>[class*=fa-angle]{font-size:16px} .treeview span.icon.check-icon{margin-right:10px} +.treeview span.icon.expand-icon{cursor:pointer!important} +.treeview span.image{background-repeat:no-repeat;background-size:contain;display:inline-block;height:1.19em;line-height:1em;margin-right:5px;vertical-align:middle;width:12px} .treeview span.indent{margin-right:5px} .treeview .node-disabled{color:#d1d1d1;cursor:not-allowed} +.treeview .node-disabled span.expand-icon{cursor:default!important} +.treeview-pf-hover .list-group-item,.treeview-pf-select .list-group-item{cursor:pointer!important} .treeview .node-hidden{display:none} +.treeview-pf-hover .list-group-item:hover{background-color:#def3ff!important;border-color:#bee1f4!important} +.treeview-pf-select .list-group-item.node-selected{background:#0088ce!important;border-color:#0088ce!important;color:#fff!important} .card-pf{background:#fff;border-top:2px solid transparent;-webkit-box-shadow:0 1px 1px rgba(3,3,3,.175);margin:0 -10px 20px;padding:0 20px} .card-pf.card-pf-accented{border-top-color:#39a5dc} .card-pf.card-pf-aggregate-status .card-pf-aggregate-status-notifications a,.card-pf.card-pf-aggregate-status .card-pf-title a{color:#363636} @@ -2698,7 +2725,7 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .container-cards-pf{margin-top:20px} .row-cards-pf{margin-left:-10px;margin-right:-10px} .card-pf-view{border:2px solid transparent} -.card-pf-view .card-pf-heading-kebab .dropdown-kebab-pf{margin-left:10px;margin-top:-3px} +.card-pf-view .card-pf-heading-kebab .dropdown-kebab-pf{margin-top:-3px} .card-pf-view .card-pf-heading-kebab+.progress-pf-legend p{margin-bottom:0} .card-pf-view .card-pf-heading-kebab+.progress-pf-legend .progress{margin-bottom:7px;margin-top:16px} .card-pf-view .card-pf-info,.card-pf-view .card-pf-items{margin-top:15px} @@ -2715,10 +2742,10 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .card-pf-view .card-pf-top-element .card-pf-icon-circle{border:2px solid #39a5dc;border-radius:50%;display:block;font-size:46px;height:106px;line-height:102px;margin:0 auto;text-align:center;width:106px} .col-lg-2 .card-pf-view .card-pf-top-element .card-pf-icon-circle{font-size:23px;height:54px;line-height:50px;width:54px} .card-pf-view .card-pf-view-checkbox{position:absolute;top:11px;left:15px} +.card-pf-view.card-pf-view-select,.close{position:relative} .card-pf-view .card-pf-view-checkbox input[type=checkbox]{display:none} .card-pf-view.card-pf-view-multi-select .card-pf-view-checkbox input[type=checkbox]{display:block} .card-pf-view.card-pf-view-multi-select:hover .card-pf-view-checkbox input[type=checkbox]{visibility:visible} -.card-pf-view.card-pf-view-select{position:relative} .card-pf-view.card-pf-view-select:hover{-webkit-box-shadow:0 1px 6px rgba(3,3,3,.35);box-shadow:0 1px 6px rgba(3,3,3,.35)} .card-pf-view.card-pf-view-select.active{border:2px solid #39a5dc} .card-pf-view.card-pf-view-single-select{cursor:pointer} @@ -2741,7 +2768,7 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .donut-title-big-pf{font-size:30px;font-weight:300} .donut-title-small-pf{font-size:13px;font-weight:400} .line-chart-pf .c3-zoom-rect{opacity:1!important;fill:#fafafa;stroke:#d1d1d1;stroke-width:1px} -.close{text-shadow:none;opacity:.6;filter:alpha(opacity=60)} +.close{text-shadow:none;z-index:1;opacity:.6;filter:alpha(opacity=60)} .close:focus,.close:hover{opacity:.9;filter:alpha(opacity=90)} .dataTables_paginate .pagination>li.disabled>span,.dataTables_paginate .pagination>li>span:focus,.dataTables_paginate .pagination>li>span:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)} .ColVis_Button:active:focus{outline:0} @@ -2771,16 +2798,9 @@ select.bs-select-hidden,select.selectpicker{display:none!important} .dataTables_paginate .pagination-input .paginate_input{border:1px solid #d1d1d1;-webkit-box-shadow:inset 0 1px 1px rgba(3,3,3,.075);box-shadow:inset 0 1px 1px rgba(3,3,3,.075);font-size:13px;font-weight:600;height:19px;margin-right:8px;padding-right:3px;text-align:right;width:30px} .dataTables_paginate .pagination-input .paginate_of{position:relative} .dataTables_paginate .pagination-input .paginate_of b{margin-left:3px} -.dataTables_wrapper{margin:21px 0} +.dataTables_empty{background:#f5f5f5} .DTCR_clonedTable{background-color:rgba(255,255,255,.7);z-index:202} .DTCR_pointer{background-color:#0088ce;width:1px;z-index:201} -table.datatable{margin-bottom:0;max-width:none!important} -table.datatable thead .sorting,table.datatable thead .sorting_asc,table.datatable thead .sorting_asc_disabled,table.datatable thead .sorting_desc,table.datatable thead .sorting_desc_disabled{cursor:pointer} -table.datatable thead .sorting_asc,table.datatable thead .sorting_desc{color:#0088ce!important;position:relative} -table.datatable thead .sorting_asc:after,table.datatable thead .sorting_desc:after{content:"\f107";font-family:FontAwesome;font-size:11px;font-weight:400;height:10px;left:7px;line-height:13px;position:relative;top:2px;vertical-align:baseline;width:13px} -table.datatable thead .sorting_asc:before,table.datatable thead .sorting_desc:before{background:#0088ce;content:"";height:2px;position:absolute;left:0;top:0;width:100%} -table.datatable thead .sorting_asc:after{content:"\f106";top:-3px} -table.datatable th:active{outline:0} .footer-pf,.footer-pf-alt{background-color:#030303;color:#9c9c9c;font-size:11px;line-height:17px;padding-left:25px;padding-top:10px} .layout-pf-alt-fixed-with-footer .footer-pf,.layout-pf-alt-fixed-with-footer .footer-pf-alt,.layout-pf-fixed-with-footer .footer-pf,.layout-pf-fixed-with-footer .footer-pf-alt{bottom:0;left:0;position:fixed;right:0;z-index:1030} @font-face{font-family:PatternFlyIcons-webfont;src:url(../styles/fonts/PatternFlyIcons-webfont.eot);src:url(../styles/fonts/PatternFlyIcons-webfont.eot?#iefix) format("embedded-opentype"),url(../styles/fonts/PatternFlyIcons-webfont.ttf) format("truetype"),url(../styles/fonts/PatternFlyIcons-webfont.woff) format("woff"),url(../styles/fonts/PatternFlyIcons-webfont.svg#PatternFlyIcons-webfont) format("svg");font-weight:400;font-style:normal} @@ -2798,6 +2818,7 @@ table.datatable th:active{outline:0} .pficon-container-node:before{content:"\e621"} .pficon-cpu:before{content:"\e905"} .pficon-delete:before{content:"\e611"} +.pficon-domain:before{content:"\e919"} .pficon-edit:before{content:"\e60a"} .pficon-enterprise:before{content:"\e906"} .pficon-error-circle-o:before{color:#c00;content:'\e61d'} @@ -2831,6 +2852,7 @@ table.datatable th:active{outline:0} .pficon-save:before{content:"\e601"} .pficon-screen:before{content:"\e600"} .pficon-server:before{content:"\e90d"} +.pficon-server-group:before{content:"\e91a"} .pficon-service:before{content:"\e61e"} .pficon-settings:before{content:"\e610"} .pficon-storage-domain:before{content:"\e90e"} @@ -2846,8 +2868,7 @@ table.datatable th:active{outline:0} .pficon-warning-triangle-o:before{color:#ec7a08;content:'\e61c'} .pficon-zone:before{content:"\e911"} .navbar-nav>li>.dropdown-menu.infotip{border-top-width:1px!important;margin-top:10px} -@media (max-width:767px){.dataTables_wrapper .table-responsive{margin-bottom:0} -.navbar-pf .navbar-nav .open .dropdown-menu.infotip{background-color:#fff!important;margin-top:0} +@media (max-width:767px){.navbar-pf .navbar-nav .open .dropdown-menu.infotip{background-color:#fff!important;margin-top:0} } .infotip{min-width:235px;padding:0} .infotip .list-group{border-top:0;margin:0;padding:8px 0} @@ -2905,10 +2926,14 @@ table.datatable th:active{outline:0} .layout-pf-alt.layout-pf-alt-fixed .container-pf-alt-nav-pf-vertical-alt.collapsed-nav{margin-left:75px} .layout-pf-alt.layout-pf-alt-fixed .container-pf-alt-nav-pf-vertical-alt.hidden-nav{margin-left:0} a.disabled{color:#8b8d8f;cursor:not-allowed;text-decoration:none} -.list-view-pf .list-group-item{align-items:flex-start;display:flex;padding-bottom:0;padding-top:0} +.list-view-pf .list-group-item{align-items:flex-start;background-clip:padding-box;border-color:transparent #fff;border-style:solid;border-width:1px;display:flex;flex-wrap:wrap;padding-bottom:0;padding-top:0} .list-view-pf .list-group-item:after,.list-view-pf .list-group-item:before{content:" ";display:table} -.list-view-pf .list-group-item.active{color:#555;background-color:#def3ff;z-index:auto} -.list-view-pf .list-group-item:hover{background-color:#fafafa} +.list-view-pf .list-group-item.list-view-pf-expand-active{background-color:#fafafa} +.list-view-pf .list-group-item.active{color:#555;background-color:#def3ff;background-clip:border-box;border-color:#39a5dc transparent transparent;z-index:auto} +.list-view-pf .list-group-item:hover{background-color:#fafafa;border-left-color:transparent;border-right-color:transparent} +.list-view-pf .list-group-item.list-view-pf-expand-active{border:1px solid #39a5dc} +.list-view-pf .list-group-item.list-view-pf-expand-active:first-child{border-top-color:#39a5dc} +.list-view-pf .list-group-item:first-child{border-top:1px solid transparent} .list-view-pf .list-group-item-heading small{display:block;font-size:10.4px;font-weight:400} .list-view-pf .list-group-item-text{color:currentColor!important} @media (min-width:992px){.list-view-pf .list-group-item{align-items:center} @@ -2916,7 +2941,7 @@ a.disabled{color:#8b8d8f;cursor:not-allowed;text-decoration:none} .list-view-pf .list-group-item-text{flex:1 0 auto;float:left;margin:0 40px 0 0;width:calc(75% - 40px)} } .list-view-pf-actions{float:right;margin-bottom:20px;margin-left:20px;margin-top:20px;order:2} -.list-view-pf-actions button,.list-view-pf-actions>a{margin-left:10px} +.list-view-pf-actions .dropdown-kebab-pf,.list-view-pf-actions button,.list-view-pf-actions>a{margin-left:10px} .list-view-pf-additional-info{align-items:center;display:flex;flex-wrap:wrap} @media (min-width:992px){.list-view-pf-additional-info{flex:1 0 auto;float:left;width:50%} } @@ -2933,7 +2958,7 @@ a.disabled{color:#8b8d8f;cursor:not-allowed;text-decoration:none} @media (min-width:992px){.list-view-pf-body{align-items:center;display:flex;flex-direction:row} } .list-view-pf-checkbox{border-right:1px solid #d1d1d1;float:left;margin-right:15px;padding:3px 10px 3px 0} -.list-view-pf-stacked .list-view-pf-description{display:block} +.list-view-pf-stacked .list-view-pf-description{display:block;flex:none} @media (min-width:992px){.list-view-pf-description{align-items:center;display:flex;float:left;width:50%} } .list-view-pf-left{display:table-cell;padding-right:20px;text-align:center;vertical-align:top} @@ -2951,7 +2976,13 @@ a.disabled{color:#8b8d8f;cursor:not-allowed;text-decoration:none} .list-view-pf-main-info{align-items:flex-start;display:flex;flex:1;min-width:0} .list-view-pf-stacked .list-group-item-heading{float:none;font-size:16px;line-height:1.2em;margin-bottom:5px;margin-right:40px;width:auto} .list-view-pf-stacked .list-group-item-text{float:none;width:auto} -.list-view-pf-view{margin-top:30px} +.list-view-pf-view{background:#ededed;border:none;margin-top:30px} +.list-group-item-header{cursor:pointer;margin:0 -15px;padding:0 15px;width:100%} +.list-view-pf-expand{cursor:pointer;float:left;margin-bottom:20px;margin-right:2px;margin-top:20px;padding:3px 0} +.list-view-pf-expand.active,.list-view-pf-expand:hover{color:#0088ce} +.list-view-pf-additional-info-item .list-view-pf-expand{margin:0;padding:0} +.list-view-pf-expand .fa-angle-right{cursor:pointer;font-size:18px;margin-right:5px;margin-top:2px;width:10px} +.list-group-item-container{background:#fff;border-top:solid 1px #39a5dc;box-sizing:content-box;margin:-1px -15px 0;order:3;padding:10px 15px;position:relative;width:100%} .login-pf{height:100%} .login-pf #brand{position:relative;top:-70px} .login-pf #brand img{display:block;height:18px;margin:0 auto;max-width:100%} @@ -3228,6 +3259,7 @@ a.disabled{color:#8b8d8f;cursor:not-allowed;text-decoration:none} to{transform:rotate(359deg)} } .spinner{animation:rotation .6s infinite linear;border-bottom:4px solid rgba(3,3,3,.25);border-left:4px solid rgba(3,3,3,.25);border-right:4px solid rgba(3,3,3,.25);border-radius:100%;border-top:4px solid rgba(3,3,3,.75);height:26px;margin:0 auto;position:relative;width:26px} +.prettyprint ol.linenums,table.dataTable{margin-bottom:0} .spinner.spinner-inline{display:inline-block;margin-right:3px} .spinner.spinner-lg{border-width:5px;height:32.5px;width:32.5px} .spinner.spinner-sm{border-width:3px;height:19.5px;width:19.5px} @@ -3244,7 +3276,33 @@ to{transform:rotate(359deg)} .prettyprint .atv,.prettyprint .str{color:#a30000} .prettyprint .clo,.prettyprint .dec,.prettyprint .kwd,.prettyprint .opn,.prettyprint .pln,.prettyprint .pun{color:#363636} .prettyprint .lit,.prettyprint .tag,.prettyprint .typ{color:#00659c} -.prettyprint ol.linenums{margin-bottom:0} +table.dataTable{height:100%;max-width:none!important} +table.dataTable tbody>tr>td.table-view-pf-actions{padding:0;vertical-align:middle} +table.dataTable tbody>tr:hover>td.table-view-pf-actions{background-color:#f5f5f5;border-bottom-color:#d1d1d1} +table.dataTable tbody>tr.selected{color:#fff;background-color:#0088ce} +table.dataTable tbody>tr.selected>td{border-bottom-color:#00659c} +table.dataTable tbody>tr.selected>td.table-view-pf-actions{background-color:#f5f5f5;border-bottom-color:#d1d1d1} +table.dataTable tbody>tr.selected:hover>td{background-color:inherit;border-bottom-color:#00659c} +table.dataTable tbody>tr.selected:hover>td.table-view-pf-actions{background-color:#f5f5f5;border-bottom-color:#d1d1d1} +table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_desc_disabled{cursor:pointer} +table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc{color:#0088ce!important;position:relative} +table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_desc:after{content:"\f107";font-family:FontAwesome;font-size:11px;font-weight:400;height:10px;left:7px;line-height:13px;position:relative;top:2px;vertical-align:baseline;width:13px} +.wizard-pf-substep-number,.wizard-pf-substep-title{vertical-align:middle;margin-right:5px;display:inline-block} +table.dataTable thead .sorting_asc:before,table.dataTable thead .sorting_desc:before{background:#0088ce;content:"";height:2px;position:absolute;left:0;top:0;width:100%} +table.dataTable thead .sorting_asc:after{content:"\f106";top:-3px} +table.dataTable th:active{outline:0} +.table-view-pf-empty.blank-slate-pf{background-color:#f5f5f5;border:1px solid #d1d1d1;border-radius:0;margin-top:-1px} +.table-view-pf-toolbar.toolbar-pf{background-color:#f5f5f5;border-bottom:none;border-left:1px solid #d1d1d1;border-right:1px solid #d1d1d1;border-top:1px solid #d1d1d1;box-shadow:none;margin-left:0px;margin-right:0px} +.table-view-pf-toolbar.toolbar-pf .toolbar-pf-results{border-top:1px solid #d1d1d1;min-height:40px;line-height:40px} +.table-view-pf-toolbar-external.toolbar-pf{border-bottom:none;border-top:none;box-shadow:none} +.table-view-pf-toolbar-external.toolbar-pf .toolbar-pf-results{border-top:1px solid #d1d1d1;min-height:40px;line-height:40px} +.table-view-pf-actions{background-color:#f1f1f1;height:100%} +.table-view-pf-actions .btn,.table-view-pf-actions .dropdown-toggle{border:none;box-shadow:none;height:100%;width:100%} +.table-view-pf-actions .dropdown,.table-view-pf-actions .table-view-pf-btn{height:100%} +.table-view-pf-actions .dropdown-menu.dropdown-menu-right{right:-5px} +.table-view-pf-actions:last-child{width:24px} +.table-view-pf-select{width:33px} +.table-view-pf-select-results{text-align:right} .bootstrap-datetimepicker-widget a[data-action]{border:0;box-shadow:none;color:#363636;display:block;padding-bottom:4px;padding-top:4px} .bootstrap-datetimepicker-widget a[data-action]:hover,.timepicker-hours table td:hover,.timepicker-minutes table td:hover{color:#0088ce} .bootstrap-datetimepicker-widget.dropdown-menu{left:0!important;padding:0;top:23px!important;width:calc(100% - 25px)} @@ -3291,23 +3349,26 @@ to{transform:rotate(359deg)} .toolbar-pf .form-group .btn+.btn-link,.toolbar-pf .form-group .btn+.dropdown,.toolbar-pf .form-group .btn-group+.btn-link,.toolbar-pf .form-group .btn-group+.dropdown{margin-left:10px} .toolbar-pf .form-group .btn-link{color:#252525;font-size:17px;line-height:1;padding:4px 0} .toolbar-pf .form-group .btn-link:active,.toolbar-pf .form-group .btn-link:focus,.toolbar-pf .form-group .btn-link:hover{color:#0088ce} -.toolbar-pf-actions{display:table;width:100%} +.toolbar-pf .form-group .dropdown-kebab-pf .btn-link{padding:4px 10px;margin-left:-10px;margin-right:-10px} +.toolbar-pf-actions{display:table;margin-bottom:10px;width:100%} @media (min-width:768px){.toolbar-pf-actions .toolbar-pf-filter{padding-left:0;width:25%} } .toolbar-pf-view-selector{font-size:17px} .toolbar-pf-view-selector .btn-link.active{color:#0088ce;cursor:default} .toolbar-pf-action-right{float:right} .toolbar-pf-find{font-size:15px;position:relative} -.find-pf-dropdown-container{background:#fff;border:1px solid #bbb;display:none;left:-200px;padding:5px;position:absolute;top:35px;width:300px;z-index:10000} +.find-pf-dropdown-container{background:#fff;border:1px solid #bbb;display:none;right:-20px;padding:5px;position:absolute;top:35px;width:300px;z-index:10000} @media (max-width:768px){.toolbar-pf-action-right{float:none} .find-pf-dropdown-container{left:30px;top:-5px;width:calc(70%)} } .find-pf-dropdown-container:after,.find-pf-dropdown-container:before{content:"";position:absolute} -.find-pf-dropdown-container:before{border-bottom:11px solid #bbb;border-left:11px solid transparent;border-right:11px solid transparent;left:215px;top:-12px} -@media (max-width:768px){.find-pf-dropdown-container:before{border-bottom:11px solid transparent;border-right:11px solid #bbb;border-top:11px solid transparent;left:-22px;top:8px} +.find-pf-dropdown-container:before{border-bottom:11px solid #bbb;border-left:11px solid transparent;border-right:11px solid transparent;right:35px;top:-12px} +.toolbar-pf-find:last-child .find-pf-dropdown-container:before{right:15px} +@media (max-width:768px){.find-pf-dropdown-container:before{border-bottom:11px solid transparent;border-right:11px solid #bbb;border-top:11px solid transparent;left:-22px;right:initial;top:8px} } -.find-pf-dropdown-container:after{border-bottom:10px solid #fff;border-left:10px solid transparent;border-right:10px solid transparent;left:216px;top:-10px} -@media (max-width:768px){.find-pf-dropdown-container:after{border-bottom:10px solid transparent;border-right:10px solid #fff;border-top:10px solid transparent;left:-20px;top:9px} +.find-pf-dropdown-container:after{border-bottom:10px solid #fff;border-left:10px solid transparent;border-right:10px solid transparent;right:36px;top:-10px} +.toolbar-pf-find:last-child .find-pf-dropdown-container:after{right:16px} +@media (max-width:768px){.find-pf-dropdown-container:after{border-bottom:10px solid transparent;border-right:10px solid #fff;border-top:10px solid transparent;left:-20px;right:initial;top:9px} } .find-pf-dropdown-container input{height:30px;padding:5px 117px 5px 5px;width:100%} .find-pf-dropdown-container .find-pf-buttons{position:absolute;right:10px;top:5px} @@ -3326,10 +3387,12 @@ to{transform:rotate(359deg)} .nav-pf-vertical{background:#292e34;border-right:1px solid #292e34;bottom:0;left:0;overflow-x:hidden;overflow-y:auto;position:fixed;top:60px;width:200px;z-index:1030} .layout-pf-fixed-with-footer .nav-pf-vertical{bottom:37px} .nav-pf-vertical.hidden.show-mobile-nav{box-shadow:0 0 3px rgba(3,3,3,.15);display:block!important} -.nav-pf-vertical .hide-nav-pf{visibility:hidden!important} +.nav-pf-vertical.hide-nav-pf{visibility:hidden!important} .nav-pf-vertical .list-group{border-top:0;margin-bottom:0} .nav-pf-vertical .list-group-item{background-color:transparent;border-color:#030303;padding:0} .nav-pf-vertical .list-group-item>a{background-color:transparent;color:#d1d1d1;cursor:pointer;display:block;font-size:15px;font-weight:400;height:63px;line-height:26px;outline:0;padding:17px 20px 17px 25px;position:relative;white-space:nowrap;width:200px} +@supports (display:flex){.nav-pf-vertical .list-group-item>a{display:flex;padding-right:0} +} .nav-pf-vertical .list-group-item>a .fa,.nav-pf-vertical .list-group-item>a .glyphicon,.nav-pf-vertical .list-group-item>a .pficon{color:#72767b;float:left;font-size:21px;line-height:26px;margin-right:10px;text-align:center;width:24px} .nav-pf-vertical .list-group-item>a:hover{text-decoration:none} .nav-pf-vertical .list-group-item.active>a,.nav-pf-vertical .list-group-item:hover>a{background-color:#393f44;color:#fff;font-weight:600} @@ -3337,16 +3400,15 @@ to{transform:rotate(359deg)} .nav-pf-vertical .list-group-item.active>a:before{background:#39a5dc;content:" ";height:100%;left:0;position:absolute;top:0;width:3px} .nav-pf-vertical .list-group-item.active:hover{background-color:transparent;border-color:#030303} .nav-pf-vertical .list-group-item .list-group-item-value{display:block;line-height:25px;max-width:120px;overflow:hidden;text-overflow:ellipsis} -.nav-pf-vertical.collapsed>.list-group-item>a>.badge-container-pf,.nav-pf-vertical.collapsed>.list-group-item>a>.list-group-item-value,.nav-pf-vertical.hidden-icons-pf.collapsed,.nav-pf-vertical.hidden-icons-pf>.list-group>.list-group-item>a .fa,.nav-pf-vertical.hidden-icons-pf>.list-group>.list-group-item>a .glyphicon,.nav-pf-vertical.hidden-icons-pf>.list-group>.list-group-item>a .pficon{display:none} .nav-pf-secondary-nav,.nav-pf-tertiary-nav,.wizard-pf-sidebar{overflow-x:hidden;overflow-y:auto} .nav-pf-vertical .list-group-item-separator{border-top-color:#030303;border-top-width:2px} .nav-pf-vertical.nav-pf-vertical-with-badges,.nav-pf-vertical.nav-pf-vertical-with-badges .list-group-item>a{width:250px} -.nav-pf-vertical.collapsed,.nav-pf-vertical.collapsed>.list-group-item.secondary-nav-item-pf.active>a,.nav-pf-vertical.collapsed>.list-group-item.secondary-nav-item-pf>a,.nav-pf-vertical.collapsed>.list-group-item>a{width:75px} -.nav-pf-vertical.collapsed>.list-group-item.secondary-nav-item-pf.active>a:after,.nav-pf-vertical.collapsed>.list-group-item.secondary-nav-item-pf>a:after{right:10px} -.nav-pf-vertical.collapsed>.list-group-item.secondary-nav-item-pf.active>a,.nav-pf-vertical.collapsed>.list-group-item.secondary-nav-item-pf:hover>a{width:77px} -.nav-pf-vertical.collapsed>.list-group-item.secondary-nav-item-pf.active>a:after,.nav-pf-vertical.collapsed>.list-group-item.secondary-nav-item-pf:hover>a:after{right:11px} .nav-pf-vertical h5{color:#fff;cursor:default;font-size:14px;font-weight:600;margin:30px 20px 10px} +.nav-pf-vertical.hidden-icons-pf.collapsed,.nav-pf-vertical.hidden-icons-pf>.list-group>.list-group-item>a .fa,.nav-pf-vertical.hidden-icons-pf>.list-group>.list-group-item>a .glyphicon,.nav-pf-vertical.hidden-icons-pf>.list-group>.list-group-item>a .pficon{display:none} .nav-pf-vertical .badge-container-pf{position:absolute;right:15px;top:20px} +@supports (display:flex){.nav-pf-vertical .list-group-item .list-group-item-value{flex:1;max-width:none;padding-right:15px} +.nav-pf-vertical .badge-container-pf{padding-left:0;padding-right:15px;position:relative;right:0;margin-top:-3px;top:5px} +} .nav-pf-vertical .badge-container-pf .badge{background:#292e34;color:#fff;float:left;font-size:13px;font-weight:700;line-height:1.66666667;margin:0;padding:0 7px;text-align:center} .nav-pf-vertical .badge-container-pf .badge .fa,.nav-pf-vertical .badge-container-pf .badge .pficon{font-size:15px;height:20px;line-height:1.66666667;margin-right:3px;margin-top:-1px} .nav-pf-vertical-tooltip.tooltip{margin-left:15px} @@ -3362,13 +3424,14 @@ to{transform:rotate(359deg)} .hover-tertiary-nav-pf.nav-pf-vertical-with-badges .nav-pf-secondary-nav{width:calc(500px)} .hover-tertiary-nav-pf.nav-pf-vertical-with-badges .nav-pf-secondary-nav .collapsed-tertiary-nav-pf{width:250px} .hover-tertiary-nav-pf.nav-pf-vertical-with-badges .nav-pf-tertiary-nav{left:calc(500px)} -.collapsed{width:75px} -.collapsed.collapsed-secondary-nav-pf{width:200px} -.collapsed.collapsed-secondary-nav-pf.nav-pf-vertical-with-badges{width:250px} -.collapsed.collapsed-tertiary-nav-pf{width:200px} -.collapsed.collapsed-tertiary-nav-pf.nav-pf-vertical-with-badges{width:250px} -.collapsed.hover-secondary-nav-pf.nav-pf-vertical-with-badges{width:calc(325px)} -.collapsed.hover-tertiary-nav-pf,.collapsed.hover-tertiary-nav-pf.nav-pf-vertical-with-badges{width:calc(575px)} +.nav-pf-vertical.collapsed.collapsed-secondary-nav-pf{width:200px} +.nav-pf-vertical.collapsed.collapsed-secondary-nav-pf.nav-pf-vertical-with-badges{width:250px} +.nav-pf-vertical.collapsed.collapsed-tertiary-nav-pf{width:200px} +.nav-pf-vertical.collapsed.collapsed-tertiary-nav-pf.nav-pf-vertical-with-badges{width:250px} +.nav-pf-vertical.collapsed.hover-secondary-nav-pf{width:calc(275px)} +.nav-pf-vertical.collapsed.hover-secondary-nav-pf.nav-pf-vertical-with-badges{width:calc(325px)} +.nav-pf-vertical.collapsed.hover-tertiary-nav-pf{width:calc(475px)} +.nav-pf-vertical.collapsed.hover-tertiary-nav-pf.nav-pf-vertical-with-badges{width:calc(575px)} .show-mobile-nav.show-mobile-secondary{width:200px} .show-mobile-nav.show-mobile-secondary.nav-pf-vertical-with-badges{width:250px} .show-mobile-nav.show-mobile-tertiary{width:200px} @@ -3380,12 +3443,15 @@ to{transform:rotate(359deg)} .show-mobile-nav .tertiary-nav-item-pf.mobile-nav-item-pf:hover .nav-pf-tertiary-nav{opacity:1;visibility:visible} .secondary-nav-item-pf>a{cursor:default} .secondary-nav-item-pf>a:after{color:#72767b;content:"\f105";display:block;font-family:FontAwesome;font-size:26px;line-height:30px;padding:14px 0;position:absolute;right:20px;top:0} +@supports (display:flex){.secondary-nav-item-pf>a .list-group-item-value{padding-right:35px} +} .secondary-nav-item-pf.active>a,.secondary-nav-item-pf:hover>a{width:calc(201px);z-index:1031} -.collapsed-secondary-nav-pf .secondary-nav-item-pf.active>a,.collapsed-secondary-nav-pf .secondary-nav-item-pf:hover>a,.collapsed-tertiary-nav-pf .secondary-nav-item-pf.active>a,.collapsed-tertiary-nav-pf .secondary-nav-item-pf:hover>a,.nav-pf-vertical.collapsed-secondary-nav-pf .secondary-nav-item-pf.active>a,.nav-pf-vertical.collapsed-secondary-nav-pf .secondary-nav-item-pf.hover>a,.nav-pf-vertical.collapsed-tertiary-nav-pf .secondary-nav-item-pf.active>a,.nav-pf-vertical.collapsed-tertiary-nav-pf .secondary-nav-item-pf.hover>a,.nav-pf-vertical.collapsed-tertiary-nav-pf .tertiary-nav-item-pf.active>a,.nav-pf-vertical.collapsed-tertiary-nav-pf .tertiary-nav-item-pf.hover>a{z-index:1030} .secondary-nav-item-pf.active>a:after,.secondary-nav-item-pf:hover>a:after{right:21px} +.collapsed-secondary-nav-pf .secondary-nav-item-pf.active>a,.collapsed-secondary-nav-pf .secondary-nav-item-pf:hover>a,.collapsed-tertiary-nav-pf .secondary-nav-item-pf.active>a,.collapsed-tertiary-nav-pf .secondary-nav-item-pf:hover>a{z-index:0} .nav-pf-vertical-with-badges .secondary-nav-item-pf.active>a,.nav-pf-vertical-with-badges .secondary-nav-item-pf:hover>a{width:calc(251px)} .nav-pf-vertical.collapsed-secondary-nav-pf{width:200px} .nav-pf-vertical.collapsed-secondary-nav-pf.nav-pf-vertical-with-badges{width:250px} +.nav-pf-vertical.collapsed-secondary-nav-pf .secondary-nav-item-pf.active>a,.nav-pf-vertical.collapsed-secondary-nav-pf .secondary-nav-item-pf.hover>a{z-index:1030} .nav-pf-vertical.collapsed-secondary-nav-pf.hover-tertiary-nav-pf{width:200px} .nav-pf-vertical.collapsed-secondary-nav-pf.hover-tertiary-nav-pf.nav-pf-vertical-with-badges{width:250px} .nav-pf-vertical.collapsed-secondary-nav-pf .nav-pf-secondary-nav{left:0} @@ -3395,6 +3461,7 @@ to{transform:rotate(359deg)} .nav-pf-vertical.collapsed-tertiary-nav-pf.nav-pf-vertical-with-badges{width:250px} .nav-pf-vertical.collapsed-tertiary-nav-pf .nav-pf-secondary-nav{width:200px} .nav-pf-vertical.collapsed-tertiary-nav-pf .nav-pf-secondary-nav.nav-pf-vertical-with-badges{width:250px} +.nav-pf-vertical.collapsed-tertiary-nav-pf .secondary-nav-item-pf.active>a,.nav-pf-vertical.collapsed-tertiary-nav-pf .secondary-nav-item-pf.hover>a,.nav-pf-vertical.collapsed-tertiary-nav-pf .tertiary-nav-item-pf.active>a,.nav-pf-vertical.collapsed-tertiary-nav-pf .tertiary-nav-item-pf.hover>a{z-index:0} @media (min-width:1200px){.nav-pf-vertical.nav-pf-persistent-secondary.secondary-visible-pf{width:calc(400px)} .nav-pf-vertical.nav-pf-persistent-secondary.secondary-visible-pf.nav-pf-vertical-with-badges{width:calc(500px)} .nav-pf-vertical.nav-pf-persistent-secondary.secondary-visible-pf.collapsed-secondary-nav-pf{width:200px} @@ -3414,11 +3481,11 @@ to{transform:rotate(359deg)} .nav-pf-vertical.nav-pf-persistent-secondary.secondary-visible-pf.hover-tertiary-nav-pf.nav-pf-vertical-with-badges{width:calc(750px)} .nav-pf-vertical.nav-pf-persistent-secondary.secondary-visible-pf .secondary-nav-item-pf.active .nav-pf-secondary-nav{visibility:visible;opacity:1} } -.nav-pf-vertical.collapsed .list-group-item.secondary-nav-item-pf.active>a,.nav-pf-vertical.collapsed .list-group-item.secondary-nav-item-pf>a,.nav-pf-vertical.collapsed .list-group-item>a{width:75px} +.nav-pf-vertical.collapsed,.nav-pf-vertical.collapsed .list-group-item.secondary-nav-item-pf.active>a,.nav-pf-vertical.collapsed .list-group-item.secondary-nav-item-pf>a,.nav-pf-vertical.collapsed .list-group-item>a{width:75px} .nav-item-pf-header{color:#fff;font-size:17px;margin:18px 20px 10px} .nav-item-pf-header>a{cursor:pointer;margin-right:7px} .nav-item-pf-header>a:focus,.nav-item-pf-header>a:hover{color:#0088ce;text-decoration:none} -.nav-pf-vertical.collapsed .list-group-item>a>.list-group-item-value{display:none} +.nav-pf-vertical.collapsed .list-group-item>a>.badge-container-pf,.nav-pf-vertical.collapsed .list-group-item>a>.list-group-item-value{display:none} .nav-pf-vertical.collapsed .list-group-item.secondary-nav-item-pf.active>a:after,.nav-pf-vertical.collapsed .list-group-item.secondary-nav-item-pf>a:after{right:10px} .nav-pf-vertical.collapsed .list-group-item.secondary-nav-item-pf.active>a,.nav-pf-vertical.collapsed .list-group-item.secondary-nav-item-pf:hover>a{width:77px} .nav-pf-vertical.collapsed .list-group-item.secondary-nav-item-pf.active>a:after,.nav-pf-vertical.collapsed .list-group-item.secondary-nav-item-pf:hover>a:after{right:11px} @@ -3437,6 +3504,8 @@ to{transform:rotate(359deg)} .nav-pf-secondary-nav .list-group-item .list-group-item-value{padding-left:5px} .nav-pf-secondary-nav .list-group-item.tertiary-nav-item-pf>a{cursor:default} .nav-pf-secondary-nav .list-group-item.tertiary-nav-item-pf>a:after{color:#72767b;content:"\f105";display:block;font-family:FontAwesome;font-size:20px;line-height:20px;padding:0;position:absolute;right:20px;top:4px} +@supports (display:flex){.nav-pf-secondary-nav .list-group-item.tertiary-nav-item-pf>a .list-group-item-value{padding-right:35px} +} .nav-pf-secondary-nav .list-group-item.tertiary-nav-item-pf.active>a,.nav-pf-secondary-nav .list-group-item.tertiary-nav-item-pf:hover>a{width:calc(181px);z-index:1033} .nav-pf-secondary-nav .list-group-item.tertiary-nav-item-pf.active>a:after,.nav-pf-secondary-nav .list-group-item.tertiary-nav-item-pf:hover>a:after{right:21px} .nav-pf-vertical-with-badges .nav-pf-secondary-nav{left:250px;width:250px} @@ -3454,9 +3523,9 @@ to{transform:rotate(359deg)} .nav-pf-tertiary-nav h5{color:#fff;margin:30px 20px 10px} .nav-pf-tertiary-nav .list-group-item{border:none;padding:0 0 5px} .nav-pf-tertiary-nav .list-group-item>a{background-color:transparent;color:#d1d1d1;font-size:13px;font-weight:inherit;height:inherit;margin:0 20px;padding:4px 0 2px} -.wizard-pf-substep-number,.wizard-pf-substep-title{margin-right:5px;vertical-align:middle;display:inline-block} +.wizard-pf,.wizard-pf .modal-content{height:100%} .nav-pf-tertiary-nav .list-group-item.active>a:before{display:none} -.collapsed .nav-pf-secondary-nav .list-group-item>a>.list-group-item-value,.collapsed .nav-pf-tertiary-nav .list-group-item>a>.list-group-item-value{display:inline-block} +.collapsed .nav-pf-secondary-nav .list-group-item>a>.badge-container-pf,.collapsed .nav-pf-secondary-nav .list-group-item>a>.list-group-item-value,.collapsed .nav-pf-tertiary-nav .list-group-item>a>.badge-container-pf,.collapsed .nav-pf-tertiary-nav .list-group-item>a>.list-group-item-value{display:inline-block} .nav-pf-tertiary-nav .list-group-item.active>a,.nav-pf-tertiary-nav .list-group-item:hover>a{background-color:#393f44;color:#fff} .nav-pf-tertiary-nav .list-group-item .badge-container-pf{top:5px} .nav-pf-tertiary-nav .list-group-item .badge-container-pf .badge{background:#292e34;color:#fff} @@ -3494,11 +3563,12 @@ to{transform:rotate(359deg)} .force-hide-secondary-nav-pf .nav-pf-secondary-nav,.force-hide-secondary-nav-pf .nav-pf-tertiary-nav{display:none!important} .nav-pf-vertical.transitions{transition:width .1s} .nav-pf-vertical.transitions .nav-pf-secondary-nav,.nav-pf-vertical.transitions .nav-pf-tertiary-nav{transition:visibility .1s,opacity .1s linear} -.wizard-pf-body{padding:0} -.wizard-pf-sidebar{background:#fafafa;border-right:1px solid #d1d1d1;bottom:0;display:table-cell;left:0;position:relative;top:0;vertical-align:top} +.wizard-pf{margin:0 auto;max-height:900px;padding:10px;width:auto} +.wizard-pf-body{padding:0;position:static} +.wizard-pf-sidebar{background:#fafafa;border-right:1px solid #d1d1d1;bottom:0;left:0;position:absolute;top:0} .wizard-pf-sidebar .list-group{border-top:0;margin-bottom:0} .wizard-pf-sidebar .list-group-item{background-color:transparent;border-color:#ededed;padding:0} -.wizard-pf-sidebar .list-group-item>a{color:#030303;cursor:pointer;display:block;font-size:14px;font-weight:700;height:50px;outline:0;padding-top:11px;padding-left:20px;position:relative;white-space:nowrap;width:18em} +.wizard-pf-sidebar .list-group-item>a{color:#030303;cursor:pointer;display:block;font-size:14px;font-weight:700;height:50px;outline:0;padding-top:11px;padding-left:20px;position:relative;white-space:nowrap;width:14em} .wizard-pf-sidebar .list-group-item>a:hover{text-decoration:none} .wizard-pf-sidebar .list-group-item.active{background-color:#ededed} .wizard-pf-sidebar .list-group-item.active:hover{border-color:#ededed} @@ -3521,7 +3591,7 @@ to{transform:rotate(359deg)} .wizard-pf-steps-indicator .wizard-pf-step-number{background-color:#fff;border-radius:50%;border:2px solid #bbb;color:#bbb;font-size:13px;font-weight:700;height:25px;left:calc(37%);line-height:22px;position:absolute;top:27px;width:25px} .wizard-pf-steps-indicator .active .wizard-pf-step-number{cursor:default;background-color:#39a5dc;border-color:#39a5dc;color:#fff} .wizard-pf-steps-indicator .viewed-pf .wizard-pf-step-number{background-color:#fff;border-color:#39a5dc;color:#030303} -.wizard-pf-main{display:table-cell;padding:3em;vertical-align:top;width:10000px} +.wizard-pf-main{height:100%;margin-left:253px;overflow:auto;padding:3em;vertical-align:top} .wizard-pf-review-steps>ul>li>a,.wizard-pf-review-substeps>ul>li a{color:#030303;cursor:pointer;padding-right:5px;transition:250ms;text-decoration:none} .wizard-pf-main .blank-slate-pf{background-color:transparent;border:none;left:0;right:0} .wizard-pf-review-steps{list-style:none} @@ -3544,8 +3614,12 @@ to{transform:rotate(359deg)} .wizard-pf-review-content .wizard-pf-review-item .wizard-pf-review-item-field:last-of-type{margin-bottom:0} .wizard-pf-review-content .wizard-pf-review-item .wizard-pf-review-item-field.sub-field{margin-left:10px} .wizard-pf-success-icon{color:#3f9c35;font-size:72.8px;line-height:72.8px} -.wizard-pf-footer{border-top:1px solid #d1d1d1;margin-top:0;padding-bottom:17px} +.wizard-pf-footer{border-top:1px solid #d1d1d1;bottom:0;left:0;margin-top:0;padding-bottom:17px;position:absolute;right:0} .wizard-pf-footer .btn-cancel{margin-right:25px} +.wizard-pf-row{bottom:58px;position:absolute;overflow:hidden;top:172px;width:100%} +@media (min-width:992px){.wizard-pf{padding:30px 0;width:900px} +.wizard-pf-sidebar .list-group-item>a{width:18em} +} .key-value-editor.as-sortable-dragging .as-sortable-item-delete,.key-value-editor.as-sortable-dragging .input-group-addon,.key-value-editor.as-sortable-dragging input{opacity:.65} .key-value-editor .as-sortable-DISABLED-item-delete:hover,.key-value-editor .as-sortable-item-delete:hover,.key-value-editor .as-sortable-item-handle:hover,.key-value-editor.as-sortable-dragging .as-sortable-item-handle{opacity:1} .key-value-editor .as-sortable-DISABLED-item-delete,.key-value-editor .as-sortable-item-delete,.key-value-editor .as-sortable-item-handle{display:inline-block;font-size:15px;opacity:.65;padding:6px;vertical-align:middle} @@ -5186,7 +5260,7 @@ a.subtle-link:active,a.subtle-link:focus,a.subtle-link:hover{color:#00659c;borde .log-link-external i{font-size:10px;margin-left:5px} .log-line:hover{background-color:#22262b;color:#ededed} .log-line-number:before{content:attr(data-line-number)} -.log-line-number{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;border-right:1px #272b30 solid;padding-right:10px;vertical-align:top;white-space:nowrap;width:60px;color:#72767b} +.log-line-number{-ms-user-select:none;border-right:1px #272b30 solid;padding-right:10px;vertical-align:top;white-space:nowrap;width:60px;color:#72767b} .log-line-text{padding:0 10px;white-space:pre-wrap;width:100%;overflow-wrap:break-word;min-width:0} .log-line-text::-moz-selection{color:#101214;background:#e5e5e5} .table-log-pods{background-color:#fff;border:1px solid #D1D1D1} diff --git a/dist/styles/vendor.css b/dist/styles/vendor.css index 3f730c90a0..ab361b1aa1 100644 --- a/dist/styles/vendor.css +++ b/dist/styles/vendor.css @@ -1,3 +1,15 @@ +.as-sortable-drag,.ui-select-multiple .ui-select-match-item.dropping .ui-select-match-close,.wizard-pf-footer .tooltip-wrapper .btn[disabled]{pointer-events:none} +@media (min-width:768px){.form-inline .combobox-container,.form-search .combobox-container{display:inline-block;margin-bottom:0;vertical-align:top} +.form-inline .combobox-container .input-group-addon,.form-search .combobox-container .input-group-addon{width:auto} +} +.combobox-container:not(.combobox-selected) .glyphicon-remove,.combobox-selected .caret{display:none} +.typeahead-long{max-height:300px;overflow-y:auto} +.control-group.error .combobox-container .add-on{color:#B94A48;border-color:#B94A48} +.control-group.error .combobox-container .caret{border-top-color:#B94A48} +.control-group.warning .combobox-container .add-on{color:#C09853;border-color:#C09853} +.control-group.warning .combobox-container .caret{border-top-color:#C09853} +.control-group.success .combobox-container .add-on{color:#468847;border-color:#468847} +.control-group.success .combobox-container .caret{border-top-color:#468847} .card-pf-aggregate-status-alt .card-pf-body{padding-bottom:20px} .card-pf-aggregate-status-alt .card-pf-title{line-height:22px;margin:20px 0 10px;font-weight:300} .card-pf-aggregate-status-alt .card-pf-aggregate-status-count{font-size:24px} @@ -36,8 +48,6 @@ .trend-card-large-pf .trend-title-small-pf{font-size:12px;font-weight:400} .trend-card-small-pf .trend-title-small-pf{font-size:10px;font-weight:400} .trend-flat-details{display:table;margin-top:5px} -@media (min-width:768px){.trend-flat-details{margin-top:25px} -} .trend-flat-details-cell{display:table-cell;vertical-align:bottom;min-width:70px} .trend-header-compact-pf{display:block;font-size:12px;font-weight:400} .trend-title-compact-big-pf{font-size:36px;font-weight:300;line-height:1} @@ -49,11 +59,15 @@ .data-unavailable-pf .trend-footer-pf,.data-unavailable-pf [class*=trend-title-],.data-unavailable-pf [class*=trend-label-]{color:transparent} .filter-pf.filter-fields .form-group{padding-left:0;width:275px} .filter-select .btn-default{font-size:12px;font-style:italic;font-weight:400;background-color:#fff;background-image:none;color:#999} -.sort-pf .form-group .btn-link{color:#222;font-size:16px;line-height:1;padding:4px 0;margin-left:10px} -.sort-pf .form-group .btn-link:hover{color:#0099d3} +.sort-pf .btn-link{color:#252525;font-size:16px;line-height:1;padding:4px 0;margin-left:10px} +.sort-pf .btn-link:hover{color:#0099d3} .input-group .input-group-btn .dropdown-menu>.selected>a{background-color:#0099d3!important;border-color:#0076b7!important;color:#fff!important} +@media (min-width:768px){.trend-flat-details{margin-top:25px} +.toolbar-pf-actions .toolbar-apf-filter{padding-left:0} +} .toolbar-pf-actions .dropdown-kebab-pf{float:right} .toolbar-pf-include-actions{display:inline-block;margin:0 5px} +.dropdown-kebab-pf.invisible{opacity:0;pointer-events:none} .utilization-bar-chart-pf .progress-bar{-webkit-transition:width .75s ease-in-out;-moz-transition:width .75s ease-in-out;-o-transition:width .75s ease-in-out;transition:width .75s ease-in-out} .utilization-bar-chart-pf .progress-bar.animate{width:0%!important} .heatmap-pf-container{position:relative} @@ -69,6 +83,12 @@ accordion>.panel-group .panel-default .panel-title>a:before{content:"\f105"} accordion>.panel-group .panel-open .panel-title>a:before{content:"\f107"} .navbar-brand-txt{line-height:34px} +.wizard-pf-footer .tooltip-wrapper{border:none;box-shadow:none;display:inline-block;margin-left:5px;padding:0;text-align:center} +.wizard-pf-singlestep{margin-left:0} +.wizard-pf-position-override{position:relative} +.wizard-pf-footer-inline{text-align:left} +.wizard-pf-cancel-inline{margin-left:25px} +.pf-expand-placeholder{margin-right:15px} @-webkit-keyframes ui-spinner-rotate-right{0%{-webkit-transform:rotate(0deg)} 25%,50%{-webkit-transform:rotate(180deg)} 100%,75%{-webkit-transform:rotate(360deg)} @@ -390,7 +410,7 @@ ul.registry-image-layers p{font-family:monospace;margin-bottom:0px;overflow:hidd [right]{right:0px} .as-sortable-item{-ms-touch-action:none;touch-action:none;-webkit-touch-callout:none} .as-sortable-item-handle{cursor:move;cursor:-webkit-grab;cursor:-moz-grab} -.as-sortable-drag{position:absolute;pointer-events:none;z-index:9999} +.as-sortable-drag{position:absolute;z-index:9999} .as-sortable-hidden{display:none!important} .as-sortable-un-selectable{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} /*! @@ -432,7 +452,6 @@ body>.ui-select-bootstrap.open{z-index:1000} .ui-select-multiple.ui-select-bootstrap .ui-select-match .close{font-size:1.6em;line-height:.75} .ui-select-multiple.ui-select-bootstrap .ui-select-match-item{outline:0;margin:0 3px 3px 0} .ui-select-multiple .ui-select-match-item{position:relative} -.ui-select-multiple .ui-select-match-item.dropping .ui-select-match-close{pointer-events:none} .ui-select-multiple:hover .ui-select-match-item.dropping-before:before{content:"";position:absolute;top:0;right:100%;height:100%;margin-right:2px;border-left:1px solid #428bca} .ui-select-multiple:hover .ui-select-match-item.dropping-after:after{content:"";position:absolute;top:0;left:100%;height:100%;margin-left:2px;border-right:1px solid #428bca} .ui-select-bootstrap .ui-select-choices-row>span{cursor:pointer;display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap} diff --git a/package.json b/package.json index d4e0bb8e86..2097941cac 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "grunt-angular-templates": "1.0.3", "grunt-autoprefixer": "0.7.6", "grunt-cli": "1.1.0", - "grunt-concurrent": "0.5.0", + "grunt-concurrent": "2.3.1", "grunt-contrib-clean": "1.0.0", "grunt-contrib-concat": "1.0.0", "grunt-contrib-connect": "1.0.2", diff --git a/test/karma.conf.js b/test/karma.conf.js index d229a4584e..b894db9296 100644 --- a/test/karma.conf.js +++ b/test/karma.conf.js @@ -39,7 +39,7 @@ module.exports = function(config) { "bower_components/bootstrap-select/dist/js/bootstrap-select.js", "bower_components/c3/c3.js", "bower_components/js-logger/src/logger.js", - "bower_components/hawtio-core/hawtio-core.js", + "bower_components/hawtio-core/dist/hawtio-core.js", "bower_components/lodash/lodash.js", "bower_components/hawtio-extension-service/dist/hawtio-extension-service.js", "bower_components/kubernetes-label-selector/labelSelector.js", diff --git a/test/spec/controllers/projects.js b/test/spec/controllers/projects.js index 7d67c0e124..fe0849e661 100644 --- a/test/spec/controllers/projects.js +++ b/test/spec/controllers/projects.js @@ -63,7 +63,8 @@ describe('Controller: ProjectsController', function () { var deferred = $q.defer(); deferred.resolve({}); return deferred.promise; - } + }, + unwatchAll: function(watches) {} }, ProjectsService: { canCreate: function() {
{{limit.type}} {{type | computeResourceLabel : true}}{{(typeLimits.min | usageWithUnits : type) || \"—\"}}{{(typeLimits.max | usageWithUnits : type) || \"—\"}}