Unverified Commit 6f3bdaef authored by 老广's avatar 老广 Committed by GitHub

Merge pull request #102 from jumpserver/dev_beta

Dev beta
parents 39f977cb e3328ead
......@@ -27,12 +27,15 @@
"styles.css",
"assets/ztree/awesomeStyle/awesome.css"
],
"scripts": [
"../node_modules/jquery/dist/jquery.min.js",
"../node_modules/metismenu/dist/metisMenu.js",
"comment": [
"../node_modules/jquery-sparkline/jquery.sparkline.js",
"../node_modules/tether/dist/js/tether.min.js",
"../node_modules/metismenu/dist/metisMenu.js",
"assets/slimscroll/jquery.slimscroll.min.js",
"../node_modules/tether/dist/js/tether.min.js"
],
"scripts": [
"../node_modules/jquery/dist/jquery.min.js",
"../node_modules/xterm/dist/xterm.js",
"assets/ztree/jquery.ztree.all.min.js",
"assets/ztree/jquery.ztree.exhide.min.js"
......
......@@ -25,14 +25,14 @@
}
},
"@angular-devkit/core": {
"version": "0.4.9",
"resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.4.9.tgz",
"integrity": "sha512-MOi8F6kiu9GKVzItO0NV0hPcjK/XfbeaMkBTewC/CWZKnNGeBmc3YJyBMRDaZXr5AxhzzxDDpQAso5oYJ2qXSw==",
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.3.2.tgz",
"integrity": "sha512-zABk/iP7YX5SVbmK4e+IX7j2d0D37MQJQiKgWdV3JzfvVJhNJzddiirtT980pIafoq+KyvTgVwXtc+vnux0oeQ==",
"dev": true,
"requires": {
"ajv": "~5.5.1",
"chokidar": "^1.7.0",
"rxjs": "^6.0.0-beta.3",
"rxjs": "^5.5.6",
"source-map": "^0.5.6"
},
"dependencies": {
......@@ -59,37 +59,17 @@
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz",
"integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=",
"dev": true
},
"rxjs": {
"version": "6.3.2",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.2.tgz",
"integrity": "sha512-hV7criqbR0pe7EeL3O66UYVg92IR0XsA97+9y+BWTePK9SKmEI5Qd3Zj6uPnGkNzXsBywBQWTvujPl+1Kn9Zjw==",
"dev": true,
"requires": {
"tslib": "^1.9.0"
}
}
}
},
"@angular-devkit/schematics": {
"version": "0.4.9",
"resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-0.4.9.tgz",
"integrity": "sha512-hRz2l0hX/sUMY7X5wJz6zGP4O8VOWwbdxBel/WbDGpiq/1IljfFZlh8L78k4tczL0cT+dkeMqzrh/TLvF48wNQ==",
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-0.3.2.tgz",
"integrity": "sha512-B6zZoqvHaTJy+vVdA6EtlxnCdGMa5elCa4j9lQLC3JI8DLvMXUWkCIPVbPzJ/GSRR9nsKWpvYMYaJyfBDUqfhw==",
"dev": true,
"requires": {
"@ngtools/json-schema": "^1.1.0",
"rxjs": "^6.0.0-beta.3"
},
"dependencies": {
"rxjs": {
"version": "6.3.2",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.2.tgz",
"integrity": "sha512-hV7criqbR0pe7EeL3O66UYVg92IR0XsA97+9y+BWTePK9SKmEI5Qd3Zj6uPnGkNzXsBywBQWTvujPl+1Kn9Zjw==",
"dev": true,
"requires": {
"tslib": "^1.9.0"
}
}
"rxjs": "^5.5.6"
}
},
"@angular/animations": {
......@@ -387,11 +367,6 @@
"semver-intersect": "^1.1.2"
}
},
"@swimlane/ngx-datatable": {
"version": "11.3.2",
"resolved": "https://registry.npmjs.org/@swimlane/ngx-datatable/-/ngx-datatable-11.3.2.tgz",
"integrity": "sha512-Fn1RMJ991elSvp+LV2SGzG28ypuLM2DFyXAb7o8p4kzuhqtELwB25doXrLLVrtE2QtKmzoD9fRfbEUNsBKgoWA=="
},
"@swimlane/ngx-ui": {
"version": "20.2.1",
"resolved": "https://registry.npmjs.org/@swimlane/ngx-ui/-/ngx-ui-20.2.1.tgz",
......@@ -554,6 +529,7 @@
"version": "6.5.3",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.3.tgz",
"integrity": "sha512-LqZ9wY+fx3UMiiPd741yB2pj3hhil+hQc8taf4o2QGRFpWgZ2V5C8HA165DY9sS3fJwsk7uT7ZlFEyC3Ig3lLg==",
"dev": true,
"requires": {
"fast-deep-equal": "^2.0.1",
"fast-json-stable-stringify": "^2.0.0",
......@@ -636,9 +612,9 @@
}
},
"animate.css": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/animate.css/-/animate.css-3.7.0.tgz",
"integrity": "sha512-u3iMXDJr0cxMdQocIciDiou9Au4L5f9uT+/jCtprw3s1j3HcfCuI+khF+90Ps2KdsEhM2soF7SXB4WUvI3HlXg=="
"version": "3.7.2",
"resolved": "https://registry.npmjs.org/animate.css/-/animate.css-3.7.2.tgz",
"integrity": "sha512-0bE8zYo7C0KvgOYrSVfrzkbYk6IOTVPNqkiHg2cbyF4Pq/PXzilz4BRWA3hwEUBoMp5VBgrC29lQIZyhRWdBTw=="
},
"ansi-html": {
"version": "0.0.7",
......@@ -1292,6 +1268,7 @@
"version": "1.18.2",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz",
"integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=",
"dev": true,
"requires": {
"bytes": "3.0.0",
"content-type": "~1.0.4",
......@@ -1308,17 +1285,20 @@
"bytes": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
"integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg="
"integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
"dev": true
},
"content-type": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
"integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
"integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
"dev": true
},
"debug": {
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
"requires": {
"ms": "2.0.0"
}
......@@ -1326,12 +1306,14 @@
"iconv-lite": {
"version": "0.4.19",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
"integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ=="
"integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==",
"dev": true
},
"qs": {
"version": "6.5.1",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz",
"integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A=="
"integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==",
"dev": true
}
}
},
......@@ -1904,39 +1886,6 @@
}
}
},
"chart.js": {
"version": "2.7.3",
"resolved": "https://registry.npmjs.org/chart.js/-/chart.js-2.7.3.tgz",
"integrity": "sha512-3+7k/DbR92m6BsMUYP6M0dMsMVZpMnwkUyNSAbqolHKsbIzH2Q4LWVEHHYq7v0fmEV8whXE0DrjANulw9j2K5g==",
"requires": {
"chartjs-color": "^2.1.0",
"moment": "^2.10.2"
}
},
"chartjs-color": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/chartjs-color/-/chartjs-color-2.2.0.tgz",
"integrity": "sha1-hKL7dVeH7YXDndbdjHsdiEKbrq4=",
"requires": {
"chartjs-color-string": "^0.5.0",
"color-convert": "^0.5.3"
},
"dependencies": {
"color-convert": {
"version": "0.5.3",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-0.5.3.tgz",
"integrity": "sha1-vbbGnOZg+t/+CwAHzER+G59ygr0="
}
}
},
"chartjs-color-string": {
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/chartjs-color-string/-/chartjs-color-string-0.5.0.tgz",
"integrity": "sha512-amWNvCOXlOUYxZVDSa0YOab5K/lmEhbFNKI55PWc4mlv28BDzA7zaoQTGxSBgJMHIW+hGX8YUrvw/FH4LyhwSQ==",
"requires": {
"color-name": "^1.0.0"
}
},
"chokidar": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
......@@ -2022,16 +1971,6 @@
}
}
},
"clipboard": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/clipboard/-/clipboard-1.7.1.tgz",
"integrity": "sha1-Ng1taUbpmnof7zleQrqStem1oWs=",
"requires": {
"good-listener": "^1.2.2",
"select": "^1.1.2",
"tiny-emitter": "^2.0.0"
}
},
"cliui": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
......@@ -2122,7 +2061,8 @@
"color-name": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
"dev": true
},
"colors": {
"version": "1.1.2",
......@@ -2194,11 +2134,6 @@
"integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
"dev": true
},
"compass-mixins": {
"version": "0.12.10",
"resolved": "https://registry.npmjs.org/compass-mixins/-/compass-mixins-0.12.10.tgz",
"integrity": "sha1-zZ8V+CnE6WDMQ7sibwSbKL65nUE="
},
"component-bind": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
......@@ -2873,11 +2808,6 @@
"integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
"dev": true
},
"delegate": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/delegate/-/delegate-3.1.3.tgz",
"integrity": "sha1-moJRp3fXAl+qVXN7w7BxdCEnqf0="
},
"delegates": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
......@@ -2893,7 +2823,8 @@
"depd": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz",
"integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k="
"integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=",
"dev": true
},
"deps-sort": {
"version": "2.0.0",
......@@ -2981,36 +2912,6 @@
"path-type": "^3.0.0"
}
},
"directory-encoder": {
"version": "0.9.2",
"resolved": "https://registry.npmjs.org/directory-encoder/-/directory-encoder-0.9.2.tgz",
"integrity": "sha1-IN5NpJUEP0Plx+ITwUBcsFeRR6U=",
"requires": {
"fs-extra": "^1.0.0",
"handlebars": "^4.0.6",
"img-stats": "^0.5.2"
},
"dependencies": {
"fs-extra": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz",
"integrity": "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=",
"requires": {
"graceful-fs": "^4.1.2",
"jsonfile": "^2.1.0",
"klaw": "^1.0.0"
}
},
"jsonfile": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz",
"integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=",
"requires": {
"graceful-fs": "^4.1.6"
}
}
}
},
"dns-equal": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz",
......@@ -3155,7 +3056,8 @@
"ee-first": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
"dev": true
},
"ejs": {
"version": "2.6.1",
......@@ -3880,12 +3782,14 @@
"fast-deep-equal": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz",
"integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk="
"integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=",
"dev": true
},
"fast-json-stable-stringify": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
"integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I="
"integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=",
"dev": true
},
"fast-levenshtein": {
"version": "2.0.6",
......@@ -5005,29 +4909,17 @@
"minimatch": "~3.0.2"
}
},
"good-listener": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz",
"integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=",
"requires": {
"delegate": "^3.1.2"
}
},
"graceful-fs": {
"version": "4.1.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
"dev": true
},
"guacamole-common-js": {
"version": "0.9.14-b",
"resolved": "https://registry.npmjs.org/guacamole-common-js/-/guacamole-common-js-0.9.14-b.tgz",
"integrity": "sha1-zwzjETnPNIYTqQt/lfz8z+0ZZZc="
},
"hammerjs": {
"version": "2.0.8",
"resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz",
"integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE="
},
"handle-thing": {
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz",
......@@ -5038,6 +4930,7 @@
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz",
"integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==",
"dev": true,
"requires": {
"neo-async": "^2.6.0",
"optimist": "^0.6.1",
......@@ -5048,12 +4941,14 @@
"neo-async": {
"version": "2.6.1",
"resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz",
"integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw=="
"integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==",
"dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
}
},
......@@ -5408,6 +5303,7 @@
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz",
"integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
"dev": true,
"requires": {
"depd": "1.1.1",
"inherits": "2.0.3",
......@@ -5561,14 +5457,6 @@
"dev": true,
"optional": true
},
"img-stats": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/img-stats/-/img-stats-0.5.2.tgz",
"integrity": "sha1-wgNJbELy2esuWrgjL6dWurMsnis=",
"requires": {
"xmldom": "^0.1.19"
}
},
"immediate": {
"version": "3.0.6",
"resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
......@@ -5649,7 +5537,8 @@
"inherits": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
"dev": true
},
"ini": {
"version": "1.3.5",
......@@ -5760,11 +5649,6 @@
"integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=",
"dev": true
},
"intl": {
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/intl/-/intl-1.2.5.tgz",
"integrity": "sha1-giRKIZDE5Bn4Nx9ao02qNCDiq94="
},
"invariant": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz",
......@@ -6282,19 +6166,6 @@
"resolved": "https://registry.npmjs.org/jquery/-/jquery-3.4.1.tgz",
"integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw=="
},
"jquery-slimscroll": {
"version": "1.3.8",
"resolved": "https://registry.npmjs.org/jquery-slimscroll/-/jquery-slimscroll-1.3.8.tgz",
"integrity": "sha1-hIHETnpHaHZTkIoo9/cK7WTITjY=",
"requires": {
"jquery": ">= 1.7"
}
},
"jquery-sparkline": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/jquery-sparkline/-/jquery-sparkline-2.4.0.tgz",
"integrity": "sha1-G+i3twTdOFcVJwiu+x1KSzpp+zM="
},
"js-base64": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz",
......@@ -6351,7 +6222,8 @@
"json-schema-traverse": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
"dev": true
},
"json-stable-stringify": {
"version": "1.0.1",
......@@ -6481,14 +6353,6 @@
}
}
},
"jvectormap": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/jvectormap/-/jvectormap-1.2.2.tgz",
"integrity": "sha1-LkQIskpgRz/xBsHnJD43WuXKhdo=",
"requires": {
"jquery": ">=1.5"
}
},
"karma": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/karma/-/karma-2.0.0.tgz",
......@@ -6702,14 +6566,6 @@
"is-buffer": "^1.1.5"
}
},
"klaw": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz",
"integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=",
"requires": {
"graceful-fs": "^4.1.9"
}
},
"labeled-stream-splicer": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz",
......@@ -6872,7 +6728,8 @@
"lodash": {
"version": "4.17.15",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
"integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="
"integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
"dev": true
},
"lodash.assign": {
"version": "4.2.0",
......@@ -7219,20 +7076,6 @@
"object-visit": "^1.0.0"
}
},
"material-design-icons": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/material-design-icons/-/material-design-icons-3.0.1.tgz",
"integrity": "sha1-mnHEh0chjrylHlGmbaaCA4zct78="
},
"materialize-css": {
"version": "0.100.2",
"resolved": "https://registry.npmjs.org/materialize-css/-/materialize-css-0.100.2.tgz",
"integrity": "sha512-Bf4YeoJCIdk4dlpnmVX+DIOJBbqOKwfBPD+tT5bxwXNFMLk649CGbldqtnctkkfMp+fGgSAsdYu9lo1ZolZqgA==",
"requires": {
"hammerjs": "^2.0.8",
"jquery": "^3.0.0 || ^2.1.4"
}
},
"math-random": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz",
......@@ -7264,7 +7107,8 @@
"media-typer": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
"dev": true
},
"mem": {
"version": "1.1.0",
......@@ -7408,7 +7252,8 @@
"minimist": {
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
"dev": true
},
"mississippi": {
"version": "2.0.0",
......@@ -7540,11 +7385,6 @@
}
}
},
"moment": {
"version": "2.18.1",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.18.1.tgz",
"integrity": "sha1-w2GT3Tzhwu7SrbfIAtu8d6gbHA8="
},
"mousetrap": {
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/mousetrap/-/mousetrap-1.6.2.tgz",
......@@ -7567,7 +7407,8 @@
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
"dev": true
},
"multicast-dns": {
"version": "6.2.3",
......@@ -7674,127 +7515,21 @@
"integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=",
"dev": true
},
"ng2-charts": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/ng2-charts/-/ng2-charts-1.6.0.tgz",
"integrity": "sha512-9w0WH69x5/nuqC1og2WaY39NbaBqTGIP1+5gZaH7/KPN6UEPonNg/pYnsIVklLj1DWPWXKa8+XXIJZ1jy5nLxg==",
"requires": {
"chart.js": "^2.6.0"
}
},
"ng2-file-upload": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/ng2-file-upload/-/ng2-file-upload-1.3.0.tgz",
"integrity": "sha512-Pudxik6LWYsT8hNiEW7RfjgGWAnvfQywxwJYMdt1snTUe+KnlRc/QqPv3QEQW6plXTanuLkYz/TbqilSfSHOsw=="
},
"ngx-bootstrap": {
"version": "1.9.3",
"resolved": "https://registry.npmjs.org/ngx-bootstrap/-/ngx-bootstrap-1.9.3.tgz",
"integrity": "sha512-beoKQGJEFwdg0ctIpGb+vx4PTPkyqHrA5tBAEbnUn7ZlTjjfA6533QYGv3qVoKPDNkkHmLA3lRjWKxEMYepCdg=="
},
"ngx-cookie-service": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/ngx-cookie-service/-/ngx-cookie-service-1.0.10.tgz",
"integrity": "sha512-TAXpQsIONAupTqkUDcH44hFQsLTvsXpxM80eKgxvy3vhBFfT1uIdR7BRhM7VpUW5J7BN9qCbGNgLN5lsnVu7pw=="
},
"ngx-layer": {
"version": "0.0.4",
"resolved": "https://registry.npmjs.org/ngx-layer/-/ngx-layer-0.0.4.tgz",
"integrity": "sha512-YoJKirvmyrVuYIhnkdIXPWeyAVW0rLVXB5+1IV54K9hX6UGZI5FlMVN/a7fc3IQkFjk4tGgb7hT4YvjFzALASg==",
"requires": {
"@angular/common": "^4.0.0",
"@angular/compiler": "^4.0.0",
"@angular/core": "^4.0.0",
"@angular/forms": "^4.0.0",
"@angular/http": "^4.0.0",
"@angular/platform-browser": "^4.0.0",
"@angular/platform-browser-dynamic": "^4.0.0",
"@angular/router": "^4.0.0",
"core-js": "^2.4.1",
"rxjs": "^5.1.0",
"zone.js": "^0.8.4"
},
"dependencies": {
"@angular/common": {
"version": "4.4.6",
"resolved": "https://registry.npmjs.org/@angular/common/-/common-4.4.6.tgz",
"integrity": "sha1-S4FCByTggooOg5uVpV6xp+g5GPI=",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/compiler": {
"version": "4.4.6",
"resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-4.4.6.tgz",
"integrity": "sha1-LuH68lt1fh0SiXkHS+f65SmzvCA=",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/core": {
"version": "4.4.6",
"resolved": "https://registry.npmjs.org/@angular/core/-/core-4.4.6.tgz",
"integrity": "sha1-EwMf0Q3P5DiHVBmzjyESCVi8I1Q=",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/forms": {
"version": "4.4.6",
"resolved": "https://registry.npmjs.org/@angular/forms/-/forms-4.4.6.tgz",
"integrity": "sha1-/mSs5CQ1wbgPSQNLfEHOjK8UpEo=",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/http": {
"version": "4.4.6",
"resolved": "https://registry.npmjs.org/@angular/http/-/http-4.4.6.tgz",
"integrity": "sha1-CvaAxnEL3AJtlA4iXP0PalwAXQw=",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/platform-browser": {
"version": "4.4.6",
"resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-4.4.6.tgz",
"integrity": "sha1-qYOcVH4bZU+h0kqJeAyLpquNzOA=",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/platform-browser-dynamic": {
"version": "4.4.6",
"resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.4.6.tgz",
"integrity": "sha1-TT2aanvyzz3kBYphWuBZ7/ZB+jY=",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/router": {
"version": "4.4.6",
"resolved": "https://registry.npmjs.org/@angular/router/-/router-4.4.6.tgz",
"integrity": "sha1-D2rSmuD/jSyeo3m9MgRHIXt+yGY=",
"requires": {
"tslib": "^1.7.1"
}
}
}
},
"ngx-logger": {
"version": "2.2.4",
"resolved": "https://registry.npmjs.org/ngx-logger/-/ngx-logger-2.2.4.tgz",
"integrity": "sha512-BmtQXVW+a17WeqNMSVtBZO1torrz6KBIvVLyukUCCG6xehOYtzkF3jPsCY9kCVhGWHr1uQNlxEq4LAiD4WyIBA=="
},
"ngx-perfect-scrollbar": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/ngx-perfect-scrollbar/-/ngx-perfect-scrollbar-5.2.0.tgz",
"integrity": "sha512-k3RMmwItiLzDDoDlJxRVw6fToAtSFWUioduNG6i61LHgWeGAkGl4oUo+ObUtSYgopO1fuJZmqVnN2xCkEP8DkQ==",
"requires": {
"perfect-scrollbar": "^1.3.0",
"resize-observer-polyfill": "^1.4.0"
}
},
"ngx-progressbar": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ngx-progressbar/-/ngx-progressbar-2.1.1.tgz",
......@@ -8023,11 +7758,6 @@
}
}
},
"node-gyp-build": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-3.7.0.tgz",
"integrity": "sha512-L/Eg02Epx6Si2NXmedx+Okg+4UHqmaf3TNcxd50SF9NQGcJaON3AtU++kax69XV7YWz4tUspqZSAsVofhFKG2w=="
},
"node-libs-browser": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz",
......@@ -8563,6 +8293,7 @@
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
"integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
"dev": true,
"requires": {
"ee-first": "1.1.1"
}
......@@ -8595,6 +8326,7 @@
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
"integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=",
"dev": true,
"requires": {
"minimist": "~0.0.1",
"wordwrap": "~0.0.2"
......@@ -8973,16 +8705,6 @@
"sha.js": "^2.4.8"
}
},
"peity": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/peity/-/peity-3.3.0.tgz",
"integrity": "sha512-4QUbLwDpmBFS/f0RdLODU1HgLHJJ2qo9fruRRNFB3DRNi8MCb3yIMLyNUwOLGcMwkN9uqQKacjKJEM7/TZQkFw=="
},
"perfect-scrollbar": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.3.0.tgz",
"integrity": "sha512-7Ub8YOvZB5k+pTy0K3LYUDnH9Xl3qvHcclJyIX+AV5UxHxll146iVGq4rtc+848nTDBQq89J7QxKKMA++cTXzQ=="
},
"performance-now": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz",
......@@ -9021,9 +8743,9 @@
}
},
"popper.js": {
"version": "1.12.9",
"resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.12.9.tgz",
"integrity": "sha1-DfvC3/lsRRuzMu3Pz6r1ZtMx1bM="
"version": "1.15.0",
"resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.15.0.tgz",
"integrity": "sha512-w010cY1oCUmI+9KwwlWki+r5jxKfTFDVoadl7MSrIujHU5MJ5OR6HTDj6Xo8aoR/QsA56x8jKjA59qGH4ELtrA=="
},
"portfinder": {
"version": "1.0.17",
......@@ -9632,6 +9354,7 @@
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz",
"integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=",
"dev": true,
"requires": {
"bytes": "3.0.0",
"http-errors": "1.6.2",
......@@ -9642,12 +9365,14 @@
"bytes": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
"integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg="
"integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
"dev": true
},
"iconv-lite": {
"version": "0.4.19",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
"integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ=="
"integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==",
"dev": true
}
}
},
......@@ -10023,9 +9748,9 @@
"dev": true
},
"requirejs": {
"version": "2.3.5",
"resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.5.tgz",
"integrity": "sha512-svnO+aNcR/an9Dpi44C7KSAy5fFGLtmPbaaCeQaklUz8BQhS64tWWIIlvEA5jrWICzlO/X9KSzSeXFnZdBu8nw=="
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz",
"integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg=="
},
"requires-port": {
"version": "1.0.0",
......@@ -10033,11 +9758,6 @@
"integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
"dev": true
},
"resize-observer-polyfill": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.0.tgz",
"integrity": "sha512-M2AelyJDVR/oLnToJLtuDJRBBWUGUvvGigj1411hXhAdyFWqMaqHp7TixW3FpiLuVaikIcR1QL+zqoJoZlOgpg=="
},
"resolve": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz",
......@@ -10102,11 +9822,6 @@
"inherits": "^2.0.1"
}
},
"roboto-fontface": {
"version": "0.8.0",
"resolved": "https://registry.npmjs.org/roboto-fontface/-/roboto-fontface-0.8.0.tgz",
"integrity": "sha512-ZYzRkETgBrdEGzL5JSKimvjI2CX7ioyZCkX2BpcfyjqI+079W0wHAyj5W4rIZMcDSOHgLZtgz1IdDi/vU77KEQ=="
},
"run-queue": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz",
......@@ -10172,11 +9887,6 @@
}
}
},
"sass-math": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/sass-math/-/sass-math-1.0.0.tgz",
"integrity": "sha1-swsquBY52q5m9cNnvC2Fq0EecWk="
},
"saucelabs": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.5.0.tgz",
......@@ -10259,11 +9969,6 @@
}
}
},
"select": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz",
"integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0="
},
"select-hose": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
......@@ -10475,7 +10180,8 @@
"setprototypeof": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
"integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ="
"integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=",
"dev": true
},
"sha.js": {
"version": "2.4.10",
......@@ -11088,14 +10794,6 @@
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
"dev": true
},
"ssh-keygen": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/ssh-keygen/-/ssh-keygen-0.4.1.tgz",
"integrity": "sha1-yCsloYtEV+AUUyhFaMSszOAEqas=",
"requires": {
"underscore": "1.4.x"
}
},
"sshpk": {
"version": "1.13.1",
"resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz",
......@@ -11153,7 +10851,8 @@
"statuses": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
"integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4="
"integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=",
"dev": true
},
"stdout-stream": {
"version": "1.4.1",
......@@ -11478,11 +11177,6 @@
"inherits": "2"
}
},
"tether": {
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/tether/-/tether-1.4.4.tgz",
"integrity": "sha512-bagKeRRo3vEynHnO3GB7/jB3Q4YIf0mN7gXM/nR0wZvNHkPrwmZemg1w0C32JZP0prHZUwxGwoX5CdA7tuIDEw=="
},
"through": {
"version": "2.3.8",
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
......@@ -11534,11 +11228,6 @@
"dev": true,
"optional": true
},
"tiny-emitter": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.0.2.tgz",
"integrity": "sha512-2NM0auVBGft5tee/OxP4PI3d8WItkDM+fPnaRAVo6xTDI2knbz9eC5ArWGqtGlYqiH3RU5yMpdyTTO7MguC4ow=="
},
"tmp": {
"version": "0.0.33",
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
......@@ -11835,6 +11524,7 @@
"version": "1.6.15",
"resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz",
"integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=",
"dev": true,
"requires": {
"media-typer": "0.3.0",
"mime-types": "~2.1.15"
......@@ -11856,6 +11546,7 @@
"version": "3.4.9",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz",
"integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==",
"dev": true,
"requires": {
"commander": "~2.17.1",
"source-map": "~0.6.1"
......@@ -11864,12 +11555,14 @@
"commander": {
"version": "2.17.1",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
"integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg=="
"integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==",
"dev": true
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
}
}
},
......@@ -11931,11 +11624,6 @@
"integrity": "sha1-iuVW4RAR9jwllnCKiDclnwGz1g4=",
"dev": true
},
"underscore": {
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz",
"integrity": "sha1-YaajIBBiKvoHljvzJSA88SI51gQ="
},
"union-value": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz",
......@@ -11998,7 +11686,8 @@
"unpipe": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
"integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
"integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=",
"dev": true
},
"unset-value": {
"version": "1.0.0",
......@@ -12062,6 +11751,7 @@
"version": "4.2.2",
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
"integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
"dev": true,
"requires": {
"punycode": "^2.1.0"
},
......@@ -12069,7 +11759,8 @@
"punycode": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
"dev": true
}
}
},
......@@ -12177,14 +11868,6 @@
}
}
},
"utf-8-validate": {
"version": "5.0.2",
"resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.2.tgz",
"integrity": "sha512-SwV++i2gTD5qh2XqaPzBnNX88N6HdyhQrNNRykvcS0QKvItV9u3vPEJr+X5Hhfb1JC0r0e1alL0iB09rY8+nmw==",
"requires": {
"node-gyp-build": "~3.7.0"
}
},
"util": {
"version": "0.10.3",
"resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
......@@ -14147,7 +13830,8 @@
"wordwrap": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
"integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc="
"integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=",
"dev": true
},
"worker-farm": {
"version": "1.6.0",
......@@ -14204,11 +13888,6 @@
"integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=",
"dev": true
},
"xmldom": {
"version": "0.1.27",
"resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz",
"integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk="
},
"xmlhttprequest-ssl": {
"version": "1.5.5",
"resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz",
......
......@@ -11,72 +11,73 @@
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/animations": "^5.2.11",
"@angular/cdk": "^5.2.4",
"@angular/common": "^5.2.11",
"@angular/compiler": "^5.2.11",
"@angular/core": "^5.2.11",
"@angular/flex-layout": "^5.0.0-beta.15",
"@angular/forms": "^5.2.11",
"@angular/http": "^5.2.11",
"@angular/material": "^5.2.0",
"@angular/platform-browser": "^5.2.11",
"@angular/platform-browser-dynamic": "^5.2.11",
"@angular/router": "^5.2.11",
"other": {
"@swimlane/ngx-datatable": "^11.3.2",
"@swimlane/ngx-ui": "^20.2.1",
"@types/jquery": "^3.3.6",
"@types/neffos.js": "^0.1.1",
"@types/socket.io-client": "^1.4.32",
"ajv": "^6.5.0",
"animate.css": "^3.6.1",
"body-parser": "^1.18.2",
"bootstrap": "^4.3.1",
"clipboard": "^1.7.1",
"compass-mixins": "^0.12.10",
"core-js": "2.5.3",
"directory-encoder": "^0.9.2",
"font-awesome": "4.7.0",
"guacamole-common-js": "0.9.14-b",
"handlebars": "^4.1.2",
"intl": "1.2.5",
"jquery": "^3.4.1",
"jquery-slimscroll": "^1.3.8",
"jquery-sparkline": "^2.4.0",
"jvectormap": "1.2.2",
"lodash": "^4.17.15",
"material-design-icons": "^3.0.1",
"materialize-css": "^0.100.2",
"metismenu": "^2.7.9",
"neffos.js": "^0.1.19",
"ng2-charts": "^1.5.0",
"ngx-bootstrap": "^1.6.6",
"ngx-cookie-service": "^1.0.10",
"ngx-layer": "0.0.4",
"ngx-logger": "^2.2.4",
"ngx-perfect-scrollbar": "5.2.0",
"ngx-progressbar": "^2.1.1",
"npm-font-open-sans": "^1.1.0",
"peity": "^3.3.0",
"popper.js": "1.12.9",
"requirejs": "^2.3.5",
"roboto-fontface": "^0.8.0",
"rxjs": "5.5.6",
"sass-math": "^1.0.0",
"socket.io": "^1.4.32",
"socket.io-client": "^1.4.32",
"ssh-keygen": "^0.4.1",
"tether": "^1.4.4",
"tslib": "^1.9.0",
"utf-8-validate": "^5.0.2",
"utf-8-validate": "^5.0.2"
},
"dependencies": {
"@angular/animations": "^5.2.11",
"@angular/cdk": "^5.2.4",
"@angular/common": "^5.2.11",
"@angular/compiler": "^5.2.11",
"@angular/core": "^5.2.11",
"@angular/flex-layout": "^5.0.0-beta.15",
"@angular/forms": "^5.2.11",
"@angular/http": "^5.2.11",
"@angular/material": "^5.2.0",
"@angular/platform-browser": "^5.2.11",
"@angular/platform-browser-dynamic": "^5.2.11",
"@angular/router": "^5.2.11",
"@swimlane/ngx-ui": "^20.2.1",
"@types/jquery": "^3.3.6",
"@types/neffos.js": "^0.1.1",
"@types/socket.io-client": "^1.4.32",
"rxjs": "5.5.6",
"zone.js": "0.8.20",
"uuid-js": "^0.7.5",
"xterm": "3.3.0",
"zone.js": "0.8.20"
"socket.io": "^1.4.32",
"socket.io-client": "^1.4.32",
"core-js": "2.5.3",
"neffos.js": "^0.1.19",
"bootstrap": "^4.3.1",
"popper.js": "^1.14.7",
"jquery": "^3.4.1",
"guacamole-common-js": "0.9.14-b",
"ngx-cookie-service": "^1.0.10",
"metismenu": "^2.7.9",
"ngx-logger": "^2.2.4",
"animate.css": "^3.6.1",
"tslib": "^1.9.0",
"requirejs": "^2.3.5",
"ngx-progressbar": "^2.1.1",
"npm-font-open-sans": "^1.1.0",
"font-awesome": "4.7.0"
},
"devDependencies": {
"@angular-devkit/core": "^0.4.9",
"@angular-devkit/schematics": "^0.4.9",
"@angular-devkit/core": "^0.3.2",
"@angular-devkit/schematics": "^0.3.2",
"@angular/cli": "^1.7.4",
"@angular/compiler-cli": "^5.2.11",
"@angular/language-service": "5.2.0",
......
// Elements
import {ElementTableComponent} from './table/table.component';
import {ElementLeftBarComponent} from './left-bar/left-bar.component';
import {ElementContentComponent} from './content/content.component';
import {ElementContentViewComponent} from './content-window/content-window.component';
......@@ -8,9 +7,7 @@ import {ElementAssetTreeComponent} from './asset-tree/asset-tree.component';
import {ElementTreeFilterComponent} from './tree-filter/tree-filter.component';
import {ElementFooterComponent} from './footer/footer.component';
import {ElementTermComponent} from './term/term.component';
import {ElementInteractiveComponent} from './interactive/interactive.component';
import {ChangLanWarningDialogComponent, ElementNavComponent} from './nav/nav.component';
import {ElementPopupComponent} from './popup/popup.component';
import {ElementRdpComponent} from './rdp/rdp.component';
import {ElementServerMenuComponent} from './server-menu/server-menu.component';
import {ElementIframeComponent} from './iframe/iframe.component';
......@@ -27,13 +24,10 @@ export const ElementComponents = [
ElementContentViewComponent,
ElementConnectComponent,
ElementTreeFilterComponent,
ElementTableComponent,
ElementFooterComponent,
ElementTermComponent,
ElementInteractiveComponent,
ElementNavComponent,
ChangLanWarningDialogComponent,
ElementPopupComponent,
ElementRdpComponent,
ElementServerMenuComponent,
ElementIframeComponent,
......
<div class="menu">
<input type="checkbox" href="#" class="menu-open" name="menu-open" id="menu-open"/>
<label class="menu-open-button" for="menu-open">
<span class="hamburger hamburger-1"></span>
<span class="hamburger hamburger-2"></span>
<span class="hamburger hamburger-3"></span>
</label>
<a href="#" class="menu-item"> <i class="fa fa-bar-chart"></i> </a>
<a href="#" class="menu-item"> <i class="fa fa-plus"></i> </a>
<a href="#" class="menu-item"> <i class="fa fa-heart"></i> </a>
<a href="#" class="menu-item"> <i class="fa fa-envelope"></i> </a>
</div>
@import "~sass-math/math";
//vars
$fg: #ff4081;
$bg: #3f51b5;
$pi: pi();
//config
$menu-items: 5;
$open-distance: 115px;
$opening-angle: $pi - .2;
%goo {
filter: url('#shadowed-goo');
// debug
//background:rgba(255,0,0,0.2);
}
%ball {
background: $fg;
border-radius: 100%;
width: 80px;
height: 80px;
margin-left: -40px;
position: absolute;
top: 20px;
color: white;
text-align: center;
line-height: 80px;
transform: translate3d(0, 0, 0);
transition: transform ease-out 200ms;
}
.menu-open {
display: none;
}
.menu-item {
@extend %ball;
}
.hamburger {
$width: 25px;
$height: 3px;
width: $width;
height: $height;
background: white;
display: block;
position: absolute;
top: 50%;
left: 50%;
margin-left: -$width/2;
margin-top: -$height/2;
transition: transform 200ms;
}
$hamburger-spacing: 8px;
.hamburger-1 {
transform: translate3d(0, -$hamburger-spacing, 0);
}
.hamburger-2 {
transform: translate3d(0, 0, 0);
}
.hamburger-3 {
transform: translate3d(0, $hamburger-spacing, 0);
}
.menu-open:checked + .menu-open-button {
.hamburger-1 {
transform: translate3d(0, 0, 0) rotate(45deg);
}
.hamburger-2 {
transform: translate3d(0, 0, 0) scale(0.1, 1);
}
.hamburger-3 {
transform: translate3d(0, 0, 0) rotate(-45deg);
}
}
.menu {
@extend %goo;
$width: 380px;
$height: 250px;
position: absolute;
left: 50%;
margin-left: -$width/2;
padding-top: 20px;
padding-left: $width/2;
width: $width;
height: $height;
box-sizing: border-box;
font-size: 20px;
text-align: left;
}
.menu-item {
&:hover {
background: white;
color: $fg;
}
@for $i from 1 through $menu-items {
&:nth-child(#{$i+2}) {
transition-duration: 10ms+(60ms*($i));
}
}
}
.menu-open-button {
@extend %ball;
z-index: 2;
transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.275);
transition-duration: 400ms;
transform: scale(1.1, 1.1) translate3d(0, 0, 0);
cursor: pointer;
}
.menu-open-button:hover {
transform: scale(1.2, 1.2) translate3d(0, 0, 0);
}
.menu-open:checked + .menu-open-button {
transition-timing-function: linear;
transition-duration: 200ms;
transform: scale(0.8, 0.8) translate3d(0, 0, 0);
}
.menu-open:checked ~ .menu-item {
transition-timing-function: cubic-bezier(0.935, 0.000, 0.340, 1.330);
@for $i from 1 through $menu-items {
$angle: (($pi - $opening-angle)/2)+(($opening-angle/($menu-items - 1))*($i - 1)+($pi*0.43));
&:nth-child(#{$i+2}) {
transition-duration: 80ms+(80ms*$i);
transform: translate3d(sin($angle)*$open-distance, cos($angle)*$open-distance, 0);
}
}
}
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ElementInteractiveComponent } from './interactive.component';
describe('ElementInteractiveComponent', () => {
let component: ElementInteractiveComponent;
let fixture: ComponentFixture<ElementInteractiveComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ ElementInteractiveComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(ElementInteractiveComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'elements-interactive',
templateUrl: './interactive.component.html',
styleUrls: ['./interactive.component.scss']
})
export class ElementInteractiveComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ElementPopupComponent } from './popup.component';
describe('ElementPopupComponent', () => {
let component: ElementPopupComponent;
let fixture: ComponentFixture<ElementPopupComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ ElementPopupComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(ElementPopupComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should be created', () => {
expect(component).toBeTruthy();
});
});
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'elements-popup',
templateUrl: './popup.component.html',
styleUrls: ['./popup.component.css']
})
export class ElementPopupComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}
<div>
<input
type='text'
placeholder='Type to filter the name column...'
(keyup)='updateFilter($event)'
*ngIf="config.search"/>
<ngx-datatable
#table
class="material"
[rows]="rows"
[columns]="columns"
[limit]="config.limit"
[columnMode]="config.columnMode"
[headerHeight]="config.headerHeight"
[footerHeight]="config.footerHeight"
[rowHeight]="config.rowHeight"
[scrollbarV]="config.scrollbarV"
[scrollbarH]="config.scrollbarH"
></ngx-datatable>
<mat-paginator #paginator
[pageSize]="config.pageSize"
[pageSizeOptions]="config.pageSizeOptions"
(click)="test()">
</mat-paginator>
</div>
<button (click)="test()">ssss</button>
input {
padding: 8px;
margin: 15px auto;
width: 30%;
}
.material {
box-shadow: 0 3px 5px -3px rgba(0, 0, 0, 0.2);
}
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ElementTableComponent } from './table.component';
describe('ElementTableComponent', () => {
let component: ElementTableComponent;
let fixture: ComponentFixture<ElementTableComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ ElementTableComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(ElementTableComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});
import {Component, Input, OnInit, ViewChild} from '@angular/core';
import {DatatableComponent} from '@swimlane/ngx-datatable';
import {MatPaginator} from '@angular/material';
import {LogService} from '@app/app.service';
export let Config: {
search: boolean,
scrollbarV: boolean,
scrollbarH: boolean,
rowHeight: number,
footerHeight: number,
headerHeight: number,
limit: number,
columnMode: string,
pageSize: number,
pageSizeOptions: Array<number>,
} = {
search: false,
scrollbarV: false,
scrollbarH: false,
rowHeight: 50,
footerHeight: 50,
headerHeight: 50,
limit: 10,
columnMode: 'force',
pageSize: 10,
pageSizeOptions: [5, 10, 20],
};
@Component({
selector: 'elements-table',
templateUrl: './table.component.html',
styleUrls: ['./table.component.scss']
})
export class ElementTableComponent implements OnInit {
@Input() rows: Array<any>;
@Input() columns: Array<any>;
@Input() config: any;
temp = [];
@ViewChild(DatatableComponent) table: DatatableComponent;
@ViewChild(MatPaginator) paginator: MatPaginator;
constructor(private _logger: LogService) {
}
ngOnInit() {
Config = this.config;
this.paginator.length = this.rows.length;
}
updateFilter(event) {
const val = event.target.value.toLowerCase();
// filter our data
const temp = this.temp.filter(function (d) {
return d.name.toLowerCase().indexOf(val) !== -1 || !val;
});
// update the rows
this.rows = temp;
// Whenever the filter changes, always go back to the first page
this.table.offset = 0;
}
test() {
console.log(this.paginator._pageIndex);
console.log(this.paginator._pageIndex * this.paginator.pageSize + 1);
this.table.limit = this.paginator.pageSize;
}
}
<div *ngFor="let node of TreeData">
<div *ngIf="node.leafs?.length>0">
{{node.id}}
<elements-tree [TreeData]="node.leafs"></elements-tree>
</div>
<div *ngIf="node.leafs?.length==0">
{{node.id}}
</div>
</div>
<!--<ul class="filetree ">-->
<!--<li *ngFor="let hostGroup of HostGroups | SearchFilter: q; let i = index ">-->
<!--<input type="checkbox" id="hostgroup-{{i}}">-->
<!--<label for="hostgroup-{{i}}" matTooltip="{{hostGroup.name}}" [matTooltipPosition]="TooltipPosition">{{hostGroup.name}}</label>-->
<!--</li>-->
<!--</ul>-->
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ElementTreeComponent } from './tree.component';
describe('R ', () => {
let component: ElementTreeComponent;
let fixture: ComponentFixture<ElementTreeComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ ElementTreeComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(ElementTreeComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});
import {Component, Input, OnInit} from '@angular/core';
import {HttpService} from '@app/app.service';
export interface Assets {
name: string;
id: string;
type: string;
}
export interface Groups {
id: string;
key: string;
name: string;
value: string;
parent: string;
assets_granted: Array<Assets>;
}
export class TreeStruct {
id: string;
leafs: Array<TreeStruct>;
static create(id, parent: string) {
const tmp = new TreeStruct();
tmp.id = id;
tmp.leafs = [];
return tmp;
}
}
@Component({
selector: 'elements-tree',
templateUrl: './tree.component.html',
styleUrls: ['./tree.component.scss']
})
export class ElementTreeComponent implements OnInit {
@Input() TreeData: Array<TreeStruct>;
constructor(private _http: HttpService) {
}
ngOnInit() {
}
}
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import {ElementTreeComponent} from './tree.component';
@NgModule({
imports: [
CommonModule
],
declarations: [
ElementTreeComponent
]
})
export class TreeModule {
}
import {MaterialModule} from './MaterialModule.component';
import {NgxUIModule, SplitModule} from '@swimlane/ngx-ui';
import {LoggerModule, NgxLoggerLevel} from 'ngx-logger';
import {NgxDatatableModule} from '@swimlane/ngx-datatable';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {NgProgressModule} from 'ngx-progressbar';
import {FlexLayoutModule} from '@angular/flex-layout';
......@@ -13,7 +12,6 @@ export const PluginModules = [
MaterialModule,
FlexLayoutModule,
LoggerModule.forRoot({level: NgxLoggerLevel.DEBUG, serverLogLevel: NgxLoggerLevel.ERROR}),
NgxDatatableModule,
NgxUIModule,
SplitModule
];
......
......@@ -6,10 +6,10 @@ $fa-font-path: '~font-awesome/fonts';
// Todo: 去掉依赖
@import '~bootstrap/scss/bootstrap';
$FontPathOpenSans: '~npm-font-open-sans/fonts';
@import '~npm-font-open-sans/open-sans';
$roboto-font-path: '~roboto-fontface/fonts';
@import '~roboto-fontface/css/mixins.scss';
//$FontPathOpenSans: '~npm-font-open-sans/fonts';
//@import '~npm-font-open-sans/open-sans';
//$roboto-font-path: '~roboto-fontface/fonts';
//@import '~roboto-fontface/css/mixins.scss';
/*
*
......@@ -21,49 +21,49 @@ $asset-path: '../static/imgs/inspinia';
// Todo: 去掉依赖
@import '../assets/inspinia/style';
@import '~@swimlane/ngx-datatable/release/index.css';
@import '~@swimlane/ngx-datatable/release/themes/material.css';
@import '~@swimlane/ngx-datatable/release/assets/icons.css';
//@import '~@swimlane/ngx-datatable/release/index.css';
//@import '~@swimlane/ngx-datatable/release/themes/material.css';
//@import '~@swimlane/ngx-datatable/release/assets/icons.css';
@import './material.css';
$material-design-icons-font-path: '~/material-design-icons/iconfont/';
//$material-design-icons-font-path: '~/material-design-icons/iconfont/';
//@import '~material-design-icons/iconfont/material-icons';
@font-face {
font-family: 'Material Icons';
font-style: normal;
font-weight: 400;
src: url('#{$material-design-icons-font-path}/MaterialIcons-Regular.eot'); /* For IE6-8 */
src: local('Material Icons'),
local('MaterialIcons-Regular'),
url('#{$material-design-icons-font-path}/MaterialIcons-Regular.woff2') format('woff2'),
url('#{$material-design-icons-font-path}/MaterialIcons-Regular.woff') format('woff'),
url('#{$material-design-icons-font-path}/MaterialIcons-Regular.ttf') format('truetype');
}
.material-icons {
font-family: 'Material Icons';
font-weight: normal;
font-style: normal;
font-size: 24px; /* Preferred icon size */
display: inline-block;
line-height: 1;
text-transform: none;
letter-spacing: normal;
word-wrap: normal;
white-space: nowrap;
direction: ltr;
/* Support for all WebKit browsers. */
-webkit-font-smoothing: antialiased;
/* Support for Safari and Chrome. */
text-rendering: optimizeLegibility;
/* Support for Firefox. */
-moz-osx-font-smoothing: grayscale;
/* Support for IE. */
font-feature-settings: 'liga';
}
//@font-face {
// font-family: 'Material Icons';
// font-style: normal;
// font-weight: 400;
// src: url('#{$material-design-icons-font-path}/MaterialIcons-Regular.eot'); /* For IE6-8 */
// src: local('Material Icons'),
// local('MaterialIcons-Regular'),
// url('#{$material-design-icons-font-path}/MaterialIcons-Regular.woff2') format('woff2'),
// url('#{$material-design-icons-font-path}/MaterialIcons-Regular.woff') format('woff'),
// url('#{$material-design-icons-font-path}/MaterialIcons-Regular.ttf') format('truetype');
//}
//
//.material-icons {
// font-family: 'Material Icons';
// font-weight: normal;
// font-style: normal;
// font-size: 24px; /* Preferred icon size */
// display: inline-block;
// line-height: 1;
// text-transform: none;
// letter-spacing: normal;
// word-wrap: normal;
// white-space: nowrap;
// direction: ltr;
//
// /* Support for all WebKit browsers. */
// -webkit-font-smoothing: antialiased;
// /* Support for Safari and Chrome. */
// text-rendering: optimizeLegibility;
//
// /* Support for Firefox. */
// -moz-osx-font-smoothing: grayscale;
//
// /* Support for IE. */
// font-feature-settings: 'liga';
//}
//ul {
// padding-left: 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment