KEYCLOAK-11782 Cleanup

* Updated npm-update profile
  - Update Node and NPM versions
  - Exclude optional dependencies
  - Remove node_modules within src/main/node_modules (PatternFly for example includes all dependencies in patternfly/node_modules, we don't need these)
  - Remove minimist and mkdirp from src/main/node_modules as these are not included in dist, so we don't need the source

* src/main/node_modules was updated to PatternFly 3.41.6 at some point, but not properly since src/main/resources/theme/keycloak/common/resources/node_modules/patternfly is currently on 3.38.1

* Removed ^ in versions in package.json as this results in unreliable updates of dependencies
This commit is contained in:
stianst 2019-10-24 13:49:21 +02:00 committed by Bruno Oliveira da Silva
parent 203646627f
commit 2f0b03e1a0
70 changed files with 194 additions and 2582 deletions

View file

@ -134,47 +134,85 @@
<id>npm-update</id>
<build>
<plugins>
<!-- Clean downloaded packages from NPM -->
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>src/main/resources/node_modules</directory>
</fileset>
<fileset>
<directory>src/main/resources/theme/keycloak/common/resources/node_modules</directory>
</fileset>
</filesets>
</configuration>
</plugin>
<!-- Install NPM and download packages -->
<plugin>
<groupId>com.github.eirslett</groupId>
<artifactId>frontend-maven-plugin</artifactId>
<version>1.6</version>
<version>1.8.0</version>
<executions>
<execution>
<id>install-node-and-npm</id>
<phase>generate-resources</phase>
<goals>
<goal>install-node-and-npm</goal>
</goals>
</execution>
<execution>
<id>npm-install</id>
<phase>generate-resources</phase>
<goals>
<goal>npm</goal>
</goals>
<configuration>
<arguments>install</arguments>
<arguments>install -P -E --no-optional --ignore-scripts --no-bin-links --no-shrinkwrap --no-package-lock</arguments>
</configuration>
</execution>
</executions>
<configuration>
<nodeVersion>v8.9.4</nodeVersion>
<nodeVersion>v12.13.0</nodeVersion>
<npmVersion>6.9.0</npmVersion>
<workingDirectory>src/main/resources</workingDirectory>
</configuration>
</plugin>
<!-- Clean downloaded packages from NPM -->
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<executions>
<execution>
<id>clean-all</id>
<phase>initialize</phase>
<goals>
<goal>clean</goal>
</goals>
<configuration>
<filesets>
<fileset>
<directory>src/main/resources/node_modules</directory>
</fileset>
<fileset>
<directory>src/main/resources/theme/keycloak/common/resources/node_modules</directory>
</fileset>
</filesets>
</configuration>
</execution>
<execution>
<id>clean-downloaded</id>
<phase>generate-resources</phase>
<goals>
<goal>clean</goal>
</goals>
<configuration>
<filesets>
<fileset>
<directory>src/main/node_modules/angular-translate/node_modules/</directory>
</fileset>
<fileset>
<directory>src/main/node_modules/patternfly/node_modules/</directory>
</fileset>
<fileset>
<directory>src/main/node_modules/rcue/node_modules/</directory>
</fileset>
<fileset>
<directory>src/main/node_modules/minimist</directory>
</fileset>
<fileset>
<directory>src/main/node_modules/mkdirp</directory>
</fileset>
</filesets>
</configuration>
</execution>
</executions>
</plugin>
<!-- Copy files from NPM packages -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
@ -193,8 +231,6 @@
<resource>
<directory>src/main/node_modules</directory>
<excludes>
<exclude>minimist/**</exclude>
<exclude>mkdirp/**</exclude>
<exclude>**/*.json</exclude>
<exclude>**/*.json</exclude>
<exclude>**/*.markdown</exclude>

View file

@ -1 +0,0 @@
node_modules

View file

@ -16,13 +16,12 @@
"fetchSpec": "1.6.10"
},
"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/angular-cookies/-/angular-cookies-1.6.10.tgz",
"_shasum": "20a014d501242e2edacd21397c0e5480e08dee00",
"_spec": "angular-cookies@1.6.10",
"_where": "c:\\GitHub\\keycloak\\themes\\src\\main",
"_where": "/home/st/dev/keycloak/themes/src/main",
"author": {
"name": "Angular Core Team",
"email": "angular-core+npm@google.com"

View file

@ -16,13 +16,12 @@
"fetchSpec": "1.6.10"
},
"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/angular-loader/-/angular-loader-1.6.10.tgz",
"_shasum": "5ab1995c65dd38640e6d9d738dbd85eddd5ec310",
"_spec": "angular-loader@1.6.10",
"_where": "c:\\GitHub\\keycloak\\themes\\src\\main",
"_where": "/home/st/dev/keycloak/themes/src/main",
"author": {
"name": "Angular Core Team",
"email": "angular-core+npm@google.com"

View file

@ -16,13 +16,12 @@
"fetchSpec": "1.6.10"
},
"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/angular-resource/-/angular-resource-1.6.10.tgz",
"_shasum": "28c1834e9fa623467d2f9894716a4e6c7e077459",
"_spec": "angular-resource@1.6.10",
"_where": "c:\\GitHub\\keycloak\\themes\\src\\main",
"_where": "/home/st/dev/keycloak/themes/src/main",
"author": {
"name": "Angular Core Team",
"email": "angular-core+npm@google.com"

View file

@ -16,13 +16,12 @@
"fetchSpec": "1.6.10"
},
"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/angular-route/-/angular-route-1.6.10.tgz",
"_shasum": "4247a32eab19495624623e96c1626dfba17ebf21",
"_spec": "angular-route@1.6.10",
"_where": "c:\\GitHub\\keycloak\\themes\\src\\main",
"_where": "/home/st/dev/keycloak/themes/src/main",
"author": {
"name": "Angular Core Team",
"email": "angular-core+npm@google.com"

View file

@ -16,13 +16,12 @@
"fetchSpec": "1.6.10"
},
"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/angular-sanitize/-/angular-sanitize-1.6.10.tgz",
"_shasum": "635a362afb2dd040179f17d3a5455962b2c1918f",
"_spec": "angular-sanitize@1.6.10",
"_where": "c:\\GitHub\\keycloak\\themes\\src\\main",
"_where": "/home/st/dev/keycloak/themes/src/main",
"author": {
"name": "Angular Core Team",
"email": "angular-core+npm@google.com"

View file

@ -16,14 +16,12 @@
"fetchSpec": "1.6.10"
},
"_requiredBy": [
"#USER",
"/",
"/angular-translate"
"/"
],
"_resolved": "https://registry.npmjs.org/angular/-/angular-1.6.10.tgz",
"_shasum": "eed3080a34d29d0f681ff119b18ce294e3f74826",
"_spec": "angular@1.6.10",
"_where": "c:\\GitHub\\keycloak\\themes\\src\\main",
"_where": "/home/st/dev/keycloak/themes/src/main",
"author": {
"name": "Angular Core Team",
"email": "angular-core+npm@google.com"

0
themes/src/main/node_modules/bootstrap/grunt/change-version.js generated vendored Executable file → Normal file
View file

View file

@ -1,28 +1,27 @@
{
"_from": "bootstrap@3.4.1",
"_from": "bootstrap@^3.4.1",
"_id": "bootstrap@3.4.1",
"_inBundle": false,
"_integrity": "sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA==",
"_location": "/bootstrap",
"_phantomChildren": {},
"_requested": {
"type": "version",
"type": "range",
"registry": true,
"raw": "bootstrap@3.4.1",
"raw": "bootstrap@^3.4.1",
"name": "bootstrap",
"escapedName": "bootstrap",
"rawSpec": "3.4.1",
"rawSpec": "^3.4.1",
"saveSpec": null,
"fetchSpec": "3.4.1"
"fetchSpec": "^3.4.1"
},
"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.4.1.tgz",
"_shasum": "c3a347d419e289ad11f4033e3c4132b87c081d72",
"_spec": "bootstrap@3.4.1",
"_where": "c:\\GitHub\\keycloak\\themes\\src\\main",
"_spec": "bootstrap@^3.4.1",
"_where": "/home/st/dev/keycloak/themes/src/main",
"author": {
"name": "Twitter, Inc."
},

View file

@ -1,28 +1,27 @@
{
"_from": "jquery@3.4.1",
"_from": "jquery@^3.4.1",
"_id": "jquery@3.4.1",
"_inBundle": false,
"_integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw==",
"_location": "/jquery",
"_phantomChildren": {},
"_requested": {
"type": "version",
"type": "range",
"registry": true,
"raw": "jquery@3.4.1",
"raw": "jquery@^3.4.1",
"name": "jquery",
"escapedName": "jquery",
"rawSpec": "3.4.1",
"rawSpec": "^3.4.1",
"saveSpec": null,
"fetchSpec": "3.4.1"
"fetchSpec": "^3.4.1"
},
"_requiredBy": [
"#USER",
"/"
],
"_resolved": "https://registry.npmjs.org/jquery/-/jquery-3.4.1.tgz",
"_shasum": "714f1f8d9dde4bdfa55764ba37ef214630d80ef2",
"_spec": "jquery@3.4.1",
"_where": "c:\\GitHub\\keycloak\\themes\\src\\main",
"_spec": "jquery@^3.4.1",
"_where": "/home/st/dev/keycloak/themes/src/main",
"author": {
"name": "JS Foundation and other contributors",
"url": "https://github.com/jquery/jquery/blob/3.4.1/AUTHORS.txt"

View file

@ -1,4 +0,0 @@
language: node_js
node_js:
- "0.8"
- "0.10"

View file

@ -1,18 +0,0 @@
This software is released under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View file

@ -1,2 +0,0 @@
var argv = require('../')(process.argv.slice(2));
console.dir(argv);

View file

@ -1,187 +0,0 @@
module.exports = function (args, opts) {
if (!opts) opts = {};
var flags = { bools : {}, strings : {} };
[].concat(opts['boolean']).filter(Boolean).forEach(function (key) {
flags.bools[key] = true;
});
[].concat(opts.string).filter(Boolean).forEach(function (key) {
flags.strings[key] = true;
});
var aliases = {};
Object.keys(opts.alias || {}).forEach(function (key) {
aliases[key] = [].concat(opts.alias[key]);
aliases[key].forEach(function (x) {
aliases[x] = [key].concat(aliases[key].filter(function (y) {
return x !== y;
}));
});
});
var defaults = opts['default'] || {};
var argv = { _ : [] };
Object.keys(flags.bools).forEach(function (key) {
setArg(key, defaults[key] === undefined ? false : defaults[key]);
});
var notFlags = [];
if (args.indexOf('--') !== -1) {
notFlags = args.slice(args.indexOf('--')+1);
args = args.slice(0, args.indexOf('--'));
}
function setArg (key, val) {
var value = !flags.strings[key] && isNumber(val)
? Number(val) : val
;
setKey(argv, key.split('.'), value);
(aliases[key] || []).forEach(function (x) {
setKey(argv, x.split('.'), value);
});
}
for (var i = 0; i < args.length; i++) {
var arg = args[i];
if (/^--.+=/.test(arg)) {
// Using [\s\S] instead of . because js doesn't support the
// 'dotall' regex modifier. See:
// http://stackoverflow.com/a/1068308/13216
var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
setArg(m[1], m[2]);
}
else if (/^--no-.+/.test(arg)) {
var key = arg.match(/^--no-(.+)/)[1];
setArg(key, false);
}
else if (/^--.+/.test(arg)) {
var key = arg.match(/^--(.+)/)[1];
var next = args[i + 1];
if (next !== undefined && !/^-/.test(next)
&& !flags.bools[key]
&& (aliases[key] ? !flags.bools[aliases[key]] : true)) {
setArg(key, next);
i++;
}
else if (/^(true|false)$/.test(next)) {
setArg(key, next === 'true');
i++;
}
else {
setArg(key, flags.strings[key] ? '' : true);
}
}
else if (/^-[^-]+/.test(arg)) {
var letters = arg.slice(1,-1).split('');
var broken = false;
for (var j = 0; j < letters.length; j++) {
var next = arg.slice(j+2);
if (next === '-') {
setArg(letters[j], next)
continue;
}
if (/[A-Za-z]/.test(letters[j])
&& /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
setArg(letters[j], next);
broken = true;
break;
}
if (letters[j+1] && letters[j+1].match(/\W/)) {
setArg(letters[j], arg.slice(j+2));
broken = true;
break;
}
else {
setArg(letters[j], flags.strings[letters[j]] ? '' : true);
}
}
var key = arg.slice(-1)[0];
if (!broken && key !== '-') {
if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])
&& !flags.bools[key]
&& (aliases[key] ? !flags.bools[aliases[key]] : true)) {
setArg(key, args[i+1]);
i++;
}
else if (args[i+1] && /true|false/.test(args[i+1])) {
setArg(key, args[i+1] === 'true');
i++;
}
else {
setArg(key, flags.strings[key] ? '' : true);
}
}
}
else {
argv._.push(
flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)
);
}
}
Object.keys(defaults).forEach(function (key) {
if (!hasKey(argv, key.split('.'))) {
setKey(argv, key.split('.'), defaults[key]);
(aliases[key] || []).forEach(function (x) {
setKey(argv, x.split('.'), defaults[key]);
});
}
});
notFlags.forEach(function(key) {
argv._.push(key);
});
return argv;
};
function hasKey (obj, keys) {
var o = obj;
keys.slice(0,-1).forEach(function (key) {
o = (o[key] || {});
});
var key = keys[keys.length - 1];
return key in o;
}
function setKey (obj, keys, value) {
var o = obj;
keys.slice(0,-1).forEach(function (key) {
if (o[key] === undefined) o[key] = {};
o = o[key];
});
var key = keys[keys.length - 1];
if (o[key] === undefined || typeof o[key] === 'boolean') {
o[key] = value;
}
else if (Array.isArray(o[key])) {
o[key].push(value);
}
else {
o[key] = [ o[key], value ];
}
}
function isNumber (x) {
if (typeof x === 'number') return true;
if (/^0x[0-9a-f]+$/i.test(x)) return true;
return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
}
function longest (xs) {
return Math.max.apply(null, xs.map(function (x) { return x.length }));
}

View file

@ -1,71 +0,0 @@
{
"_from": "minimist@0.0.8",
"_id": "minimist@0.0.8",
"_inBundle": false,
"_integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
"_location": "/minimist",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "minimist@0.0.8",
"name": "minimist",
"escapedName": "minimist",
"rawSpec": "0.0.8",
"saveSpec": null,
"fetchSpec": "0.0.8"
},
"_requiredBy": [
"/mkdirp"
],
"_resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"_shasum": "857fcabfc3397d2625b8228262e86aa7a011b05d",
"_spec": "minimist@0.0.8",
"_where": "/home/st/dev/keycloak/themes/src/main/node_modules/mkdirp",
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"bugs": {
"url": "https://github.com/substack/minimist/issues"
},
"bundleDependencies": false,
"deprecated": false,
"description": "parse argument options",
"devDependencies": {
"tap": "~0.4.0",
"tape": "~1.0.4"
},
"homepage": "https://github.com/substack/minimist",
"keywords": [
"argv",
"getopt",
"parser",
"optimist"
],
"license": "MIT",
"main": "index.js",
"name": "minimist",
"repository": {
"type": "git",
"url": "git://github.com/substack/minimist.git"
},
"scripts": {
"test": "tap test/*.js"
},
"testling": {
"files": "test/*.js",
"browsers": [
"ie/6..latest",
"ff/5",
"firefox/latest",
"chrome/10",
"chrome/latest",
"safari/5.1",
"safari/latest",
"opera/12"
]
},
"version": "0.0.8"
}

View file

@ -1,73 +0,0 @@
# minimist
parse argument options
This module is the guts of optimist's argument parser without all the
fanciful decoration.
[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)
[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)
# example
``` js
var argv = require('minimist')(process.argv.slice(2));
console.dir(argv);
```
```
$ node example/parse.js -a beep -b boop
{ _: [], a: 'beep', b: 'boop' }
```
```
$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz
{ _: [ 'foo', 'bar', 'baz' ],
x: 3,
y: 4,
n: 5,
a: true,
b: true,
c: true,
beep: 'boop' }
```
# methods
``` js
var parseArgs = require('minimist')
```
## var argv = parseArgs(args, opts={})
Return an argument object `argv` populated with the array arguments from `args`.
`argv._` contains all the arguments that didn't have an option associated with
them.
Numeric-looking arguments will be returned as numbers unless `opts.string` or
`opts.boolean` is set for that argument name.
Any arguments after `'--'` will not be parsed and will end up in `argv._`.
options can be:
* `opts.string` - a string or array of strings argument names to always treat as
strings
* `opts.boolean` - a string or array of strings to always treat as booleans
* `opts.alias` - an object mapping string names to strings or arrays of string
argument names to use as aliases
* `opts.default` - an object mapping string argument names to default values
# install
With [npm](https://npmjs.org) do:
```
npm install minimist
```
# license
MIT

View file

@ -1,24 +0,0 @@
var parse = require('../');
var test = require('tape');
test('-', function (t) {
t.plan(5);
t.deepEqual(parse([ '-n', '-' ]), { n: '-', _: [] });
t.deepEqual(parse([ '-' ]), { _: [ '-' ] });
t.deepEqual(parse([ '-f-' ]), { f: '-', _: [] });
t.deepEqual(
parse([ '-b', '-' ], { boolean: 'b' }),
{ b: true, _: [ '-' ] }
);
t.deepEqual(
parse([ '-s', '-' ], { string: 's' }),
{ s: '-', _: [] }
);
});
test('-a -- b', function (t) {
t.plan(3);
t.deepEqual(parse([ '-a', '--', 'b' ]), { a: true, _: [ 'b' ] });
t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] });
t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] });
});

View file

@ -1,20 +0,0 @@
var test = require('tape');
var parse = require('../');
test('boolean default true', function (t) {
var argv = parse([], {
boolean: 'sometrue',
default: { sometrue: true }
});
t.equal(argv.sometrue, true);
t.end();
});
test('boolean default false', function (t) {
var argv = parse([], {
boolean: 'somefalse',
default: { somefalse: false }
});
t.equal(argv.somefalse, false);
t.end();
});

View file

@ -1,16 +0,0 @@
var parse = require('../');
var test = require('tape');
test('dotted alias', function (t) {
var argv = parse(['--a.b', '22'], {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
t.equal(argv.a.b, 22);
t.equal(argv.aa.bb, 22);
t.end();
});
test('dotted default', function (t) {
var argv = parse('', {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
t.equal(argv.a.b, 11);
t.equal(argv.aa.bb, 11);
t.end();
});

View file

@ -1,31 +0,0 @@
var test = require('tape');
var parse = require('../');
test('long opts', function (t) {
t.deepEqual(
parse([ '--bool' ]),
{ bool : true, _ : [] },
'long boolean'
);
t.deepEqual(
parse([ '--pow', 'xixxle' ]),
{ pow : 'xixxle', _ : [] },
'long capture sp'
);
t.deepEqual(
parse([ '--pow=xixxle' ]),
{ pow : 'xixxle', _ : [] },
'long capture eq'
);
t.deepEqual(
parse([ '--host', 'localhost', '--port', '555' ]),
{ host : 'localhost', port : 555, _ : [] },
'long captures sp'
);
t.deepEqual(
parse([ '--host=localhost', '--port=555' ]),
{ host : 'localhost', port : 555, _ : [] },
'long captures eq'
);
t.end();
});

View file

@ -1,318 +0,0 @@
var parse = require('../');
var test = require('tape');
test('parse args', function (t) {
t.deepEqual(
parse([ '--no-moo' ]),
{ moo : false, _ : [] },
'no'
);
t.deepEqual(
parse([ '-v', 'a', '-v', 'b', '-v', 'c' ]),
{ v : ['a','b','c'], _ : [] },
'multi'
);
t.end();
});
test('comprehensive', function (t) {
t.deepEqual(
parse([
'--name=meowmers', 'bare', '-cats', 'woo',
'-h', 'awesome', '--multi=quux',
'--key', 'value',
'-b', '--bool', '--no-meep', '--multi=baz',
'--', '--not-a-flag', 'eek'
]),
{
c : true,
a : true,
t : true,
s : 'woo',
h : 'awesome',
b : true,
bool : true,
key : 'value',
multi : [ 'quux', 'baz' ],
meep : false,
name : 'meowmers',
_ : [ 'bare', '--not-a-flag', 'eek' ]
}
);
t.end();
});
test('nums', function (t) {
var argv = parse([
'-x', '1234',
'-y', '5.67',
'-z', '1e7',
'-w', '10f',
'--hex', '0xdeadbeef',
'789'
]);
t.deepEqual(argv, {
x : 1234,
y : 5.67,
z : 1e7,
w : '10f',
hex : 0xdeadbeef,
_ : [ 789 ]
});
t.deepEqual(typeof argv.x, 'number');
t.deepEqual(typeof argv.y, 'number');
t.deepEqual(typeof argv.z, 'number');
t.deepEqual(typeof argv.w, 'string');
t.deepEqual(typeof argv.hex, 'number');
t.deepEqual(typeof argv._[0], 'number');
t.end();
});
test('flag boolean', function (t) {
var argv = parse([ '-t', 'moo' ], { boolean: 't' });
t.deepEqual(argv, { t : true, _ : [ 'moo' ] });
t.deepEqual(typeof argv.t, 'boolean');
t.end();
});
test('flag boolean value', function (t) {
var argv = parse(['--verbose', 'false', 'moo', '-t', 'true'], {
boolean: [ 't', 'verbose' ],
default: { verbose: true }
});
t.deepEqual(argv, {
verbose: false,
t: true,
_: ['moo']
});
t.deepEqual(typeof argv.verbose, 'boolean');
t.deepEqual(typeof argv.t, 'boolean');
t.end();
});
test('flag boolean default false', function (t) {
var argv = parse(['moo'], {
boolean: ['t', 'verbose'],
default: { verbose: false, t: false }
});
t.deepEqual(argv, {
verbose: false,
t: false,
_: ['moo']
});
t.deepEqual(typeof argv.verbose, 'boolean');
t.deepEqual(typeof argv.t, 'boolean');
t.end();
});
test('boolean groups', function (t) {
var argv = parse([ '-x', '-z', 'one', 'two', 'three' ], {
boolean: ['x','y','z']
});
t.deepEqual(argv, {
x : true,
y : false,
z : true,
_ : [ 'one', 'two', 'three' ]
});
t.deepEqual(typeof argv.x, 'boolean');
t.deepEqual(typeof argv.y, 'boolean');
t.deepEqual(typeof argv.z, 'boolean');
t.end();
});
test('newlines in params' , function (t) {
var args = parse([ '-s', "X\nX" ])
t.deepEqual(args, { _ : [], s : "X\nX" });
// reproduce in bash:
// VALUE="new
// line"
// node program.js --s="$VALUE"
args = parse([ "--s=X\nX" ])
t.deepEqual(args, { _ : [], s : "X\nX" });
t.end();
});
test('strings' , function (t) {
var s = parse([ '-s', '0001234' ], { string: 's' }).s;
t.equal(s, '0001234');
t.equal(typeof s, 'string');
var x = parse([ '-x', '56' ], { string: 'x' }).x;
t.equal(x, '56');
t.equal(typeof x, 'string');
t.end();
});
test('stringArgs', function (t) {
var s = parse([ ' ', ' ' ], { string: '_' })._;
t.same(s.length, 2);
t.same(typeof s[0], 'string');
t.same(s[0], ' ');
t.same(typeof s[1], 'string');
t.same(s[1], ' ');
t.end();
});
test('empty strings', function(t) {
var s = parse([ '-s' ], { string: 's' }).s;
t.equal(s, '');
t.equal(typeof s, 'string');
var str = parse([ '--str' ], { string: 'str' }).str;
t.equal(str, '');
t.equal(typeof str, 'string');
var letters = parse([ '-art' ], {
string: [ 'a', 't' ]
});
t.equal(letters.a, '');
t.equal(letters.r, true);
t.equal(letters.t, '');
t.end();
});
test('slashBreak', function (t) {
t.same(
parse([ '-I/foo/bar/baz' ]),
{ I : '/foo/bar/baz', _ : [] }
);
t.same(
parse([ '-xyz/foo/bar/baz' ]),
{ x : true, y : true, z : '/foo/bar/baz', _ : [] }
);
t.end();
});
test('alias', function (t) {
var argv = parse([ '-f', '11', '--zoom', '55' ], {
alias: { z: 'zoom' }
});
t.equal(argv.zoom, 55);
t.equal(argv.z, argv.zoom);
t.equal(argv.f, 11);
t.end();
});
test('multiAlias', function (t) {
var argv = parse([ '-f', '11', '--zoom', '55' ], {
alias: { z: [ 'zm', 'zoom' ] }
});
t.equal(argv.zoom, 55);
t.equal(argv.z, argv.zoom);
t.equal(argv.z, argv.zm);
t.equal(argv.f, 11);
t.end();
});
test('nested dotted objects', function (t) {
var argv = parse([
'--foo.bar', '3', '--foo.baz', '4',
'--foo.quux.quibble', '5', '--foo.quux.o_O',
'--beep.boop'
]);
t.same(argv.foo, {
bar : 3,
baz : 4,
quux : {
quibble : 5,
o_O : true
}
});
t.same(argv.beep, { boop : true });
t.end();
});
test('boolean and alias with chainable api', function (t) {
var aliased = [ '-h', 'derp' ];
var regular = [ '--herp', 'derp' ];
var opts = {
herp: { alias: 'h', boolean: true }
};
var aliasedArgv = parse(aliased, {
boolean: 'herp',
alias: { h: 'herp' }
});
var propertyArgv = parse(regular, {
boolean: 'herp',
alias: { h: 'herp' }
});
var expected = {
herp: true,
h: true,
'_': [ 'derp' ]
};
t.same(aliasedArgv, expected);
t.same(propertyArgv, expected);
t.end();
});
test('boolean and alias with options hash', function (t) {
var aliased = [ '-h', 'derp' ];
var regular = [ '--herp', 'derp' ];
var opts = {
alias: { 'h': 'herp' },
boolean: 'herp'
};
var aliasedArgv = parse(aliased, opts);
var propertyArgv = parse(regular, opts);
var expected = {
herp: true,
h: true,
'_': [ 'derp' ]
};
t.same(aliasedArgv, expected);
t.same(propertyArgv, expected);
t.end();
});
test('boolean and alias using explicit true', function (t) {
var aliased = [ '-h', 'true' ];
var regular = [ '--herp', 'true' ];
var opts = {
alias: { h: 'herp' },
boolean: 'h'
};
var aliasedArgv = parse(aliased, opts);
var propertyArgv = parse(regular, opts);
var expected = {
herp: true,
h: true,
'_': [ ]
};
t.same(aliasedArgv, expected);
t.same(propertyArgv, expected);
t.end();
});
// regression, see https://github.com/substack/node-optimist/issues/71
test('boolean and --x=true', function(t) {
var parsed = parse(['--boool', '--other=true'], {
boolean: 'boool'
});
t.same(parsed.boool, true);
t.same(parsed.other, 'true');
parsed = parse(['--boool', '--other=false'], {
boolean: 'boool'
});
t.same(parsed.boool, true);
t.same(parsed.other, 'false');
t.end();
});

View file

@ -1,9 +0,0 @@
var parse = require('../');
var test = require('tape');
test('parse with modifier functions' , function (t) {
t.plan(1);
var argv = parse([ '-b', '123' ], { boolean: 'b' });
t.deepEqual(argv, { b: true, _: ['123'] });
});

View file

@ -1,67 +0,0 @@
var parse = require('../');
var test = require('tape');
test('numeric short args', function (t) {
t.plan(2);
t.deepEqual(parse([ '-n123' ]), { n: 123, _: [] });
t.deepEqual(
parse([ '-123', '456' ]),
{ 1: true, 2: true, 3: 456, _: [] }
);
});
test('short', function (t) {
t.deepEqual(
parse([ '-b' ]),
{ b : true, _ : [] },
'short boolean'
);
t.deepEqual(
parse([ 'foo', 'bar', 'baz' ]),
{ _ : [ 'foo', 'bar', 'baz' ] },
'bare'
);
t.deepEqual(
parse([ '-cats' ]),
{ c : true, a : true, t : true, s : true, _ : [] },
'group'
);
t.deepEqual(
parse([ '-cats', 'meow' ]),
{ c : true, a : true, t : true, s : 'meow', _ : [] },
'short group next'
);
t.deepEqual(
parse([ '-h', 'localhost' ]),
{ h : 'localhost', _ : [] },
'short capture'
);
t.deepEqual(
parse([ '-h', 'localhost', '-p', '555' ]),
{ h : 'localhost', p : 555, _ : [] },
'short captures'
);
t.end();
});
test('mixed short bool and capture', function (t) {
t.same(
parse([ '-h', 'localhost', '-fp', '555', 'script.js' ]),
{
f : true, p : 555, h : 'localhost',
_ : [ 'script.js' ]
}
);
t.end();
});
test('short and long', function (t) {
t.deepEqual(
parse([ '-h', 'localhost', '-fp', '555', 'script.js' ]),
{
f : true, p : 555, h : 'localhost',
_ : [ 'script.js' ]
}
);
t.end();
});

View file

@ -1,8 +0,0 @@
var parse = require('../');
var test = require('tape');
test('whitespace should be whitespace' , function (t) {
t.plan(1);
var x = parse([ '-x', '\t' ]).x;
t.equal(x, '\t');
});

View file

@ -1,8 +0,0 @@
language: node_js
node_js:
- "0.8"
- "0.10"
- "0.12"
- "iojs"
before_install:
- npm install -g npm@~1.4.6

View file

@ -1,21 +0,0 @@
Copyright 2010 James Halliday (mail@substack.net)
This project is free software released under the MIT/X11 license:
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View file

@ -1,33 +0,0 @@
#!/usr/bin/env node
var mkdirp = require('../');
var minimist = require('minimist');
var fs = require('fs');
var argv = minimist(process.argv.slice(2), {
alias: { m: 'mode', h: 'help' },
string: [ 'mode' ]
});
if (argv.help) {
fs.createReadStream(__dirname + '/usage.txt').pipe(process.stdout);
return;
}
var paths = argv._.slice();
var mode = argv.mode ? parseInt(argv.mode, 8) : undefined;
(function next () {
if (paths.length === 0) return;
var p = paths.shift();
if (mode === undefined) mkdirp(p, cb)
else mkdirp(p, mode, cb)
function cb (err) {
if (err) {
console.error(err.message);
process.exit(1);
}
else next();
}
})();

View file

@ -1,12 +0,0 @@
usage: mkdirp [DIR1,DIR2..] {OPTIONS}
Create each supplied directory including any necessary parent directories that
don't yet exist.
If the directory already exists, do nothing.
OPTIONS are:
-m, --mode If a directory needs to be created, set the mode as an octal
permission string.

View file

@ -1,6 +0,0 @@
var mkdirp = require('mkdirp');
mkdirp('/tmp/foo/bar/baz', function (err) {
if (err) console.error(err)
else console.log('pow!')
});

View file

@ -1,98 +0,0 @@
var path = require('path');
var fs = require('fs');
var _0777 = parseInt('0777', 8);
module.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP;
function mkdirP (p, opts, f, made) {
if (typeof opts === 'function') {
f = opts;
opts = {};
}
else if (!opts || typeof opts !== 'object') {
opts = { mode: opts };
}
var mode = opts.mode;
var xfs = opts.fs || fs;
if (mode === undefined) {
mode = _0777 & (~process.umask());
}
if (!made) made = null;
var cb = f || function () {};
p = path.resolve(p);
xfs.mkdir(p, mode, function (er) {
if (!er) {
made = made || p;
return cb(null, made);
}
switch (er.code) {
case 'ENOENT':
mkdirP(path.dirname(p), opts, function (er, made) {
if (er) cb(er, made);
else mkdirP(p, opts, cb, made);
});
break;
// In the case of any other error, just see if there's a dir
// there already. If so, then hooray! If not, then something
// is borked.
default:
xfs.stat(p, function (er2, stat) {
// if the stat fails, then that's super weird.
// let the original error be the failure reason.
if (er2 || !stat.isDirectory()) cb(er, made)
else cb(null, made);
});
break;
}
});
}
mkdirP.sync = function sync (p, opts, made) {
if (!opts || typeof opts !== 'object') {
opts = { mode: opts };
}
var mode = opts.mode;
var xfs = opts.fs || fs;
if (mode === undefined) {
mode = _0777 & (~process.umask());
}
if (!made) made = null;
p = path.resolve(p);
try {
xfs.mkdirSync(p, mode);
made = made || p;
}
catch (err0) {
switch (err0.code) {
case 'ENOENT' :
made = sync(path.dirname(p), opts, made);
sync(p, opts, made);
break;
// In the case of any other error, just see if there's a dir
// there already. If so, then hooray! If not, then something
// is borked.
default:
var stat;
try {
stat = xfs.statSync(p);
}
catch (err1) {
throw err0;
}
if (!stat.isDirectory()) throw err0;
break;
}
}
return made;
};

View file

@ -1,62 +0,0 @@
{
"_from": "mkdirp@^0.5.0",
"_id": "mkdirp@0.5.1",
"_inBundle": false,
"_integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"_location": "/mkdirp",
"_phantomChildren": {},
"_requested": {
"type": "range",
"registry": true,
"raw": "mkdirp@^0.5.0",
"name": "mkdirp",
"escapedName": "mkdirp",
"rawSpec": "^0.5.0",
"saveSpec": null,
"fetchSpec": "^0.5.0"
},
"_requiredBy": [
"/filesaver"
],
"_resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"_shasum": "30057438eac6cf7f8c4767f38648d6697d75c903",
"_spec": "mkdirp@^0.5.0",
"_where": "/home/st/dev/keycloak/themes/src/main/node_modules/filesaver",
"author": {
"name": "James Halliday",
"email": "mail@substack.net",
"url": "http://substack.net"
},
"bin": {
"mkdirp": "bin/cmd.js"
},
"bugs": {
"url": "https://github.com/substack/node-mkdirp/issues"
},
"bundleDependencies": false,
"dependencies": {
"minimist": "0.0.8"
},
"deprecated": false,
"description": "Recursively mkdir, like `mkdir -p`",
"devDependencies": {
"mock-fs": "2 >=2.7.0",
"tap": "1"
},
"homepage": "https://github.com/substack/node-mkdirp#readme",
"keywords": [
"mkdir",
"directory"
],
"license": "MIT",
"main": "index.js",
"name": "mkdirp",
"repository": {
"type": "git",
"url": "git+https://github.com/substack/node-mkdirp.git"
},
"scripts": {
"test": "tap test/*.js"
},
"version": "0.5.1"
}

View file

@ -1,100 +0,0 @@
# mkdirp
Like `mkdir -p`, but in node.js!
[![build status](https://secure.travis-ci.org/substack/node-mkdirp.png)](http://travis-ci.org/substack/node-mkdirp)
# example
## pow.js
```js
var mkdirp = require('mkdirp');
mkdirp('/tmp/foo/bar/baz', function (err) {
if (err) console.error(err)
else console.log('pow!')
});
```
Output
```
pow!
```
And now /tmp/foo/bar/baz exists, huzzah!
# methods
```js
var mkdirp = require('mkdirp');
```
## mkdirp(dir, opts, cb)
Create a new directory and any necessary subdirectories at `dir` with octal
permission string `opts.mode`. If `opts` is a non-object, it will be treated as
the `opts.mode`.
If `opts.mode` isn't specified, it defaults to `0777 & (~process.umask())`.
`cb(err, made)` fires with the error or the first directory `made`
that had to be created, if any.
You can optionally pass in an alternate `fs` implementation by passing in
`opts.fs`. Your implementation should have `opts.fs.mkdir(path, mode, cb)` and
`opts.fs.stat(path, cb)`.
## mkdirp.sync(dir, opts)
Synchronously create a new directory and any necessary subdirectories at `dir`
with octal permission string `opts.mode`. If `opts` is a non-object, it will be
treated as the `opts.mode`.
If `opts.mode` isn't specified, it defaults to `0777 & (~process.umask())`.
Returns the first directory that had to be created, if any.
You can optionally pass in an alternate `fs` implementation by passing in
`opts.fs`. Your implementation should have `opts.fs.mkdirSync(path, mode)` and
`opts.fs.statSync(path)`.
# usage
This package also ships with a `mkdirp` command.
```
usage: mkdirp [DIR1,DIR2..] {OPTIONS}
Create each supplied directory including any necessary parent directories that
don't yet exist.
If the directory already exists, do nothing.
OPTIONS are:
-m, --mode If a directory needs to be created, set the mode as an octal
permission string.
```
# install
With [npm](http://npmjs.org) do:
```
npm install mkdirp
```
to get the library, or
```
npm install -g mkdirp
```
to get the command.
# license
MIT

View file

@ -1,41 +0,0 @@
var mkdirp = require('../').mkdirp;
var path = require('path');
var fs = require('fs');
var test = require('tap').test;
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
var _0744 = parseInt('0744', 8);
var ps = [ '', 'tmp' ];
for (var i = 0; i < 25; i++) {
var dir = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
ps.push(dir);
}
var file = ps.join('/');
test('chmod-pre', function (t) {
var mode = _0744
mkdirp(file, mode, function (er) {
t.ifError(er, 'should not error');
fs.stat(file, function (er, stat) {
t.ifError(er, 'should exist');
t.ok(stat && stat.isDirectory(), 'should be directory');
t.equal(stat && stat.mode & _0777, mode, 'should be 0744');
t.end();
});
});
});
test('chmod', function (t) {
var mode = _0755
mkdirp(file, mode, function (er) {
t.ifError(er, 'should not error');
fs.stat(file, function (er, stat) {
t.ifError(er, 'should exist');
t.ok(stat && stat.isDirectory(), 'should be directory');
t.end();
});
});
});

View file

@ -1,38 +0,0 @@
var mkdirp = require('../').mkdirp;
var path = require('path');
var fs = require('fs');
var test = require('tap').test;
var _0755 = parseInt('0755', 8);
var ps = [ '', 'tmp' ];
for (var i = 0; i < 25; i++) {
var dir = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
ps.push(dir);
}
var file = ps.join('/');
// a file in the way
var itw = ps.slice(0, 3).join('/');
test('clobber-pre', function (t) {
console.error("about to write to "+itw)
fs.writeFileSync(itw, 'I AM IN THE WAY, THE TRUTH, AND THE LIGHT.');
fs.stat(itw, function (er, stat) {
t.ifError(er)
t.ok(stat && stat.isFile(), 'should be file')
t.end()
})
})
test('clobber', function (t) {
t.plan(2);
mkdirp(file, _0755, function (err) {
t.ok(err);
t.equal(err.code, 'ENOTDIR');
t.end();
});
});

View file

@ -1,28 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var fs = require('fs');
var exists = fs.exists || path.exists;
var test = require('tap').test;
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
test('woo', function (t) {
t.plan(5);
var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var file = '/tmp/' + [x,y,z].join('/');
mkdirp(file, _0755, function (err) {
t.ifError(err);
exists(file, function (ex) {
t.ok(ex, 'file created');
fs.stat(file, function (err, stat) {
t.ifError(err);
t.equal(stat.mode & _0777, _0755);
t.ok(stat.isDirectory(), 'target not a directory');
})
})
});
});

View file

@ -1,29 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var test = require('tap').test;
var mockfs = require('mock-fs');
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
test('opts.fs', function (t) {
t.plan(5);
var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var file = '/beep/boop/' + [x,y,z].join('/');
var xfs = mockfs.fs();
mkdirp(file, { fs: xfs, mode: _0755 }, function (err) {
t.ifError(err);
xfs.exists(file, function (ex) {
t.ok(ex, 'created file');
xfs.stat(file, function (err, stat) {
t.ifError(err);
t.equal(stat.mode & _0777, _0755);
t.ok(stat.isDirectory(), 'target not a directory');
});
});
});
});

View file

@ -1,27 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var test = require('tap').test;
var mockfs = require('mock-fs');
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
test('opts.fs sync', function (t) {
t.plan(4);
var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var file = '/beep/boop/' + [x,y,z].join('/');
var xfs = mockfs.fs();
mkdirp.sync(file, { fs: xfs, mode: _0755 });
xfs.exists(file, function (ex) {
t.ok(ex, 'created file');
xfs.stat(file, function (err, stat) {
t.ifError(err);
t.equal(stat.mode & _0777, _0755);
t.ok(stat.isDirectory(), 'target not a directory');
});
});
});

View file

@ -1,32 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var fs = require('fs');
var exists = fs.exists || path.exists;
var test = require('tap').test;
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
test('async perm', function (t) {
t.plan(5);
var file = '/tmp/' + (Math.random() * (1<<30)).toString(16);
mkdirp(file, _0755, function (err) {
t.ifError(err);
exists(file, function (ex) {
t.ok(ex, 'file created');
fs.stat(file, function (err, stat) {
t.ifError(err);
t.equal(stat.mode & _0777, _0755);
t.ok(stat.isDirectory(), 'target not a directory');
})
})
});
});
test('async root perm', function (t) {
mkdirp('/tmp', _0755, function (err) {
if (err) t.fail(err);
t.end();
});
t.end();
});

View file

@ -1,36 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var fs = require('fs');
var exists = fs.exists || path.exists;
var test = require('tap').test;
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
test('sync perm', function (t) {
t.plan(4);
var file = '/tmp/' + (Math.random() * (1<<30)).toString(16) + '.json';
mkdirp.sync(file, _0755);
exists(file, function (ex) {
t.ok(ex, 'file created');
fs.stat(file, function (err, stat) {
t.ifError(err);
t.equal(stat.mode & _0777, _0755);
t.ok(stat.isDirectory(), 'target not a directory');
});
});
});
test('sync root perm', function (t) {
t.plan(3);
var file = '/tmp';
mkdirp.sync(file, _0755);
exists(file, function (ex) {
t.ok(ex, 'file created');
fs.stat(file, function (err, stat) {
t.ifError(err);
t.ok(stat.isDirectory(), 'target not a directory');
})
});
});

View file

@ -1,37 +0,0 @@
var mkdirp = require('../').mkdirp;
var path = require('path');
var fs = require('fs');
var exists = fs.exists || path.exists;
var test = require('tap').test;
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
test('race', function (t) {
t.plan(10);
var ps = [ '', 'tmp' ];
for (var i = 0; i < 25; i++) {
var dir = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
ps.push(dir);
}
var file = ps.join('/');
var res = 2;
mk(file);
mk(file);
function mk (file, cb) {
mkdirp(file, _0755, function (err) {
t.ifError(err);
exists(file, function (ex) {
t.ok(ex, 'file created');
fs.stat(file, function (err, stat) {
t.ifError(err);
t.equal(stat.mode & _0777, _0755);
t.ok(stat.isDirectory(), 'target not a directory');
});
})
});
}
});

View file

@ -1,32 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var fs = require('fs');
var exists = fs.exists || path.exists;
var test = require('tap').test;
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
test('rel', function (t) {
t.plan(5);
var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var cwd = process.cwd();
process.chdir('/tmp');
var file = [x,y,z].join('/');
mkdirp(file, _0755, function (err) {
t.ifError(err);
exists(file, function (ex) {
t.ok(ex, 'file created');
fs.stat(file, function (err, stat) {
t.ifError(err);
process.chdir(cwd);
t.equal(stat.mode & _0777, _0755);
t.ok(stat.isDirectory(), 'target not a directory');
})
})
});
});

View file

@ -1,25 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var fs = require('fs');
var test = require('tap').test;
test('return value', function (t) {
t.plan(4);
var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var file = '/tmp/' + [x,y,z].join('/');
// should return the first dir created.
// By this point, it would be profoundly surprising if /tmp didn't
// already exist, since every other test makes things in there.
mkdirp(file, function (err, made) {
t.ifError(err);
t.equal(made, '/tmp/' + x);
mkdirp(file, function (err, made) {
t.ifError(err);
t.equal(made, null);
});
});
});

View file

@ -1,24 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var fs = require('fs');
var test = require('tap').test;
test('return value', function (t) {
t.plan(2);
var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var file = '/tmp/' + [x,y,z].join('/');
// should return the first dir created.
// By this point, it would be profoundly surprising if /tmp didn't
// already exist, since every other test makes things in there.
// Note that this will throw on failure, which will fail the test.
var made = mkdirp.sync(file);
t.equal(made, '/tmp/' + x);
// making the same file again should have no effect.
made = mkdirp.sync(file);
t.equal(made, null);
});

View file

@ -1,19 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var fs = require('fs');
var test = require('tap').test;
var _0755 = parseInt('0755', 8);
test('root', function (t) {
// '/' on unix, 'c:/' on windows.
var file = path.resolve('/');
mkdirp(file, _0755, function (err) {
if (err) throw err
fs.stat(file, function (er, stat) {
if (er) throw er
t.ok(stat.isDirectory(), 'target is a directory');
t.end();
})
});
});

View file

@ -1,32 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var fs = require('fs');
var exists = fs.exists || path.exists;
var test = require('tap').test;
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
test('sync', function (t) {
t.plan(4);
var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var file = '/tmp/' + [x,y,z].join('/');
try {
mkdirp.sync(file, _0755);
} catch (err) {
t.fail(err);
return t.end();
}
exists(file, function (ex) {
t.ok(ex, 'file created');
fs.stat(file, function (err, stat) {
t.ifError(err);
t.equal(stat.mode & _0777, _0755);
t.ok(stat.isDirectory(), 'target not a directory');
});
});
});

View file

@ -1,28 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var fs = require('fs');
var exists = fs.exists || path.exists;
var test = require('tap').test;
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
test('implicit mode from umask', function (t) {
t.plan(5);
var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var file = '/tmp/' + [x,y,z].join('/');
mkdirp(file, function (err) {
t.ifError(err);
exists(file, function (ex) {
t.ok(ex, 'file created');
fs.stat(file, function (err, stat) {
t.ifError(err);
t.equal(stat.mode & _0777, _0777 & (~process.umask()));
t.ok(stat.isDirectory(), 'target not a directory');
});
})
});
});

View file

@ -1,32 +0,0 @@
var mkdirp = require('../');
var path = require('path');
var fs = require('fs');
var exists = fs.exists || path.exists;
var test = require('tap').test;
var _0777 = parseInt('0777', 8);
var _0755 = parseInt('0755', 8);
test('umask sync modes', function (t) {
t.plan(4);
var x = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var y = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var z = Math.floor(Math.random() * Math.pow(16,4)).toString(16);
var file = '/tmp/' + [x,y,z].join('/');
try {
mkdirp.sync(file);
} catch (err) {
t.fail(err);
return t.end();
}
exists(file, function (ex) {
t.ok(ex, 'file created');
fs.stat(file, function (err, stat) {
t.ifError(err);
t.equal(stat.mode & _0777, (_0777 & (~process.umask())));
t.ok(stat.isDirectory(), 'target not a directory');
});
});
});

View file

@ -1,788 +0,0 @@
{
"name": "keycloak-admin-console",
"version": "1.0.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
"angular": {
"version": "1.6.10",
"resolved": "https://registry.npmjs.org/angular/-/angular-1.6.10.tgz",
"integrity": "sha512-PCZ5/hVdvPQiYyH0VwsPjrErPHRcITnaXxhksceOXgtJeesKHLA7KDu4X/yvcAi+1zdGgGF+9pDxkJvghXI9Wg=="
},
"angular-cookies": {
"version": "1.6.10",
"resolved": "https://registry.npmjs.org/angular-cookies/-/angular-cookies-1.6.10.tgz",
"integrity": "sha512-ADfbqXLhwcaecAiWIaxpl8XWFJgWsrDl/ksSEkYm5dSoXHYlj3HKlAhPbjBv/foYS7pdI0apmSGHWrBPqdjF/g=="
},
"angular-loader": {
"version": "1.6.10",
"resolved": "https://registry.npmjs.org/angular-loader/-/angular-loader-1.6.10.tgz",
"integrity": "sha512-13435aXnWj4/46Wl1o1n8BGrqwv9DyeAKiBCQX9OLYBkL6C4GwhSltemj4SI9B84S6NS/8v3snXBGSoFuDMTBA=="
},
"angular-resource": {
"version": "1.6.10",
"resolved": "https://registry.npmjs.org/angular-resource/-/angular-resource-1.6.10.tgz",
"integrity": "sha512-jrYXUGPtpv/lTBlYZ6HZefIV6Lb+6e1HUavBPg9TSzW7s4zYRBWzMj6vMg8gZzVjWdH/nYBWfilV0qfnmZSI+A=="
},
"angular-route": {
"version": "1.6.10",
"resolved": "https://registry.npmjs.org/angular-route/-/angular-route-1.6.10.tgz",
"integrity": "sha512-BxjrjQNCbVqQKyB3nHjNI8zSUwhnQWFZnSBv5BZ336VbMKhWu74ad5xpFx5VMk6WyHlmMGDoRagzB6AKkRcvKA=="
},
"angular-sanitize": {
"version": "1.6.10",
"resolved": "https://registry.npmjs.org/angular-sanitize/-/angular-sanitize-1.6.10.tgz",
"integrity": "sha512-01i1Xoq9ykUrsoYQMSB6dWZmPp9Df5hfCqMAGGzJBWZ7L2WY0OtUphdI0YvR8ZF9lAsWtGNtsEFilObjq5nTgQ=="
},
"angular-translate": {
"version": "2.15.1",
"resolved": "https://registry.npmjs.org/angular-translate/-/angular-translate-2.15.1.tgz",
"integrity": "sha1-kg99K4d4GeHA+ogXgbm2dfNkgM4=",
"requires": {
"angular": ">=1.2.26 <=1.6"
}
},
"angular-translate-loader-url": {
"version": "2.15.1",
"resolved": "https://registry.npmjs.org/angular-translate-loader-url/-/angular-translate-loader-url-2.15.1.tgz",
"integrity": "sha1-MdZ4WlnYE/59ihmQ2L4Whk/1niQ=",
"requires": {
"angular-translate": "~2.15.1"
}
},
"angular-treeview": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/angular-treeview/-/angular-treeview-0.1.5.tgz",
"integrity": "sha1-7Hl9TQAbIBcsmD5l2FXrzYFStPo="
},
"angular-ui-select2": {
"version": "0.0.5",
"resolved": "https://registry.npmjs.org/angular-ui-select2/-/angular-ui-select2-0.0.5.tgz",
"integrity": "sha1-FedkOv1pypBj1AXrO+L5XdXsh/U="
},
"autofill-event": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/autofill-event/-/autofill-event-0.0.1.tgz",
"integrity": "sha1-w4LPmJshth/0oSs1l+GUNHHTz3o="
},
"bootstrap": {
"version": "3.4.1",
"resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.4.1.tgz",
"integrity": "sha512-yN5oZVmRCwe5aKwzRj6736nSmKDX7pLYwsXiCj/EYmo16hODaBiT4En5btW/jhBF/seV+XMx3aYwukYC3A49DA=="
},
"filesaver": {
"version": "0.0.13",
"resolved": "https://registry.npmjs.org/filesaver/-/filesaver-0.0.13.tgz",
"integrity": "sha1-+psqwTcdQ2/l7ckoXtmY0eJ4K+4=",
"requires": {
"mkdirp": "^0.5.0",
"safename": "0.0.4"
}
},
"font-awesome": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz",
"integrity": "sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM="
},
"jquery": {
"version": "3.4.1",
"resolved": "https://registry.npmjs.org/jquery/-/jquery-3.4.1.tgz",
"integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw=="
},
"minimist": {
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
},
"mkdirp": {
"version": "0.5.1",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"requires": {
"minimist": "0.0.8"
}
},
"ng-file-upload": {
"version": "12.2.13",
"resolved": "https://registry.npmjs.org/ng-file-upload/-/ng-file-upload-12.2.13.tgz",
"integrity": "sha1-AYAPOHLlJvlTEPhHfpnk8S0NjRQ="
},
"patternfly": {
"version": "3.41.6",
"resolved": "https://registry.npmjs.org/patternfly/-/patternfly-3.41.6.tgz",
"integrity": "sha1-4GDPda0Ri8UYWaBdjnMGHIgER+8=",
"requires": {
"bootstrap": "~3.3.7",
"bootstrap-datepicker": "^1.7.1",
"bootstrap-sass": "^3.3.7",
"bootstrap-select": "^1.12.2",
"bootstrap-slider": "^9.9.0",
"bootstrap-switch": "~3.3.4",
"bootstrap-touchspin": "~3.1.1",
"c3": "~0.4.11",
"d3": "~3.5.17",
"datatables.net": "^1.10.15",
"datatables.net-colreorder": "^1.4.1",
"datatables.net-colreorder-bs": "~1.3.2",
"datatables.net-select": "~1.2.0",
"drmonty-datatables-colvis": "~1.1.2",
"eonasdan-bootstrap-datetimepicker": "^4.17.47",
"font-awesome": "^4.7.0",
"font-awesome-sass": "^4.7.0",
"google-code-prettify": "~1.0.5",
"jquery": "~3.2.1",
"jquery-match-height": "^0.7.2",
"moment": "^2.19.1",
"moment-timezone": "^0.4.1",
"patternfly-bootstrap-combobox": "~1.1.7",
"patternfly-bootstrap-treeview": "~2.1.0"
},
"dependencies": {
"bootstrap": {
"version": "3.3.7",
"resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.7.tgz",
"integrity": "sha1-WjiTlFSfIzMIdaOxUGVldPip63E="
},
"bootstrap-datepicker": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/bootstrap-datepicker/-/bootstrap-datepicker-1.7.1.tgz",
"integrity": "sha1-Tuf680iI2+x4NPv52+fEJ34B3a8=",
"optional": true,
"requires": {
"jquery": ">=1.7.1 <4.0.0"
}
},
"bootstrap-sass": {
"version": "3.3.7",
"resolved": "https://registry.npmjs.org/bootstrap-sass/-/bootstrap-sass-3.3.7.tgz",
"integrity": "sha1-ZZbHq0D2Y3OTMjqwvIDQZPxjBJg=",
"optional": true
},
"bootstrap-select": {
"version": "1.12.4",
"resolved": "https://registry.npmjs.org/bootstrap-select/-/bootstrap-select-1.12.4.tgz",
"integrity": "sha1-fxXTwM6XiGjZwJxw+WYk9V+gLuE=",
"optional": true,
"requires": {
"jquery": ">=1.8"
}
},
"bootstrap-slider": {
"version": "9.10.0",
"resolved": "https://registry.npmjs.org/bootstrap-slider/-/bootstrap-slider-9.10.0.tgz",
"integrity": "sha1-EQPWvADPv6jPyaJZmrUYxVZD2j8=",
"optional": true
},
"bootstrap-switch": {
"version": "3.3.4",
"resolved": "https://registry.npmjs.org/bootstrap-switch/-/bootstrap-switch-3.3.4.tgz",
"integrity": "sha1-cOCusqh3wNx2aZHeEI4hcPwpov8=",
"optional": true
},
"bootstrap-touchspin": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/bootstrap-touchspin/-/bootstrap-touchspin-3.1.1.tgz",
"integrity": "sha1-l3nerHKq9Xfl52K4USx0fIcdlZc=",
"optional": true
},
"c3": {
"version": "0.4.18",
"resolved": "https://registry.npmjs.org/c3/-/c3-0.4.18.tgz",
"integrity": "sha512-37TiFeCrbe69gg7SxFpTBOLDwulnk+opKp1AFDi43mONtErpRoUIZfGSimGiSYQmNu6Zh9W2yNOx0066UikqSg==",
"optional": true,
"requires": {
"d3": "~3.5.0"
}
},
"d3": {
"version": "3.5.17",
"resolved": "https://registry.npmjs.org/d3/-/d3-3.5.17.tgz",
"integrity": "sha1-vEZ0gAQ3iyGjYMn8fPUjF5B2L7g=",
"optional": true
},
"datatables.net": {
"version": "1.10.16",
"resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.16.tgz",
"integrity": "sha1-SwUtEIKCQmG2ju2dInQbcR09JGk=",
"optional": true,
"requires": {
"jquery": ">=1.7"
}
},
"datatables.net-bs": {
"version": "1.10.16",
"resolved": "https://registry.npmjs.org/datatables.net-bs/-/datatables.net-bs-1.10.16.tgz",
"integrity": "sha1-sIVPWzdPcTrj20FWx86op2DD3nY=",
"optional": true,
"requires": {
"datatables.net": "1.10.16",
"jquery": ">=1.7"
}
},
"datatables.net-colreorder": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/datatables.net-colreorder/-/datatables.net-colreorder-1.4.1.tgz",
"integrity": "sha1-OJ5LGidOIDl5o3GNhsWITQoBZrY=",
"optional": true,
"requires": {
"datatables.net": "^1.10.15",
"jquery": ">=1.7"
}
},
"datatables.net-colreorder-bs": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/datatables.net-colreorder-bs/-/datatables.net-colreorder-bs-1.3.3.tgz",
"integrity": "sha1-Op3LCN7r612FQHlZHgbkk615OlM=",
"optional": true,
"requires": {
"datatables.net-bs": ">=1.10.9",
"datatables.net-colreorder": ">=1.2.0",
"jquery": ">=1.7"
}
},
"datatables.net-select": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-1.2.3.tgz",
"integrity": "sha1-fCcugXMqQSFOEBtlb1Ul037Dcog=",
"optional": true,
"requires": {
"datatables.net": "^1.10.15",
"jquery": ">=1.7"
}
},
"drmonty-datatables-colvis": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/drmonty-datatables-colvis/-/drmonty-datatables-colvis-1.1.2.tgz",
"integrity": "sha1-lque37SGQ8wu3aP4e4iTPN7oEnw=",
"optional": true,
"requires": {
"jquery": ">=1.7.0"
}
},
"eonasdan-bootstrap-datetimepicker": {
"version": "4.17.47",
"resolved": "https://registry.npmjs.org/eonasdan-bootstrap-datetimepicker/-/eonasdan-bootstrap-datetimepicker-4.17.47.tgz",
"integrity": "sha1-ekmXAEQGUnbnll79Fvgic1IZ5zU=",
"optional": true,
"requires": {
"bootstrap": "^3.3",
"jquery": "^1.8.3 || ^2.0 || ^3.0",
"moment": "^2.10",
"moment-timezone": "^0.4.0"
}
},
"font-awesome": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz",
"integrity": "sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM="
},
"font-awesome-sass": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/font-awesome-sass/-/font-awesome-sass-4.7.0.tgz",
"integrity": "sha1-TtppPpFQCc4Asijglk3F7Km8NOE=",
"optional": true
},
"google-code-prettify": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/google-code-prettify/-/google-code-prettify-1.0.5.tgz",
"integrity": "sha1-n0d/Ik2/piNy5e+AOn4VdBBAAIQ=",
"optional": true
},
"jquery": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/jquery/-/jquery-3.2.1.tgz",
"integrity": "sha1-XE2d5lKvbNCncBVKYxu6ErAVx4c="
},
"jquery-match-height": {
"version": "0.7.2",
"resolved": "https://registry.npmjs.org/jquery-match-height/-/jquery-match-height-0.7.2.tgz",
"integrity": "sha1-+NnzulMU2qsQnPB0CGdL4gS+Xw4=",
"optional": true
},
"moment": {
"version": "2.20.1",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.20.1.tgz",
"integrity": "sha512-Yh9y73JRljxW5QxN08Fner68eFLxM5ynNOAw2LbIB1YAGeQzZT8QFSUvkAz609Zf+IHhhaUxqZK8dG3W/+HEvg==",
"optional": true
},
"moment-timezone": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.4.1.tgz",
"integrity": "sha1-gfWYw61eIs2teWtn7NjYjQ9bqgY=",
"optional": true,
"requires": {
"moment": ">= 2.6.0"
}
},
"patternfly-bootstrap-combobox": {
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/patternfly-bootstrap-combobox/-/patternfly-bootstrap-combobox-1.1.7.tgz",
"integrity": "sha1-al48zRFwwhs8S0qhaKdBPh3btuE=",
"optional": true
},
"patternfly-bootstrap-treeview": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/patternfly-bootstrap-treeview/-/patternfly-bootstrap-treeview-2.1.5.tgz",
"integrity": "sha1-TCnyWC+4ovKPCpKPLw0yTSHWmQ0=",
"optional": true,
"requires": {
"bootstrap": "3.3.x",
"jquery": ">= 2.1.x"
}
}
}
},
"rcue": {
"version": "3.41.6",
"resolved": "https://registry.npmjs.org/rcue/-/rcue-3.41.6.tgz",
"integrity": "sha1-8t224IWD1e1jlklbX5AkhHWmwfc=",
"requires": {
"bootstrap": "~3.3.7",
"bootstrap-datepicker": "^1.7.1",
"bootstrap-select": "^1.12.2",
"bootstrap-slider": "^9.9.0",
"bootstrap-switch": "~3.3.4",
"bootstrap-touchspin": "~3.1.1",
"c3": "~0.4.11",
"d3": "~3.5.17",
"datatables.net": "^1.10.15",
"datatables.net-colreorder": "^1.4.1",
"datatables.net-colreorder-bs": "~1.3.2",
"datatables.net-select": "~1.2.0",
"drmonty-datatables-colvis": "~1.1.2",
"eonasdan-bootstrap-datetimepicker": "^4.17.47",
"font-awesome": "^4.7.0",
"google-code-prettify": "~1.0.5",
"jquery": "~3.2.1",
"jquery-match-height": "^0.7.2",
"moment": "^2.19.1",
"moment-timezone": "^0.4.1",
"patternfly": "3.41.6",
"patternfly-bootstrap-combobox": "~1.1.7",
"patternfly-bootstrap-treeview": "~2.1.0"
},
"dependencies": {
"bootstrap": {
"version": "3.3.7",
"resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.7.tgz",
"integrity": "sha1-WjiTlFSfIzMIdaOxUGVldPip63E="
},
"bootstrap-datepicker": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/bootstrap-datepicker/-/bootstrap-datepicker-1.7.1.tgz",
"integrity": "sha1-Tuf680iI2+x4NPv52+fEJ34B3a8=",
"optional": true,
"requires": {
"jquery": ">=1.7.1 <4.0.0"
}
},
"bootstrap-select": {
"version": "1.12.4",
"resolved": "https://registry.npmjs.org/bootstrap-select/-/bootstrap-select-1.12.4.tgz",
"integrity": "sha1-fxXTwM6XiGjZwJxw+WYk9V+gLuE=",
"optional": true,
"requires": {
"jquery": ">=1.8"
}
},
"bootstrap-slider": {
"version": "9.10.0",
"resolved": "https://registry.npmjs.org/bootstrap-slider/-/bootstrap-slider-9.10.0.tgz",
"integrity": "sha1-EQPWvADPv6jPyaJZmrUYxVZD2j8=",
"optional": true
},
"bootstrap-switch": {
"version": "3.3.4",
"resolved": "https://registry.npmjs.org/bootstrap-switch/-/bootstrap-switch-3.3.4.tgz",
"integrity": "sha1-cOCusqh3wNx2aZHeEI4hcPwpov8=",
"optional": true
},
"bootstrap-touchspin": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/bootstrap-touchspin/-/bootstrap-touchspin-3.1.1.tgz",
"integrity": "sha1-l3nerHKq9Xfl52K4USx0fIcdlZc=",
"optional": true
},
"c3": {
"version": "0.4.21",
"resolved": "https://registry.npmjs.org/c3/-/c3-0.4.21.tgz",
"integrity": "sha512-UZt0RWxVDJJrAGBojz2OJ9v88uDIP+WMVrydXCSvYM+bX2CyL+tTEA7gD5htzZeVMLcBYc7DZpDnskdH2fEOdw==",
"optional": true,
"requires": {
"d3": "~3.5.0"
}
},
"d3": {
"version": "3.5.17",
"resolved": "https://registry.npmjs.org/d3/-/d3-3.5.17.tgz",
"integrity": "sha1-vEZ0gAQ3iyGjYMn8fPUjF5B2L7g=",
"optional": true
},
"datatables.net": {
"version": "1.10.16",
"resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.16.tgz",
"integrity": "sha1-SwUtEIKCQmG2ju2dInQbcR09JGk=",
"optional": true,
"requires": {
"jquery": ">=1.7"
}
},
"datatables.net-bs": {
"version": "1.10.16",
"resolved": "https://registry.npmjs.org/datatables.net-bs/-/datatables.net-bs-1.10.16.tgz",
"integrity": "sha1-sIVPWzdPcTrj20FWx86op2DD3nY=",
"optional": true,
"requires": {
"datatables.net": "1.10.16",
"jquery": ">=1.7"
}
},
"datatables.net-colreorder": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/datatables.net-colreorder/-/datatables.net-colreorder-1.4.1.tgz",
"integrity": "sha1-OJ5LGidOIDl5o3GNhsWITQoBZrY=",
"optional": true,
"requires": {
"datatables.net": "^1.10.15",
"jquery": ">=1.7"
}
},
"datatables.net-colreorder-bs": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/datatables.net-colreorder-bs/-/datatables.net-colreorder-bs-1.3.3.tgz",
"integrity": "sha1-Op3LCN7r612FQHlZHgbkk615OlM=",
"optional": true,
"requires": {
"datatables.net-bs": ">=1.10.9",
"datatables.net-colreorder": ">=1.2.0",
"jquery": ">=1.7"
}
},
"datatables.net-select": {
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-1.2.5.tgz",
"integrity": "sha1-T3ZGabRk1VdqWcV2wSUKXQaaouk=",
"optional": true,
"requires": {
"datatables.net": "^1.10.15",
"jquery": ">=1.7"
}
},
"drmonty-datatables-colvis": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/drmonty-datatables-colvis/-/drmonty-datatables-colvis-1.1.2.tgz",
"integrity": "sha1-lque37SGQ8wu3aP4e4iTPN7oEnw=",
"optional": true,
"requires": {
"jquery": ">=1.7.0"
}
},
"eonasdan-bootstrap-datetimepicker": {
"version": "4.17.47",
"resolved": "https://registry.npmjs.org/eonasdan-bootstrap-datetimepicker/-/eonasdan-bootstrap-datetimepicker-4.17.47.tgz",
"integrity": "sha1-ekmXAEQGUnbnll79Fvgic1IZ5zU=",
"optional": true,
"requires": {
"bootstrap": "^3.3",
"jquery": "^1.8.3 || ^2.0 || ^3.0",
"moment": "^2.10",
"moment-timezone": "^0.4.0"
}
},
"font-awesome": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz",
"integrity": "sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM="
},
"google-code-prettify": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/google-code-prettify/-/google-code-prettify-1.0.5.tgz",
"integrity": "sha1-n0d/Ik2/piNy5e+AOn4VdBBAAIQ=",
"optional": true
},
"jquery": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/jquery/-/jquery-3.2.1.tgz",
"integrity": "sha1-XE2d5lKvbNCncBVKYxu6ErAVx4c="
},
"jquery-match-height": {
"version": "0.7.2",
"resolved": "https://registry.npmjs.org/jquery-match-height/-/jquery-match-height-0.7.2.tgz",
"integrity": "sha1-+NnzulMU2qsQnPB0CGdL4gS+Xw4=",
"optional": true
},
"moment": {
"version": "2.21.0",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.21.0.tgz",
"integrity": "sha512-TCZ36BjURTeFTM/CwRcViQlfkMvL1/vFISuNLO5GkcVm1+QHfbSiNqZuWeMFjj1/3+uAjXswgRk30j1kkLYJBQ==",
"optional": true
},
"moment-timezone": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.4.1.tgz",
"integrity": "sha1-gfWYw61eIs2teWtn7NjYjQ9bqgY=",
"optional": true,
"requires": {
"moment": ">= 2.6.0"
}
},
"patternfly": {
"version": "3.41.6",
"resolved": "https://registry.npmjs.org/patternfly/-/patternfly-3.41.6.tgz",
"integrity": "sha1-4GDPda0Ri8UYWaBdjnMGHIgER+8=",
"requires": {
"bootstrap": "~3.3.7",
"bootstrap-datepicker": "^1.7.1",
"bootstrap-sass": "^3.3.7",
"bootstrap-select": "^1.12.2",
"bootstrap-slider": "^9.9.0",
"bootstrap-switch": "~3.3.4",
"bootstrap-touchspin": "~3.1.1",
"c3": "~0.4.11",
"d3": "~3.5.17",
"datatables.net": "^1.10.15",
"datatables.net-colreorder": "^1.4.1",
"datatables.net-colreorder-bs": "~1.3.2",
"datatables.net-select": "~1.2.0",
"drmonty-datatables-colvis": "~1.1.2",
"eonasdan-bootstrap-datetimepicker": "^4.17.47",
"font-awesome": "^4.7.0",
"font-awesome-sass": "^4.7.0",
"google-code-prettify": "~1.0.5",
"jquery": "~3.2.1",
"jquery-match-height": "^0.7.2",
"moment": "^2.19.1",
"moment-timezone": "^0.4.1",
"patternfly-bootstrap-combobox": "~1.1.7",
"patternfly-bootstrap-treeview": "~2.1.0"
},
"dependencies": {
"bootstrap": {
"version": "3.3.7",
"resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.7.tgz",
"integrity": "sha1-WjiTlFSfIzMIdaOxUGVldPip63E="
},
"bootstrap-datepicker": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/bootstrap-datepicker/-/bootstrap-datepicker-1.7.1.tgz",
"integrity": "sha1-Tuf680iI2+x4NPv52+fEJ34B3a8=",
"optional": true,
"requires": {
"jquery": ">=1.7.1 <4.0.0"
}
},
"bootstrap-sass": {
"version": "3.3.7",
"resolved": "https://registry.npmjs.org/bootstrap-sass/-/bootstrap-sass-3.3.7.tgz",
"integrity": "sha1-ZZbHq0D2Y3OTMjqwvIDQZPxjBJg=",
"optional": true
},
"bootstrap-select": {
"version": "1.12.4",
"resolved": "https://registry.npmjs.org/bootstrap-select/-/bootstrap-select-1.12.4.tgz",
"integrity": "sha1-fxXTwM6XiGjZwJxw+WYk9V+gLuE=",
"optional": true,
"requires": {
"jquery": ">=1.8"
}
},
"bootstrap-slider": {
"version": "9.10.0",
"resolved": "https://registry.npmjs.org/bootstrap-slider/-/bootstrap-slider-9.10.0.tgz",
"integrity": "sha1-EQPWvADPv6jPyaJZmrUYxVZD2j8=",
"optional": true
},
"bootstrap-switch": {
"version": "3.3.4",
"resolved": "https://registry.npmjs.org/bootstrap-switch/-/bootstrap-switch-3.3.4.tgz",
"integrity": "sha1-cOCusqh3wNx2aZHeEI4hcPwpov8=",
"optional": true
},
"bootstrap-touchspin": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/bootstrap-touchspin/-/bootstrap-touchspin-3.1.1.tgz",
"integrity": "sha1-l3nerHKq9Xfl52K4USx0fIcdlZc=",
"optional": true
},
"c3": {
"version": "0.4.18",
"resolved": "https://registry.npmjs.org/c3/-/c3-0.4.18.tgz",
"integrity": "sha512-37TiFeCrbe69gg7SxFpTBOLDwulnk+opKp1AFDi43mONtErpRoUIZfGSimGiSYQmNu6Zh9W2yNOx0066UikqSg==",
"optional": true,
"requires": {
"d3": "~3.5.0"
}
},
"d3": {
"version": "3.5.17",
"resolved": "https://registry.npmjs.org/d3/-/d3-3.5.17.tgz",
"integrity": "sha1-vEZ0gAQ3iyGjYMn8fPUjF5B2L7g=",
"optional": true
},
"datatables.net": {
"version": "1.10.16",
"resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.16.tgz",
"integrity": "sha1-SwUtEIKCQmG2ju2dInQbcR09JGk=",
"optional": true,
"requires": {
"jquery": ">=1.7"
}
},
"datatables.net-bs": {
"version": "1.10.16",
"resolved": "https://registry.npmjs.org/datatables.net-bs/-/datatables.net-bs-1.10.16.tgz",
"integrity": "sha1-sIVPWzdPcTrj20FWx86op2DD3nY=",
"optional": true,
"requires": {
"datatables.net": "1.10.16",
"jquery": ">=1.7"
}
},
"datatables.net-colreorder": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/datatables.net-colreorder/-/datatables.net-colreorder-1.4.1.tgz",
"integrity": "sha1-OJ5LGidOIDl5o3GNhsWITQoBZrY=",
"optional": true,
"requires": {
"datatables.net": "^1.10.15",
"jquery": ">=1.7"
}
},
"datatables.net-colreorder-bs": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/datatables.net-colreorder-bs/-/datatables.net-colreorder-bs-1.3.3.tgz",
"integrity": "sha1-Op3LCN7r612FQHlZHgbkk615OlM=",
"optional": true,
"requires": {
"datatables.net-bs": ">=1.10.9",
"datatables.net-colreorder": ">=1.2.0",
"jquery": ">=1.7"
}
},
"datatables.net-select": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-1.2.3.tgz",
"integrity": "sha1-fCcugXMqQSFOEBtlb1Ul037Dcog=",
"optional": true,
"requires": {
"datatables.net": "^1.10.15",
"jquery": ">=1.7"
}
},
"drmonty-datatables-colvis": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/drmonty-datatables-colvis/-/drmonty-datatables-colvis-1.1.2.tgz",
"integrity": "sha1-lque37SGQ8wu3aP4e4iTPN7oEnw=",
"optional": true,
"requires": {
"jquery": ">=1.7.0"
}
},
"eonasdan-bootstrap-datetimepicker": {
"version": "4.17.47",
"resolved": "https://registry.npmjs.org/eonasdan-bootstrap-datetimepicker/-/eonasdan-bootstrap-datetimepicker-4.17.47.tgz",
"integrity": "sha1-ekmXAEQGUnbnll79Fvgic1IZ5zU=",
"optional": true,
"requires": {
"bootstrap": "^3.3",
"jquery": "^1.8.3 || ^2.0 || ^3.0",
"moment": "^2.10",
"moment-timezone": "^0.4.0"
}
},
"font-awesome": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz",
"integrity": "sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM="
},
"font-awesome-sass": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/font-awesome-sass/-/font-awesome-sass-4.7.0.tgz",
"integrity": "sha1-TtppPpFQCc4Asijglk3F7Km8NOE=",
"optional": true
},
"google-code-prettify": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/google-code-prettify/-/google-code-prettify-1.0.5.tgz",
"integrity": "sha1-n0d/Ik2/piNy5e+AOn4VdBBAAIQ=",
"optional": true
},
"jquery": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/jquery/-/jquery-3.2.1.tgz",
"integrity": "sha1-XE2d5lKvbNCncBVKYxu6ErAVx4c="
},
"jquery-match-height": {
"version": "0.7.2",
"resolved": "https://registry.npmjs.org/jquery-match-height/-/jquery-match-height-0.7.2.tgz",
"integrity": "sha1-+NnzulMU2qsQnPB0CGdL4gS+Xw4=",
"optional": true
},
"moment": {
"version": "2.20.1",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.20.1.tgz",
"integrity": "sha512-Yh9y73JRljxW5QxN08Fner68eFLxM5ynNOAw2LbIB1YAGeQzZT8QFSUvkAz609Zf+IHhhaUxqZK8dG3W/+HEvg==",
"optional": true
},
"moment-timezone": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.4.1.tgz",
"integrity": "sha1-gfWYw61eIs2teWtn7NjYjQ9bqgY=",
"optional": true,
"requires": {
"moment": ">= 2.6.0"
}
},
"patternfly-bootstrap-combobox": {
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/patternfly-bootstrap-combobox/-/patternfly-bootstrap-combobox-1.1.7.tgz",
"integrity": "sha1-al48zRFwwhs8S0qhaKdBPh3btuE=",
"optional": true
},
"patternfly-bootstrap-treeview": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/patternfly-bootstrap-treeview/-/patternfly-bootstrap-treeview-2.1.5.tgz",
"integrity": "sha1-TCnyWC+4ovKPCpKPLw0yTSHWmQ0=",
"optional": true,
"requires": {
"bootstrap": "3.3.x",
"jquery": ">= 2.1.x"
}
}
}
},
"patternfly-bootstrap-combobox": {
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/patternfly-bootstrap-combobox/-/patternfly-bootstrap-combobox-1.1.7.tgz",
"integrity": "sha1-al48zRFwwhs8S0qhaKdBPh3btuE=",
"optional": true
},
"patternfly-bootstrap-treeview": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/patternfly-bootstrap-treeview/-/patternfly-bootstrap-treeview-2.1.5.tgz",
"integrity": "sha1-TCnyWC+4ovKPCpKPLw0yTSHWmQ0=",
"optional": true,
"requires": {
"bootstrap": "3.3.x",
"jquery": ">= 2.1.x"
}
}
}
},
"safename": {
"version": "0.0.4",
"resolved": "https://registry.npmjs.org/safename/-/safename-0.0.4.tgz",
"integrity": "sha1-uCw7bbcNlDoFgvkFL7+/67tYmvU="
},
"select2": {
"version": "3.5.1",
"resolved": "https://registry.npmjs.org/select2/-/select2-3.5.1.tgz",
"integrity": "sha1-8oGUibvGX9bTKL5yu+K5XdfofP4="
},
"text-security": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/text-security/-/text-security-1.0.1.tgz",
"integrity": "sha512-Y5fStAKoEvLr6h2oz/nkSm+P3b5f3t+JAnNkycFJr15mz32XvrfBONjO+fNAnKaP5+YuD69tVNmlmKmfZu9ZGw=="
}
}
}

View file

@ -1,24 +1,25 @@
{
"name": "keycloak-admin-console",
"name": "keycloak-npm-dependencies",
"version": "1.0.0",
"description": "Keycloak Admin Console",
"description": "Keycloak NPM Dependencies",
"license": "Apache-2.0",
"repository": "https://github.com/keycloak/keycloak",
"dependencies": {
"angular": "^1.6.10",
"angular-cookies": "^1.6.10",
"angular-loader": "^1.6.10",
"angular-resource": "^1.6.10",
"angular-route": "^1.6.10",
"angular-sanitize": "^1.6.10",
"angular": "1.6.10",
"angular-cookies": "1.6.10",
"angular-loader": "1.6.10",
"angular-resource": "1.6.10",
"angular-route": "1.6.10",
"angular-sanitize": "1.6.10",
"angular-translate": "2.15.1",
"angular-translate-loader-url": "2.15.1",
"angular-treeview": "0.1.5",
"angular-ui-select2": "0.0.5",
"autofill-event": "0.0.1",
"bootstrap": "^3.4.1",
"bootstrap": "3.4.1",
"filesaver": "0.0.13",
"font-awesome": "4.7.0",
"jquery": "^3.4.1",
"jquery": "3.4.1",
"ng-file-upload": "12.2.13",
"patternfly": "3.41.6",
"rcue": "3.41.6",

View file

@ -3518,6 +3518,74 @@ fieldset[disabled] .combobox-container .input-group-addon.active {
opacity: 0.9;
filter: alpha(opacity=90);
}
.layout-pf-fixed .navbar-pf-vertical.navbar-pf-contextselector {
z-index: 1040;
}
.navbar-pf-vertical .nav.contextselector-pf {
border-left: 1px solid #4d5258;
}
@media (min-width: 768px) {
.navbar-pf-vertical .nav.contextselector-pf {
margin-left: 10px;
}
}
.navbar-pf-vertical .nav.contextselector-pf .nav-item-iconic {
padding: 23px 20px 18px 10px;
display: -ms-flexbox;
display: flex;
-ms-flex-align: center;
align-items: center;
}
.contextselector-pf {
float: left;
}
.contextselector-pf-title {
width: 170px;
white-space: nowrap;
display: inline-block;
overflow: hidden;
text-overflow: ellipsis;
line-height: normal;
}
@media (min-width: 480px) {
.contextselector-pf-title {
width: 210px;
}
}
.contextselector-pf .dropdown.open,
.contextselector-pf .dropdown:hover {
background-color: #303030;
}
.contextselector-pf .dropdown-menu {
width: 100%;
margin-top: 0;
}
.contextselector-pf .form-group {
margin: 0 5px 5px 5px;
}
@media (min-width: 768px) {
.contextselector-pf .contextselector-pf-list {
max-height: 200px;
overflow-y: auto;
}
}
.contextselector-pf .contextselector-pf-list li {
padding: 1px 10px;
border-width: 1px 0;
border-style: solid;
border-color: transparent;
}
.contextselector-pf .contextselector-pf-list li:hover {
background: #def3ff;
border-color: #bee1f4;
}
.contextselector-pf .contextselector-pf-list li:hover a {
text-decoration: none;
}
.contextselector-pf .contextselector-pf-list a {
color: #393f44;
display: block;
}
.ColVis_Button:active:focus {
outline: none;
}
@ -3956,7 +4024,7 @@ fieldset[disabled] .btn-experimental-pf.active {
content: "\e605";
}
.pficon-history:before {
content: "\e617";
content: "\e93b";
}
.pficon-home:before {
content: "\e618";
@ -4003,6 +4071,9 @@ fieldset[disabled] .btn-experimental-pf.active {
.pficon-network:before {
content: "\e909";
}
.pficon-network-range:before {
content: "\e94a";
}
.pficon-on:before {
content: "\e931";
}
@ -4089,6 +4160,9 @@ fieldset[disabled] .btn-experimental-pf.active {
.pficon-running:before {
content: "\e614";
}
.pficon-satellite:before {
content: "\e94b";
}
.pficon-save:before {
content: "\e601";
}
@ -4128,6 +4202,9 @@ fieldset[disabled] .btn-experimental-pf.active {
.pficon-storage-domain:before {
content: "\e90e";
}
.pficon-template:before {
content: "\e94c";
}
.pficon-tenant:before {
content: "\e916";
}
@ -4158,6 +4235,9 @@ fieldset[disabled] .btn-experimental-pf.active {
.pficon-unplugged:before {
content: "\e942";
}
.pficon-vcenter:before {
content: "\e94d";
}
.pficon-virtual-machine:before {
content: "\e90f";
}
@ -4710,6 +4790,11 @@ a.disabled {
width: calc(75% - 40px);
}
}
.list-view-pf .close {
float: none;
position: absolute;
right: 15px;
}
.list-view-pf-actions {
float: right;
margin-bottom: 20px;
@ -4971,7 +5056,7 @@ a.disabled {
margin: -1px -15px 0;
-ms-flex-order: 3;
order: 3;
padding: 10px 15px;
padding: 15px;
position: relative;
width: 100%;
}
@ -6475,6 +6560,7 @@ a.disabled {
}
.drawer-pf-notification.unread .drawer-pf-notification-message {
font-weight: bold;
cursor: pointer;
}
.drawer-pf-notification.expanded-notification .date {
border-right: none;
@ -6493,9 +6579,6 @@ a.disabled {
.expanded-notification .drawer-pf-notification-message {
display: inline-block;
}
.drawer-pf-notifications-non-clickable .drawer-pf-notification:hover {
background-color: #fff;
}
.drawer-pf-title {
background-color: #fafafa;
border-bottom: 1px solid #d1d1d1;

View file

@ -9147,7 +9147,7 @@ button.close {
}
.breadcrumb > li + li:before {
color: #9c9c9c;
content: "\f101";
content: "\f105";
font-family: "FontAwesome";
font-size: 11px;
padding: 0 9px 0 7px;
@ -9799,7 +9799,7 @@ fieldset[disabled] .pager li > span.active {
background: #f5f5f5;
box-shadow: none;
color: #8b8d8f;
cursor: default;
cursor: not-allowed;
}
.pager .next > a > .i,
.pager .next > span > .i {
@ -9939,7 +9939,7 @@ fieldset[disabled] .pagination > li > span.active {
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
box-shadow: none;
cursor: default;
cursor: not-allowed;
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);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -115,6 +115,7 @@
<glyph unicode="&#xe938;" glyph-name="connected" data-tags="connected" d="M300.48 247.154c-14.377 0-28.526 6.766-37.417 19.406-35.543 50.514-54.331 109.966-54.331 171.931 0 61.897 18.743 121.303 54.24 171.794 14.514 20.663 43.040 25.646 63.68 11.109 20.663-14.514 25.646-43.040 11.109-63.68-24.594-35.017-37.6-76.229-37.6-119.223 0-43.017 13.029-84.297 37.691-119.314 14.537-20.64 9.577-49.166-11.086-63.703-8.023-5.623-17.211-8.32-26.286-8.32v0zM721.737 246.834c-9.12 0-18.309 2.72-26.331 8.366-20.617 14.56-25.531 43.086-10.971 63.703 24.777 35.086 37.851 76.434 37.851 119.566 0 43.429-13.257 85.029-38.331 120.251-14.651 20.571-9.829 49.12 10.72 63.749 20.571 14.629 49.12 9.829 63.749-10.72 36.16-50.811 55.291-110.72 55.291-173.28 0-62.126-18.88-121.714-54.606-172.297-8.891-12.594-23.017-19.337-37.371-19.337v0zM622.034 439.177c0-60.777-49.257-110.034-110.034-110.034s-110.034 49.257-110.034 110.034 49.257 110.034 110.034 110.034 110.034-49.257 110.034-110.034zM862.697 92.571c-12.366 0-24.8 4.251-34.949 12.937-22.514 19.314-25.12 53.211-5.806 75.749 61.463 71.68 95.314 163.269 95.314 257.829 0 95.611-34.514 187.954-97.189 260-19.474 22.377-17.12 56.32 5.28 75.771 22.377 19.474 56.297 17.12 75.771-5.28 79.68-91.589 123.566-208.96 123.566-330.514 0-120.206-43.040-236.617-121.189-327.771-10.606-12.366-25.646-18.72-40.8-18.72zM163.474 89.531c-14.971 0-29.874 6.217-40.48 18.4-80.046 91.68-124.137 209.303-124.137 331.154 0 84.731 21.463 168.549 62.057 242.4 17.257 31.383 37.943 61.029 61.509 88.114 19.474 22.377 53.394 24.731 75.771 5.28s24.731-53.394 5.28-75.771c-18.56-21.326-34.857-44.663-48.434-69.371-31.886-58.034-48.754-123.977-48.754-190.651 0-95.863 34.674-188.389 97.623-260.503 19.52-22.354 17.211-56.274-5.143-75.794-10.171-8.891-22.766-13.257-35.291-13.257z" />
<glyph unicode="&#xe939;" glyph-name="catalog" data-tags="catalog" horiz-adv-x="1097" d="M509.714 737.371v-0.686c0.229 0.229 0.229 0.457 0 0.686zM184.457 84.114c-67.2-6.171-111.314-83.657-111.314-83.657v877.257c-73.143-2.286-73.143-68.571-73.143-68.571v-813.714c2.971-86.857 109.714-66.286 109.714-66.286 109.714 154.743 402.286-2.286 402.286-2.286v71.314c-125.714 81.829-242.286 95.543-327.543 85.943zM366.629 133.714c53.486-9.371 110.857-52.571 143.086-60.343v72.914h-3.886c-0.229 0-0.457 0-0.686 0h4.571v590.4c0 0 0 0 0 0v0.686c0 0 0 0 0 0l0.229 58.057c0 0-0.229 0-0.229 0.229v8c-119.314 76.8-274.057 129.143-363.429 145.829v-811.2c65.6 18.057 120.229 13.257 220.343-4.571zM587.429 737.371c-0.229-0.229-0.229-0.229 0 0v0zM1024 877.714v-877.257c0 0-44.114 77.486-111.314 83.657-85.257 9.6-201.829-4.114-327.543-85.943v-71.314c0 0 292.571 157.029 402.286 2.286 0 0 106.743-20.571 109.714 66.286v813.714c0 0 0 66.286-73.143 68.571zM587.429 545.143v-398.857l10.514 1.829c-2.057-1.143-4.343-1.829-6.629-1.829h-3.886v-72.914c32.229 7.771 89.6 50.971 143.086 60.343 100.114 17.829 154.743 22.629 220.343 4.571v811.2c-89.371-16.686-244.114-69.029-363.429-145.6v-8.229c0-0.229-0.229-0.229-0.229-0.229l0.229-58.057v-192.229z" />
<glyph unicode="&#xe93a;" glyph-name="enhancement" data-tags="enhancement" d="M1001.6 317.943l-106.743 120.914 106.743 120.914c4.343 5.486 7.543 11.657 9.371 18.514 7.086 26.286-8.686 53.486-34.971 60.571l-150.629 30.171 23.771 157.486c0.457 7.086-0.686 13.943-3.2 20.571-9.829 25.371-38.4 38.171-64 28.343l-159.543-86.171-68.8 138.971c-3.886 5.943-8.686 10.971-14.629 14.629-22.857 14.857-53.486 8.229-68.343-14.629l-71.314-139.2-157.257 86.171c-6.4 2.514-13.486 3.657-20.343 3.2-27.429-1.371-48.229-24.686-46.857-51.886l23.771-157.486-150.629-30.4c-6.857-1.829-13.029-5.029-18.514-9.371-21.257-17.143-24.457-48.229-7.314-69.486l106.971-120.914-106.743-120.914c-4.343-5.486-7.543-11.657-9.371-18.514-7.086-26.286 8.686-53.486 35.2-60.343l155.2-25.6-28.343-162.057c-0.457-7.086 0.686-13.943 3.2-20.571 9.829-25.371 38.4-38.171 64-28.343l157.257 86.171 71.314-139.2c3.886-5.943 8.686-10.971 14.629-14.629 22.857-14.857 53.486-8.229 68.343 14.629l71.314 139.2 157.257-86.171c6.4-2.514 13.486-3.657 20.571-3.2 27.2 1.371 48.229 24.686 46.629 52.114l-28.343 162.057 155.2 25.6c6.857 1.829 13.029 5.029 18.514 9.371 20.8 17.143 24 48.229 6.629 69.486zM730.971 384.228c0-2.286-0.229-4.8-0.914-7.086-0.914-2.286-2.286-4.343-4.114-5.943-1.371-2.057-3.2-3.429-5.486-4.114-2.514-0.686-5.029-0.914-7.543-0.914h-128v-128c0-2.514-0.229-5.029-0.914-7.543-0.686-2.286-2.057-4.114-4.114-5.486-1.829-1.829-3.657-3.429-5.943-4.571s-4.571-1.6-7.086-1.6h-109.943c-2.514 0-4.8 0.457-7.086 1.6s-4.343 2.743-5.943 4.571c-2.057 1.371-3.429 3.2-4.114 5.486-0.686 2.514-0.914 5.029-0.914 7.543v128h-128c-2.514 0-5.029 0.229-7.543 0.914-2.286 0.686-4.114 2.057-5.486 4.114-1.829 1.6-3.2 3.657-4.114 5.943-0.686 2.286-1.143 4.571-0.914 7.086v109.029c0 2.514 0.229 5.029 0.914 7.543s2.057 4.8 4.114 6.4c1.6 1.6 3.429 2.743 5.486 3.429 2.286 0.914 5.029 1.6 7.543 1.6h128v128c0 2.514 0.229 5.029 0.914 7.543 0.686 2.286 2.057 4.114 4.114 5.486 1.6 1.829 3.657 3.2 5.943 4.114 2.286 0.686 4.571 1.143 7.086 0.914h109.943c2.286 0 4.8-0.229 7.086-0.914 2.286-0.914 4.343-2.286 5.943-4.114 2.057-1.371 3.429-3.2 4.114-5.486 0.686-2.514 0.914-5.029 0.914-7.543v-128h128c2.514 0 5.029-0.457 7.543-1.6v0c2.057-0.686 3.886-2.057 5.714-3.429 1.829-1.829 3.2-4.114 4.114-6.4 0.686-2.514 0.914-5.029 0.914-7.543v-109.029h-0.229z" />
<glyph unicode="&#xe93b;" glyph-name="pficon-history" data-tags="pficon-history" d="M512 950.857c-136.731 0-260.937-53.623-352.754-140.96l-116.823 116.823c-23.337 23.337-42.423 15.429-42.423-17.577v-264c0-50.994 8.343-60 60-60h264c33.006 0 40.914 19.086 17.577 42.423v0l-91.794 91.794c71.383 66.834 163.977 103.497 262.217 103.497 102.56 0 198.994-39.954 271.52-112.48s112.48-168.96 112.48-271.52c0-102.56-39.954-198.994-112.48-271.543-72.526-72.503-168.96-112.457-271.52-112.457s-198.994 39.954-271.52 112.48c-6.057 6.057-11.863 12.297-17.463 18.674l-96.32-84.297c93.851-107.177 231.657-174.857 385.303-174.857 282.766 0 512 229.234 512 512s-229.234 512-512 512z" />
<glyph unicode="&#xe93c;" glyph-name="disconnected" data-tags="disconnected" d="M904.686 112.457c77.486 90.971 120 206.857 120 326.629 0 121.6-43.886 238.857-123.657 330.514-19.429 22.4-53.486 24.686-75.657 5.257-22.4-19.429-24.686-53.486-5.257-75.886 62.629-72 97.143-164.343 97.143-259.886 0-91.2-31.543-179.657-88.914-250.286l-73.6 73.6c1.143 1.371 2.514 2.743 3.429 4.343 35.657 50.286 54.4 109.714 54.4 171.657 0 62.4-18.971 122.057-55.086 172.571-14.171 20.114-42.057 24.686-62.171 10.514s-24.686-42.057-10.514-62.171c25.143-35.429 38.629-77.257 38.629-120.914 0-40-11.2-78.629-32.686-112.229l-75.429 75.2c4.343 11.657 6.629 24.229 6.629 37.486 0 60.8-49.371 109.943-109.943 109.943-13.257 0-25.829-2.286-37.486-6.629l-393.371 393.829c-18.286 18.286-48 18.286-66.286 0s-18.286-48 0-66.286l104.229-104.229c0 0 0 0 0 0l76.343-76.114c0 0 0 0 0 0l137.143-137.143c0 0 0 0 0 0l75.886-75.886c0 0 0 0 0 0l140.571-140.571c0 0 0 0 0 0l393.829-393.829c9.143-9.143 21.029-13.714 33.143-13.714s24 4.571 33.143 13.714c18.286 18.286 18.286 48 0 66.286l-104.457 104.229zM298.971 438.4c0 4.8 0.229 9.371 0.457 13.943l-75.886 75.886c-9.143-28.8-13.714-58.971-13.714-89.829 0-61.714 18.743-120.914 54.171-171.2 8.686-12.343 22.4-18.971 36.571-18.971 8.914 0 17.829 2.514 25.6 8 20.114 14.171 24.914 42.057 10.743 62.171-24.914 35.429-37.943 76.8-37.943 120zM106.286 439.086c0 58.514 13.029 116.343 37.714 168.914l-79.543 79.543c-1.143-2.057-2.286-4.114-3.429-6.171-40.457-73.829-61.943-157.714-61.943-242.514 0-121.829 44.114-239.543 124.114-331.2 10.743-12.114 25.6-18.286 40.457-18.286 12.571 0 25.143 4.343 35.2 13.257 22.4 19.429 24.686 53.486 5.029 75.886-62.857 72.229-97.6 164.571-97.6 260.571z" />
<glyph unicode="&#xe93d;" glyph-name="infrastructure" data-tags="infrastructure" d="M1013.36 171.757c-7.060 7.060-15.44 10.5-25.5 10.5h-27.9v63.6c0 17.4-6.4 34.2-19 47-12.6 12.6-27.6 19-45 19h-63.4v62.56h26.8c10.080 0 18.5 3.46 25.58 10.54s10.54 15.5 10.54 25.58v120.2c0 10.080-3.46 18.5-10.54 25.58s-15.5 10.54-25.58 10.54h-113.16l-106.7 106.7c0.18 1.74 0.28 3.52 0.28 5.36v159.9c0 13.4-4.6 24.6-14.020 34.020s-20.62 14.020-34.020 14.020h-159.9c-13.4 0-24.62-4.6-34.020-14.020-9.42-9.42-14.020-20.62-14.020-34.020v-159.9c0-1.88 0.12-3.68 0.3-5.48l-106.42-106.58c-9.94 0-78.38 0-78.38 0h-36.1c-10.080 0-18.5-3.46-25.58-10.54s-10.54-15.5-10.54-25.58v-120.2c0-10.080 3.46-18.5 10.54-25.58s15.5-10.54 25.58-10.54h27.4v-62.76h-63.6c-17.4 0-32.2-6.4-45-19 0 0-17.5-22.8-18.76-48.56v-61.84h-27.060c-10.040 0-18.44-3.44-25.5-10.5s-10.48-15.44-10.48-25.5v-119.82c0-10.040 3.44-18.44 10.5-25.5 7.040-7.040 15.44-10.5 25.5-10.5h119.8c10.040 0 18.44 3.44 25.5 10.5 7.040 7.040 10.5 15.44 10.5 25.5v119.82c0 10.040-3.44 18.44-10.5 25.5s-15.44 10.5-25.5 10.5h-28v64.6h191.5v-0.6l0.44-64h-27.86c-10.040 0-18.44-3.44-25.5-10.5s-10.5-15.44-10.5-25.5v-119.82c0-10.040 3.44-18.44 10.5-25.5 7.040-7.040 15.44-10.5 25.5-10.5h119.82c10.040 0 18.44 3.44 25.5 10.5 7.040 7.040 10.5 15.44 10.5 25.5v119.82c0 10.040-3.44 18.44-10.5 25.5s-15.44 10.5-25.5 10.5h-27.9v63.6c0 17.4-6.4 34.2-19 47-12.6 12.6-27.6 19-45 19h-63.4v62.56h26.8c10.080 0 18.5 3.46 25.58 10.54s10.54 15.5 10.54 25.58v113.32l107.12 107.28c1.7-0.16 3.42-0.26 5.2-0.26h159.9c1.82 0 3.58 0.1 5.32 0.28l105.98-105.98v-114.64c0-10.080 3.46-18.5 10.54-25.58s15.5-10.54 25.58-10.54h27.4v-62.76h-63.6c-17.4 0-32.2-6.4-45-19 0 0-17.5-22.8-18.76-48.56v-61.84h-27.060c-10.040 0-18.44-3.44-25.5-10.5s-10.5-15.44-10.5-25.5v-119.82c0-10.040 3.44-18.44 10.5-25.5 7.040-7.040 15.44-10.5 25.5-10.5h119.82c10.040 0 18.44 3.44 25.5 10.5 7.040 7.040 10.5 15.44 10.5 25.5v119.82c0 10.040-3.44 18.44-10.5 25.5s-15.44 10.5-25.5 10.5h-28v64.6h191.5v-0.6l0.44-64h-27.86c-10.040 0-18.44-3.44-25.5-10.5s-10.5-15.44-10.5-25.5v-119.82c0-10.040 3.44-18.44 10.5-25.5 7.040-7.040 15.44-10.5 25.5-10.5h119.82c10.040 0 18.44 3.44 25.5 10.5 7.040 7.040 10.5 15.44 10.5 25.5v119.82c0 10.040-3.44 18.44-10.5 25.5zM575.9 696.857h-128v128h128v-128z" />
<glyph unicode="&#xe93e;" glyph-name="optimize" data-tags="optimize" d="M256 758.857l-128 128h-64v-64l128-128zM320 950.857h64v-128h-64zM576 630.857h128v-64h-128zM640 822.857v64h-64l-128-128 64-64zM0 630.857h128v-64h-128zM320 374.857h64v-128h-64zM64 374.857v-64h64l128 128-64 64zM1010 68.857l-636.118 636.118c-18.668 18.668-49.214 18.668-67.882 0l-60.118-60.118c-18.668-18.668-18.668-49.214 0-67.882l636.118-636.118c18.668-18.668 49.214-18.668 67.882 0l60.118 60.118c18.668 18.668 18.668 49.214 0 67.882zM480 406.857l-192 192 64 64 192-192-64-64z" />
@ -129,4 +130,8 @@
<glyph unicode="&#xe947;" glyph-name="services" data-tags="services" horiz-adv-x="1026" d="M962.514 328.228c-45.943 48.229-96 23.086-96 23.086l-205.943-205.029-256-0.686c-36.571 0-35.429 34.971-35.429 34.971 0 36.571 35.657 36.571 35.657 36.571h217.829c15.314 0 16.686 0.686 27.429 11.429 7.223 7.223 9.486 16.389 10.194 26.286 0.274-3.909 0.32-7.931 0.32-12v24c0-4.069-0.046-8.069-0.32-12-0.709 9.897-2.971 19.063-10.194 26.286-10.743 10.743-12.114 13.714-27.429 13.714h-373.257c-20.343 0.457-41.371-10.286-61.943-26.971l-151.086-159.543 184.457-183.086 76.343 73.143h421.714c33.143 1.6 78.4 58.743 78.4 58.743l183.314 192c18.286 43.429-18.057 79.086-18.057 79.086zM291.017 614.057v0c0-6.4 4.571-12.343 10.971-13.257l96-6.171c4.114-12.8 3.2-8.686 9.6-21.257-13.257-17.829-46.857-56-60.114-73.371-1.829-2.743-3.2-5.486-3.2-8.686 0-13.257 54.171-62.4 66.057-73.371 2.743-2.286 5.943-3.657 9.6-3.657 3.2 0 6.857 0.914 9.143 3.2l67.657 63.086c10.971-5.486 11.886-5.029 24-8.686l7.543-97.829c0.914-6.4 7.314-11.429 13.714-11.429h85.257c6.4 0 11.886 4.571 13.714 10.971 5.943 22.4 1.6 74.743 3.886 98.286 12.343 3.657 11.2 4.343 22.857 10.286l72-64.457c2.743-1.829 5.943-3.2 9.6-3.2 13.257 0 64.686 56 73.829 68.343 2.286 2.286 3.2 5.486 3.2 8.686 0 3.657-1.371 6.4-3.2 9.143-14.629 17.371-53.029 49.829-65.829 68.114 5.943 11.429 4.8 11.2 8.457 23.314l101.943 7.543c5.943 0.914 10.514 7.771 10.514 13.714v84.8c-0.229 5.714-4.8 11.657-11.2 13.029l-97.829 8c-4.114 12.8-2.057 9.143-8 21.714 12.8 17.829 47.086 53.029 60.343 70.857 1.829 2.743 3.2 5.486 3.2 8.686 0 12.8-54.171 62.4-66.057 73.371-2.743 2.286-5.943 3.657-9.6 3.657-3.2 0-6.4-0.914-9.143-3.2l-68.114-59.429c-10.971 5.486-12.571 5.486-24.686 9.143l-6.171 93.943c-0.914 6.4-7.314 11.429-13.714 11.429h-85.257c-6.4 0-11.886-4.571-13.714-10.971-5.943-22.4-2.971-72-5.257-95.086-12.343-4.114-11.2-5.029-22.857-10.971l-70.629 61.943c-2.743 1.829-5.943 3.2-9.6 3.2-13.257 0-64.686-55.543-73.829-67.886-2.286-2.743-3.2-5.943-3.2-9.143s1.371-6.4 3.2-9.143c14.629-17.371 46.4-47.086 59.2-65.371-5.943-11.429-5.029-16.686-8.686-28.8l-95.086-4.571c-5.943-0.914-10.514-7.771-10.514-13.714v-84.8zM582.903 769.943c63.314 0 114.743-51.429 114.743-114.743s-51.406-114.743-114.743-114.743c-63.086 0-114.743 51.429-114.743 114.743s51.429 114.743 114.743 114.743zM182.331 658.286c60.594 0 109.714 49.12 109.714 109.714s-49.12 109.714-109.714 109.714-109.714-49.12-109.714-109.714 49.12-109.714 109.714-109.714zM182.331 809.623c22.994 0 41.646-18.629 41.646-41.623s-18.651-41.623-41.646-41.623-41.623 18.629-41.623 41.623 18.629 41.623 41.623 41.623zM219.429 587.428c-40.389 0-73.143-32.754-73.143-73.143s32.754-73.143 73.143-73.143 73.143 32.754 73.143 73.143-32.754 73.143-73.143 73.143zM219.429 489.966c-13.44 0-24.32 10.903-24.32 24.32s10.903 24.32 24.32 24.32 24.32-10.903 24.32-24.32-10.88-24.32-24.32-24.32z" />
<glyph unicode="&#xe948;" glyph-name="integration" data-tags="integration" horiz-adv-x="1170" d="M665.097 474.171c0 35.817-29.029 64.846-64.846 64.846-23.291 0-43.703-12.274-55.131-30.72-16.503-1.691-31.977 10.331-31.977 36.114v66.697c0 26.354-21.966 48.297-48.297 48.297h-66.697c-35.223 0-44.8 28.869-28.731 49.806 15.794 11.84 26.011 30.697 26.011 51.931 0 35.817-29.029 64.846-64.846 64.846s-64.846-29.029-64.846-64.846c0-18.149 7.451-34.537 19.474-46.309 0.754-0.914 1.509-1.851 2.309-2.743 19.314-21.074 10.537-52.686-26.331-52.686v0l-67.634 0.869c-26.354 0-48.297-21.966-48.297-48.297v-66.697c0-23.36-11.771-35.429-25.76-36.229-11.52 18.011-31.68 29.966-54.651 29.966-35.817 0-64.846-29.029-64.846-64.846s29.029-64.846 64.846-64.846c24 0 44.96 13.051 56.16 32.457 13.943-1.623 25.669-13.623 25.669-36.091v-208.411c0-26.331 24.229-48.297 51.451-49.166h56.366c-7.886 14.926-11.406 30.743-11.406 46.537 0 54.446 27.017 79.177 86.72 80.937h-1.051c43.771 0.983 79.863-24.754 79.863-80.937 0-15.817-4.389-32.48-11.406-46.537h66.743c26.354 0 48.297 21.966 48.297 48.297v210.171c0 25.417 15.017 37.486 31.269 36.183 11.063-19.954 32.32-33.44 56.731-33.44 35.817 0 64.846 29.029 64.846 64.846zM1106.080 539.017c-23.703 0-44.434-12.731-55.749-31.726-13.874 0.091-25.44 12.183-25.44 36.274l0.869 67.566c0 26.331-21.943 48.297-48.297 48.297h-66.697c-32.434 0-43.109 24.457-32.069 44.686 15.703 11.84 25.829 30.629 25.829 51.794 0 35.817-29.029 64.846-64.846 64.846s-64.846-29.029-64.846-64.846c0-23.543 12.549-44.137 31.314-55.497 5.509-18.491-6.149-37.829-34.971-37.829h-135.269c-26.331 0-48.297-24.229-49.166-51.451v-13.143c6.674 1.051 13.509 1.623 20.48 1.623 71.543 0 129.531-57.989 129.531-129.531s-57.989-129.509-129.509-129.509c-6.971 0-13.806 0.571-20.48 1.623v-74.56c0-26.331 21.943-48.297 48.297-48.297h137.029c32.846 0 43.383-25.097 31.634-45.463-17.417-11.634-28.891-31.451-28.891-53.966 0-35.817 29.029-64.846 64.846-64.846s64.846 29.029 64.846 64.846c0 20.823-9.829 39.337-25.097 51.2-13.531 20.686-3.383 47.337 30.491 47.337h71.269c26.331 0 43.726 24.229 43.726 50.583v137.554c0 23.497 10.971 35.566 24.389 36.251 11.063-19.977 32.32-33.509 56.777-33.509 35.817 0 64.846 29.029 64.846 64.846s-29.029 64.846-64.846 64.846z" />
<glyph unicode="&#xe949;" glyph-name="process-automation" data-tags="process-automation" d="M964.114 290.971h-217.897c-17.12 18.103-48.846 45.646-60.274 61.943 5.943 11.429 4.8 11.2 8.457 23.314l101.943 7.543c5.943 0.914 10.514 7.771 10.514 13.714v84.8c-0.229 5.714-4.8 11.657-11.2 13.029v0l-97.829 8c-4.114 12.8-2.057 9.143-8 21.714 12.8 17.829 47.086 53.029 60.343 70.857 1.829 2.743 3.2 5.486 3.2 8.686 0 12.8-54.171 62.4-66.057 73.371-2.743 2.286-5.943 3.657-9.6 3.657-3.2 0-6.4-0.914-9.143-3.2l-68.114-59.429c-10.971 5.486-12.571 5.486-24.686 9.143l-6.171 93.943c-0.914 6.4-7.314 11.429-13.714 11.429h-85.257c-6.4 0-11.886-4.571-13.714-10.971-5.943-22.4-2.971-72-5.257-95.086-12.343-4.114-11.2-5.029-22.857-10.971l-70.629 61.943c-2.743 1.829-5.943 3.2-9.6 3.2-5.554 0-17.783-9.737-30.789-21.943l-64.731 62.766c70.857 64.846 162.149 100.434 258.949 100.434 102.629 0 199.086-40 271.543-112.457s112.457-168.914 112.457-271.543c0-24.914-2.286-49.371-6.857-73.143h129.6c3.429 24 5.257 48.229 5.257 73.143 0 282.743-229.257 512-512 512-135.931 0-259.177-52.96-350.926-139.2l-118.56 114.971c-23.314 23.314-42.514 15.543-42.514-17.371v-264.229c0-50.971 8.229-59.886 59.886-59.886h224.069c16.091-17.28 39.451-40.046 49.989-55.086-5.943-11.429-5.029-16.686-8.686-28.8l-95.086-4.571c-5.943-0.914-10.514-7.771-10.514-13.714v-84.8c0-6.4 4.571-12.343 10.971-13.257l96-6.171c4.114-12.8 3.2-8.686 9.6-21.257-13.257-17.829-46.857-56-60.114-73.371-1.829-2.743-3.2-5.486-3.2-8.686 0-13.257 54.171-62.4 66.057-73.371 2.743-2.286 5.943-3.657 9.6-3.657 3.2 0 6.857 0.914 9.143 3.2l67.657 63.086c10.971-5.486 11.886-5.029 24-8.686l7.543-97.829c0.914-6.4 7.314-11.429 13.714-11.429h85.257c6.4 0 11.886 4.571 13.714 10.971 5.943 22.4 1.6 74.743 3.886 98.286 12.343 3.657 11.2 4.343 22.857 10.286l72-64.457c2.743-1.829 5.943-3.2 9.6-3.2 5.051 0 15.611 8.114 27.269 18.811l65.44-63.474c-70.834-64-161.349-99.109-257.509-99.109-102.629 0-199.086 40-271.543 112.457s-112.457 168.914-112.457 271.543c0 24.914 2.286 49.371 6.857 73.143h-129.6c-3.429-24-5.257-48.229-5.257-73.143 0-282.743 229.257-512 512-512 135.223 0 257.897 52.434 349.509 137.874l118.834-115.246c23.314-23.314 42.514-15.314 42.514 17.6v264c0 50.971-8.229 59.886-59.886 59.886zM511.543 324.571c-63.086 0-114.743 51.429-114.743 114.743s51.429 114.743 114.743 114.743c63.314 0 114.743-51.429 114.743-114.743s-51.429-114.743-114.743-114.743z" />
<glyph unicode="&#xe94a;" glyph-name="pficon-network-range" data-tags="pficon-network-range" horiz-adv-x="958" d="M510.766 658.286h-73.417v-145.714h73.417c40.183 0 72.869 32.686 72.869 72.869s-32.709 72.846-72.869 72.846zM734.949 341.943c44.091 62.811 69.989 139.337 69.989 221.897 0.023 213.577-189.097 386.674-402.651 386.674s-402.674-173.097-402.674-386.651c0-82.583 25.897-159.086 69.989-221.897l0.389-0.549c0.709-1.006 1.44-2.034 2.171-3.040l283.634-375.474c23.566-40.503 47.154-35.52 47.154-35.52 26.24 0 47.040 35.726 47.040 35.726l282.4 375.223c0.869 1.189 1.714 2.4 2.56 3.611zM291.040 291.428h-72v440h72v-440zM519.909 439.428h-82.56v-145.714h-72v437.714h154.56c80.503 0 141.44-65.486 141.44-146.011s-60.937-145.989-141.44-145.989zM955.977 539.817v0c0.617 110.469-37.28 198.331-92.754 264.366-10.629 12.663-21.44 24.754-32.526 36.96-9.851 10.857-18.171 18.126-25.143 22.857-4.869 5.92-12.229 9.691-20.48 9.691-14.629 0-26.491-11.863-26.491-26.491 0-6.811 2.583-12.983 6.811-17.691 1.646-2.606 3.589-5.097 5.623-7.429 3.154-3.634 6.56-6.88 9.669-9.577 0 0 24.96-27.931 41.371-50.446 36.48-57.966 56.023-125.211 56.023-198.194 0-82.583-13.92-141.623-58.011-204.434-0.846-1.211-1.691-2.4-2.56-3.611l-294.377-392.686c0 0-2.743-4.686-7.451-10.651 21.12-29.143 56.389-25.097 56.389-25.097 40.48-0.183 60.754 35.726 60.754 35.726l278.377 378.217c0.869 1.189 1.714 2.4 2.56 3.611 50.057 76.549 41.897 136.983 42.217 194.88z" />
<glyph unicode="&#xe94b;" glyph-name="pficon-satellite" data-tags="pficon-satellite" d="M1019.726 137.486v0l-279.543 276.549c-2.88 2.903-6.697 4.343-10.491 4.343-3.771 0-7.52-1.417-10.377-4.297l-67.36-68.731-20.251 19.68 131.611 128.686c5.851 5.669 5.966 15.040 0.297 20.869l-10.72 11.017c2.606 0.594 5.029 1.874 6.971 3.771l39.383 38.674c5.851 5.669 5.966 15.040 0.297 20.869l-135.109 138.903c-5.669 5.851-15.040 5.989-20.869 0.297l-39.383-38.651c-1.943-1.897-3.291-4.274-3.977-6.857l-7.794 8c-5.669 5.851-15.040 5.989-20.869 0.297l-133.989-130.926-19.246 18.697 66.469 69.28c2.789 2.743 4.366 6.514 4.366 10.423 0.023 3.909-1.531 7.657-4.274 10.446l-279.429 277.691c-2.88 2.903-6.697 4.343-10.491 4.343-3.771 0-7.52-1.417-10.377-4.297l-180.206-183.84c-2.789-2.766-4.366-6.514-4.366-10.423-0.023-3.909 1.531-7.657 4.274-10.446l280.549-280.48c2.903-2.903 6.674-4.343 10.469-4.343 0.457 0 0.937 0.023 1.394 0.069 3.291 0.32 6.491 1.714 8.983 4.229l68.937 71.84 17.783-17.28-66.789-65.257c-2.811-2.743-6.811-8.069-6.857-11.977s0.686-9.257 3.406-12.069l171.52-175.703c2.72-2.811 6.469-4.411 10.377-4.457 0.526 0 1.051 0.023 1.577 0.069 3.337 0.32 6.469 1.76 8.914 4.091l70.743 69.143 21.257-20.64-67.429-68.8c-2.789-2.743-4.366-6.514-4.366-10.423-0.023-3.909 1.531-7.657 4.274-10.446l275.954-278.034c2.903-2.903 6.674-4.343 10.469-4.343 0.457 0 0.937 0.023 1.394 0.069 3.291 0.32 6.491 1.714 8.983 4.229l183.794 185.349c2.789 2.766 4.366 6.514 4.366 10.423 0.046 3.84-1.509 7.589-4.251 10.377zM294.286 568.274l-184.503 184.457 85.806 87.543 184.137-182.971-85.44-89.029zM825.44 37.623l-181.074 182.446 86.103 87.84 183.246-181.28-88.274-89.006zM236.206 370.537c-66.949 0-126.491-31.634-164.526-80.777l123.749-123.749-94.4-93.943c-16-3.909-27.886-18.286-27.886-35.497 0-20.206 16.366-36.571 36.571-36.571 16.914 0 31.109 11.497 35.291 27.109l94.903 94.423 123.406-123.406c49.143 38.034 80.777 97.577 80.777 164.526 0 114.811-93.074 207.886-207.886 207.886z" />
<glyph unicode="&#xe94c;" glyph-name="pficon-template" data-tags="pficon-template" d="M219.429 512h146.286v-73.143h-146.286v73.143zM438.857 512h146.286v-73.143h-146.286v73.143zM877.714 731.428v-292.571h-219.429v73.143h146.286v146.286h-146.286v73.143h219.429zM438.857 731.428h146.286v-73.143h-146.286v73.143zM365.714 658.286h-146.286v-219.429h-73.143v292.571h219.429v-73.143zM948.571 875.428h-873.143v-873.143h873.143v873.143zM994.126 948.571c16.503 0 29.874-13.371 29.874-29.874v-967.154c0-16.16-13.097-26.971-29.257-26.971h-964.411c-16.754 0-30.331 11.291-30.331 28.046v966.789c0 16.114 13.051 29.166 29.166 29.166h964.96zM219.429 146.286h146.286v-73.143h-146.286v73.143zM438.857 146.286h146.286v-73.143h-146.286v73.143zM877.714 365.714v-292.571h-219.429v73.143h146.286v146.286h-146.286v73.143h219.429zM438.857 365.714h146.286v-73.143h-146.286v73.143zM365.714 292.571h-146.286v-219.429h-73.143v292.571h219.429v-73.143z" />
<glyph unicode="&#xe94d;" glyph-name="pficon-vcenter" data-tags="pficon-vcenter" d="M889.143 948.183h-461.714c-73.737 0-133.714-59.977-133.714-133.714v-157.897h-157.897c-73.737 0-133.714-59.977-133.714-133.714v-461.714c0-73.737 59.977-133.714 133.714-133.714h461.714c73.714 0 133.714 59.977 133.714 133.714v160.183h157.897c73.737 0 133.714 59.977 133.714 133.714v459.429c0 73.737-59.977 133.714-133.714 133.714zM878.857 365.348h-292.503l0.891-92.16v-201.76h-441.143v441.166h291.611v291.611h441.143v-438.857zM219.429 395.428v-205.714c0-23.886 19.543-43.429 43.429-43.429h205.714c23.886 0 43.429 19.543 43.429 43.429v205.714c0 0 12.64 44.183 42.903 44.183h205.714c23.886 0 43.429 19.543 43.429 43.429v205.714c0 23.886-19.543 43.429-43.429 43.429h-205.714c-23.886 0-43.429-19.543-43.429-43.429v-205.714c0 0 1.303-44.183-42.903-44.183h-205.714c-23.886 0-43.429-19.543-43.429-43.429z" />
</font></defs></svg>

Before

Width:  |  Height:  |  Size: 136 KiB

After

Width:  |  Height:  |  Size: 142 KiB

View file

@ -2,7 +2,7 @@
'use strict';
var patternfly = {
version: "3.38.0"
version: "3.41.6"
};
// definition of breakpoint sizes for tablet and desktop modes

View file

@ -2,7 +2,7 @@
'use strict';
var patternfly = {
version: "3.38.0"
version: "3.41.6"
};
// definition of breakpoint sizes for tablet and desktop modes

File diff suppressed because one or more lines are too long

View file

@ -2,7 +2,7 @@
'use strict';
var patternfly = {
version: "3.38.0"
version: "3.41.6"
};
// definition of breakpoint sizes for tablet and desktop modes

File diff suppressed because one or more lines are too long

View file

@ -1,5 +0,0 @@
# If you do not have OpenSSL installed, update
# the following line to use "http://" instead
source 'https://rubygems.org'
gem 'jekyll'

View file

@ -1,45 +0,0 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.4.0)
colorator (1.1.0)
ffi (1.9.14)
forwardable-extended (2.6.0)
jekyll (3.3.0)
addressable (~> 2.4)
colorator (~> 1.0)
jekyll-sass-converter (~> 1.0)
jekyll-watch (~> 1.1)
kramdown (~> 1.3)
liquid (~> 3.0)
mercenary (~> 0.3.3)
pathutil (~> 0.9)
rouge (~> 1.7)
safe_yaml (~> 1.0)
jekyll-sass-converter (1.4.0)
sass (~> 3.4)
jekyll-watch (1.5.0)
listen (~> 3.0, < 3.1)
kramdown (1.12.0)
liquid (3.0.6)
listen (3.0.8)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
mercenary (0.3.6)
pathutil (0.14.0)
forwardable-extended (~> 2.6)
rb-fsevent (0.9.8)
rb-inotify (0.9.7)
ffi (>= 0.5.0)
rouge (1.11.1)
safe_yaml (1.0.4)
sass (3.4.22)
PLATFORMS
ruby
DEPENDENCIES
jekyll
BUNDLED WITH
1.13.3

View file

@ -1,17 +0,0 @@
# Site settings
alert-message: ' and <a href="http://getbootstrap.com" class="alert-link">http://getbootstrap.com</a>.'
category-list: [Widgets, Charts, Layouts, Alternate Layouts]
company: 'Red Hat&reg;'
title: 'Red Hat&reg; Common User Experience'
title-product: 'Red Hat&reg; Common User Experience'
url-css-additions: '../dist/css/rcue-additions.min.css'
url-css-extra: 'tests.css'
url-css-main: '../dist/css/rcue.min.css'
url-img: 'img/'
url-js: '../components/patternfly/dist/js/patternfly.min.js'
navbar-pf-navbar-brand-icon: true
navbar-pf-alt-navbar-brand-icon: true
navbar-logo-icon: 'dist/img/logo.svg'
navbar-logo-alt-icon: 'dist/img/logo.svg'
navbar-brand-icon: 'dist/img/brand.svg'
navbar-brand-alt-icon: 'dist/img/brand-alt.svg'