diff --git a/angular.json b/angular.json
index d791609..a96c275 100644
--- a/angular.json
+++ b/angular.json
@@ -59,8 +59,8 @@
"production": {
"budgets": [{
"type": "initial",
- "maximumWarning": "3mb",
- "maximumError": "5mb"
+ "maximumWarning": "10mb",
+ "maximumError": "15mb"
},
{
"type": "anyComponentStyle",
diff --git a/package-lock.json b/package-lock.json
index e67926b..9cec0b2 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -20,6 +20,7 @@
"@angular/platform-browser": "13.0.2",
"@angular/platform-browser-dynamic": "13.0.2",
"@angular/router": "13.0.2",
+ "@costlydeveloper/ngx-awesome-popup": "^3.1.3",
"@fullcalendar/angular": "4.4.5-beta",
"@fullcalendar/core": "4.4.2",
"@fullcalendar/daygrid": "4.4.2",
@@ -33,16 +34,19 @@
"crypto-js": "3.3.0",
"dayjs": "^1.10.7",
"highlight.js": "11.2.0",
+ "libphonenumber-js": "^1.9.49",
"lodash-es": "4.17.21",
"moment": "2.29.1",
"ng-apexcharts": "1.5.12",
"ngx-markdown": "^12.1.0",
+ "ngx-mat-intl-tel-input": "^4.1.0",
"ngx-quill": "14.3.0",
"node.js": "^0.0.1-security",
"perfect-scrollbar": "1.5.2",
"quill": "1.3.7",
"rrule": "2.6.8",
"rxjs": "6.6.7",
+ "save-dev": "^0.0.1-security",
"source": "^0.0.3",
"source-map": "^0.7.3",
"sourcemap-codec": "^1.4.8",
@@ -58,7 +62,7 @@
"@angular-eslint/eslint-plugin-template": "12.3.1",
"@angular-eslint/schematics": "^13.0.1",
"@angular-eslint/template-parser": "12.3.1",
- "@angular/cli": "^13.2.2",
+ "@angular/cli": "^13.2.3",
"@angular/compiler-cli": "13.0.2",
"@tailwindcss/aspect-ratio": "0.2.1",
"@tailwindcss/line-clamp": "0.2.1",
@@ -79,7 +83,7 @@
"eslint-plugin-jsdoc": "36.0.8",
"eslint-plugin-prefer-arrow": "1.2.3",
"jasmine-core": "3.8.0",
- "karma": "6.3.4",
+ "karma": "^6.3.16",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.0.3",
"karma-jasmine": "4.0.1",
@@ -709,12 +713,12 @@
}
},
"node_modules/@angular-devkit/schematics": {
- "version": "13.2.2",
- "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-13.2.2.tgz",
- "integrity": "sha512-kXPLTkSzRCeBX+SYUkC6MIrWCkH90Y8hVegR9R5n2YqhCJyE+dZlcx4d/8d3VHtZlzAs0LL8BU+liC3wMIagjA==",
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-13.2.3.tgz",
+ "integrity": "sha512-+dyC4iKV0huvpjiuz4uyjLNK3FsCIp/Ghv5lXvhG6yok/dCAubsJItJOxi6G16aVCzG/E9zbsDfm9fNMyVOkgQ==",
"dev": true,
"dependencies": {
- "@angular-devkit/core": "13.2.2",
+ "@angular-devkit/core": "13.2.3",
"jsonc-parser": "3.0.0",
"magic-string": "0.25.7",
"ora": "5.4.1",
@@ -726,6 +730,49 @@
"yarn": ">= 1.13.0"
}
},
+ "node_modules/@angular-devkit/schematics/node_modules/@angular-devkit/core": {
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-13.2.3.tgz",
+ "integrity": "sha512-/47RA8qmWzeS60xSdaprIn1MiSv0Iw83t0M9/ENH7irFS5vMAq62NCcwiWXH59pZmvvLbF+7xy/RgYUZLr4nHQ==",
+ "dev": true,
+ "dependencies": {
+ "ajv": "8.9.0",
+ "ajv-formats": "2.1.1",
+ "fast-json-stable-stringify": "2.1.0",
+ "magic-string": "0.25.7",
+ "rxjs": "6.6.7",
+ "source-map": "0.7.3"
+ },
+ "engines": {
+ "node": "^12.20.0 || ^14.15.0 || >=16.10.0",
+ "npm": "^6.11.0 || ^7.5.6 || >=8.0.0",
+ "yarn": ">= 1.13.0"
+ },
+ "peerDependencies": {
+ "chokidar": "^3.5.2"
+ },
+ "peerDependenciesMeta": {
+ "chokidar": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@angular-devkit/schematics/node_modules/ajv": {
+ "version": "8.9.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz",
+ "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==",
+ "dev": true,
+ "dependencies": {
+ "fast-deep-equal": "^3.1.1",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2",
+ "uri-js": "^4.2.2"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
"node_modules/@angular-eslint/builder": {
"version": "12.7.0",
"resolved": "https://registry.npmjs.org/@angular-eslint/builder/-/builder-12.7.0.tgz",
@@ -1094,16 +1141,16 @@
}
},
"node_modules/@angular/cli": {
- "version": "13.2.2",
- "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-13.2.2.tgz",
- "integrity": "sha512-i9pBm5bVWnabwrsw1Ut84BqGu75+Nol6sReh8NTs7zUdCKNC00kqFBZg/1nGGw0IwL3Q+W7rJMgZ9q0qAtFTXg==",
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-13.2.3.tgz",
+ "integrity": "sha512-QsakxpdQuO67u4fQNuOASqabYUO9gJb/5CpUGpWbuBzru0/9CMEF1CtXoF4EoDiwa5sJMirz3SJMKhtzFlv1cQ==",
"dev": true,
"hasInstallScript": true,
"dependencies": {
- "@angular-devkit/architect": "0.1302.2",
- "@angular-devkit/core": "13.2.2",
- "@angular-devkit/schematics": "13.2.2",
- "@schematics/angular": "13.2.2",
+ "@angular-devkit/architect": "0.1302.3",
+ "@angular-devkit/core": "13.2.3",
+ "@angular-devkit/schematics": "13.2.3",
+ "@schematics/angular": "13.2.3",
"@yarnpkg/lockfile": "1.1.0",
"ansi-colors": "4.1.1",
"debug": "4.3.3",
@@ -1129,6 +1176,64 @@
"yarn": ">= 1.13.0"
}
},
+ "node_modules/@angular/cli/node_modules/@angular-devkit/architect": {
+ "version": "0.1302.3",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1302.3.tgz",
+ "integrity": "sha512-0m8jMKrFfIqsYt33zTUwSmyekyfuS67hna08RQ6USjzWQSE3z4S8ulCUARSjM6AzdMblX+whfy56nJUpT17NSA==",
+ "dev": true,
+ "dependencies": {
+ "@angular-devkit/core": "13.2.3",
+ "rxjs": "6.6.7"
+ },
+ "engines": {
+ "node": "^12.20.0 || ^14.15.0 || >=16.10.0",
+ "npm": "^6.11.0 || ^7.5.6 || >=8.0.0",
+ "yarn": ">= 1.13.0"
+ }
+ },
+ "node_modules/@angular/cli/node_modules/@angular-devkit/core": {
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-13.2.3.tgz",
+ "integrity": "sha512-/47RA8qmWzeS60xSdaprIn1MiSv0Iw83t0M9/ENH7irFS5vMAq62NCcwiWXH59pZmvvLbF+7xy/RgYUZLr4nHQ==",
+ "dev": true,
+ "dependencies": {
+ "ajv": "8.9.0",
+ "ajv-formats": "2.1.1",
+ "fast-json-stable-stringify": "2.1.0",
+ "magic-string": "0.25.7",
+ "rxjs": "6.6.7",
+ "source-map": "0.7.3"
+ },
+ "engines": {
+ "node": "^12.20.0 || ^14.15.0 || >=16.10.0",
+ "npm": "^6.11.0 || ^7.5.6 || >=8.0.0",
+ "yarn": ">= 1.13.0"
+ },
+ "peerDependencies": {
+ "chokidar": "^3.5.2"
+ },
+ "peerDependenciesMeta": {
+ "chokidar": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@angular/cli/node_modules/ajv": {
+ "version": "8.9.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz",
+ "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==",
+ "dev": true,
+ "dependencies": {
+ "fast-deep-equal": "^3.1.1",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2",
+ "uri-js": "^4.2.2"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
"node_modules/@angular/common": {
"version": "13.0.2",
"resolved": "https://registry.npmjs.org/@angular/common/-/common-13.0.2.tgz",
@@ -2980,6 +3085,19 @@
"node": ">=6.9.0"
}
},
+ "node_modules/@costlydeveloper/ngx-awesome-popup": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/@costlydeveloper/ngx-awesome-popup/-/ngx-awesome-popup-3.1.3.tgz",
+ "integrity": "sha512-bg5AzpXpnPTf2QbQTgucSk7U8NtvoD0M4tCMOIDFQvoKe+tuUD+tkBVKfX1/j020egd7o7hP5HnMxSEjjkqd4A==",
+ "dependencies": {
+ "tslib": "^2.3.0"
+ },
+ "peerDependencies": {
+ "@angular/common": ">8.0.0",
+ "@angular/core": ">8.0.0",
+ "rxjs": ">6.0.0"
+ }
+ },
"node_modules/@discoveryjs/json-ext": {
"version": "0.5.6",
"resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz",
@@ -3531,13 +3649,13 @@
}
},
"node_modules/@schematics/angular": {
- "version": "13.2.2",
- "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-13.2.2.tgz",
- "integrity": "sha512-LfTtu82I7K+BoSzSXV8gA5+ARhtOtOi/qY0uj2782/xzpe+zCbbftgc6MHiSx/a3KO7IStDwf7G6mjqas0v+4g==",
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-13.2.3.tgz",
+ "integrity": "sha512-jloooGC7eco9AKxlIMMqFRptJYzZ0jNRBStWOp2dCISg6rmOKqpxbsHLtYFQIT1PnlomSxtKDAgYGQMDi9zhXw==",
"dev": true,
"dependencies": {
- "@angular-devkit/core": "13.2.2",
- "@angular-devkit/schematics": "13.2.2",
+ "@angular-devkit/core": "13.2.3",
+ "@angular-devkit/schematics": "13.2.3",
"jsonc-parser": "3.0.0"
},
"engines": {
@@ -3546,6 +3664,58 @@
"yarn": ">= 1.13.0"
}
},
+ "node_modules/@schematics/angular/node_modules/@angular-devkit/core": {
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-13.2.3.tgz",
+ "integrity": "sha512-/47RA8qmWzeS60xSdaprIn1MiSv0Iw83t0M9/ENH7irFS5vMAq62NCcwiWXH59pZmvvLbF+7xy/RgYUZLr4nHQ==",
+ "dev": true,
+ "dependencies": {
+ "ajv": "8.9.0",
+ "ajv-formats": "2.1.1",
+ "fast-json-stable-stringify": "2.1.0",
+ "magic-string": "0.25.7",
+ "rxjs": "6.6.7",
+ "source-map": "0.7.3"
+ },
+ "engines": {
+ "node": "^12.20.0 || ^14.15.0 || >=16.10.0",
+ "npm": "^6.11.0 || ^7.5.6 || >=8.0.0",
+ "yarn": ">= 1.13.0"
+ },
+ "peerDependencies": {
+ "chokidar": "^3.5.2"
+ },
+ "peerDependenciesMeta": {
+ "chokidar": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@schematics/angular/node_modules/ajv": {
+ "version": "8.9.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz",
+ "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==",
+ "dev": true,
+ "dependencies": {
+ "fast-deep-equal": "^3.1.1",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2",
+ "uri-js": "^4.2.2"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
+ "node_modules/@socket.io/base64-arraybuffer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@socket.io/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz",
+ "integrity": "sha512-dOlCBKnDw4iShaIsH/bxujKTM18+2TOAsYz+KSc11Am38H4q5Xw8Bbz97ZYdrVNM+um3p7w86Bvvmcn9q+5+eQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.6.0"
+ }
+ },
"node_modules/@tailwindcss/aspect-ratio": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/aspect-ratio/-/aspect-ratio-0.2.1.tgz",
@@ -4889,15 +5059,6 @@
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
},
- "node_modules/base64-arraybuffer": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz",
- "integrity": "sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=",
- "dev": true,
- "engines": {
- "node": ">= 0.6.0"
- }
- },
"node_modules/base64-js": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
@@ -6500,33 +6661,36 @@
}
},
"node_modules/engine.io": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-4.1.2.tgz",
- "integrity": "sha512-t5z6zjXuVLhXDMiFJPYsPOWEER8B0tIsD3ETgw19S1yg9zryvUfY3Vhtk3Gf4sihw/bQGIqQ//gjvVlu+Ca0bQ==",
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.1.2.tgz",
+ "integrity": "sha512-v/7eGHxPvO2AWsksyx2PUsQvBafuvqs0jJJQ0FdmJG1b9qIvgSbqDRGwNhfk2XHaTTbTXiC4quRE8Q9nRjsrQQ==",
"dev": true,
"dependencies": {
+ "@types/cookie": "^0.4.1",
+ "@types/cors": "^2.8.12",
+ "@types/node": ">=10.0.0",
"accepts": "~1.3.4",
"base64id": "2.0.0",
"cookie": "~0.4.1",
"cors": "~2.8.5",
"debug": "~4.3.1",
- "engine.io-parser": "~4.0.0",
- "ws": "~7.4.2"
+ "engine.io-parser": "~5.0.0",
+ "ws": "~8.2.3"
},
"engines": {
"node": ">=10.0.0"
}
},
"node_modules/engine.io-parser": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-4.0.3.tgz",
- "integrity": "sha512-xEAAY0msNnESNPc00e19y5heTPX4y/TJ36gr8t1voOaNmTojP9b3oK3BbJLFufW2XFPQaaijpFewm2g2Um3uqA==",
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.3.tgz",
+ "integrity": "sha512-BtQxwF27XUNnSafQLvDi0dQ8s3i6VgzSoQMJacpIcGNrlUdfHSKbgm3jmjCVvQluGzqwujQMPAoMai3oYSTurg==",
"dev": true,
"dependencies": {
- "base64-arraybuffer": "0.1.4"
+ "@socket.io/base64-arraybuffer": "~1.0.2"
},
"engines": {
- "node": ">=8.0.0"
+ "node": ">=10.0.0"
}
},
"node_modules/enhanced-resolve": {
@@ -7954,9 +8118,9 @@
"dev": true
},
"node_modules/follow-redirects": {
- "version": "1.14.7",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.7.tgz",
- "integrity": "sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ==",
+ "version": "1.14.8",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz",
+ "integrity": "sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA==",
"dev": true,
"funding": [
{
@@ -9464,15 +9628,15 @@
]
},
"node_modules/karma": {
- "version": "6.3.4",
- "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.4.tgz",
- "integrity": "sha512-hbhRogUYIulfkBTZT7xoPrCYhRBnBoqbbL4fszWD0ReFGUxU+LYBr3dwKdAluaDQ/ynT9/7C+Lf7pPNW4gSx4Q==",
+ "version": "6.3.16",
+ "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.16.tgz",
+ "integrity": "sha512-nEU50jLvDe5yvXqkEJRf8IuvddUkOY2x5Xc4WXHz6dxINgGDrgD2uqQWeVrJs4hbfNaotn+HQ1LZJ4yOXrL7xQ==",
"dev": true,
"dependencies": {
"body-parser": "^1.19.0",
"braces": "^3.0.2",
"chokidar": "^3.5.1",
- "colors": "^1.4.0",
+ "colors": "1.4.0",
"connect": "^3.7.0",
"di": "^0.0.1",
"dom-serialize": "^2.2.1",
@@ -9481,16 +9645,17 @@
"http-proxy": "^1.18.1",
"isbinaryfile": "^4.0.8",
"lodash": "^4.17.21",
- "log4js": "^6.3.0",
+ "log4js": "^6.4.1",
"mime": "^2.5.2",
"minimatch": "^3.0.4",
+ "mkdirp": "^0.5.5",
"qjobs": "^1.2.0",
"range-parser": "^1.2.1",
"rimraf": "^3.0.2",
- "socket.io": "^3.1.0",
+ "socket.io": "^4.2.0",
"source-map": "^0.6.1",
"tmp": "^0.2.1",
- "ua-parser-js": "^0.7.28",
+ "ua-parser-js": "^0.7.30",
"yargs": "^16.1.1"
},
"bin": {
@@ -9597,6 +9762,18 @@
"source-map-support": "^0.5.5"
}
},
+ "node_modules/karma/node_modules/mkdirp": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "dev": true,
+ "dependencies": {
+ "minimist": "^1.2.5"
+ },
+ "bin": {
+ "mkdirp": "bin/cmd.js"
+ }
+ },
"node_modules/karma/node_modules/source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@@ -9782,6 +9959,11 @@
"node": ">= 0.8.0"
}
},
+ "node_modules/libphonenumber-js": {
+ "version": "1.9.49",
+ "resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.9.49.tgz",
+ "integrity": "sha512-/wEOIONcVboFky+lWlCaF7glm1FhBz11M5PHeCApA+xDdVfmhKjHktHS8KjyGxouV5CSXIr4f3GvLSpJa4qMSg=="
+ },
"node_modules/license-webpack-plugin": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.1.tgz",
@@ -10581,6 +10763,22 @@
"zone.js": "^0.10.2 || ^0.11.4"
}
},
+ "node_modules/ngx-mat-intl-tel-input": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ngx-mat-intl-tel-input/-/ngx-mat-intl-tel-input-4.1.0.tgz",
+ "integrity": "sha512-9pOEd9YaFkC/rvE32W2okl9GUB6m+6sk5qCA9yv9keXRa7GDkxwX9gUfpkm48n6V6RLHgvh28RJVD/5ek6QGrw==",
+ "dependencies": {
+ "tslib": "^2.3.1"
+ },
+ "peerDependencies": {
+ "@angular/common": "~13.0.0",
+ "@angular/core": "~13.0.0",
+ "@angular/forms": "~13.0.0",
+ "@angular/platform-browser": "~13.0.0",
+ "@angular/platform-browser-dynamic": "~13.0.0",
+ "libphonenumber-js": "^1.9.41"
+ }
+ },
"node_modules/ngx-quill": {
"version": "14.3.0",
"resolved": "https://registry.npmjs.org/ngx-quill/-/ngx-quill-14.3.0.tgz",
@@ -12992,6 +13190,11 @@
}
}
},
+ "node_modules/save-dev": {
+ "version": "0.0.1-security",
+ "resolved": "https://registry.npmjs.org/save-dev/-/save-dev-0.0.1-security.tgz",
+ "integrity": "sha512-k6knZTDNK8PKKbIqnvxiOveJinuw2LcQjqDoaorZWP9M5AR2EPsnpDeSbeoZZ0pHr5ze1uoaKdK8NBGQrJ34Uw=="
+ },
"node_modules/sax": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
@@ -13360,29 +13563,26 @@
}
},
"node_modules/socket.io": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-3.1.2.tgz",
- "integrity": "sha512-JubKZnTQ4Z8G4IZWtaAZSiRP3I/inpy8c/Bsx2jrwGrTbKeVU5xd6qkKMHpChYeM3dWZSO0QACiGK+obhBNwYw==",
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.4.1.tgz",
+ "integrity": "sha512-s04vrBswdQBUmuWJuuNTmXUVJhP0cVky8bBDhdkf8y0Ptsu7fKU2LuLbts9g+pdmAdyMMn8F/9Mf1/wbtUN0fg==",
"dev": true,
"dependencies": {
- "@types/cookie": "^0.4.0",
- "@types/cors": "^2.8.8",
- "@types/node": ">=10.0.0",
"accepts": "~1.3.4",
"base64id": "~2.0.0",
- "debug": "~4.3.1",
- "engine.io": "~4.1.0",
- "socket.io-adapter": "~2.1.0",
- "socket.io-parser": "~4.0.3"
+ "debug": "~4.3.2",
+ "engine.io": "~6.1.0",
+ "socket.io-adapter": "~2.3.3",
+ "socket.io-parser": "~4.0.4"
},
"engines": {
"node": ">=10.0.0"
}
},
"node_modules/socket.io-adapter": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.1.0.tgz",
- "integrity": "sha512-+vDov/aTsLjViYTwS9fPy5pEtTkrbEKsw2M+oVSoFGw6OD1IpvlV1VPhUzNbofCQ8oyMbdYJqDtGdmHQK6TdPg==",
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz",
+ "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==",
"dev": true
},
"node_modules/socket.io-parser": {
@@ -15169,12 +15369,12 @@
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
},
"node_modules/ws": {
- "version": "7.4.6",
- "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz",
- "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==",
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
+ "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
"dev": true,
"engines": {
- "node": ">=8.3.0"
+ "node": ">=10.0.0"
},
"peerDependencies": {
"bufferutil": "^4.0.1",
@@ -15657,16 +15857,44 @@
}
},
"@angular-devkit/schematics": {
- "version": "13.2.2",
- "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-13.2.2.tgz",
- "integrity": "sha512-kXPLTkSzRCeBX+SYUkC6MIrWCkH90Y8hVegR9R5n2YqhCJyE+dZlcx4d/8d3VHtZlzAs0LL8BU+liC3wMIagjA==",
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-13.2.3.tgz",
+ "integrity": "sha512-+dyC4iKV0huvpjiuz4uyjLNK3FsCIp/Ghv5lXvhG6yok/dCAubsJItJOxi6G16aVCzG/E9zbsDfm9fNMyVOkgQ==",
"dev": true,
"requires": {
- "@angular-devkit/core": "13.2.2",
+ "@angular-devkit/core": "13.2.3",
"jsonc-parser": "3.0.0",
"magic-string": "0.25.7",
"ora": "5.4.1",
"rxjs": "6.6.7"
+ },
+ "dependencies": {
+ "@angular-devkit/core": {
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-13.2.3.tgz",
+ "integrity": "sha512-/47RA8qmWzeS60xSdaprIn1MiSv0Iw83t0M9/ENH7irFS5vMAq62NCcwiWXH59pZmvvLbF+7xy/RgYUZLr4nHQ==",
+ "dev": true,
+ "requires": {
+ "ajv": "8.9.0",
+ "ajv-formats": "2.1.1",
+ "fast-json-stable-stringify": "2.1.0",
+ "magic-string": "0.25.7",
+ "rxjs": "6.6.7",
+ "source-map": "0.7.3"
+ }
+ },
+ "ajv": {
+ "version": "8.9.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz",
+ "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==",
+ "dev": true,
+ "requires": {
+ "fast-deep-equal": "^3.1.1",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2",
+ "uri-js": "^4.2.2"
+ }
+ }
}
},
"@angular-eslint/builder": {
@@ -15902,15 +16130,15 @@
}
},
"@angular/cli": {
- "version": "13.2.2",
- "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-13.2.2.tgz",
- "integrity": "sha512-i9pBm5bVWnabwrsw1Ut84BqGu75+Nol6sReh8NTs7zUdCKNC00kqFBZg/1nGGw0IwL3Q+W7rJMgZ9q0qAtFTXg==",
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-13.2.3.tgz",
+ "integrity": "sha512-QsakxpdQuO67u4fQNuOASqabYUO9gJb/5CpUGpWbuBzru0/9CMEF1CtXoF4EoDiwa5sJMirz3SJMKhtzFlv1cQ==",
"dev": true,
"requires": {
- "@angular-devkit/architect": "0.1302.2",
- "@angular-devkit/core": "13.2.2",
- "@angular-devkit/schematics": "13.2.2",
- "@schematics/angular": "13.2.2",
+ "@angular-devkit/architect": "0.1302.3",
+ "@angular-devkit/core": "13.2.3",
+ "@angular-devkit/schematics": "13.2.3",
+ "@schematics/angular": "13.2.3",
"@yarnpkg/lockfile": "1.1.0",
"ansi-colors": "4.1.1",
"debug": "4.3.3",
@@ -15926,6 +16154,44 @@
"semver": "7.3.5",
"symbol-observable": "4.0.0",
"uuid": "8.3.2"
+ },
+ "dependencies": {
+ "@angular-devkit/architect": {
+ "version": "0.1302.3",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1302.3.tgz",
+ "integrity": "sha512-0m8jMKrFfIqsYt33zTUwSmyekyfuS67hna08RQ6USjzWQSE3z4S8ulCUARSjM6AzdMblX+whfy56nJUpT17NSA==",
+ "dev": true,
+ "requires": {
+ "@angular-devkit/core": "13.2.3",
+ "rxjs": "6.6.7"
+ }
+ },
+ "@angular-devkit/core": {
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-13.2.3.tgz",
+ "integrity": "sha512-/47RA8qmWzeS60xSdaprIn1MiSv0Iw83t0M9/ENH7irFS5vMAq62NCcwiWXH59pZmvvLbF+7xy/RgYUZLr4nHQ==",
+ "dev": true,
+ "requires": {
+ "ajv": "8.9.0",
+ "ajv-formats": "2.1.1",
+ "fast-json-stable-stringify": "2.1.0",
+ "magic-string": "0.25.7",
+ "rxjs": "6.6.7",
+ "source-map": "0.7.3"
+ }
+ },
+ "ajv": {
+ "version": "8.9.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz",
+ "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==",
+ "dev": true,
+ "requires": {
+ "fast-deep-equal": "^3.1.1",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2",
+ "uri-js": "^4.2.2"
+ }
+ }
}
},
"@angular/common": {
@@ -17200,6 +17466,14 @@
"to-fast-properties": "^2.0.0"
}
},
+ "@costlydeveloper/ngx-awesome-popup": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/@costlydeveloper/ngx-awesome-popup/-/ngx-awesome-popup-3.1.3.tgz",
+ "integrity": "sha512-bg5AzpXpnPTf2QbQTgucSk7U8NtvoD0M4tCMOIDFQvoKe+tuUD+tkBVKfX1/j020egd7o7hP5HnMxSEjjkqd4A==",
+ "requires": {
+ "tslib": "^2.3.0"
+ }
+ },
"@discoveryjs/json-ext": {
"version": "0.5.6",
"resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz",
@@ -17629,16 +17903,50 @@
}
},
"@schematics/angular": {
- "version": "13.2.2",
- "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-13.2.2.tgz",
- "integrity": "sha512-LfTtu82I7K+BoSzSXV8gA5+ARhtOtOi/qY0uj2782/xzpe+zCbbftgc6MHiSx/a3KO7IStDwf7G6mjqas0v+4g==",
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-13.2.3.tgz",
+ "integrity": "sha512-jloooGC7eco9AKxlIMMqFRptJYzZ0jNRBStWOp2dCISg6rmOKqpxbsHLtYFQIT1PnlomSxtKDAgYGQMDi9zhXw==",
"dev": true,
"requires": {
- "@angular-devkit/core": "13.2.2",
- "@angular-devkit/schematics": "13.2.2",
+ "@angular-devkit/core": "13.2.3",
+ "@angular-devkit/schematics": "13.2.3",
"jsonc-parser": "3.0.0"
+ },
+ "dependencies": {
+ "@angular-devkit/core": {
+ "version": "13.2.3",
+ "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-13.2.3.tgz",
+ "integrity": "sha512-/47RA8qmWzeS60xSdaprIn1MiSv0Iw83t0M9/ENH7irFS5vMAq62NCcwiWXH59pZmvvLbF+7xy/RgYUZLr4nHQ==",
+ "dev": true,
+ "requires": {
+ "ajv": "8.9.0",
+ "ajv-formats": "2.1.1",
+ "fast-json-stable-stringify": "2.1.0",
+ "magic-string": "0.25.7",
+ "rxjs": "6.6.7",
+ "source-map": "0.7.3"
+ }
+ },
+ "ajv": {
+ "version": "8.9.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz",
+ "integrity": "sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ==",
+ "dev": true,
+ "requires": {
+ "fast-deep-equal": "^3.1.1",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2",
+ "uri-js": "^4.2.2"
+ }
+ }
}
},
+ "@socket.io/base64-arraybuffer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@socket.io/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz",
+ "integrity": "sha512-dOlCBKnDw4iShaIsH/bxujKTM18+2TOAsYz+KSc11Am38H4q5Xw8Bbz97ZYdrVNM+um3p7w86Bvvmcn9q+5+eQ==",
+ "dev": true
+ },
"@tailwindcss/aspect-ratio": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/aspect-ratio/-/aspect-ratio-0.2.1.tgz",
@@ -18689,12 +18997,6 @@
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
},
- "base64-arraybuffer": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz",
- "integrity": "sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=",
- "dev": true
- },
"base64-js": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
@@ -19925,27 +20227,30 @@
}
},
"engine.io": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-4.1.2.tgz",
- "integrity": "sha512-t5z6zjXuVLhXDMiFJPYsPOWEER8B0tIsD3ETgw19S1yg9zryvUfY3Vhtk3Gf4sihw/bQGIqQ//gjvVlu+Ca0bQ==",
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.1.2.tgz",
+ "integrity": "sha512-v/7eGHxPvO2AWsksyx2PUsQvBafuvqs0jJJQ0FdmJG1b9qIvgSbqDRGwNhfk2XHaTTbTXiC4quRE8Q9nRjsrQQ==",
"dev": true,
"requires": {
+ "@types/cookie": "^0.4.1",
+ "@types/cors": "^2.8.12",
+ "@types/node": ">=10.0.0",
"accepts": "~1.3.4",
"base64id": "2.0.0",
"cookie": "~0.4.1",
"cors": "~2.8.5",
"debug": "~4.3.1",
- "engine.io-parser": "~4.0.0",
- "ws": "~7.4.2"
+ "engine.io-parser": "~5.0.0",
+ "ws": "~8.2.3"
}
},
"engine.io-parser": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-4.0.3.tgz",
- "integrity": "sha512-xEAAY0msNnESNPc00e19y5heTPX4y/TJ36gr8t1voOaNmTojP9b3oK3BbJLFufW2XFPQaaijpFewm2g2Um3uqA==",
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.3.tgz",
+ "integrity": "sha512-BtQxwF27XUNnSafQLvDi0dQ8s3i6VgzSoQMJacpIcGNrlUdfHSKbgm3jmjCVvQluGzqwujQMPAoMai3oYSTurg==",
"dev": true,
"requires": {
- "base64-arraybuffer": "0.1.4"
+ "@socket.io/base64-arraybuffer": "~1.0.2"
}
},
"enhanced-resolve": {
@@ -21012,9 +21317,9 @@
"dev": true
},
"follow-redirects": {
- "version": "1.14.7",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.7.tgz",
- "integrity": "sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ==",
+ "version": "1.14.8",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz",
+ "integrity": "sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA==",
"dev": true
},
"forwarded": {
@@ -22112,15 +22417,15 @@
"dev": true
},
"karma": {
- "version": "6.3.4",
- "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.4.tgz",
- "integrity": "sha512-hbhRogUYIulfkBTZT7xoPrCYhRBnBoqbbL4fszWD0ReFGUxU+LYBr3dwKdAluaDQ/ynT9/7C+Lf7pPNW4gSx4Q==",
+ "version": "6.3.16",
+ "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.16.tgz",
+ "integrity": "sha512-nEU50jLvDe5yvXqkEJRf8IuvddUkOY2x5Xc4WXHz6dxINgGDrgD2uqQWeVrJs4hbfNaotn+HQ1LZJ4yOXrL7xQ==",
"dev": true,
"requires": {
"body-parser": "^1.19.0",
"braces": "^3.0.2",
"chokidar": "^3.5.1",
- "colors": "^1.4.0",
+ "colors": "1.4.0",
"connect": "^3.7.0",
"di": "^0.0.1",
"dom-serialize": "^2.2.1",
@@ -22129,19 +22434,29 @@
"http-proxy": "^1.18.1",
"isbinaryfile": "^4.0.8",
"lodash": "^4.17.21",
- "log4js": "^6.3.0",
+ "log4js": "^6.4.1",
"mime": "^2.5.2",
"minimatch": "^3.0.4",
+ "mkdirp": "^0.5.5",
"qjobs": "^1.2.0",
"range-parser": "^1.2.1",
"rimraf": "^3.0.2",
- "socket.io": "^3.1.0",
+ "socket.io": "^4.2.0",
"source-map": "^0.6.1",
"tmp": "^0.2.1",
- "ua-parser-js": "^0.7.28",
+ "ua-parser-js": "^0.7.30",
"yargs": "^16.1.1"
},
"dependencies": {
+ "mkdirp": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.5"
+ }
+ },
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@@ -22348,6 +22663,11 @@
"type-check": "~0.4.0"
}
},
+ "libphonenumber-js": {
+ "version": "1.9.49",
+ "resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.9.49.tgz",
+ "integrity": "sha512-/wEOIONcVboFky+lWlCaF7glm1FhBz11M5PHeCApA+xDdVfmhKjHktHS8KjyGxouV5CSXIr4f3GvLSpJa4qMSg=="
+ },
"license-webpack-plugin": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.1.tgz",
@@ -22950,6 +23270,14 @@
"tslib": "^2.1.0"
}
},
+ "ngx-mat-intl-tel-input": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ngx-mat-intl-tel-input/-/ngx-mat-intl-tel-input-4.1.0.tgz",
+ "integrity": "sha512-9pOEd9YaFkC/rvE32W2okl9GUB6m+6sk5qCA9yv9keXRa7GDkxwX9gUfpkm48n6V6RLHgvh28RJVD/5ek6QGrw==",
+ "requires": {
+ "tslib": "^2.3.1"
+ }
+ },
"ngx-quill": {
"version": "14.3.0",
"resolved": "https://registry.npmjs.org/ngx-quill/-/ngx-quill-14.3.0.tgz",
@@ -24748,6 +25076,11 @@
"neo-async": "^2.6.2"
}
},
+ "save-dev": {
+ "version": "0.0.1-security",
+ "resolved": "https://registry.npmjs.org/save-dev/-/save-dev-0.0.1-security.tgz",
+ "integrity": "sha512-k6knZTDNK8PKKbIqnvxiOveJinuw2LcQjqDoaorZWP9M5AR2EPsnpDeSbeoZZ0pHr5ze1uoaKdK8NBGQrJ34Uw=="
+ },
"sax": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
@@ -25056,26 +25389,23 @@
"dev": true
},
"socket.io": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-3.1.2.tgz",
- "integrity": "sha512-JubKZnTQ4Z8G4IZWtaAZSiRP3I/inpy8c/Bsx2jrwGrTbKeVU5xd6qkKMHpChYeM3dWZSO0QACiGK+obhBNwYw==",
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.4.1.tgz",
+ "integrity": "sha512-s04vrBswdQBUmuWJuuNTmXUVJhP0cVky8bBDhdkf8y0Ptsu7fKU2LuLbts9g+pdmAdyMMn8F/9Mf1/wbtUN0fg==",
"dev": true,
"requires": {
- "@types/cookie": "^0.4.0",
- "@types/cors": "^2.8.8",
- "@types/node": ">=10.0.0",
"accepts": "~1.3.4",
"base64id": "~2.0.0",
- "debug": "~4.3.1",
- "engine.io": "~4.1.0",
- "socket.io-adapter": "~2.1.0",
- "socket.io-parser": "~4.0.3"
+ "debug": "~4.3.2",
+ "engine.io": "~6.1.0",
+ "socket.io-adapter": "~2.3.3",
+ "socket.io-parser": "~4.0.4"
}
},
"socket.io-adapter": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.1.0.tgz",
- "integrity": "sha512-+vDov/aTsLjViYTwS9fPy5pEtTkrbEKsw2M+oVSoFGw6OD1IpvlV1VPhUzNbofCQ8oyMbdYJqDtGdmHQK6TdPg==",
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz",
+ "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==",
"dev": true
},
"socket.io-parser": {
@@ -26398,9 +26728,9 @@
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
},
"ws": {
- "version": "7.4.6",
- "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz",
- "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==",
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
+ "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
"dev": true,
"requires": {}
},
diff --git a/package.json b/package.json
index f1b6be0..79ddb6f 100644
--- a/package.json
+++ b/package.json
@@ -24,6 +24,7 @@
"@angular/platform-browser": "13.0.2",
"@angular/platform-browser-dynamic": "13.0.2",
"@angular/router": "13.0.2",
+ "@costlydeveloper/ngx-awesome-popup": "^3.1.3",
"@fullcalendar/angular": "4.4.5-beta",
"@fullcalendar/core": "4.4.2",
"@fullcalendar/daygrid": "4.4.2",
@@ -37,16 +38,19 @@
"crypto-js": "3.3.0",
"dayjs": "^1.10.7",
"highlight.js": "11.2.0",
+ "libphonenumber-js": "^1.9.49",
"lodash-es": "4.17.21",
"moment": "2.29.1",
"ng-apexcharts": "1.5.12",
"ngx-markdown": "^12.1.0",
+ "ngx-mat-intl-tel-input": "^4.1.0",
"ngx-quill": "14.3.0",
"node.js": "^0.0.1-security",
"perfect-scrollbar": "1.5.2",
"quill": "1.3.7",
"rrule": "2.6.8",
"rxjs": "6.6.7",
+ "save-dev": "^0.0.1-security",
"source": "^0.0.3",
"source-map": "^0.7.3",
"sourcemap-codec": "^1.4.8",
@@ -62,7 +66,7 @@
"@angular-eslint/eslint-plugin-template": "12.3.1",
"@angular-eslint/schematics": "^13.0.1",
"@angular-eslint/template-parser": "12.3.1",
- "@angular/cli": "^13.2.2",
+ "@angular/cli": "^13.2.3",
"@angular/compiler-cli": "13.0.2",
"@tailwindcss/aspect-ratio": "0.2.1",
"@tailwindcss/line-clamp": "0.2.1",
@@ -83,7 +87,7 @@
"eslint-plugin-jsdoc": "36.0.8",
"eslint-plugin-prefer-arrow": "1.2.3",
"jasmine-core": "3.8.0",
- "karma": "6.3.4",
+ "karma": "^6.3.16",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.0.3",
"karma-jasmine": "4.0.1",
diff --git a/src/@teso/components/navigation/vertical/components/collapsable/collapsable.component.html b/src/@teso/components/navigation/vertical/components/collapsable/collapsable.component.html
index b021c1a..67b585c 100644
--- a/src/@teso/components/navigation/vertical/components/collapsable/collapsable.component.html
+++ b/src/@teso/components/navigation/vertical/components/collapsable/collapsable.component.html
@@ -4,7 +4,7 @@
-
+
diff --git a/src/@teso/components/navigation/vertical/components/group/group.component.html b/src/@teso/components/navigation/vertical/components/group/group.component.html
index 28017cd..ea3f620 100644
--- a/src/@teso/components/navigation/vertical/components/group/group.component.html
+++ b/src/@teso/components/navigation/vertical/components/group/group.component.html
@@ -5,7 +5,7 @@
-
+
diff --git a/src/@teso/components/navigation/vertical/styles/appearances/compact.scss b/src/@teso/components/navigation/vertical/styles/appearances/compact.scss
index d07ab31..5df4c89 100644
--- a/src/@teso/components/navigation/vertical/styles/appearances/compact.scss
+++ b/src/@teso/components/navigation/vertical/styles/appearances/compact.scss
@@ -49,6 +49,7 @@ teso-vertical-navigation {
border-radius: 6px;
.teso-vertical-navigation-item-icon {
margin-right: 0;
+ color: #ffffff !important;
}
.teso-vertical-navigation-item-title-wrapper {
margin-top: 8px;
diff --git a/src/app/app.module.ts b/src/app/app.module.ts
index b8a6dae..0d632c5 100644
--- a/src/app/app.module.ts
+++ b/src/app/app.module.ts
@@ -12,15 +12,9 @@ import { LayoutModule } from 'app/layout/layout.module';
import { AppComponent } from 'app/app.component';
import { appRoutes } from 'app/app.routing';
import { LocationStrategy, PathLocationStrategy } from '@angular/common';
-import { AdvertsComponent } from './pages/admin/Adverts/adverts.component';
-import { CampaignsComponent } from './pages/admin/Campaigns/campaigns.component';
-import { CouponsComponent } from './pages/admin/Coupons/coupons.component';
-import { FollowersComponent } from './pages/admin/Followers/followers.component';
-import { DesiresComponent } from './pages/admin/Monthly_Desires/desires.component';
-import { ProductsComponent } from './pages/admin/Products/products.component';
-import { ProfileComponent } from './pages/admin/Profile/profile.component';
import { SettingsComponent } from './pages/admin/Settings/settings.component';
import { tesoModule } from '@teso/teso.module';
+import { NgxAwesomePopupModule,ConfirmBoxConfigModule} from '@costlydeveloper/ngx-awesome-popup';
const routerConfig: ExtraOptions = {
preloadingStrategy : PreloadAllModules,
@@ -36,7 +30,8 @@ const routerConfig: ExtraOptions = {
BrowserModule,
BrowserAnimationsModule,
RouterModule.forRoot(appRoutes, routerConfig),
-
+ NgxAwesomePopupModule.forRoot(), // Essential, mandatory main module.
+ ConfirmBoxConfigModule.forRoot(),
// teso, tesoConfig & tesoMockAPI
tesoModule,
tesoConfigModule.forRoot(appConfig),
diff --git a/src/app/app.routing.ts b/src/app/app.routing.ts
index 387cafc..6b5a770 100644
--- a/src/app/app.routing.ts
+++ b/src/app/app.routing.ts
@@ -63,8 +63,6 @@ export const appRoutes: Route[] = [
},
children : [
{path: 'dashboard', loadChildren: () => import('app/pages/admin/Dashboard/dashboard.module').then(m => m.DashboardModule)},
- {path: 'adverts', loadChildren: () => import('app/pages/admin/Adverts/adverts.module').then(m => m.AdvertsModule)},
- {path: 'campaigns', loadChildren: () => import('app/pages/admin/Campaigns/campaigns.module').then(m => m.CampaignsModule)},
{path: 'coupons', loadChildren: () => import('app/pages/admin/Coupons/coupons.module').then(m => m.CouponsModule)},
{path: 'products', loadChildren: () => import('app/pages/admin/Products/products.module').then(m => m.ProductsModule)},
{path: 'followers', loadChildren: () => import('app/pages/admin/Followers/followers.module').then(m => m.FollowersModule)},
diff --git a/src/app/layout/common/settings/settings.component.html b/src/app/layout/common/settings/settings.component.html
deleted file mode 100644
index 365f30d..0000000
--- a/src/app/layout/common/settings/settings.component.html
+++ /dev/null
@@ -1,363 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
THEME
-
-
-
-
-
- {{theme[0] | titlecase}}
-
-
-
-
-
-
-
-
-
SCHEME
-
-
-
-
-
-
LAYOUT
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/app/layout/common/settings/settings.component.ts b/src/app/layout/common/settings/settings.component.ts
deleted file mode 100644
index f682e85..0000000
--- a/src/app/layout/common/settings/settings.component.ts
+++ /dev/null
@@ -1,124 +0,0 @@
-import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
-import { Router } from '@angular/router';
-import { Subject } from 'rxjs';
-import { takeUntil } from 'rxjs/operators';
-import { tesoConfigService } from '@teso/services/config';
-import { tesoTailwindService } from '@teso/services/tailwind';
-import { AppConfig, Scheme, Theme } from 'app/core/config/app.config';
-import { Layout } from 'app/layout/layout.types';
-
-@Component({
- selector : 'settings',
- templateUrl : './settings.component.html',
- styles : [
- `
- settings {
- position: static;
- display: block;
- flex: none;
- width: auto;
- }
- `
- ],
- encapsulation: ViewEncapsulation.None
-})
-export class SettingsComponent implements OnInit, OnDestroy
-{
- config: AppConfig;
- layout: Layout;
- scheme: 'dark' | 'light';
- theme: string;
- themes: [string, any][] = [];
- private _unsubscribeAll: Subject = new Subject();
-
- /**
- * Constructor
- */
- constructor(
- private _router: Router,
- private _tesoConfigService: tesoConfigService,
- private _tesoTailwindService: tesoTailwindService
- )
- {
- }
-
- // -----------------------------------------------------------------------------------------------------
- // @ Lifecycle hooks
- // -----------------------------------------------------------------------------------------------------
-
- /**
- * On init
- */
- ngOnInit(): void
- {
- // Get the themes
- this._tesoTailwindService.tailwindConfig$
- .pipe(takeUntil(this._unsubscribeAll))
- .subscribe((config) => {
- this.themes = Object.entries(config.themes);
- });
-
- // Subscribe to config changes
- this._tesoConfigService.config$
- .pipe(takeUntil(this._unsubscribeAll))
- .subscribe((config: AppConfig) => {
-
- // Store the config
- this.config = config;
- });
- }
-
- /**
- * On destroy
- */
- ngOnDestroy(): void
- {
- // Unsubscribe from all subscriptions
- this._unsubscribeAll.next();
- this._unsubscribeAll.complete();
- }
-
- // -----------------------------------------------------------------------------------------------------
- // @ Public methods
- // -----------------------------------------------------------------------------------------------------
-
- /**
- * Set the layout on the config
- *
- * @param layout
- */
- setLayout(layout: string): void
- {
- // Clear the 'layout' query param to allow layout changes
- this._router.navigate([], {
- queryParams : {
- layout: null
- },
- queryParamsHandling: 'merge'
- }).then(() => {
-
- // Set the config
- this._tesoConfigService.config = {layout};
- });
- }
-
- /**
- * Set the scheme on the config
- *
- * @param scheme
- */
- setScheme(scheme: Scheme): void
- {
- this._tesoConfigService.config = {scheme};
- }
-
- /**
- * Set the theme on the config
- *
- * @param theme
- */
- setTheme(theme: Theme): void
- {
- this._tesoConfigService.config = {theme};
- }
-}
diff --git a/src/app/layout/common/settings/settings.module.ts b/src/app/layout/common/settings/settings.module.ts
deleted file mode 100644
index 8ac9c4b..0000000
--- a/src/app/layout/common/settings/settings.module.ts
+++ /dev/null
@@ -1,28 +0,0 @@
-import { NgModule } from '@angular/core';
-import { CommonModule } from '@angular/common';
-import { RouterModule } from '@angular/router';
-import { MatIconModule } from '@angular/material/icon';
-import { MatTooltipModule } from '@angular/material/tooltip';
-import { tesoDrawerModule } from '@teso/components/drawer';
-import { SettingsComponent } from 'app/layout/common/settings/settings.component';
-import { MatButtonModule } from '@angular/material/button';
-
-@NgModule({
- declarations: [
- SettingsComponent
- ],
- imports: [
- CommonModule,
- RouterModule,
- MatIconModule,
- MatTooltipModule,
- tesoDrawerModule,
- MatButtonModule
- ],
- exports : [
- SettingsComponent
- ]
-})
-export class SettingsModule
-{
-}
diff --git a/src/app/layout/common/user/user.component.html b/src/app/layout/common/user/user.component.html
index 8c922a0..9640de7 100644
--- a/src/app/layout/common/user/user.component.html
+++ b/src/app/layout/common/user/user.component.html
@@ -35,10 +35,6 @@
Profile
-