new role for members
This commit is contained in:
293
package-lock.json
generated
293
package-lock.json
generated
@@ -25,6 +25,7 @@
|
|||||||
"@fortawesome/free-solid-svg-icons": "^5.13.0",
|
"@fortawesome/free-solid-svg-icons": "^5.13.0",
|
||||||
"docx": "^6.0.3",
|
"docx": "^6.0.3",
|
||||||
"firebase": "^8.7.0",
|
"firebase": "^8.7.0",
|
||||||
|
"lodash": "^4.17.21",
|
||||||
"ngx-mat-select-search": "^3.3.0",
|
"ngx-mat-select-search": "^3.3.0",
|
||||||
"ngx-perfect-scrollbar": "^10.1.1",
|
"ngx-perfect-scrollbar": "^10.1.1",
|
||||||
"ngx-swiper-wrapper": "^10.0.0",
|
"ngx-swiper-wrapper": "^10.0.0",
|
||||||
@@ -45,6 +46,7 @@
|
|||||||
"@angular/language-service": "~12.0.1",
|
"@angular/language-service": "~12.0.1",
|
||||||
"@types/jasmine": "~3.6.0",
|
"@types/jasmine": "~3.6.0",
|
||||||
"@types/jasminewd2": "~2.0.3",
|
"@types/jasminewd2": "~2.0.3",
|
||||||
|
"@types/lodash": "^4.14.171",
|
||||||
"@types/node": "^12.12.36",
|
"@types/node": "^12.12.36",
|
||||||
"@typescript-eslint/eslint-plugin": "4.23.0",
|
"@typescript-eslint/eslint-plugin": "4.23.0",
|
||||||
"@typescript-eslint/parser": "4.23.0",
|
"@typescript-eslint/parser": "4.23.0",
|
||||||
@@ -386,12 +388,6 @@
|
|||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular-devkit/build-angular/node_modules/lodash": {
|
|
||||||
"version": "4.17.21",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
|
|
||||||
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"node_modules/@angular-devkit/build-angular/node_modules/lru-cache": {
|
"node_modules/@angular-devkit/build-angular/node_modules/lru-cache": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
||||||
@@ -525,12 +521,6 @@
|
|||||||
"yarn": ">= 1.13.0"
|
"yarn": ">= 1.13.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular-devkit/build-optimizer/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"node_modules/@angular-devkit/build-webpack": {
|
"node_modules/@angular-devkit/build-webpack": {
|
||||||
"version": "0.1200.1",
|
"version": "0.1200.1",
|
||||||
"resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1200.1.tgz",
|
"resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1200.1.tgz",
|
||||||
@@ -776,11 +766,6 @@
|
|||||||
"node": "^12.14.1 || ^14.0.0"
|
"node": "^12.14.1 || ^14.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular/animations/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
},
|
|
||||||
"node_modules/@angular/cdk": {
|
"node_modules/@angular/cdk": {
|
||||||
"version": "12.0.1",
|
"version": "12.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-12.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-12.0.1.tgz",
|
||||||
@@ -958,12 +943,6 @@
|
|||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular/cli/node_modules/lodash": {
|
|
||||||
"version": "4.17.21",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
|
|
||||||
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"node_modules/@angular/cli/node_modules/lru-cache": {
|
"node_modules/@angular/cli/node_modules/lru-cache": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
||||||
@@ -1079,11 +1058,6 @@
|
|||||||
"node": "^12.14.1 || ^14.0.0"
|
"node": "^12.14.1 || ^14.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular/common/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
},
|
|
||||||
"node_modules/@angular/compiler": {
|
"node_modules/@angular/compiler": {
|
||||||
"version": "12.0.1",
|
"version": "12.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-12.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-12.0.1.tgz",
|
||||||
@@ -1247,12 +1221,6 @@
|
|||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular/compiler-cli/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"node_modules/@angular/compiler-cli/node_modules/wrap-ansi": {
|
"node_modules/@angular/compiler-cli/node_modules/wrap-ansi": {
|
||||||
"version": "7.0.0",
|
"version": "7.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
||||||
@@ -1303,11 +1271,6 @@
|
|||||||
"node": ">=10"
|
"node": ">=10"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular/compiler/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
},
|
|
||||||
"node_modules/@angular/core": {
|
"node_modules/@angular/core": {
|
||||||
"version": "12.0.1",
|
"version": "12.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@angular/core/-/core-12.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@angular/core/-/core-12.0.1.tgz",
|
||||||
@@ -1319,11 +1282,6 @@
|
|||||||
"node": "^12.14.1 || ^14.0.0"
|
"node": "^12.14.1 || ^14.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular/core/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
},
|
|
||||||
"node_modules/@angular/fire": {
|
"node_modules/@angular/fire": {
|
||||||
"version": "6.1.5",
|
"version": "6.1.5",
|
||||||
"resolved": "https://registry.npmjs.org/@angular/fire/-/fire-6.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@angular/fire/-/fire-6.1.5.tgz",
|
||||||
@@ -1343,11 +1301,6 @@
|
|||||||
"node": "^12.14.1 || ^14.0.0"
|
"node": "^12.14.1 || ^14.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular/forms/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
},
|
|
||||||
"node_modules/@angular/language-service": {
|
"node_modules/@angular/language-service": {
|
||||||
"version": "12.0.1",
|
"version": "12.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-12.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-12.0.1.tgz",
|
||||||
@@ -1387,16 +1340,6 @@
|
|||||||
"node": "^12.14.1 || ^14.0.0"
|
"node": "^12.14.1 || ^14.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular/platform-browser-dynamic/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
},
|
|
||||||
"node_modules/@angular/platform-browser/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
},
|
|
||||||
"node_modules/@angular/router": {
|
"node_modules/@angular/router": {
|
||||||
"version": "12.0.1",
|
"version": "12.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@angular/router/-/router-12.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@angular/router/-/router-12.0.1.tgz",
|
||||||
@@ -1408,11 +1351,6 @@
|
|||||||
"node": "^12.14.1 || ^14.0.0"
|
"node": "^12.14.1 || ^14.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular/router/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
},
|
|
||||||
"node_modules/@angular/service-worker": {
|
"node_modules/@angular/service-worker": {
|
||||||
"version": "12.0.1",
|
"version": "12.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@angular/service-worker/-/service-worker-12.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@angular/service-worker/-/service-worker-12.0.1.tgz",
|
||||||
@@ -1427,11 +1365,6 @@
|
|||||||
"node": "^12.14.1 || ^14.0.0"
|
"node": "^12.14.1 || ^14.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@angular/service-worker/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
},
|
|
||||||
"node_modules/@babel/code-frame": {
|
"node_modules/@babel/code-frame": {
|
||||||
"version": "7.8.3",
|
"version": "7.8.3",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz",
|
||||||
@@ -4823,6 +4756,12 @@
|
|||||||
"jszip": "*"
|
"jszip": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@types/lodash": {
|
||||||
|
"version": "4.14.171",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.171.tgz",
|
||||||
|
"integrity": "sha512-7eQ2xYLLI/LsicL2nejW9Wyko3lcpN6O/z0ZLHrEQsg280zIdCv1t/0m6UtBjUHokCGBQ3gYTbHzDkZ1xOBwwg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/@types/long": {
|
"node_modules/@types/long": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz",
|
||||||
@@ -6153,16 +6092,6 @@
|
|||||||
"readable-stream": "^3.4.0"
|
"readable-stream": "^3.4.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/bl/node_modules/buffer": {
|
|
||||||
"version": "5.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz",
|
|
||||||
"integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"base64-js": "^1.0.2",
|
|
||||||
"ieee754": "^1.1.4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/bl/node_modules/readable-stream": {
|
"node_modules/bl/node_modules/readable-stream": {
|
||||||
"version": "3.6.0",
|
"version": "3.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
|
||||||
@@ -6648,18 +6577,6 @@
|
|||||||
"fsevents": "~2.1.2"
|
"fsevents": "~2.1.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/chokidar/node_modules/glob-parent": {
|
|
||||||
"version": "5.1.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
|
|
||||||
"integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"is-glob": "^4.0.1"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">= 6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/chownr": {
|
"node_modules/chownr": {
|
||||||
"version": "1.1.4",
|
"version": "1.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
|
"resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
|
||||||
@@ -7337,16 +7254,6 @@
|
|||||||
"buffer": "^5.1.0"
|
"buffer": "^5.1.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/crc/node_modules/buffer": {
|
|
||||||
"version": "5.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz",
|
|
||||||
"integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"base64-js": "^1.0.2",
|
|
||||||
"ieee754": "^1.1.4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/crc32-stream": {
|
"node_modules/crc32-stream": {
|
||||||
"version": "3.0.1",
|
"version": "3.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-3.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-3.0.1.tgz",
|
||||||
@@ -9256,12 +9163,6 @@
|
|||||||
"node": ">= 4"
|
"node": ">= 4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/eslint/node_modules/lodash": {
|
|
||||||
"version": "4.17.21",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
|
|
||||||
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"node_modules/eslint/node_modules/lru-cache": {
|
"node_modules/eslint/node_modules/lru-cache": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
||||||
@@ -13585,10 +13486,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lodash": {
|
"node_modules/lodash": {
|
||||||
"version": "4.17.15",
|
"version": "4.17.21",
|
||||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
|
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
|
||||||
"integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
|
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"node_modules/lodash._isnative": {
|
"node_modules/lodash._isnative": {
|
||||||
"version": "2.4.1",
|
"version": "2.4.1",
|
||||||
@@ -17929,18 +17829,6 @@
|
|||||||
"node": ">=6.14.4"
|
"node": ">=6.14.4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/postcss/node_modules/nanoid": {
|
|
||||||
"version": "3.1.23",
|
|
||||||
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz",
|
|
||||||
"integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==",
|
|
||||||
"dev": true,
|
|
||||||
"bin": {
|
|
||||||
"nanoid": "bin/nanoid.cjs"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/postcss/node_modules/source-map": {
|
"node_modules/postcss/node_modules/source-map": {
|
||||||
"version": "0.6.1",
|
"version": "0.6.1",
|
||||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||||
@@ -23105,11 +22993,6 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"tslib": "^2.0.0"
|
"tslib": "^2.0.0"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"node_modules/zone.js/node_modules/tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -23384,12 +23267,6 @@
|
|||||||
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"lodash": {
|
|
||||||
"version": "4.17.21",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
|
|
||||||
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lru-cache": {
|
"lru-cache": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
||||||
@@ -23492,14 +23369,6 @@
|
|||||||
"source-map": "0.7.3",
|
"source-map": "0.7.3",
|
||||||
"tslib": "2.2.0",
|
"tslib": "2.2.0",
|
||||||
"typescript": "4.2.4"
|
"typescript": "4.2.4"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==",
|
|
||||||
"dev": true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@angular-devkit/build-webpack": {
|
"@angular-devkit/build-webpack": {
|
||||||
@@ -23722,13 +23591,6 @@
|
|||||||
"integrity": "sha512-hgmM2pAxiwYgPzDeAFE2C1x43pHpD9tuVCeccL9SOMTMWmCvAuO8SeSaRYCQPP1Y8QQgL1YHqvYMoMfYuFM87Q==",
|
"integrity": "sha512-hgmM2pAxiwYgPzDeAFE2C1x43pHpD9tuVCeccL9SOMTMWmCvAuO8SeSaRYCQPP1Y8QQgL1YHqvYMoMfYuFM87Q==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^2.1.0"
|
"tslib": "^2.1.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@angular/cdk": {
|
"@angular/cdk": {
|
||||||
@@ -23870,12 +23732,6 @@
|
|||||||
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"lodash": {
|
|
||||||
"version": "4.17.21",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
|
|
||||||
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lru-cache": {
|
"lru-cache": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
||||||
@@ -23963,13 +23819,6 @@
|
|||||||
"integrity": "sha512-Jfmc9nFO43dEJgSBd/We9XEosfdUTRzvjEEW4s9cL24TVb3bnNjqeb862VY20M6N44kJ8ayi5gt5L7UwmGLF6g==",
|
"integrity": "sha512-Jfmc9nFO43dEJgSBd/We9XEosfdUTRzvjEEW4s9cL24TVb3bnNjqeb862VY20M6N44kJ8ayi5gt5L7UwmGLF6g==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^2.1.0"
|
"tslib": "^2.1.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@angular/compiler": {
|
"@angular/compiler": {
|
||||||
@@ -23978,13 +23827,6 @@
|
|||||||
"integrity": "sha512-Bxt5FqTffiV4wIWsd3hTgpe82WWJcPRC1R1Q9fPqhMwilfGB7EPhMUyMMYBR1zoVT3cFLg4Q8R9CGiiPWA/UmQ==",
|
"integrity": "sha512-Bxt5FqTffiV4wIWsd3hTgpe82WWJcPRC1R1Q9fPqhMwilfGB7EPhMUyMMYBR1zoVT3cFLg4Q8R9CGiiPWA/UmQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^2.1.0"
|
"tslib": "^2.1.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@angular/compiler-cli": {
|
"@angular/compiler-cli": {
|
||||||
@@ -24100,12 +23942,6 @@
|
|||||||
"ansi-regex": "^5.0.0"
|
"ansi-regex": "^5.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"wrap-ansi": {
|
"wrap-ansi": {
|
||||||
"version": "7.0.0",
|
"version": "7.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
||||||
@@ -24152,13 +23988,6 @@
|
|||||||
"integrity": "sha512-DA5hl0Hl97KTWbktXg1O3+Pt34hwsF1iY2l+8fSexfsKawHhZQuBjGnm8JNuIvKbu70MqHX0OBf2vNTK/Z06HQ==",
|
"integrity": "sha512-DA5hl0Hl97KTWbktXg1O3+Pt34hwsF1iY2l+8fSexfsKawHhZQuBjGnm8JNuIvKbu70MqHX0OBf2vNTK/Z06HQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^2.1.0"
|
"tslib": "^2.1.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@angular/fire": {
|
"@angular/fire": {
|
||||||
@@ -24175,13 +24004,6 @@
|
|||||||
"integrity": "sha512-b4KfH9ABDkhi/A/F0twj9HbeBLbfZwKDOO2Y/BjuqWynt4yek+U+tH83VKYWZCmt/W2QwJ2CZgDztl0I4ds//g==",
|
"integrity": "sha512-b4KfH9ABDkhi/A/F0twj9HbeBLbfZwKDOO2Y/BjuqWynt4yek+U+tH83VKYWZCmt/W2QwJ2CZgDztl0I4ds//g==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^2.1.0"
|
"tslib": "^2.1.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@angular/language-service": {
|
"@angular/language-service": {
|
||||||
@@ -24204,13 +24026,6 @@
|
|||||||
"integrity": "sha512-Gly/QdvFBWLdXjrx2+4jp0Z4lqvGAkVndFa9jaFj3xIuPvbf1akNelTjRD42ww8juctTC1cek2mESXMqkFu8Hw==",
|
"integrity": "sha512-Gly/QdvFBWLdXjrx2+4jp0Z4lqvGAkVndFa9jaFj3xIuPvbf1akNelTjRD42ww8juctTC1cek2mESXMqkFu8Hw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^2.1.0"
|
"tslib": "^2.1.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@angular/platform-browser-dynamic": {
|
"@angular/platform-browser-dynamic": {
|
||||||
@@ -24219,13 +24034,6 @@
|
|||||||
"integrity": "sha512-CDVAeLD+4YPHIwHCBmARKsamNefb56GCytIV+r+hD/iOLbqIftrLpGYb6F0dkGIVsw4gxpo03UUDXBHfFBvLig==",
|
"integrity": "sha512-CDVAeLD+4YPHIwHCBmARKsamNefb56GCytIV+r+hD/iOLbqIftrLpGYb6F0dkGIVsw4gxpo03UUDXBHfFBvLig==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^2.1.0"
|
"tslib": "^2.1.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@angular/router": {
|
"@angular/router": {
|
||||||
@@ -24234,13 +24042,6 @@
|
|||||||
"integrity": "sha512-1T0WxnUlP7IsvhDCuQi0jCrni6GGtih96M/Hv7h4jl+UxLZO1VuVyar4In8yl0/FrgaA8TbZXSuzT2K+AjEKNw==",
|
"integrity": "sha512-1T0WxnUlP7IsvhDCuQi0jCrni6GGtih96M/Hv7h4jl+UxLZO1VuVyar4In8yl0/FrgaA8TbZXSuzT2K+AjEKNw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^2.1.0"
|
"tslib": "^2.1.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@angular/service-worker": {
|
"@angular/service-worker": {
|
||||||
@@ -24249,13 +24050,6 @@
|
|||||||
"integrity": "sha512-Slt3+iGI0UWHZJp0/6QZmEIP6PuSOthEsJB7Jy7PBuQpHL/wEyLclQM6RuGSZy7ruaMpa7A/6r/iDAJSInjHmQ==",
|
"integrity": "sha512-Slt3+iGI0UWHZJp0/6QZmEIP6PuSOthEsJB7Jy7PBuQpHL/wEyLclQM6RuGSZy7ruaMpa7A/6r/iDAJSInjHmQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^2.1.0"
|
"tslib": "^2.1.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@babel/code-frame": {
|
"@babel/code-frame": {
|
||||||
@@ -27400,6 +27194,12 @@
|
|||||||
"jszip": "*"
|
"jszip": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"@types/lodash": {
|
||||||
|
"version": "4.14.171",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.171.tgz",
|
||||||
|
"integrity": "sha512-7eQ2xYLLI/LsicL2nejW9Wyko3lcpN6O/z0ZLHrEQsg280zIdCv1t/0m6UtBjUHokCGBQ3gYTbHzDkZ1xOBwwg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"@types/long": {
|
"@types/long": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz",
|
||||||
@@ -28538,16 +28338,6 @@
|
|||||||
"readable-stream": "^3.4.0"
|
"readable-stream": "^3.4.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"buffer": {
|
|
||||||
"version": "5.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz",
|
|
||||||
"integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==",
|
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
|
||||||
"base64-js": "^1.0.2",
|
|
||||||
"ieee754": "^1.1.4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"readable-stream": {
|
"readable-stream": {
|
||||||
"version": "3.6.0",
|
"version": "3.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
|
||||||
@@ -28953,17 +28743,6 @@
|
|||||||
"is-glob": "~4.0.1",
|
"is-glob": "~4.0.1",
|
||||||
"normalize-path": "~3.0.0",
|
"normalize-path": "~3.0.0",
|
||||||
"readdirp": "~3.3.0"
|
"readdirp": "~3.3.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"glob-parent": {
|
|
||||||
"version": "5.1.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
|
|
||||||
"integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
|
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
|
||||||
"is-glob": "^4.0.1"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"chownr": {
|
"chownr": {
|
||||||
@@ -29550,18 +29329,6 @@
|
|||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"buffer": "^5.1.0"
|
"buffer": "^5.1.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"buffer": {
|
|
||||||
"version": "5.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz",
|
|
||||||
"integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==",
|
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
|
||||||
"base64-js": "^1.0.2",
|
|
||||||
"ieee754": "^1.1.4"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"crc32-stream": {
|
"crc32-stream": {
|
||||||
@@ -31127,12 +30894,6 @@
|
|||||||
"integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
|
"integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"lodash": {
|
|
||||||
"version": "4.17.21",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
|
|
||||||
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lru-cache": {
|
"lru-cache": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
||||||
@@ -34758,10 +34519,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lodash": {
|
"lodash": {
|
||||||
"version": "4.17.15",
|
"version": "4.17.21",
|
||||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
|
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
|
||||||
"integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
|
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"lodash._isnative": {
|
"lodash._isnative": {
|
||||||
"version": "2.4.1",
|
"version": "2.4.1",
|
||||||
@@ -36703,12 +36463,6 @@
|
|||||||
"source-map": "^0.6.1"
|
"source-map": "^0.6.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"nanoid": {
|
|
||||||
"version": "3.1.23",
|
|
||||||
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz",
|
|
||||||
"integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"source-map": {
|
"source-map": {
|
||||||
"version": "0.6.1",
|
"version": "0.6.1",
|
||||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||||
@@ -42626,13 +42380,6 @@
|
|||||||
"integrity": "sha512-DDh2Ab+A/B+9mJyajPjHFPWfYU1H+pdun4wnnk0OcQTNjem1XQSZ2CDW+rfZEUDjv5M19SBqAkjZi0x5wuB5Qw==",
|
"integrity": "sha512-DDh2Ab+A/B+9mJyajPjHFPWfYU1H+pdun4wnnk0OcQTNjem1XQSZ2CDW+rfZEUDjv5M19SBqAkjZi0x5wuB5Qw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^2.0.0"
|
"tslib": "^2.0.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": {
|
|
||||||
"version": "2.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz",
|
|
||||||
"integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w=="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,6 +28,7 @@
|
|||||||
"@fortawesome/free-solid-svg-icons": "^5.13.0",
|
"@fortawesome/free-solid-svg-icons": "^5.13.0",
|
||||||
"docx": "^6.0.3",
|
"docx": "^6.0.3",
|
||||||
"firebase": "^8.7.0",
|
"firebase": "^8.7.0",
|
||||||
|
"lodash": "^4.17.21",
|
||||||
"ngx-mat-select-search": "^3.3.0",
|
"ngx-mat-select-search": "^3.3.0",
|
||||||
"ngx-perfect-scrollbar": "^10.1.1",
|
"ngx-perfect-scrollbar": "^10.1.1",
|
||||||
"ngx-swiper-wrapper": "^10.0.0",
|
"ngx-swiper-wrapper": "^10.0.0",
|
||||||
@@ -48,6 +49,7 @@
|
|||||||
"@angular/language-service": "~12.0.1",
|
"@angular/language-service": "~12.0.1",
|
||||||
"@types/jasmine": "~3.6.0",
|
"@types/jasmine": "~3.6.0",
|
||||||
"@types/jasminewd2": "~2.0.3",
|
"@types/jasminewd2": "~2.0.3",
|
||||||
|
"@types/lodash": "^4.14.171",
|
||||||
"@types/node": "^12.12.36",
|
"@types/node": "^12.12.36",
|
||||||
"@typescript-eslint/eslint-plugin": "4.23.0",
|
"@typescript-eslint/eslint-plugin": "4.23.0",
|
||||||
"@typescript-eslint/parser": "4.23.0",
|
"@typescript-eslint/parser": "4.23.0",
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ const routes: Routes = [
|
|||||||
canActivate: [AngularFireAuthGuard, RoleGuard],
|
canActivate: [AngularFireAuthGuard, RoleGuard],
|
||||||
data: {
|
data: {
|
||||||
authGuardPipe: () => redirectUnauthorizedTo(['user', 'login']),
|
authGuardPipe: () => redirectUnauthorizedTo(['user', 'login']),
|
||||||
requiredRoles: ['leader'],
|
requiredRoles: ['leader', 'member'],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ export class RemoteComponent {
|
|||||||
private textRenderingService: TextRenderingService,
|
private textRenderingService: TextRenderingService,
|
||||||
private globalSettingsService: GlobalSettingsService
|
private globalSettingsService: GlobalSettingsService
|
||||||
) {
|
) {
|
||||||
this.shows$ = showService.list$(true);
|
this.shows$ = showService.list$(true).pipe(map(_ => _.sort((a, b) => (b.date < a.date ? -1 : b.date > a.date ? 1 : 0))));
|
||||||
songService.list$().subscribe(_ => (this.songs = _));
|
songService.list$().subscribe(_ => (this.songs = _));
|
||||||
|
|
||||||
globalSettingsService.get$
|
globalSettingsService.get$
|
||||||
|
|||||||
@@ -1,19 +1,21 @@
|
|||||||
<div>
|
<div>
|
||||||
<app-list-header></app-list-header>
|
<app-list-header *appRole="['leader']"></app-list-header>
|
||||||
|
|
||||||
<ng-container *ngIf="shows$ | async as shows">
|
<ng-container *appRole="['leader']">
|
||||||
<app-card
|
<ng-container *ngIf="shows$ | async as shows">
|
||||||
*ngIf="getPrivateSongs(shows).length > 0"
|
<app-card
|
||||||
[@fade]
|
*ngIf="getPrivateSongs(shows).length > 0"
|
||||||
[padding]="false"
|
[@fade]
|
||||||
heading="meine Veranstaltungen"
|
[padding]="false"
|
||||||
>
|
heading="meine Veranstaltungen"
|
||||||
<app-list-item
|
>
|
||||||
*ngFor="let show of getPrivateSongs(shows)"
|
<app-list-item
|
||||||
[routerLink]="show.id"
|
*ngFor="let show of getPrivateSongs(shows) | sortBy: 'desc':'date'"
|
||||||
[show]="show"
|
[routerLink]="show.id"
|
||||||
></app-list-item>
|
[show]="show"
|
||||||
</app-card>
|
></app-list-item>
|
||||||
|
</app-card>
|
||||||
|
</ng-container>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
|
|
||||||
<ng-container *ngIf="shows$ | async as shows">
|
<ng-container *ngIf="shows$ | async as shows">
|
||||||
@@ -24,7 +26,7 @@
|
|||||||
heading="veröffentlichte Veranstaltungen"
|
heading="veröffentlichte Veranstaltungen"
|
||||||
>
|
>
|
||||||
<app-list-item
|
<app-list-item
|
||||||
*ngFor="let show of getPublicShows(shows)"
|
*ngFor="let show of getPublicShows(shows) | sortBy: 'desc':'date'"
|
||||||
[routerLink]="show.id"
|
[routerLink]="show.id"
|
||||||
[show]="show"
|
[show]="show"
|
||||||
></app-list-item>
|
></app-list-item>
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ export class ListComponent {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public getPublicShows(songs: Show[]): Show[] {
|
public getPublicShows(songs: Show[]): Show[] {
|
||||||
return songs.filter(_ => _.published).sort((a, b) => (b.date < a.date ? -1 : b.date > a.date ? 1 : 0));
|
return songs.filter(_ => _.published);
|
||||||
}
|
}
|
||||||
|
|
||||||
public getPrivateSongs(songs: Show[]): Show[] {
|
public getPrivateSongs(songs: Show[]): Show[] {
|
||||||
|
|||||||
@@ -32,42 +32,45 @@
|
|||||||
></app-add-song>
|
></app-add-song>
|
||||||
|
|
||||||
<app-button-row>
|
<app-button-row>
|
||||||
<ng-container *appOwner="show.owner">
|
<ng-container *appRole="['leader']">
|
||||||
<app-button
|
<ng-container *appOwner="show.owner">
|
||||||
(click)="onArchive(true)"
|
<app-button
|
||||||
*ngIf="!show.archived"
|
(click)="onArchive(true)"
|
||||||
[icon]="faBox"
|
*ngIf="!show.archived"
|
||||||
>
|
[icon]="faBox"
|
||||||
Archivieren
|
>
|
||||||
</app-button>
|
Archivieren
|
||||||
<app-button
|
</app-button>
|
||||||
(click)="onArchive(false)"
|
<app-button
|
||||||
*ngIf="show.archived"
|
(click)="onArchive(false)"
|
||||||
[icon]="faBoxOpen"
|
*ngIf="show.archived"
|
||||||
>
|
[icon]="faBoxOpen"
|
||||||
Wiederherstellen
|
>
|
||||||
</app-button>
|
Wiederherstellen
|
||||||
<app-button
|
</app-button>
|
||||||
(click)="onPublish(true)"
|
<app-button
|
||||||
*ngIf="!show.published"
|
(click)="onPublish(true)"
|
||||||
[icon]="faPublish"
|
*ngIf="!show.published"
|
||||||
>
|
[icon]="faPublish"
|
||||||
Veröffentlichen
|
>
|
||||||
</app-button>
|
Veröffentlichen
|
||||||
<app-button
|
</app-button>
|
||||||
(click)="onPublish(false)"
|
<app-button
|
||||||
*ngIf="show.published"
|
(click)="onPublish(false)"
|
||||||
[icon]="faUnpublish"
|
*ngIf="show.published"
|
||||||
>
|
[icon]="faUnpublish"
|
||||||
Veröffentlichung zurückziehen
|
>
|
||||||
</app-button>
|
Veröffentlichung zurückziehen
|
||||||
|
</app-button>
|
||||||
|
</ng-container>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
|
|
||||||
<app-button [icon]="faDownload" [matMenuTriggerFor]="menu"
|
<app-button [icon]="faDownload" [matMenuTriggerFor]="menu"
|
||||||
>Herunterladen
|
>Herunterladen
|
||||||
</app-button>
|
</app-button>
|
||||||
<mat-menu #menu="matMenu">
|
<mat-menu #menu="matMenu">
|
||||||
<app-button (click)="onDownload()" [icon]="faUser"
|
<app-button (click)="onDownload()" [icon]="faUser"
|
||||||
>Ablauf für Lobpreisleiter
|
>Ablauf für Lobpreisgruppe
|
||||||
</app-button>
|
</app-button>
|
||||||
<app-button (click)="onDownloadHandout()" [icon]="faUsers"
|
<app-button (click)="onDownloadHandout()" [icon]="faUsers"
|
||||||
>Handout mit Copyright Infos
|
>Handout mit Copyright Infos
|
||||||
|
|||||||
@@ -29,6 +29,8 @@ import {OwnerModule} from '../../services/user/owner.module';
|
|||||||
import {UserNameModule} from '../../services/user/user-name/user-name.module';
|
import {UserNameModule} from '../../services/user/user-name/user-name.module';
|
||||||
import {MatMenuModule} from '@angular/material/menu';
|
import {MatMenuModule} from '@angular/material/menu';
|
||||||
import {DragDropModule} from '@angular/cdk/drag-drop';
|
import {DragDropModule} from '@angular/cdk/drag-drop';
|
||||||
|
import {RoleModule} from '../../services/user/role.module';
|
||||||
|
import {SortByModule} from '../../widget-modules/pipes/sort-by/sort-by.module';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
declarations: [NewComponent, ListComponent, ListItemComponent, ShowComponent, SongComponent],
|
declarations: [NewComponent, ListComponent, ListItemComponent, ShowComponent, SongComponent],
|
||||||
@@ -58,6 +60,8 @@ import {DragDropModule} from '@angular/cdk/drag-drop';
|
|||||||
UserNameModule,
|
UserNameModule,
|
||||||
MatMenuModule,
|
MatMenuModule,
|
||||||
DragDropModule,
|
DragDropModule,
|
||||||
|
RoleModule,
|
||||||
|
SortByModule,
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
export class ShowsModule {}
|
export class ShowsModule {}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import {User} from '../../../services/user/user';
|
|||||||
import {ChordMode} from '../../../widget-modules/components/song-text/song-text.component';
|
import {ChordMode} from '../../../widget-modules/components/song-text/song-text.component';
|
||||||
import {faSignOutAlt} from '@fortawesome/free-solid-svg-icons/faSignOutAlt';
|
import {faSignOutAlt} from '@fortawesome/free-solid-svg-icons/faSignOutAlt';
|
||||||
import {RolePipe} from './role.pipe';
|
import {RolePipe} from './role.pipe';
|
||||||
|
import {roles} from '../../../services/user/roles';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-info',
|
selector: 'app-info',
|
||||||
@@ -25,8 +26,8 @@ export class InfoComponent implements OnInit {
|
|||||||
await this.userService.update$(uid, {chordMode: value});
|
await this.userService.update$(uid, {chordMode: value});
|
||||||
}
|
}
|
||||||
|
|
||||||
public getUserRoles = (roles: string): string[] => roles?.split(';') ?? [];
|
public getUserRoles = (roles: string): roles[] => (roles?.split(';') ?? []) as roles[];
|
||||||
public transdormUserRoles = (roles: string): string =>
|
public transdormUserRoles = (roles: roles): string =>
|
||||||
this.getUserRoles(roles)
|
this.getUserRoles(roles)
|
||||||
.map(_ => new RolePipe().transform(_))
|
.map(_ => new RolePipe().transform(_))
|
||||||
.join(', ');
|
.join(', ');
|
||||||
|
|||||||
@@ -1,10 +1,11 @@
|
|||||||
import {Pipe, PipeTransform} from '@angular/core';
|
import {Pipe, PipeTransform} from '@angular/core';
|
||||||
|
import {roles} from '../../../services/user/roles';
|
||||||
|
|
||||||
@Pipe({
|
@Pipe({
|
||||||
name: 'role',
|
name: 'role',
|
||||||
})
|
})
|
||||||
export class RolePipe implements PipeTransform {
|
export class RolePipe implements PipeTransform {
|
||||||
public transform(role: string): string {
|
public transform(role: roles): string {
|
||||||
switch (role) {
|
switch (role) {
|
||||||
case 'contributor':
|
case 'contributor':
|
||||||
return 'Mitarbeiter';
|
return 'Mitarbeiter';
|
||||||
@@ -16,6 +17,8 @@ export class RolePipe implements PipeTransform {
|
|||||||
return 'Benutzer';
|
return 'Benutzer';
|
||||||
case 'leader':
|
case 'leader':
|
||||||
return 'Lobpreisleiter';
|
return 'Lobpreisleiter';
|
||||||
|
case 'member':
|
||||||
|
return 'Lobpreisgruppe';
|
||||||
case 'presenter':
|
case 'presenter':
|
||||||
return 'Präsentator';
|
return 'Präsentator';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
<app-card heading="registrierte Benutzer">
|
<app-card heading="registrierte Benutzer">
|
||||||
<app-user *ngFor="let user of users$ | async" [user]="user"></app-user>
|
<app-user *ngFor="let user of users$ | async | sortBy: 'asc':'name'" [user]="user"></app-user>
|
||||||
</app-card>
|
</app-card>
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import {NewComponent} from './new/new.component';
|
|||||||
import {ButtonModule} from '../../widget-modules/components/button/button.module';
|
import {ButtonModule} from '../../widget-modules/components/button/button.module';
|
||||||
import {LogoModule} from '../../widget-modules/components/logo/logo.module';
|
import {LogoModule} from '../../widget-modules/components/logo/logo.module';
|
||||||
import {FontAwesomeModule} from '@fortawesome/angular-fontawesome';
|
import {FontAwesomeModule} from '@fortawesome/angular-fontawesome';
|
||||||
|
import {SortByModule} from '../../widget-modules/pipes/sort-by/sort-by.module';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
declarations: [LoginComponent, AuthMessagePipe, InfoComponent, LogoutComponent, RolePipe, PasswordComponent, PasswordSendComponent, UsersComponent, UserComponent, NewComponent],
|
declarations: [LoginComponent, AuthMessagePipe, InfoComponent, LogoutComponent, RolePipe, PasswordComponent, PasswordSendComponent, UsersComponent, UserComponent, NewComponent],
|
||||||
@@ -40,6 +41,7 @@ import {FontAwesomeModule} from '@fortawesome/angular-fontawesome';
|
|||||||
ButtonModule,
|
ButtonModule,
|
||||||
LogoModule,
|
LogoModule,
|
||||||
FontAwesomeModule,
|
FontAwesomeModule,
|
||||||
|
SortByModule,
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
export class UserModule {}
|
export class UserModule {}
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
export type roles = 'none' | 'admin' | 'user' | 'leader' | 'presenter' | 'contributor';
|
export type roles = 'none' | 'admin' | 'user' | 'leader' | 'presenter' | 'contributor' | 'member';
|
||||||
export const ROLE_TYPES: roles[] = ['admin', 'user', 'leader', 'presenter', 'contributor'];
|
export const ROLE_TYPES: roles[] = ['admin', 'user', 'member', 'leader', 'presenter', 'contributor'];
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
text="Lieder"
|
text="Lieder"
|
||||||
></app-link>
|
></app-link>
|
||||||
<app-link
|
<app-link
|
||||||
*appRole="['leader']"
|
*appRole="['leader', 'member']"
|
||||||
[icon]="faShows"
|
[icon]="faShows"
|
||||||
link="/shows"
|
link="/shows"
|
||||||
text="Veranstaltungen"
|
text="Veranstaltungen"
|
||||||
|
|||||||
10
src/app/widget-modules/pipes/sort-by/sort-by.module.ts
Normal file
10
src/app/widget-modules/pipes/sort-by/sort-by.module.ts
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
import {NgModule} from '@angular/core';
|
||||||
|
import {CommonModule} from '@angular/common';
|
||||||
|
import {SortByPipe} from './sort-by.pipe';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
declarations: [SortByPipe],
|
||||||
|
exports: [SortByPipe],
|
||||||
|
imports: [CommonModule],
|
||||||
|
})
|
||||||
|
export class SortByModule {}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
import {SortByPipe} from './sort-by.pipe';
|
||||||
|
|
||||||
|
describe('SortByPipe', () => {
|
||||||
|
it('create an instance', () => {
|
||||||
|
const pipe = new SortByPipe();
|
||||||
|
expect(pipe).toBeTruthy();
|
||||||
|
});
|
||||||
|
});
|
||||||
23
src/app/widget-modules/pipes/sort-by/sort-by.pipe.ts
Normal file
23
src/app/widget-modules/pipes/sort-by/sort-by.pipe.ts
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
import {Pipe, PipeTransform} from '@angular/core';
|
||||||
|
import {orderBy} from 'lodash';
|
||||||
|
|
||||||
|
@Pipe({name: 'sortBy'})
|
||||||
|
export class SortByPipe implements PipeTransform {
|
||||||
|
public transform(value: unknown[] | null, order: 'asc' | 'desc' = 'asc', column = ''): unknown[] | null {
|
||||||
|
if (!value || !order) {
|
||||||
|
return value;
|
||||||
|
} // no array
|
||||||
|
if (!column || column === '') {
|
||||||
|
if (order === 'asc') {
|
||||||
|
return value.sort();
|
||||||
|
} else {
|
||||||
|
return value.sort().reverse();
|
||||||
|
}
|
||||||
|
} // sort 1d array
|
||||||
|
if (value.length <= 1) {
|
||||||
|
return value;
|
||||||
|
} // array with only one item
|
||||||
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
||||||
|
return orderBy(value, [column], [order]) as unknown[];
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user