Commit 922b9684 authored by ibuler's avatar ibuler

[Update] 修改Luna结构

parent 8dd82f18
{
"name": "luna",
"version": "1.4.7",
"version": "1.5.2",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
......@@ -232,31 +232,31 @@
}
},
"@angular/common": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@angular/common/-/common-5.2.0.tgz",
"integrity": "sha512-yMFn2isC7/XOs56/2Kzzbb1AASHiwipAPOVFtKe7TdZQClO8fJXwCnk326rzr615+CG0eSBNQWeiFGyWN2riBA==",
"version": "5.2.11",
"resolved": "https://registry.npmjs.org/@angular/common/-/common-5.2.11.tgz",
"integrity": "sha512-LniJjGAeftUJDJh+2+LEjltcGen08C/VMxQ/eUYmesytKy1sN+MWzh3GbpKfEWtWmyUsYTG9lAAJNo3L3jPwsw==",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/compiler": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.2.0.tgz",
"integrity": "sha512-RfYa4ESgjGX0T0ob/Xz00IF7nd2xZkoyRy6oKgL82q42uzB3xZUDMrFNgeGxAUs3H22IkL46/5SSPOMOTMZ0NA==",
"version": "5.2.11",
"resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.2.11.tgz",
"integrity": "sha512-ICvB1ud1mxaXUYLb8vhJqiLhGBVocAZGxoHTglv6hMkbrRYcnlB3FZJFOzBvtj+krkd1jamoYLI43UAmesqQ6Q==",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/compiler-cli": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-5.2.0.tgz",
"integrity": "sha512-+Kef4NjuHwLj2hRPdVo4yAtPmv+kn0Nu/ShmKfaEK4mt9aaQMFxKNt6beUuDK5iUPMB5nuTCZ4bqEFpqd+EtxQ==",
"version": "5.2.11",
"resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-5.2.11.tgz",
"integrity": "sha512-dwrQ0yxoCM/XzKzlm7pTsyg4/6ECjT9emZufGj8t12bLMO8NDn1IJOsqXJA1+onEgQKhlr0Ziwi+96TvDTb1Cg==",
"dev": true,
"requires": {
"chokidar": "^1.4.2",
"minimist": "^1.2.0",
"reflect-metadata": "^0.1.2",
"tsickle": "^0.26.0"
"tsickle": "^0.27.2"
},
"dependencies": {
"minimist": {
......@@ -268,33 +268,33 @@
}
},
"@angular/core": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@angular/core/-/core-5.2.0.tgz",
"integrity": "sha512-s2ne45DguNUubhC1YgybGECC4Tyx3G4EZCntUiRMDWWkmKXSK+6dgHMesyDo8R5Oat8VfN4Anf8l3JHS1He8kg==",
"version": "5.2.11",
"resolved": "https://registry.npmjs.org/@angular/core/-/core-5.2.11.tgz",
"integrity": "sha512-h2vpvXNAdOqKzbVaZcHnHGMT5A8uDnizk6FgGq6SPyw9s3d+/VxZ9LJaPjUk3g2lICA7og1tUel+2YfF971MlQ==",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/flex-layout": {
"version": "2.0.0-beta.10-4905443",
"resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-2.0.0-beta.10-4905443.tgz",
"integrity": "sha512-jjr6mQ3X2vdEQbsyHD/mz1hfTBUUEOZVLFWEz/sbNoeU7uiA4lvqdp/ASrkZydGJHmTDUYrbBE/9kx0lherZ8Q==",
"version": "5.0.0-beta.15",
"resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-5.0.0-beta.15.tgz",
"integrity": "sha512-rGvvjDu0PMrsfTsNX+qcNc4EloKGXTxW8FT1tKcdIxOUMRQkvflkwAnKW2kRWNfEgDtBNt+VNP98u2w+athvZQ==",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/forms": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.2.0.tgz",
"integrity": "sha512-g1/SF9lY0ZwzJ0w4NXbFsTGGEuUdgtaZny8DmkaqtmA7idby3FW398X0tv25KQfVYKtL+p9Jp1Y8EI0CvrIsvw==",
"version": "5.2.11",
"resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.2.11.tgz",
"integrity": "sha512-wBllFlIubPclAFRXUc84Kc7TMeKOftzrQraVZ7ooTNeFLLa/FZLN2K8HGyRde8X/XDsMu1XAmjNfkz++spwTzA==",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/http": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@angular/http/-/http-5.2.0.tgz",
"integrity": "sha512-V5Cl24dP3rCXTTQvDc0TIKoWqBRAa0DWAQbtr7iuDAt5a1vPGdKz5K1sEiiV6ziwX6gzjiwHjUvL+B+WbIUrQA==",
"version": "5.2.11",
"resolved": "https://registry.npmjs.org/@angular/http/-/http-5.2.11.tgz",
"integrity": "sha512-eR7wNXh1+6MpcQNb3sq4bJVX03dx50Wl3kpPG+Q7N1VSL0oPQSobaTrR17ac3oFCEfSJn6kkUCqtUXha6wcNHg==",
"requires": {
"tslib": "^1.7.1"
}
......@@ -314,25 +314,25 @@
}
},
"@angular/platform-browser": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.2.0.tgz",
"integrity": "sha512-c6cR15MfopPwGZ097HdRuAi9+R9BhA3bRRFpP2HmrSSB/BW4ZNovUYwB2QUMSYbd9s0lYTtnavqGm6DKcyF2QA==",
"version": "5.2.11",
"resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.2.11.tgz",
"integrity": "sha512-6YZ4IpBFqXx88vEzBZG2WWnaSYXbFWDgG0iT+bZPHAfwsbmqbcMcs7Ogu+XZ4VmK02dTqbrFh7U4P2W+sqrzow==",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/platform-browser-dynamic": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.2.0.tgz",
"integrity": "sha512-xG1eNoi8sm4Jcly2y98r5mqYVe3XV8sUJCtOhvGBYtvt4dKEQ5tOns6fWQ0nUbl6Vv3Y0xgGUS1JCtfut3DuaQ==",
"version": "5.2.11",
"resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.2.11.tgz",
"integrity": "sha512-5kKPNULcXNwkyBjpHfF+pq+Yxi8Zl866YSOK9t8txoiQ9Ctw97kMkEJcTetk6MJgBp/NP3YyjtoTAm8oXLerug==",
"requires": {
"tslib": "^1.7.1"
}
},
"@angular/router": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@angular/router/-/router-5.2.0.tgz",
"integrity": "sha512-VXDXtp2A1GQEUEhXg0ZzqHdTUERLgDSo3/Mmpzt+dgLMKlXDSCykcm4gINwE5VQLGD1zQvDFCCRv3seGRNfrqA==",
"version": "5.2.11",
"resolved": "https://registry.npmjs.org/@angular/router/-/router-5.2.11.tgz",
"integrity": "sha512-NT8xYl7Vr3qPygisek3PlXqNROEjg48GXOEsDEc7c8lDBo3EB9Tf328fWJD0GbLtXZNhmmNNxwIe+qqPFFhFAA==",
"requires": {
"tslib": "^1.7.1"
}
......@@ -406,6 +406,14 @@
"normalize.css": "^5.0.0"
},
"dependencies": {
"@angular/flex-layout": {
"version": "2.0.0-beta.10-4905443",
"resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-2.0.0-beta.10-4905443.tgz",
"integrity": "sha512-jjr6mQ3X2vdEQbsyHD/mz1hfTBUUEOZVLFWEz/sbNoeU7uiA4lvqdp/ASrkZydGJHmTDUYrbBE/9kx0lherZ8Q==",
"requires": {
"tslib": "^1.7.1"
}
},
"moment": {
"version": "2.22.2",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz",
......@@ -563,6 +571,7 @@
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
"integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
"dev": true,
"requires": {
"kind-of": "^3.0.2",
"longest": "^1.0.1",
......@@ -572,7 +581,8 @@
"amdefine": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU="
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
"dev": true
},
"amqplib": {
"version": "0.5.2",
......@@ -1356,9 +1366,9 @@
}
},
"bootstrap": {
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.1.3.tgz",
"integrity": "sha512-rDFIzgXcof0jDyjNosjv4Sno77X4KuPeFxG2XZZv1/Kc8DRVGVADdoQyyOVDwPqL36DDmtCQbrpMCqvpPLJQ0w=="
"version": "4.3.1",
"resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.3.1.tgz",
"integrity": "sha512-rXqOmH1VilAt2DyPzluTi2blhk17bO7ef+zLLPlWvG494pDxcM234pJ8wTc/6R40UWizAIIMgxjvxZg5kmsbag=="
},
"brace-expansion": {
"version": "1.1.8",
......@@ -1858,6 +1868,7 @@
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
"integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
"dev": true,
"requires": {
"align-text": "^0.1.3",
"lazy-cache": "^1.0.3"
......@@ -1866,7 +1877,8 @@
"lazy-cache": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz",
"integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4="
"integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=",
"dev": true
}
}
},
......@@ -2698,7 +2710,8 @@
"decamelize": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
"dev": true
},
"decode-uri-component": {
"version": "0.2.0",
......@@ -3156,10 +3169,6 @@
"integrity": "sha512-h3zEBLdHvsKfaXv1SHAtykJyNtwYFEKkrWGSFyW1BzGgPQ4ykAzD5Hd8C5MZGTAEhkCKmtyIwYUrapsI0xfKww==",
"dev": true
},
"elfinder": {
"version": "git+https://github.com/Studio-42/elFinder.git#2d3a31f70e3c817417913ab54035717f26e3efce",
"from": "git+https://github.com/Studio-42/elFinder.git#2.1.33"
},
"elliptic": {
"version": "6.4.0",
"resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz",
......@@ -3933,11 +3942,6 @@
"minimatch": "^3.0.3"
}
},
"filetree-css": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/filetree-css/-/filetree-css-1.0.0.tgz",
"integrity": "sha1-7bfoiHH+ere+CeaZXNouodVzXUw="
},
"fill-range": {
"version": "2.2.4",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz",
......@@ -5031,82 +5035,25 @@
"dev": true
},
"handlebars": {
"version": "4.0.11",
"resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz",
"integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=",
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz",
"integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==",
"requires": {
"async": "^1.4.0",
"neo-async": "^2.6.0",
"optimist": "^0.6.1",
"source-map": "^0.4.4",
"uglify-js": "^2.6"
"source-map": "^0.6.1",
"uglify-js": "^3.1.4"
},
"dependencies": {
"async": {
"version": "1.5.2",
"resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
"integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo="
},
"camelcase": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
"integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=",
"optional": true
},
"cliui": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz",
"integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=",
"optional": true,
"requires": {
"center-align": "^0.1.1",
"right-align": "^0.1.1",
"wordwrap": "0.0.2"
}
"neo-async": {
"version": "2.6.1",
"resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz",
"integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw=="
},
"source-map": {
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
"requires": {
"amdefine": ">=0.0.4"
}
},
"uglify-js": {
"version": "2.8.29",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
"integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
"optional": true,
"requires": {
"source-map": "~0.5.1",
"uglify-to-browserify": "~1.0.0",
"yargs": "~3.10.0"
},
"dependencies": {
"source-map": {
"version": "0.5.7",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
"optional": true
}
}
},
"wordwrap": {
"version": "0.0.2",
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
"integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
"optional": true
},
"yargs": {
"version": "3.10.0",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
"integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
"optional": true,
"requires": {
"camelcase": "^1.0.2",
"cliui": "^2.1.0",
"decamelize": "^1.0.0",
"window-size": "0.1.0"
}
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
}
}
},
......@@ -5872,7 +5819,8 @@
"is-buffer": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.5.tgz",
"integrity": "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw="
"integrity": "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw=",
"dev": true
},
"is-builtin-module": {
"version": "1.0.0",
......@@ -6330,9 +6278,9 @@
"dev": true
},
"jquery": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/jquery/-/jquery-3.2.1.tgz",
"integrity": "sha1-XE2d5lKvbNCncBVKYxu6ErAVx4c="
"version": "3.4.1",
"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",
......@@ -6749,6 +6697,7 @@
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
"integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
"dev": true,
"requires": {
"is-buffer": "^1.1.5"
}
......@@ -6921,9 +6870,9 @@
}
},
"lodash": {
"version": "4.17.11",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
"integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg=="
"version": "4.17.15",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
"integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="
},
"lodash.assign": {
"version": "4.2.0",
......@@ -7114,7 +7063,8 @@
"longest": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz",
"integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc="
"integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=",
"dev": true
},
"loose-envify": {
"version": "1.3.1",
......@@ -9884,9 +9834,9 @@
"optional": true
},
"reflect-metadata": {
"version": "0.1.12",
"resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.12.tgz",
"integrity": "sha512-n+IyV+nGz3+0q3/Yf1ra12KpCyi001bi4XFxSjbiWWjfqb52iTTtpGXmCCAOWWIAn9KEuFZKGqBERHmrtScZ3A==",
"version": "0.1.13",
"resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz",
"integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==",
"dev": true
},
"regenerate": {
......@@ -9989,7 +9939,8 @@
"repeat-string": {
"version": "1.6.1",
"resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
"integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc="
"integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
"dev": true
},
"repeating": {
"version": "2.0.1",
......@@ -10127,6 +10078,7 @@
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
"integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=",
"dev": true,
"requires": {
"align-text": "^0.1.1"
}
......@@ -11743,15 +11695,15 @@
}
},
"tsickle": {
"version": "0.26.0",
"resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.26.0.tgz",
"integrity": "sha512-eWJ2CUfttGK0LqF9iJ/Avnxbj4M+fCyJ50Zag3wm73Fut1hsasPRHKxKdrMWVj4BMHnQNx7TO+DdNmLmJTSuNw==",
"version": "0.27.5",
"resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.27.5.tgz",
"integrity": "sha512-NP+CjM1EXza/M8mOXBLH3vkFEJiu1zfEAlC5WdJxHPn8l96QPz5eooP6uAgYtw1CcKfuSyIiheNUdKxtDWCNeg==",
"dev": true,
"requires": {
"minimist": "^1.2.0",
"mkdirp": "^0.5.1",
"source-map": "^0.5.6",
"source-map-support": "^0.4.2"
"source-map": "^0.6.0",
"source-map-support": "^0.5.0"
},
"dependencies": {
"minimist": {
......@@ -11759,6 +11711,22 @@
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"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==",
"dev": true
},
"source-map-support": {
"version": "0.5.13",
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz",
"integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==",
"dev": true,
"requires": {
"buffer-from": "^1.0.0",
"source-map": "^0.6.0"
}
}
}
},
......@@ -11888,7 +11856,6 @@
"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"
......@@ -11897,14 +11864,12 @@
"commander": {
"version": "2.17.1",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
"integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==",
"dev": true
"integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg=="
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
}
}
},
......@@ -11912,6 +11877,7 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz",
"integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=",
"dev": true,
"optional": true
},
"uglifyjs-webpack-plugin": {
......@@ -14175,7 +14141,8 @@
"window-size": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
"integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0="
"integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=",
"dev": true
},
"wordwrap": {
"version": "0.0.3",
......
......@@ -19,6 +19,7 @@
"@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",
......@@ -31,6 +32,7 @@
"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",
......@@ -75,7 +77,7 @@
"devDependencies": {
"@angular-devkit/core": "^0.4.9",
"@angular-devkit/schematics": "^0.4.9",
"@angular/cli": "^7.2.1",
"@angular/cli": "^1.7.4",
"@angular/compiler-cli": "^5.2.11",
"@angular/language-service": "5.2.0",
"@types/jasmine": "2.8.4",
......
{
"/api": {
"target": "http://127.0.0.1:5001",
"target": "http://127.0.0.1:8080",
"secure": false
},
"/luna/i18n": {
......@@ -8,7 +8,7 @@
"secure": false
},
"/socket.io/": {
"target": "http://127.0.0.1:5001",
"target": "http://127.0.0.1:5000",
"secure": false,
"ws": true
},
......@@ -27,5 +27,13 @@
"^/rdp": ""
},
"secure": false
},
"/guacamole/": {
"target": "http://127.0.0.1:8083",
"secure": false,
"ws": true,
"pathRewrite": {
"^/guacamole": ""
}
}
}
......@@ -9,16 +9,16 @@ import {BrowserModule} from '@angular/platform-browser';
import {NgModule} from '@angular/core';
import {FormsModule, ReactiveFormsModule} from '@angular/forms'; // <-- NgModel lives here
import {NGXLogger} from 'ngx-logger';
import {FlexLayoutModule} from '@angular/flex-layout';
import {HttpClientModule} from '@angular/common/http';
import {CookieService} from 'ngx-cookie-service';
import {MAT_LABEL_GLOBAL_OPTIONS} from '@angular/material';
import {AppRouterModule} from './router/router.module';
// service
import {AppService, HttpService, LocalStorageService, NavService, LogService, UUIDService, TreeFilterService} from './app.service';
import {CookieService} from 'ngx-cookie-service';
import {MAT_LABEL_GLOBAL_OPTIONS} from '@angular/material';
import {AppRouterModule} from './router/router.module';
import {Pipes} from './pipes/pipes';
import {AppComponent} from './pages/app.component';
import {PagesComponents} from './pages/pages.component';
......@@ -34,6 +34,7 @@ import {SftpComponent} from './elements/sftp/sftp.component';
@NgModule({
imports: [
BrowserModule,
FlexLayoutModule,
FormsModule,
HttpClientModule,
ReactiveFormsModule,
......
......@@ -3,9 +3,9 @@ import {MatDialog} from '@angular/material';
import {BehaviorSubject} from 'rxjs/BehaviorSubject';
import {ActivatedRoute} from '@angular/router';
import {AppService, HttpService, LogService, NavService, TreeFilterService} from '../../app.service';
import {connectEvt, translate} from '../../globals';
import {TreeNode, ConnectEvt} from '../../model';
import {AppService, HttpService, LogService, NavService, TreeFilterService} from '@app/app.service';
import {connectEvt, translate} from '@app/globals';
import {TreeNode, ConnectEvt} from '@app/model';
declare var $: any;
......
import {Component, Input, OnInit, Output, Inject, OnDestroy, EventEmitter} from '@angular/core';
import {connectEvt} from '../../globals';
import {AppService, HttpService, LogService, NavService} from '../../app.service';
import {connectEvt} from '@app/globals';
import {AppService, HttpService, LogService, NavService} from '@app/app.service';
import {MAT_DIALOG_DATA, MatDialog, MatDialogRef} from '@angular/material';
import {FormControl, Validators} from '@angular/forms';
import {ActivatedRoute} from '@angular/router';
import {SystemUser, TreeNode, Asset} from '../../model';
import {View} from '../content/model';
import {SystemUser, TreeNode, Asset} from '@app/model';
import {View} from '@app/model';
import * as jQuery from 'jquery/dist/jquery.min';
declare var $: any;
......
import {Component, OnInit, Input, Output, EventEmitter} from '@angular/core';
import {View, ViewAction} from '../content/model';
import {View, ViewAction} from '@app/model';
@Component({
selector: 'elements-content-tab',
......
div, elements-term, elements-guacamole, elements-settings {
div, elements-term, elements-guacamole {
height: 100%;
}
elements-term, elements-guacamole, elements-settings {
elements-term, elements-guacamole {
/*padding-bottom: 30px;*/
}
......
import {Component, OnInit, Input} from '@angular/core';
import {View} from '../content/model';
import {View} from '@app/model';
@Component({
selector: 'elements-content-window',
......
<div id="content" fxLayout="column" ngxSplit="column">
<div fxFlex="0 0 30px">
<div class="scroll-button" style="padding: 0 5px">
<div id="content">
<div>
<div class="scroll-button">
<a class="left" (click)="scrollLeft()"><i class="fa fa-caret-left"></i></a>
<a class="right" (click)="scrollRight()"><i class="fa fa-caret-right"></i></a>
</div>
......@@ -13,9 +13,9 @@
</ul>
</div>
</div>
<div fxFlex="1 1 calc(100%-30px)" id="winContainer">
<div id="winContainer">
<elements-content-window *ngFor="let view of viewList" [view]="view" ></elements-content-window>
</div>
</div>
<elements-connect [ngStyle]="{'display': none}" (onNewView)="onNewView($event)" ></elements-connect>
<elements-connect [ngStyle]="{'display': 'none'}" (onNewView)="onNewView($event)" ></elements-connect>
......@@ -13,6 +13,7 @@
display: inline-block;
min-width: 100%;
padding-left: 0;
margin: 0;
}
/*
* scrollbar
......@@ -36,7 +37,8 @@
height: 30px;
overflow: hidden;
background-color: #3a3333;
color: white
color: white;
padding: 0 5px;
}
.scroll-button a.disabled {
......@@ -44,7 +46,14 @@
cursor: not-allowed;
}
.window {
#content {
height: 100%;
}
#winContainer {
height: calc(100% - 30px);
}
//
//.window {
// height: 100%;
//}
import {Component, ElementRef, OnInit, ViewChild} from '@angular/core';
import {View, ViewAction} from './model';
import {View, ViewAction} from '@app/model';
@Component({
selector: 'elements-content',
......@@ -7,8 +7,8 @@ import {View, ViewAction} from './model';
styleUrls: ['./content.component.scss']
})
export class ElementContentComponent implements OnInit {
viewList: Array<View> = [];
@ViewChild('tabs') tabsRef: ElementRef;
viewList: Array<View> = [];
static DisconnectAll() {
}
......
export class View {
id: string;
nick: string;
type: string;
editable: boolean;
active: boolean;
connected: boolean;
hide: boolean;
closed: boolean;
host: any;
user: any;
remoteApp: string;
room: string;
Rdp: any;
Term: any;
}
export class ViewAction {
view: View;
name: string;
constructor(view: View, name: string) {
this.view = view;
this.name = name;
}
}
import {Component, Inject, Injectable, OnInit} from '@angular/core';
import {MAT_DIALOG_DATA, MatDialog, MatDialogRef} from '@angular/material';
import {LogService} from '../../app.service';
import {LogService} from '@app/app.service';
import {FormControl, Validators} from '@angular/forms';
// import * as layer from 'layui-layer/src/layer.js';
......
......@@ -6,7 +6,6 @@ import {ElementContentViewComponent} from './content-window/content-window.compo
import {ElementContentTabComponent} from './content-tab/content-tab.component';
import {ElementAssetTreeComponent} from './asset-tree/asset-tree.component';
import {ElementTreeFilterComponent} from './tree-filter/tree-filter.component';
import {ElementOfooterComponent} from './ofooter/ofooter.component';
import {ElementFooterComponent} from './footer/footer.component';
import {ElementTermComponent} from './term/term.component';
import {ElementInteractiveComponent} from './interactive/interactive.component';
......@@ -28,7 +27,6 @@ export const ElementComponents = [
ElementContentViewComponent,
ElementConnectComponent,
ElementTreeFilterComponent,
ElementOfooterComponent,
ElementTableComponent,
ElementFooterComponent,
ElementTermComponent,
......
......@@ -5,9 +5,9 @@
* @author liuzheng <liuzheng712@gmail.com>
*/
import {Component, OnInit} from '@angular/core';
import {AppService, LogService} from '../../app.service';
import {DataStore, User} from '../../globals';
import {version} from '../../../environments/environment';
import {AppService, LogService} from '@app/app.service';
import {DataStore, User} from '@app/globals';
import {version} from '@src/environments/environment';
@Component({
selector: 'elements-footer',
......
<!--<iframe #rdp [src]="trust('https://inews.gtimg.com/newsapp_bt/0/3460971429/1000')" width="100%" height="100%" (mouseenter)="active()"></iframe>-->
<div class="rdpIframe">
<iframe #rdpRef *ngIf="target" [src]="trust(target)" width="100%" height="100%" (mouseenter)="active()"></iframe>
</div>
......@@ -2,3 +2,7 @@ iframe {
border: none;
background-color: white;
}
.rdpIframe {
height: 100%;
}
import {Component, ElementRef, Input, OnInit, ViewChild} from '@angular/core';
import {CookieService} from 'ngx-cookie-service';
import {HttpService, LogService} from '../../app.service';
import {DataStore, User} from '../../globals';
import {HttpService, LogService} from '@app/app.service';
import {DataStore, User} from '@app/globals';
import {DomSanitizer} from '@angular/platform-browser';
import {View} from '../content/model';
import {View} from '@app/model';
@Component({
selector: 'elements-guacamole',
......
<div class="sidebar" fxLayout="column" ngxSplit="column">
<div class="sidebar" fxLayout="column" >
<div fxflex="1 1 30px" class="tree-filter">
<elements-tree-filter ></elements-tree-filter>
</div>
<div class="overflow ngx-scroll-overlay" fxflex="1 1 calc(90%-60px)">
<div class="overflow ngx-scroll-overlay" fxflex="1 1 calc(100% - 60px)">
<elements-asset-tree ></elements-asset-tree>
</div>
......
......@@ -3,10 +3,6 @@
width: 100%;
overflow: auto;
}
//
//:root {
// font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
//}
label {
margin-bottom: 0;
......@@ -16,14 +12,10 @@ label {
content: "\f26c";
}
.tree-filter {
height: 30px;
}
.overflow {
height: 90%;
display: flex;
width: 100%;
height: 100%;
float: left;
position: inherit;
background: #2f2a2a;
......@@ -38,7 +30,7 @@ label {
padding: 1px 20px 0 20px;
border-top: 1px solid #e7eaec;
bottom: 0;
height: 60px;
height: 30px;
}
.footer-version > p {
......@@ -49,23 +41,6 @@ label {
color: #d6cbcb;
}
//@import "~@swimlane/ngx-ui/release/styles/components/scrollbars";
.ngx-scroll-overlay {
overflow: auto; // for FF
}
//.sidebar::-webkit-scrollbar-track {
// -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.3);
// background-color: #676a6c;
//}
//
//.sidebar::-webkit-scrollbar {
// width: 8px;
//}
//
//.sidebar::-webkit-scrollbar-thumb {
// background-color: #F5F5F5;
// border-radius: 6px;
// border: 2px solid transparent;
//}
import {Component, Inject, OnInit, ViewChild, ElementRef} from '@angular/core';
import {AppService, HttpService, LogService} from '../../app.service';
import {AppService, HttpService, LogService} from '@app/app.service';
// import {ElementTreeFilterComponent} from '../tree-filter/tree-filter.component';
import {DataStore} from '../../globals';
import {version} from '../../../environments/environment';
import {DataStore} from '@app/globals';
import {version} from '@src/environments/environment';
import {MAT_DIALOG_DATA, MatDialog, MatDialogRef} from '@angular/material';
......
.nav {
display: block;
height: 31px;
padding-top: 2px;
height: 30px;
padding-top: 0;
background-color: #463e3e;
list-style: none;
}
.nav ul {
list-style-type: none;
line-height: 24px;
margin: 0;
box-sizing: border-box;
font-weight: 400;
text-align: left;
}
.nav li {
display: inline-block;
}
.nav a {
.nav .dropdown a {
color: #f0f0f1;
font-family: Roboto,sans-serif;
font-size: 13px;
font-weight: 300;
text-decoration: none;
padding: 6px 15px 6px 15px;
padding: 6px 15px;
height: 30px;
}
.nav a:hover {
......
<script src="../../trans.pipe.spec.ts"></script>
<div class="nav">
<ul>
<li><a href="/"><img src="static/imgs/logo.png" height="26px"/></a>
<ul class="nav-main">
<li>
<a href="/"><img src="static/imgs/logo.png" height="26px"/></a>
</li>
<li *ngFor="let v of navs" [ngClass]="{'dropdown': v.children}">
<li *ngFor="let v of navs" [ngClass]="{'dropdown': v.children}" >
<a>{{v.name|trans}}</a>
<ul [ngClass]="{'dropdown-content': v.children}">
<li *ngFor="let vv of v.children" [ngClass]="{'disabled': vv.disable}">
......
......@@ -6,8 +6,8 @@
* @author liuzheng <liuzheng712@gmail.com>
*/
import {Component, Inject, OnInit} from '@angular/core';
import {HttpService, LocalStorageService, NavService, LogService} from '../../app.service';
import {DataStore, i18n} from '../../globals';
import {HttpService, LocalStorageService, NavService, LogService} from '@app/app.service';
import {DataStore, i18n} from '@app/globals';
import * as jQuery from 'jquery/dist/jquery.min.js';
import {MAT_DIALOG_DATA, MatDialog, MatDialogRef} from '@angular/material';
declare let layer: any;
......@@ -19,7 +19,7 @@ declare let layer: any;
})
export class ElementNavComponent implements OnInit {
DataStore = DataStore;
navs: Array<object>;
navs: Array<any>;
_asyncTree = false;
static Hide() {
......@@ -215,26 +215,6 @@ export class ElementNavComponent implements OnInit {
getNav() {
return [{
'id': 'File',
'name': 'Server',
'children': [
{
'id': 'Disconnect',
'click': 'Disconnect',
'name': 'Disconnect'
},
{
'id': 'DisconnectAll',
'click': 'DisconnectAll',
'name': 'Disconnect all'
},
{
'id': 'Reconnect',
'click': 'Reconnect',
'name': 'Reconnect'
},
]
}, {
'id': 'FileManager',
'name': 'File Manager',
'children': [
......
<div class="footer fixed">
<div class="pull-right">
Version <strong>{{version}}</strong> GPLv2.
<img style="display: none" src="http://www.jumpserver.org/img/evaluate_avatar1.jpg">
</div>
<div>
<strong>Copyright</strong> 北京堆栈科技有限公司 &copy; 2014-2018
</div>
</div>
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { ElementOfooterComponent } from './ofooter.component';
describe('ElementOfooterComponent', () => {
let component: ElementOfooterComponent;
let fixture: ComponentFixture<ElementOfooterComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ ElementOfooterComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(ElementOfooterComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});
import {Component, OnInit} from '@angular/core';
import {version} from '../../../environments/environment';
import {DataStore} from '../../globals';
@Component({
selector: 'elements-ofooter',
templateUrl: './ofooter.component.html',
styleUrls: ['./ofooter.component.scss']
})
export class ElementOfooterComponent implements OnInit {
version = version;
constructor() {
DataStore.NavShow = false;
}
ngOnInit() {
}
}
......@@ -6,7 +6,7 @@
*/
import {AfterViewInit, Component, ElementRef, OnInit, ViewChild} from '@angular/core';
import {ActivatedRoute, Params} from '@angular/router';
import {DataStore} from '../../globals';
import {DataStore} from '@app/globals';
declare let Mstsc: any;
......
import {Component, OnInit, Input, ElementRef, ViewChild} from '@angular/core';
import {DataStore} from '../../globals';
import {DataStore} from '@app/globals';
import {DomSanitizer} from '@angular/platform-browser';
@Component({
......
import {Component, Input, OnInit, OnDestroy } from '@angular/core';
import {Terminal} from 'xterm';
import {View} from '../content/model';
import {LogService, UUIDService} from '../../app.service';
import {Socket} from '../../utils/socket';
import {getWsSocket, translate} from '../../globals';
import {View} from '@app/model';
import {LogService, UUIDService} from '@app/app.service';
import {Socket} from '@app/utils/socket';
import {getWsSocket, translate} from '@app/globals';
@Component({
......
import {Component, Input, OnInit, ViewChild} from '@angular/core';
import {DatatableComponent} from '@swimlane/ngx-datatable';
import {MatPaginator} from '@angular/material';
import {LogService} from '../../app.service';
import {LogService} from '@app/app.service';
export let Config: {
search: boolean,
......
......@@ -2,6 +2,7 @@ import {AfterViewInit, Component, Input, Output, OnInit, ViewChild, EventEmitter
import {ElementRef} from '@angular/core';
import {Terminal} from 'xterm';
import {fit} from 'xterm/lib/addons/fit/fit';
import {LogService} from '@app/app.service';
import {Observable} from 'rxjs/Rx';
import * as $ from 'jquery/dist/jquery.min.js';
import 'rxjs/Observable';
......@@ -21,6 +22,10 @@ export class ElementTermComponent implements OnInit, AfterViewInit {
@Output() winSizeChangeTrigger = new EventEmitter<Array<number>>();
winSizeChange$: Observable<any>;
constructor(private _logger: LogService){
}
ngOnInit() {
this.winSizeChange$ = Observable.fromEvent(window, 'resize')
.debounceTime(500)
......@@ -61,7 +66,7 @@ export class ElementTermComponent implements OnInit, AfterViewInit {
const dimensions = (<any>this.term).renderer.dimensions;
const geometry = [
Math.floor(availableWidth / dimensions.actualCellWidth) - 1,
Math.floor(availableHeight / dimensions.actualCellHeight) - 2
Math.floor(availableHeight / dimensions.actualCellHeight) - 1
];
if (!isFinite(geometry[0])) {
......
......@@ -2,15 +2,31 @@ import {Component, OnInit, Pipe, PipeTransform} from '@angular/core';
import {FormControl} from '@angular/forms';
import {debounceTime, distinctUntilChanged} from 'rxjs/operators';
import {LogService, TreeFilterService} from '../../app.service';
import {LogService, TreeFilterService} from '@app/app.service';
@Pipe({name: 'SearchFilter'})
export class SearchFilter implements PipeTransform {
transform(value: any, input: string) {
if (input) {
input = input.toLowerCase();
return value.filter(function (el: any) {
// ToDo: search with a simple SQL like language, and a bug search a group's hosts
return JSON.stringify(el).toLowerCase().indexOf(input) > -1;
});
}
return value;
}
}
@Component({
selector: 'elements-tree-filter',
templateUrl: './tree-filter.component.html',
styleUrls: ['./tree-filter.component.css'],
providers: [SearchFilter],
})
export class ElementTreeFilterComponent implements OnInit {
private searchControl: FormControl;
searchControl: FormControl;
private debounce = 400;
constructor(private _treeFilterService: TreeFilterService,
......@@ -29,16 +45,3 @@ export class ElementTreeFilterComponent implements OnInit {
}
@Pipe({name: 'SearchFilter'})
export class SearchFilter implements PipeTransform {
transform(value: any, input: string) {
if (input) {
input = input.toLowerCase();
return value.filter(function (el: any) {
// ToDo: search with a simple SQL like language, and a bug search a group's hosts
return JSON.stringify(el).toLowerCase().indexOf(input) > -1;
});
}
return value;
}
}
import {Component, Input, OnInit} from '@angular/core';
import {HttpService} from '../../app.service';
import {HttpService} from '@app/app.service';
export interface Assets {
name: string;
......
......@@ -26,8 +26,8 @@ export const DataStore: _DataStore = {
msg: {},
logLevel: 4,
showLeftBar: true,
windowsize: [],
autologin: false,
windowSize: [],
autoLogin: false,
guacamoleToken: '',
guacamoleTokenTime: 0
};
......
......@@ -91,6 +91,33 @@ export class NavEvt {
}
export class View {
id: string;
nick: string;
type: string;
editable: boolean;
active: boolean;
connected: boolean;
hide: boolean;
closed: boolean;
host: any;
user: any;
remoteApp: string;
room: string;
Rdp: any;
Term: any;
}
export class ViewAction {
view: View;
name: string;
constructor(view: View, name: string) {
this.view = view;
this.name = name;
}
}
export class DataStore {
socket: any;
Nav: Array<object>;
......@@ -100,8 +127,8 @@ export class DataStore {
msg: {};
logLevel: number;
showLeftBar = true;
windowsize: Array<number>;
autologin: boolean;
windowSize: Array<number>;
autoLogin: boolean;
guacamoleToken: string;
guacamoleTokenTime: number;
......@@ -139,7 +166,7 @@ export class Video {
height: number;
width: number;
json: object;
timelist: Array<number>;
timeList: Array<number>;
totalTime: number;
}
......@@ -149,3 +176,4 @@ export class Monitor {
type: string;
}
import {Component, OnInit} from '@angular/core';
import {DataStore} from '../../globals';
import {DataStore} from '@app/globals';
@Component({
selector: 'pages-blank',
......
import {Component, OnInit} from '@angular/core';
import {AppService, HttpService, LocalStorageService} from '../../app.service';
import {DataStore} from '../../globals';
import {AppService, HttpService, LocalStorageService} from '@app/app.service';
import {DataStore} from '@app/globals';
import * as jQuery from 'jquery/dist/jquery.min.js';
@Component({
......
......@@ -6,10 +6,10 @@
* @author liuzheng <liuzheng712@gmail.com>
*/
import {Component, OnInit} from '@angular/core';
import {AppService, HttpService, LogService} from '../../app.service';
import {AppService, HttpService, LogService} from '@app/app.service';
import {NgForm} from '@angular/forms';
import {Router} from '@angular/router';
import {DataStore, User} from '../../globals';
import {DataStore, User} from '@app/globals';
import * as jQuery from 'jquery/dist/jquery.min.js';
@Component({
......
div {
.content {
height: 100%;
width: 100%;
padding: 0;
background-color: #1f1b1b;
/*background-color: red;*/
margin: 0;
position: initial;
}
/*.content {*/
/*overflow: hidden !important;*/
/*}*/
elements-nav {
height: 30px;
}
#container {
padding-top: 0;
padding: 0;
margin: 0;
height: calc(100% - 30px);
}
/*.container-fluid {*/
/*padding-top: 30px;*/
/*}*/
<elements-nav></elements-nav>
<div id="container" class="container-fluid row" fxLayout="row" ngxSplit="row">
<div fxLayout="row" id="container" class="container-fluid row" ngxSplit="row">
<div fxFlex="1 1 20%" minBasis="100px" maxBasis="800px" fxFlexFill ngxSplitArea *ngIf="DataStore.showLeftBar">
<elements-left-bar></elements-left-bar>
</div>
......
import {Component, HostListener, OnInit} from '@angular/core';
import {DataStore, User} from '../../globals';
import {environment} from '../../../environments/environment';
import {DataStore, User} from '@app/globals';
import {environment} from '@src/environments/environment';
@Component({
selector: 'pages-main',
......
import {Component, OnInit} from '@angular/core';
import {Monitor} from '../../../globals';
import {Monitor} from '@app/globals';
@Component({
selector: 'pages-monitor-linux',
......
import {Component, OnInit} from '@angular/core';
import {ActivatedRoute, Params} from '@angular/router';
import {DataStore, Monitor} from '../../globals';
import {DataStore, Monitor} from '@app/globals';
@Component({
selector: 'pages-monitor',
......
import {Component, OnInit} from '@angular/core';
import {DataStore} from '../../globals';
import {DataStore} from '@app/globals';
@Component({
selector: 'pages-not-found',
......
import {Component, Input, OnInit} from '@angular/core';
import {Terminal} from 'xterm';
import {HttpService, LogService} from '../../../app.service';
import {HttpService, LogService} from '@app/app.service';
import {Replay} from '../replay.model';
function zeroPad(num, minLength) {
......
import {Component, OnInit} from '@angular/core';
import {ActivatedRoute, Params} from '@angular/router';
import {HttpService, LogService} from '../../app.service';
import {DataStore} from '../../globals';
import {HttpService, LogService} from '@app/app.service';
import {DataStore} from '@app/globals';
import {Replay} from './replay.model';
@Component({
......
import {TransPipe} from './trans.pipe';
import {UtcDatePipe} from './date.pipe';
import {TruncatecharsPipe} from './truncatechars.pipe';
import {SearchFilter} from '@app/elements/tree-filter/tree-filter.component';
export const Pipes = [
UtcDatePipe,
TransPipe,
TruncatecharsPipe
TruncatecharsPipe,
SearchFilter
];
{
"hello": "world"
}
......@@ -3,6 +3,7 @@ $fa-font-path: '~font-awesome/fonts';
@import '~font-awesome/scss/font-awesome';
// bootstrap
// Todo: 去掉依赖
@import '~bootstrap/scss/bootstrap';
$FontPathOpenSans: '~npm-font-open-sans/fonts';
......@@ -17,6 +18,7 @@ $roboto-font-path: '~roboto-fontface/fonts';
*
*/
$asset-path: '../static/imgs/inspinia';
// Todo: 去掉依赖
@import '../assets/inspinia/style';
@import '~@swimlane/ngx-datatable/release/index.css';
......
......@@ -10,6 +10,7 @@ body {
width: 100%;
background-color: rgb(243, 243, 244);
overflow-y: hidden;
margin: 0;
}
app-root {
......
......@@ -6,6 +6,6 @@ npm run-script build
rm -fr luna*
mv dist luna
cp -R i18n luna/
cp -R src/assets/i18n luna/
tar czf luna.tar.gz luna
md5 luna.tar.gz
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "src",
"paths": {
"@src/*": ["*"],
"@app/*": ["app/*"]
},
"allowJs": true,
"outDir": "./dist/out-tsc",
"sourceMap": true,
......
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