Commit 8bbee948fbcfdf76df1599eb0a842ae48aaa4ceb

Authored by Igor Kulikov
1 parent 96c48500

Angular 9 migration

Showing 50 changed files with 343 additions and 422 deletions
@@ -36,7 +36,7 @@ @@ -36,7 +36,7 @@
36 "node_modules/tooltipster/dist/css/tooltipster.bundle.min.css", 36 "node_modules/tooltipster/dist/css/tooltipster.bundle.min.css",
37 "node_modules/tooltipster/dist/css/plugins/tooltipster/sideTip/themes/tooltipster-sideTip-shadow.min.css", 37 "node_modules/tooltipster/dist/css/plugins/tooltipster/sideTip/themes/tooltipster-sideTip-shadow.min.css",
38 "src/app/shared/components/json-form/react/json-form.scss", 38 "src/app/shared/components/json-form/react/json-form.scss",
39 - "node_modules/rc-select/assets/index.css", 39 + "node_modules/rc-select/assets/index.less",
40 "node_modules/jstree-bootstrap-theme/dist/themes/proton/style.min.css" 40 "node_modules/jstree-bootstrap-theme/dist/themes/proton/style.min.css"
41 ], 41 ],
42 "stylePreprocessorOptions": { 42 "stylePreprocessorOptions": {
@@ -101,7 +101,6 @@ @@ -101,7 +101,6 @@
101 "sourceMap": false, 101 "sourceMap": false,
102 "extractCss": true, 102 "extractCss": true,
103 "namedChunks": false, 103 "namedChunks": false,
104 - "aot": false,  
105 "extractLicenses": true, 104 "extractLicenses": true,
106 "vendorChunk": false, 105 "vendorChunk": false,
107 "buildOptimizer": false, 106 "buildOptimizer": false,
@@ -5,11 +5,14 @@ @@ -5,11 +5,14 @@
5 "requires": true, 5 "requires": true,
6 "dependencies": { 6 "dependencies": {
7 "@angular-builders/custom-webpack": { 7 "@angular-builders/custom-webpack": {
8 - "version": "8.4.1",  
9 - "resolved": "https://registry.npmjs.org/@angular-builders/custom-webpack/-/custom-webpack-8.4.1.tgz",  
10 - "integrity": "sha512-FbBt4mFbAxETdYLb6tTX869pIpm8nMiCpT34jROejuqLtsljymdqXhSCEWogWlel8ULAYus6BNdzZyRLyAkfqQ==", 8 + "version": "9.0.0-beta.7",
  9 + "resolved": "https://registry.npmjs.org/@angular-builders/custom-webpack/-/custom-webpack-9.0.0-beta.7.tgz",
  10 + "integrity": "sha512-4TkeHIJIczuikLWpVu9MJ449zSCge6qC4sWV9vWwisD/Wr6YmkF4iNSeq7vmBkxHDbLsiZm5mZsbR0ItHZO/OA==",
11 "dev": true, 11 "dev": true,
12 "requires": { 12 "requires": {
  13 + "@angular-devkit/architect": "^0.900.0-rc.2",
  14 + "@angular-devkit/build-angular": "^0.900.0-rc.2",
  15 + "@angular-devkit/core": "^9.0.0-rc.2",
13 "lodash": "^4.17.10", 16 "lodash": "^4.17.10",
14 "ts-node": "^8.5.2", 17 "ts-node": "^8.5.2",
15 "webpack-merge": "^4.2.1" 18 "webpack-merge": "^4.2.1"
@@ -543,9 +546,9 @@ @@ -543,9 +546,9 @@
543 "integrity": "sha512-yyOcStpgN5t8wGRNO85mo0jplXkntP+v2tmSxNx45pahqmofSFm+QCEFa2zHQuMr7NoiGERhd0Tae7NDCCjtjA==" 546 "integrity": "sha512-yyOcStpgN5t8wGRNO85mo0jplXkntP+v2tmSxNx45pahqmofSFm+QCEFa2zHQuMr7NoiGERhd0Tae7NDCCjtjA=="
544 }, 547 },
545 "@auth0/angular-jwt": { 548 "@auth0/angular-jwt": {
546 - "version": "3.0.1",  
547 - "resolved": "https://registry.npmjs.org/@auth0/angular-jwt/-/angular-jwt-3.0.1.tgz",  
548 - "integrity": "sha512-hfWfgbpgtcvyU/agNxQ6cBk81mmASiNxQeZ6xn/3zJo8uLFHk2eQIy2yt2ztktcOQ6V2uc6GlKLRKjVIgyc1Sw==", 549 + "version": "4.0.0",
  550 + "resolved": "https://registry.npmjs.org/@auth0/angular-jwt/-/angular-jwt-4.0.0.tgz",
  551 + "integrity": "sha512-CHvk1zJ9jpQupl0f5y7EmTvYAwugyFvC4ztLsZKr7ZC7anNVaDd1+pDFJYS+ZEU9jLWzE74+AfVKfigImADJuw==",
549 "requires": { 552 "requires": {
550 "url": "^0.11.0" 553 "url": "^0.11.0"
551 } 554 }
@@ -2774,11 +2777,18 @@ @@ -2774,11 +2777,18 @@
2774 "integrity": "sha512-AlEKV7TxjeK+jxWVKcCFrfYAk8spX9aCyiToFIiLPtfQbsjmRGLIhb5VZgptQcJdHtLXo7+m0DuurwFgUToQuA==" 2777 "integrity": "sha512-AlEKV7TxjeK+jxWVKcCFrfYAk8spX9aCyiToFIiLPtfQbsjmRGLIhb5VZgptQcJdHtLXo7+m0DuurwFgUToQuA=="
2775 }, 2778 },
2776 "@date-io/date-fns": { 2779 "@date-io/date-fns": {
2777 - "version": "1.3.13",  
2778 - "resolved": "https://registry.npmjs.org/@date-io/date-fns/-/date-fns-1.3.13.tgz",  
2779 - "integrity": "sha512-yXxGzcRUPcogiMj58wVgFjc9qUYrCnnU9eLcyNbsQCmae4jPuZCDoIBR21j8ZURsM7GRtU62VOw5yNd4dDHunA==", 2780 + "version": "2.3.0",
  2781 + "resolved": "https://registry.npmjs.org/@date-io/date-fns/-/date-fns-2.3.0.tgz",
  2782 + "integrity": "sha512-WlDNt3xPjhK/7pcnDU0En9qk6dF0yu2ve7qiDT466YHHxm++C3jsaJgODZ+avLdnhwxNJPnp8LwABsh2vtYcLQ==",
2780 "requires": { 2783 "requires": {
2781 - "@date-io/core": "^1.3.13" 2784 + "@date-io/core": "^2.3.0"
  2785 + },
  2786 + "dependencies": {
  2787 + "@date-io/core": {
  2788 + "version": "2.3.0",
  2789 + "resolved": "https://registry.npmjs.org/@date-io/core/-/core-2.3.0.tgz",
  2790 + "integrity": "sha512-aOmiF9tDtRCGuzGfBILKsd+zigEnGMBqXWNlr4ZDA6Y8r4JxTjIpvlCZrmtDP/0x2T+og28uhwBjJbCGFzdiCA=="
  2791 + }
2782 } 2792 }
2783 }, 2793 },
2784 "@emotion/hash": { 2794 "@emotion/hash": {
@@ -2807,17 +2817,14 @@ @@ -2807,17 +2817,14 @@
2807 "dev": true 2817 "dev": true
2808 }, 2818 },
2809 "@mat-datetimepicker/core": { 2819 "@mat-datetimepicker/core": {
2810 - "version": "2.0.1",  
2811 - "resolved": "https://registry.npmjs.org/@mat-datetimepicker/core/-/core-2.0.1.tgz",  
2812 - "integrity": "sha1-4NsdtdTPe6Vrck7AQIF8totXdfI=",  
2813 - "requires": {  
2814 - "tslib": "^1.9.0"  
2815 - } 2820 + "version": "4.0.0",
  2821 + "resolved": "https://registry.npmjs.org/@mat-datetimepicker/core/-/core-4.0.0.tgz",
  2822 + "integrity": "sha512-tOjRezVBZ1Jo1xw9L3oIZveVutvopoEfgKHeEfeazNJYdz4RWJ4Lanw4xqFhh811Hi5n5NXN7eRDcB86AJZcxw=="
2816 }, 2823 },
2817 "@material-ui/core": { 2824 "@material-ui/core": {
2818 - "version": "4.9.1",  
2819 - "resolved": "https://registry.npmjs.org/@material-ui/core/-/core-4.9.1.tgz",  
2820 - "integrity": "sha512-wehQI0ahHDsZjK+uA8Q5Cs1K1/1HXYe2icwTqARaRCt7d9bTp0bJN/C9TLe/+sRWfRIkx6OIk7ABSJT1jBqxRg==", 2825 + "version": "4.9.2",
  2826 + "resolved": "https://registry.npmjs.org/@material-ui/core/-/core-4.9.2.tgz",
  2827 + "integrity": "sha512-fSf/yBuE5GR7dA+FiQAAGY7HrCN/8RaYApi9tx3IKMiJIJkRCHk+E2lktgJZ+QRsaqCACLo2lwhU2CW5aeO0UQ==",
2821 "requires": { 2828 "requires": {
2822 "@babel/runtime": "^7.4.4", 2829 "@babel/runtime": "^7.4.4",
2823 "@material-ui/styles": "^4.9.0", 2830 "@material-ui/styles": "^4.9.0",
@@ -2951,9 +2958,9 @@ @@ -2951,9 +2958,9 @@
2951 } 2958 }
2952 }, 2959 },
2953 "@ngx-translate/core": { 2960 "@ngx-translate/core": {
2954 - "version": "11.0.1",  
2955 - "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-11.0.1.tgz",  
2956 - "integrity": "sha512-nBCa1ZD9fAUY/3eskP3Lql2fNg8OMrYIej1/5GRsfcutx9tG/5fZLCv9m6UCw1aS+u4uK/vXjv1ctG/FdMvaWg==", 2961 + "version": "12.0.0",
  2962 + "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-12.0.0.tgz",
  2963 + "integrity": "sha512-hxuaLEqxlZ3IWBupyAoRXAhMZHCmaCg58XpY5+vevJmDhMEFJUEKdQyWVOKcf3+6PkoIFcuKJCeHa5C3Hb65gA==",
2957 "requires": { 2964 "requires": {
2958 "tslib": "^1.9.0" 2965 "tslib": "^1.9.0"
2959 } 2966 }
@@ -3068,9 +3075,9 @@ @@ -3068,9 +3075,9 @@
3068 } 3075 }
3069 }, 3076 },
3070 "@types/jasmine": { 3077 "@types/jasmine": {
3071 - "version": "3.5.2",  
3072 - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.5.2.tgz",  
3073 - "integrity": "sha512-7hrdBDFWlTb4EhrXYRyC7i3L2kKCV0TqYbzuV+gwyPNF2V4SSHw2Vs223ai26W4tEg+t4e9Wfi1vW6JLubYPiw==", 3078 + "version": "3.5.3",
  3079 + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.5.3.tgz",
  3080 + "integrity": "sha512-LRJ21f/BO4QNZ3YDaMP0OEurOfE77x8mi8MfEnUsei5IKfmZL0GKl7juhABMdUIJHhVS9OCLotKHfsFNAuJ+DA==",
3074 "dev": true 3081 "dev": true
3075 }, 3082 },
3076 "@types/jasminewd2": { 3083 "@types/jasminewd2": {
@@ -3083,9 +3090,9 @@ @@ -3083,9 +3090,9 @@
3083 } 3090 }
3084 }, 3091 },
3085 "@types/jquery": { 3092 "@types/jquery": {
3086 - "version": "3.3.31",  
3087 - "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.3.31.tgz",  
3088 - "integrity": "sha512-Lz4BAJihoFw5nRzKvg4nawXPzutkv7wmfQ5121avptaSIXlDNJCUuxZxX/G+9EVidZGuO0UBlk+YjKbwRKJigg==", 3093 + "version": "3.3.32",
  3094 + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.3.32.tgz",
  3095 + "integrity": "sha512-UKoof2mnV/X1/Ix2g+V2Ny5sgHjV8nK/UJbiYxuo4zPwzGyFlZ/mp4KaePb2VqQrqJctmcDQNA57buU84/2uIw==",
3089 "requires": { 3096 "requires": {
3090 "@types/sizzle": "*" 3097 "@types/sizzle": "*"
3091 } 3098 }
@@ -3117,9 +3124,9 @@ @@ -3117,9 +3124,9 @@
3117 "integrity": "sha512-13gmo3M2qVvjQrWNseqM3+cR6S2Ss3grbR2NZltgMq94wOwqJYQdgn8qzwDshzgXqMlSUtyPZjysImmktu22ew==" 3124 "integrity": "sha512-13gmo3M2qVvjQrWNseqM3+cR6S2Ss3grbR2NZltgMq94wOwqJYQdgn8qzwDshzgXqMlSUtyPZjysImmktu22ew=="
3118 }, 3125 },
3119 "@types/node": { 3126 "@types/node": {
3120 - "version": "12.12.26",  
3121 - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.26.tgz",  
3122 - "integrity": "sha512-UmUm94/QZvU5xLcUlNR8hA7Ac+fGpO1EG/a8bcWVz0P0LqtxFmun9Y2bbtuckwGboWJIT70DoWq1r3hb56n3DA==", 3127 + "version": "13.7.0",
  3128 + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.0.tgz",
  3129 + "integrity": "sha512-GnZbirvmqZUzMgkFn70c74OQpTTUcCzlhQliTzYjQMqg+hVKcDnxdL19Ne3UdYzdMA/+W3eb646FWn/ZaT1NfQ==",
3123 "dev": true 3130 "dev": true
3124 }, 3131 },
3125 "@types/prop-types": { 3132 "@types/prop-types": {
@@ -3525,12 +3532,9 @@ @@ -3525,12 +3532,9 @@
3525 "dev": true 3532 "dev": true
3526 }, 3533 },
3527 "angular-gridster2": { 3534 "angular-gridster2": {
3528 - "version": "8.3.0",  
3529 - "resolved": "https://registry.npmjs.org/angular-gridster2/-/angular-gridster2-8.3.0.tgz",  
3530 - "integrity": "sha512-uQ7StNeF2SWxYA099MPifnqoOe/16rAu6KN00/sQ6kJ3umLDkPYRA61z3iPAdrxEkYMdXmtoMbFkm4igWLA3Ww==",  
3531 - "requires": {  
3532 - "tslib": "^1.9.0"  
3533 - } 3535 + "version": "9.0.0",
  3536 + "resolved": "https://registry.npmjs.org/angular-gridster2/-/angular-gridster2-9.0.0.tgz",
  3537 + "integrity": "sha512-0/nREskZEZMzSS9AdQmPHdncb4txIXzHnSgylIJ5esEPJI4dkB4A5bd9shUdwH6u4kPZInkHO3W0hHJOTSilUQ=="
3534 }, 3538 },
3535 "angular2-hotkeys": { 3539 "angular2-hotkeys": {
3536 "version": "2.1.5", 3540 "version": "2.1.5",
@@ -3609,9 +3613,9 @@ @@ -3609,9 +3613,9 @@
3609 "dev": true 3613 "dev": true
3610 }, 3614 },
3611 "arg": { 3615 "arg": {
3612 - "version": "4.1.2",  
3613 - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.2.tgz",  
3614 - "integrity": "sha512-+ytCkGcBtHZ3V2r2Z06AncYO8jz46UEamcspGoU8lHcEbpn6J77QK0vdWvChsclg/tM5XIJC5tnjmPp7Eq6Obg==", 3616 + "version": "4.1.3",
  3617 + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz",
  3618 + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==",
3615 "dev": true 3619 "dev": true
3616 }, 3620 },
3617 "argparse": { 3621 "argparse": {
@@ -4097,6 +4101,22 @@ @@ -4097,6 +4101,22 @@
4097 "dns-txt": "^2.0.2", 4101 "dns-txt": "^2.0.2",
4098 "multicast-dns": "^6.0.1", 4102 "multicast-dns": "^6.0.1",
4099 "multicast-dns-service-types": "^1.1.0" 4103 "multicast-dns-service-types": "^1.1.0"
  4104 + },
  4105 + "dependencies": {
  4106 + "deep-equal": {
  4107 + "version": "1.1.1",
  4108 + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz",
  4109 + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==",
  4110 + "dev": true,
  4111 + "requires": {
  4112 + "is-arguments": "^1.0.4",
  4113 + "is-date-object": "^1.0.1",
  4114 + "is-regex": "^1.0.4",
  4115 + "object-is": "^1.0.1",
  4116 + "object-keys": "^1.1.1",
  4117 + "regexp.prototype.flags": "^1.2.0"
  4118 + }
  4119 + }
4100 } 4120 }
4101 }, 4121 },
4102 "boolbase": { 4122 "boolbase": {
@@ -5531,9 +5551,9 @@ @@ -5531,9 +5551,9 @@
5531 } 5551 }
5532 }, 5552 },
5533 "date-fns": { 5553 "date-fns": {
5534 - "version": "2.8.1",  
5535 - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.8.1.tgz",  
5536 - "integrity": "sha512-EL/C8IHvYRwAHYgFRse4MGAPSqlJVlOrhVYZ75iQBKrnv+ZedmYsgwH3t+BCDuZDXpoo07+q9j4qgSSOa7irJg==" 5554 + "version": "2.9.0",
  5555 + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.9.0.tgz",
  5556 + "integrity": "sha512-khbFLu/MlzLjEzy9Gh8oY1hNt/Dvxw3J6Rbc28cVoYWQaC1S3YI4xwkF9ZWcjDLscbZlY9hISMr66RFzZagLsA=="
5537 }, 5557 },
5538 "date-format": { 5558 "date-format": {
5539 "version": "2.1.0", 5559 "version": "2.1.0",
@@ -5569,16 +5589,29 @@ @@ -5569,16 +5589,29 @@
5569 "dev": true 5589 "dev": true
5570 }, 5590 },
5571 "deep-equal": { 5591 "deep-equal": {
5572 - "version": "1.1.1",  
5573 - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz",  
5574 - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", 5592 + "version": "2.0.1",
  5593 + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.1.tgz",
  5594 + "integrity": "sha512-7Et6r6XfNW61CPPCIYfm1YPGSmh6+CliYeL4km7GWJcpX5LTAflGF8drLLR+MZX+2P3NZfAfSduutBbSWqER4g==",
5575 "requires": { 5595 "requires": {
  5596 + "es-abstract": "^1.16.3",
  5597 + "es-get-iterator": "^1.0.1",
5576 "is-arguments": "^1.0.4", 5598 "is-arguments": "^1.0.4",
5577 "is-date-object": "^1.0.1", 5599 "is-date-object": "^1.0.1",
5578 "is-regex": "^1.0.4", 5600 "is-regex": "^1.0.4",
  5601 + "isarray": "^2.0.5",
5579 "object-is": "^1.0.1", 5602 "object-is": "^1.0.1",
5580 "object-keys": "^1.1.1", 5603 "object-keys": "^1.1.1",
5581 - "regexp.prototype.flags": "^1.2.0" 5604 + "regexp.prototype.flags": "^1.2.0",
  5605 + "side-channel": "^1.0.1",
  5606 + "which-boxed-primitive": "^1.0.1",
  5607 + "which-collection": "^1.0.0"
  5608 + },
  5609 + "dependencies": {
  5610 + "isarray": {
  5611 + "version": "2.0.5",
  5612 + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
  5613 + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw=="
  5614 + }
5582 } 5615 }
5583 }, 5616 },
5584 "deep-freeze-strict": { 5617 "deep-freeze-strict": {
@@ -5777,9 +5810,9 @@ @@ -5777,9 +5810,9 @@
5777 "dev": true 5810 "dev": true
5778 }, 5811 },
5779 "diff": { 5812 "diff": {
5780 - "version": "4.0.1",  
5781 - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.1.tgz",  
5782 - "integrity": "sha512-s2+XdvhPCOF01LRQBC8hf4vhbVmI2CGS5aZnxLJlT5FtdhPCDFq80q++zK2KlrVorVDdL5BOGZ/VfLrVtYNF+Q==", 5813 + "version": "4.0.2",
  5814 + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
  5815 + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
5783 "dev": true 5816 "dev": true
5784 }, 5817 },
5785 "diff-match-patch": { 5818 "diff-match-patch": {
@@ -5852,11 +5885,6 @@ @@ -5852,11 +5885,6 @@
5852 "csstype": "^2.6.7" 5885 "csstype": "^2.6.7"
5853 } 5886 }
5854 }, 5887 },
5855 - "dom-scroll-into-view": {  
5856 - "version": "1.2.1",  
5857 - "resolved": "https://registry.npmjs.org/dom-scroll-into-view/-/dom-scroll-into-view-1.2.1.tgz",  
5858 - "integrity": "sha1-6PNnMt0ImwIBqI14Fdw/iObWbH4="  
5859 - },  
5860 "dom-serialize": { 5888 "dom-serialize": {
5861 "version": "2.2.1", 5889 "version": "2.2.1",
5862 "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", 5890 "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz",
@@ -6145,7 +6173,6 @@ @@ -6145,7 +6173,6 @@
6145 "version": "1.17.4", 6173 "version": "1.17.4",
6146 "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", 6174 "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz",
6147 "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", 6175 "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==",
6148 - "dev": true,  
6149 "requires": { 6176 "requires": {
6150 "es-to-primitive": "^1.2.1", 6177 "es-to-primitive": "^1.2.1",
6151 "function-bind": "^1.1.1", 6178 "function-bind": "^1.1.1",
@@ -6164,18 +6191,37 @@ @@ -6164,18 +6191,37 @@
6164 "version": "1.0.5", 6191 "version": "1.0.5",
6165 "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", 6192 "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz",
6166 "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", 6193 "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==",
6167 - "dev": true,  
6168 "requires": { 6194 "requires": {
6169 "has": "^1.0.3" 6195 "has": "^1.0.3"
6170 } 6196 }
6171 } 6197 }
6172 } 6198 }
6173 }, 6199 },
  6200 + "es-get-iterator": {
  6201 + "version": "1.1.0",
  6202 + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.0.tgz",
  6203 + "integrity": "sha512-UfrmHuWQlNMTs35e1ypnvikg6jCz3SK8v8ImvmDsh36fCVUR1MqoFDiyn0/k52C8NqO3YsO8Oe0azeesNuqSsQ==",
  6204 + "requires": {
  6205 + "es-abstract": "^1.17.4",
  6206 + "has-symbols": "^1.0.1",
  6207 + "is-arguments": "^1.0.4",
  6208 + "is-map": "^2.0.1",
  6209 + "is-set": "^2.0.1",
  6210 + "is-string": "^1.0.5",
  6211 + "isarray": "^2.0.5"
  6212 + },
  6213 + "dependencies": {
  6214 + "isarray": {
  6215 + "version": "2.0.5",
  6216 + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
  6217 + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw=="
  6218 + }
  6219 + }
  6220 + },
6174 "es-to-primitive": { 6221 "es-to-primitive": {
6175 "version": "1.2.1", 6222 "version": "1.2.1",
6176 "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", 6223 "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
6177 "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", 6224 "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
6178 - "dev": true,  
6179 "requires": { 6225 "requires": {
6180 "is-callable": "^1.1.4", 6226 "is-callable": "^1.1.4",
6181 "is-date-object": "^1.0.1", 6227 "is-date-object": "^1.0.1",
@@ -7057,8 +7103,7 @@ @@ -7057,8 +7103,7 @@
7057 "has-symbols": { 7103 "has-symbols": {
7058 "version": "1.0.1", 7104 "version": "1.0.1",
7059 "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", 7105 "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
7060 - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",  
7061 - "dev": true 7106 + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg=="
7062 }, 7107 },
7063 "has-value": { 7108 "has-value": {
7064 "version": "1.0.0", 7109 "version": "1.0.0",
@@ -7650,6 +7695,11 @@ @@ -7650,6 +7695,11 @@
7650 "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", 7695 "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
7651 "dev": true 7696 "dev": true
7652 }, 7697 },
  7698 + "is-bigint": {
  7699 + "version": "1.0.0",
  7700 + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.0.tgz",
  7701 + "integrity": "sha512-t5mGUXC/xRheCK431ylNiSkGGpBp8bHENBcENTkDT6ppwPzEVxNGZRvgvmOEfbWkFhA7D2GEuE2mmQTr78sl2g=="
  7702 + },
7653 "is-binary-path": { 7703 "is-binary-path": {
7654 "version": "2.1.0", 7704 "version": "2.1.0",
7655 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 7705 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
@@ -7659,6 +7709,11 @@ @@ -7659,6 +7709,11 @@
7659 "binary-extensions": "^2.0.0" 7709 "binary-extensions": "^2.0.0"
7660 } 7710 }
7661 }, 7711 },
  7712 + "is-boolean-object": {
  7713 + "version": "1.0.1",
  7714 + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.0.1.tgz",
  7715 + "integrity": "sha512-TqZuVwa/sppcrhUCAYkGBk7w0yxfQQnxq28fjkO53tnK9FQXmdwz2JS5+GjsWQ6RByES1K40nI+yDic5c9/aAQ=="
  7716 + },
7662 "is-buffer": { 7717 "is-buffer": {
7663 "version": "1.1.6", 7718 "version": "1.1.6",
7664 "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", 7719 "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
@@ -7668,8 +7723,7 @@ @@ -7668,8 +7723,7 @@
7668 "is-callable": { 7723 "is-callable": {
7669 "version": "1.1.5", 7724 "version": "1.1.5",
7670 "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", 7725 "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz",
7671 - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==",  
7672 - "dev": true 7726 + "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q=="
7673 }, 7727 },
7674 "is-color-stop": { 7728 "is-color-stop": {
7675 "version": "1.1.0", 7729 "version": "1.1.0",
@@ -7773,12 +7827,22 @@ @@ -7773,12 +7827,22 @@
7773 "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", 7827 "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==",
7774 "dev": true 7828 "dev": true
7775 }, 7829 },
  7830 + "is-map": {
  7831 + "version": "2.0.1",
  7832 + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.1.tgz",
  7833 + "integrity": "sha512-T/S49scO8plUiAOA2DBTBG3JHpn1yiw0kRp6dgiZ0v2/6twi5eiB0rHtHFH9ZIrvlWc6+4O+m4zg5+Z833aXgw=="
  7834 + },
7776 "is-number": { 7835 "is-number": {
7777 "version": "7.0.0", 7836 "version": "7.0.0",
7778 "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 7837 "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
7779 "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 7838 "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
7780 "dev": true 7839 "dev": true
7781 }, 7840 },
  7841 + "is-number-object": {
  7842 + "version": "1.0.4",
  7843 + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz",
  7844 + "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw=="
  7845 + },
7782 "is-obj": { 7846 "is-obj": {
7783 "version": "1.0.1", 7847 "version": "1.0.1",
7784 "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", 7848 "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
@@ -7831,11 +7895,11 @@ @@ -7831,11 +7895,11 @@
7831 "dev": true 7895 "dev": true
7832 }, 7896 },
7833 "is-regex": { 7897 "is-regex": {
7834 - "version": "1.0.4",  
7835 - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz",  
7836 - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", 7898 + "version": "1.0.5",
  7899 + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz",
  7900 + "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==",
7837 "requires": { 7901 "requires": {
7838 - "has": "^1.0.1" 7902 + "has": "^1.0.3"
7839 } 7903 }
7840 }, 7904 },
7841 "is-resolvable": { 7905 "is-resolvable": {
@@ -7844,12 +7908,22 @@ @@ -7844,12 +7908,22 @@
7844 "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", 7908 "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==",
7845 "dev": true 7909 "dev": true
7846 }, 7910 },
  7911 + "is-set": {
  7912 + "version": "2.0.1",
  7913 + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.1.tgz",
  7914 + "integrity": "sha512-eJEzOtVyenDs1TMzSQ3kU3K+E0GUS9sno+F0OBT97xsgcJsF9nXMBtkT9/kut5JEpM7oL7X/0qxR17K3mcwIAA=="
  7915 + },
7847 "is-stream": { 7916 "is-stream": {
7848 "version": "1.1.0", 7917 "version": "1.1.0",
7849 "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", 7918 "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
7850 "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", 7919 "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
7851 "dev": true 7920 "dev": true
7852 }, 7921 },
  7922 + "is-string": {
  7923 + "version": "1.0.5",
  7924 + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz",
  7925 + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ=="
  7926 + },
7853 "is-svg": { 7927 "is-svg": {
7854 "version": "3.0.0", 7928 "version": "3.0.0",
7855 "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-3.0.0.tgz", 7929 "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-3.0.0.tgz",
@@ -7863,7 +7937,6 @@ @@ -7863,7 +7937,6 @@
7863 "version": "1.0.3", 7937 "version": "1.0.3",
7864 "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", 7938 "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz",
7865 "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", 7939 "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==",
7866 - "dev": true,  
7867 "requires": { 7940 "requires": {
7868 "has-symbols": "^1.0.1" 7941 "has-symbols": "^1.0.1"
7869 } 7942 }
@@ -7874,6 +7947,16 @@ @@ -7874,6 +7947,16 @@
7874 "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", 7947 "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
7875 "dev": true 7948 "dev": true
7876 }, 7949 },
  7950 + "is-weakmap": {
  7951 + "version": "2.0.1",
  7952 + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz",
  7953 + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA=="
  7954 + },
  7955 + "is-weakset": {
  7956 + "version": "2.0.1",
  7957 + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.1.tgz",
  7958 + "integrity": "sha512-pi4vhbhVHGLxohUw7PhGsueT4vRGFoXhP7+RGN0jKIv9+8PWYCQTqtADngrxOm2g46hoH0+g8uZZBzMrvVGDmw=="
  7959 + },
7877 "is-windows": { 7960 "is-windows": {
7878 "version": "1.0.2", 7961 "version": "1.0.2",
7879 "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", 7962 "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
@@ -8288,13 +8371,13 @@ @@ -8288,13 +8371,13 @@
8288 "integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw==" 8371 "integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw=="
8289 }, 8372 },
8290 "jquery.terminal": { 8373 "jquery.terminal": {
8291 - "version": "1.23.2",  
8292 - "resolved": "https://registry.npmjs.org/jquery.terminal/-/jquery.terminal-1.23.2.tgz",  
8293 - "integrity": "sha512-ULKxZNzL8W4CoeAx5CJZTVY80SrNoeetA4lhnBeHd792uaLAkfRXMeJeARLWhBOrzDWo1yqn2nm4td0a+EU0dg==", 8374 + "version": "2.12.0",
  8375 + "resolved": "https://registry.npmjs.org/jquery.terminal/-/jquery.terminal-2.12.0.tgz",
  8376 + "integrity": "sha512-y6uBR6OB0cViNH/AkEJRhr56H8db8MlTO7Vn0TuDZhl78R5+DnT5jMlQLKxZEQVhUWtZQMXZIlQt0Xr6Zf63BQ==",
8294 "requires": { 8377 "requires": {
8295 - "@types/jquery": "^3.3.6", 8378 + "@types/jquery": "^3.3.29",
8296 "jquery": "~3", 8379 "jquery": "~3",
8297 - "prismjs": "^1.15.0", 8380 + "prismjs": "^1.16.0",
8298 "wcwidth": "^1.0.1" 8381 "wcwidth": "^1.0.1"
8299 } 8382 }
8300 }, 8383 },
@@ -8592,12 +8675,12 @@ @@ -8592,12 +8675,12 @@
8592 } 8675 }
8593 }, 8676 },
8594 "karma-jasmine": { 8677 "karma-jasmine": {
8595 - "version": "2.0.1",  
8596 - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-2.0.1.tgz",  
8597 - "integrity": "sha512-iuC0hmr9b+SNn1DaUD2QEYtUxkS1J+bSJSn7ejdEexs7P8EYvA1CWkEdrDQ+8jVH3AgWlCNwjYsT1chjcNW9lA==", 8678 + "version": "3.1.0",
  8679 + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-3.1.0.tgz",
  8680 + "integrity": "sha512-IVGbC8gap5x5NNCEOsAE77ic8rZtHDt6wmO0fFC5yT5FeB8qKnGTeud2mtKyQ41xl7vZkZ7ZxKr4wMGR6tWN+A==",
8598 "dev": true, 8681 "dev": true,
8599 "requires": { 8682 "requires": {
8600 - "jasmine-core": "^3.3" 8683 + "jasmine-core": "^3.5.0"
8601 } 8684 }
8602 }, 8685 },
8603 "karma-jasmine-html-reporter": { 8686 "karma-jasmine-html-reporter": {
@@ -9208,24 +9291,6 @@ @@ -9208,24 +9291,6 @@
9208 } 9291 }
9209 } 9292 }
9210 }, 9293 },
9211 - "mini-store": {  
9212 - "version": "2.0.0",  
9213 - "resolved": "https://registry.npmjs.org/mini-store/-/mini-store-2.0.0.tgz",  
9214 - "integrity": "sha512-EG0CuwpQmX+XL4QVS0kxNwHW5ftSbhygu1qxQH0pipugjnPkbvkalCdQbEihMwtQY6d3MTN+MS0q+aurs+RfLQ==",  
9215 - "requires": {  
9216 - "hoist-non-react-statics": "^2.3.1",  
9217 - "prop-types": "^15.6.0",  
9218 - "react-lifecycles-compat": "^3.0.4",  
9219 - "shallowequal": "^1.0.2"  
9220 - },  
9221 - "dependencies": {  
9222 - "hoist-non-react-statics": {  
9223 - "version": "2.5.5",  
9224 - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz",  
9225 - "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw=="  
9226 - }  
9227 - }  
9228 - },  
9229 "minimalistic-assert": { 9294 "minimalistic-assert": {
9230 "version": "1.0.1", 9295 "version": "1.0.1",
9231 "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", 9296 "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
@@ -9466,11 +9531,6 @@ @@ -9466,11 +9531,6 @@
9466 "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", 9531 "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=",
9467 "dev": true 9532 "dev": true
9468 }, 9533 },
9469 - "mutationobserver-shim": {  
9470 - "version": "0.3.3",  
9471 - "resolved": "https://registry.npmjs.org/mutationobserver-shim/-/mutationobserver-shim-0.3.3.tgz",  
9472 - "integrity": "sha512-gciOLNN8Vsf7YzcqRjKzlAJ6y7e+B86u7i3KXes0xfxx/nfLmozlW1Vn+Sc9x3tPIePFgc1AeIFhtRgkqTjzDQ=="  
9473 - },  
9474 "mute-stream": { 9534 "mute-stream": {
9475 "version": "0.0.8", 9535 "version": "0.0.8",
9476 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", 9536 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
@@ -9534,9 +9594,9 @@ @@ -9534,9 +9594,9 @@
9534 } 9594 }
9535 }, 9595 },
9536 "ngx-color-picker": { 9596 "ngx-color-picker": {
9537 - "version": "8.2.0",  
9538 - "resolved": "https://registry.npmjs.org/ngx-color-picker/-/ngx-color-picker-8.2.0.tgz",  
9539 - "integrity": "sha512-rzR+cByjNG9M/UskU5vNoH7cUc6oM8STTDFKOZmnlX4ALOuM1+61CBjsNTGETWfo9a/h5mbGX02oh5/iNAa7vA==" 9597 + "version": "9.0.0",
  9598 + "resolved": "https://registry.npmjs.org/ngx-color-picker/-/ngx-color-picker-9.0.0.tgz",
  9599 + "integrity": "sha512-fe5KS89gzzBBB+keugAQtneBOGso44EW8cxJa8j/4c7pELBGw1Xgu/duINuwlwVDalN9R5GIFWeMdNaBvBPHyA=="
9540 }, 9600 },
9541 "ngx-flowchart": { 9601 "ngx-flowchart": {
9542 "version": "git://github.com/thingsboard/ngx-flowchart.git#671b505b2484806a4a1c376344d0a12e5716679a", 9602 "version": "git://github.com/thingsboard/ngx-flowchart.git#671b505b2484806a4a1c376344d0a12e5716679a",
@@ -9867,13 +9927,12 @@ @@ -9867,13 +9927,12 @@
9867 "object-inspect": { 9927 "object-inspect": {
9868 "version": "1.7.0", 9928 "version": "1.7.0",
9869 "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", 9929 "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz",
9870 - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==",  
9871 - "dev": true 9930 + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw=="
9872 }, 9931 },
9873 "object-is": { 9932 "object-is": {
9874 - "version": "1.0.1",  
9875 - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.1.tgz",  
9876 - "integrity": "sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY=" 9933 + "version": "1.0.2",
  9934 + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.2.tgz",
  9935 + "integrity": "sha512-Epah+btZd5wrrfjkJZq1AOB9O6OxUQto45hzFd7lXGrpHPGE0W1k+426yrZV+k6NJOzLNNW/nVsmZdIWsAqoOQ=="
9877 }, 9936 },
9878 "object-keys": { 9937 "object-keys": {
9879 "version": "1.1.1", 9938 "version": "1.1.1",
@@ -9893,7 +9952,6 @@ @@ -9893,7 +9952,6 @@
9893 "version": "4.1.0", 9952 "version": "4.1.0",
9894 "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", 9953 "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
9895 "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", 9954 "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
9896 - "dev": true,  
9897 "requires": { 9955 "requires": {
9898 "define-properties": "^1.1.2", 9956 "define-properties": "^1.1.2",
9899 "function-bind": "^1.1.1", 9957 "function-bind": "^1.1.1",
@@ -9933,9 +9991,9 @@ @@ -9933,9 +9991,9 @@
9933 } 9991 }
9934 }, 9992 },
9935 "objectpath": { 9993 "objectpath": {
9936 - "version": "1.2.2",  
9937 - "resolved": "https://registry.npmjs.org/objectpath/-/objectpath-1.2.2.tgz",  
9938 - "integrity": "sha512-ie+GY5tJsKt7daHH6qGROf3JqxfD2XhfBPLY+HQrVuRY8MQE1ySKVSqQ/TQz/Dx7jDwuy3etQALDE1cRJAC0cg==" 9994 + "version": "2.0.0",
  9995 + "resolved": "https://registry.npmjs.org/objectpath/-/objectpath-2.0.0.tgz",
  9996 + "integrity": "sha512-IWH9JOBUJz4HHBtXm1qqwoPiDAB8Qp+ZBE4PpXsOlXVEnxGa+fAgfAZFwN6L1cUYvzPpFeJ1HsY1WAhoOqQq7Q=="
9939 }, 9997 },
9940 "obuf": { 9998 "obuf": {
9941 "version": "1.1.2", 9999 "version": "1.1.2",
@@ -11486,14 +11544,14 @@ @@ -11486,14 +11544,14 @@
11486 } 11544 }
11487 }, 11545 },
11488 "rc-align": { 11546 "rc-align": {
11489 - "version": "2.4.5",  
11490 - "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-2.4.5.tgz",  
11491 - "integrity": "sha512-nv9wYUYdfyfK+qskThf4BQUSIadeI/dCsfaMZfNEoxm9HwOIioQ+LyqmMK6jWHAZQgOzMLaqawhuBXlF63vgjw==", 11547 + "version": "3.0.0-rc.1",
  11548 + "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-3.0.0-rc.1.tgz",
  11549 + "integrity": "sha512-GbofumhCUb7SxP410j/fbtR2M9Zml+eoZSdaliZh6R3NhfEj5zP4jcO3HG3S9C9KIcXQQtd/cwVHkb9Y0KU7Hg==",
11492 "requires": { 11550 "requires": {
11493 - "babel-runtime": "^6.26.0", 11551 + "classnames": "2.x",
11494 "dom-align": "^1.7.0", 11552 "dom-align": "^1.7.0",
11495 - "prop-types": "^15.5.8",  
11496 - "rc-util": "^4.0.4" 11553 + "rc-util": "^4.12.0",
  11554 + "resize-observer-polyfill": "^1.5.1"
11497 } 11555 }
11498 }, 11556 },
11499 "rc-animate": { 11557 "rc-animate": {
@@ -11510,53 +11568,30 @@ @@ -11510,53 +11568,30 @@
11510 "react-lifecycles-compat": "^3.0.4" 11568 "react-lifecycles-compat": "^3.0.4"
11511 } 11569 }
11512 }, 11570 },
11513 - "rc-menu": {  
11514 - "version": "7.5.5",  
11515 - "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-7.5.5.tgz",  
11516 - "integrity": "sha512-4YJXJgrpUGEA1rMftXN7bDhrV5rPB8oBJoHqT+GVXtIWCanfQxEnM3fmhHQhatL59JoAFMZhJaNzhJIk4FUWCQ==",  
11517 - "requires": {  
11518 - "classnames": "2.x",  
11519 - "dom-scroll-into-view": "1.x",  
11520 - "mini-store": "^2.0.0",  
11521 - "mutationobserver-shim": "^0.3.2",  
11522 - "rc-animate": "^2.10.1",  
11523 - "rc-trigger": "^2.3.0",  
11524 - "rc-util": "^4.13.0",  
11525 - "resize-observer-polyfill": "^1.5.0",  
11526 - "shallowequal": "^1.1.0"  
11527 - }  
11528 - },  
11529 "rc-select": { 11571 "rc-select": {
11530 - "version": "9.2.3",  
11531 - "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-9.2.3.tgz",  
11532 - "integrity": "sha512-WhswxOMWiNnkXRbxyrj0kiIvyCfo/BaRPaYbsDetSIAU2yEDwKHF798blCP5u86KLOBKBvtxWLFCkSsQw1so5w==", 11572 + "version": "10.0.0-rc.6",
  11573 + "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-10.0.0-rc.6.tgz",
  11574 + "integrity": "sha512-eGQZBk2agq6eqVlF01kgT7i6hJzbWLWP4zC8qYp6sjuzBvDtFo8IRiHVPQk9ZHYJC+ZW8S9atD+ZzndCM1DcvQ==",
11533 "requires": { 11575 "requires": {
11534 - "babel-runtime": "^6.23.0",  
11535 "classnames": "2.x", 11576 "classnames": "2.x",
11536 - "component-classes": "1.x",  
11537 - "dom-scroll-into-view": "1.x",  
11538 - "prop-types": "^15.5.8",  
11539 - "raf": "^3.4.0",  
11540 - "rc-animate": "2.x",  
11541 - "rc-menu": "^7.3.0",  
11542 - "rc-trigger": "^2.5.4",  
11543 - "rc-util": "^4.0.4",  
11544 - "react-lifecycles-compat": "^3.0.2",  
11545 - "warning": "^4.0.2" 11577 + "rc-animate": "^2.10.0",
  11578 + "rc-trigger": "^4.0.0-alpha.4",
  11579 + "rc-util": "^4.17.0",
  11580 + "rc-virtual-list": "^0.0.0-alpha.25",
  11581 + "warning": "^4.0.3"
11546 } 11582 }
11547 }, 11583 },
11548 "rc-trigger": { 11584 "rc-trigger": {
11549 - "version": "2.6.5",  
11550 - "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-2.6.5.tgz",  
11551 - "integrity": "sha512-m6Cts9hLeZWsTvWnuMm7oElhf+03GOjOLfTuU0QmdB9ZrW7jR2IpI5rpNM7i9MvAAlMAmTx5Zr7g3uu/aMvZAw==", 11585 + "version": "4.0.0-rc.5",
  11586 + "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-4.0.0-rc.5.tgz",
  11587 + "integrity": "sha512-CUimlGKduOzBJxMEib3MzWhFpSq0wFk/iXxonaIIth/zVMZ4at+Wf3yxh8apY6UuYZlrJiA8S58/BfePpT+g0Q==",
11552 "requires": { 11588 "requires": {
11553 - "babel-runtime": "6.x",  
11554 "classnames": "^2.2.6", 11589 "classnames": "^2.2.6",
11555 "prop-types": "15.x", 11590 "prop-types": "15.x",
11556 - "rc-align": "^2.4.0",  
11557 - "rc-animate": "2.x",  
11558 - "rc-util": "^4.4.0",  
11559 - "react-lifecycles-compat": "^3.0.4" 11591 + "raf": "^3.4.1",
  11592 + "rc-align": "^3.0.0-rc.0",
  11593 + "rc-animate": "^2.10.2",
  11594 + "rc-util": "^4.15.2"
11560 } 11595 }
11561 }, 11596 },
11562 "rc-util": { 11597 "rc-util": {
@@ -11571,6 +11606,15 @@ @@ -11571,6 +11606,15 @@
11571 "shallowequal": "^1.1.0" 11606 "shallowequal": "^1.1.0"
11572 } 11607 }
11573 }, 11608 },
  11609 + "rc-virtual-list": {
  11610 + "version": "0.0.0-rc.1",
  11611 + "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-0.0.0-rc.1.tgz",
  11612 + "integrity": "sha512-bd4Wj7XVG+fioBUW1tvQUdV9yrByf9Hc2MGnrhzxpGvSAYOoR9LqDxi2ahHOD8rzlwxsDUm1H5bvb89cZ/7baw==",
  11613 + "requires": {
  11614 + "classnames": "^2.2.6",
  11615 + "rc-util": "^4.8.0"
  11616 + }
  11617 + },
11574 "react": { 11618 "react": {
11575 "version": "16.12.0", 11619 "version": "16.12.0",
11576 "resolved": "https://registry.npmjs.org/react/-/react-16.12.0.tgz", 11620 "resolved": "https://registry.npmjs.org/react/-/react-16.12.0.tgz",
@@ -11766,11 +11810,12 @@ @@ -11766,11 +11810,12 @@
11766 } 11810 }
11767 }, 11811 },
11768 "regexp.prototype.flags": { 11812 "regexp.prototype.flags": {
11769 - "version": "1.2.0",  
11770 - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz",  
11771 - "integrity": "sha512-ztaw4M1VqgMwl9HlPpOuiYgItcHlunW0He2fE6eNfT6E/CF2FtYi9ofOYe4mKntstYk0Fyh/rDRBdS3AnxjlrA==", 11813 + "version": "1.3.0",
  11814 + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz",
  11815 + "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==",
11772 "requires": { 11816 "requires": {
11773 - "define-properties": "^1.1.2" 11817 + "define-properties": "^1.1.3",
  11818 + "es-abstract": "^1.17.0-next.1"
11774 } 11819 }
11775 }, 11820 },
11776 "regexpu-core": { 11821 "regexpu-core": {
@@ -12370,6 +12415,15 @@ @@ -12370,6 +12415,15 @@
12370 "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", 12415 "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
12371 "dev": true 12416 "dev": true
12372 }, 12417 },
  12418 + "side-channel": {
  12419 + "version": "1.0.2",
  12420 + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.2.tgz",
  12421 + "integrity": "sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA==",
  12422 + "requires": {
  12423 + "es-abstract": "^1.17.0-next.1",
  12424 + "object-inspect": "^1.7.0"
  12425 + }
  12426 + },
12373 "sigmund": { 12427 "sigmund": {
12374 "version": "1.0.1", 12428 "version": "1.0.1",
12375 "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", 12429 "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
@@ -13081,7 +13135,6 @@ @@ -13081,7 +13135,6 @@
13081 "version": "2.1.1", 13135 "version": "2.1.1",
13082 "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", 13136 "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz",
13083 "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", 13137 "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==",
13084 - "dev": true,  
13085 "requires": { 13138 "requires": {
13086 "define-properties": "^1.1.3", 13139 "define-properties": "^1.1.3",
13087 "function-bind": "^1.1.1" 13140 "function-bind": "^1.1.1"
@@ -13091,7 +13144,6 @@ @@ -13091,7 +13144,6 @@
13091 "version": "2.1.1", 13144 "version": "2.1.1",
13092 "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", 13145 "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz",
13093 "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", 13146 "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==",
13094 - "dev": true,  
13095 "requires": { 13147 "requires": {
13096 "define-properties": "^1.1.3", 13148 "define-properties": "^1.1.3",
13097 "function-bind": "^1.1.1" 13149 "function-bind": "^1.1.1"
@@ -13612,16 +13664,16 @@ @@ -13612,16 +13664,16 @@
13612 "dev": true 13664 "dev": true
13613 }, 13665 },
13614 "ts-node": { 13666 "ts-node": {
13615 - "version": "8.5.4",  
13616 - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.5.4.tgz",  
13617 - "integrity": "sha512-izbVCRV68EasEPQ8MSIGBNK9dc/4sYJJKYA+IarMQct1RtEot6Xp0bXuClsbUSnKpg50ho+aOAx8en5c+y4OFw==", 13667 + "version": "8.6.2",
  13668 + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.6.2.tgz",
  13669 + "integrity": "sha512-4mZEbofxGqLL2RImpe3zMJukvEvcO1XP8bj8ozBPySdCUXEcU5cIRwR0aM3R+VoZq7iXc8N86NC0FspGRqP4gg==",
13618 "dev": true, 13670 "dev": true,
13619 "requires": { 13671 "requires": {
13620 "arg": "^4.1.0", 13672 "arg": "^4.1.0",
13621 "diff": "^4.0.1", 13673 "diff": "^4.0.1",
13622 "make-error": "^1.1.1", 13674 "make-error": "^1.1.1",
13623 "source-map-support": "^0.5.6", 13675 "source-map-support": "^0.5.6",
13624 - "yn": "^3.0.0" 13676 + "yn": "3.1.1"
13625 } 13677 }
13626 }, 13678 },
13627 "tslib": { 13679 "tslib": {
@@ -13630,9 +13682,9 @@ @@ -13630,9 +13682,9 @@
13630 "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==" 13682 "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ=="
13631 }, 13683 },
13632 "tslint": { 13684 "tslint": {
13633 - "version": "5.20.1",  
13634 - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.20.1.tgz",  
13635 - "integrity": "sha512-EcMxhzCFt8k+/UP5r8waCf/lzmeSyVlqxqMEDQE7rWYiQky8KpIBz1JAoYXfROHrPZ1XXd43q8yQnULOLiBRQg==", 13685 + "version": "6.0.0",
  13686 + "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.0.0.tgz",
  13687 + "integrity": "sha512-9nLya8GBtlFmmFMW7oXXwoXS1NkrccqTqAtwXzdPV9e2mqSEvCki6iHL/Fbzi5oqbugshzgGPk7KBb2qNP1DSA==",
13636 "dev": true, 13688 "dev": true,
13637 "requires": { 13689 "requires": {
13638 "@babel/code-frame": "^7.0.0", 13690 "@babel/code-frame": "^7.0.0",
@@ -13646,7 +13698,7 @@ @@ -13646,7 +13698,7 @@
13646 "mkdirp": "^0.5.1", 13698 "mkdirp": "^0.5.1",
13647 "resolve": "^1.3.2", 13699 "resolve": "^1.3.2",
13648 "semver": "^5.3.0", 13700 "semver": "^5.3.0",
13649 - "tslib": "^1.8.0", 13701 + "tslib": "^1.10.0",
13650 "tsutils": "^2.29.0" 13702 "tsutils": "^2.29.0"
13651 } 13703 }
13652 }, 13704 },
@@ -15816,6 +15868,29 @@ @@ -15816,6 +15868,29 @@
15816 "isexe": "^2.0.0" 15868 "isexe": "^2.0.0"
15817 } 15869 }
15818 }, 15870 },
  15871 + "which-boxed-primitive": {
  15872 + "version": "1.0.1",
  15873 + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.1.tgz",
  15874 + "integrity": "sha512-7BT4TwISdDGBgaemWU0N0OU7FeAEJ9Oo2P1PHRm/FCWoEi2VLWC9b6xvxAA3C/NMpxg3HXVgi0sMmGbNUbNepQ==",
  15875 + "requires": {
  15876 + "is-bigint": "^1.0.0",
  15877 + "is-boolean-object": "^1.0.0",
  15878 + "is-number-object": "^1.0.3",
  15879 + "is-string": "^1.0.4",
  15880 + "is-symbol": "^1.0.2"
  15881 + }
  15882 + },
  15883 + "which-collection": {
  15884 + "version": "1.0.1",
  15885 + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz",
  15886 + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==",
  15887 + "requires": {
  15888 + "is-map": "^2.0.1",
  15889 + "is-set": "^2.0.1",
  15890 + "is-weakmap": "^2.0.1",
  15891 + "is-weakset": "^2.0.1"
  15892 + }
  15893 + },
15819 "which-module": { 15894 "which-module": {
15820 "version": "2.0.0", 15895 "version": "2.0.0",
15821 "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", 15896 "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
@@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
2 "name": "thingsboard", 2 "name": "thingsboard",
3 "version": "3.0.0", 3 "version": "3.0.0",
4 "scripts": { 4 "scripts": {
  5 + "postinstall": "ngcc --properties es2015 browser module main --first-only --create-ivy-entry-points",
5 "ng": "ng", 6 "ng": "ng",
6 "start": "ng serve --host 0.0.0.0 --open", 7 "start": "ng serve --host 0.0.0.0 --open",
7 "build": "ng build", 8 "build": "ng build",
@@ -23,34 +24,34 @@ @@ -23,34 +24,34 @@
23 "@angular/platform-browser": "~9.0.0", 24 "@angular/platform-browser": "~9.0.0",
24 "@angular/platform-browser-dynamic": "~9.0.0", 25 "@angular/platform-browser-dynamic": "~9.0.0",
25 "@angular/router": "~9.0.0", 26 "@angular/router": "~9.0.0",
26 - "@auth0/angular-jwt": "^3.0.1",  
27 - "@date-io/date-fns": "^1.3.13", 27 + "@auth0/angular-jwt": "^4.0.0",
  28 + "@date-io/date-fns": "^2.3.0",
28 "@flowjs/flow.js": "^2.14.0", 29 "@flowjs/flow.js": "^2.14.0",
29 "@flowjs/ngx-flow": "^0.4.3", 30 "@flowjs/ngx-flow": "^0.4.3",
30 - "@mat-datetimepicker/core": "^2.0.1",  
31 - "@material-ui/core": "^4.9.1", 31 + "@mat-datetimepicker/core": "^4.0.0",
  32 + "@material-ui/core": "^4.9.2",
32 "@material-ui/icons": "^4.9.1", 33 "@material-ui/icons": "^4.9.1",
33 "@material-ui/pickers": "^3.2.10", 34 "@material-ui/pickers": "^3.2.10",
34 "@ngrx/effects": "^8.6.0", 35 "@ngrx/effects": "^8.6.0",
35 "@ngrx/store": "^8.6.0", 36 "@ngrx/store": "^8.6.0",
36 "@ngrx/store-devtools": "^8.6.0", 37 "@ngrx/store-devtools": "^8.6.0",
37 "@ngx-share/core": "^7.1.4", 38 "@ngx-share/core": "^7.1.4",
38 - "@ngx-translate/core": "^11.0.1", 39 + "@ngx-translate/core": "^12.0.0",
39 "@ngx-translate/http-loader": "^4.0.0", 40 "@ngx-translate/http-loader": "^4.0.0",
40 "ace-builds": "^1.4.8", 41 "ace-builds": "^1.4.8",
41 - "angular-gridster2": "^8.3.0", 42 + "angular-gridster2": "^9.0.0",
42 "angular2-hotkeys": "^2.1.5", 43 "angular2-hotkeys": "^2.1.5",
43 "base64-js": "^1.3.1", 44 "base64-js": "^1.3.1",
44 "compass-sass-mixins": "^0.12.7", 45 "compass-sass-mixins": "^0.12.7",
45 "core-js": "^3.6.4", 46 "core-js": "^3.6.4",
46 - "date-fns": "2.8.1",  
47 - "deep-equal": "^1.1.1", 47 + "date-fns": "^2.9.0",
  48 + "deep-equal": "^2.0.1",
48 "flot": "git://github.com/thingsboard/flot.git#0.9-work", 49 "flot": "git://github.com/thingsboard/flot.git#0.9-work",
49 "flot.curvedlines": "git://github.com/MichaelZinsmaier/CurvedLines.git#master", 50 "flot.curvedlines": "git://github.com/MichaelZinsmaier/CurvedLines.git#master",
50 "font-awesome": "^4.7.0", 51 "font-awesome": "^4.7.0",
51 "javascript-detect-element-resize": "^0.5.3", 52 "javascript-detect-element-resize": "^0.5.3",
52 "jquery": "^3.4.1", 53 "jquery": "^3.4.1",
53 - "jquery.terminal": "^1.5.0", 54 + "jquery.terminal": "^2.12.0",
54 "js-beautify": "^1.10.3", 55 "js-beautify": "^1.10.3",
55 "json-schema-defaults": "^0.4.0", 56 "json-schema-defaults": "^0.4.0",
56 "jstree": "^3.3.8", 57 "jstree": "^3.3.8",
@@ -59,14 +60,14 @@ @@ -59,14 +60,14 @@
59 "messageformat": "^2.3.0", 60 "messageformat": "^2.3.0",
60 "moment": "^2.24.0", 61 "moment": "^2.24.0",
61 "ngx-clipboard": "^12.3.0", 62 "ngx-clipboard": "^12.3.0",
62 - "ngx-color-picker": "^8.2.0", 63 + "ngx-color-picker": "^9.0.0",
63 "ngx-flowchart": "git://github.com/thingsboard/ngx-flowchart.git#master", 64 "ngx-flowchart": "git://github.com/thingsboard/ngx-flowchart.git#master",
64 "ngx-hm-carousel": "^1.7.2", 65 "ngx-hm-carousel": "^1.7.2",
65 "ngx-translate-messageformat-compiler": "^4.5.0", 66 "ngx-translate-messageformat-compiler": "^4.5.0",
66 - "objectpath": "^1.2.2", 67 + "objectpath": "^2.0.0",
67 "prop-types": "^15.7.2", 68 "prop-types": "^15.7.2",
68 "raphael": "^2.3.0", 69 "raphael": "^2.3.0",
69 - "rc-select": "^9.2.3", 70 + "rc-select": "^10.0.0-rc.6",
70 "react": "^16.12.0", 71 "react": "^16.12.0",
71 "react-ace": "^8.0.0", 72 "react-ace": "^8.0.0",
72 "react-dom": "^16.12.0", 73 "react-dom": "^16.12.0",
@@ -85,18 +86,18 @@ @@ -85,18 +86,18 @@
85 "zone.js": "~0.10.2" 86 "zone.js": "~0.10.2"
86 }, 87 },
87 "devDependencies": { 88 "devDependencies": {
88 - "@angular-builders/custom-webpack": "^8.4.1", 89 + "@angular-builders/custom-webpack": "^9.0.0-beta.7",
89 "@angular-devkit/build-angular": "~0.900.1", 90 "@angular-devkit/build-angular": "~0.900.1",
90 "@angular/cli": "^9.0.1", 91 "@angular/cli": "^9.0.1",
91 "@angular/compiler-cli": "~9.0.0", 92 "@angular/compiler-cli": "~9.0.0",
92 "@angular/language-service": "~9.0.0", 93 "@angular/language-service": "~9.0.0",
93 "@types/flot": "0.0.31", 94 "@types/flot": "0.0.31",
94 - "@types/jasmine": "^3.5.2", 95 + "@types/jasmine": "^3.5.3",
95 "@types/jasminewd2": "~2.0.8", 96 "@types/jasminewd2": "~2.0.8",
96 - "@types/jquery": "^3.3.31", 97 + "@types/jquery": "^3.3.32",
97 "@types/js-beautify": "^1.8.1", 98 "@types/js-beautify": "^1.8.1",
98 "@types/jstree": "^3.3.39", 99 "@types/jstree": "^3.3.39",
99 - "@types/node": "^12.11.1", 100 + "@types/node": "^13.7.0",
100 "@types/raphael": "^2.1.30", 101 "@types/raphael": "^2.1.30",
101 "@types/react": "^16.9.19", 102 "@types/react": "^16.9.19",
102 "@types/react-dom": "^16.9.5", 103 "@types/react-dom": "^16.9.5",
@@ -110,12 +111,12 @@ @@ -110,12 +111,12 @@
110 "karma": "~4.4.1", 111 "karma": "~4.4.1",
111 "karma-chrome-launcher": "~3.1.0", 112 "karma-chrome-launcher": "~3.1.0",
112 "karma-coverage-istanbul-reporter": "~2.1.1", 113 "karma-coverage-istanbul-reporter": "~2.1.1",
113 - "karma-jasmine": "~2.0.1", 114 + "karma-jasmine": "~3.1.0",
114 "karma-jasmine-html-reporter": "^1.5.2", 115 "karma-jasmine-html-reporter": "^1.5.2",
115 "ngrx-store-freeze": "^0.2.4", 116 "ngrx-store-freeze": "^0.2.4",
116 "protractor": "^5.4.3", 117 "protractor": "^5.4.3",
117 - "ts-node": "~8.5.4",  
118 - "tslint": "~5.20.1", 118 + "ts-node": "~8.6.2",
  119 + "tslint": "~6.0.0",
119 "typescript": "~3.7.5" 120 "typescript": "~3.7.5"
120 }, 121 },
121 "resolutions": { 122 "resolutions": {
@@ -48,11 +48,6 @@ export function HttpLoaderFactory(http: HttpClient) { @@ -48,11 +48,6 @@ export function HttpLoaderFactory(http: HttpClient) {
48 } 48 }
49 49
50 @NgModule({ 50 @NgModule({
51 - entryComponents: [  
52 - ConfirmDialogComponent,  
53 - AlertDialogComponent,  
54 - TodoDialogComponent  
55 - ],  
56 declarations: [ 51 declarations: [
57 ConfirmDialogComponent, 52 ConfirmDialogComponent,
58 AlertDialogComponent, 53 AlertDialogComponent,
1 -///  
2 -/// Copyright © 2016-2019 The Thingsboard Authors  
3 -///  
4 -/// Licensed under the Apache License, Version 2.0 (the "License");  
5 -/// you may not use this file except in compliance with the License.  
6 -/// You may obtain a copy of the License at  
7 -///  
8 -/// http://www.apache.org/licenses/LICENSE-2.0  
9 -///  
10 -/// Unless required by applicable law or agreed to in writing, software  
11 -/// distributed under the License is distributed on an "AS IS" BASIS,  
12 -/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  
13 -/// See the License for the specific language governing permissions and  
14 -/// limitations under the License.  
15 -///  
16 -  
17 -import { createFeatureSelector, createSelector } from '@ngrx/store';  
18 -  
19 -import { NotificationState } from './notification.models';  
20 -import { AppState } from '@app/core/core.state';  
21 -  
22 -export const selectNotificationState = createFeatureSelector<AppState, NotificationState>(  
23 - 'notification'  
24 -);  
25 -  
26 -export const selectNotification = createSelector(  
27 - selectNotificationState,  
28 - (state: NotificationState) => state  
29 -);  
@@ -59,14 +59,13 @@ export class DynamicComponentFactoryService { @@ -59,14 +59,13 @@ export class DynamicComponentFactoryService {
59 modules?: Type<any>[]): Observable<ComponentFactory<T>> { 59 modules?: Type<any>[]): Observable<ComponentFactory<T>> {
60 const dymamicComponentFactorySubject = new ReplaySubject<ComponentFactory<T>>(); 60 const dymamicComponentFactorySubject = new ReplaySubject<ComponentFactory<T>>();
61 const comp = this.createDynamicComponent(componentType, template); 61 const comp = this.createDynamicComponent(componentType, template);
62 - let moduleImports = [CommonModule]; 62 + let moduleImports: Type<any>[] = [CommonModule];
63 if (modules) { 63 if (modules) {
64 moduleImports = [...moduleImports, ...modules]; 64 moduleImports = [...moduleImports, ...modules];
65 } 65 }
66 - // noinspection AngularInvalidImportedOrDeclaredSymbol,AngularInvalidEntryComponent 66 + // noinspection AngularInvalidImportedOrDeclaredSymbol
67 @NgModule({ 67 @NgModule({
68 declarations: [comp], 68 declarations: [comp],
69 - entryComponents: [comp],  
70 imports: moduleImports 69 imports: moduleImports
71 }) 70 })
72 class DynamicComponentInstanceModule extends DynamicComponentModule {} 71 class DynamicComponentInstanceModule extends DynamicComponentModule {}
@@ -105,8 +104,7 @@ export class DynamicComponentFactoryService { @@ -105,8 +104,7 @@ export class DynamicComponentFactoryService {
105 private createDynamicComponent<T>(componentType: Type<T>, template: string): Type<T> { 104 private createDynamicComponent<T>(componentType: Type<T>, template: string): Type<T> {
106 // noinspection AngularMissingOrInvalidDeclarationInModule 105 // noinspection AngularMissingOrInvalidDeclarationInModule
107 return Component({ 106 return Component({
108 - template,  
109 - jit: true 107 + template
110 })(componentType); 108 })(componentType);
111 } 109 }
112 110
@@ -18,9 +18,10 @@ import { @@ -18,9 +18,10 @@ import {
18 MESSAGE_FORMAT_CONFIG, MessageFormatConfig, 18 MESSAGE_FORMAT_CONFIG, MessageFormatConfig,
19 TranslateMessageFormatCompiler 19 TranslateMessageFormatCompiler
20 } from 'ngx-translate-messageformat-compiler'; 20 } from 'ngx-translate-messageformat-compiler';
21 -import { Inject, Optional } from '@angular/core'; 21 +import { Inject, Injectable, Optional } from '@angular/core';
22 const parse = require('messageformat-parser').parse; 22 const parse = require('messageformat-parser').parse;
23 23
  24 +@Injectable({ providedIn: 'root' })
24 export class TranslateDefaultCompiler extends TranslateMessageFormatCompiler { 25 export class TranslateDefaultCompiler extends TranslateMessageFormatCompiler {
25 26
26 constructor( 27 constructor(
@@ -23,7 +23,6 @@ import { DashboardModule } from '@home/pages/dashboard/dashboard.module'; @@ -23,7 +23,6 @@ import { DashboardModule } from '@home/pages/dashboard/dashboard.module';
23 import { DashboardPagesRoutingModule } from './dashboard-pages.routing.module'; 23 import { DashboardPagesRoutingModule } from './dashboard-pages.routing.module';
24 24
25 @NgModule({ 25 @NgModule({
26 - entryComponents: [],  
27 imports: [ 26 imports: [
28 CommonModule, 27 CommonModule,
29 SharedModule, 28 SharedModule,
@@ -66,26 +66,6 @@ import { EventContentDialogComponent } from '@home/components/event/event-conten @@ -66,26 +66,6 @@ import { EventContentDialogComponent } from '@home/components/event/event-conten
66 import { SharedHomeComponentsModule } from '@home/components/shared-home-components.module'; 66 import { SharedHomeComponentsModule } from '@home/components/shared-home-components.module';
67 67
68 @NgModule({ 68 @NgModule({
69 - entryComponents: [  
70 - AddEntityDialogComponent,  
71 - AuditLogDetailsDialogComponent,  
72 - EventContentDialogComponent,  
73 - EventTableHeaderComponent,  
74 - RelationDialogComponent,  
75 - AlarmTableHeaderComponent,  
76 - AddAttributeDialogComponent,  
77 - EditAttributeValuePanelComponent,  
78 - AliasesEntitySelectPanelComponent,  
79 - EntityAliasesDialogComponent,  
80 - EntityAliasDialogComponent,  
81 - DataKeyConfigDialogComponent,  
82 - LegendConfigPanelComponent,  
83 - WidgetActionDialogComponent,  
84 - CustomDialogContainerComponent,  
85 - ImportDialogComponent,  
86 - ImportDialogCsvComponent,  
87 - AddWidgetToDashboardDialogComponent  
88 - ],  
89 declarations: 69 declarations:
90 [ 70 [
91 EntitiesTableComponent, 71 EntitiesTableComponent,
@@ -691,7 +691,7 @@ export class ImportExportService { @@ -691,7 +691,7 @@ export class ImportExportService {
691 const e = this.document.createEvent('MouseEvents'); 691 const e = this.document.createEvent('MouseEvents');
692 const a = this.document.createElement('a'); 692 const a = this.document.createElement('a');
693 a.download = filename; 693 a.download = filename;
694 - a.href = this.window.URL.createObjectURL(blob); 694 + a.href = URL.createObjectURL(blob);
695 a.dataset.downloadurl = ['text/json', a.download, a.href].join(':'); 695 a.dataset.downloadurl = ['text/json', a.download, a.href].join(':');
696 // @ts-ignore 696 // @ts-ignore
697 e.initEvent('click', true, false, this.window, 697 e.initEvent('click', true, false, this.window,
@@ -21,8 +21,8 @@ import { AppState } from '@core/core.state'; @@ -21,8 +21,8 @@ import { AppState } from '@core/core.state';
21 import { EntityType } from '@shared/models/entity-type.models'; 21 import { EntityType } from '@shared/models/entity-type.models';
22 import { CsvColumnParam, ImportEntityColumnType, importEntityColumnTypeTranslations, 22 import { CsvColumnParam, ImportEntityColumnType, importEntityColumnTypeTranslations,
23 importEntityObjectColumns } from '@home/components/import-export/import-export.models'; 23 importEntityObjectColumns } from '@home/components/import-export/import-export.models';
24 -import { CollectionViewer, DataSource } from '@angular/cdk/typings/collections';  
25 import { BehaviorSubject, Observable } from 'rxjs'; 24 import { BehaviorSubject, Observable } from 'rxjs';
  25 +import { CollectionViewer, DataSource } from '@angular/cdk/collections';
26 26
27 @Component({ 27 @Component({
28 selector: 'tb-table-columns-assignment', 28 selector: 'tb-table-columns-assignment',
@@ -20,9 +20,6 @@ import { SharedModule } from '@app/shared/shared.module'; @@ -20,9 +20,6 @@ import { SharedModule } from '@app/shared/shared.module';
20 import { AlarmDetailsDialogComponent } from '@home/components/alarm/alarm-details-dialog.component'; 20 import { AlarmDetailsDialogComponent } from '@home/components/alarm/alarm-details-dialog.component';
21 21
22 @NgModule({ 22 @NgModule({
23 - entryComponents: [  
24 - AlarmDetailsDialogComponent  
25 - ],  
26 declarations: 23 declarations:
27 [ 24 [
28 AlarmDetailsDialogComponent 25 AlarmDetailsDialogComponent
@@ -25,7 +25,7 @@ @@ -25,7 +25,7 @@
25 // vm.entityType = entityId.entityType; 25 // vm.entityType = entityId.entityType;
26 // 26 //
27 // vm.editEntityFormGroup = vm.fb.group({ 27 // vm.editEntityFormGroup = vm.fb.group({
28 -// entityName: [vm.entityName, [vm.Validators.required]] 28 +// entityName: [vm.entityName, [vm.validators.required]]
29 // }); 29 // });
30 // 30 //
31 // vm.cancel = function() { 31 // vm.cancel = function() {
@@ -16,7 +16,7 @@ @@ -16,7 +16,7 @@
16 16
17 import { WidgetActionDescriptor, WidgetActionSource, 17 import { WidgetActionDescriptor, WidgetActionSource,
18 widgetActionTypeTranslationMap, CustomActionDescriptor } from '@app/shared/models/widget.models'; 18 widgetActionTypeTranslationMap, CustomActionDescriptor } from '@app/shared/models/widget.models';
19 -import { CollectionViewer, DataSource } from '@angular/cdk/typings/collections'; 19 +import { CollectionViewer, DataSource } from '@angular/cdk/collections';
20 import { EntityRelationInfo, EntitySearchDirection } from '@shared/models/relation.models'; 20 import { EntityRelationInfo, EntitySearchDirection } from '@shared/models/relation.models';
21 import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs'; 21 import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs';
22 import { emptyPageData, PageData } from '@shared/models/page/page-data'; 22 import { emptyPageData, PageData } from '@shared/models/page/page-data';
@@ -62,16 +62,16 @@ export class CustomDialogContainerComponent extends DialogComponent<CustomDialog @@ -62,16 +62,16 @@ export class CustomDialogContainerComponent extends DialogComponent<CustomDialog
62 if (this.data.data) { 62 if (this.data.data) {
63 customDialogData = {...customDialogData, ...this.data.data}; 63 customDialogData = {...customDialogData, ...this.data.data};
64 } 64 }
65 - const injector: Injector = ReflectiveInjector.resolveAndCreate([  
66 - { 65 + const injector: Injector = Injector.create({
  66 + providers: [{
67 provide: CUSTOM_DIALOG_DATA, 67 provide: CUSTOM_DIALOG_DATA,
68 useValue: customDialogData 68 useValue: customDialogData
69 }, 69 },
70 - {  
71 - provide: MatDialogRef,  
72 - useValue: dialogRef  
73 - }  
74 - ]); 70 + {
  71 + provide: MatDialogRef,
  72 + useValue: dialogRef
  73 + }]
  74 + });
75 this.customComponentRef = this.viewContainerRef.createComponent(this.data.customComponentFactory, 0, injector); 75 this.customComponentRef = this.viewContainerRef.createComponent(this.data.customComponentFactory, 0, injector);
76 } 76 }
77 77
@@ -42,7 +42,7 @@ export class CustomDialogComponent extends PageComponent { @@ -42,7 +42,7 @@ export class CustomDialogComponent extends PageComponent {
42 @Inject(CUSTOM_DIALOG_DATA) public data: CustomDialogData) { 42 @Inject(CUSTOM_DIALOG_DATA) public data: CustomDialogData) {
43 super(store); 43 super(store);
44 // @ts-ignore 44 // @ts-ignore
45 - this.Validators = Validators; 45 + this.validators = Validators;
46 this.data.controller(this); 46 this.data.controller(this);
47 } 47 }
48 } 48 }
@@ -70,8 +70,6 @@ export class CustomDialogService { @@ -70,8 +70,6 @@ export class CustomDialogService {
70 } 70 }
71 71
72 @NgModule({ 72 @NgModule({
73 - entryComponents: [  
74 - ],  
75 declarations: 73 declarations:
76 [ 74 [
77 ], 75 ],
@@ -14,43 +14,14 @@ @@ -14,43 +14,14 @@
14 /// limitations under the License. 14 /// limitations under the License.
15 /// 15 ///
16 16
17 -import {  
18 - Component,  
19 - forwardRef, Inject,  
20 - Input,  
21 - OnDestroy,  
22 - OnInit,  
23 - ViewChild,  
24 - ViewContainerRef  
25 -} from '@angular/core'; 17 +import { Component, forwardRef, Inject, Input, OnDestroy, OnInit, ViewChild, ViewContainerRef } from '@angular/core';
26 import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms'; 18 import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';
27 -import { TranslateService } from '@ngx-translate/core';  
28 -import { MillisecondsToTimeStringPipe } from '@shared/pipe/milliseconds-to-time-string.pipe';  
29 -import {  
30 - HistoryWindowType,  
31 - Timewindow,  
32 - TimewindowType,  
33 - initModelFromDefaultTimewindow, cloneSelectedTimewindow  
34 -} from '@shared/models/time/time.models';  
35 -import { DatePipe } from '@angular/common';  
36 -import {  
37 - Overlay,  
38 - CdkOverlayOrigin,  
39 - OverlayConfig,  
40 - OverlayPositionBuilder, ConnectedPosition, PositionStrategy, OverlayRef  
41 -} from '@angular/cdk/overlay';  
42 -import {  
43 - TIMEWINDOW_PANEL_DATA,  
44 - TimewindowPanelComponent,  
45 - TimewindowPanelData  
46 -} from '@shared/components/time/timewindow-panel.component'; 19 +import { DOCUMENT } from '@angular/common';
  20 +import { CdkOverlayOrigin, ConnectedPosition, Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';
47 import { ComponentPortal, PortalInjector } from '@angular/cdk/portal'; 21 import { ComponentPortal, PortalInjector } from '@angular/cdk/portal';
48 import { MediaBreakpoints } from '@shared/models/constants'; 22 import { MediaBreakpoints } from '@shared/models/constants';
49 import { BreakpointObserver } from '@angular/cdk/layout'; 23 import { BreakpointObserver } from '@angular/cdk/layout';
50 -import { DOCUMENT } from '@angular/common';  
51 import { WINDOW } from '@core/services/window.service'; 24 import { WINDOW } from '@core/services/window.service';
52 -import { TimeService } from '@core/services/time.service';  
53 -import { TooltipPosition } from '@angular/material/typings/tooltip';  
54 import { deepClone } from '@core/utils'; 25 import { deepClone } from '@core/utils';
55 import { LegendConfig } from '@shared/models/widget.models'; 26 import { LegendConfig } from '@shared/models/widget.models';
56 import { 27 import {
@@ -37,7 +37,7 @@ import { deepClone, isDefined, isNumber } from '@core/utils'; @@ -37,7 +37,7 @@ import { deepClone, isDefined, isNumber } from '@core/utils';
37 import cssjs from '@core/css/css'; 37 import cssjs from '@core/css/css';
38 import { PageLink } from '@shared/models/page/page-link'; 38 import { PageLink } from '@shared/models/page/page-link';
39 import { Direction, SortOrder, sortOrderFromString } from '@shared/models/page/sort-order'; 39 import { Direction, SortOrder, sortOrderFromString } from '@shared/models/page/sort-order';
40 -import { DataSource } from '@angular/cdk/typings/collections'; 40 +import { DataSource } from '@angular/cdk/collections';
41 import { CollectionViewer, SelectionModel } from '@angular/cdk/collections'; 41 import { CollectionViewer, SelectionModel } from '@angular/cdk/collections';
42 import { BehaviorSubject, forkJoin, fromEvent, merge, Observable, of } from 'rxjs'; 42 import { BehaviorSubject, forkJoin, fromEvent, merge, Observable, of } from 'rxjs';
43 import { emptyPageData, PageData } from '@shared/models/page/page-data'; 43 import { emptyPageData, PageData } from '@shared/models/page/page-data';
@@ -43,7 +43,7 @@ import { deepClone, isDefined, isNumber } from '@core/utils'; @@ -43,7 +43,7 @@ import { deepClone, isDefined, isNumber } from '@core/utils';
43 import cssjs from '@core/css/css'; 43 import cssjs from '@core/css/css';
44 import { PageLink } from '@shared/models/page/page-link'; 44 import { PageLink } from '@shared/models/page/page-link';
45 import { Direction, SortOrder, sortOrderFromString } from '@shared/models/page/sort-order'; 45 import { Direction, SortOrder, sortOrderFromString } from '@shared/models/page/sort-order';
46 -import { DataSource } from '@angular/cdk/typings/collections'; 46 +import { DataSource } from '@angular/cdk/collections';
47 import { DataKeyType } from '@shared/models/telemetry/telemetry.models'; 47 import { DataKeyType } from '@shared/models/telemetry/telemetry.models';
48 import { CollectionViewer } from '@angular/cdk/collections'; 48 import { CollectionViewer } from '@angular/cdk/collections';
49 import { BehaviorSubject, fromEvent, merge, Observable, of } from 'rxjs'; 49 import { BehaviorSubject, fromEvent, merge, Observable, of } from 'rxjs';
@@ -44,7 +44,7 @@ import { isDefined, isNumber } from '@core/utils'; @@ -44,7 +44,7 @@ import { isDefined, isNumber } from '@core/utils';
44 import cssjs from '@core/css/css'; 44 import cssjs from '@core/css/css';
45 import { PageLink } from '@shared/models/page/page-link'; 45 import { PageLink } from '@shared/models/page/page-link';
46 import { Direction, SortOrder, sortOrderFromString } from '@shared/models/page/sort-order'; 46 import { Direction, SortOrder, sortOrderFromString } from '@shared/models/page/sort-order';
47 -import { DataSource } from '@angular/cdk/typings/collections'; 47 +import { DataSource } from '@angular/cdk/collections';
48 import { CollectionViewer } from '@angular/cdk/collections'; 48 import { CollectionViewer } from '@angular/cdk/collections';
49 import { BehaviorSubject, fromEvent, merge, Observable, of } from 'rxjs'; 49 import { BehaviorSubject, fromEvent, merge, Observable, of } from 'rxjs';
50 import { emptyPageData, PageData } from '@shared/models/page/page-data'; 50 import { emptyPageData, PageData } from '@shared/models/page/page-data';
@@ -24,12 +24,9 @@ import { AlarmStatusFilterPanelComponent } from '@home/components/widget/lib/ala @@ -24,12 +24,9 @@ import { AlarmStatusFilterPanelComponent } from '@home/components/widget/lib/ala
24 import { SharedHomeComponentsModule } from '@home/components/shared-home-components.module'; 24 import { SharedHomeComponentsModule } from '@home/components/shared-home-components.module';
25 import { TimeseriesTableWidgetComponent } from '@home/components/widget/lib/timeseries-table-widget.component'; 25 import { TimeseriesTableWidgetComponent } from '@home/components/widget/lib/timeseries-table-widget.component';
26 import { EntitiesHierarchyWidgetComponent } from '@home/components/widget/lib/entities-hierarchy-widget.component'; 26 import { EntitiesHierarchyWidgetComponent } from '@home/components/widget/lib/entities-hierarchy-widget.component';
  27 +import { CustomDialogService } from '@home/components/widget/dialog/custom-dialog.service';
27 28
28 @NgModule({ 29 @NgModule({
29 - entryComponents: [  
30 - DisplayColumnsPanelComponent,  
31 - AlarmStatusFilterPanelComponent  
32 - ],  
33 declarations: 30 declarations:
34 [ 31 [
35 DisplayColumnsPanelComponent, 32 DisplayColumnsPanelComponent,
@@ -49,6 +46,9 @@ import { EntitiesHierarchyWidgetComponent } from '@home/components/widget/lib/en @@ -49,6 +46,9 @@ import { EntitiesHierarchyWidgetComponent } from '@home/components/widget/lib/en
49 AlarmsTableWidgetComponent, 46 AlarmsTableWidgetComponent,
50 TimeseriesTableWidgetComponent, 47 TimeseriesTableWidgetComponent,
51 EntitiesHierarchyWidgetComponent 48 EntitiesHierarchyWidgetComponent
  49 + ],
  50 + providers: [
  51 + CustomDialogService
52 ] 52 ]
53 }) 53 })
54 export class WidgetComponentsModule { } 54 export class WidgetComponentsModule { }
@@ -663,6 +663,7 @@ export class WidgetComponent extends PageComponent implements OnInit, AfterViewI @@ -663,6 +663,7 @@ export class WidgetComponent extends PageComponent implements OnInit, AfterViewI
663 } 663 }
664 ); 664 );
665 this.dynamicWidgetComponentRef = this.widgetContentContainer.createComponent(this.widgetInfo.componentFactory, 0, injector); 665 this.dynamicWidgetComponentRef = this.widgetContentContainer.createComponent(this.widgetInfo.componentFactory, 0, injector);
  666 +
666 this.dynamicWidgetComponent = this.dynamicWidgetComponentRef.instance; 667 this.dynamicWidgetComponent = this.dynamicWidgetComponentRef.instance;
667 668
668 const containerElement = $(this.elementRef.nativeElement.querySelector('#widget-container')); 669 const containerElement = $(this.elementRef.nativeElement.querySelector('#widget-container'));
@@ -22,10 +22,6 @@ import {AddEntitiesToCustomerDialogComponent} from '@modules/home/dialogs/add-en @@ -22,10 +22,6 @@ import {AddEntitiesToCustomerDialogComponent} from '@modules/home/dialogs/add-en
22 import { HomeDialogsService } from './home-dialogs.service'; 22 import { HomeDialogsService } from './home-dialogs.service';
23 23
24 @NgModule({ 24 @NgModule({
25 - entryComponents: [  
26 - AssignToCustomerDialogComponent,  
27 - AddEntitiesToCustomerDialogComponent  
28 - ],  
29 declarations: 25 declarations:
30 [ 26 [
31 AssignToCustomerDialogComponent, 27 AssignToCustomerDialogComponent,
@@ -14,7 +14,7 @@ @@ -14,7 +14,7 @@
14 /// limitations under the License. 14 /// limitations under the License.
15 /// 15 ///
16 16
17 -import { CollectionViewer, DataSource } from '@angular/cdk/typings/collections'; 17 +import { CollectionViewer, DataSource } from '@angular/cdk/collections';
18 import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs'; 18 import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs';
19 import { emptyPageData, PageData } from '@shared/models/page/page-data'; 19 import { emptyPageData, PageData } from '@shared/models/page/page-data';
20 import { SelectionModel } from '@angular/cdk/collections'; 20 import { SelectionModel } from '@angular/cdk/collections';
@@ -14,15 +14,13 @@ @@ -14,15 +14,13 @@
14 /// limitations under the License. 14 /// limitations under the License.
15 /// 15 ///
16 16
17 -import { EntityId } from '@shared/models/id/entity-id';  
18 import { PageLink } from '@shared/models/page/page-link'; 17 import { PageLink } from '@shared/models/page/page-link';
19 import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs'; 18 import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs';
20 import { emptyPageData, PageData } from '@shared/models/page/page-data'; 19 import { emptyPageData, PageData } from '@shared/models/page/page-data';
21 import { BaseData, HasId } from '@shared/models/base-data'; 20 import { BaseData, HasId } from '@shared/models/base-data';
22 -import { CollectionViewer, DataSource } from '@angular/cdk/typings/collections'; 21 +import { CollectionViewer, DataSource, SelectionModel } from '@angular/cdk/collections';
23 import { catchError, map, share, take, tap } from 'rxjs/operators'; 22 import { catchError, map, share, take, tap } from 'rxjs/operators';
24 -import { SelectionModel } from '@angular/cdk/collections';  
25 -import {EntityBooleanFunction} from '@home/models/entity/entities-table-config.models'; 23 +import { EntityBooleanFunction } from '@home/models/entity/entities-table-config.models';
26 24
27 export type EntitiesFetchFunction<T extends BaseData<HasId>, P extends PageLink> = (pageLink: P) => Observable<PageData<T>>; 25 export type EntitiesFetchFunction<T extends BaseData<HasId>, P extends PageLink> = (pageLink: P) => Observable<PageData<T>>;
28 26
@@ -14,11 +14,10 @@ @@ -14,11 +14,10 @@
14 /// limitations under the License. 14 /// limitations under the License.
15 /// 15 ///
16 16
17 -import { CollectionViewer, DataSource } from '@angular/cdk/typings/collections'; 17 +import { CollectionViewer, DataSource, SelectionModel } from '@angular/cdk/collections';
18 import { EntityRelationInfo, EntitySearchDirection } from '@shared/models/relation.models'; 18 import { EntityRelationInfo, EntitySearchDirection } from '@shared/models/relation.models';
19 import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs'; 19 import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs';
20 import { emptyPageData, PageData } from '@shared/models/page/page-data'; 20 import { emptyPageData, PageData } from '@shared/models/page/page-data';
21 -import { SelectionModel } from '@angular/cdk/collections';  
22 import { EntityRelationService } from '@core/http/entity-relation.service'; 21 import { EntityRelationService } from '@core/http/entity-relation.service';
23 import { PageLink } from '@shared/models/page/page-link'; 22 import { PageLink } from '@shared/models/page/page-link';
24 import { catchError, map, publishReplay, refCount, take, tap } from 'rxjs/operators'; 23 import { catchError, map, publishReplay, refCount, take, tap } from 'rxjs/operators';
@@ -25,11 +25,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod @@ -25,11 +25,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod
25 import { AssetTabsComponent } from '@home/pages/asset/asset-tabs.component'; 25 import { AssetTabsComponent } from '@home/pages/asset/asset-tabs.component';
26 26
27 @NgModule({ 27 @NgModule({
28 - entryComponents: [  
29 - AssetComponent,  
30 - AssetTabsComponent,  
31 - AssetTableHeaderComponent  
32 - ],  
33 declarations: [ 28 declarations: [
34 AssetComponent, 29 AssetComponent,
35 AssetTabsComponent, 30 AssetTabsComponent,
@@ -23,10 +23,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod @@ -23,10 +23,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod
23 import { CustomerTabsComponent } from '@home/pages/customer/customer-tabs.component'; 23 import { CustomerTabsComponent } from '@home/pages/customer/customer-tabs.component';
24 24
25 @NgModule({ 25 @NgModule({
26 - entryComponents: [  
27 - CustomerComponent,  
28 - CustomerTabsComponent  
29 - ],  
30 declarations: [ 26 declarations: [
31 CustomerComponent, 27 CustomerComponent,
32 CustomerTabsComponent 28 CustomerTabsComponent
@@ -39,19 +39,6 @@ import { DashboardStateDialogComponent } from './states/dashboard-state-dialog.c @@ -39,19 +39,6 @@ import { DashboardStateDialogComponent } from './states/dashboard-state-dialog.c
39 import { SelectTargetStateDialogComponent } from './states/select-target-state-dialog.component'; 39 import { SelectTargetStateDialogComponent } from './states/select-target-state-dialog.component';
40 40
41 @NgModule({ 41 @NgModule({
42 - entryComponents: [  
43 - DashboardFormComponent,  
44 - DashboardTabsComponent,  
45 - ManageDashboardCustomersDialogComponent,  
46 - MakeDashboardPublicDialogComponent,  
47 - AddWidgetDialogComponent,  
48 - ManageDashboardLayoutsDialogComponent,  
49 - SelectTargetLayoutDialogComponent,  
50 - DashboardSettingsDialogComponent,  
51 - ManageDashboardStatesDialogComponent,  
52 - DashboardStateDialogComponent,  
53 - SelectTargetStateDialogComponent  
54 - ],  
55 declarations: [ 42 declarations: [
56 DashboardFormComponent, 43 DashboardFormComponent,
57 DashboardTabsComponent, 44 DashboardTabsComponent,
@@ -15,8 +15,7 @@ @@ -15,8 +15,7 @@
15 /// 15 ///
16 16
17 import { DashboardState } from '@shared/models/dashboard.models'; 17 import { DashboardState } from '@shared/models/dashboard.models';
18 -import { CollectionViewer, DataSource } from '@angular/cdk/typings/collections';  
19 -import { WidgetActionDescriptorInfo } from '@home/components/widget/action/manage-widget-actions.component.models'; 18 +import { CollectionViewer, DataSource } from '@angular/cdk/collections';
20 import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs'; 19 import { BehaviorSubject, Observable, of, ReplaySubject } from 'rxjs';
21 import { emptyPageData, PageData } from '@shared/models/page/page-data'; 20 import { emptyPageData, PageData } from '@shared/models/page/page-data';
22 import { PageLink } from '@shared/models/page/page-link'; 21 import { PageLink } from '@shared/models/page/page-link';
@@ -25,10 +25,6 @@ import { HomeDialogsModule } from '@app/modules/home/dialogs/home-dialogs.module @@ -25,10 +25,6 @@ import { HomeDialogsModule } from '@app/modules/home/dialogs/home-dialogs.module
25 import { DefaultStateControllerComponent } from '@home/pages/dashboard/states/default-state-controller.component'; 25 import { DefaultStateControllerComponent } from '@home/pages/dashboard/states/default-state-controller.component';
26 26
27 @NgModule({ 27 @NgModule({
28 - entryComponents: [  
29 - DefaultStateControllerComponent,  
30 - EntityStateControllerComponent  
31 - ],  
32 declarations: [ 28 declarations: [
33 StatesComponentDirective, 29 StatesComponentDirective,
34 DefaultStateControllerComponent, 30 DefaultStateControllerComponent,
@@ -26,12 +26,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod @@ -26,12 +26,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod
26 import { DeviceTabsComponent } from '@home/pages/device/device-tabs.component'; 26 import { DeviceTabsComponent } from '@home/pages/device/device-tabs.component';
27 27
28 @NgModule({ 28 @NgModule({
29 - entryComponents: [  
30 - DeviceComponent,  
31 - DeviceTabsComponent,  
32 - DeviceTableHeaderComponent,  
33 - DeviceCredentialsDialogComponent  
34 - ],  
35 declarations: [ 29 declarations: [
36 DeviceComponent, 30 DeviceComponent,
37 DeviceTabsComponent, 31 DeviceTabsComponent,
@@ -25,11 +25,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod @@ -25,11 +25,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod
25 import { EntityViewTabsComponent } from '@home/pages/entity-view/entity-view-tabs.component'; 25 import { EntityViewTabsComponent } from '@home/pages/entity-view/entity-view-tabs.component';
26 26
27 @NgModule({ 27 @NgModule({
28 - entryComponents: [  
29 - EntityViewComponent,  
30 - EntityViewTabsComponent,  
31 - EntityViewTableHeaderComponent  
32 - ],  
33 declarations: [ 28 declarations: [
34 EntityViewComponent, 29 EntityViewComponent,
35 EntityViewTabsComponent, 30 EntityViewTabsComponent,
@@ -22,9 +22,6 @@ import { ProfileRoutingModule } from './profile-routing.module'; @@ -22,9 +22,6 @@ import { ProfileRoutingModule } from './profile-routing.module';
22 import { ChangePasswordDialogComponent } from '@modules/home/pages/profile/change-password-dialog.component'; 22 import { ChangePasswordDialogComponent } from '@modules/home/pages/profile/change-password-dialog.component';
23 23
24 @NgModule({ 24 @NgModule({
25 - entryComponents: [  
26 - ChangePasswordDialogComponent  
27 - ],  
28 declarations: [ 25 declarations: [
29 ProfileComponent, 26 ProfileComponent,
30 ChangePasswordDialogComponent 27 ChangePasswordDialogComponent
@@ -42,7 +42,7 @@ import * as AngularCommon from '@angular/common'; @@ -42,7 +42,7 @@ import * as AngularCommon from '@angular/common';
42 import * as AngularForms from '@angular/forms'; 42 import * as AngularForms from '@angular/forms';
43 import * as AngularCdkCoercion from '@angular/cdk/coercion'; 43 import * as AngularCdkCoercion from '@angular/cdk/coercion';
44 import * as AngularCdkKeycodes from '@angular/cdk/keycodes'; 44 import * as AngularCdkKeycodes from '@angular/cdk/keycodes';
45 -import * as AngularMaterial from '@angular/material'; 45 +import * as AngularMaterial from '@angular/material/esm5';
46 import * as NgrxStore from '@ngrx/store'; 46 import * as NgrxStore from '@ngrx/store';
47 import * as TranslateCore from '@ngx-translate/core'; 47 import * as TranslateCore from '@ngx-translate/core';
48 import * as TbCore from '@core/public-api'; 48 import * as TbCore from '@core/public-api';
@@ -30,13 +30,6 @@ import { LinkLabelsComponent } from '@home/pages/rulechain/link-labels.component @@ -30,13 +30,6 @@ import { LinkLabelsComponent } from '@home/pages/rulechain/link-labels.component
30 import { RuleNodeConfigComponent } from './rule-node-config.component'; 30 import { RuleNodeConfigComponent } from './rule-node-config.component';
31 31
32 @NgModule({ 32 @NgModule({
33 - entryComponents: [  
34 - RuleChainComponent,  
35 - RuleChainTabsComponent,  
36 - RuleNodeComponent,  
37 - AddRuleNodeLinkDialogComponent,  
38 - AddRuleNodeDialogComponent  
39 - ],  
40 declarations: [ 33 declarations: [
41 RuleChainComponent, 34 RuleChainComponent,
42 RuleChainTabsComponent, 35 RuleChainTabsComponent,
@@ -23,10 +23,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod @@ -23,10 +23,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod
23 import { TenantTabsComponent } from '@home/pages/tenant/tenant-tabs.component'; 23 import { TenantTabsComponent } from '@home/pages/tenant/tenant-tabs.component';
24 24
25 @NgModule({ 25 @NgModule({
26 - entryComponents: [  
27 - TenantComponent,  
28 - TenantTabsComponent  
29 - ],  
30 declarations: [ 26 declarations: [
31 TenantComponent, 27 TenantComponent,
32 TenantTabsComponent 28 TenantTabsComponent
@@ -25,12 +25,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod @@ -25,12 +25,6 @@ import {HomeComponentsModule} from '@modules/home/components/home-components.mod
25 import { UserTabsComponent } from '@home/pages/user/user-tabs.component'; 25 import { UserTabsComponent } from '@home/pages/user/user-tabs.component';
26 26
27 @NgModule({ 27 @NgModule({
28 - entryComponents: [  
29 - UserComponent,  
30 - UserTabsComponent,  
31 - AddUserDialogComponent,  
32 - ActivationLinkDialogComponent  
33 - ],  
34 declarations: [ 28 declarations: [
35 UserComponent, 29 UserComponent,
36 UserTabsComponent, 30 UserTabsComponent,
@@ -26,11 +26,6 @@ import { SelectWidgetTypeDialogComponent } from '@home/pages/widget/select-widge @@ -26,11 +26,6 @@ import { SelectWidgetTypeDialogComponent } from '@home/pages/widget/select-widge
26 import { SaveWidgetTypeAsDialogComponent } from './save-widget-type-as-dialog.component'; 26 import { SaveWidgetTypeAsDialogComponent } from './save-widget-type-as-dialog.component';
27 27
28 @NgModule({ 28 @NgModule({
29 - entryComponents: [  
30 - WidgetsBundleComponent,  
31 - SelectWidgetTypeDialogComponent,  
32 - SaveWidgetTypeAsDialogComponent  
33 - ],  
34 declarations: [ 29 declarations: [
35 WidgetsBundleComponent, 30 WidgetsBundleComponent,
36 WidgetLibraryComponent, 31 WidgetLibraryComponent,
@@ -16,12 +16,13 @@ @@ -16,12 +16,13 @@
16 16
17 import * as React from 'react'; 17 import * as React from 'react';
18 import ThingsboardBaseComponent from './json-form-base-component'; 18 import ThingsboardBaseComponent from './json-form-base-component';
19 -import Select, {Option} from 'rc-select/lib'; 19 +import Select, {Option} from 'rc-select';
20 import { 20 import {
21 JsonFormFieldProps, 21 JsonFormFieldProps,
22 JsonFormFieldState, 22 JsonFormFieldState,
23 KeyLabelItem 23 KeyLabelItem
24 } from '@shared/components/json-form/react/json-form.models'; 24 } from '@shared/components/json-form/react/json-form.models';
  25 +import { Mode } from 'rc-select/lib/interface';
25 26
26 interface ThingsboardRcSelectState extends JsonFormFieldState { 27 interface ThingsboardRcSelectState extends JsonFormFieldState {
27 currentValue: KeyLabelItem | KeyLabelItem[]; 28 currentValue: KeyLabelItem | KeyLabelItem[];
@@ -150,6 +151,14 @@ class ThingsboardRcSelect extends React.Component<JsonFormFieldProps, Thingsboar @@ -150,6 +151,14 @@ class ThingsboardRcSelect extends React.Component<JsonFormFieldProps, Thingsboar
150 if (this.state.focused) { 151 if (this.state.focused) {
151 labelClass += ' tb-focused'; 152 labelClass += ' tb-focused';
152 } 153 }
  154 + let mode: Mode;
  155 + if (this.props.form.tags) {
  156 + mode = 'tags';
  157 + } else if (this.props.form.multiple) {
  158 + mode = 'multiple';
  159 + } else if (this.props.form.combobox) {
  160 + mode = 'combobox';
  161 + }
153 162
154 return ( 163 return (
155 <div className='tb-container'> 164 <div className='tb-container'>
@@ -158,12 +167,9 @@ class ThingsboardRcSelect extends React.Component<JsonFormFieldProps, Thingsboar @@ -158,12 +167,9 @@ class ThingsboardRcSelect extends React.Component<JsonFormFieldProps, Thingsboar
158 className={this.props.form.className} 167 className={this.props.form.className}
159 dropdownClassName={this.props.form.dropdownClassName} 168 dropdownClassName={this.props.form.dropdownClassName}
160 dropdownStyle={{...this.props.form.dropdownStyle, ...{zIndex: 100001}}} 169 dropdownStyle={{...this.props.form.dropdownStyle, ...{zIndex: 100001}}}
161 - dropdownMenuStyle={this.props.form.dropdownMenuStyle}  
162 allowClear={this.props.form.allowClear} 170 allowClear={this.props.form.allowClear}
163 - tags={this.props.form.tags} 171 + mode={mode}
164 maxTagTextLength={this.props.form.maxTagTextLength} 172 maxTagTextLength={this.props.form.maxTagTextLength}
165 - multiple={this.props.form.multiple}  
166 - combobox={this.props.form.combobox}  
167 disabled={this.props.form.readonly} 173 disabled={this.props.form.readonly}
168 optionLabelProp='children' 174 optionLabelProp='children'
169 value={this.state.currentValue} 175 value={this.state.currentValue}
@@ -14,9 +14,8 @@ @@ -14,9 +14,8 @@
14 /// limitations under the License. 14 /// limitations under the License.
15 /// 15 ///
16 16
17 -import { AfterViewInit, Directive, ElementRef, OnDestroy, Renderer, Renderer2, HostListener, QueryList, Output, EventEmitter } from '@angular/core'; 17 +import { AfterViewInit, Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';
18 import { MatChip, MatChipList } from '@angular/material/chips'; 18 import { MatChip, MatChipList } from '@angular/material/chips';
19 -import DragStartEvent = JQuery.DragStartEvent;  
20 import Timeout = NodeJS.Timeout; 19 import Timeout = NodeJS.Timeout;
21 20
22 export interface MatChipDropEvent { 21 export interface MatChipDropEvent {
@@ -17,7 +17,7 @@ @@ -17,7 +17,7 @@
17 padding: 15px; 17 padding: 15px;
18 font-family: Roboto, "Helvetica Neue", sans-serif; 18 font-family: Roboto, "Helvetica Neue", sans-serif;
19 19
20 - &.jstree-proton { 20 + &.jstree-proton, &.jstree-proton-small, &.jstree-proton-large {
21 .jstree-node, 21 .jstree-node,
22 .jstree-icon { 22 .jstree-icon {
23 background-image: url("../../../assets/jstree/32px.png"); 23 background-image: url("../../../assets/jstree/32px.png");
@@ -29,7 +29,12 @@ @@ -29,7 +29,12 @@
29 29
30 .jstree-themeicon-custom { 30 .jstree-themeicon-custom {
31 background-image: none; 31 background-image: none;
  32 + }
  33 + }
32 34
  35 + &.jstree-proton {
  36 +
  37 + .jstree-themeicon-custom {
33 &.material-icons { 38 &.material-icons {
34 font-size: 18px; 39 font-size: 18px;
35 } 40 }
@@ -41,18 +46,8 @@ @@ -41,18 +46,8 @@
41 } 46 }
42 47
43 &.jstree-proton-small { 48 &.jstree-proton-small {
44 - .jstree-node,  
45 - .jstree-icon {  
46 - background-image: url("../../../assets/jstree/32px.png");  
47 - }  
48 -  
49 - .jstree-last {  
50 - background: transparent;  
51 - }  
52 49
53 .jstree-themeicon-custom { 50 .jstree-themeicon-custom {
54 - background-image: none;  
55 -  
56 &.material-icons { 51 &.material-icons {
57 font-size: 14px; 52 font-size: 14px;
58 } 53 }
@@ -64,18 +59,8 @@ @@ -64,18 +59,8 @@
64 } 59 }
65 60
66 &.jstree-proton-large { 61 &.jstree-proton-large {
67 - .jstree-node,  
68 - .jstree-icon {  
69 - background-image: url("../../../assets/jstree/32px.png");  
70 - }  
71 -  
72 - .jstree-last {  
73 - background: transparent;  
74 - }  
75 62
76 .jstree-themeicon-custom { 63 .jstree-themeicon-custom {
77 - background-image: none;  
78 -  
79 &.material-icons { 64 &.material-icons {
80 font-size: 24px; 65 font-size: 24px;
81 } 66 }
@@ -51,7 +51,7 @@ import { BreakpointObserver } from '@angular/cdk/layout'; @@ -51,7 +51,7 @@ import { BreakpointObserver } from '@angular/cdk/layout';
51 import { DOCUMENT } from '@angular/common'; 51 import { DOCUMENT } from '@angular/common';
52 import { WINDOW } from '@core/services/window.service'; 52 import { WINDOW } from '@core/services/window.service';
53 import { TimeService } from '@core/services/time.service'; 53 import { TimeService } from '@core/services/time.service';
54 -import { TooltipPosition } from '@angular/material/typings/tooltip'; 54 +import { TooltipPosition } from '@angular/material/tooltip';
55 import { deepClone } from '@core/utils'; 55 import { deepClone } from '@core/utils';
56 56
57 // @dynamic 57 // @dynamic
@@ -133,16 +133,6 @@ import { LedLightComponent } from '@shared/components/led-light.component'; @@ -133,16 +133,6 @@ import { LedLightComponent } from '@shared/components/led-light.component';
133 useValue: Flow 133 useValue: Flow
134 } 134 }
135 ], 135 ],
136 - entryComponents: [  
137 - TbSnackBarComponent,  
138 - TbAnchorComponent,  
139 - TimewindowPanelComponent,  
140 - DashboardSelectPanelComponent,  
141 - MatSpinner,  
142 - ColorPickerDialogComponent,  
143 - MaterialIconsDialogComponent,  
144 - NodeScriptTestDialogComponent  
145 - ],  
146 declarations: [ 136 declarations: [
147 FooterComponent, 137 FooterComponent,
148 LogoComponent, 138 LogoComponent,
  1 +///
  2 +/// Copyright © 2016-2019 The Thingsboard Authors
  3 +///
  4 +/// Licensed under the Apache License, Version 2.0 (the "License");
  5 +/// you may not use this file except in compliance with the License.
  6 +/// You may obtain a copy of the License at
  7 +///
  8 +/// http://www.apache.org/licenses/LICENSE-2.0
  9 +///
  10 +/// Unless required by applicable law or agreed to in writing, software
  11 +/// distributed under the License is distributed on an "AS IS" BASIS,
  12 +/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13 +/// See the License for the specific language governing permissions and
  14 +/// limitations under the License.
  15 +///
  16 +
1 17
2 18
3 import { enableProdMode } from '@angular/core'; 19 import { enableProdMode } from '@angular/core';
@@ -79,3 +79,5 @@ import 'core-js/es/array'; @@ -79,3 +79,5 @@ import 'core-js/es/array';
79 /*************************************************************************************************** 79 /***************************************************************************************************
80 * APPLICATION IMPORTS 80 * APPLICATION IMPORTS
81 */ 81 */
  82 +
  83 +(window as any).global = window;
@@ -596,6 +596,7 @@ mat-label { @@ -596,6 +596,7 @@ mat-label {
596 min-width: 40px; 596 min-width: 40px;
597 word-wrap: initial; 597 word-wrap: initial;
598 display: table-cell; 598 display: table-cell;
  599 + box-sizing: content-box;
599 line-break: unset; 600 line-break: unset;
600 width: 0px; 601 width: 0px;
601 overflow: hidden; 602 overflow: hidden;
@@ -674,6 +675,7 @@ mat-label { @@ -674,6 +675,7 @@ mat-label {
674 675
675 .mat-icon { 676 .mat-icon {
676 vertical-align: middle; 677 vertical-align: middle;
  678 + box-sizing: content-box;
677 &.tb-mat-16 { 679 &.tb-mat-16 {
678 @include tb-mat-icon-size(16); 680 @include tb-mat-icon-size(16);
679 } 681 }
@@ -77,6 +77,7 @@ $tb-light-theme-background: ( @@ -77,6 +77,7 @@ $tb-light-theme-background: (
77 disabled-button-toggle: map_get($mat-grey, 200), 77 disabled-button-toggle: map_get($mat-grey, 200),
78 unselected-chip: map_get($mat-grey, 300), 78 unselected-chip: map_get($mat-grey, 300),
79 disabled-list-option: map_get($mat-grey, 200), 79 disabled-list-option: map_get($mat-grey, 200),
  80 + tooltip: map_get($mat-grey, 700)
80 ); 81 );
81 82
82 @function get-tb-light-theme($primary, $accent, $warn: mat-palette($mat-red)) { 83 @function get-tb-light-theme($primary, $accent, $warn: mat-palette($mat-red)) {
@@ -148,6 +149,7 @@ $tb-dark-theme-background: ( @@ -148,6 +149,7 @@ $tb-dark-theme-background: (
148 disabled-button-toggle: black, 149 disabled-button-toggle: black,
149 unselected-chip: map_get($tb-dark-mat-indigo, 700), 150 unselected-chip: map_get($tb-dark-mat-indigo, 700),
150 disabled-list-option: black, 151 disabled-list-option: black,
  152 + tooltip: map_get($mat-grey, 700),
151 ); 153 );
152 154
153 @function get-tb-dark-theme($primary, $accent, $warn: mat-palette($mat-red)) { 155 @function get-tb-dark-theme($primary, $accent, $warn: mat-palette($mat-red)) {
@@ -4,6 +4,9 @@ @@ -4,6 +4,9 @@
4 "outDir": "../out-tsc/app", 4 "outDir": "../out-tsc/app",
5 "types": ["node", "jquery", "flot", "tooltipster", "tinycolor2", "js-beautify", "react", "react-dom", "jstree", "raphael"] 5 "types": ["node", "jquery", "flot", "tooltipster", "tinycolor2", "js-beautify", "react", "react-dom", "jstree", "raphael"]
6 }, 6 },
  7 + "angularCompilerOptions": {
  8 + "fullTemplateTypeCheck": true
  9 + },
7 "exclude": [ 10 "exclude": [
8 "test.ts", 11 "test.ts",
9 "**/*.spec.ts" 12 "**/*.spec.ts"