From 1b6f2b2f63fb11c6582ba5acf02cbd0d933b3bb8 Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 15 Jul 2022 18:36:02 -0600 Subject: [PATCH 01/61] send emails by gmail --- api-gateway/src/app.controller.ts | 17 + api-gateway/src/app.service.ts | 21 + servicio-notificaciones/.env | 8 + servicio-notificaciones/nest-cli.json | 6 +- servicio-notificaciones/package-lock.json | 5509 ++++++++++++++++- servicio-notificaciones/package.json | 4 + servicio-notificaciones/src/app.module.ts | 40 +- .../src/auth/auth.module.ts | 9 + .../src/auth/auth.service.spec.ts | 18 + .../src/auth/auth.service.ts | 13 + .../src/email.controller.ts | 38 + .../src/mails/confirmation.hbs | 7 + .../src/user/user.entity.ts | 4 + servicio-usuarios/package-lock.json | 1 + servicio-usuarios/src/app.module.ts | 2 +- 15 files changed, 5515 insertions(+), 182 deletions(-) create mode 100644 servicio-notificaciones/.env create mode 100644 servicio-notificaciones/src/auth/auth.module.ts create mode 100644 servicio-notificaciones/src/auth/auth.service.spec.ts create mode 100644 servicio-notificaciones/src/auth/auth.service.ts create mode 100644 servicio-notificaciones/src/email.controller.ts create mode 100644 servicio-notificaciones/src/mails/confirmation.hbs create mode 100644 servicio-notificaciones/src/user/user.entity.ts diff --git a/api-gateway/src/app.controller.ts b/api-gateway/src/app.controller.ts index f3b09baf..f0dfdb79 100644 --- a/api-gateway/src/app.controller.ts +++ b/api-gateway/src/app.controller.ts @@ -296,4 +296,21 @@ export class AppController { ) { return this.appService.findReport(paramReport); } + + + @Post('email/sendMail') + senMail( + @Body('email') email: string, + ) { + + return this.appService.sendMail(email); + } + @Post('email/html') + html( + @Body('email') email: string, + @Body('name') name: string, + ) { + + return this.appService.html(email, name); + } } \ No newline at end of file diff --git a/api-gateway/src/app.service.ts b/api-gateway/src/app.service.ts index 4ede2579..6d4016c5 100644 --- a/api-gateway/src/app.service.ts +++ b/api-gateway/src/app.service.ts @@ -419,4 +419,25 @@ export class AppService { map((message: string) => ({ message })), ); } + + + sendMail(email: string) { + const pattern = { cmd: 'sendMail' }; + const payload = { email: email}; + return this.clientNotificationtApp + .send(pattern, payload) + .pipe( + map((message: string) => ({ message })), + ); + } + + html(email: string, name: string) { + const pattern = { cmd: 'html' }; + const payload = { email: email, name: name}; + return this.clientNotificationtApp + .send(pattern, payload) + .pipe( + map((message: string) => ({ message })), + ); + } } \ No newline at end of file diff --git a/servicio-notificaciones/.env b/servicio-notificaciones/.env new file mode 100644 index 00000000..80c3aee2 --- /dev/null +++ b/servicio-notificaciones/.env @@ -0,0 +1,8 @@ +# mail +MAIL_HOST=smtp.gmail.com +MAIL_USER=mbonilla.guti@gmail.com +MAIL_PASSWORD=laofghlofgffmyry +MAIL_FROM=noreply@example.com + +# optional +MAIL_TRANSPORT=smtp://${MAIL_USER}:${MAIL_PASSWORD}@${MAIL_HOST} \ No newline at end of file diff --git a/servicio-notificaciones/nest-cli.json b/servicio-notificaciones/nest-cli.json index 25664811..924e3692 100644 --- a/servicio-notificaciones/nest-cli.json +++ b/servicio-notificaciones/nest-cli.json @@ -1,5 +1,9 @@ { "$schema": "https://json.schemastore.org/nest-cli", "collection": "@nestjs/schematics", - "sourceRoot": "src" + "sourceRoot": "src", + "compilerOptions": { + "assets": ["mails/**/*"], + "watchAssets": true + } } diff --git a/servicio-notificaciones/package-lock.json b/servicio-notificaciones/package-lock.json index 3b47b59c..a95c152a 100644 --- a/servicio-notificaciones/package-lock.json +++ b/servicio-notificaciones/package-lock.json @@ -9,12 +9,16 @@ "version": "0.0.1", "license": "UNLICENSED", "dependencies": { + "@nestjs-modules/mailer": "^1.7.1", "@nestjs/common": "^8.0.0", + "@nestjs/config": "^2.2.0", "@nestjs/core": "^8.0.0", "@nestjs/mapped-types": "*", "@nestjs/microservices": "^8.4.7", "@nestjs/platform-express": "^8.0.0", "@nestjs/swagger": "^5.2.1", + "handlebars": "^4.7.7", + "nodemailer": "^6.7.7", "reflect-metadata": "^0.1.13", "rimraf": "^3.0.2", "rxjs": "^7.2.0", @@ -418,7 +422,6 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", - "dev": true, "engines": { "node": ">=6.9.0" } @@ -535,7 +538,6 @@ "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.6.tgz", "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==", - "dev": true, "bin": { "parser": "bin/babel-parser.js" }, @@ -705,6 +707,17 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/runtime": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.6.tgz", + "integrity": "sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ==", + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/template": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", @@ -753,7 +766,6 @@ "version": "7.18.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.7.tgz", "integrity": "sha512-QG3yxTcTIBoAcQmkCs+wAPYZhu7Dk9rXKacINfNbdJDNERTbLQbHGyVG8q/YGMPeCJRIhSY0+fTc5+xuh6WPSQ==", - "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.18.6", "to-fast-properties": "^2.0.0" @@ -1310,6 +1322,11 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/@jonkemp/package-utils": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@jonkemp/package-utils/-/package-utils-1.0.8.tgz", + "integrity": "sha512-bIcKnH5YmtTYr7S6J3J86dn/rFiklwRpOqbTOQ9C0WMmR9FKHVb3bxs2UYfqEmNb93O4nbA97sb6rtz33i9SyA==" + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", @@ -1381,6 +1398,71 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@nestjs-modules/mailer": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@nestjs-modules/mailer/-/mailer-1.7.1.tgz", + "integrity": "sha512-FC1V3JhOfLSHk9O1Qhl/JfcZPZET95jH3+b1uYlIbOYQUKwkdZD+0QQbPv65JhDJhKCdJE3ra2zlLWkKTtlIIA==", + "dependencies": { + "glob": "8.0.3", + "inline-css": "3.0.0", + "mjml": "^4.12.0", + "preview-email": "3.0.5" + }, + "optionalDependencies": { + "@types/ejs": "^3.0.3", + "@types/pug": "2.0.5", + "ejs": "^3.1.2", + "handlebars": "^4.7.6", + "pug": "^3.0.1" + }, + "peerDependencies": { + "@nestjs/common": "^7.0.9 || ^8.0.0", + "@nestjs/core": "^7.0.9 || ^8.0.0", + "@types/ejs": "^3.0.3", + "@types/pug": "2.0.5", + "ejs": "^3.1.2", + "handlebars": "^4.7.6", + "nodemailer": "^6.4.6", + "pug": "^3.0.1" + } + }, + "node_modules/@nestjs-modules/mailer/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@nestjs-modules/mailer/node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@nestjs-modules/mailer/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@nestjs/cli": { "version": "8.2.8", "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-8.2.8.tgz", @@ -1484,6 +1566,22 @@ } } }, + "node_modules/@nestjs/config": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-2.2.0.tgz", + "integrity": "sha512-78Eg6oMbCy3D/YvqeiGBTOWei1Jwi3f2pSIZcZ1QxY67kYsJzTRTkwRT8Iv30DbK0sGKc1mcloDLD5UXgZAZtg==", + "dependencies": { + "dotenv": "16.0.1", + "dotenv-expand": "8.0.3", + "lodash": "4.17.21", + "uuid": "8.3.2" + }, + "peerDependencies": { + "@nestjs/common": "^7.0.0 || ^8.0.0 || ^9.0.0", + "reflect-metadata": "^0.1.13", + "rxjs": "^6.0.0 || ^7.2.0" + } + }, "node_modules/@nestjs/core": { "version": "8.4.7", "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-8.4.7.tgz", @@ -1816,6 +1914,43 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/@selderee/plugin-htmlparser2": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.6.0.tgz", + "integrity": "sha512-J3jpy002TyBjd4N/p6s+s90eX42H2eRhK3SbsZuvTDv977/E8p2U3zikdiehyJja66do7FlxLomZLPlvl2/xaA==", + "dependencies": { + "domhandler": "^4.2.0", + "selderee": "^0.6.0" + }, + "funding": { + "url": "https://ko-fi.com/killymxi" + } + }, + "node_modules/@selderee/plugin-htmlparser2/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/@selderee/plugin-htmlparser2/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, "node_modules/@sinclair/typebox": { "version": "0.23.5", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.23.5.tgz", @@ -1840,6 +1975,14 @@ "@sinonjs/commons": "^1.7.0" } }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "engines": { + "node": ">= 6" + } + }, "node_modules/@tsconfig/node10": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", @@ -1930,6 +2073,12 @@ "integrity": "sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==", "dev": true }, + "node_modules/@types/ejs": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/ejs/-/ejs-3.1.1.tgz", + "integrity": "sha512-RQul5wEfY7BjWm0sYY86cmUN/pcXWGyVxWX93DFFJvcrxax5zKlieLwA3T77xJGwNcZW0YW6CYG70p1m8xPFmA==", + "optional": true + }, "node_modules/@types/eslint": { "version": "8.4.3", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.3.tgz", @@ -2058,6 +2207,12 @@ "integrity": "sha512-ymZk3LEC/fsut+/Q5qejp6R9O1rMxz3XaRHDV6kX8MrGAhOSPqVARbDi+EZvInBpw+BnCX3TD240byVkOfQsHg==", "dev": true }, + "node_modules/@types/pug": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@types/pug/-/pug-2.0.5.tgz", + "integrity": "sha512-LOnASQoeNZMkzexRuyqcBBDZ6rS+rQxUMkmj5A0PkhhiSZivLIuz6Hxyr1mkGoEZEkk66faROmpMi4fFkrKsBA==", + "optional": true + }, "node_modules/@types/qs": { "version": "6.9.7", "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", @@ -2462,6 +2617,11 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -2478,7 +2638,6 @@ "version": "8.7.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", - "dev": true, "bin": { "acorn": "bin/acorn" }, @@ -2508,11 +2667,21 @@ "version": "8.2.0", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true, "engines": { "node": ">=0.4.0" } }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, "node_modules/ajv": { "version": "8.9.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.9.0.tgz", @@ -2550,7 +2719,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true, "engines": { "node": ">=6" } @@ -2586,7 +2754,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, "engines": { "node": ">=8" } @@ -2609,7 +2776,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -2652,8 +2818,29 @@ "node_modules/asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", - "dev": true + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "node_modules/assert-never": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", + "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==" + }, + "node_modules/ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "dependencies": { + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "optional": true }, "node_modules/asynckit": { "version": "0.4.0", @@ -2776,6 +2963,17 @@ "@babel/core": "^7.0.0" } }, + "node_modules/babel-walk": { + "version": "3.0.0-canary-5", + "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", + "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", + "dependencies": { + "@babel/types": "^7.9.6" + }, + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -2801,11 +2999,15 @@ } ] }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" + }, "node_modules/binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, "engines": { "node": ">=8" } @@ -2871,6 +3073,11 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -2884,7 +3091,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, "dependencies": { "fill-range": "^7.0.1" }, @@ -3010,6 +3216,15 @@ "node": ">=6" } }, + "node_modules/camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==", + "dependencies": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, "node_modules/camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -3057,17 +3272,165 @@ "node": ">=10" } }, + "node_modules/character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", + "dependencies": { + "is-regex": "^1.0.3" + } + }, "node_modules/chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", "dev": true }, + "node_modules/cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha512-8/MzidM6G/TgRelkzDG13y3Y9LxBjCb+8yOEZ9+wwq5gVF2w2pV0wmHvjfT0RvuxGyR7UEuK36r+yYMbT4uKgA==", + "dependencies": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "dependencies": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cheerio-select/node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cheerio-select/node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cheerio-select/node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/cheerio-select/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/cheerio-select/node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/cheerio-select/node_modules/domutils": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/cheerio-select/node_modules/entities": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.3.1.tgz", + "integrity": "sha512-o4q/dYJlmyjP2zfnaWDUC6A3BQFmVTX+tZPezK7k0GLSU9QYCauscf5Y+qcEPzKL+EixVouYDgLQK5H9GrLpkg==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/cheerio-select/node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, "node_modules/chokidar": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, "funding": [ { "type": "individual", @@ -3111,6 +3474,25 @@ "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", "dev": true }, + "node_modules/clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/clean-css/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/cli-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", @@ -3163,7 +3545,6 @@ "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", @@ -3234,8 +3615,7 @@ "node_modules/component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" }, "node_modules/concat-map": { "version": "0.0.1", @@ -3256,11 +3636,29 @@ "typedarray": "^0.0.6" } }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, "node_modules/consola": { "version": "2.15.3", "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" }, + "node_modules/constantinople": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", + "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", + "dependencies": { + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.1" + } + }, "node_modules/content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", @@ -3311,8 +3709,7 @@ "node_modules/cookiejar": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz", - "integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==", - "dev": true + "integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==" }, "node_modules/core-util-is": { "version": "1.0.3", @@ -3367,11 +3764,55 @@ "node": ">= 8" } }, + "node_modules/css-rules": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/css-rules/-/css-rules-1.1.0.tgz", + "integrity": "sha512-7L6krLIRwAEVCaVKyCEL6PQjQXUmf8DM9bWYKutlZd0DqOe0SiKIGQOkFb59AjDBb+3If7SDp3X8UlzDAgYSow==", + "dependencies": { + "cssom": "^0.5.0" + } + }, + "node_modules/css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA==", + "dependencies": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "node_modules/css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "engines": { + "node": "*" + } + }, + "node_modules/cssom": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", + "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==" + }, + "node_modules/data-uri-to-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz", + "integrity": "sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/dayjs": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.3.tgz", + "integrity": "sha512-xxwlswWOlGhzgQ4TKzASQkUhqERI3egRNqgV4ScR8wlANA/A9tZ7miXa44vTTKEq5l7vWoL5G57bG3zA+Kow0A==" + }, "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, "dependencies": { "ms": "2.1.2" }, @@ -3393,14 +3834,12 @@ "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" }, "node_modules/deepmerge": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -3414,6 +3853,20 @@ "clone": "^1.0.2" } }, + "node_modules/degenerator": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-3.0.2.tgz", + "integrity": "sha512-c0mef3SNQo56t6urUU6tdQAs+ThoD0o9B9MJ8HEt7NQcGEILCRFqQb7ZbP9JAv+QF1Ky5plydhMR/IrqWDm+TQ==", + "dependencies": { + "ast-types": "^0.13.2", + "escodegen": "^1.8.1", + "esprima": "^4.0.0", + "vm2": "^3.9.8" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -3448,11 +3901,15 @@ "node": ">=8" } }, + "node_modules/detect-node": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" + }, "node_modules/dezalgo": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz", "integrity": "sha512-K7i4zNfT2kgQz3GylDw40ot9GAE47sFZ9EXHFSPP6zONLgH6kWXE0KWJchkbQJLBkRazq4APwZ4OwiFFlT95OQ==", - "dev": true, "dependencies": { "asap": "^2.0.0", "wrappy": "1" @@ -3488,6 +3945,11 @@ "node": ">=8" } }, + "node_modules/discontinuous-range": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz", + "integrity": "sha512-c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ==" + }, "node_modules/doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", @@ -3500,11 +3962,119 @@ "node": ">=6.0.0" } }, + "node_modules/doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==" + }, + "node_modules/dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dependencies": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==", + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/dotenv": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.1.tgz", + "integrity": "sha512-1K6hR6wtk2FviQ4kEiSjFiH5rpzEVi8WW0x96aztHVMhEspNpc4DVOUTEHtEva5VThQ8IaBX1Pe4gSzpVVUsKQ==", + "engines": { + "node": ">=12" + } + }, + "node_modules/dotenv-expand": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-8.0.3.tgz", + "integrity": "sha512-SErOMvge0ZUyWd5B0NXMQlDkN+8r+HhVUsxgOO7IoPDOdDRD2JjExpN6y3KnFR66jsJMwSn1pqIivhU5rcJiNg==", + "engines": { + "node": ">=12" + } + }, + "node_modules/editorconfig": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", + "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", + "dependencies": { + "commander": "^2.19.0", + "lru-cache": "^4.1.5", + "semver": "^5.6.0", + "sigmund": "^1.0.1" + }, + "bin": { + "editorconfig": "bin/editorconfig" + } + }, + "node_modules/editorconfig/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/editorconfig/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/editorconfig/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/editorconfig/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, + "node_modules/ejs": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz", + "integrity": "sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==", + "optional": true, + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/electron-to-chromium": { "version": "1.4.176", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.176.tgz", @@ -3526,8 +4096,7 @@ "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "node_modules/encodeurl": { "version": "1.0.2", @@ -3537,6 +4106,14 @@ "node": ">= 0.8" } }, + "node_modules/encoding-japanese": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encoding-japanese/-/encoding-japanese-2.0.0.tgz", + "integrity": "sha512-++P0RhebUC8MJAwJOsT93dT+5oc5oPImp1HubZpAuCZ5kTLnhuuBhKHj2jJeO/Gj93idPBWmIuQ9QWMe5rX3pQ==", + "engines": { + "node": ">=8.10.0" + } + }, "node_modules/end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -3559,6 +4136,11 @@ "node": ">=10.13.0" } }, + "node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -3578,11 +4160,21 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, "engines": { "node": ">=6" } }, + "node_modules/escape-goat": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-3.0.0.tgz", + "integrity": "sha512-w3PwNZJwRxlp47QGzhuEBldEqVHHhh8/tIPcl6ecf2Bou99cdAt0knihBV0Ecc7CGxYduXVBDheH1K2oADRlvw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -3600,6 +4192,83 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=4.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/escodegen/node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/escodegen/node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/escodegen/node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, "node_modules/eslint": { "version": "8.18.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.18.0.tgz", @@ -3824,7 +4493,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" @@ -3879,7 +4547,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, "engines": { "node": ">=4.0" } @@ -3888,7 +4555,6 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -4119,6 +4785,17 @@ "node": ">=4" } }, + "node_modules/extract-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-css/-/extract-css-2.0.1.tgz", + "integrity": "sha512-DX3+27l6NIVYNidJjBJ4VU3Z5tk/0aEO/JJ6XEJIRPFum9kyA1PifPjnEa8Ztnv4DHNQg5EF27aypGz6s/fMdw==", + "dependencies": { + "batch": "^0.6.1", + "href-content": "^2.0.1", + "list-stylesheets": "^1.2.10", + "style-data": "^1.4.8" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -4156,8 +4833,7 @@ "node_modules/fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" }, "node_modules/fast-safe-stringify": { "version": "2.1.1", @@ -4218,11 +4894,48 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/file-uri-to-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz", + "integrity": "sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "optional": true, + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "optional": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "optional": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, "dependencies": { "to-regex-range": "^5.0.1" }, @@ -4286,6 +4999,11 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/flat-util": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/flat-util/-/flat-util-1.1.9.tgz", + "integrity": "sha512-BOTMw/6rbbxVjv5JQvwgGMc2/6wWGd2VeyTvnzvvE49VRjS0tTxLbry/QVP1yPw8SaAOBYsnixmzruXoqjdUHA==" + }, "node_modules/flatted": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.6.tgz", @@ -4377,7 +5095,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.0.1.tgz", "integrity": "sha512-rjTMNbp2BpfQShhFbR3Ruk3qk2y9jKpvMW78nJgx8QKtxjDVrwbZG+wvDOmVbifHyOUOQJXxqEy6r0faRrPzTQ==", - "dev": true, "dependencies": { "dezalgo": "1.0.3", "hexoid": "1.0.0", @@ -4392,7 +5109,6 @@ "version": "6.9.3", "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.3.tgz", "integrity": "sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw==", - "dev": true, "engines": { "node": ">=0.6" }, @@ -4445,7 +5161,6 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, "hasInstallScript": true, "optional": true, "os": [ @@ -4455,6 +5170,39 @@ "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, + "node_modules/ftp": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", + "integrity": "sha512-faFVML1aBx2UoDStmLwv2Wptt4vw5x03xxX172nhA5Y5HBshW5JweqQ2W4xL4dezQTG8inJsuYcpPHHU3X5OTQ==", + "dependencies": { + "readable-stream": "1.1.x", + "xregexp": "2.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ftp/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + }, + "node_modules/ftp/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ftp/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" + }, "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", @@ -4479,7 +5227,6 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, "engines": { "node": "6.* || 8.* || >= 10.*" } @@ -4518,6 +5265,51 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/get-uri": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-3.0.2.tgz", + "integrity": "sha512-+5s0SJbGoyiJTZZ2JTpFPLMPSch72KEqGOTvQsBqg0RBWvwhWUSYZFAtz3TPW0GXJuLBJPts1E241iHg+VRfhg==", + "dependencies": { + "@tootallnate/once": "1", + "data-uri-to-buffer": "3", + "debug": "4", + "file-uri-to-path": "2", + "fs-extra": "^8.1.0", + "ftp": "^0.3.10" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/get-uri/node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/get-uri/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/get-uri/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + }, "node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -4541,7 +5333,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -4593,8 +5384,35 @@ "node_modules/graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" + } + }, + "node_modules/handlebars/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/has": { "version": "1.0.3", @@ -4626,21 +5444,197 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "bin": { + "he": "bin/he" + } + }, "node_modules/hexoid": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", - "dev": true, "engines": { "node": ">=8" } }, + "node_modules/href-content": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/href-content/-/href-content-2.0.1.tgz", + "integrity": "sha512-5uiAmBCvzCFVu70kli3Hp0BONbAOfwGqR7jKolV+bAh174sIAZBL8DHfg5SnxAhId2mQmYgyL7Y62msnWJ34Xg==", + "dependencies": { + "remote-content": "^3.0.0" + } + }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, + "node_modules/html-minifier": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-4.0.0.tgz", + "integrity": "sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig==", + "dependencies": { + "camel-case": "^3.0.0", + "clean-css": "^4.2.1", + "commander": "^2.19.0", + "he": "^1.2.0", + "param-case": "^2.1.1", + "relateurl": "^0.2.7", + "uglify-js": "^3.5.1" + }, + "bin": { + "html-minifier": "cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/html-minifier/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/html-to-text": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/html-to-text/-/html-to-text-8.2.0.tgz", + "integrity": "sha512-CLXExYn1b++Lgri+ZyVvbUEFwzkLZppjjZOwB7X1qv2jIi8MrMEvxWX5KQ7zATAzTvcqgmtO00M2kCRMtEdOKQ==", + "dependencies": { + "@selderee/plugin-htmlparser2": "^0.6.0", + "deepmerge": "^4.2.2", + "he": "^1.2.0", + "htmlparser2": "^6.1.0", + "minimist": "^1.2.6", + "selderee": "^0.6.0" + }, + "bin": { + "html-to-text": "bin/cli.js" + }, + "engines": { + "node": ">=10.23.2" + } + }, + "node_modules/html-to-text/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/html-to-text/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/html-to-text/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/html-to-text/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/html-to-text/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/html-to-text/node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dependencies": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "node_modules/htmlparser2/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -4656,6 +5650,31 @@ "node": ">= 0.8" } }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", @@ -4763,6 +5782,28 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/inline-css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/inline-css/-/inline-css-3.0.0.tgz", + "integrity": "sha512-a+IE7oLaQqeVr3hMviekDDk94LA0+oZX8JEfJuXOm20diZAkOFrq/f/QZCEXpMK6qIbYr0nQNpsuioXQN1ZgXA==", + "dependencies": { + "cheerio": "^0.22.0", + "css-rules": "^1.0.9", + "extract-css": "^2.0.0", + "flat-util": "^1.1.6", + "pick-util": "^1.1.3", + "slick": "^1.12.2", + "specificity": "^0.4.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/inquirer": { "version": "7.3.3", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", @@ -4830,6 +5871,11 @@ "node": ">= 0.10" } }, + "node_modules/ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" + }, "node_modules/ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", @@ -4848,7 +5894,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -4860,7 +5905,6 @@ "version": "2.9.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", - "dev": true, "dependencies": { "has": "^1.0.3" }, @@ -4868,11 +5912,44 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-expression": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", + "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", + "dependencies": { + "acorn": "^7.1.1", + "object-assign": "^4.1.1" + } + }, + "node_modules/is-expression/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -4881,7 +5958,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, "engines": { "node": ">=8" } @@ -4899,7 +5975,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -4920,11 +5995,30 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, "engines": { "node": ">=0.12.0" } }, + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-stream": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", @@ -4949,6 +6043,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", @@ -5052,6 +6157,40 @@ "node": ">=6" } }, + "node_modules/jake": { + "version": "10.8.5", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz", + "integrity": "sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==", + "optional": true, + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.1", + "minimatch": "^3.0.4" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jake/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "optional": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, "node_modules/jest": { "version": "28.0.3", "resolved": "https://registry.npmjs.org/jest/-/jest-28.0.3.tgz", @@ -6176,6 +7315,30 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, + "node_modules/js-beautify": { + "version": "1.14.4", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.4.tgz", + "integrity": "sha512-+b4A9c3glceZEmxyIbxDOYB0ZJdReLvyU1077RqKsO4dZx9FUHjTOJn8VHwpg33QoucIykOiYbh7MfqBOghnrA==", + "dependencies": { + "config-chain": "^1.1.13", + "editorconfig": "^0.15.3", + "glob": "^7.1.3", + "nopt": "^5.0.0" + }, + "bin": { + "css-beautify": "js/bin/css-beautify.js", + "html-beautify": "js/bin/html-beautify.js", + "js-beautify": "js/bin/js-beautify.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==" + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -6254,6 +7417,141 @@ "graceful-fs": "^4.1.6" } }, + "node_modules/jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", + "dependencies": { + "is-promise": "^2.0.0", + "promise": "^7.0.1" + } + }, + "node_modules/juice": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/juice/-/juice-7.0.0.tgz", + "integrity": "sha512-AjKQX31KKN+uJs+zaf+GW8mBO/f/0NqSh2moTMyvwBY+4/lXIYTU8D8I2h6BAV3Xnz6GGsbalUyFqbYMe+Vh+Q==", + "dependencies": { + "cheerio": "^1.0.0-rc.3", + "commander": "^5.1.0", + "mensch": "^0.3.4", + "slick": "^1.12.2", + "web-resource-inliner": "^5.0.0" + }, + "bin": { + "juice": "bin/juice" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/juice/node_modules/cheerio": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "dependencies": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/juice/node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/juice/node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/juice/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/juice/node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/juice/node_modules/domutils": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/juice/node_modules/entities": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.3.1.tgz", + "integrity": "sha512-o4q/dYJlmyjP2zfnaWDUC6A3BQFmVTX+tZPezK7k0GLSU9QYCauscf5Y+qcEPzKL+EixVouYDgLQK5H9GrLpkg==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/juice/node_modules/htmlparser2": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" + } + }, "node_modules/kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -6285,12 +7583,61 @@ "node": ">= 0.8.0" } }, + "node_modules/libbase64": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/libbase64/-/libbase64-1.2.1.tgz", + "integrity": "sha512-l+nePcPbIG1fNlqMzrh68MLkX/gTxk/+vdvAb388Ssi7UuUN31MI44w4Yf33mM3Cm4xDfw48mdf3rkdHszLNew==" + }, + "node_modules/libmime": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/libmime/-/libmime-5.1.0.tgz", + "integrity": "sha512-xOqorG21Va+3CjpFOfFTU7SWohHH2uIX9ZY4Byz6J+lvpfvc486tOAT/G9GfbrKtJ9O7NCX9o0aC2lxqbnZ9EA==", + "dependencies": { + "encoding-japanese": "2.0.0", + "iconv-lite": "0.6.3", + "libbase64": "1.2.1", + "libqp": "1.1.0" + } + }, + "node_modules/libmime/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/libqp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/libqp/-/libqp-1.1.0.tgz", + "integrity": "sha512-4Rgfa0hZpG++t1Vi2IiqXG9Ad1ig4QTmtuZF946QJP4bPqOYC78ixUXgz5TW/wE7lNaNKlplSYTxQ+fR2KZ0EA==" + }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true }, + "node_modules/linkify-it": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-4.0.0.tgz", + "integrity": "sha512-QAxkXyzT/TXgwGyY4rTgC95Ex6/lZ5/lYTV9nug6eJt93BCBQGOE47D/g2+/m5J1MrVLr2ot97OXkBZ9bBpR4A==", + "dependencies": { + "uc.micro": "^1.0.1" + } + }, + "node_modules/list-stylesheets": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/list-stylesheets/-/list-stylesheets-1.2.10.tgz", + "integrity": "sha512-F85Yx9GKLJwDr1T9U34FST5m6iIXhPzqD+MRDsljZsdmoEZwllZBDbkAVaa+EpLKrr6de+P4SRGNHwrWv6zMZA==", + "dependencies": { + "cheerio": "^0.22.0", + "pick-util": "^1.1.4" + } + }, "node_modules/loader-runner": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", @@ -6317,6 +7664,41 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "node_modules/lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha512-yX/rx6d/UTVh7sSVWVSIMjfnz95evAgDFdb1ZozC35I9mSFCkmzptOzevxjgbQUsc78NR44LVHWjsoMQXy9FDg==" + }, + "node_modules/lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha512-lxdsn7xxlCymgLYo1gGvVrfHmkjDiyqVv62FAeF2i5ta72BipE1SLxw8hPEPLhD4/247Ijw07UQH7Hq/chT5LA==" + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==" + }, + "node_modules/lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha512-pXYUy7PR8BCLwX5mgJ/aNtyOvuJTdZAo9EQFUvMIYugqmJxnrYaANvTbgndOzHSCSR0wnlBBfRXJL5SbWxo3FQ==" + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==" + }, + "node_modules/lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ==" + }, + "node_modules/lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha512-worNHGKLDetmcEYDvh2stPCrrQRkP20E4l0iIS7F8EvzMqBBi7ltvFN5m1HvTf1P7Jk1txKhvFcmYsCr8O2F1Q==" + }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -6326,8 +7708,27 @@ "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + }, + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" + }, + "node_modules/lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha512-6raRe2vxCYBhpBu+B+TtNGUzah+hQjVdu3E17wfusjyrXBka2nBS8OH/gjVZ5PvHOhWmIZTYri09Z6n/QfnNMw==" + }, + "node_modules/lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha512-qkTuvgEzYdyhiJBx42YPzPo71R1aEr0z79kAv7Ixg8wPFEjgRgJdUsGMG3Hf3OYSF/kHI79XhNlt+5Ar6OzwxQ==" + }, + "node_modules/lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha512-j7MJE+TuT51q9ggt4fSgVqro163BEFjAt3u97IqU+JA2DkWl80nFTrowzLpZ/BnpN7rrl0JA/593NAdd8p/scQ==" }, "node_modules/log-symbols": { "version": "4.1.0", @@ -6361,11 +7762,15 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==" + }, "node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, "dependencies": { "yallist": "^4.0.0" }, @@ -6394,6 +7799,51 @@ "sourcemap-codec": "^1.4.4" } }, + "node_modules/mailparser": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/mailparser/-/mailparser-3.5.0.tgz", + "integrity": "sha512-mdr2DFgz8LKC0/Q6io6znA0HVnzaPFT0a4TTnLeZ7mWHlkfnm227Wxlq7mHh7AgeP32h7gOUpXvyhSfJJIEeyg==", + "dependencies": { + "encoding-japanese": "2.0.0", + "he": "1.2.0", + "html-to-text": "8.2.0", + "iconv-lite": "0.6.3", + "libmime": "5.1.0", + "linkify-it": "4.0.0", + "mailsplit": "5.3.2", + "nodemailer": "6.7.3", + "tlds": "1.231.0" + } + }, + "node_modules/mailparser/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mailparser/node_modules/nodemailer": { + "version": "6.7.3", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.7.3.tgz", + "integrity": "sha512-KUdDsspqx89sD4UUyUKzdlUOper3hRkDVkrKh/89G+d9WKsU5ox51NWS4tB1XR5dPUdR4SP0E3molyEfOvSa3g==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/mailsplit": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/mailsplit/-/mailsplit-5.3.2.tgz", + "integrity": "sha512-coES12hhKqagkuBTJoqERX+y9bXNpxbxw3Esd07auuwKYmcagouVlgucyIVRp48fnswMKxcUtLoFn/L1a75ynQ==", + "dependencies": { + "libbase64": "1.2.1", + "libmime": "5.1.0", + "libqp": "1.1.0" + } + }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -6441,6 +7891,14 @@ "node": ">= 0.6" } }, + "node_modules/mediaquery-text": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mediaquery-text/-/mediaquery-text-1.2.0.tgz", + "integrity": "sha512-cJyRqgYQi+hsYhRkyd5le0s4LsEPvOB7r+6X3jdEELNqVlM9mRIgyUPg9BzF+PuTqQH1ZekgIjYVOeWSXWq35Q==", + "dependencies": { + "cssom": "^0.5.0" + } + }, "node_modules/memfs": { "version": "3.4.7", "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", @@ -6453,6 +7911,11 @@ "node": ">= 4.0.0" } }, + "node_modules/mensch": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/mensch/-/mensch-0.3.4.tgz", + "integrity": "sha512-IAeFvcOnV9V0Yk+bFhYR07O3yNina9ANIN5MoXBKYJ/RLYPurd2d0yw14MDhpr9/momp0WofT1bPUh3hkzdi/g==" + }, "node_modules/merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -6549,6 +8012,673 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" }, + "node_modules/mjml": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml/-/mjml-4.13.0.tgz", + "integrity": "sha512-OnFKESouLshz8DPFSb6M/dE8GkhiJnoy6LAam5TiLA1anAj24yQ2ZH388LtQoEkvTisqwiTmc9ejDh5ctnFaJQ==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "mjml-cli": "4.13.0", + "mjml-core": "4.13.0", + "mjml-migrate": "4.13.0", + "mjml-preset-core": "4.13.0", + "mjml-validator": "4.13.0" + }, + "bin": { + "mjml": "bin/mjml" + } + }, + "node_modules/mjml-accordion": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-accordion/-/mjml-accordion-4.13.0.tgz", + "integrity": "sha512-E3yihZW5Oq2p+sWOcr8kWeRTROmiTYOGxB4IOxW/jTycdY07N3FX3e6vuh7Fv3rryHEUaydUQYto3ICVyctI7w==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-body": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-body/-/mjml-body-4.13.0.tgz", + "integrity": "sha512-S4HgwAuO9dEsyX9sr6WBf9/xr+H2ASVaLn22aurJm1S2Lvc1wifLPYBQgFmNdCjaesTCNtOMUDpG+Rbnavyaqg==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-button": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-button/-/mjml-button-4.13.0.tgz", + "integrity": "sha512-3y8IAHCCxh7ESHh1aOOqobZKUgyNxOKAGQ9TlJoyaLpsKUFzkN8nmrD0KXF0ADSuzvhMZ1CdRIJuZ5mjv2TwWQ==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-carousel": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-carousel/-/mjml-carousel-4.13.0.tgz", + "integrity": "sha512-ORSY5bEYlMlrWSIKI/lN0Tz3uGltWAjG8DQl2Yr3pwjwOaIzGE+kozrDf+T9xItfiIIbvKajef1dg7B7XgP0zg==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-cli": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-cli/-/mjml-cli-4.13.0.tgz", + "integrity": "sha512-kAZxpH0QqlTF/CcLzELgKw1ljKRxrmWJ310CJQhbPAxHvwQ/nIb+q82U+zRJAelRPPKjnOb+hSrMRqTgk9rH3w==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "chokidar": "^3.0.0", + "glob": "^7.1.1", + "html-minifier": "^4.0.0", + "js-beautify": "^1.6.14", + "lodash": "^4.17.21", + "mjml-core": "4.13.0", + "mjml-migrate": "4.13.0", + "mjml-parser-xml": "4.13.0", + "mjml-validator": "4.13.0", + "yargs": "^16.1.0" + }, + "bin": { + "mjml-cli": "bin/mjml" + } + }, + "node_modules/mjml-cli/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mjml-column": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-column/-/mjml-column-4.13.0.tgz", + "integrity": "sha512-O8FrWKK/bCy9XpKxrKRYWNdgWNaVd4TK4RqMeVI/I70IbnYnc1uf15jnsPMxCBSbT+NyXyk8k7fn099797uwpw==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-core": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-core/-/mjml-core-4.13.0.tgz", + "integrity": "sha512-kU5AoVTlZaXR/EDi3ix66xpzUe+kScYus71lBH/wo/B+LZW70GHE1AYWtsog5oJp1MuTHpMFTNuBD/wePeEgWg==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "cheerio": "1.0.0-rc.10", + "detect-node": "2.0.4", + "html-minifier": "^4.0.0", + "js-beautify": "^1.6.14", + "juice": "^7.0.0", + "lodash": "^4.17.21", + "mjml-migrate": "4.13.0", + "mjml-parser-xml": "4.13.0", + "mjml-validator": "4.13.0" + } + }, + "node_modules/mjml-core/node_modules/cheerio": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.10.tgz", + "integrity": "sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==", + "dependencies": { + "cheerio-select": "^1.5.0", + "dom-serializer": "^1.3.2", + "domhandler": "^4.2.0", + "htmlparser2": "^6.1.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/mjml-core/node_modules/cheerio-select": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.6.0.tgz", + "integrity": "sha512-eq0GdBvxVFbqWgmCm7M3XGs1I8oLy/nExUnh6oLqmBditPO9AqQJrkslDpMun/hZ0yyTs8L0m85OHp4ho6Qm9g==", + "dependencies": { + "css-select": "^4.3.0", + "css-what": "^6.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.3.1", + "domutils": "^2.8.0" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/mjml-core/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/mjml-core/node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/mjml-core/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/mjml-core/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/mjml-core/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/mjml-core/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/mjml-core/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/mjml-core/node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/mjml-core/node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/mjml-core/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/mjml-core/node_modules/parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/mjml-divider": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-divider/-/mjml-divider-4.13.0.tgz", + "integrity": "sha512-ooPCwfmxEC+wJduqObYezMp7W5UCHjL9Y1LPB5FGna2FrOejgfd6Ix3ij8Wrmycmlol7E2N4D7c5NDH5DbRCJg==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-group": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-group/-/mjml-group-4.13.0.tgz", + "integrity": "sha512-U7E8m8aaoAE/dMqjqXPjjrKcwO36B4cquAy9ASldECrIZJBcpFYO6eYf5yLXrNCUM2P0id8pgVjrUq23s00L7Q==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-head": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head/-/mjml-head-4.13.0.tgz", + "integrity": "sha512-sL2qQuoVALXBCiemu4DPo9geDr8DuUdXVJxm+4nd6k5jpLCfSDmFlNhgSsLPzsYn7VEac3/sxsjLtomQ+6/BHg==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-head-attributes": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-attributes/-/mjml-head-attributes-4.13.0.tgz", + "integrity": "sha512-haggCafno+0lQylxJStkINCVCPMwfTpwE6yjCHeGOpQl/TkoNmjNkDr7DEEbNTZbt4Ekg070lQFn7clDy38EoA==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-head-breakpoint": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-breakpoint/-/mjml-head-breakpoint-4.13.0.tgz", + "integrity": "sha512-D2iPDeUKQK1+rYSNa2HGOvgfPxZhNyndTG0iBEb/FxdGge2hbeDCZEN0mwDYE3wWB+qSBqlCuMI+Vr4pEjZbKg==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-head-font": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-font/-/mjml-head-font-4.13.0.tgz", + "integrity": "sha512-mYn8aWnbrEap5vX2b4662hkUv6WifcYzYn++Yi6OHrJQi55LpzcU+myAGpfQEXXrpU8vGwExMTFKsJq5n2Kaow==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-head-html-attributes": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-html-attributes/-/mjml-head-html-attributes-4.13.0.tgz", + "integrity": "sha512-m30Oro297+18Zou/1qYjagtmCOWtYXeoS38OABQ5zOSzMItE3TcZI9JNcOueIIWIyFCETe8StrTAKcQ2GHwsDw==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-head-preview": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-preview/-/mjml-head-preview-4.13.0.tgz", + "integrity": "sha512-v0K/NocjFCbaoF/0IMVNmiqov91HxqT07vNTEl0Bt9lKFrTKVC01m1S4K7AB78T/bEeJ/HwmNjr1+TMtVNGGow==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-head-style": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-style/-/mjml-head-style-4.13.0.tgz", + "integrity": "sha512-tBa33GL9Atn5bAM2UwE+uxv4rI29WgX/e5lXX+5GWlsb4thmiN6rxpFTNqBqWbBNRbZk4UEZF78M7Da8xC1ZGQ==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-head-title": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-title/-/mjml-head-title-4.13.0.tgz", + "integrity": "sha512-Mq0bjuZXJlwxfVcjuYihQcigZSDTKeQaG3nORR1D0jsOH2BXU4XgUK1UOcTXn2qCBIfRoIMq7rfzYs+L0CRhdw==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-hero": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-hero/-/mjml-hero-4.13.0.tgz", + "integrity": "sha512-aWEOScdrhyjwdKBWG4XQaElRHP8LU5PtktkpMeBXa4yxrxNs25qRnDqMNkjSrnnmFKWZmQ166tfboY6RBNf0UA==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-image": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-image/-/mjml-image-4.13.0.tgz", + "integrity": "sha512-agMmm2wRZTIrKwrUnYFlnAbtrKYSP0R2en+Vf92HPspAwmaw3/AeOW/QxmSiMhfGf+xsEJyzVvR/nd33jbT3sg==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-migrate": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-migrate/-/mjml-migrate-4.13.0.tgz", + "integrity": "sha512-I1euHiAyNpaz+B5vH+Z4T+hg/YtI5p3PqQ3/zTLv8gi24V6BILjTaftWhH5+3R/gQkQhH0NUaWNnRmds+Mq5DQ==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "js-beautify": "^1.6.14", + "lodash": "^4.17.21", + "mjml-core": "4.13.0", + "mjml-parser-xml": "4.13.0", + "yargs": "^16.1.0" + }, + "bin": { + "migrate": "lib/cli.js" + } + }, + "node_modules/mjml-migrate/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mjml-navbar": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-navbar/-/mjml-navbar-4.13.0.tgz", + "integrity": "sha512-0Oqyyk+OdtXfsjswRb/7Ql1UOjN4MbqFPKoyltJqtj+11MRpF5+Wjd74Dj9H7l81GFwkIB9OaP+ZMiD+TPECgg==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-parser-xml": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-parser-xml/-/mjml-parser-xml-4.13.0.tgz", + "integrity": "sha512-phljtI8DaW++q0aybR/Ykv9zCyP/jCFypxVNo26r2IQo//VYXyc7JuLZZT8N/LAI8lZcwbTVxQPBzJTmZ5IfwQ==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "detect-node": "2.0.4", + "htmlparser2": "^4.1.0", + "lodash": "^4.17.15" + } + }, + "node_modules/mjml-parser-xml/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/mjml-parser-xml/node_modules/dom-serializer/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/mjml-parser-xml/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/mjml-parser-xml/node_modules/domhandler": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz", + "integrity": "sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==", + "dependencies": { + "domelementtype": "^2.0.1" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/mjml-parser-xml/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/mjml-parser-xml/node_modules/domutils/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/mjml-parser-xml/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/mjml-parser-xml/node_modules/htmlparser2": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz", + "integrity": "sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^3.0.0", + "domutils": "^2.0.0", + "entities": "^2.0.0" + } + }, + "node_modules/mjml-preset-core": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-preset-core/-/mjml-preset-core-4.13.0.tgz", + "integrity": "sha512-gxzYaKkvUrHuzT1oqjEPSDtdmgEnN99Hf5f1r2CR5aMOB1x66EA3T8ATvF1o7qrBTVV4KMVlQem3IubMSYJZRw==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "mjml-accordion": "4.13.0", + "mjml-body": "4.13.0", + "mjml-button": "4.13.0", + "mjml-carousel": "4.13.0", + "mjml-column": "4.13.0", + "mjml-divider": "4.13.0", + "mjml-group": "4.13.0", + "mjml-head": "4.13.0", + "mjml-head-attributes": "4.13.0", + "mjml-head-breakpoint": "4.13.0", + "mjml-head-font": "4.13.0", + "mjml-head-html-attributes": "4.13.0", + "mjml-head-preview": "4.13.0", + "mjml-head-style": "4.13.0", + "mjml-head-title": "4.13.0", + "mjml-hero": "4.13.0", + "mjml-image": "4.13.0", + "mjml-navbar": "4.13.0", + "mjml-raw": "4.13.0", + "mjml-section": "4.13.0", + "mjml-social": "4.13.0", + "mjml-spacer": "4.13.0", + "mjml-table": "4.13.0", + "mjml-text": "4.13.0", + "mjml-wrapper": "4.13.0" + } + }, + "node_modules/mjml-raw": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-raw/-/mjml-raw-4.13.0.tgz", + "integrity": "sha512-JbBYxwX1a/zbqnCrlDCRNqov2xqUrMCaEdTHfqE2athj479aQXvLKFM20LilTMaClp/dR0yfvFLfFVrC5ej4FQ==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-section": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-section/-/mjml-section-4.13.0.tgz", + "integrity": "sha512-BLcqlhavtRakKtzDQPLv6Ae4Jt4imYWq/P0jo+Sjk7tP4QifgVA2KEQOirPK5ZUqw/lvK7Afhcths5rXZ2ItnQ==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-social": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-social/-/mjml-social-4.13.0.tgz", + "integrity": "sha512-zL2a7Wwsk8OXF0Bqu+1B3La1UPwdTMcEXptO8zdh2V5LL6Xb7Gfyvx6w0CmmBtG5IjyCtqaKy5wtrcpG9Hvjfg==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-spacer": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-spacer/-/mjml-spacer-4.13.0.tgz", + "integrity": "sha512-Acw4QJ0MJ38W4IewXuMX7hLaW1BZaln+gEEuTfrv0xwPdTxX1ILqz4r+s9mYMxYkIDLWMCjBvXyQK6aWlid13A==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-table": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-table/-/mjml-table-4.13.0.tgz", + "integrity": "sha512-UAWPVMaGReQhf776DFdiwdcJTIHTek3zzQ1pb+E7VlypEYgIpFvdUJ39UIiiflhqtdBATmHwKBOtePwU0MzFMg==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-text": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-text/-/mjml-text-4.13.0.tgz", + "integrity": "sha512-uDuraaQFdu+6xfuigCimbeznnOnJfwRdcCL1lTBTusTuEvW/5Va6m2D3mnMeEpl+bp4+cxesXIz9st6A9pcg5A==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "node_modules/mjml-validator": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-validator/-/mjml-validator-4.13.0.tgz", + "integrity": "sha512-uURYfyQYtHJ6Qz/1A7/+E9ezfcoISoLZhYK3olsxKRViwaA2Mm8gy/J3yggZXnsUXWUns7Qymycm5LglLEIiQg==", + "dependencies": { + "@babel/runtime": "^7.14.6" + } + }, + "node_modules/mjml-wrapper": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-wrapper/-/mjml-wrapper-4.13.0.tgz", + "integrity": "sha512-p/44JvHg04rAFR7QDImg8nZucEokIjFH6KJMHxsO0frJtLZ+IuakctzlZAADHsqiR52BwocDsXSa+o9SE2l6Ng==", + "dependencies": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0", + "mjml-section": "4.13.0" + } + }, "node_modules/mkdirp": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", @@ -6560,11 +8690,15 @@ "mkdirp": "bin/cmd.js" } }, + "node_modules/moo": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz", + "integrity": "sha512-I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==" + }, "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node_modules/multer": { "version": "1.4.4-lts.1", @@ -6595,6 +8729,32 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, + "node_modules/nearley": { + "version": "2.20.1", + "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.20.1.tgz", + "integrity": "sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==", + "dependencies": { + "commander": "^2.19.0", + "moo": "^0.5.0", + "railroad-diagrams": "^1.0.0", + "randexp": "0.4.6" + }, + "bin": { + "nearley-railroad": "bin/nearley-railroad.js", + "nearley-test": "bin/nearley-test.js", + "nearley-unparse": "bin/nearley-unparse.js", + "nearleyc": "bin/nearleyc.js" + }, + "funding": { + "type": "individual", + "url": "https://nearley.js.org/#give-to-nearley" + } + }, + "node_modules/nearley/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, "node_modules/negotiator": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", @@ -6606,8 +8766,23 @@ "node_modules/neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "node_modules/netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dependencies": { + "lower-case": "^1.1.1" + } }, "node_modules/node-emoji": { "version": "1.11.0", @@ -6649,11 +8824,32 @@ "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", "dev": true }, + "node_modules/nodemailer": { + "version": "6.7.7", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.7.7.tgz", + "integrity": "sha512-pOLC/s+2I1EXuSqO5Wa34i3kXZG3gugDssH+ZNCevHad65tc8vQlCQpOLaUjopvkRQKm2Cki2aME7fEOPRy3bA==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -6670,6 +8866,14 @@ "node": ">=8" } }, + "node_modules/nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dependencies": { + "boolbase": "~1.0.0" + } + }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -6728,6 +8932,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/optionator": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", @@ -6845,6 +9064,46 @@ "node": ">=6" } }, + "node_modules/pac-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-5.0.0.tgz", + "integrity": "sha512-CcFG3ZtnxO8McDigozwE3AqAw15zDvGH+OjXO4kzf7IkEKkQ4gxQ+3sdF50WmhQ4P/bVusXcqNE2S3XrNURwzQ==", + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4", + "get-uri": "3", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "5", + "pac-resolver": "^5.0.0", + "raw-body": "^2.2.0", + "socks-proxy-agent": "5" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/pac-resolver": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-5.0.1.tgz", + "integrity": "sha512-cy7u00ko2KVgBAjuhevqpPeHIkCIqPe1v24cydhWjmeuzaBfmUWFCZJ1iAh5TuVzVZoUzXIW7K8sMYOZ84uZ9Q==", + "dependencies": { + "degenerator": "^3.0.2", + "ip": "^1.1.5", + "netmask": "^2.0.2" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==", + "dependencies": { + "no-case": "^2.2.0" + } + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -6875,6 +9134,77 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/parse5": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.0.0.tgz", + "integrity": "sha512-y/t8IXSPWTuRZqXc0ajH/UwDj4mnqLEbSttNbThcFhGrZuOyoyvNBO85PBp2jQa55wY9d07PBNjsK8ZP3K5U6g==", + "dependencies": { + "entities": "^4.3.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "dependencies": { + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/parse5/node_modules/entities": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.3.1.tgz", + "integrity": "sha512-o4q/dYJlmyjP2zfnaWDUC6A3BQFmVTX+tZPezK7k0GLSU9QYCauscf5Y+qcEPzKL+EixVouYDgLQK5H9GrLpkg==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/parseley": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/parseley/-/parseley-0.7.0.tgz", + "integrity": "sha512-xyOytsdDu077M3/46Am+2cGXEKM9U9QclBDv7fimY7e+BBlxh2JcBp2mgNsmkyA9uvgyTjVzDi7cP1v4hcFxbw==", + "dependencies": { + "moo": "^0.5.1", + "nearley": "^2.20.1" + }, + "funding": { + "url": "https://ko-fi.com/killymxi" + } + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -6912,8 +9242,7 @@ "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-to-regexp": { "version": "3.2.0", @@ -6929,6 +9258,14 @@ "node": ">=8" } }, + "node_modules/pick-util": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/pick-util/-/pick-util-1.1.5.tgz", + "integrity": "sha512-H0MaM8T7wpQ/azvB12ChZw7kpSFzjsgv3Z+N7fUWnL1McTGSEeroCngcK4eOPiFQq08rAyKX3hadcAB1kUqfXA==", + "dependencies": { + "@jonkemp/package-utils": "^1.0.8" + } + }, "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", @@ -6939,7 +9276,6 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, "engines": { "node": ">=8.6" }, @@ -7039,11 +9375,36 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/preview-email": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/preview-email/-/preview-email-3.0.5.tgz", + "integrity": "sha512-q37jdkVw+wic0o/7xYhOTBS4kF0WX3two0OepmR1Fhxp9NTpO3rJTccAjQm95gJx/2Wa/Nv98sr9pXIQ77/foA==", + "dependencies": { + "dayjs": "^1.10.6", + "debug": "^4.3.2", + "mailparser": "^3.3.0", + "nodemailer": "^6.6.3", + "open": "7", + "pug": "^3.0.2", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, + "node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dependencies": { + "asap": "~2.0.3" + } + }, "node_modules/prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", @@ -7057,6 +9418,11 @@ "node": ">= 6" } }, + "node_modules/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==" + }, "node_modules/proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", @@ -7069,6 +9435,159 @@ "node": ">= 0.10" } }, + "node_modules/proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-5.0.0.tgz", + "integrity": "sha512-gkH7BkvLVkSfX9Dk27W6TyNOWWZWRilRfk1XxGNWOYJ2TuedAv1yFpCaU9QSBmBe716XOTNpYNOzhysyw8xn7g==", + "dependencies": { + "agent-base": "^6.0.0", + "debug": "4", + "http-proxy-agent": "^4.0.0", + "https-proxy-agent": "^5.0.0", + "lru-cache": "^5.1.1", + "pac-proxy-agent": "^5.0.0", + "proxy-from-env": "^1.0.0", + "socks-proxy-agent": "^5.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/proxy-agent/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/proxy-agent/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + }, + "node_modules/pug": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.2.tgz", + "integrity": "sha512-bp0I/hiK1D1vChHh6EfDxtndHji55XP/ZJKwsRqrz6lRia6ZC2OZbdAymlxdVFwd1L70ebrVJw4/eZ79skrIaw==", + "dependencies": { + "pug-code-gen": "^3.0.2", + "pug-filters": "^4.0.0", + "pug-lexer": "^5.0.1", + "pug-linker": "^4.0.0", + "pug-load": "^3.0.0", + "pug-parser": "^6.0.0", + "pug-runtime": "^3.0.1", + "pug-strip-comments": "^2.0.0" + } + }, + "node_modules/pug-attrs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-3.0.0.tgz", + "integrity": "sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==", + "dependencies": { + "constantinople": "^4.0.1", + "js-stringify": "^1.0.2", + "pug-runtime": "^3.0.0" + } + }, + "node_modules/pug-code-gen": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.2.tgz", + "integrity": "sha512-nJMhW16MbiGRiyR4miDTQMRWDgKplnHyeLvioEJYbk1RsPI3FuA3saEP8uwnTb2nTJEKBU90NFVWJBk4OU5qyg==", + "dependencies": { + "constantinople": "^4.0.1", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.2", + "pug-attrs": "^3.0.0", + "pug-error": "^2.0.0", + "pug-runtime": "^3.0.0", + "void-elements": "^3.1.0", + "with": "^7.0.0" + } + }, + "node_modules/pug-error": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.0.0.tgz", + "integrity": "sha512-sjiUsi9M4RAGHktC1drQfCr5C5eriu24Lfbt4s+7SykztEOwVZtbFk1RRq0tzLxcMxMYTBR+zMQaG07J/btayQ==" + }, + "node_modules/pug-filters": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-4.0.0.tgz", + "integrity": "sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A==", + "dependencies": { + "constantinople": "^4.0.1", + "jstransformer": "1.0.0", + "pug-error": "^2.0.0", + "pug-walk": "^2.0.0", + "resolve": "^1.15.1" + } + }, + "node_modules/pug-lexer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-5.0.1.tgz", + "integrity": "sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w==", + "dependencies": { + "character-parser": "^2.2.0", + "is-expression": "^4.0.0", + "pug-error": "^2.0.0" + } + }, + "node_modules/pug-linker": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-4.0.0.tgz", + "integrity": "sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw==", + "dependencies": { + "pug-error": "^2.0.0", + "pug-walk": "^2.0.0" + } + }, + "node_modules/pug-load": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-3.0.0.tgz", + "integrity": "sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ==", + "dependencies": { + "object-assign": "^4.1.1", + "pug-walk": "^2.0.0" + } + }, + "node_modules/pug-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-6.0.0.tgz", + "integrity": "sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw==", + "dependencies": { + "pug-error": "^2.0.0", + "token-stream": "1.0.0" + } + }, + "node_modules/pug-runtime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-3.0.1.tgz", + "integrity": "sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==" + }, + "node_modules/pug-strip-comments": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz", + "integrity": "sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ==", + "dependencies": { + "pug-error": "^2.0.0" + } + }, + "node_modules/pug-walk": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-2.0.0.tgz", + "integrity": "sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ==" + }, "node_modules/pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -7122,6 +9641,23 @@ } ] }, + "node_modules/railroad-diagrams": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz", + "integrity": "sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A==" + }, + "node_modules/randexp": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz", + "integrity": "sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==", + "dependencies": { + "discontinuous-range": "1.0.0", + "ret": "~0.1.10" + }, + "engines": { + "node": ">=0.12" + } + }, "node_modules/randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -7182,7 +9718,6 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -7207,6 +9742,11 @@ "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" }, + "node_modules/regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" + }, "node_modules/regexpp": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", @@ -7219,11 +9759,28 @@ "url": "https://github.com/sponsors/mysticatea" } }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/remote-content": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remote-content/-/remote-content-3.0.0.tgz", + "integrity": "sha512-/hjCYVqWY/jYR07ptEJpClnYrGedSQ5AxCrEeMb3NlrxTgUK/7+iCOReE3z1QMYm3UL7sJX3o7cww/NC6UgyhA==", + "dependencies": { + "proxy-from-env": "^1.1.0", + "superagent": "^7.0.2", + "superagent-proxy": "^3.0.0" + } + }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -7241,7 +9798,6 @@ "version": "1.22.1", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, "dependencies": { "is-core-module": "^2.9.0", "path-parse": "^1.0.7", @@ -7306,6 +9862,14 @@ "node": ">=8" } }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "engines": { + "node": ">=0.12" + } + }, "node_modules/reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", @@ -7443,11 +10007,21 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, + "node_modules/selderee": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/selderee/-/selderee-0.6.0.tgz", + "integrity": "sha512-ibqWGV5aChDvfVdqNYuaJP/HnVBhlRGSRrlbttmlMpHcLuTqqbMH36QkSs9GEgj5M88JDYLI8eyP94JaQ8xRlg==", + "dependencies": { + "parseley": "^0.7.0" + }, + "funding": { + "url": "https://ko-fi.com/killymxi" + } + }, "node_modules/semver": { "version": "7.3.7", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, "dependencies": { "lru-cache": "^6.0.0" }, @@ -7578,6 +10152,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==" + }, "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -7599,6 +10178,49 @@ "node": ">=8" } }, + "node_modules/slick": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/slick/-/slick-1.12.2.tgz", + "integrity": "sha512-4qdtOGcBjral6YIBCWJ0ljFSKNLz9KkhbWtuGvUyRowl1kxfuE1x/Z/aJcaiilpb3do9bl5K7/1h9XC5wWpY/A==", + "engines": { + "node": "*" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz", + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==", + "dependencies": { + "ip": "^1.1.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz", + "integrity": "sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ==", + "dependencies": { + "agent-base": "^6.0.2", + "debug": "4", + "socks": "^2.3.3" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/source-map": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", @@ -7633,6 +10255,14 @@ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", "dev": true }, + "node_modules/specificity": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", + "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", + "bin": { + "specificity": "bin/specificity" + } + }, "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", @@ -7706,7 +10336,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -7720,7 +10349,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -7758,11 +10386,20 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/style-data": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/style-data/-/style-data-1.4.8.tgz", + "integrity": "sha512-RBJD+YQef4PzYKqC4PQEjDvyX709mwEClYg9u0A5EPXqdSkN2BtMnF/tW7EtS9Q0FnBF+lrWsK5+bEKqA+++Dg==", + "dependencies": { + "cheerio": "^0.22.0", + "mediaquery-text": "^1.2.0", + "pick-util": "^1.1.4" + } + }, "node_modules/superagent": { "version": "7.1.5", "resolved": "https://registry.npmjs.org/superagent/-/superagent-7.1.5.tgz", "integrity": "sha512-HQYyGuDRFGmZ6GNC4hq2f37KnsY9Lr0/R1marNZTgMweVDQLTLJJ6DGQ9Tj/xVVs5HEnop9EMmTbywb5P30aqw==", - "dev": true, "dependencies": { "component-emitter": "^1.3.0", "cookiejar": "^2.1.3", @@ -7780,11 +10417,25 @@ "node": ">=6.4.0 <13 || >=14" } }, + "node_modules/superagent-proxy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/superagent-proxy/-/superagent-proxy-3.0.0.tgz", + "integrity": "sha512-wAlRInOeDFyd9pyonrkJspdRAxdLrcsZ6aSnS+8+nu4x1aXbz6FWSTT9M6Ibze+eG60szlL7JA8wEIV7bPWuyQ==", + "dependencies": { + "debug": "^4.3.2", + "proxy-agent": "^5.0.0" + }, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "superagent": ">= 0.15.4 || 1 || 2 || 3" + } + }, "node_modules/superagent/node_modules/mime": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true, "bin": { "mime": "cli.js" }, @@ -7796,7 +10447,6 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -7847,7 +10497,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, "engines": { "node": ">= 0.4" }, @@ -8027,6 +10676,14 @@ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "dev": true }, + "node_modules/tlds": { + "version": "1.231.0", + "resolved": "https://registry.npmjs.org/tlds/-/tlds-1.231.0.tgz", + "integrity": "sha512-L7UQwueHSkGxZHQBXHVmXW64oi+uqNtzFt2x6Ssk7NVnpIbw16CRs4eb/jmKOZ9t2JnqZ/b3Cfvo97lnXqKrhw==", + "bin": { + "tlds": "bin.js" + } + }, "node_modules/tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -8049,7 +10706,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, "engines": { "node": ">=4" } @@ -8058,7 +10714,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, "dependencies": { "is-number": "^7.0.0" }, @@ -8074,6 +10729,11 @@ "node": ">=0.6" } }, + "node_modules/token-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-1.0.0.tgz", + "integrity": "sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==" + }, "node_modules/tr46": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", @@ -8378,6 +11038,22 @@ "node": ">=4.2.0" } }, + "node_modules/uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + }, + "node_modules/uglify-js": { + "version": "3.16.2", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.16.2.tgz", + "integrity": "sha512-AaQNokTNgExWrkEYA24BTNMSjyqEXPSfhqoS0AxmHkCJ4U+Dyy5AvbGV/sqxuxficEfGGoX3zWw9R7QpLFfEsg==", + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/universalify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", @@ -8421,6 +11097,11 @@ "browserslist": ">= 4.21.0" } }, + "node_modules/upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==" + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -8477,6 +11158,14 @@ "node": ">=10.12.0" } }, + "node_modules/valid-data-url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/valid-data-url/-/valid-data-url-3.0.1.tgz", + "integrity": "sha512-jOWVmzVceKlVVdwjNSenT4PbGghU0SBIizAev8ofZVgivk/TVHXSbNL8LP6M3spZvkR9/QolkyJavGSX5Cs0UA==", + "engines": { + "node": ">=10" + } + }, "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", @@ -8485,6 +11174,29 @@ "node": ">= 0.8" } }, + "node_modules/vm2": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.10.tgz", + "integrity": "sha512-AuECTSvwu2OHLAZYhG716YzwodKCIJxB6u1zG7PgSQwIgAlEaoXH52bxdcvT8GkGjnYK7r7yWDW0m0sOsPuBjQ==", + "dependencies": { + "acorn": "^8.7.0", + "acorn-walk": "^8.2.0" + }, + "bin": { + "vm2": "bin/vm2" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/void-elements": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", + "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", @@ -8516,6 +11228,131 @@ "defaults": "^1.0.3" } }, + "node_modules/web-resource-inliner": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/web-resource-inliner/-/web-resource-inliner-5.0.0.tgz", + "integrity": "sha512-AIihwH+ZmdHfkJm7BjSXiEClVt4zUFqX4YlFAzjL13wLtDuUneSaFvDBTbdYRecs35SiU7iNKbMnN+++wVfb6A==", + "dependencies": { + "ansi-colors": "^4.1.1", + "escape-goat": "^3.0.0", + "htmlparser2": "^4.0.0", + "mime": "^2.4.6", + "node-fetch": "^2.6.0", + "valid-data-url": "^3.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/web-resource-inliner/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/web-resource-inliner/node_modules/dom-serializer/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/web-resource-inliner/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/web-resource-inliner/node_modules/domhandler": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz", + "integrity": "sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==", + "dependencies": { + "domelementtype": "^2.0.1" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/web-resource-inliner/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/web-resource-inliner/node_modules/domutils/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/web-resource-inliner/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/web-resource-inliner/node_modules/htmlparser2": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz", + "integrity": "sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^3.0.0", + "domutils": "^2.0.0", + "entities": "^2.0.0" + } + }, + "node_modules/web-resource-inliner/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", @@ -8672,20 +11509,37 @@ "node": ">=8.12.0" } }, + "node_modules/with": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/with/-/with-7.0.2.tgz", + "integrity": "sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==", + "dependencies": { + "@babel/parser": "^7.9.6", + "@babel/types": "^7.9.6", + "assert-never": "^1.2.1", + "babel-walk": "3.0.0-canary-5" + }, + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, "engines": { "node": ">=0.10.0" } }, + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==" + }, "node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -8716,6 +11570,14 @@ "node": "^12.13.0 || ^14.15.0 || >=16" } }, + "node_modules/xregexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha512-xl/50/Cf32VsGq/1R8jJE5ajH1yMCQkpmoS10QbFZWl2Oor4H0Me64Pu2yxvsRWK3m6soJbmGfzSR7BYmDcWAA==", + "engines": { + "node": "*" + } + }, "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", @@ -8728,7 +11590,6 @@ "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, "engines": { "node": ">=10" } @@ -8736,8 +11597,7 @@ "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yaml": { "version": "1.10.2", @@ -8770,7 +11630,6 @@ "version": "20.2.9", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, "engines": { "node": ">=10" } @@ -9081,8 +11940,7 @@ "@babel/helper-validator-identifier": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz", - "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==", - "dev": true + "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==" }, "@babel/helper-validator-option": { "version": "7.18.6", @@ -9173,8 +12031,7 @@ "@babel/parser": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.6.tgz", - "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==", - "dev": true + "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==" }, "@babel/plugin-syntax-async-generators": { "version": "7.8.4", @@ -9293,6 +12150,14 @@ "@babel/helper-plugin-utils": "^7.18.6" } }, + "@babel/runtime": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.6.tgz", + "integrity": "sha512-t9wi7/AW6XtKahAe20Yw0/mMljKq0B1r2fPdvaAdV/KPDZewFXdaaa6K7lxmZBZ8FBNpCiAT6iHPmd6QO9bKfQ==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, "@babel/template": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz", @@ -9334,7 +12199,6 @@ "version": "7.18.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.7.tgz", "integrity": "sha512-QG3yxTcTIBoAcQmkCs+wAPYZhu7Dk9rXKacINfNbdJDNERTbLQbHGyVG8q/YGMPeCJRIhSY0+fTc5+xuh6WPSQ==", - "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.18.6", "to-fast-properties": "^2.0.0" @@ -9781,6 +12645,11 @@ } } }, + "@jonkemp/package-utils": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@jonkemp/package-utils/-/package-utils-1.0.8.tgz", + "integrity": "sha512-bIcKnH5YmtTYr7S6J3J86dn/rFiklwRpOqbTOQ9C0WMmR9FKHVb3bxs2UYfqEmNb93O4nbA97sb6rtz33i9SyA==" + }, "@jridgewell/gen-mapping": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", @@ -9842,6 +12711,52 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "@nestjs-modules/mailer": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@nestjs-modules/mailer/-/mailer-1.7.1.tgz", + "integrity": "sha512-FC1V3JhOfLSHk9O1Qhl/JfcZPZET95jH3+b1uYlIbOYQUKwkdZD+0QQbPv65JhDJhKCdJE3ra2zlLWkKTtlIIA==", + "requires": { + "@types/ejs": "^3.0.3", + "@types/pug": "2.0.5", + "ejs": "^3.1.2", + "glob": "8.0.3", + "handlebars": "^4.7.6", + "inline-css": "3.0.0", + "mjml": "^4.12.0", + "preview-email": "3.0.5", + "pug": "^3.0.1" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + } + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, "@nestjs/cli": { "version": "8.2.8", "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-8.2.8.tgz", @@ -9912,6 +12827,17 @@ "uuid": "8.3.2" } }, + "@nestjs/config": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-2.2.0.tgz", + "integrity": "sha512-78Eg6oMbCy3D/YvqeiGBTOWei1Jwi3f2pSIZcZ1QxY67kYsJzTRTkwRT8Iv30DbK0sGKc1mcloDLD5UXgZAZtg==", + "requires": { + "dotenv": "16.0.1", + "dotenv-expand": "8.0.3", + "lodash": "4.17.21", + "uuid": "8.3.2" + } + }, "@nestjs/core": { "version": "8.4.7", "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-8.4.7.tgz", @@ -10076,6 +13002,30 @@ } } }, + "@selderee/plugin-htmlparser2": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.6.0.tgz", + "integrity": "sha512-J3jpy002TyBjd4N/p6s+s90eX42H2eRhK3SbsZuvTDv977/E8p2U3zikdiehyJja66do7FlxLomZLPlvl2/xaA==", + "requires": { + "domhandler": "^4.2.0", + "selderee": "^0.6.0" + }, + "dependencies": { + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + } + } + }, "@sinclair/typebox": { "version": "0.23.5", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.23.5.tgz", @@ -10100,6 +13050,11 @@ "@sinonjs/commons": "^1.7.0" } }, + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==" + }, "@tsconfig/node10": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", @@ -10190,6 +13145,12 @@ "integrity": "sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==", "dev": true }, + "@types/ejs": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/ejs/-/ejs-3.1.1.tgz", + "integrity": "sha512-RQul5wEfY7BjWm0sYY86cmUN/pcXWGyVxWX93DFFJvcrxax5zKlieLwA3T77xJGwNcZW0YW6CYG70p1m8xPFmA==", + "optional": true + }, "@types/eslint": { "version": "8.4.3", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.3.tgz", @@ -10318,6 +13279,12 @@ "integrity": "sha512-ymZk3LEC/fsut+/Q5qejp6R9O1rMxz3XaRHDV6kX8MrGAhOSPqVARbDi+EZvInBpw+BnCX3TD240byVkOfQsHg==", "dev": true }, + "@types/pug": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@types/pug/-/pug-2.0.5.tgz", + "integrity": "sha512-LOnASQoeNZMkzexRuyqcBBDZ6rS+rQxUMkmj5A0PkhhiSZivLIuz6Hxyr1mkGoEZEkk66faROmpMi4fFkrKsBA==", + "optional": true + }, "@types/qs": { "version": "6.9.7", "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", @@ -10633,6 +13600,11 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, "accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -10645,8 +13617,7 @@ "acorn": { "version": "8.7.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", - "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", - "dev": true + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==" }, "acorn-import-assertions": { "version": "1.8.0", @@ -10665,8 +13636,15 @@ "acorn-walk": { "version": "8.2.0", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==" + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "requires": { + "debug": "4" + } }, "ajv": { "version": "8.9.0", @@ -10692,8 +13670,7 @@ "ansi-colors": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==" }, "ansi-escapes": { "version": "4.3.2", @@ -10715,8 +13692,7 @@ "ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, "ansi-styles": { "version": "4.3.0", @@ -10730,7 +13706,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, "requires": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -10767,8 +13742,26 @@ "asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", - "dev": true + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "assert-never": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", + "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==" + }, + "ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "requires": { + "tslib": "^2.0.1" + } + }, + "async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "optional": true }, "asynckit": { "version": "0.4.0", @@ -10866,6 +13859,14 @@ "babel-preset-current-node-syntax": "^1.0.0" } }, + "babel-walk": { + "version": "3.0.0-canary-5", + "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", + "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", + "requires": { + "@babel/types": "^7.9.6" + } + }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -10877,11 +13878,15 @@ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" + }, "binary-extensions": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" }, "bl": { "version": "4.1.0", @@ -10941,6 +13946,11 @@ } } }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -10954,7 +13964,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, "requires": { "fill-range": "^7.0.1" } @@ -11032,6 +14041,15 @@ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, + "camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==", + "requires": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, "camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -11060,17 +14078,125 @@ "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "dev": true }, + "character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", + "requires": { + "is-regex": "^1.0.3" + } + }, "chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", "dev": true }, + "cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha512-8/MzidM6G/TgRelkzDG13y3Y9LxBjCb+8yOEZ9+wwq5gVF2w2pV0wmHvjfT0RvuxGyR7UEuK36r+yYMbT4uKgA==", + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + } + }, + "cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "requires": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + }, + "dependencies": { + "css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" + }, + "dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "requires": { + "domelementtype": "^2.3.0" + } + }, + "domutils": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "requires": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" + } + }, + "entities": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.3.1.tgz", + "integrity": "sha512-o4q/dYJlmyjP2zfnaWDUC6A3BQFmVTX+tZPezK7k0GLSU9QYCauscf5Y+qcEPzKL+EixVouYDgLQK5H9GrLpkg==" + }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "requires": { + "boolbase": "^1.0.0" + } + } + } + }, "chokidar": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, "requires": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -11100,6 +14226,21 @@ "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", "dev": true }, + "clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "requires": { + "source-map": "~0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, "cli-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", @@ -11135,7 +14276,6 @@ "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, "requires": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", @@ -11190,8 +14330,7 @@ "component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" }, "concat-map": { "version": "0.0.1", @@ -11209,11 +14348,29 @@ "typedarray": "^0.0.6" } }, + "config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "requires": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, "consola": { "version": "2.15.3", "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" }, + "constantinople": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", + "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", + "requires": { + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.1" + } + }, "content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", @@ -11257,8 +14414,7 @@ "cookiejar": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz", - "integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==", - "dev": true + "integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==" }, "core-util-is": { "version": "1.0.3", @@ -11304,11 +14460,49 @@ "which": "^2.0.1" } }, + "css-rules": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/css-rules/-/css-rules-1.1.0.tgz", + "integrity": "sha512-7L6krLIRwAEVCaVKyCEL6PQjQXUmf8DM9bWYKutlZd0DqOe0SiKIGQOkFb59AjDBb+3If7SDp3X8UlzDAgYSow==", + "requires": { + "cssom": "^0.5.0" + } + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA==", + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" + }, + "cssom": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", + "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==" + }, + "data-uri-to-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz", + "integrity": "sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==" + }, + "dayjs": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.3.tgz", + "integrity": "sha512-xxwlswWOlGhzgQ4TKzASQkUhqERI3egRNqgV4ScR8wlANA/A9tZ7miXa44vTTKEq5l7vWoL5G57bG3zA+Kow0A==" + }, "debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, "requires": { "ms": "2.1.2" } @@ -11322,14 +14516,12 @@ "deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" }, "deepmerge": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", - "dev": true + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==" }, "defaults": { "version": "1.0.3", @@ -11340,6 +14532,17 @@ "clone": "^1.0.2" } }, + "degenerator": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-3.0.2.tgz", + "integrity": "sha512-c0mef3SNQo56t6urUU6tdQAs+ThoD0o9B9MJ8HEt7NQcGEILCRFqQb7ZbP9JAv+QF1Ky5plydhMR/IrqWDm+TQ==", + "requires": { + "ast-types": "^0.13.2", + "escodegen": "^1.8.1", + "esprima": "^4.0.0", + "vm2": "^3.9.8" + } + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -11361,11 +14564,15 @@ "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", "dev": true }, + "detect-node": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" + }, "dezalgo": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz", "integrity": "sha512-K7i4zNfT2kgQz3GylDw40ot9GAE47sFZ9EXHFSPP6zONLgH6kWXE0KWJchkbQJLBkRazq4APwZ4OwiFFlT95OQ==", - "dev": true, "requires": { "asap": "^2.0.0", "wrappy": "1" @@ -11392,6 +14599,11 @@ "path-type": "^4.0.0" } }, + "discontinuous-range": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz", + "integrity": "sha512-c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ==" + }, "doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", @@ -11401,11 +14613,103 @@ "esutils": "^2.0.2" } }, + "doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==" + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "requires": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==", + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dotenv": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.1.tgz", + "integrity": "sha512-1K6hR6wtk2FviQ4kEiSjFiH5rpzEVi8WW0x96aztHVMhEspNpc4DVOUTEHtEva5VThQ8IaBX1Pe4gSzpVVUsKQ==" + }, + "dotenv-expand": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-8.0.3.tgz", + "integrity": "sha512-SErOMvge0ZUyWd5B0NXMQlDkN+8r+HhVUsxgOO7IoPDOdDRD2JjExpN6y3KnFR66jsJMwSn1pqIivhU5rcJiNg==" + }, + "editorconfig": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", + "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", + "requires": { + "commander": "^2.19.0", + "lru-cache": "^4.1.5", + "semver": "^5.6.0", + "sigmund": "^1.0.1" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + } + } + }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, + "ejs": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz", + "integrity": "sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==", + "optional": true, + "requires": { + "jake": "^10.8.5" + } + }, "electron-to-chromium": { "version": "1.4.176", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.176.tgz", @@ -11421,14 +14725,18 @@ "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" }, + "encoding-japanese": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encoding-japanese/-/encoding-japanese-2.0.0.tgz", + "integrity": "sha512-++P0RhebUC8MJAwJOsT93dT+5oc5oPImp1HubZpAuCZ5kTLnhuuBhKHj2jJeO/Gj93idPBWmIuQ9QWMe5rX3pQ==" + }, "end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -11448,6 +14756,11 @@ "tapable": "^2.2.0" } }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -11466,8 +14779,12 @@ "escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + }, + "escape-goat": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-3.0.0.tgz", + "integrity": "sha512-w3PwNZJwRxlp47QGzhuEBldEqVHHhh8/tIPcl6ecf2Bou99cdAt0knihBV0Ecc7CGxYduXVBDheH1K2oADRlvw==" }, "escape-html": { "version": "1.0.3", @@ -11480,6 +14797,61 @@ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true }, + "escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "requires": { + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + } + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "requires": { + "prelude-ls": "~1.1.2" + } + } + } + }, "eslint": { "version": "8.18.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.18.0.tgz", @@ -11641,8 +15013,7 @@ "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, "esquery": { "version": "1.4.0", @@ -11681,14 +15052,12 @@ "estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" }, "esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, "etag": { "version": "1.8.1", @@ -11874,6 +15243,17 @@ "tmp": "^0.0.33" } }, + "extract-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-css/-/extract-css-2.0.1.tgz", + "integrity": "sha512-DX3+27l6NIVYNidJjBJ4VU3Z5tk/0aEO/JJ6XEJIRPFum9kyA1PifPjnEa8Ztnv4DHNQg5EF27aypGz6s/fMdw==", + "requires": { + "batch": "^0.6.1", + "href-content": "^2.0.1", + "list-stylesheets": "^1.2.10", + "style-data": "^1.4.8" + } + }, "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -11908,8 +15288,7 @@ "fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" }, "fast-safe-stringify": { "version": "2.1.1", @@ -11960,11 +15339,44 @@ "flat-cache": "^3.0.4" } }, + "file-uri-to-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz", + "integrity": "sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg==" + }, + "filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "optional": true, + "requires": { + "minimatch": "^5.0.1" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "optional": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "optional": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, "requires": { "to-regex-range": "^5.0.1" } @@ -12018,6 +15430,11 @@ "rimraf": "^3.0.2" } }, + "flat-util": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/flat-util/-/flat-util-1.1.9.tgz", + "integrity": "sha512-BOTMw/6rbbxVjv5JQvwgGMc2/6wWGd2VeyTvnzvvE49VRjS0tTxLbry/QVP1yPw8SaAOBYsnixmzruXoqjdUHA==" + }, "flatted": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.6.tgz", @@ -12074,7 +15491,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.0.1.tgz", "integrity": "sha512-rjTMNbp2BpfQShhFbR3Ruk3qk2y9jKpvMW78nJgx8QKtxjDVrwbZG+wvDOmVbifHyOUOQJXxqEy6r0faRrPzTQ==", - "dev": true, "requires": { "dezalgo": "1.0.3", "hexoid": "1.0.0", @@ -12085,8 +15501,7 @@ "qs": { "version": "6.9.3", "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.3.tgz", - "integrity": "sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw==", - "dev": true + "integrity": "sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw==" } } }, @@ -12126,9 +15541,40 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, "optional": true }, + "ftp": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", + "integrity": "sha512-faFVML1aBx2UoDStmLwv2Wptt4vw5x03xxX172nhA5Y5HBshW5JweqQ2W4xL4dezQTG8inJsuYcpPHHU3X5OTQ==", + "requires": { + "readable-stream": "1.1.x", + "xregexp": "2.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" + } + } + }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", @@ -12149,8 +15595,7 @@ "get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" }, "get-intrinsic": { "version": "1.1.2", @@ -12174,6 +15619,44 @@ "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true }, + "get-uri": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-3.0.2.tgz", + "integrity": "sha512-+5s0SJbGoyiJTZZ2JTpFPLMPSch72KEqGOTvQsBqg0RBWvwhWUSYZFAtz3TPW0GXJuLBJPts1E241iHg+VRfhg==", + "requires": { + "@tootallnate/once": "1", + "data-uri-to-buffer": "3", + "debug": "4", + "file-uri-to-path": "2", + "fs-extra": "^8.1.0", + "ftp": "^0.3.10" + }, + "dependencies": { + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + } + } + }, "glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -12191,7 +15674,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, "requires": { "is-glob": "^4.0.1" } @@ -12228,8 +15710,26 @@ "graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "requires": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } }, "has": { "version": "1.0.3", @@ -12249,11 +15749,31 @@ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" + }, "hexoid": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", - "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", - "dev": true + "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==" + }, + "href-content": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/href-content/-/href-content-2.0.1.tgz", + "integrity": "sha512-5uiAmBCvzCFVu70kli3Hp0BONbAOfwGqR7jKolV+bAh174sIAZBL8DHfg5SnxAhId2mQmYgyL7Y62msnWJ34Xg==", + "requires": { + "remote-content": "^3.0.0" + } }, "html-escaper": { "version": "2.0.2", @@ -12261,6 +15781,116 @@ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, + "html-minifier": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-4.0.0.tgz", + "integrity": "sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig==", + "requires": { + "camel-case": "^3.0.0", + "clean-css": "^4.2.1", + "commander": "^2.19.0", + "he": "^1.2.0", + "param-case": "^2.1.1", + "relateurl": "^0.2.7", + "uglify-js": "^3.5.1" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + } + } + }, + "html-to-text": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/html-to-text/-/html-to-text-8.2.0.tgz", + "integrity": "sha512-CLXExYn1b++Lgri+ZyVvbUEFwzkLZppjjZOwB7X1qv2jIi8MrMEvxWX5KQ7zATAzTvcqgmtO00M2kCRMtEdOKQ==", + "requires": { + "@selderee/plugin-htmlparser2": "^0.6.0", + "deepmerge": "^4.2.2", + "he": "^1.2.0", + "htmlparser2": "^6.1.0", + "minimist": "^1.2.6", + "selderee": "^0.6.0" + }, + "dependencies": { + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + } + } + }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, "http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -12273,6 +15903,25 @@ "toidentifier": "1.0.1" } }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + } + }, + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "requires": { + "agent-base": "6", + "debug": "4" + } + }, "human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", @@ -12339,6 +15988,25 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "inline-css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/inline-css/-/inline-css-3.0.0.tgz", + "integrity": "sha512-a+IE7oLaQqeVr3hMviekDDk94LA0+oZX8JEfJuXOm20diZAkOFrq/f/QZCEXpMK6qIbYr0nQNpsuioXQN1ZgXA==", + "requires": { + "cheerio": "^0.22.0", + "css-rules": "^1.0.9", + "extract-css": "^2.0.0", + "flat-util": "^1.1.6", + "pick-util": "^1.1.3", + "slick": "^1.12.2", + "specificity": "^0.4.1" + } + }, "inquirer": { "version": "7.3.3", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", @@ -12393,6 +16061,11 @@ "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "dev": true }, + "ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" + }, "ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", @@ -12408,7 +16081,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, "requires": { "binary-extensions": "^2.0.0" } @@ -12417,22 +16089,40 @@ "version": "2.9.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", - "dev": true, "requires": { "has": "^1.0.3" } }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" + }, + "is-expression": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", + "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", + "requires": { + "acorn": "^7.1.1", + "object-assign": "^4.1.1" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + } + } + }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "is-generator-fn": { "version": "2.1.0", @@ -12444,7 +16134,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, "requires": { "is-extglob": "^2.1.1" } @@ -12458,8 +16147,21 @@ "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } }, "is-stream": { "version": "2.0.1", @@ -12473,6 +16175,14 @@ "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "requires": { + "is-docker": "^2.0.0" + } + }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", @@ -12556,6 +16266,30 @@ "resolved": "https://registry.npmjs.org/iterare/-/iterare-1.2.1.tgz", "integrity": "sha512-RKYVTCjAnRthyJes037NX/IiqeidgN1xc3j1RjFfECFp28A1GVwK9nA+i0rJPaHqSZwygLzRnFlzUuHFoWWy+Q==" }, + "jake": { + "version": "10.8.5", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz", + "integrity": "sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==", + "optional": true, + "requires": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.1", + "minimatch": "^3.0.4" + }, + "dependencies": { + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "optional": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + } + } + }, "jest": { "version": "28.0.3", "resolved": "https://registry.npmjs.org/jest/-/jest-28.0.3.tgz", @@ -13417,6 +17151,22 @@ } } }, + "js-beautify": { + "version": "1.14.4", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.4.tgz", + "integrity": "sha512-+b4A9c3glceZEmxyIbxDOYB0ZJdReLvyU1077RqKsO4dZx9FUHjTOJn8VHwpg33QoucIykOiYbh7MfqBOghnrA==", + "requires": { + "config-chain": "^1.1.13", + "editorconfig": "^0.15.3", + "glob": "^7.1.3", + "nopt": "^5.0.0" + } + }, + "js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==" + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -13478,6 +17228,97 @@ "universalify": "^2.0.0" } }, + "jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", + "requires": { + "is-promise": "^2.0.0", + "promise": "^7.0.1" + } + }, + "juice": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/juice/-/juice-7.0.0.tgz", + "integrity": "sha512-AjKQX31KKN+uJs+zaf+GW8mBO/f/0NqSh2moTMyvwBY+4/lXIYTU8D8I2h6BAV3Xnz6GGsbalUyFqbYMe+Vh+Q==", + "requires": { + "cheerio": "^1.0.0-rc.3", + "commander": "^5.1.0", + "mensch": "^0.3.4", + "slick": "^1.12.2", + "web-resource-inliner": "^5.0.0" + }, + "dependencies": { + "cheerio": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "requires": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + } + }, + "commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==" + }, + "dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "requires": { + "domelementtype": "^2.3.0" + } + }, + "domutils": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "requires": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" + } + }, + "entities": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.3.1.tgz", + "integrity": "sha512-o4q/dYJlmyjP2zfnaWDUC6A3BQFmVTX+tZPezK7k0GLSU9QYCauscf5Y+qcEPzKL+EixVouYDgLQK5H9GrLpkg==" + }, + "htmlparser2": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" + } + } + } + }, "kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -13500,12 +17341,60 @@ "type-check": "~0.4.0" } }, + "libbase64": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/libbase64/-/libbase64-1.2.1.tgz", + "integrity": "sha512-l+nePcPbIG1fNlqMzrh68MLkX/gTxk/+vdvAb388Ssi7UuUN31MI44w4Yf33mM3Cm4xDfw48mdf3rkdHszLNew==" + }, + "libmime": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/libmime/-/libmime-5.1.0.tgz", + "integrity": "sha512-xOqorG21Va+3CjpFOfFTU7SWohHH2uIX9ZY4Byz6J+lvpfvc486tOAT/G9GfbrKtJ9O7NCX9o0aC2lxqbnZ9EA==", + "requires": { + "encoding-japanese": "2.0.0", + "iconv-lite": "0.6.3", + "libbase64": "1.2.1", + "libqp": "1.1.0" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, + "libqp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/libqp/-/libqp-1.1.0.tgz", + "integrity": "sha512-4Rgfa0hZpG++t1Vi2IiqXG9Ad1ig4QTmtuZF946QJP4bPqOYC78ixUXgz5TW/wE7lNaNKlplSYTxQ+fR2KZ0EA==" + }, "lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true }, + "linkify-it": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-4.0.0.tgz", + "integrity": "sha512-QAxkXyzT/TXgwGyY4rTgC95Ex6/lZ5/lYTV9nug6eJt93BCBQGOE47D/g2+/m5J1MrVLr2ot97OXkBZ9bBpR4A==", + "requires": { + "uc.micro": "^1.0.1" + } + }, + "list-stylesheets": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/list-stylesheets/-/list-stylesheets-1.2.10.tgz", + "integrity": "sha512-F85Yx9GKLJwDr1T9U34FST5m6iIXhPzqD+MRDsljZsdmoEZwllZBDbkAVaa+EpLKrr6de+P4SRGNHwrWv6zMZA==", + "requires": { + "cheerio": "^0.22.0", + "pick-util": "^1.1.4" + } + }, "loader-runner": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", @@ -13526,6 +17415,41 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha512-yX/rx6d/UTVh7sSVWVSIMjfnz95evAgDFdb1ZozC35I9mSFCkmzptOzevxjgbQUsc78NR44LVHWjsoMQXy9FDg==" + }, + "lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha512-lxdsn7xxlCymgLYo1gGvVrfHmkjDiyqVv62FAeF2i5ta72BipE1SLxw8hPEPLhD4/247Ijw07UQH7Hq/chT5LA==" + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==" + }, + "lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha512-pXYUy7PR8BCLwX5mgJ/aNtyOvuJTdZAo9EQFUvMIYugqmJxnrYaANvTbgndOzHSCSR0wnlBBfRXJL5SbWxo3FQ==" + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==" + }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ==" + }, + "lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha512-worNHGKLDetmcEYDvh2stPCrrQRkP20E4l0iIS7F8EvzMqBBi7ltvFN5m1HvTf1P7Jk1txKhvFcmYsCr8O2F1Q==" + }, "lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -13535,8 +17459,27 @@ "lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" + }, + "lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha512-6raRe2vxCYBhpBu+B+TtNGUzah+hQjVdu3E17wfusjyrXBka2nBS8OH/gjVZ5PvHOhWmIZTYri09Z6n/QfnNMw==" + }, + "lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha512-qkTuvgEzYdyhiJBx42YPzPo71R1aEr0z79kAv7Ixg8wPFEjgRgJdUsGMG3Hf3OYSF/kHI79XhNlt+5Ar6OzwxQ==" + }, + "lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha512-j7MJE+TuT51q9ggt4fSgVqro163BEFjAt3u97IqU+JA2DkWl80nFTrowzLpZ/BnpN7rrl0JA/593NAdd8p/scQ==" }, "log-symbols": { "version": "4.1.0", @@ -13560,11 +17503,15 @@ } } }, + "lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==" + }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, "requires": { "yallist": "^4.0.0" } @@ -13584,6 +17531,47 @@ "sourcemap-codec": "^1.4.4" } }, + "mailparser": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/mailparser/-/mailparser-3.5.0.tgz", + "integrity": "sha512-mdr2DFgz8LKC0/Q6io6znA0HVnzaPFT0a4TTnLeZ7mWHlkfnm227Wxlq7mHh7AgeP32h7gOUpXvyhSfJJIEeyg==", + "requires": { + "encoding-japanese": "2.0.0", + "he": "1.2.0", + "html-to-text": "8.2.0", + "iconv-lite": "0.6.3", + "libmime": "5.1.0", + "linkify-it": "4.0.0", + "mailsplit": "5.3.2", + "nodemailer": "6.7.3", + "tlds": "1.231.0" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + }, + "nodemailer": { + "version": "6.7.3", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.7.3.tgz", + "integrity": "sha512-KUdDsspqx89sD4UUyUKzdlUOper3hRkDVkrKh/89G+d9WKsU5ox51NWS4tB1XR5dPUdR4SP0E3molyEfOvSa3g==" + } + } + }, + "mailsplit": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/mailsplit/-/mailsplit-5.3.2.tgz", + "integrity": "sha512-coES12hhKqagkuBTJoqERX+y9bXNpxbxw3Esd07auuwKYmcagouVlgucyIVRp48fnswMKxcUtLoFn/L1a75ynQ==", + "requires": { + "libbase64": "1.2.1", + "libmime": "5.1.0", + "libqp": "1.1.0" + } + }, "make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -13621,6 +17609,14 @@ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" }, + "mediaquery-text": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mediaquery-text/-/mediaquery-text-1.2.0.tgz", + "integrity": "sha512-cJyRqgYQi+hsYhRkyd5le0s4LsEPvOB7r+6X3jdEELNqVlM9mRIgyUPg9BzF+PuTqQH1ZekgIjYVOeWSXWq35Q==", + "requires": { + "cssom": "^0.5.0" + } + }, "memfs": { "version": "3.4.7", "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", @@ -13630,6 +17626,11 @@ "fs-monkey": "^1.0.3" } }, + "mensch": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/mensch/-/mensch-0.3.4.tgz", + "integrity": "sha512-IAeFvcOnV9V0Yk+bFhYR07O3yNina9ANIN5MoXBKYJ/RLYPurd2d0yw14MDhpr9/momp0WofT1bPUh3hkzdi/g==" + }, "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -13699,6 +17700,588 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" }, + "mjml": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml/-/mjml-4.13.0.tgz", + "integrity": "sha512-OnFKESouLshz8DPFSb6M/dE8GkhiJnoy6LAam5TiLA1anAj24yQ2ZH388LtQoEkvTisqwiTmc9ejDh5ctnFaJQ==", + "requires": { + "@babel/runtime": "^7.14.6", + "mjml-cli": "4.13.0", + "mjml-core": "4.13.0", + "mjml-migrate": "4.13.0", + "mjml-preset-core": "4.13.0", + "mjml-validator": "4.13.0" + } + }, + "mjml-accordion": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-accordion/-/mjml-accordion-4.13.0.tgz", + "integrity": "sha512-E3yihZW5Oq2p+sWOcr8kWeRTROmiTYOGxB4IOxW/jTycdY07N3FX3e6vuh7Fv3rryHEUaydUQYto3ICVyctI7w==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-body": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-body/-/mjml-body-4.13.0.tgz", + "integrity": "sha512-S4HgwAuO9dEsyX9sr6WBf9/xr+H2ASVaLn22aurJm1S2Lvc1wifLPYBQgFmNdCjaesTCNtOMUDpG+Rbnavyaqg==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-button": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-button/-/mjml-button-4.13.0.tgz", + "integrity": "sha512-3y8IAHCCxh7ESHh1aOOqobZKUgyNxOKAGQ9TlJoyaLpsKUFzkN8nmrD0KXF0ADSuzvhMZ1CdRIJuZ5mjv2TwWQ==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-carousel": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-carousel/-/mjml-carousel-4.13.0.tgz", + "integrity": "sha512-ORSY5bEYlMlrWSIKI/lN0Tz3uGltWAjG8DQl2Yr3pwjwOaIzGE+kozrDf+T9xItfiIIbvKajef1dg7B7XgP0zg==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-cli": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-cli/-/mjml-cli-4.13.0.tgz", + "integrity": "sha512-kAZxpH0QqlTF/CcLzELgKw1ljKRxrmWJ310CJQhbPAxHvwQ/nIb+q82U+zRJAelRPPKjnOb+hSrMRqTgk9rH3w==", + "requires": { + "@babel/runtime": "^7.14.6", + "chokidar": "^3.0.0", + "glob": "^7.1.1", + "html-minifier": "^4.0.0", + "js-beautify": "^1.6.14", + "lodash": "^4.17.21", + "mjml-core": "4.13.0", + "mjml-migrate": "4.13.0", + "mjml-parser-xml": "4.13.0", + "mjml-validator": "4.13.0", + "yargs": "^16.1.0" + }, + "dependencies": { + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + } + } + }, + "mjml-column": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-column/-/mjml-column-4.13.0.tgz", + "integrity": "sha512-O8FrWKK/bCy9XpKxrKRYWNdgWNaVd4TK4RqMeVI/I70IbnYnc1uf15jnsPMxCBSbT+NyXyk8k7fn099797uwpw==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-core": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-core/-/mjml-core-4.13.0.tgz", + "integrity": "sha512-kU5AoVTlZaXR/EDi3ix66xpzUe+kScYus71lBH/wo/B+LZW70GHE1AYWtsog5oJp1MuTHpMFTNuBD/wePeEgWg==", + "requires": { + "@babel/runtime": "^7.14.6", + "cheerio": "1.0.0-rc.10", + "detect-node": "2.0.4", + "html-minifier": "^4.0.0", + "js-beautify": "^1.6.14", + "juice": "^7.0.0", + "lodash": "^4.17.21", + "mjml-migrate": "4.13.0", + "mjml-parser-xml": "4.13.0", + "mjml-validator": "4.13.0" + }, + "dependencies": { + "cheerio": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.10.tgz", + "integrity": "sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==", + "requires": { + "cheerio-select": "^1.5.0", + "dom-serializer": "^1.3.2", + "domhandler": "^4.2.0", + "htmlparser2": "^6.1.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "tslib": "^2.2.0" + } + }, + "cheerio-select": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.6.0.tgz", + "integrity": "sha512-eq0GdBvxVFbqWgmCm7M3XGs1I8oLy/nExUnh6oLqmBditPO9AqQJrkslDpMun/hZ0yyTs8L0m85OHp4ho6Qm9g==", + "requires": { + "css-select": "^4.3.0", + "css-what": "^6.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.3.1", + "domutils": "^2.8.0" + } + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "requires": { + "boolbase": "^1.0.0" + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "requires": { + "parse5": "^6.0.1" + } + } + } + }, + "mjml-divider": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-divider/-/mjml-divider-4.13.0.tgz", + "integrity": "sha512-ooPCwfmxEC+wJduqObYezMp7W5UCHjL9Y1LPB5FGna2FrOejgfd6Ix3ij8Wrmycmlol7E2N4D7c5NDH5DbRCJg==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-group": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-group/-/mjml-group-4.13.0.tgz", + "integrity": "sha512-U7E8m8aaoAE/dMqjqXPjjrKcwO36B4cquAy9ASldECrIZJBcpFYO6eYf5yLXrNCUM2P0id8pgVjrUq23s00L7Q==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-head": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head/-/mjml-head-4.13.0.tgz", + "integrity": "sha512-sL2qQuoVALXBCiemu4DPo9geDr8DuUdXVJxm+4nd6k5jpLCfSDmFlNhgSsLPzsYn7VEac3/sxsjLtomQ+6/BHg==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-head-attributes": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-attributes/-/mjml-head-attributes-4.13.0.tgz", + "integrity": "sha512-haggCafno+0lQylxJStkINCVCPMwfTpwE6yjCHeGOpQl/TkoNmjNkDr7DEEbNTZbt4Ekg070lQFn7clDy38EoA==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-head-breakpoint": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-breakpoint/-/mjml-head-breakpoint-4.13.0.tgz", + "integrity": "sha512-D2iPDeUKQK1+rYSNa2HGOvgfPxZhNyndTG0iBEb/FxdGge2hbeDCZEN0mwDYE3wWB+qSBqlCuMI+Vr4pEjZbKg==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-head-font": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-font/-/mjml-head-font-4.13.0.tgz", + "integrity": "sha512-mYn8aWnbrEap5vX2b4662hkUv6WifcYzYn++Yi6OHrJQi55LpzcU+myAGpfQEXXrpU8vGwExMTFKsJq5n2Kaow==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-head-html-attributes": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-html-attributes/-/mjml-head-html-attributes-4.13.0.tgz", + "integrity": "sha512-m30Oro297+18Zou/1qYjagtmCOWtYXeoS38OABQ5zOSzMItE3TcZI9JNcOueIIWIyFCETe8StrTAKcQ2GHwsDw==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-head-preview": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-preview/-/mjml-head-preview-4.13.0.tgz", + "integrity": "sha512-v0K/NocjFCbaoF/0IMVNmiqov91HxqT07vNTEl0Bt9lKFrTKVC01m1S4K7AB78T/bEeJ/HwmNjr1+TMtVNGGow==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-head-style": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-style/-/mjml-head-style-4.13.0.tgz", + "integrity": "sha512-tBa33GL9Atn5bAM2UwE+uxv4rI29WgX/e5lXX+5GWlsb4thmiN6rxpFTNqBqWbBNRbZk4UEZF78M7Da8xC1ZGQ==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-head-title": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-head-title/-/mjml-head-title-4.13.0.tgz", + "integrity": "sha512-Mq0bjuZXJlwxfVcjuYihQcigZSDTKeQaG3nORR1D0jsOH2BXU4XgUK1UOcTXn2qCBIfRoIMq7rfzYs+L0CRhdw==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-hero": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-hero/-/mjml-hero-4.13.0.tgz", + "integrity": "sha512-aWEOScdrhyjwdKBWG4XQaElRHP8LU5PtktkpMeBXa4yxrxNs25qRnDqMNkjSrnnmFKWZmQ166tfboY6RBNf0UA==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-image": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-image/-/mjml-image-4.13.0.tgz", + "integrity": "sha512-agMmm2wRZTIrKwrUnYFlnAbtrKYSP0R2en+Vf92HPspAwmaw3/AeOW/QxmSiMhfGf+xsEJyzVvR/nd33jbT3sg==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-migrate": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-migrate/-/mjml-migrate-4.13.0.tgz", + "integrity": "sha512-I1euHiAyNpaz+B5vH+Z4T+hg/YtI5p3PqQ3/zTLv8gi24V6BILjTaftWhH5+3R/gQkQhH0NUaWNnRmds+Mq5DQ==", + "requires": { + "@babel/runtime": "^7.14.6", + "js-beautify": "^1.6.14", + "lodash": "^4.17.21", + "mjml-core": "4.13.0", + "mjml-parser-xml": "4.13.0", + "yargs": "^16.1.0" + }, + "dependencies": { + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + } + } + }, + "mjml-navbar": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-navbar/-/mjml-navbar-4.13.0.tgz", + "integrity": "sha512-0Oqyyk+OdtXfsjswRb/7Ql1UOjN4MbqFPKoyltJqtj+11MRpF5+Wjd74Dj9H7l81GFwkIB9OaP+ZMiD+TPECgg==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-parser-xml": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-parser-xml/-/mjml-parser-xml-4.13.0.tgz", + "integrity": "sha512-phljtI8DaW++q0aybR/Ykv9zCyP/jCFypxVNo26r2IQo//VYXyc7JuLZZT8N/LAI8lZcwbTVxQPBzJTmZ5IfwQ==", + "requires": { + "@babel/runtime": "^7.14.6", + "detect-node": "2.0.4", + "htmlparser2": "^4.1.0", + "lodash": "^4.17.15" + }, + "dependencies": { + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "dependencies": { + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + } + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz", + "integrity": "sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==", + "requires": { + "domelementtype": "^2.0.1" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "dependencies": { + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + } + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, + "htmlparser2": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz", + "integrity": "sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^3.0.0", + "domutils": "^2.0.0", + "entities": "^2.0.0" + } + } + } + }, + "mjml-preset-core": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-preset-core/-/mjml-preset-core-4.13.0.tgz", + "integrity": "sha512-gxzYaKkvUrHuzT1oqjEPSDtdmgEnN99Hf5f1r2CR5aMOB1x66EA3T8ATvF1o7qrBTVV4KMVlQem3IubMSYJZRw==", + "requires": { + "@babel/runtime": "^7.14.6", + "mjml-accordion": "4.13.0", + "mjml-body": "4.13.0", + "mjml-button": "4.13.0", + "mjml-carousel": "4.13.0", + "mjml-column": "4.13.0", + "mjml-divider": "4.13.0", + "mjml-group": "4.13.0", + "mjml-head": "4.13.0", + "mjml-head-attributes": "4.13.0", + "mjml-head-breakpoint": "4.13.0", + "mjml-head-font": "4.13.0", + "mjml-head-html-attributes": "4.13.0", + "mjml-head-preview": "4.13.0", + "mjml-head-style": "4.13.0", + "mjml-head-title": "4.13.0", + "mjml-hero": "4.13.0", + "mjml-image": "4.13.0", + "mjml-navbar": "4.13.0", + "mjml-raw": "4.13.0", + "mjml-section": "4.13.0", + "mjml-social": "4.13.0", + "mjml-spacer": "4.13.0", + "mjml-table": "4.13.0", + "mjml-text": "4.13.0", + "mjml-wrapper": "4.13.0" + } + }, + "mjml-raw": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-raw/-/mjml-raw-4.13.0.tgz", + "integrity": "sha512-JbBYxwX1a/zbqnCrlDCRNqov2xqUrMCaEdTHfqE2athj479aQXvLKFM20LilTMaClp/dR0yfvFLfFVrC5ej4FQ==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-section": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-section/-/mjml-section-4.13.0.tgz", + "integrity": "sha512-BLcqlhavtRakKtzDQPLv6Ae4Jt4imYWq/P0jo+Sjk7tP4QifgVA2KEQOirPK5ZUqw/lvK7Afhcths5rXZ2ItnQ==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-social": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-social/-/mjml-social-4.13.0.tgz", + "integrity": "sha512-zL2a7Wwsk8OXF0Bqu+1B3La1UPwdTMcEXptO8zdh2V5LL6Xb7Gfyvx6w0CmmBtG5IjyCtqaKy5wtrcpG9Hvjfg==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-spacer": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-spacer/-/mjml-spacer-4.13.0.tgz", + "integrity": "sha512-Acw4QJ0MJ38W4IewXuMX7hLaW1BZaln+gEEuTfrv0xwPdTxX1ILqz4r+s9mYMxYkIDLWMCjBvXyQK6aWlid13A==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-table": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-table/-/mjml-table-4.13.0.tgz", + "integrity": "sha512-UAWPVMaGReQhf776DFdiwdcJTIHTek3zzQ1pb+E7VlypEYgIpFvdUJ39UIiiflhqtdBATmHwKBOtePwU0MzFMg==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-text": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-text/-/mjml-text-4.13.0.tgz", + "integrity": "sha512-uDuraaQFdu+6xfuigCimbeznnOnJfwRdcCL1lTBTusTuEvW/5Va6m2D3mnMeEpl+bp4+cxesXIz9st6A9pcg5A==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0" + } + }, + "mjml-validator": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-validator/-/mjml-validator-4.13.0.tgz", + "integrity": "sha512-uURYfyQYtHJ6Qz/1A7/+E9ezfcoISoLZhYK3olsxKRViwaA2Mm8gy/J3yggZXnsUXWUns7Qymycm5LglLEIiQg==", + "requires": { + "@babel/runtime": "^7.14.6" + } + }, + "mjml-wrapper": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/mjml-wrapper/-/mjml-wrapper-4.13.0.tgz", + "integrity": "sha512-p/44JvHg04rAFR7QDImg8nZucEokIjFH6KJMHxsO0frJtLZ+IuakctzlZAADHsqiR52BwocDsXSa+o9SE2l6Ng==", + "requires": { + "@babel/runtime": "^7.14.6", + "lodash": "^4.17.21", + "mjml-core": "4.13.0", + "mjml-section": "4.13.0" + } + }, "mkdirp": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", @@ -13707,11 +18290,15 @@ "minimist": "^1.2.6" } }, + "moo": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz", + "integrity": "sha512-I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==" + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "multer": { "version": "1.4.4-lts.1", @@ -13739,6 +18326,24 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, + "nearley": { + "version": "2.20.1", + "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.20.1.tgz", + "integrity": "sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==", + "requires": { + "commander": "^2.19.0", + "moo": "^0.5.0", + "railroad-diagrams": "^1.0.0", + "randexp": "0.4.6" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + } + } + }, "negotiator": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", @@ -13747,8 +18352,20 @@ "neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==" + }, + "no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "requires": { + "lower-case": "^1.1.1" + } }, "node-emoji": { "version": "1.11.0", @@ -13779,11 +18396,23 @@ "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", "dev": true }, + "nodemailer": { + "version": "6.7.7", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.7.7.tgz", + "integrity": "sha512-pOLC/s+2I1EXuSqO5Wa34i3kXZG3gugDssH+ZNCevHad65tc8vQlCQpOLaUjopvkRQKm2Cki2aME7fEOPRy3bA==" + }, + "nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "requires": { + "abbrev": "1" + } + }, "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" }, "npm-run-path": { "version": "4.0.1", @@ -13794,6 +18423,14 @@ "path-key": "^3.0.0" } }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "requires": { + "boolbase": "~1.0.0" + } + }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -13834,6 +18471,15 @@ "mimic-fn": "^2.1.0" } }, + "open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "requires": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + } + }, "optionator": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", @@ -13917,6 +18563,40 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, + "pac-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-5.0.0.tgz", + "integrity": "sha512-CcFG3ZtnxO8McDigozwE3AqAw15zDvGH+OjXO4kzf7IkEKkQ4gxQ+3sdF50WmhQ4P/bVusXcqNE2S3XrNURwzQ==", + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4", + "get-uri": "3", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "5", + "pac-resolver": "^5.0.0", + "raw-body": "^2.2.0", + "socks-proxy-agent": "5" + } + }, + "pac-resolver": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-5.0.1.tgz", + "integrity": "sha512-cy7u00ko2KVgBAjuhevqpPeHIkCIqPe1v24cydhWjmeuzaBfmUWFCZJ1iAh5TuVzVZoUzXIW7K8sMYOZ84uZ9Q==", + "requires": { + "degenerator": "^3.0.2", + "ip": "^1.1.5", + "netmask": "^2.0.2" + } + }, + "param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==", + "requires": { + "no-case": "^2.2.0" + } + }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -13938,6 +18618,54 @@ "lines-and-columns": "^1.1.6" } }, + "parse5": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.0.0.tgz", + "integrity": "sha512-y/t8IXSPWTuRZqXc0ajH/UwDj4mnqLEbSttNbThcFhGrZuOyoyvNBO85PBp2jQa55wY9d07PBNjsK8ZP3K5U6g==", + "requires": { + "entities": "^4.3.0" + }, + "dependencies": { + "entities": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.3.1.tgz", + "integrity": "sha512-o4q/dYJlmyjP2zfnaWDUC6A3BQFmVTX+tZPezK7k0GLSU9QYCauscf5Y+qcEPzKL+EixVouYDgLQK5H9GrLpkg==" + } + } + }, + "parse5-htmlparser2-tree-adapter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "requires": { + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + }, + "dependencies": { + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "requires": { + "domelementtype": "^2.3.0" + } + } + } + }, + "parseley": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/parseley/-/parseley-0.7.0.tgz", + "integrity": "sha512-xyOytsdDu077M3/46Am+2cGXEKM9U9QclBDv7fimY7e+BBlxh2JcBp2mgNsmkyA9uvgyTjVzDi7cP1v4hcFxbw==", + "requires": { + "moo": "^0.5.1", + "nearley": "^2.20.1" + } + }, "parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -13963,8 +18691,7 @@ "path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "path-to-regexp": { "version": "3.2.0", @@ -13977,6 +18704,14 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, + "pick-util": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/pick-util/-/pick-util-1.1.5.tgz", + "integrity": "sha512-H0MaM8T7wpQ/azvB12ChZw7kpSFzjsgv3Z+N7fUWnL1McTGSEeroCngcK4eOPiFQq08rAyKX3hadcAB1kUqfXA==", + "requires": { + "@jonkemp/package-utils": "^1.0.8" + } + }, "picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", @@ -13986,8 +18721,7 @@ "picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" }, "pirates": { "version": "4.0.5", @@ -14050,11 +18784,33 @@ } } }, + "preview-email": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/preview-email/-/preview-email-3.0.5.tgz", + "integrity": "sha512-q37jdkVw+wic0o/7xYhOTBS4kF0WX3two0OepmR1Fhxp9NTpO3rJTccAjQm95gJx/2Wa/Nv98sr9pXIQ77/foA==", + "requires": { + "dayjs": "^1.10.6", + "debug": "^4.3.2", + "mailparser": "^3.3.0", + "nodemailer": "^6.6.3", + "open": "7", + "pug": "^3.0.2", + "uuid": "^8.3.2" + } + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "~2.0.3" + } + }, "prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", @@ -14065,6 +18821,11 @@ "sisteransi": "^1.0.5" } }, + "proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==" + }, "proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", @@ -14074,6 +18835,158 @@ "ipaddr.js": "1.9.1" } }, + "proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-5.0.0.tgz", + "integrity": "sha512-gkH7BkvLVkSfX9Dk27W6TyNOWWZWRilRfk1XxGNWOYJ2TuedAv1yFpCaU9QSBmBe716XOTNpYNOzhysyw8xn7g==", + "requires": { + "agent-base": "^6.0.0", + "debug": "4", + "http-proxy-agent": "^4.0.0", + "https-proxy-agent": "^5.0.0", + "lru-cache": "^5.1.1", + "pac-proxy-agent": "^5.0.0", + "proxy-from-env": "^1.0.0", + "socks-proxy-agent": "^5.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } + } + }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + }, + "pug": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.2.tgz", + "integrity": "sha512-bp0I/hiK1D1vChHh6EfDxtndHji55XP/ZJKwsRqrz6lRia6ZC2OZbdAymlxdVFwd1L70ebrVJw4/eZ79skrIaw==", + "requires": { + "pug-code-gen": "^3.0.2", + "pug-filters": "^4.0.0", + "pug-lexer": "^5.0.1", + "pug-linker": "^4.0.0", + "pug-load": "^3.0.0", + "pug-parser": "^6.0.0", + "pug-runtime": "^3.0.1", + "pug-strip-comments": "^2.0.0" + } + }, + "pug-attrs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-3.0.0.tgz", + "integrity": "sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==", + "requires": { + "constantinople": "^4.0.1", + "js-stringify": "^1.0.2", + "pug-runtime": "^3.0.0" + } + }, + "pug-code-gen": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.2.tgz", + "integrity": "sha512-nJMhW16MbiGRiyR4miDTQMRWDgKplnHyeLvioEJYbk1RsPI3FuA3saEP8uwnTb2nTJEKBU90NFVWJBk4OU5qyg==", + "requires": { + "constantinople": "^4.0.1", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.2", + "pug-attrs": "^3.0.0", + "pug-error": "^2.0.0", + "pug-runtime": "^3.0.0", + "void-elements": "^3.1.0", + "with": "^7.0.0" + } + }, + "pug-error": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.0.0.tgz", + "integrity": "sha512-sjiUsi9M4RAGHktC1drQfCr5C5eriu24Lfbt4s+7SykztEOwVZtbFk1RRq0tzLxcMxMYTBR+zMQaG07J/btayQ==" + }, + "pug-filters": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-4.0.0.tgz", + "integrity": "sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A==", + "requires": { + "constantinople": "^4.0.1", + "jstransformer": "1.0.0", + "pug-error": "^2.0.0", + "pug-walk": "^2.0.0", + "resolve": "^1.15.1" + } + }, + "pug-lexer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-5.0.1.tgz", + "integrity": "sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w==", + "requires": { + "character-parser": "^2.2.0", + "is-expression": "^4.0.0", + "pug-error": "^2.0.0" + } + }, + "pug-linker": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-4.0.0.tgz", + "integrity": "sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw==", + "requires": { + "pug-error": "^2.0.0", + "pug-walk": "^2.0.0" + } + }, + "pug-load": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-3.0.0.tgz", + "integrity": "sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ==", + "requires": { + "object-assign": "^4.1.1", + "pug-walk": "^2.0.0" + } + }, + "pug-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-6.0.0.tgz", + "integrity": "sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw==", + "requires": { + "pug-error": "^2.0.0", + "token-stream": "1.0.0" + } + }, + "pug-runtime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-3.0.1.tgz", + "integrity": "sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==" + }, + "pug-strip-comments": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz", + "integrity": "sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ==", + "requires": { + "pug-error": "^2.0.0" + } + }, + "pug-walk": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-2.0.0.tgz", + "integrity": "sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ==" + }, "pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -14104,6 +19017,20 @@ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", "dev": true }, + "railroad-diagrams": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz", + "integrity": "sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A==" + }, + "randexp": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz", + "integrity": "sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==", + "requires": { + "discontinuous-range": "1.0.0", + "ret": "~0.1.10" + } + }, "randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -14160,7 +19087,6 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, "requires": { "picomatch": "^2.2.1" } @@ -14179,17 +19105,36 @@ "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" }, + "regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" + }, "regexpp": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==" + }, + "remote-content": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remote-content/-/remote-content-3.0.0.tgz", + "integrity": "sha512-/hjCYVqWY/jYR07ptEJpClnYrGedSQ5AxCrEeMb3NlrxTgUK/7+iCOReE3z1QMYm3UL7sJX3o7cww/NC6UgyhA==", + "requires": { + "proxy-from-env": "^1.1.0", + "superagent": "^7.0.2", + "superagent-proxy": "^3.0.0" + } + }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" }, "require-from-string": { "version": "2.0.2", @@ -14201,7 +19146,6 @@ "version": "1.22.1", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, "requires": { "is-core-module": "^2.9.0", "path-parse": "^1.0.7", @@ -14247,6 +19191,11 @@ "signal-exit": "^3.0.2" } }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + }, "reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", @@ -14332,11 +19281,18 @@ } } }, + "selderee": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/selderee/-/selderee-0.6.0.tgz", + "integrity": "sha512-ibqWGV5aChDvfVdqNYuaJP/HnVBhlRGSRrlbttmlMpHcLuTqqbMH36QkSs9GEgj5M88JDYLI8eyP94JaQ8xRlg==", + "requires": { + "parseley": "^0.7.0" + } + }, "semver": { "version": "7.3.7", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, "requires": { "lru-cache": "^6.0.0" } @@ -14444,6 +19400,11 @@ "object-inspect": "^1.9.0" } }, + "sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==" + }, "signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -14462,6 +19423,35 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, + "slick": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/slick/-/slick-1.12.2.tgz", + "integrity": "sha512-4qdtOGcBjral6YIBCWJ0ljFSKNLz9KkhbWtuGvUyRowl1kxfuE1x/Z/aJcaiilpb3do9bl5K7/1h9XC5wWpY/A==" + }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==" + }, + "socks": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz", + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==", + "requires": { + "ip": "^1.1.5", + "smart-buffer": "^4.2.0" + } + }, + "socks-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz", + "integrity": "sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ==", + "requires": { + "agent-base": "^6.0.2", + "debug": "4", + "socks": "^2.3.3" + } + }, "source-map": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", @@ -14492,6 +19482,11 @@ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", "dev": true }, + "specificity": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", + "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==" + }, "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", @@ -14554,7 +19549,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -14565,7 +19559,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, "requires": { "ansi-regex": "^5.0.1" } @@ -14588,11 +19581,20 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, + "style-data": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/style-data/-/style-data-1.4.8.tgz", + "integrity": "sha512-RBJD+YQef4PzYKqC4PQEjDvyX709mwEClYg9u0A5EPXqdSkN2BtMnF/tW7EtS9Q0FnBF+lrWsK5+bEKqA+++Dg==", + "requires": { + "cheerio": "^0.22.0", + "mediaquery-text": "^1.2.0", + "pick-util": "^1.1.4" + } + }, "superagent": { "version": "7.1.5", "resolved": "https://registry.npmjs.org/superagent/-/superagent-7.1.5.tgz", "integrity": "sha512-HQYyGuDRFGmZ6GNC4hq2f37KnsY9Lr0/R1marNZTgMweVDQLTLJJ6DGQ9Tj/xVVs5HEnop9EMmTbywb5P30aqw==", - "dev": true, "requires": { "component-emitter": "^1.3.0", "cookiejar": "^2.1.3", @@ -14610,14 +19612,12 @@ "mime": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==" }, "readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -14626,6 +19626,15 @@ } } }, + "superagent-proxy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/superagent-proxy/-/superagent-proxy-3.0.0.tgz", + "integrity": "sha512-wAlRInOeDFyd9pyonrkJspdRAxdLrcsZ6aSnS+8+nu4x1aXbz6FWSTT9M6Ibze+eG60szlL7JA8wEIV7bPWuyQ==", + "requires": { + "debug": "^4.3.2", + "proxy-agent": "^5.0.0" + } + }, "supertest": { "version": "6.2.3", "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.2.3.tgz", @@ -14657,8 +19666,7 @@ "supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" }, "swagger-ui-dist": { "version": "4.12.0", @@ -14779,6 +19787,11 @@ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "dev": true }, + "tlds": { + "version": "1.231.0", + "resolved": "https://registry.npmjs.org/tlds/-/tlds-1.231.0.tgz", + "integrity": "sha512-L7UQwueHSkGxZHQBXHVmXW64oi+uqNtzFt2x6Ssk7NVnpIbw16CRs4eb/jmKOZ9t2JnqZ/b3Cfvo97lnXqKrhw==" + }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -14797,14 +19810,12 @@ "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, "requires": { "is-number": "^7.0.0" } @@ -14814,6 +19825,11 @@ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" }, + "token-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-1.0.0.tgz", + "integrity": "sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==" + }, "tr46": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", @@ -15018,6 +20034,16 @@ "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", "dev": true }, + "uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + }, + "uglify-js": { + "version": "3.16.2", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.16.2.tgz", + "integrity": "sha512-AaQNokTNgExWrkEYA24BTNMSjyqEXPSfhqoS0AxmHkCJ4U+Dyy5AvbGV/sqxuxficEfGGoX3zWw9R7QpLFfEsg==" + }, "universalify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", @@ -15039,6 +20065,11 @@ "picocolors": "^1.0.0" } }, + "upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==" + }, "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -15086,11 +20117,30 @@ "convert-source-map": "^1.6.0" } }, + "valid-data-url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/valid-data-url/-/valid-data-url-3.0.1.tgz", + "integrity": "sha512-jOWVmzVceKlVVdwjNSenT4PbGghU0SBIizAev8ofZVgivk/TVHXSbNL8LP6M3spZvkR9/QolkyJavGSX5Cs0UA==" + }, "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" }, + "vm2": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.10.tgz", + "integrity": "sha512-AuECTSvwu2OHLAZYhG716YzwodKCIJxB6u1zG7PgSQwIgAlEaoXH52bxdcvT8GkGjnYK7r7yWDW0m0sOsPuBjQ==", + "requires": { + "acorn": "^8.7.0", + "acorn-walk": "^8.2.0" + } + }, + "void-elements": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", + "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==" + }, "walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", @@ -15119,6 +20169,95 @@ "defaults": "^1.0.3" } }, + "web-resource-inliner": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/web-resource-inliner/-/web-resource-inliner-5.0.0.tgz", + "integrity": "sha512-AIihwH+ZmdHfkJm7BjSXiEClVt4zUFqX4YlFAzjL13wLtDuUneSaFvDBTbdYRecs35SiU7iNKbMnN+++wVfb6A==", + "requires": { + "ansi-colors": "^4.1.1", + "escape-goat": "^3.0.0", + "htmlparser2": "^4.0.0", + "mime": "^2.4.6", + "node-fetch": "^2.6.0", + "valid-data-url": "^3.0.0" + }, + "dependencies": { + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "dependencies": { + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + } + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz", + "integrity": "sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==", + "requires": { + "domelementtype": "^2.0.1" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "dependencies": { + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + } + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, + "htmlparser2": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz", + "integrity": "sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^3.0.0", + "domutils": "^2.0.0", + "entities": "^2.0.0" + } + }, + "mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==" + } + } + }, "webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", @@ -15229,17 +20368,31 @@ } } }, + "with": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/with/-/with-7.0.2.tgz", + "integrity": "sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==", + "requires": { + "@babel/parser": "^7.9.6", + "@babel/types": "^7.9.6", + "assert-never": "^1.2.1", + "babel-walk": "3.0.0-canary-5" + } + }, "word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==" }, "wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, "requires": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -15261,6 +20414,11 @@ "signal-exit": "^3.0.7" } }, + "xregexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", + "integrity": "sha512-xl/50/Cf32VsGq/1R8jJE5ajH1yMCQkpmoS10QbFZWl2Oor4H0Me64Pu2yxvsRWK3m6soJbmGfzSR7BYmDcWAA==" + }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", @@ -15269,14 +20427,12 @@ "y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yaml": { "version": "1.10.2", @@ -15310,8 +20466,7 @@ "yargs-parser": { "version": "20.2.9", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" }, "yn": { "version": "3.1.1", diff --git a/servicio-notificaciones/package.json b/servicio-notificaciones/package.json index bd1a9175..8987b218 100644 --- a/servicio-notificaciones/package.json +++ b/servicio-notificaciones/package.json @@ -21,12 +21,16 @@ "test:e2e": "jest --config ./test/jest-e2e.json" }, "dependencies": { + "@nestjs-modules/mailer": "^1.7.1", "@nestjs/common": "^8.0.0", + "@nestjs/config": "^2.2.0", "@nestjs/core": "^8.0.0", "@nestjs/mapped-types": "*", "@nestjs/microservices": "^8.4.7", "@nestjs/platform-express": "^8.0.0", "@nestjs/swagger": "^5.2.1", + "handlebars": "^4.7.7", + "nodemailer": "^6.7.7", "reflect-metadata": "^0.1.13", "rimraf": "^3.0.2", "rxjs": "^7.2.0", diff --git a/servicio-notificaciones/src/app.module.ts b/servicio-notificaciones/src/app.module.ts index bb34cfc8..9ce4e8cc 100644 --- a/servicio-notificaciones/src/app.module.ts +++ b/servicio-notificaciones/src/app.module.ts @@ -1,11 +1,45 @@ import { Module } from '@nestjs/common'; import { AppController } from './app.controller'; -import { NotificationsModule } from './notifications/notifications.module'; +import { MailerModule } from '@nestjs-modules/mailer'; import { ClientsModule, Transport } from "@nestjs/microservices"; +import { AuthModule } from './auth/auth.module'; +import { EmailController } from './email.controller'; +import { join } from 'path'; +import { HandlebarsAdapter } from '@nestjs-modules/mailer/dist/adapters/handlebars.adapter'; +import { ConfigModule, ConfigService } from '@nestjs/config'; @Module({ imports: [ + MailerModule.forRootAsync({ + // imports: [ConfigModule], // import module if not enabled globally + useFactory: async (config: ConfigService) => ({ + // transport: config.get("MAIL_TRANSPORT"), + // or + transport: { + host: config.get('MAIL_HOST'), + secure: false, + auth: { + user: config.get('MAIL_USER'), + pass: config.get('MAIL_PASSWORD'), + }, + }, + defaults: { + from: `"No Reply" <${config.get('MAIL_USER')}>`, + }, + template: { + dir: join(__dirname, 'mails'), + adapter: new HandlebarsAdapter(), + options: { + strict: true, + }, + }, + }), + inject: [ConfigService], + }), + ConfigModule.forRoot({ + isGlobal: true, // no need to import into other modules + }), ClientsModule.register([ { name: "SERVICIO_NOTIFICACIONES", @@ -16,8 +50,8 @@ import { ClientsModule, Transport } from "@nestjs/microservices"; } } ]), - NotificationsModule], - controllers: [AppController], + AuthModule], + controllers: [AppController, EmailController], providers: [], }) export class AppModule {} diff --git a/servicio-notificaciones/src/auth/auth.module.ts b/servicio-notificaciones/src/auth/auth.module.ts new file mode 100644 index 00000000..af8a5d4e --- /dev/null +++ b/servicio-notificaciones/src/auth/auth.module.ts @@ -0,0 +1,9 @@ +import { Module } from '@nestjs/common'; +//import { AuthController } from './auth.controller'; +import { AuthService } from './auth.service'; + +@Module({ + //controllers: [AuthController], + providers: [AuthService], +}) +export class AuthModule {} diff --git a/servicio-notificaciones/src/auth/auth.service.spec.ts b/servicio-notificaciones/src/auth/auth.service.spec.ts new file mode 100644 index 00000000..800ab662 --- /dev/null +++ b/servicio-notificaciones/src/auth/auth.service.spec.ts @@ -0,0 +1,18 @@ +import { Test, TestingModule } from '@nestjs/testing'; +import { AuthService } from './auth.service'; + +describe('AuthService', () => { + let service: AuthService; + + beforeEach(async () => { + const module: TestingModule = await Test.createTestingModule({ + providers: [AuthService], + }).compile(); + + service = module.get(AuthService); + }); + + it('should be defined', () => { + expect(service).toBeDefined(); + }); +}); diff --git a/servicio-notificaciones/src/auth/auth.service.ts b/servicio-notificaciones/src/auth/auth.service.ts new file mode 100644 index 00000000..015d7181 --- /dev/null +++ b/servicio-notificaciones/src/auth/auth.service.ts @@ -0,0 +1,13 @@ +import { Injectable } from '@nestjs/common'; +import { User } from './../user/user.entity'; + +@Injectable() +export class AuthService { + + async signUp(user: User) { + const token = Math.floor(1000 + Math.random() * 9000).toString(); + // create user in db + // ... + // send confirmation mail + } +} \ No newline at end of file diff --git a/servicio-notificaciones/src/email.controller.ts b/servicio-notificaciones/src/email.controller.ts new file mode 100644 index 00000000..1b607d22 --- /dev/null +++ b/servicio-notificaciones/src/email.controller.ts @@ -0,0 +1,38 @@ +import { Controller, Get, Query } from '@nestjs/common'; +import { MessagePattern, Payload } from '@nestjs/microservices'; + +import { MailerService } from '@nestjs-modules/mailer'; +import { User } from './user/user.entity'; + +@Controller() +export class EmailController { + constructor(private mailService: MailerService) { } + + @MessagePattern({ cmd: 'sendMail' }) + sendMail(@Payload() toEmail: string) { + + var response = this.mailService.sendMail({ + to: toEmail["email"], + from: "mbonilla.guti@gmail.com", + subject: 'Plain Text Email ✔', + text: 'Welcome NestJS Email Sending Tutorial', + }); + return response; + } + + @MessagePattern({ cmd: 'html' }) + async postHTMLEmail(@Payload() user: any) { + const url = "http://localhost:3000/"; + var response = await this.mailService.sendMail({ + to: user["email"], + from: "mbonilla.guti@gmail.com", + subject: 'HTML Dynamic Template', + template: 'confirmation', + context: { + name: user["name"], + url, + }, + }); + return response; + } +} diff --git a/servicio-notificaciones/src/mails/confirmation.hbs b/servicio-notificaciones/src/mails/confirmation.hbs new file mode 100644 index 00000000..9f082d28 --- /dev/null +++ b/servicio-notificaciones/src/mails/confirmation.hbs @@ -0,0 +1,7 @@ +

Hey {{ name }},

+

Please click below to confirm your email

+

+ Confirm +

+ +

If you did not request this email you can safely ignore it.

\ No newline at end of file diff --git a/servicio-notificaciones/src/user/user.entity.ts b/servicio-notificaciones/src/user/user.entity.ts new file mode 100644 index 00000000..95547694 --- /dev/null +++ b/servicio-notificaciones/src/user/user.entity.ts @@ -0,0 +1,4 @@ +export interface User { + email: string; + name: string; +} \ No newline at end of file diff --git a/servicio-usuarios/package-lock.json b/servicio-usuarios/package-lock.json index e044c9d9..bcc50489 100644 --- a/servicio-usuarios/package-lock.json +++ b/servicio-usuarios/package-lock.json @@ -5,6 +5,7 @@ "requires": true, "packages": { "": { + "name": "servicio-usuarios", "version": "0.0.1", "license": "UNLICENSED", "dependencies": { diff --git a/servicio-usuarios/src/app.module.ts b/servicio-usuarios/src/app.module.ts index 8aaf93a8..36bdf0c3 100644 --- a/servicio-usuarios/src/app.module.ts +++ b/servicio-usuarios/src/app.module.ts @@ -7,7 +7,7 @@ import { UsersModule } from './users/users.module'; imports: [ ClientsModule.register([ { - name: "SERVICIO_USUARIOS", + name: "SERVICIO_NOTIFICACIONES", transport: Transport.TCP, options: { host: "127.0.0.1", From 02ebc62a56d576a93fa97b446e840f20f9e54e88 Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 15 Jul 2022 19:02:17 -0600 Subject: [PATCH 02/61] envio de correos desde servicio usuarios --- api-gateway/src/app.controller.ts | 17 +++++ api-gateway/src/app.service.ts | 14 ++++ servicio-usuarios/src/app.module.ts | 2 +- .../src/users/users.controller.ts | 30 ++++++--- servicio-usuarios/src/users/users.module.ts | 11 +++ servicio-usuarios/src/users/users.service.ts | 67 +++++++++++++------ 6 files changed, 107 insertions(+), 34 deletions(-) diff --git a/api-gateway/src/app.controller.ts b/api-gateway/src/app.controller.ts index f0dfdb79..d3a45f7e 100644 --- a/api-gateway/src/app.controller.ts +++ b/api-gateway/src/app.controller.ts @@ -313,4 +313,21 @@ export class AppController { return this.appService.html(email, name); } + + // #==== API Users + @Post('user/testSendMail') + testSendMail( + @Body('dni') dni: string, + @Body('name') name: string, + @Body('last_name') last_name: string, + @Body('email') email: string, + @Body('phone') phone: number, + @Body('password') password: string, + @Body('user_type') user_type: string, + @Body('status') status: string, + @Body('date_entry') date_entry: Date, + ) { + return this.appService.testSendMail(dni, name, last_name, email, phone, password, + user_type, status, date_entry); + } } \ No newline at end of file diff --git a/api-gateway/src/app.service.ts b/api-gateway/src/app.service.ts index 6d4016c5..8af78e63 100644 --- a/api-gateway/src/app.service.ts +++ b/api-gateway/src/app.service.ts @@ -50,6 +50,20 @@ export class AppService { ); } + testSendMail(dni: string, name: string, last_name: string, email: string, phone: number + , password: string, user_type: string, status: string, date_entry: Date) { + const pattern = { cmd: 'testSendMail' }; + const payload = { + dni: dni, name: name, last_name: last_name, email: email, phone: phone, + password: password, user_type: user_type, status: status, date_entry: date_entry + }; + return this.clientUserApp + .send(pattern, payload) + .pipe( + map((message: string) => ({ message })), + ); + } + allUsers() { const pattern = { cmd: 'findAllUsers' }; const payload = {}; diff --git a/servicio-usuarios/src/app.module.ts b/servicio-usuarios/src/app.module.ts index 36bdf0c3..8aaf93a8 100644 --- a/servicio-usuarios/src/app.module.ts +++ b/servicio-usuarios/src/app.module.ts @@ -7,7 +7,7 @@ import { UsersModule } from './users/users.module'; imports: [ ClientsModule.register([ { - name: "SERVICIO_NOTIFICACIONES", + name: "SERVICIO_USUARIOS", transport: Transport.TCP, options: { host: "127.0.0.1", diff --git a/servicio-usuarios/src/users/users.controller.ts b/servicio-usuarios/src/users/users.controller.ts index d65748ce..87ed3541 100644 --- a/servicio-usuarios/src/users/users.controller.ts +++ b/servicio-usuarios/src/users/users.controller.ts @@ -5,7 +5,7 @@ import { UsersService } from './users.service'; @Controller() export class UsersController { - constructor(private readonly userService: UsersService) {} + constructor(private readonly userService: UsersService) { } @MessagePattern({ cmd: 'createUser' }) create(@Payload() user: UserDocument) { @@ -17,6 +17,8 @@ export class UsersController { return this.userService.create(user); } + + @MessagePattern({ cmd: 'findAllUsers' }) findAll() { return this.userService.findAll(); @@ -27,7 +29,7 @@ export class UsersController { let dni = id['dni']; return this.userService.findOneByDNI(dni); } - + @MessagePattern({ cmd: 'updateUser' }) update(@Payload() user: UserDocument) { return this.userService.update(user.id, user); @@ -41,10 +43,10 @@ export class UsersController { //inicio de sesion @MessagePattern({ cmd: 'loginUser' }) - findLogin(@Payload() body:string) { - let pemail= body['email']; - let ppassword= body['password']; - return this.userService.findLogin(pemail,ppassword); + findLogin(@Payload() body: string) { + let pemail = body['email']; + let ppassword = body['password']; + return this.userService.findLogin(pemail, ppassword); } //buscar solo admins del sistema @@ -53,9 +55,15 @@ export class UsersController { return this.userService.allUsersAdminSistema(); } - //buscar solo admins de comunidad - @MessagePattern({ cmd: 'findAdminComunidad' }) - allUsersAdminComunidad() { - return this.userService.allUsersAdminComunidad(); - } + //buscar solo admins de comunidad + @MessagePattern({ cmd: 'findAdminComunidad' }) + allUsersAdminComunidad() { + return this.userService.allUsersAdminComunidad(); + } + + //Prueba de envio de correo despues de registro, llamando a microservicio notificaciones + @MessagePattern({ cmd: 'testSendMail' }) + testSendMail(@Payload() user: UserDocument) { + return this.userService.testSendMail(user); + } } diff --git a/servicio-usuarios/src/users/users.module.ts b/servicio-usuarios/src/users/users.module.ts index 85a0925d..75fc3bd5 100644 --- a/servicio-usuarios/src/users/users.module.ts +++ b/servicio-usuarios/src/users/users.module.ts @@ -4,9 +4,20 @@ import { MongooseModule } from '@nestjs/mongoose'; import { UsersController } from './users.controller'; import { User, UserSchema } from '../schemas/user.schema'; +import { ClientsModule, Transport } from "@nestjs/microservices"; @Module({ imports: [ + ClientsModule.register([ + { + name: "SERVICIO_NOTIFICACIONES", + transport: Transport.TCP, + options: { + host: "127.0.0.1", + port: 3009 + } + } + ]), MongooseModule.forFeature([{ name: User.name, schema: UserSchema }]), ], controllers: [UsersController], diff --git a/servicio-usuarios/src/users/users.service.ts b/servicio-usuarios/src/users/users.service.ts index b7071691..63438e01 100644 --- a/servicio-usuarios/src/users/users.service.ts +++ b/servicio-usuarios/src/users/users.service.ts @@ -1,25 +1,32 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, Inject } from '@nestjs/common'; import { Model } from 'mongoose'; import { User, UserDocument } from '../schemas/user.schema'; import { InjectModel } from '@nestjs/mongoose'; -import {Md5} from "md5-typescript"; +import { Md5 } from "md5-typescript"; +import { map } from 'rxjs/operators'; + +import { RpcException, ClientProxy } from '@nestjs/microservices'; + + @Injectable() export class UsersService { constructor( @InjectModel(User.name) private readonly userModel: Model, - ) {} + @Inject('SERVICIO_NOTIFICACIONES') private readonly clientNotificationtApp: ClientProxy, + + ) { } private publicKey: string; async create(user: UserDocument): Promise { - let passwordEncriptada=Md5.init(user.password); - user.password=passwordEncriptada; + let passwordEncriptada = Md5.init(user.password); + user.password = passwordEncriptada; return this.userModel.create(user); } - async findAll(): Promise { + async findAll(): Promise { return this.userModel - .find() - .setOptions({ sanitizeFilter: true }) + .find() + .setOptions({ sanitizeFilter: true }) .exec(); } async findOne(id: string): Promise { @@ -41,18 +48,18 @@ export class UsersService { } //inicio de sesion - async findLogin(email: string, password: string) : Promise { - let repo1=this.userModel; + async findLogin(email: string, password: string): Promise { + let repo1 = this.userModel; let userReturn = new Promise((resolve, reject) => { - let repo =repo1; + let repo = repo1; - repo.find({ email : email }).exec((err, res) => { + repo.find({ email: email }).exec((err, res) => { if (err) { reject(err); } else { - let passwordEncriptada=Md5.init(password); - if (res[0].password==passwordEncriptada) { + let passwordEncriptada = Md5.init(password); + if (res[0].password == passwordEncriptada) { resolve(res[0]); } else { @@ -61,19 +68,35 @@ export class UsersService { } }); }); - - return userReturn; + + return userReturn; } //find admin del sistema - async allUsersAdminSistema(): Promise { + async allUsersAdminSistema(): Promise { return this.userModel.find({ user_type: 1 }).exec(); } - //find admin de comunidad - async allUsersAdminComunidad(): Promise { - return this.userModel.find({ user_type: 2 }).exec(); - } + //find admin de comunidad + async allUsersAdminComunidad(): Promise { + return this.userModel.find({ user_type: 2 }).exec(); + } + + async testSendMail(user: UserDocument) { + let passwordEncriptada = Md5.init(user.password); + user.password = passwordEncriptada; + this.userModel.create(user) + /*.then(() => { + + } );*/ + + const pattern = { cmd: 'html' }; + const payload = { email: user['email'], name: user['name'] }; + return this.clientNotificationtApp + .send(pattern, payload) + .pipe( + map((message: string) => ({ message })), + ); + } - } From 1d523e379781f489151908ddcd9861e86c6ac10d Mon Sep 17 00:00:00 2001 From: Mariela Date: Sat, 16 Jul 2022 18:08:10 -0600 Subject: [PATCH 03/61] email template --- .../src/email.controller.ts | 12 +- .../src/mails/images/email.png | Bin 0 -> 21708 bytes .../src/mails/templateEmail.hbs | 452 ++++++++++++++++++ 3 files changed, 462 insertions(+), 2 deletions(-) create mode 100644 servicio-notificaciones/src/mails/images/email.png create mode 100644 servicio-notificaciones/src/mails/templateEmail.hbs diff --git a/servicio-notificaciones/src/email.controller.ts b/servicio-notificaciones/src/email.controller.ts index 1b607d22..c18340a0 100644 --- a/servicio-notificaciones/src/email.controller.ts +++ b/servicio-notificaciones/src/email.controller.ts @@ -23,15 +23,23 @@ export class EmailController { @MessagePattern({ cmd: 'html' }) async postHTMLEmail(@Payload() user: any) { const url = "http://localhost:3000/"; + const image = "images/email.ong"; var response = await this.mailService.sendMail({ to: user["email"], from: "mbonilla.guti@gmail.com", subject: 'HTML Dynamic Template', - template: 'confirmation', + template: 'templateEmail', context: { name: user["name"], - url, + url }, + attachments: [ + { + filename: 'email.png', + path: __dirname +'/mails/images/email.png', + cid: 'logo' //my mistake was putting "cid:logo@cid" here! + } + ] }); return response; } diff --git a/servicio-notificaciones/src/mails/images/email.png b/servicio-notificaciones/src/mails/images/email.png new file mode 100644 index 0000000000000000000000000000000000000000..a8b4a74edf487d87ff828e3715e315d3ea47946f GIT binary patch literal 21708 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 literal 0 HcmV?d00001 diff --git a/servicio-notificaciones/src/mails/templateEmail.hbs b/servicio-notificaciones/src/mails/templateEmail.hbs new file mode 100644 index 00000000..bd29756a --- /dev/null +++ b/servicio-notificaciones/src/mails/templateEmail.hbs @@ -0,0 +1,452 @@ + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌  +
+ +
+ + + \ No newline at end of file From 9683bd4883148850c7c771752c7404c6c03f0cde Mon Sep 17 00:00:00 2001 From: Traym17 <51390112+Traym17@users.noreply.github.com> Date: Mon, 18 Jul 2022 20:55:01 -0600 Subject: [PATCH 04/61] =?UTF-8?q?Creaci=C3=B3n=20servicio=20de=20registrar?= =?UTF-8?q?=20guardas?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api-gateway/src/app.controller.ts | 17 +++ api-gateway/src/app.service.ts | 14 +++ .../src/users/users.controller.ts | 5 + web-ui/web-react/src/App.js | 3 + .../src/components/GuardasSeguridad.js | 108 ++++++++++++++++++ 5 files changed, 147 insertions(+) create mode 100644 web-ui/web-react/src/components/GuardasSeguridad.js diff --git a/api-gateway/src/app.controller.ts b/api-gateway/src/app.controller.ts index f3b09baf..ff3bfa32 100644 --- a/api-gateway/src/app.controller.ts +++ b/api-gateway/src/app.controller.ts @@ -22,6 +22,23 @@ export class AppController { user_type, status, date_entry); } + @Post('user/createGuard') + createGuard( + //Nombre, Apellidos, Correo electrónico, Cédula, Teléfono, Contraseña + @Body('dni') dni: string, + @Body('name') name: string, + @Body('last_name') last_name: string, + @Body('email') email: string, + @Body('phone') phone: number, + @Body('password') password: string, + @Body('user_type') user_type: string, + @Body('status') status: string, + @Body('date_entry') date_entry: Date, + ) { + return this.appService.createGuard(dni, name, last_name, email, phone, password, + user_type, status, date_entry); + } + @Post('user/createUser') createUser( @Body('dni') dni: string, diff --git a/api-gateway/src/app.service.ts b/api-gateway/src/app.service.ts index 4ede2579..8c88538d 100644 --- a/api-gateway/src/app.service.ts +++ b/api-gateway/src/app.service.ts @@ -50,6 +50,20 @@ export class AppService { ); } + createGuard(dni: string, name: string, last_name: string, email: string, phone: number + , password: string, user_type: string, status: string, date_entry: Date) { + const pattern = { cmd: 'createGuard' }; + const payload = { + dni: dni, name: name, last_name: last_name, email: email, phone: phone, + password: password, user_type: user_type, status: status, date_entry: date_entry + }; + return this.clientUserApp + .send(pattern, payload) + .pipe( + map((message: string) => ({ message })), + ); + } + allUsers() { const pattern = { cmd: 'findAllUsers' }; const payload = {}; diff --git a/servicio-usuarios/src/users/users.controller.ts b/servicio-usuarios/src/users/users.controller.ts index d65748ce..462a96e3 100644 --- a/servicio-usuarios/src/users/users.controller.ts +++ b/servicio-usuarios/src/users/users.controller.ts @@ -17,6 +17,11 @@ export class UsersController { return this.userService.create(user); } + @MessagePattern({ cmd: 'createGuard' }) + createGuard(@Payload() user: UserDocument) { + return this.userService.create(user); + } + @MessagePattern({ cmd: 'findAllUsers' }) findAll() { return this.userService.findAll(); diff --git a/web-ui/web-react/src/App.js b/web-ui/web-react/src/App.js index 83530986..2ee76365 100644 --- a/web-ui/web-react/src/App.js +++ b/web-ui/web-react/src/App.js @@ -30,6 +30,7 @@ import BlocksDemo from './templates/BlocksDemo'; import IconsDemo from './templates/IconsDemo'; import AdministradoresSistema from './components/AdministradoresSistema'; import AdministradoresComunidad from './components/AdministradoresComunidad'; +import GuardasSeguridad from './components/GuardasSeguridad'; import Crud from './pages/Crud'; import EmptyPage from './pages/EmptyPage'; @@ -165,6 +166,7 @@ const App = () => { {label: 'Dashboard', icon: 'pi pi-fw pi-home', to: '/'}, {label: 'Administradores del sistema', icon: 'pi pi-fw pi-id-card', to: '/administradoresSistema'}, {label: 'Administradores de comunidad', icon: 'pi pi-fw pi-id-card', to: '/administradoresComunidad'}, + {label: 'Guardas de seguridad', icon: 'pi pi-fw pi-id-card', to: '/guardasSeguridad'}, {label: 'Log in', icon: 'pi pi-fw pi-id-card', to: '/logIn'} ] }, @@ -320,6 +322,7 @@ const App = () => { + diff --git a/web-ui/web-react/src/components/GuardasSeguridad.js b/web-ui/web-react/src/components/GuardasSeguridad.js new file mode 100644 index 00000000..626f3faa --- /dev/null +++ b/web-ui/web-react/src/components/GuardasSeguridad.js @@ -0,0 +1,108 @@ +import React, { useEffect, useState } from 'react'; +import { InputText } from 'primereact/inputtext'; +import { Button } from 'primereact/button'; +import { DataTable } from 'primereact/datatable'; +import { Column } from 'primereact/column'; + +const GuardasSeguridad = () => { + + const [pokemones,setPokemones]=useState([]); + const [urlFetch,setUrlFetch]=useState('http://localhost:4000/user/findAdminSistema/'); + async function fetchP(){ + let nombres=await fetch(urlFetch, {method:'GET'}); + let pokemonesRes= await nombres.json(); + setPokemones(pokemonesRes.message); + console.log(pokemones); + } + useEffect(()=>{ + fetchP(); + },[]) + + function registrarAdmin() { + var data = { + dni: document.getElementById('identificacion').value, + name: document.getElementById('nombre').value, + last_name: document.getElementById('apellidos').value, + email: document.getElementById('correo_electronico').value, + phone: document.getElementById('telefono').value, + password: document.getElementById('correo_electronico').value, + user_type: "1", //1 es admin + status: "1" + }; + // console.log(data); + + fetch('http://localhost:4000/user/createAdminSystem/', { + cache: 'no-cache', + method: 'POST', + body: JSON.stringify(data), + headers: { + 'Content-Type': 'application/json' + } + }) + .then( + function (response) { + if (response.status != 201) + console.log('Ocurrió un error con el servicio: ' + response.status); + else + return response.json(); + } + ) + .then( + function (response) { + fetchP(); + } + ) + .catch( + err => console.log('Ocurrió un error con el fetch', err) + ); + } + + return ( +
+
+
+
Guardas de seguridad
+ + + + + + + +
+
+
+
+
Registro de un administrador del sistema
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+ +
+
+
+
+ + + ) +} + +export default React.memo(GuardasSeguridad); \ No newline at end of file From bb83aa148244b8fc34de0f324c0f49439ea81e3f Mon Sep 17 00:00:00 2001 From: Traym17 <51390112+Traym17@users.noreply.github.com> Date: Mon, 18 Jul 2022 21:33:36 -0600 Subject: [PATCH 05/61] Pruebas de cors --- api-gateway/package-lock.json | 1 + api-gateway/package.json | 1 + api-gateway/src/app.controller.ts | 3 +- api-gateway/src/app.service.ts | 4 +-- api-gateway/src/main.ts | 2 +- web-ui/web-react/package-lock.json | 22 +++++++++++++++ web-ui/web-react/package.json | 11 ++++---- .../src/components/GuardasSeguridad.js | 28 +++++++++++++------ 8 files changed, 55 insertions(+), 17 deletions(-) diff --git a/api-gateway/package-lock.json b/api-gateway/package-lock.json index 45818f0c..14bac898 100644 --- a/api-gateway/package-lock.json +++ b/api-gateway/package-lock.json @@ -12,6 +12,7 @@ "@nestjs/core": "^8.0.0", "@nestjs/microservices": "^8.4.7", "@nestjs/platform-express": "^8.0.0", + "cors": "^2.8.5", "reflect-metadata": "^0.1.13", "rimraf": "^3.0.2", "rxjs": "^7.2.0" diff --git a/api-gateway/package.json b/api-gateway/package.json index cdd17cfe..fb1d5eba 100644 --- a/api-gateway/package.json +++ b/api-gateway/package.json @@ -25,6 +25,7 @@ "@nestjs/core": "^8.0.0", "@nestjs/microservices": "^8.4.7", "@nestjs/platform-express": "^8.0.0", + "cors": "^2.8.5", "reflect-metadata": "^0.1.13", "rimraf": "^3.0.2", "rxjs": "^7.2.0" diff --git a/api-gateway/src/app.controller.ts b/api-gateway/src/app.controller.ts index ff3bfa32..7bcf7867 100644 --- a/api-gateway/src/app.controller.ts +++ b/api-gateway/src/app.controller.ts @@ -34,9 +34,10 @@ export class AppController { @Body('user_type') user_type: string, @Body('status') status: string, @Body('date_entry') date_entry: Date, + @Body('community_id') community_id:string ) { return this.appService.createGuard(dni, name, last_name, email, phone, password, - user_type, status, date_entry); + user_type, status, date_entry,community_id); } @Post('user/createUser') diff --git a/api-gateway/src/app.service.ts b/api-gateway/src/app.service.ts index 8c88538d..413b0737 100644 --- a/api-gateway/src/app.service.ts +++ b/api-gateway/src/app.service.ts @@ -51,11 +51,11 @@ export class AppService { } createGuard(dni: string, name: string, last_name: string, email: string, phone: number - , password: string, user_type: string, status: string, date_entry: Date) { + , password: string, user_type: string, status: string, date_entry: Date, community_id: string) { const pattern = { cmd: 'createGuard' }; const payload = { dni: dni, name: name, last_name: last_name, email: email, phone: phone, - password: password, user_type: user_type, status: status, date_entry: date_entry + password: password, user_type: user_type, status: status, date_entry: date_entry, community_id }; return this.clientUserApp .send(pattern, payload) diff --git a/api-gateway/src/main.ts b/api-gateway/src/main.ts index 3bea0f30..aba64268 100644 --- a/api-gateway/src/main.ts +++ b/api-gateway/src/main.ts @@ -4,6 +4,6 @@ const cors= require('cors'); async function bootstrap() { const app = await NestFactory.create(AppModule); await app.listen(4000); - app.use(cors()); + app.use(cors()) } bootstrap(); diff --git a/web-ui/web-react/package-lock.json b/web-ui/web-react/package-lock.json index 45064bbd..48c45103 100644 --- a/web-ui/web-react/package-lock.json +++ b/web-ui/web-react/package-lock.json @@ -17,6 +17,7 @@ "axios": "^0.19.0", "chart.js": "3.3.2", "classnames": "^2.2.6", + "cors": "^2.8.5", "primeflex": "3.1.0", "primeicons": "^5.0.0", "primereact": "7.2.0", @@ -5183,6 +5184,18 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/cosmiconfig": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", @@ -21869,6 +21882,15 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, "cosmiconfig": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", diff --git a/web-ui/web-react/package.json b/web-ui/web-react/package.json index 7c1031f7..00421d8f 100644 --- a/web-ui/web-react/package.json +++ b/web-ui/web-react/package.json @@ -12,12 +12,15 @@ "@fullcalendar/core": "^5.7.2", "@fullcalendar/daygrid": "^5.7.2", "@fullcalendar/interaction": "^5.7.2", - "@fullcalendar/timegrid": "^5.7.2", "@fullcalendar/react": "^5.7.0", + "@fullcalendar/timegrid": "^5.7.2", + "axios": "^0.19.0", "chart.js": "3.3.2", - "primereact": "7.2.0", + "classnames": "^2.2.6", + "cors": "^2.8.5", "primeflex": "3.1.0", "primeicons": "^5.0.0", + "primereact": "7.2.0", "prismjs": "1.9.0", "react": "^17.0.1", "react-app-polyfill": "^1.0.6", @@ -25,9 +28,7 @@ "react-router-dom": "^5.2.0", "react-scripts": "3.4.1", "react-transition-group": "^4.4.1", - "sass": "^1.32.8", - "axios": "^0.19.0", - "classnames": "^2.2.6" + "sass": "^1.32.8" }, "scripts": { "start": "react-scripts start", diff --git a/web-ui/web-react/src/components/GuardasSeguridad.js b/web-ui/web-react/src/components/GuardasSeguridad.js index 626f3faa..e3e05eb8 100644 --- a/web-ui/web-react/src/components/GuardasSeguridad.js +++ b/web-ui/web-react/src/components/GuardasSeguridad.js @@ -18,7 +18,7 @@ const GuardasSeguridad = () => { fetchP(); },[]) - function registrarAdmin() { + function registrarGuarda() { var data = { dni: document.getElementById('identificacion').value, name: document.getElementById('nombre').value, @@ -26,15 +26,27 @@ const GuardasSeguridad = () => { email: document.getElementById('correo_electronico').value, phone: document.getElementById('telefono').value, password: document.getElementById('correo_electronico').value, - user_type: "1", //1 es admin - status: "1" + user_type: "4", //4 es guarda + status: "1", + community_id:"62be68215692582bbfd77134" }; - // console.log(data); + var data2={ + dni: "98765", + name: "Danielito", + last_name: "Rodriguez", + email: "danirodriguez@gmail.com", + phone: 84664515, + password: "1203", + user_type: "2", + status: "4", + community_id:"62be68215692582bbfd77134" + } + console.log(data2); - fetch('http://localhost:4000/user/createAdminSystem/', { + fetch('http://localhost:4000/user/createGuard', { cache: 'no-cache', method: 'POST', - body: JSON.stringify(data), + body: JSON.stringify(data2), headers: { 'Content-Type': 'application/json' } @@ -73,7 +85,7 @@ const GuardasSeguridad = () => {
-
Registro de un administrador del sistema
+
Registro de un guarda de seguridad
@@ -95,7 +107,7 @@ const GuardasSeguridad = () => {
- +
From 537997bc408f2c858f522ce2c87c4710c314f4de Mon Sep 17 00:00:00 2001 From: Traym17 <51390112+Traym17@users.noreply.github.com> Date: Mon, 18 Jul 2022 22:28:56 -0600 Subject: [PATCH 06/61] Listar de guardas de seguridad --- api-gateway/package-lock.json | 11 +++++++++++ api-gateway/package.json | 1 + api-gateway/src/app.controller.ts | 8 ++++++-- api-gateway/src/app.service.ts | 10 ++++++++++ api-gateway/src/main.ts | 8 +++++++- servicio-comunidad-viviendas/package-lock.json | 1 - servicio-usuarios/package-lock.json | 1 + servicio-usuarios/package.json | 1 + servicio-usuarios/src/users/users.controller.ts | 6 ++++++ servicio-usuarios/src/users/users.service.ts | 4 ++++ web-ui/web-react/src/components/GuardasSeguridad.js | 3 ++- 11 files changed, 49 insertions(+), 5 deletions(-) diff --git a/api-gateway/package-lock.json b/api-gateway/package-lock.json index 14bac898..ffffe99e 100644 --- a/api-gateway/package-lock.json +++ b/api-gateway/package-lock.json @@ -12,6 +12,7 @@ "@nestjs/core": "^8.0.0", "@nestjs/microservices": "^8.4.7", "@nestjs/platform-express": "^8.0.0", + "@types/cors": "^2.8.12", "cors": "^2.8.5", "reflect-metadata": "^0.1.13", "rimraf": "^3.0.2", @@ -1883,6 +1884,11 @@ "integrity": "sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==", "dev": true }, + "node_modules/@types/cors": { + "version": "2.8.12", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", + "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==" + }, "node_modules/@types/eslint": { "version": "8.4.3", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.3.tgz", @@ -10109,6 +10115,11 @@ "integrity": "sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==", "dev": true }, + "@types/cors": { + "version": "2.8.12", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", + "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==" + }, "@types/eslint": { "version": "8.4.3", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.3.tgz", diff --git a/api-gateway/package.json b/api-gateway/package.json index fb1d5eba..78136508 100644 --- a/api-gateway/package.json +++ b/api-gateway/package.json @@ -25,6 +25,7 @@ "@nestjs/core": "^8.0.0", "@nestjs/microservices": "^8.4.7", "@nestjs/platform-express": "^8.0.0", + "@types/cors": "^2.8.12", "cors": "^2.8.5", "reflect-metadata": "^0.1.13", "rimraf": "^3.0.2", diff --git a/api-gateway/src/app.controller.ts b/api-gateway/src/app.controller.ts index 7bcf7867..8730ed02 100644 --- a/api-gateway/src/app.controller.ts +++ b/api-gateway/src/app.controller.ts @@ -1,10 +1,8 @@ import { Controller, Get, Post, Body, Param } from '@nestjs/common'; import { AppService } from "./app.service"; - @Controller() export class AppController { constructor(private readonly appService: AppService) { } - // #==== API Users @Post('user/createAdminSystem') createAdminSystem( @@ -79,6 +77,12 @@ export class AppController { allUsersAdminComunidad() { return this.appService.allUsersAdminComunidad(); } + @Get('user/findGuards/:community') + findGuardsCommunity( + @Param('community_id') community_id: string + ) { + return this.appService.findGuardsCommunity(community_id); + } @Get('user/find/:dni') findUser( diff --git a/api-gateway/src/app.service.ts b/api-gateway/src/app.service.ts index 413b0737..20bd90c9 100644 --- a/api-gateway/src/app.service.ts +++ b/api-gateway/src/app.service.ts @@ -105,6 +105,16 @@ export class AppService { ); } + findGuardsCommunity(community_id: string) { + const pattern = { cmd: 'findGuardsCommunity' }; + const payload = { community_id: community_id }; + return this.clientUserApp + .send(pattern, payload) + .pipe( + map((message: string) => ({ message })), + ); + } + inicioSesion(pEmail: string, pPassword: string) { const pattern = { cmd: 'loginUser' }; const payload = { email: pEmail, password: pPassword}; diff --git a/api-gateway/src/main.ts b/api-gateway/src/main.ts index aba64268..0a197e5f 100644 --- a/api-gateway/src/main.ts +++ b/api-gateway/src/main.ts @@ -3,7 +3,13 @@ import { AppModule } from './app.module'; const cors= require('cors'); async function bootstrap() { const app = await NestFactory.create(AppModule); + + app.enableCors({ + origin: 'http://localhost:3000', + methods: 'GET, PUT, POST, DELETE', + allowedHeaders: 'Content-Type, Authorization', + }); await app.listen(4000); - app.use(cors()) + //app.use(cors(enableCors)) } bootstrap(); diff --git a/servicio-comunidad-viviendas/package-lock.json b/servicio-comunidad-viviendas/package-lock.json index 22c95f9b..46dd3dd0 100644 --- a/servicio-comunidad-viviendas/package-lock.json +++ b/servicio-comunidad-viviendas/package-lock.json @@ -5,7 +5,6 @@ "requires": true, "packages": { "": { - "name": "servicio-comunidad-viviendas", "version": "0.0.1", "license": "UNLICENSED", "dependencies": { diff --git a/servicio-usuarios/package-lock.json b/servicio-usuarios/package-lock.json index e044c9d9..55f87407 100644 --- a/servicio-usuarios/package-lock.json +++ b/servicio-usuarios/package-lock.json @@ -16,6 +16,7 @@ "@nestjs/platform-express": "^8.0.0", "@nestjs/swagger": "^5.2.1", "buffer": "^5.7.1", + "cors": "^2.8.5", "crypto-browserify": "^3.12.0", "md5-typescript": "^1.0.5", "mongoose": "^6.4.1", diff --git a/servicio-usuarios/package.json b/servicio-usuarios/package.json index 453489ec..65b4ea6b 100644 --- a/servicio-usuarios/package.json +++ b/servicio-usuarios/package.json @@ -29,6 +29,7 @@ "@nestjs/platform-express": "^8.0.0", "@nestjs/swagger": "^5.2.1", "buffer": "^5.7.1", + "cors": "^2.8.5", "crypto-browserify": "^3.12.0", "md5-typescript": "^1.0.5", "mongoose": "^6.4.1", diff --git a/servicio-usuarios/src/users/users.controller.ts b/servicio-usuarios/src/users/users.controller.ts index 462a96e3..ba72ee15 100644 --- a/servicio-usuarios/src/users/users.controller.ts +++ b/servicio-usuarios/src/users/users.controller.ts @@ -32,6 +32,12 @@ export class UsersController { let dni = id['dni']; return this.userService.findOneByDNI(dni); } + + @MessagePattern({ cmd: 'findGuardsCommunity' }) + findGuardsCommunity(@Payload() community_id: string) { + let pcommunity_id = community_id['community_id']; + return this.userService.findGuardsCommunity(pcommunity_id); + } @MessagePattern({ cmd: 'updateUser' }) update(@Payload() user: UserDocument) { diff --git a/servicio-usuarios/src/users/users.service.ts b/servicio-usuarios/src/users/users.service.ts index b7071691..f4503498 100644 --- a/servicio-usuarios/src/users/users.service.ts +++ b/servicio-usuarios/src/users/users.service.ts @@ -70,6 +70,10 @@ export class UsersService { return this.userModel.find({ user_type: 1 }).exec(); } + //find admin del sistema + async findGuardsCommunity(pcommunity_id: string): Promise { + return this.userModel.find({ user_type: 4 }).exec(); + } //find admin de comunidad async allUsersAdminComunidad(): Promise { return this.userModel.find({ user_type: 2 }).exec(); diff --git a/web-ui/web-react/src/components/GuardasSeguridad.js b/web-ui/web-react/src/components/GuardasSeguridad.js index e3e05eb8..bc4ec2f8 100644 --- a/web-ui/web-react/src/components/GuardasSeguridad.js +++ b/web-ui/web-react/src/components/GuardasSeguridad.js @@ -7,7 +7,7 @@ import { Column } from 'primereact/column'; const GuardasSeguridad = () => { const [pokemones,setPokemones]=useState([]); - const [urlFetch,setUrlFetch]=useState('http://localhost:4000/user/findAdminSistema/'); + const [urlFetch,setUrlFetch]=useState('http://localhost:4000/user/findGuards/62be68215692582bbfd77134'); async function fetchP(){ let nombres=await fetch(urlFetch, {method:'GET'}); let pokemonesRes= await nombres.json(); @@ -46,6 +46,7 @@ const GuardasSeguridad = () => { fetch('http://localhost:4000/user/createGuard', { cache: 'no-cache', method: 'POST', + mode:'cors', body: JSON.stringify(data2), headers: { 'Content-Type': 'application/json' From 17604ace92363616e0f8e17fd0a545f5b755a0bb Mon Sep 17 00:00:00 2001 From: Mariela Date: Mon, 18 Jul 2022 22:33:30 -0600 Subject: [PATCH 07/61] listar comunidades de vivienda --- api-gateway/src/main.ts | 8 +++- .../src/schemas/house.schema.ts | 6 +-- servicio-usuarios/src/users/users.service.ts | 2 +- web-ui/web-react/src/App.js | 3 ++ .../src/components/ComunidadViviendas.js | 44 +++++++++++++++++++ 5 files changed, 57 insertions(+), 6 deletions(-) create mode 100644 web-ui/web-react/src/components/ComunidadViviendas.js diff --git a/api-gateway/src/main.ts b/api-gateway/src/main.ts index 3bea0f30..ead48887 100644 --- a/api-gateway/src/main.ts +++ b/api-gateway/src/main.ts @@ -1,9 +1,13 @@ import { NestFactory } from '@nestjs/core'; import { AppModule } from './app.module'; -const cors= require('cors'); +const cors = require('cors'); async function bootstrap() { const app = await NestFactory.create(AppModule); + app.enableCors({ + origin: 'http://localhost:3000', + methods: 'GET, PUT, POST, DELETE', + allowedHeaders: 'Content-Type, Authorization', + }); await app.listen(4000); - app.use(cors()); } bootstrap(); diff --git a/servicio-comunidad-viviendas/src/schemas/house.schema.ts b/servicio-comunidad-viviendas/src/schemas/house.schema.ts index 0ee35e1d..f8687b54 100644 --- a/servicio-comunidad-viviendas/src/schemas/house.schema.ts +++ b/servicio-comunidad-viviendas/src/schemas/house.schema.ts @@ -7,10 +7,10 @@ import { Tenant, TenantSchema } from './tenant.schema'; @Schema() export class House extends Document { @Prop({ default: " " }) - number: string; + number_house: string; - @Prop({ default: " " }) - description: string; + @Prop({ default: "desocupada" }) + state: string; @Prop({ type: TenantSchema, default: " " }) tenants: Tenant; diff --git a/servicio-usuarios/src/users/users.service.ts b/servicio-usuarios/src/users/users.service.ts index 63438e01..5e506697 100644 --- a/servicio-usuarios/src/users/users.service.ts +++ b/servicio-usuarios/src/users/users.service.ts @@ -16,7 +16,7 @@ export class UsersService { @Inject('SERVICIO_NOTIFICACIONES') private readonly clientNotificationtApp: ClientProxy, ) { } - private publicKey: string; + private publicKey: string; async create(user: UserDocument): Promise { let passwordEncriptada = Md5.init(user.password); user.password = passwordEncriptada; diff --git a/web-ui/web-react/src/App.js b/web-ui/web-react/src/App.js index 83530986..a98659e9 100644 --- a/web-ui/web-react/src/App.js +++ b/web-ui/web-react/src/App.js @@ -30,6 +30,7 @@ import BlocksDemo from './templates/BlocksDemo'; import IconsDemo from './templates/IconsDemo'; import AdministradoresSistema from './components/AdministradoresSistema'; import AdministradoresComunidad from './components/AdministradoresComunidad'; +import Communities from './components/ComunidadViviendas'; import Crud from './pages/Crud'; import EmptyPage from './pages/EmptyPage'; @@ -165,6 +166,7 @@ const App = () => { {label: 'Dashboard', icon: 'pi pi-fw pi-home', to: '/'}, {label: 'Administradores del sistema', icon: 'pi pi-fw pi-id-card', to: '/administradoresSistema'}, {label: 'Administradores de comunidad', icon: 'pi pi-fw pi-id-card', to: '/administradoresComunidad'}, + {label: 'Comunidadades', icon: 'pi pi-fw pi-id-card', to: '/comunidadesViviendas'}, {label: 'Log in', icon: 'pi pi-fw pi-id-card', to: '/logIn'} ] }, @@ -320,6 +322,7 @@ const App = () => { + diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js new file mode 100644 index 00000000..c088d151 --- /dev/null +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -0,0 +1,44 @@ +import React, { useEffect, useState } from 'react'; +import { InputText } from 'primereact/inputtext'; +import { Button } from 'primereact/button'; +import { DataTable } from 'primereact/datatable'; +import { Column } from 'primereact/column'; + + +const Communities = () => { + const [communitiesList, setCommunitiesList] = useState([]); + const [housesList, setHousesList] = useState([]); + + + async function getCommunites() { + let response = await fetch('http://localhost:4000/community/allCommunities', { method: 'GET' }); + let list = await response.json(); + setCommunitiesList(list.message); + } + + useEffect(() => { + getCommunites(); + }, []) + + + return ( +
+
+
+
Administradores de comunidad
+ + + + + + + +
+
+
+ + +) +} + +export default React.memo(Communities); \ No newline at end of file From 31ef827baf30d9b9eda6c21b91419de838fe0584 Mon Sep 17 00:00:00 2001 From: Mariela Date: Tue, 19 Jul 2022 13:56:48 -0600 Subject: [PATCH 08/61] get user admin comunidad de vivienda desde servicio comunidades --- api-gateway/src/app.controller.ts | 8 +++ api-gateway/src/app.service.ts | 12 ++++ .../src/communities/communities.controller.ts | 6 ++ .../src/communities/communities.module.ts | 11 ++++ .../src/communities/communities.service.ts | 57 ++++++++++++++++--- .../src/schemas/admin.entity.ts | 4 ++ .../src/schemas/community.schema.ts | 6 ++ .../src/schemas/house.schema.ts | 3 + .../src/users/users.controller.ts | 9 +++ servicio-usuarios/src/users/users.service.ts | 6 ++ .../src/components/ComunidadViviendas.js | 11 ++-- 11 files changed, 121 insertions(+), 12 deletions(-) create mode 100644 servicio-comunidad-viviendas/src/schemas/admin.entity.ts diff --git a/api-gateway/src/app.controller.ts b/api-gateway/src/app.controller.ts index d3a45f7e..b2b65e09 100644 --- a/api-gateway/src/app.controller.ts +++ b/api-gateway/src/app.controller.ts @@ -110,6 +110,14 @@ export class AppController { } + + @Post('community/findCommunityAdmin') + findCommunityAdmin( + @Body('community_id') community_id: string, + ) { + return this.appService.findCommunityAdmin(community_id); + } + // #==== API Common Areas @Post('commonArea/createCommonArea') createCommonArea( diff --git a/api-gateway/src/app.service.ts b/api-gateway/src/app.service.ts index 8af78e63..badc59ab 100644 --- a/api-gateway/src/app.service.ts +++ b/api-gateway/src/app.service.ts @@ -115,6 +115,18 @@ export class AppService { ); } + + //GET parameter from API + findCommunityAdmin(community_id: string) { + const pattern = { cmd: 'findCommunityAdmin' }; + const payload = { community_id: community_id }; + return this.clientCommunityApp + .send(pattern, payload) + .pipe( + map((message: string) => ({ message })), + ); + } + // ====================== COMMUNITIES =============================== //POST parameter from API diff --git a/servicio-comunidad-viviendas/src/communities/communities.controller.ts b/servicio-comunidad-viviendas/src/communities/communities.controller.ts index 457f4de6..159c67fa 100644 --- a/servicio-comunidad-viviendas/src/communities/communities.controller.ts +++ b/servicio-comunidad-viviendas/src/communities/communities.controller.ts @@ -29,6 +29,12 @@ export class CommunitiesController { return this.communitiesService.findOneName(_id); } + /* @MessagePattern({cmd: 'findCommunityAdmin'}) + findCommunityAdmin(@Payload() community: any) { + let _community = community['community_id']; + return this.communitiesService.findCommunityAdmin(_community, "2"); + }*/ + @MessagePattern({cmd: 'updateCommunity'}) update(@Payload() community: CommunityDocument) { return this.communitiesService.update(community.id, community); diff --git a/servicio-comunidad-viviendas/src/communities/communities.module.ts b/servicio-comunidad-viviendas/src/communities/communities.module.ts index e515e738..30c0d9b0 100644 --- a/servicio-comunidad-viviendas/src/communities/communities.module.ts +++ b/servicio-comunidad-viviendas/src/communities/communities.module.ts @@ -2,12 +2,23 @@ import { Module } from '@nestjs/common'; import { CommunitiesService } from './communities.service'; import { CommunitiesController } from './communities.controller'; import { MongooseModule } from '@nestjs/mongoose'; +import { ClientsModule, Transport } from "@nestjs/microservices"; import { Community, CommunitySchema } from '../schemas/community.schema'; @Module({ imports: [ + ClientsModule.register([ + { + name: "SERVICIO_USUARIOS", + transport: Transport.TCP, + options: { + host: "127.0.0.1", + port: 3001 + } + } + ]), MongooseModule.forFeature([{ name: Community.name, schema: CommunitySchema }]), ], controllers: [CommunitiesController], diff --git a/servicio-comunidad-viviendas/src/communities/communities.service.ts b/servicio-comunidad-viviendas/src/communities/communities.service.ts index 58b83794..a6679581 100644 --- a/servicio-comunidad-viviendas/src/communities/communities.service.ts +++ b/servicio-comunidad-viviendas/src/communities/communities.service.ts @@ -1,24 +1,50 @@ -import { Injectable } from '@nestjs/common'; +import { Injectable, Inject } from '@nestjs/common'; import { Model } from 'mongoose'; -import { Community, CommunityDocument } from 'src/schemas/community.schema'; +import { Community, CommunityDocument } from 'src/schemas/community.schema'; import { InjectModel } from '@nestjs/mongoose'; +import { RpcException, ClientProxy } from '@nestjs/microservices'; +import { from, lastValueFrom, map, scan, mergeMap } from 'rxjs'; +import { Admin } from 'src/schemas/admin.entity'; +import { appendFileSync } from 'fs'; + @Injectable() export class CommunitiesService { constructor( @InjectModel(Community.name) private readonly communityModel: Model, - ) {} + @Inject('SERVICIO_USUARIOS') private readonly clientUserApp: ClientProxy, + + ) { } async create(community: CommunityDocument): Promise { return this.communityModel.create(community); } - async findAll(): Promise { - return this.communityModel - .find() - .setOptions({ sanitizeFilter: true }) - .exec(); + async findAll(): Promise { + + return await this.communityModel + .find() + .setOptions({ sanitizeFilter: true }) + .exec() + .then( async community => { + if(community){ + await Promise.all(community.map(async c => { + let admin = await this.findCommunityAdmin(c["_id"], "2") + if(admin){ + c["id_admin"] = admin["_id"] + c["name_admin"] = admin["name"] + } + return c + })) + + console.log(community) + } + + return community; + }) + + //buscar al usuario con el id de la comunidad anexado } findOne(id: string): Promise { @@ -37,4 +63,19 @@ export class CommunitiesService { async remove(id: string) { return this.communityModel.findByIdAndRemove({ _id: id }).exec(); } + + async findCommunityAdmin(community: string, user_type: string) { + const pattern = { cmd: 'findOneCommunityUser' } + const payload = { community_id: community, user_type: user_type } + + let callback = await this.clientUserApp + .send(pattern, payload) + .pipe( + map((response: string) => ({ response })) + ) + + const finalValue = await lastValueFrom(callback); + return finalValue['response']; + + } } diff --git a/servicio-comunidad-viviendas/src/schemas/admin.entity.ts b/servicio-comunidad-viviendas/src/schemas/admin.entity.ts new file mode 100644 index 00000000..c9648048 --- /dev/null +++ b/servicio-comunidad-viviendas/src/schemas/admin.entity.ts @@ -0,0 +1,4 @@ +export interface Admin { + id_community: string; + user_type: string; +} \ No newline at end of file diff --git a/servicio-comunidad-viviendas/src/schemas/community.schema.ts b/servicio-comunidad-viviendas/src/schemas/community.schema.ts index c1b6ecf3..bc00ed43 100644 --- a/servicio-comunidad-viviendas/src/schemas/community.schema.ts +++ b/servicio-comunidad-viviendas/src/schemas/community.schema.ts @@ -7,6 +7,11 @@ export type CommunityDocument = Community & Document; @Schema({ collection: 'communities' }) export class Community { + @Prop() + id_admin: string; + + @Prop({ default: "Sin Administrador" }) + name_admin: string ; @Prop() name: string; @@ -37,6 +42,7 @@ export class Community { @Prop({ type: [HouseSchema] }) houses: Array; + } diff --git a/servicio-comunidad-viviendas/src/schemas/house.schema.ts b/servicio-comunidad-viviendas/src/schemas/house.schema.ts index f8687b54..905f8664 100644 --- a/servicio-comunidad-viviendas/src/schemas/house.schema.ts +++ b/servicio-comunidad-viviendas/src/schemas/house.schema.ts @@ -9,6 +9,9 @@ export class House extends Document { @Prop({ default: " " }) number_house: string; + @Prop({ default: " " }) + description: string; + @Prop({ default: "desocupada" }) state: string; diff --git a/servicio-usuarios/src/users/users.controller.ts b/servicio-usuarios/src/users/users.controller.ts index 87ed3541..7f4718dd 100644 --- a/servicio-usuarios/src/users/users.controller.ts +++ b/servicio-usuarios/src/users/users.controller.ts @@ -66,4 +66,13 @@ export class UsersController { testSendMail(@Payload() user: UserDocument) { return this.userService.testSendMail(user); } + + //buscar usuario de una comunidad + @MessagePattern({ cmd: 'findOneCommunityUser' }) + findCommunityUser(@Payload() user: any) { + return this.userService.findCommunityUser(user["community_id"], user["user_type"]); + } + + } + diff --git a/servicio-usuarios/src/users/users.service.ts b/servicio-usuarios/src/users/users.service.ts index 5e506697..2040c3b5 100644 --- a/servicio-usuarios/src/users/users.service.ts +++ b/servicio-usuarios/src/users/users.service.ts @@ -99,4 +99,10 @@ export class UsersService { ); } + + + async findCommunityUser(community_id: string, user_type: number): Promise { + return this.userModel.findOne({ community_id: community_id, user_type: user_type }).exec(); + } + } diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index c088d151..54ceef00 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -25,13 +25,16 @@ const Communities = () => {
-
Administradores de comunidad
+
Comunidades de Viviendas
- - - + + + + + +
From 5cc4830ed2cb6a30163b9d2c0e48e12e7dab68b2 Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Tue, 19 Jul 2022 19:48:51 -0600 Subject: [PATCH 09/61] =?UTF-8?q?arreglar=20t=C3=ADtulo=20de=20aplicaci?= =?UTF-8?q?=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit usar "Katoikia" --- web-ui/web-react/public/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-ui/web-react/public/index.html b/web-ui/web-react/public/index.html index 19890d71..94d7a824 100644 --- a/web-ui/web-react/public/index.html +++ b/web-ui/web-react/public/index.html @@ -2,7 +2,7 @@ - PrimeReact - Sakai + Katoikia From 30a36869641089868def5b39edf84f82cb8d39cd Mon Sep 17 00:00:00 2001 From: Maria Sanchez Date: Wed, 20 Jul 2022 09:59:03 -0600 Subject: [PATCH 10/61] css changes --- web-ui/web-react/postcss.config.js | 6 ++++++ web-ui/web-react/tailwind.config.js | 10 ++++++++++ 2 files changed, 16 insertions(+) create mode 100644 web-ui/web-react/postcss.config.js create mode 100644 web-ui/web-react/tailwind.config.js diff --git a/web-ui/web-react/postcss.config.js b/web-ui/web-react/postcss.config.js new file mode 100644 index 00000000..33ad091d --- /dev/null +++ b/web-ui/web-react/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/web-ui/web-react/tailwind.config.js b/web-ui/web-react/tailwind.config.js new file mode 100644 index 00000000..1490793a --- /dev/null +++ b/web-ui/web-react/tailwind.config.js @@ -0,0 +1,10 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: [ + "./src/**/*.{js,jsx,ts,tsx}", + ], + theme: { + extend: {}, + }, + plugins: [], +} From e88408eb7796e8053e0cdda15b9b01f81fe934d1 Mon Sep 17 00:00:00 2001 From: Mariela Date: Thu, 21 Jul 2022 00:15:43 -0600 Subject: [PATCH 11/61] =?UTF-8?q?provincias,=20cantones,=20distritos=20din?= =?UTF-8?q?=C3=A1micos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/communities/communities.service.ts | 14 +- .../public/assets/demo/data/cantones.json | 489 ++++ .../public/assets/demo/data/distritos.json | 2352 +++++++++++++++++ .../public/assets/demo/data/provincias.json | 30 + .../src/components/ComunidadViviendas.js | 169 +- 5 files changed, 3040 insertions(+), 14 deletions(-) create mode 100644 web-ui/web-react/public/assets/demo/data/cantones.json create mode 100644 web-ui/web-react/public/assets/demo/data/distritos.json create mode 100644 web-ui/web-react/public/assets/demo/data/provincias.json diff --git a/servicio-comunidad-viviendas/src/communities/communities.service.ts b/servicio-comunidad-viviendas/src/communities/communities.service.ts index a6679581..1b9b6bdf 100644 --- a/servicio-comunidad-viviendas/src/communities/communities.service.ts +++ b/servicio-comunidad-viviendas/src/communities/communities.service.ts @@ -27,24 +27,20 @@ export class CommunitiesService { .find() .setOptions({ sanitizeFilter: true }) .exec() - .then( async community => { - if(community){ + .then(async community => { + if (community) { await Promise.all(community.map(async c => { + //buscar al usuario con el id de la comunidad anexado let admin = await this.findCommunityAdmin(c["_id"], "2") - if(admin){ + if (admin) { c["id_admin"] = admin["_id"] c["name_admin"] = admin["name"] } return c })) - - console.log(community) } - - return community; + return community; }) - - //buscar al usuario con el id de la comunidad anexado } findOne(id: string): Promise { diff --git a/web-ui/web-react/public/assets/demo/data/cantones.json b/web-ui/web-react/public/assets/demo/data/cantones.json new file mode 100644 index 00000000..b6d91a36 --- /dev/null +++ b/web-ui/web-react/public/assets/demo/data/cantones.json @@ -0,0 +1,489 @@ +[ + { + "name": "San José", + "code": "101", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Escazú", + "code": "102", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Desamparados", + "code": "103", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Puriscal", + "code": "104", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Tarrazú", + "code": "105", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Aserrí­", + "code": "106", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Mora", + "code": "107", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Goicoechea", + "code": "108", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Santa Ana", + "code": "109", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Alajuelita", + "code": "110", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Vasquez de Coronado", + "code": "111", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Acosta", + "code": "112", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Tibás", + "code": "113", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Moravia", + "code": "114", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Montes de Oca", + "code": "115", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Turrubares", + "code": "116", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Dota", + "code": "117", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Curridabat", + "code": "118", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Pérez Zeledón", + "code": "119", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "León Cortés", + "code": "120", + "parentCode": "1", + "isoParent": "SJ" + }, + { + "name": "Alajuela", + "code": "201", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "San Ramón", + "code": "202", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Grecia", + "code": "203", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "San Mateo", + "code": "204", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Atenas", + "code": "205", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Naranjo", + "code": "206", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Palmares", + "code": "207", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Poás", + "code": "208", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Orotina", + "code": "209", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "San Carlos", + "code": "210", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Alfaro Ruiz", + "code": "211", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Valverde Vega", + "code": "212", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Upala", + "code": "213", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Los Chiles", + "code": "214", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Guatuso", + "code": "215", + "parentCode": "2", + "isoParent": "ALAJ" + }, + { + "name": "Cartago", + "code": "301", + "parentCode": "3", + "isoParent": "CAR" + }, + { + "name": "Paraí­so", + "code": "302", + "parentCode": "3", + "isoParent": "CAR" + }, + { + "name": "La Unión", + "code": "303", + "parentCode": "3", + "isoParent": "CAR" + }, + { + "name": "Jiménez", + "code": "304", + "parentCode": "3", + "isoParent": "CAR" + }, + { + "name": "Turrialba", + "code": "305", + "parentCode": "3", + "isoParent": "CAR" + }, + { + "name": "Alvarado", + "code": "306", + "parentCode": "3", + "isoParent": "CAR" + }, + { + "name": "Oreamuno", + "code": "307", + "parentCode": "3", + "isoParent": "CAR" + }, + { + "name": "El Guarco", + "code": "308", + "parentCode": "3", + "isoParent": "CAR" + }, + { + "name": "Heredia", + "code": "401", + "parentCode": "4", + "isoParent": "HER" + }, + { + "name": "Barva", + "code": "402", + "parentCode": "4", + "isoParent": "HER" + }, + { + "name": "Santo Domingo", + "code": "403", + "parentCode": "4", + "isoParent": "HER" + }, + { + "name": "Santa Bárbara", + "code": "404", + "parentCode": "4", + "isoParent": "HER" + }, + { + "name": "San Rafael", + "code": "405", + "parentCode": "4", + "isoParent": "HER" + }, + { + "name": "San Isidro", + "code": "406", + "parentCode": "4", + "isoParent": "HER" + }, + { + "name": "Belén", + "code": "407", + "parentCode": "4", + "isoParent": "HER" + }, + { + "name": "Flores", + "code": "408", + "parentCode": "4", + "isoParent": "HER" + }, + { + "name": "San Pablo", + "code": "409", + "parentCode": "4", + "isoParent": "HER" + }, + { + "name": "Sarapiquí­ ", + "code": "410", + "parentCode": "4", + "isoParent": "HER" + }, + { + "name": "Liberia", + "code": "501", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "Nicoya", + "code": "502", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "Santa Cruz", + "code": "503", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "Bagaces", + "code": "504", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "Carrillo", + "code": "505", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "Cañas", + "code": "506", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "Abangares", + "code": "507", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "Tilarán", + "code": "508", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "Nandayure", + "code": "509", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "La Cruz", + "code": "510", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "Hojancha", + "code": "511", + "parentCode": "5", + "isoParent": "GUANA" + }, + { + "name": "Puntarenas", + "code": "601", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Esparza", + "code": "602", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Buenos Aires", + "code": "603", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Montes de Oro", + "code": "604", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Osa", + "code": "605", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Aguirre", + "code": "606", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Golfito", + "code": "607", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Coto Brus", + "code": "608", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Parrita", + "code": "609", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Corredores", + "code": "610", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Garabito", + "code": "611", + "parentCode": "6", + "isoParent": "PUNT" + }, + { + "name": "Limón", + "code": "701", + "parentCode": "7", + "isoParent": "LIM" + }, + { + "name": "Pococí­", + "code": "702", + "parentCode": "7", + "isoParent": "LIM" + }, + { + "name": "Siquirres ", + "code": "703", + "parentCode": "7", + "isoParent": "LIM" + }, + { + "name": "Talamanca", + "code": "704", + "parentCode": "7", + "isoParent": "LIM" + }, + { + "name": "Matina", + "code": "705", + "parentCode": "7", + "isoParent": "LIM" + }, + { + "name": "Guácimo", + "code": "706", + "parentCode": "7", + "isoParent": "LIM" + } + ] + \ No newline at end of file diff --git a/web-ui/web-react/public/assets/demo/data/distritos.json b/web-ui/web-react/public/assets/demo/data/distritos.json new file mode 100644 index 00000000..f82239a0 --- /dev/null +++ b/web-ui/web-react/public/assets/demo/data/distritos.json @@ -0,0 +1,2352 @@ +[ + { + "name": "Carmen", + "code": "10101", + "parentCode": "101" + }, + { + "name": "Merced", + "code": "10102", + "parentCode": "101" + }, + { + "name": "Hospital", + "code": "10103", + "parentCode": "101" + }, + { + "name": "Catedral", + "code": "10104", + "parentCode": "101" + }, + { + "name": "Zapote", + "code": "10105", + "parentCode": "101" + }, + { + "name": "San Francisco de Dos Ríos", + "code": "10106", + "parentCode": "101" + }, + { + "name": "Uruca", + "code": "10107", + "parentCode": "101" + }, + { + "name": "Mata Redonda", + "code": "10108", + "parentCode": "101" + }, + { + "name": "Pavas", + "code": "10109", + "parentCode": "101" + }, + { + "name": "Hatillo", + "code": "10110", + "parentCode": "101" + }, + { + "name": "San Sebastián", + "code": "10111", + "parentCode": "101" + }, + { + "name": "Escazú", + "code": "10201", + "parentCode": "102" + }, + { + "name": "San Antonio", + "code": "10202", + "parentCode": "102" + }, + { + "name": "San Rafael", + "code": "10203", + "parentCode": "102" + }, + { + "name": "Desamparados", + "code": "10301", + "parentCode": "103" + }, + { + "name": "San Miguel", + "code": "10302", + "parentCode": "103" + }, + { + "name": "San Juan de Dios", + "code": "10303", + "parentCode": "103" + }, + { + "name": "San Rafael Arriba", + "code": "10304", + "parentCode": "103" + }, + { + "name": "San Antonio", + "code": "10305", + "parentCode": "103" + }, + { + "name": "Frailes", + "code": "10306", + "parentCode": "103" + }, + { + "name": "Patarrá", + "code": "10307", + "parentCode": "103" + }, + { + "name": "San Cristóbal", + "code": "10308", + "parentCode": "103" + }, + { + "name": "Rosario", + "code": "10309", + "parentCode": "103" + }, + { + "name": "Damas", + "code": "10310", + "parentCode": "103" + }, + { + "name": "San Rafael Abajo", + "code": "10311", + "parentCode": "103" + }, + { + "name": "Gravilias", + "code": "10312", + "parentCode": "103" + }, + { + "name": "Los Guido", + "code": "10313", + "parentCode": "103" + }, + { + "name": "Santiago", + "code": "10401", + "parentCode": "104" + }, + { + "name": "Mercedes Sur", + "code": "10402", + "parentCode": "104" + }, + { + "name": "Barbacoas", + "code": "10403", + "parentCode": "104" + }, + { + "name": "Grifo Alto", + "code": "10404", + "parentCode": "104" + }, + { + "name": "San Rafael", + "code": "10405", + "parentCode": "104" + }, + { + "name": "Candelaria", + "code": "10406", + "parentCode": "104" + }, + { + "name": "Desamparaditos", + "code": "10407", + "parentCode": "104" + }, + { + "name": "San Antonio", + "code": "10408", + "parentCode": "104" + }, + { + "name": "Chires", + "code": "10409", + "parentCode": "104" + }, + { + "name": "San Marcos", + "code": "10501", + "parentCode": "105" + }, + { + "name": "San Lorenzo", + "code": "10502", + "parentCode": "105" + }, + { + "name": "San Carlos", + "code": "10503", + "parentCode": "105" + }, + { + "name": "Aserrí", + "code": "10601", + "parentCode": "106" + }, + { + "name": "Tarbaca o Praga", + "code": "10602", + "parentCode": "106" + }, + { + "name": "Vuelta de Jorco", + "code": "10603", + "parentCode": "106" + }, + { + "name": "San Gabriel", + "code": "10604", + "parentCode": "106" + }, + { + "name": "La Legua", + "code": "10605", + "parentCode": "106" + }, + { + "name": "Monterrey", + "code": "10606", + "parentCode": "106" + }, + { + "name": "Salitrillos", + "code": "10607", + "parentCode": "106" + }, + { + "name": "Colón", + "code": "10701", + "parentCode": "107" + }, + { + "name": "Guayabo", + "code": "10702", + "parentCode": "107" + }, + { + "name": "Tabarcia", + "code": "10703", + "parentCode": "107" + }, + { + "name": "Piedras Negras", + "code": "10704", + "parentCode": "107" + }, + { + "name": "Picagres", + "code": "10705", + "parentCode": "107" + }, + { + "name": "Guadalupe", + "code": "10801", + "parentCode": "108" + }, + { + "name": "San Francisco", + "code": "10802", + "parentCode": "108" + }, + { + "name": "Calle Blancos", + "code": "10803", + "parentCode": "108" + }, + { + "name": "Mata de Plátano", + "code": "10804", + "parentCode": "108" + }, + { + "name": "Ipís", + "code": "10805", + "parentCode": "108" + }, + { + "name": "Rancho Redondo", + "code": "10806", + "parentCode": "108" + }, + { + "name": "Purral", + "code": "10807", + "parentCode": "108" + }, + { + "name": "Santa Ana", + "code": "10901", + "parentCode": "109" + }, + { + "name": "Salitral", + "code": "10902", + "parentCode": "109" + }, + { + "name": "Pozos o Concepción", + "code": "10903", + "parentCode": "109" + }, + { + "name": "Uruca o San Joaquín", + "code": "10904", + "parentCode": "109" + }, + { + "name": "Piedades", + "code": "10905", + "parentCode": "109" + }, + { + "name": "Brasil", + "code": "10906", + "parentCode": "109" + }, + { + "name": "Alajuelita", + "code": "11001", + "parentCode": "110" + }, + { + "name": "San Josecito", + "code": "11002", + "parentCode": "110" + }, + { + "name": "San Antonio", + "code": "11003", + "parentCode": "110" + }, + { + "name": "Concepción", + "code": "11004", + "parentCode": "110" + }, + { + "name": "San Felipe", + "code": "11005", + "parentCode": "110" + }, + { + "name": "San Isidro", + "code": "11101", + "parentCode": "111" + }, + { + "name": "San Rafael", + "code": "11102", + "parentCode": "111" + }, + { + "name": "Dulce Name de Jesús", + "code": "11103", + "parentCode": "111" + }, + { + "name": "Patalillo", + "code": "11104", + "parentCode": "111" + }, + { + "name": "Cascajal", + "code": "11105", + "parentCode": "111" + }, + { + "name": "San Ignacio", + "code": "11201", + "parentCode": "112" + }, + { + "name": "Guaitil", + "code": "11202", + "parentCode": "112" + }, + { + "name": "Palmichal", + "code": "11203", + "parentCode": "112" + }, + { + "name": "Cangrejal", + "code": "11204", + "parentCode": "112" + }, + { + "name": "Sabanillas", + "code": "11205", + "parentCode": "112" + }, + { + "name": "San Juan", + "code": "11301", + "parentCode": "113" + }, + { + "name": "Cinco Esquinas", + "code": "11302", + "parentCode": "113" + }, + { + "name": "Anselmo Llorente", + "code": "11303", + "parentCode": "113" + }, + { + "name": "León XIII", + "code": "11304", + "parentCode": "113" + }, + { + "name": "Colima", + "code": "11305", + "parentCode": "113" + }, + { + "name": "San Vicente", + "code": "11401", + "parentCode": "114" + }, + { + "name": "San Jerónimo", + "code": "11402", + "parentCode": "114" + }, + { + "name": "Trinidad", + "code": "11403", + "parentCode": "114" + }, + { + "name": "San Pedro", + "code": "11501", + "parentCode": "115" + }, + { + "name": "Sabanilla", + "code": "11502", + "parentCode": "115" + }, + { + "name": "Mercedes o Betania", + "code": "11503", + "parentCode": "115" + }, + { + "name": "San Rafael", + "code": "11504", + "parentCode": "115" + }, + { + "name": "San Pablo", + "code": "11601", + "parentCode": "116" + }, + { + "name": "San Pedro", + "code": "11602", + "parentCode": "116" + }, + { + "name": "San Juan de Mata", + "code": "11603", + "parentCode": "116" + }, + { + "name": "San Luis", + "code": "11604", + "parentCode": "116" + }, + { + "name": "Cárara", + "code": "11605", + "parentCode": "116" + }, + { + "name": "Santa María", + "code": "11701", + "parentCode": "117" + }, + { + "name": "Jardín", + "code": "11702", + "parentCode": "117" + }, + { + "name": "Copey", + "code": "11703", + "parentCode": "117" + }, + { + "name": "Curridabat", + "code": "11801", + "parentCode": "118" + }, + { + "name": "Granadilla", + "code": "11802", + "parentCode": "118" + }, + { + "name": "Sánchez", + "code": "11803", + "parentCode": "118" + }, + { + "name": "Tirrases", + "code": "11804", + "parentCode": "118" + }, + { + "name": "San Isidro de el General", + "code": "11901", + "parentCode": "119" + }, + { + "name": "General", + "code": "11902", + "parentCode": "119" + }, + { + "name": "Daniel Flores", + "code": "11903", + "parentCode": "119" + }, + { + "name": "Rivas", + "code": "11904", + "parentCode": "119" + }, + { + "name": "San Pedro", + "code": "11905", + "parentCode": "119" + }, + { + "name": "Platanares", + "code": "11906", + "parentCode": "119" + }, + { + "name": "Pejibaye", + "code": "11907", + "parentCode": "119" + }, + { + "name": "Cajón", + "code": "11908", + "parentCode": "119" + }, + { + "name": "Barú", + "code": "11909", + "parentCode": "119" + }, + { + "name": "Río Nuevo", + "code": "11910", + "parentCode": "119" + }, + { + "name": "Páramo", + "code": "11911", + "parentCode": "119" + }, + { + "name": "San Pablo", + "code": "12001", + "parentCode": "120" + }, + { + "name": "San Andrés", + "code": "12002", + "parentCode": "120" + }, + { + "name": "Llano Bonito", + "code": "12003", + "parentCode": "120" + }, + { + "name": "San Isidro", + "code": "12004", + "parentCode": "120" + }, + { + "name": "Santa Cruz", + "code": "12005", + "parentCode": "120" + }, + { + "name": "San Antonio", + "code": "12006", + "parentCode": "120" + }, + { + "name": "Alajuela", + "code": "20101", + "parentCode": "201" + }, + { + "name": "San José", + "code": "20102", + "parentCode": "201" + }, + { + "name": "Carrizal", + "code": "20103", + "parentCode": "201" + }, + { + "name": "San Antonio", + "code": "20104", + "parentCode": "201" + }, + { + "name": "Guácima", + "code": "20105", + "parentCode": "201" + }, + { + "name": "San Isidro", + "code": "20106", + "parentCode": "201" + }, + { + "name": "Sabanilla", + "code": "20107", + "parentCode": "201" + }, + { + "name": "San Rafael", + "code": "20108", + "parentCode": "201" + }, + { + "name": "Río Segundo", + "code": "20109", + "parentCode": "201" + }, + { + "name": "Desamparados", + "code": "20110", + "parentCode": "201" + }, + { + "name": "Turrucares", + "code": "20111", + "parentCode": "201" + }, + { + "name": "Tambor", + "code": "20112", + "parentCode": "201" + }, + { + "name": "La Garita", + "code": "20113", + "parentCode": "201" + }, + { + "name": "Sarapiquí", + "code": "20114", + "parentCode": "201" + }, + { + "name": "San Ramón", + "code": "20201", + "parentCode": "202" + }, + { + "name": "Santiago", + "code": "20202", + "parentCode": "202" + }, + { + "name": "San Juan", + "code": "20203", + "parentCode": "202" + }, + { + "name": "Piedades Norte", + "code": "20204", + "parentCode": "202" + }, + { + "name": "Piedades Sur", + "code": "20205", + "parentCode": "202" + }, + { + "name": "San Rafael", + "code": "20206", + "parentCode": "202" + }, + { + "name": "San Isidro", + "code": "20207", + "parentCode": "202" + }, + { + "name": "Angeles", + "code": "20208", + "parentCode": "202" + }, + { + "name": "Alfaro", + "code": "20209", + "parentCode": "202" + }, + { + "name": "Volio", + "code": "20210", + "parentCode": "202" + }, + { + "name": "Concepción", + "code": "20211", + "parentCode": "202" + }, + { + "name": "Zapotal", + "code": "20212", + "parentCode": "202" + }, + { + "name": "San Isidro de Peñas Blancas", + "code": "20213", + "parentCode": "202" + }, + { + "name": "Grecia", + "code": "20301", + "parentCode": "203" + }, + { + "name": "San Isidro", + "code": "20302", + "parentCode": "203" + }, + { + "name": "San José", + "code": "20303", + "parentCode": "203" + }, + { + "name": "San Roque", + "code": "20304", + "parentCode": "203" + }, + { + "name": "Tacares", + "code": "20305", + "parentCode": "203" + }, + { + "name": "Río Cuarto", + "code": "20306", + "parentCode": "203" + }, + { + "name": "Puente Piedra", + "code": "20307", + "parentCode": "203" + }, + { + "name": "Bolívar", + "code": "20308", + "parentCode": "203" + }, + { + "name": "San Mateo", + "code": "20401", + "parentCode": "204" + }, + { + "name": "Desmonte", + "code": "20402", + "parentCode": "204" + }, + { + "name": "Jesús María", + "code": "20403", + "parentCode": "204" + }, + { + "name": "Atenas", + "code": "20501", + "parentCode": "205" + }, + { + "name": "Jesús", + "code": "20502", + "parentCode": "205" + }, + { + "name": "Mercedes", + "code": "20503", + "parentCode": "205" + }, + { + "name": "San Isidro", + "code": "20504", + "parentCode": "205" + }, + { + "name": "Concepción", + "code": "20505", + "parentCode": "205" + }, + { + "name": "San José", + "code": "20506", + "parentCode": "205" + }, + { + "name": "Santa Eulalia", + "code": "20507", + "parentCode": "205" + }, + { + "name": "Escobal", + "code": "20508", + "parentCode": "205" + }, + { + "name": "Naranjo", + "code": "20601", + "parentCode": "206" + }, + { + "name": "San Miguel", + "code": "20602", + "parentCode": "206" + }, + { + "name": "San José", + "code": "20603", + "parentCode": "206" + }, + { + "name": "Cirrí Sur", + "code": "20604", + "parentCode": "206" + }, + { + "name": "San Jerónimo", + "code": "20605", + "parentCode": "206" + }, + { + "name": "San Juan", + "code": "20606", + "parentCode": "206" + }, + { + "name": "Rosario", + "code": "20607", + "parentCode": "206" + }, + { + "name": "Palmares", + "code": "20701", + "parentCode": "207" + }, + { + "name": "Zaragoza", + "code": "20702", + "parentCode": "207" + }, + { + "name": "Buenos Aires", + "code": "20703", + "parentCode": "207" + }, + { + "name": "Santiago", + "code": "20704", + "parentCode": "207" + }, + { + "name": "Candelaria", + "code": "20705", + "parentCode": "207" + }, + { + "name": "Esquipulas", + "code": "20706", + "parentCode": "207" + }, + { + "name": "La Granja", + "code": "20707", + "parentCode": "207" + }, + { + "name": "San Pedro", + "code": "20801", + "parentCode": "208" + }, + { + "name": "San Juan", + "code": "20802", + "parentCode": "208" + }, + { + "name": "San Rafael", + "code": "20803", + "parentCode": "208" + }, + { + "name": "Carrillos", + "code": "20804", + "parentCode": "208" + }, + { + "name": "Sabana Redonda", + "code": "20805", + "parentCode": "208" + }, + { + "name": "Orotina", + "code": "20901", + "parentCode": "209" + }, + { + "name": "Mastate", + "code": "20902", + "parentCode": "209" + }, + { + "name": "Hacienda Vieja", + "code": "20903", + "parentCode": "209" + }, + { + "name": "Coyolar", + "code": "20904", + "parentCode": "209" + }, + { + "name": "Ceiba", + "code": "20905", + "parentCode": "209" + }, + { + "name": "Quesada", + "code": "21001", + "parentCode": "210" + }, + { + "name": "Florencia", + "code": "21002", + "parentCode": "210" + }, + { + "name": "Buenavista", + "code": "21003", + "parentCode": "210" + }, + { + "name": "Aguas Zarcas", + "code": "21004", + "parentCode": "210" + }, + { + "name": "Venecia", + "code": "21005", + "parentCode": "210" + }, + { + "name": "Pital", + "code": "21006", + "parentCode": "210" + }, + { + "name": "Fortuna", + "code": "21007", + "parentCode": "210" + }, + { + "name": "Tigra", + "code": "21008", + "parentCode": "210" + }, + { + "name": "Palmera", + "code": "21009", + "parentCode": "210" + }, + { + "name": "Venado", + "code": "21010", + "parentCode": "210" + }, + { + "name": "Cutris", + "code": "21011", + "parentCode": "210" + }, + { + "name": "Monterrey", + "code": "21012", + "parentCode": "210" + }, + { + "name": "Pocosol", + "code": "21013", + "parentCode": "210" + }, + { + "name": "Zarcero", + "code": "21101", + "parentCode": "211" + }, + { + "name": "Laguna", + "code": "21102", + "parentCode": "211" + }, + { + "name": "Tapezco", + "code": "21103", + "parentCode": "211" + }, + { + "name": "Guadalupe", + "code": "21104", + "parentCode": "211" + }, + { + "name": "Palmira", + "code": "21105", + "parentCode": "211" + }, + { + "name": "Zapote", + "code": "21106", + "parentCode": "211" + }, + { + "name": "Las Brisas", + "code": "21107", + "parentCode": "211" + }, + { + "name": "Sarchí Norte", + "code": "21201", + "parentCode": "212" + }, + { + "name": "Sarchí Sur", + "code": "21202", + "parentCode": "212" + }, + { + "name": "Toro Amarillo", + "code": "21203", + "parentCode": "212" + }, + { + "name": "San Pedro", + "code": "21204", + "parentCode": "212" + }, + { + "name": "Rodríguez", + "code": "21205", + "parentCode": "212" + }, + { + "name": "Upala", + "code": "21301", + "parentCode": "213" + }, + { + "name": "Aguas Claras", + "code": "21302", + "parentCode": "213" + }, + { + "name": "San José o Pizote", + "code": "21303", + "parentCode": "213" + }, + { + "name": "Bijagua", + "code": "21304", + "parentCode": "213" + }, + { + "name": "Delicias", + "code": "21305", + "parentCode": "213" + }, + { + "name": "Dos Ríos", + "code": "21306", + "parentCode": "213" + }, + { + "name": "Yolillal", + "code": "21307", + "parentCode": "213" + }, + { + "name": "Los Chiles", + "code": "21401", + "parentCode": "214" + }, + { + "name": "Caño Negro", + "code": "21402", + "parentCode": "214" + }, + { + "name": "Amparo", + "code": "21403", + "parentCode": "214" + }, + { + "name": "San Jorge", + "code": "21404", + "parentCode": "214" + }, + { + "name": "San Rafael", + "code": "21501", + "parentCode": "215" + }, + { + "name": "Buenavista", + "code": "21502", + "parentCode": "215" + }, + { + "name": "Cote", + "code": "21503", + "parentCode": "215" + }, + { + "name": "Oriental", + "code": "30101", + "parentCode": "301" + }, + { + "name": "Occidental", + "code": "30102", + "parentCode": "301" + }, + { + "name": "Carmen", + "code": "30103", + "parentCode": "301" + }, + { + "name": "San Nicolás", + "code": "30104", + "parentCode": "301" + }, + { + "name": "Aguacaliente o San Francisco", + "code": "30105", + "parentCode": "301" + }, + { + "name": "Guadalupe o Arenilla", + "code": "30106", + "parentCode": "301" + }, + { + "name": "Corralillo", + "code": "30107", + "parentCode": "301" + }, + { + "name": "Tierra Blanca", + "code": "30108", + "parentCode": "301" + }, + { + "name": "Dulce Name", + "code": "30109", + "parentCode": "301" + }, + { + "name": "Llano Grande", + "code": "30110", + "parentCode": "301" + }, + { + "name": "Quebradilla", + "code": "30111", + "parentCode": "301" + }, + { + "name": "Paraíso", + "code": "30201", + "parentCode": "302" + }, + { + "name": "Santiago", + "code": "30202", + "parentCode": "302" + }, + { + "name": "Orosi", + "code": "30203", + "parentCode": "302" + }, + { + "name": "Cachí", + "code": "30204", + "parentCode": "302" + }, + { + "name": "Los Llanos de Santa Lucía", + "code": "30205", + "parentCode": "302" + }, + { + "name": "Tres Ríos", + "code": "30301", + "parentCode": "303" + }, + { + "name": "San Diego", + "code": "30302", + "parentCode": "303" + }, + { + "name": "San Juan", + "code": "30303", + "parentCode": "303" + }, + { + "name": "San Rafael", + "code": "30304", + "parentCode": "303" + }, + { + "name": "Concepción", + "code": "30305", + "parentCode": "303" + }, + { + "name": "Dulce Name", + "code": "30306", + "parentCode": "303" + }, + { + "name": "San Ramón", + "code": "30307", + "parentCode": "303" + }, + { + "name": "Río Azul", + "code": "30308", + "parentCode": "303" + }, + { + "name": "Juan Viñas", + "code": "30401", + "parentCode": "304" + }, + { + "name": "Tucurrique", + "code": "30402", + "parentCode": "304" + }, + { + "name": "Pejibaye", + "code": "30403", + "parentCode": "304" + }, + { + "name": "Turrialba", + "code": "30501", + "parentCode": "305" + }, + { + "name": "La Suiza", + "code": "30502", + "parentCode": "305" + }, + { + "name": "Peralta", + "code": "30503", + "parentCode": "305" + }, + { + "name": "Santa Cruz", + "code": "30504", + "parentCode": "305" + }, + { + "name": "Santa Teresita", + "code": "30505", + "parentCode": "305" + }, + { + "name": "Pavones", + "code": "30506", + "parentCode": "305" + }, + { + "name": "Tuis", + "code": "30507", + "parentCode": "305" + }, + { + "name": "Tayutic", + "code": "30508", + "parentCode": "305" + }, + { + "name": "Santa Rosa", + "code": "30509", + "parentCode": "305" + }, + { + "name": "Tres Equis", + "code": "30510", + "parentCode": "305" + }, + { + "name": "La Isabel", + "code": "30511", + "parentCode": "305" + }, + { + "name": "Chirripó", + "code": "30512", + "parentCode": "305" + }, + { + "name": "Pacayas", + "code": "30601", + "parentCode": "306" + }, + { + "name": "Cervantes", + "code": "30602", + "parentCode": "306" + }, + { + "name": "Capellades", + "code": "30603", + "parentCode": "306" + }, + { + "name": "San Rafael", + "code": "30701", + "parentCode": "307" + }, + { + "name": "Cot", + "code": "30702", + "parentCode": "307" + }, + { + "name": "Potrero Cerrado", + "code": "30703", + "parentCode": "307" + }, + { + "name": "Cipreses", + "code": "30704", + "parentCode": "307" + }, + { + "name": "Santa Rosa", + "code": "30705", + "parentCode": "307" + }, + { + "name": "El Tejar", + "code": "30801", + "parentCode": "308" + }, + { + "name": "San Isidro", + "code": "30802", + "parentCode": "308" + }, + { + "name": "Tobosi", + "code": "30803", + "parentCode": "308" + }, + { + "name": "Patio de Agua", + "code": "30804", + "parentCode": "308" + }, + { + "name": "Heredia", + "code": "40101", + "parentCode": "401" + }, + { + "name": "Mercedes", + "code": "40102", + "parentCode": "401" + }, + { + "name": "San Francisco", + "code": "40103", + "parentCode": "401" + }, + { + "name": "Ulloa", + "code": "40104", + "parentCode": "401" + }, + { + "name": "Varablanca", + "code": "40105", + "parentCode": "401" + }, + { + "name": "Barva", + "code": "40201", + "parentCode": "402" + }, + { + "name": "San Pedro", + "code": "40202", + "parentCode": "402" + }, + { + "name": "San Pablo", + "code": "40203", + "parentCode": "402" + }, + { + "name": "San Roque", + "code": "40204", + "parentCode": "402" + }, + { + "name": "Santa Lucía", + "code": "40205", + "parentCode": "402" + }, + { + "name": "San José de la Montaña", + "code": "40206", + "parentCode": "402" + }, + { + "name": "Santo Domingo", + "code": "40301", + "parentCode": "403" + }, + { + "name": "San Vicente", + "code": "40302", + "parentCode": "403" + }, + { + "name": "San Miguel", + "code": "40303", + "parentCode": "403" + }, + { + "name": "Paracito", + "code": "40304", + "parentCode": "403" + }, + { + "name": "Santo Tomás", + "code": "40305", + "parentCode": "403" + }, + { + "name": "Santa Rosa", + "code": "40306", + "parentCode": "403" + }, + { + "name": "Tures", + "code": "40307", + "parentCode": "403" + }, + { + "name": "Pará", + "code": "40308", + "parentCode": "403" + }, + { + "name": "Santa Bárbara", + "code": "40401", + "parentCode": "404" + }, + { + "name": "San Pedro", + "code": "40402", + "parentCode": "404" + }, + { + "name": "San Juan", + "code": "40403", + "parentCode": "404" + }, + { + "name": "Jesús", + "code": "40404", + "parentCode": "404" + }, + { + "name": "Santo Domingo del Roble", + "code": "40405", + "parentCode": "404" + }, + { + "name": "Puraba", + "code": "40406", + "parentCode": "404" + }, + { + "name": "San Rafael", + "code": "40501", + "parentCode": "405" + }, + { + "name": "San Josecito", + "code": "40502", + "parentCode": "405" + }, + { + "name": "Santiago", + "code": "40503", + "parentCode": "405" + }, + { + "name": "Angeles", + "code": "40504", + "parentCode": "405" + }, + { + "name": "Concepción", + "code": "40505", + "parentCode": "405" + }, + { + "name": "San Isidro", + "code": "40601", + "parentCode": "406" + }, + { + "name": "San José", + "code": "40602", + "parentCode": "406" + }, + { + "name": "Concepción", + "code": "40603", + "parentCode": "406" + }, + { + "name": "San Francisco", + "code": "40604", + "parentCode": "406" + }, + { + "name": "San Antonio", + "code": "40701", + "parentCode": "407" + }, + { + "name": "La Ribera", + "code": "40702", + "parentCode": "407" + }, + { + "name": "Asunción", + "code": "40703", + "parentCode": "407" + }, + { + "name": "San Joaquín", + "code": "40801", + "parentCode": "408" + }, + { + "name": "Barrantes", + "code": "40802", + "parentCode": "408" + }, + { + "name": "Llorente", + "code": "40803", + "parentCode": "408" + }, + { + "name": "San Pablo", + "code": "40901", + "parentCode": "409" + }, + { + "name": "Puerto Viejo", + "code": "41001", + "parentCode": "410" + }, + { + "name": "La Virgen", + "code": "41002", + "parentCode": "410" + }, + { + "name": "Horquetas", + "code": "41003", + "parentCode": "410" + }, + { + "name": "Llanuras de Gaspar", + "code": "41004", + "parentCode": "410" + }, + { + "name": "Cureña", + "code": "41005", + "parentCode": "410" + }, + { + "name": "Liberia", + "code": "50101", + "parentCode": "501" + }, + { + "name": "Cañas Dulces", + "code": "50102", + "parentCode": "501" + }, + { + "name": "Mayorga", + "code": "50103", + "parentCode": "501" + }, + { + "name": "Nacascolo", + "code": "50104", + "parentCode": "501" + }, + { + "name": "Curubande", + "code": "50105", + "parentCode": "501" + }, + { + "name": "Nicoya", + "code": "50201", + "parentCode": "502" + }, + { + "name": "Mansión", + "code": "50202", + "parentCode": "502" + }, + { + "name": "San Antonio", + "code": "50203", + "parentCode": "502" + }, + { + "name": "Quebrada Honda", + "code": "50204", + "parentCode": "502" + }, + { + "name": "Sámara", + "code": "50205", + "parentCode": "502" + }, + { + "name": "Nósara", + "code": "50206", + "parentCode": "502" + }, + { + "name": "Belén de Nosarita", + "code": "50207", + "parentCode": "502" + }, + { + "name": "Santa Cruz", + "code": "50301", + "parentCode": "503" + }, + { + "name": "Bolsón", + "code": "50302", + "parentCode": "503" + }, + { + "name": "Veintisiete de Abril", + "code": "50303", + "parentCode": "503" + }, + { + "name": "Tempate", + "code": "50304", + "parentCode": "503" + }, + { + "name": "Cartagena", + "code": "50305", + "parentCode": "503" + }, + { + "name": "Cuajiniquil", + "code": "50306", + "parentCode": "503" + }, + { + "name": "Diriá", + "code": "50307", + "parentCode": "503" + }, + { + "name": "Cabo Velas", + "code": "50308", + "parentCode": "503" + }, + { + "name": "Tamarindo", + "code": "50309", + "parentCode": "503" + }, + { + "name": "Bagaces", + "code": "50401", + "parentCode": "504" + }, + { + "name": "Fortuna", + "code": "50402", + "parentCode": "504" + }, + { + "name": "Mogote", + "code": "50403", + "parentCode": "504" + }, + { + "name": "Río Naranjo", + "code": "50404", + "parentCode": "504" + }, + { + "name": "Filadelfia", + "code": "50501", + "parentCode": "505" + }, + { + "name": "Palmira", + "code": "50502", + "parentCode": "505" + }, + { + "name": "Sardinal", + "code": "50503", + "parentCode": "505" + }, + { + "name": "Belén", + "code": "50504", + "parentCode": "505" + }, + { + "name": "Cañas", + "code": "50601", + "parentCode": "506" + }, + { + "name": "Palmira", + "code": "50602", + "parentCode": "506" + }, + { + "name": "San Miguel", + "code": "50603", + "parentCode": "506" + }, + { + "name": "Bebedero", + "code": "50604", + "parentCode": "506" + }, + { + "name": "Porozal", + "code": "50605", + "parentCode": "506" + }, + { + "name": "Juntas", + "code": "50701", + "parentCode": "507" + }, + { + "name": "Sierra", + "code": "50702", + "parentCode": "507" + }, + { + "name": "San Juan", + "code": "50703", + "parentCode": "507" + }, + { + "name": "Colorado", + "code": "50704", + "parentCode": "507" + }, + { + "name": "Tilarán", + "code": "50801", + "parentCode": "508" + }, + { + "name": "Quebrada Grande", + "code": "50802", + "parentCode": "508" + }, + { + "name": "Tronadora", + "code": "50803", + "parentCode": "508" + }, + { + "name": "Santa Rosa", + "code": "50804", + "parentCode": "508" + }, + { + "name": "Líbano", + "code": "50805", + "parentCode": "508" + }, + { + "name": "Tierras Morenas", + "code": "50806", + "parentCode": "508" + }, + { + "name": "Arenal", + "code": "50807", + "parentCode": "508" + }, + { + "name": "Carmona", + "code": "50901", + "parentCode": "509" + }, + { + "name": "Santa Rita", + "code": "50902", + "parentCode": "509" + }, + { + "name": "Zapotal", + "code": "50903", + "parentCode": "509" + }, + { + "name": "San Pablo", + "code": "50904", + "parentCode": "509" + }, + { + "name": "Porvenir", + "code": "50905", + "parentCode": "509" + }, + { + "name": "Bejuco", + "code": "50906", + "parentCode": "509" + }, + { + "name": "La Cruz", + "code": "51001", + "parentCode": "510" + }, + { + "name": "Santa Cecilia", + "code": "51002", + "parentCode": "510" + }, + { + "name": "Garita", + "code": "51003", + "parentCode": "510" + }, + { + "name": "Santa Elena", + "code": "51004", + "parentCode": "510" + }, + { + "name": "Hojancha", + "code": "51101", + "parentCode": "511" + }, + { + "name": "Monte Romo", + "code": "51102", + "parentCode": "511" + }, + { + "name": "Puerto Carrillo", + "code": "51103", + "parentCode": "511" + }, + { + "name": "Huacas", + "code": "51104", + "parentCode": "511" + }, + { + "name": "Puntarenas", + "code": "60101", + "parentCode": "601" + }, + { + "name": "Pitahaya", + "code": "60102", + "parentCode": "601" + }, + { + "name": "Chomes", + "code": "60103", + "parentCode": "601" + }, + { + "name": "Lepanto", + "code": "60104", + "parentCode": "601" + }, + { + "name": "Paquera", + "code": "60105", + "parentCode": "601" + }, + { + "name": "Manzanillo", + "code": "60106", + "parentCode": "601" + }, + { + "name": "Guacimal", + "code": "60107", + "parentCode": "601" + }, + { + "name": "Barranca", + "code": "60108", + "parentCode": "601" + }, + { + "name": "Monte Verde", + "code": "60109", + "parentCode": "601" + }, + { + "name": "Isla del Coco", + "code": "60110", + "parentCode": "601" + }, + { + "name": "Cóbano", + "code": "60111", + "parentCode": "601" + }, + { + "name": "Chacarita", + "code": "60112", + "parentCode": "601" + }, + { + "name": "Chira", + "code": "60113", + "parentCode": "601" + }, + { + "name": "Acapulco", + "code": "60114", + "parentCode": "601" + }, + { + "name": "Roble", + "code": "60115", + "parentCode": "601" + }, + { + "name": "Arancibia", + "code": "60116", + "parentCode": "601" + }, + { + "name": "Espíritu Santo", + "code": "60201", + "parentCode": "602" + }, + { + "name": "San Juan Grande", + "code": "60202", + "parentCode": "602" + }, + { + "name": "Macacona", + "code": "60203", + "parentCode": "602" + }, + { + "name": "San Rafael", + "code": "60204", + "parentCode": "602" + }, + { + "name": "San Jerónimo", + "code": "60205", + "parentCode": "602" + }, + { + "name": "Buenos Aires", + "code": "60301", + "parentCode": "603" + }, + { + "name": "Volcán", + "code": "60302", + "parentCode": "603" + }, + { + "name": "Potrero Grande", + "code": "60303", + "parentCode": "603" + }, + { + "name": "Boruca", + "code": "60304", + "parentCode": "603" + }, + { + "name": "Pilas", + "code": "60305", + "parentCode": "603" + }, + { + "name": "Colinas o Bajo de Maíz", + "code": "60306", + "parentCode": "603" + }, + { + "name": "Chánguena", + "code": "60307", + "parentCode": "603" + }, + { + "name": "Bioley", + "code": "60308", + "parentCode": "603" + }, + { + "name": "Brunka", + "code": "60309", + "parentCode": "603" + }, + { + "name": "Miramar", + "code": "60401", + "parentCode": "604" + }, + { + "name": "Unión", + "code": "60402", + "parentCode": "604" + }, + { + "name": "San Isidro", + "code": "60403", + "parentCode": "604" + }, + { + "name": "Puerto Cortés", + "code": "60501", + "parentCode": "605" + }, + { + "name": "Palmar", + "code": "60502", + "parentCode": "605" + }, + { + "name": "Sierpe", + "code": "60503", + "parentCode": "605" + }, + { + "name": "Bahía Ballena", + "code": "60504", + "parentCode": "605" + }, + { + "name": "Piedras Blancas", + "code": "60505", + "parentCode": "605" + }, + { + "name": "Quepos", + "code": "60601", + "parentCode": "606" + }, + { + "name": "Savegre", + "code": "60602", + "parentCode": "606" + }, + { + "name": "Naranjito", + "code": "60603", + "parentCode": "606" + }, + { + "name": "Golfito", + "code": "60701", + "parentCode": "607" + }, + { + "name": "Puerto Jiménez", + "code": "60702", + "parentCode": "607" + }, + { + "name": "Guaycará", + "code": "60703", + "parentCode": "607" + }, + { + "name": "Pavon", + "code": "60704", + "parentCode": "607" + }, + { + "name": "San Vito", + "code": "60801", + "parentCode": "608" + }, + { + "name": "Sabalito", + "code": "60802", + "parentCode": "608" + }, + { + "name": "Agua Buena", + "code": "60803", + "parentCode": "608" + }, + { + "name": "Limoncito", + "code": "60804", + "parentCode": "608" + }, + { + "name": "Pittier", + "code": "60805", + "parentCode": "608" + }, + { + "name": "Parrita", + "code": "60901", + "parentCode": "609" + }, + { + "name": "Corredor", + "code": "61001", + "parentCode": "610" + }, + { + "name": "La Cuesta", + "code": "61002", + "parentCode": "610" + }, + { + "name": "Paso Canoas", + "code": "61003", + "parentCode": "610" + }, + { + "name": "Laurel", + "code": "61004", + "parentCode": "610" + }, + { + "name": "Jacó", + "code": "61101", + "parentCode": "611" + }, + { + "name": "Tárcoles", + "code": "61102", + "parentCode": "611" + }, + { + "name": "Limón", + "code": "70101", + "parentCode": "701" + }, + { + "name": "Valle La Estrella", + "code": "70102", + "parentCode": "701" + }, + { + "name": "Río Blanco", + "code": "70103", + "parentCode": "701" + }, + { + "name": "Matama", + "code": "70104", + "parentCode": "701" + }, + { + "name": "Guápiles", + "code": "70201", + "parentCode": "702" + }, + { + "name": "Jiménez", + "code": "70202", + "parentCode": "702" + }, + { + "name": "Rita", + "code": "70203", + "parentCode": "702" + }, + { + "name": "Roxana", + "code": "70204", + "parentCode": "702" + }, + { + "name": "Cariari", + "code": "70205", + "parentCode": "702" + }, + { + "name": "Colorado", + "code": "70206", + "parentCode": "702" + }, + { + "name": "Siquirres", + "code": "70301", + "parentCode": "703" + }, + { + "name": "Pacuarito", + "code": "70302", + "parentCode": "703" + }, + { + "name": "Florida", + "code": "70303", + "parentCode": "703" + }, + { + "name": "Germania", + "code": "70304", + "parentCode": "703" + }, + { + "name": "Cairo", + "code": "70305", + "parentCode": "703" + }, + { + "name": "Alegría", + "code": "70306", + "parentCode": "703" + }, + { + "name": "Bratsi", + "code": "70401", + "parentCode": "704" + }, + { + "name": "Sixaola", + "code": "70402", + "parentCode": "704" + }, + { + "name": "Cahuita", + "code": "70403", + "parentCode": "704" + }, + { + "name": "Telire", + "code": "70404", + "parentCode": "704" + }, + { + "name": "Matina", + "code": "70501", + "parentCode": "705" + }, + { + "name": "Batán", + "code": "70502", + "parentCode": "705" + }, + { + "name": "Carrandí", + "code": "70503", + "parentCode": "705" + }, + { + "name": "Guácimo", + "code": "70601", + "parentCode": "706" + }, + { + "name": "Mercedes", + "code": "70602", + "parentCode": "706" + }, + { + "name": "Pocora", + "code": "70603", + "parentCode": "706" + }, + { + "name": "Río Jiménez", + "code": "70604", + "parentCode": "706" + }, + { + "name": "Duacarí", + "code": "70605", + "parentCode": "706" + } + ] \ No newline at end of file diff --git a/web-ui/web-react/public/assets/demo/data/provincias.json b/web-ui/web-react/public/assets/demo/data/provincias.json new file mode 100644 index 00000000..5674d7c1 --- /dev/null +++ b/web-ui/web-react/public/assets/demo/data/provincias.json @@ -0,0 +1,30 @@ +[ + { + "name":"San José", + "code":"1" + }, + { + "name":"Alajuela", + "code":"2" + }, + { + "name":"Cartago", + "code":"3" + }, + { + "name":"Heredia", + "code":"4" + }, + { + "name":"Guanacaste", + "code":"5" + }, + { + "name":"Puntarenas", + "code":"6" + }, + { + "name":"Limón", + "code":"7" + } + ] \ No newline at end of file diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index 54ceef00..4aee42f0 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -3,11 +3,37 @@ import { InputText } from 'primereact/inputtext'; import { Button } from 'primereact/button'; import { DataTable } from 'primereact/datatable'; import { Column } from 'primereact/column'; +import { Dropdown } from 'primereact/dropdown'; +import { LocationService } from '../service/LocationService'; const Communities = () => { const [communitiesList, setCommunitiesList] = useState([]); const [housesList, setHousesList] = useState([]); + const [provincesList, setProvincesList] = useState([]); + const [provinciaId, setProvinciaId] = useState(); + const [cantonsList, setCantonsList] = useState([]); + const [cantonId, setCantonId] = useState(null); + const [districtsList, setDistrictsList] = useState([]); + const [districtId, setDistrictId] = useState(null); + + const p = provincesList.map((item) => ({ + label: item.name, + value: item.code + })) + + + const c = cantonsList.map((item) => ({ + label: item.name, + value: item.code, + parent: item.parentCode + })) + + const d = districtsList.map((item) => ({ + label: item.name, + value: item.code, + parent: item.parentCode + })) async function getCommunites() { @@ -15,18 +41,69 @@ const Communities = () => { let list = await response.json(); setCommunitiesList(list.message); } - + + useEffect(() => { getCommunites(); + }, []) + useEffect(() => { + getProvinces(); + + }, []) + + useEffect(() => { + getCantons(); + }, [provinciaId]) + + useEffect(() => { + getDistricts(); + }, [cantonId]) + + + async function getProvinces() { + const response = await fetch('assets/demo/data/provincias.json', { method: 'GET' }); + const getP = await response.json(); + setProvincesList(await getP) + } + + const handleProvinces = (event) => { + const getprovinciaId = event.target.value; + setProvinciaId(getprovinciaId); + } + + + async function getCantons() { + const response = await fetch('assets/demo/data/cantones.json', { method: 'GET' }); + const resJson = await response.json(); + const cantones = await resJson.filter(function (i, n) { + return i.parentCode === provinciaId; + }); + setCantonsList(await cantones); + } + + const handleCanton = (event) => { + const getCantonId = event.target.value; + setCantonId(getCantonId); + } + + async function getDistricts() { + const response = await fetch('assets/demo/data/distritos.json', { method: 'GET' }); + const resJson = await response.json(); + const distrits = await resJson.filter(function (i, n) { + return i.parentCode === cantonId; + }); + setDistrictsList(await distrits); + } + return (
Comunidades de Viviendas
- + @@ -38,10 +115,92 @@ const Communities = () => {
-
+
+
+
Registro de comunidad de viviendas
+
+
+ +
+
+ + + + +
+
+
+
+ +
+
+ + + + +
+
+
+
+ +
+
+ + + + +
+
+
+
+ +
+
+ + + + +
+
- -) +
+ +
+ +
+
+ + + + + +
+
+
+ +
+ +
+
+ + + + + +
+
+
+
+ + +
+
+
+
+
+ + + ) } export default React.memo(Communities); \ No newline at end of file From 40c451becec083a843ec92a982d97bb782d40df4 Mon Sep 17 00:00:00 2001 From: Mariela Date: Thu, 21 Jul 2022 00:43:07 -0600 Subject: [PATCH 12/61] add fonts a nuevo tema --- .../assets/themes/khaki/fonts/Inter-Bold.woff | Bin 0 -> 143208 bytes .../assets/themes/khaki/fonts/Inter-Bold.woff2 | Bin 0 -> 106140 bytes .../assets/themes/khaki/fonts/Inter-Light.woff | Bin 0 -> 140632 bytes .../themes/khaki/fonts/Inter-Light.woff2 | Bin 0 -> 104332 bytes .../themes/khaki/fonts/Inter-Medium.woff | Bin 0 -> 142552 bytes .../themes/khaki/fonts/Inter-Medium.woff2 | Bin 0 -> 105924 bytes .../themes/khaki/fonts/Inter-Regular.woff | Bin 0 -> 133844 bytes .../themes/khaki/fonts/Inter-Regular.woff2 | Bin 0 -> 98868 bytes .../themes/khaki/fonts/Inter-SemiBold.woff | Bin 0 -> 142932 bytes .../themes/khaki/fonts/Inter-SemiBold.woff2 | Bin 0 -> 105804 bytes 10 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Bold.woff create mode 100644 web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Bold.woff2 create mode 100644 web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Light.woff create mode 100644 web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Light.woff2 create mode 100644 web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Medium.woff create mode 100644 web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Medium.woff2 create mode 100644 web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Regular.woff create mode 100644 web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Regular.woff2 create mode 100644 web-ui/web-react/public/assets/themes/khaki/fonts/Inter-SemiBold.woff create mode 100644 web-ui/web-react/public/assets/themes/khaki/fonts/Inter-SemiBold.woff2 diff --git a/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Bold.woff b/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..eaf3d4bfd7d0717eb7eee8edefde43508c6920ca GIT binary patch literal 143208 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
)V`qXZDL!rw2D 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

B1ttL7O_Gw{HhNLeIl%?EWPJgN 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 literal 0 HcmV?d00001 diff --git a/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Light.woff b/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Light.woff new file mode 100644 index 0000000000000000000000000000000000000000..c496464d02d9c5a8291b3adf1e434489718b66aa GIT binary patch literal 140632 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

&+?0~@m z?A72F6I?~fy9x55$QnU*0NudcYVgC7hZ$;}n0qo%!rJu_h)HoYN^UID1i-C_Urn-+ z@OA|#QWGQrM*zG;nQ^Qgl>cs&^WRa_3##SAaGdlDo}~pU^N2I=^Elq4wWps(Rp_5d z>Ey?+ki|GX-R6$xY4V~Vd+JQ2wfBEzs;Un1QSnrsY#}3oBIFBApFl*MEF0U|C=SXZW8f-QvMr% z_5T%;HH@$pzJqzL`=5F>t5Vr|A2k1?<-ariG^qstk1$12E&hgoQiGqq{(F%AA7%a% zCS`Ab8}j_8fZZ6kj%hs(xEeZOhS~R@Gyhvt)wA83SNPJq)jX*!*bv5vqvjH3)@F5T zle@+>Hzbrp`zR;}gr2!H%BTk!I!DL%={P=_iWuZzqBc9pT@YU6cRJd4c(#!0oJj=s z?}#fIZVj~OwC9XTK^Nl7x>Ty1%-uP8R&bKgMBcY9<~`0>hQ%hF(nH0U#zuTBgzLv? zY+HU2Lh6|plrtd*5ZC=d1RRF2Bd^$FVKpwHavynZJ8B|VQiPd-g&Zj>MIhsU9h&I8A`M9wk6FS2nZGyb0@sRw=`B=Wt= zI$|XXI|y33|6bN|r0c#nL5aT}NLp3v^AWt(s&nw-wzCUl% z)ZLCIAG+x~H?pLJOEMMZ0_CgUVuR_vr?hUakASJQHX6?f=~&cI5BTafLLJSCQT@i)zIEK1d<)s?t7ErH^*%=+xlGcjwPfS_D$Qm%gH6)tR*B(G0Kegk(RR zkXt<&(@pAqkPn9`z65ttNNogb$YDCg*eFt;XQQ;YXS1}Iku4$0Zu|CAo2)nqSv`K? zn#-(brqHtkJmEHxDrdTD>Uxb>OL>PFMT*Q?m+O{gXmQE0hqBZ2P}-1kt|jAlbl!cyBxVYM(|~Kr5~+adX5sXQ;o-aijJxN} z$8}SFXfM25cheBake^1F*Ar6%;C4BaRRt#q`}a@-fGq{~zJ8BiR)uz1 z@#TKrjNTJe`$q+6il1NSS$|_>H|j~$k9F9$UZd=&16TU<_G^FIl|~c<5Bk~jn=%;P z8hSEme7+c=CAUx-uEDcQFvv&L8}?Hf$4>S!?|dm+qbM95?Kh~%+c&Lv^x>tR-~YHdU`Vuk>*5APpRWqsPsOxWl%>x*&A{MTuLOql>?x3qPeAYRY^>ltERDhWO4p z&nHATLzcW!++4$|a=f-553ek2rWD$PD!V;Z54bM)p+lDNnJ;({&PVqP(M_YnO8RMB zFOcTH=ZjG=b3xO-R#P7?A0MrX*cRSRwT1V*P}WA}yjoq?r!~KZNF)!2=lCyi5p5Fu z@}FOTByoG{kz@LJ!56f9;^q2M!><;nDmcB?9q_DIr z62T~B6s;NR{6fnEHF~Azau@o6;d6Sk4f)YS>fyv>)zQ&S51^;?XmwImEzuE9tX9Ce zDtX42ql6TaCAS16c*N*X3JNp(acT|KKT3#f+jAKR^{9uWVv4DO4)$VYX820FD`6G- zDpz`jT=)F*&(;3Wn}HErrpx7_VdEqWqtDS^E`V2^E3q_$jI!B#|Gb?d9DNQRq{eR3s=-I(-(&5 zFOc>gI%IGC=~5vbjtnWf57E83wuVJI+r?yOviu46*$?fjs;w$`)m&!ZCIP&-#|?6@ zu!W?!(Bt=PRS__oplFfv!=CJEM^zNfE)4 z)lHkF)8!RVM^(Lf`m?^;oVK$Y)n%X4#+oS=+FImDDPq^6R<}n~vyPD7gzQI)snsPTF;`Z!owAudYs?;}T# zd!t*-)OW^!r9zlzovkjHR&k7UWB}}SySEV7n@r=(ysoH;Jm1x6h7RppCjCox$;hlK z$pxr)_Ur5qyR~&s#$~kRNW-0DI`7rqPOHR}VY*1ku9OaHXP<+l%($Qq-^M-3Z0_j- z-8jrREnf9%v74@9mNWLt25Tep^}*eBiC6kV8q%0$JvrV4+YDEBKCT~#Dyk)sCQgyU+$Jqs)_{D)c{xu6d&y>kbsX?H4#9sjscCXNd_#Jn}Zgb`#@4FP= z8nJPo1BLdSSIA~sblC4%CFc&UPuXS)L+dGu5dl{2wF`##J0`SxeME5c(2j!mT1_5f zhdxqBP-`ew^P9%Nt!q*t;+4&K2#lDsPJ!(bErec*wU{)VaThuLk1@PQ#Y0${jTV4g z(@ld(J`#3pJC^$iUr*K68jHo2g(V2hG~DLF3~5^eR92mgMzW_iArFY=Mrslx=rOZR zBKHOtMlo=H-r>RMScOE)PR627eyU)({-?~Ug*2VHO{vrXIxg05h9NcT&g+t|V#f5k z`B;?<9N?m5PHew@-Nlrg3MdQmzPt3zQg+TYqg$Qex(r(X;{G37)8w zA#U2Z(Y)&i$yFlwn9#q8+w{U20vdS6jZjb0XGd)~%WgHeafj>bF#n>t4*b09la3Fx zb{-YN>%fiAlRsH@PxB5@BPJ-lo9ThJ5-lGARb1tnBJ6QK`vSmPW(eNGUQmo}ZaIuz zdn2tfP!zP_(2(373`(YI&WRw=Z%r%kj4zS1xcd4Lmbr)0KY3WI(kVh^s}r>{-(l0h zNUbCCpqKN{s5_}Pp}{--%xjgjP@fK7=7%+(@h)B_&;A|chm~Dn&Zv!;s^TBA)bi6;7wiRnG)O`1A?K6 z;a;KuwT$7VXaWw30C;ZXgqII!)$&4Kdtp#G3J+@s4K&D`NS!!-nYyWyo>^1hLKXfj zbCyhz0od9ectY=B1~(Jq49o0kg?^BImw9v-)!{Al)-)rCaRnlPj_tHricOhw>ML>q zu0~GhDobipa4QK|!|aC)^*Dp%@!ZeKJrXQ_;%3)x;8A2UjdN%f<0T5ZPjh#svH+d4E`k5mu`C0 zxKmW?E~&uS9~??l#0Iq5MS(Fz&RMTK(}}Jq1XaQ2gu7?rTCB;ckK`BmrQ7@)$|IN? zfE}EMAKSZQ<#KuFRYlLi)H7d0m+xjjbzNFK-VxXjLr_Z$ZcxwWuH0dVN@^N{_{VBS z-|RaYEK-nkZ&t)Np!~$s;DavZy6MSvx7tt|4ka?VAs^0aew`4yZpRo(`wJ2;u;=8GCEA~ueNX@kqTHtXbFt4BXm`jbTUGA%%x-fzU-%hEtk0_PGolNa zp;AN`4D>11F^=AJ&Cz}o(a-E)X!#Pb!Dp5;7ueeHTyGZ${V?Wa!wqO z?JO43{jZ(xz6jUd-}5Pb!9YrhJbvQ{CL-#XnXkVKn3OMFBS;2B*p7J$)&X+ z+Y=mWLw&e)zMvuO5BALhh{_iyueT0=0X^XnscrsW*?3N?F?+;IEV0()P_1+?xD!0| znpJ!rx2u(dVOvJ7D#yTaFb&uqmE%E7SBL!Hf_T6L}e*kDtZVH& z(&>TGTw+gU+g+b!2$wj{gxG9d9(iHn`u7erMp|yyTNys4b``3B4I6EXG-lAoop%N=HP!{wx2l=bkRiu2(JZpp^o}Z1;jeR9mq*)(5+hOq$0~R)Gl%Rbi z`9r>xS7%^3R7F|`wP0^2tsGVc;H}4d!UQG$fS-FI2`>_rs#1Kr{OCx9Sob6r;Yo;x z`$v6SDX8+vah0A7iD9IHa$Es&MGGFvx_I7;0yY%ay=A7>DgI{d~N0ik00bSo? z5>sWA-Bi*#X?IVv^YqJ4V#JRi)q-Y3crMPnbyCHciPz$)TNWo-^7Y<1flncP8A&I6 ztL3Bni%=j8Eh~@u2V+5BzVCf%1m{#QP#xrd%}Sy>X@_F1Yfx1&?9-5#0i?+nB(>+( zd4qq9;+dI@jd;;S!PY{aPGC>&olw(o(<{+3H`WVN;oFxE3U39+@=whO~Me# zw-qz53F}Hn0e9&7Zi##%PaJY!aFS?tZGIzLL)2UD*KwafDqGFTeZ;k8%4Bcwq!sgR zA_Bc-lIlYPLonyO)rkCeEj$pOyXkn0ci^K67J}mok;H-CPeh=VM=%y>sUs`;172~) zwlq(Ssq($aYUB^|$f*v5Kzcp-bDOR8+hjS<{20V*{{XGTiYUw-fy${VWE$J)3>Uw_ zaD34E4zJfme11QOA@I`DDm^#GB7q@~Z0;DswVrM$-Q^2InBJ>t)J9!gP$(}Z+|7psWmwcf6~quriNUts!I9<&j~T}# zKIo79+1?Yi6ytIwL0ppRSs<=7MkDvmjv=Ijf{%#r0>a<-4nDR(Ds|{)(9bNG(xBR{ z4&UdtyX79A>XZpW9!9;EUJP!1J{xHmpC-7cD&CjRs#|He{%_5j z^bLPv1_IyyU*j*)cB{6$nM1sBQ_#4V+UY9KwK>Gz=1zkGO@tA#0(G5A-TXSfH4+^a z-Aqi>mWDyLn_@vU9)-njUq+t2%cJa{L6s3S)^j|G&8(jSte=qW?ipPpcBg#aX&mB{ zl@O|X&$W7PL|sO;y7=$3n4WHs&}Z>127dA^zb$JoxtkTyr3JfpFEiQVk<&t@=Yx$r zQ8B0LW~O;-z3Lh{6*x`HzC*M%Fs14J%FWDSLkuR0VHt5ECFU)oZI-O9e*<{J5M=eI zSS2*(W_fWA4VA5Z3KC*Mr#jzVOS(+i@kve6jiPT3j9rs!oRvAPmea^@-q_S+C#a+x z?AColF}w8bI9nV(4Ma-$eYl@47-UXnTeLFI4$q;3f+ISqSsAW$YmHmm-e?k4t1}k< zn8``dtyu9Z*Df{GImO!BVIJ>InkQ!!M3XO1(8cL~=m_<(O50f%Go-3SK2Xz$K!PT+~-|Dl+M>pAQ zN8;4Hta0S-P$2ayyS0R*OEN-YvMbYfgmO*y_60@du#%!JXhm%nNNd+>Rwk|g&ITei zyVc%!sJlKM13od!L8L?z!1%7!(}aPGGZQbF=IdTgSE?|Ug>Io&3Pr=tcDRXynfUuN z2IPk%$zhG7mM(TDpGyvLwb+FAoXYnho`r;OTy4=~JWRX2ZW#zDr(PDT<0Q3zG83Jg zZktT1?u0Ut2Qhs8F(JAUW^xnaG_aH{8C&%5v>DvzB6xb$d-lb`?2z z$_RKz7O&vSKX&1)k9t)c%in`a?O@v1H}s({vRTI9l1$-MkJaD#r`qn^Pu;Tj+#;B* z8sBknN-^=N2iNrF-| z<_sLlb&$xk(@>x06xOU4?AAr8KBZLtAgkh0_$6`-6a8F!oSi&fYEincI9!Y5bE$7z zxSIPb^~$b%#!2l$c#_pU9*x6>tLk{lTj|NBe+-ToLDiCW#q1Y9^Ev}K=`N4EV)g+3 z;tY->lZZuXe+5?$28OW5t7E|aj8o$!PrEy>pmaJE81%zEj@m zyN3lJVtfSoe^gfna#t#3H{zt-nAT+EZ0?kMBjM*d^&mWZmCD}J~0^LIUvUH!~|JzpHle0IMQ z{+;EFkMj+`7rtvW6+aSST5pk86I7R6GIRcWNFq2b(z)6JyR|t)LpOOfpQ~4huKh%_ zTMuEYpO!fD=tPqycQGw*kacpmwNRn3XC4Q=7_=ZhvS!#!mc3kDovEVo?4|7)?L)Zn!B^FC`! zbp$aX0_F`hD>mNHVVmFeQ-5&)9ZwaffGCqq@J|421!15NhqkWZFp2oc6DEDc!K^P- zbjWS+1V+D(U?{n0ws8Jb=OY zm{D>S%)>50g!ESJSmz0JM~onGx4ZQQCEBTY-nho+>pP@_DuRcfbhJAmb)Bi!$hePi zgd@ckDG2}OIX!bSNNDk6&Xh!tA?1) zmP!FFBgd+I)J?-& zPi7l{J4Pl#uB0qD7pIFr6pPB=xLMC=U4JcZH&>s8+4_0z?APxG-Ab+ksgILqQ4}jS z{g1)|?LwzzVJMDll$QpT^Hj8#NLAQfyWuVy&N8Or*A8&zqz9QjsnJ{BV~*RFlr=Gx zlNi3{pCi1AJ7m56hSx^9J?f`auA`r?Nf_Fuq9ESSw_V5~zT%Ft+-;*NIDk`fPZylI zh4vG3wut$(65#n9v^*lJem5SHD9^C<0)aG4zN3@uPUbGqM*YAI34Gf=U`^wdRMv{t zRqykA-Bzb%r!jr5vF*GN{aT-o)XTE84fo2jEi&FMFv5xXnzKW#L|;5IvB*OK_J27 znc+GDmt}JrRwA#VU@BAp+GFNN3Lf=^m@fpOnS#Yn5ym&9IFxtK89O{r9xm9^g& zc-&+!wL}s)Em-=q{s9Ym8hu5mLi=+;ep!*wQ`mNPh+ZzGXEEPaZ&?mT$CJ1`wg}6I z+hHGi8^(N$3=!R74qEfAl!0VMVmF<7-y!LxszfloPENV_1fcYDsyoh@pQZW8Z0aI=S%>7fKL)~^GV)4 zv)oZi#<{?}S0kljei;`3RFx5JWVtc-^GFnF5Z1A``ZMxRP96J|F7N%JMl&Hu(J8YF za^%W{#9`m>83BIuzA(88c^Wo@yU{!bsG|74mEv$%I!$lo!7O@^5QNFI)76EgDu(}v zMq(1jrQOjFlyW856^~lSm}YM%6ivo{KRD)%@CxD3HU>oJVLODe$c48Bpi`0=%5PgE=|qcr|G z*)*LC8k<2s? zL9^st*}O23QOV`TQzJlpWXr9d)rW~(P%s*YfBwO4Q18;l23FU?_d$V27__tTv>gzx z+>~l{BBv-@d#?Fqx1Y0LA|0W?bmocb^*Gpq#8V4{I!?|q_w%|zK8o8d9@*xor!5rS zfk~fb5>naZm97a;7m;*c#`fDm@W^o{4DAF+$6DoibAGM+_d#U&h?ZfH^UW}J5l>CZ zmZOv4aXxN5jpjqi7*yBuUfX>aN;LMMiX%wh`iu2DTj_5NU;EWPvwOq@BR>~uGPRha zf6Yc5?7ST>>!~;!H~m$sEKV5b@lG5gOl2(exG{fLZZ6V6JwMZJs1Gd|yJwPT)ed-R zQvadJ8o(Q-UL$`_!2W1nSE+?Z_Ckz_A&|KWI{tM-?gk}Zi-%{s<(c-O?Jo4}oV?3P zd&OKZe^VXx6%*2Hta5SBRNwvpoymJ&J8K|UQoD&~%dS-)-g#(QF{cnX7ihBik+T9BH!xj`>kGNk|-qWu@>Bwm$h2`PkgZbJzcO@EwJNj3g+oe5iMoUce+A~_4=g%8M zf~)y$>B(YhVOL0P%tsU6usmdCFp`2LF*WF?VD07kzMScx zFm{(n>XcXb*^)f^rl&R;(~ftEp#^(NXBUnWwKKVuZJ8Lpjr_^2#c_L)R8~r-ykkB2 zjE$;P3m9_W{Q-*t&(0`9^ ztynQP@dO(4#na8wLE2%C5#M_+Qq(QI41p`>(a7%3mJS65|AMV{`jSbOH>`U~GG;%Mil$9Om+b{-5ZYFO3l9 zr^m}}kF{tG=o9K)f$1eR`ux+P@sW4c2k+^BAD3CZ(KuPSWX_Ywr82m3PKCrD^E5!+ z-_w@{*+x{fQ!Z#)+;HZzCvb^-)O&rE^SIUGc-_CBg&HNAHZ}~g59dm>MhwxuCeb8s zuajPE*}LL1?DDSCd)avn$yJ`X!}XrpmuEC}a5BYZ`1Q@ZDg4&_ z*H=*PsFLVS@gpQNBMaD}qazD-p|?RudeXE~iL@%ZCuh=AWzc%gbv9-j&n;V)=I7LK zoh_%64d#>|%VL5G6t;G7d<&IkV+HcXG)tH*5Nrrb9&kR>|CSm^H^YDj*OxA;C`Nel z2-8KvEm-&A!^_f(iwxQq9;ri%CauHGY@jwv(HA|u;ZeCsSf_fL*1bclKCFF|xhQn( zDYztr%7A%11?Pmgc5w%@2zWDZo0d{^`7{xUPpW4UTRKET1Cu0}?7pl9;*;_ut_1m{=oa=kv$KzyNw7r%5oYJ zDM>P}N)Gj!mK6&EDTT^|C4J>puL?Ga^w?#u3V3@68hCM}e2W<2@8Wr|lwN8?pytJ| z&OeI}N+${daHnJO%VY8;0bEHWo84++J+$68imenJ#&yn7DHeozu(@;6E>sGCyf;S; z6eljboetF#SsV#)Z>Va7eeQ9h;34TGOdIP{H!{1ItJU|w?$jLyog}|O!HHDU0~sx? zeCbsaOUtHybY_(oSLKQV13tMpzG4PEk6z29bQi@F3K`V_M;_y<6Won_M*~HvxR?yO zjU_6dKxx!Gj00Oe>gu|g{j2GB@iPLV@sU>02)|9_is_)i(?tq7Vl`y{`a0FQath6! zWrgfR#&upBE-Z_AT-Qm1x|6c30PPtI*w))+DW~RgmsqGxNc`7#Uo?7s&qP`h;Zi2h zRvif(k2}oP)>gOo5O}SC{(du3$l-%AMk4DoVn3GQBl8+tDQIVlL0IpA8t?#tmMsdi z3t~eaq#orbh<+Ly0H>v1Xc*71l_xy_N(E!Et8i+WU36_>eK zARhm@`sWyAWR%a?K2cyePmWH_ra)z+f_ztf>qM)y})2WGo#*rSVcl}nk zVn#F>5g;rt;znG!bZ!);mPA|m#oZuG{Q{0pz~~BK5e=2##Y$CvuFTr>vG-31l@?QI z)uVxOF27hLqy5uXzpVEsy@T}cC@k1jht1!&7=sf3E|t5Z$LB%l8?nO&hn7?;X-x{B z1X10@XOuBcp&bxwUm5a@6ASKoY|ry72b1)Kd7xN+)&{~M$`jMI3D{{FAK;10{ld&i z5lPoEXm_~n*gA#y1z_xB3J&@-0SOknx>4SqF!b9uE56jVhxnWe(JxPPValEJAbBjS zedTIu@BUzPjFQsV<|tVedn^yKa4Z#f-Td*EK#%N!52$ArO6B+Ndz?Q{mV3OF#)F!jVRIc*$pM?Y}w;<#S|uvW;%z-+HgfZ5T_7ao*C&)R(1 zZJ?!qzk8cuK{CWQhh3kF_V6OQ@-^vxcc8Kx&I+hTBgvJVJ1e0Xo|fcFWj6a5GyRi6 zDmi60TGaeLx2l{WV-j`05_ppZvsbF+LKPR8*}rd?`z=HwA2wC)rs`>V^)WG4$9^wqe3$ue%1G z8#VpCj%EO-0OGuaP#c!Fc3;J?5^&XLjyDq*T#jqOxswi!Q-ws z5bb&P8uRPHTRf4T4|Vv|8~y+aFp%j@CIB`6Er`gqORpaXA0auw!^T8Upc%(^>kv_H z&q0OUY&^_^!{+v&$(Z^jAG3tF9hGybPY_&_Az){6@Aq-AIu*NIBXd4WUrkGV(1K1y3MCwEma z8h7WR!w0w5)`SoIVAGxrU9`+S)Y@DA8*J6V^~xt$fz5LCwfQU5b>=`WnM$c%HYJE$ zI2|^grR0|`(YG!lmqO!ED;MVENnb%kJ;zHzi6Okq2jV#auE6kc^*Zellke9T1CQC= zwcC@|eOrtBX2|ZaUL!CAS*X&gr5_7=k5ca)sFYku#$i+l}Z$Wg(0OpYJoof(i z8{>IR^sHk;Yo!i|bQ-c~ckhZw?zFa`ZFttJqL|IZ_C3MJrEKaOUo_ts+%{g?mY;7x^mFAbzINv?vBy)y#U=EqTakK-*ER2d4hI@`tz)K)!pbG%V@8_< z*Z?(UxYx4woes6;iA%ChZW&1N#vcDhIB^)goJZHq))qGwv#uzf=BrCuZ<;lIc~5Lr zF}vRD4Ox-I^N?MdQH>LBNv?g@&?0S`D(^uqSiLZEVK$?GAB&5eb$s)h4Yzjjr&M&g zB$9U|qL81s495$hX19=B6fW?oiIy%b!kpQV9^>;(b-k;sltas*2(z>!)H#>{!p`&$ z|5oqcBck+x=)lu>5+PyA+BT)V_|!%=4$$`b<@BJ$u-q7S7vEX7T7-)*d2A(SBZ@dR zu>@voEUq{qU0Ez?%*BeF6|BGaeN*8;iabkL80--@$FvEO%RCMZL>>d?g%CVQ5j>B! z$PIubQD=yL-45NTzv@o?&&Z)$_`Km4eBZnr4wdWh5)uyqZ8|P4+i8LieYpjKH-XG+ z%7C|gZz}GTX~gbRSR~_BIx|^P8ynVkKU>2E*)N12+y!PF|s)_3sx`-^eAia-;pV{hSm&|*l`6_5OyWs!H z<*s%t;Df~-HSAtrhvK-#e1x_`WiXi00}tUe73tpjgLseYk%>OYc}eEmP97HR44fC$z$BY5;uG(sAo zHq3_ZdwnNx{bzQCOyk~CN7Zq#C0z8ung-ls8nXI?vBnX5%>OlnV#%zZ0spok z4>=))idV623`>rDzW8tS8`z}gA}Eq#T{qA9&=U~H7!L*hc&jiF44UNhDj$o*Q0$GU zJ5pbe{f=G-f0sSn8>pGwOaZ-srum~skUGj9?l5h8b4ZjKuuU@WKG}oDJozWgahQdK z{pRt*yCMR=^7aP9l|N-=2K}nhSL%sWe^jB|?*cawd4-?BG5)lxvsFx;(f_1P`{QvR zOy2pI!{{-2(>00nXt2D~C#Oz?(d)^D20&%>!jLj-km?(iOCE}iTIw>`=KoDT zWViH*HCL)o-_^e?lY=ygfGq#BkSl~N8Z7%VgoY&P@(5bgB7?UJ%0wt7%~CO#5MesI zFZRd0ZOSYDoSI7aW%i4UG=)=FGl4=J$Gv;1vUXc3zDoG6IOd(1ZvQ~8T*Yq2br8am zS-W#4_$9?{rvQHZ&h6X!K>NVn=a;7bha>L?(3dZD8^xBweAg2rXEPp_D@MS}+%e4j z!v`rfv3U8iv1A&#;56u;b*p`Q=hDO8k<2UIDQGooH_FEWh-kmgr*@sJs47OKvbC>b z1njBjx6i!g3jUJh{gA|YcWE&^mYmWPlGx7f8%xK~cg9@1`0SZ2z8D&3U6p-#YxYky zH1d+ek;QtxDaNbqEg%1wYy&0NbE~;Ve{a@C0XO1uw;ujA7|DiPBGR3=8J9tWZf^4F zrog}A4dwb;yL;@465k#-Fnblj83afMj19di0yN?z4p1WwT3kpGmAPO`R#i;hi`fYq z<|2;ue~(lVMGOz}b3!28q6B^bhUv<>e0W+NEm>MU1uYGdJX(jBqE8$OW4Ce=HypAZk7qLh85sO{3AU|oL z%={Z}HeO+qJ_Okb_@#!|Y!FDdVE=6_SaTgT@|eYbJ{AEV(UY2{=OJ}9C9G!{`;Izn zsGNikk_vO+TW`MRVt2hdW3N`5jyjYZsPQ?Tx;(bQ;rE{BeT%}kF32=+ImBw(Q^zWo zu6f$@W0{_Dx`)Hq3aU5{#QBQZFGvsVpEf%xKayr{hDPfFr#7X{DZ^z*ec2M)3Lx5# zY5nmk{whYF@S34da> zoH>SQjRHos-|C5}tGA|z!JT^F9{CV^fJKDZHuObgS>3UTGwJB4s$swyKUf`8Sci64 zGX#7yGzONGaJf6X3vZ(a)W6$V+i&X6mHV<2Mc!UpV`(xW%q32j5P zY$A*CHGVjWz;c7%SDs~Qo%B%+uV7f7SrTx}#0h$C{FON;({&citMa3GgTt<#R)5B? zD@F=f2fH>zE0EQfZhXjLw}qK;{C(qtYFIKxvb%ds*clsZYBytqBvOG6o1gO~R}X$z$W_v_ zqh{7qvs?~=opG|fXdSCm(FxXz1(77@=p01SiFr5q9(nFc(zdg3iJaU1{mj{qe*MW> zm=-i@7J!&*vztV|lGo%^B;-h9-gS>XyL%R#i=2g;r}IAgS9zu+3l1`_6T2dGO};zi zJOb3f{G9f?J=IJ9thsm2)QDqc8*eU-LV5CdP^)4AP6ayDSaL*BuCA?Fhr4dkJ&rZi zoG~JYXwWh;j3(()nm zha7$WEA`YrQ-94(I^{#ZP_NGy0|jGqX&>2S=V%#@Ba2bF#V1WBGa;K*O6B_iaYB!( zE!~UODp|gc*k2gmvu^iJRm;_F$(Jr`*Q~E>vYHR-kLB;RsD!JtdyC5XdxTf3-VAh= z+4^OZhE*yxY3Qe}korj%$yU2Qv@7;R6;yfjJd;_^p+GkBkU~p@=+SjLHEdqFYI9++ zup+QpM<37T6>2n7>ZpsUb?V|q)+>VLyt(FY0IH8}b*OsE6)IS=D>(6sf}1og=WAJ8 z1!I78MKsYVaDJ=)a|)XN%g_^o#*|>EtNW%v7nlPxpxLO=kXs~DSAG;1N3Q4ZMXfk$w5pW9#}azb#=S8mUyW)q!7hMGT{wF^vg2Z; zSav#_Zc6!+iblo7v4sKL(5x30stW_gKm?{h$yFIGpW~|!>Y)d2@8Qgid$iGNpG*t{i<~tj)2z5(PXDwmiOGu=#h5sWT(*fd^$ozHI_SrkFOK$hvR|0ts`WB4_k89oTIauP^_7C>m>s`L!;W?lN-cexE#;ag|Vo&YqB~3+<`d z2{OrgReo^^Qj!|K5c?{PDpcCh=?&xoARo!2S>M*eUpRGT@}6DmgVx}X^gO2VpeW{8;KJ2hbW&hP|bn=`FLhv37ePYxSZ707U5#3GeUuy!V7k|E z>3~xt=KTk<>ePVcjmR@y9F%Ble7PG6Z=nZWQx1^F8@Gbnf4-WY`GC-azBO_~mDKks zt)p~YQCYLdVrF6<%-)x&7iiVuhFkvpl|oNbLz@d&YTxT86csOSGem9PlnPEpa?z+9 zTYS(=d5h1hu3SQl|6=*!$jM{ImZ^Pu>*>2EZwjYljZrlQ zwl7-s^xjpYO;u+N9i|$t+Iwq;t3ImXDj&slvFIG8(oOIy5PqSRVl;duI5&JcI(D$Vnv;s zC+&wsaUfYjN^hI60=7a;s09b22St&5%CMV9+RRu9Yo@f>_mCOY(lN^;xv+KbiFN~S z%o7PhI$8;wJn7uT;ywjBw>dEp2Eb}^Px(d+)agZC*mQ}!B>${9R9!|jOP3{GNu#P{ zn{tWFY)+Qg2Yi3l4u-%ZkZRGdh6B1%VfQEoiFu0RV@6LTuzrmiW?CEsG7BBLUYM8J zzdXxNsYrDb!^f4&4EokVJSwLg%NXLEAsg~xlSgTQNNvC??a;>;5%{t1uDy7#h`QH$7r}L>g&zb zqY9#;=$S7v$Gl7qpr-NxoS}2ubRanhq8gq)ZYGI?YHJ%q z^G6HU7$P2k@cq)L^IcbwV`LTSUv+asr~`#w2KNi2tk)b8MUogGm4yI&MyYi0bWbljke_K zs-YV1Dg26J?o3T>(R?yxam46p?RZ@+&KjxxCPjrhRU%)^j-0pn(d;duk%q%$_uWEw zN#bEc;oFn+|hP_X#H73T?i{#_{ z`QUK=5J*j`J=yp1r_+{V8<#CzS10-2gNIkIKDm333Os}g+@B7SOY=k2R(V}eHu55? zyuQB(92xm??y|)-Ia%i2H4ODOi;?;E(2 z=i=5@iOV*olv?XRUj97zsa8W`I&_}AU$h7u&m94=QLRr0{{`2)>&on1w=A)h;qHS6 zPo6%ydlw047Im;zOGbPNuD;EYduI=yU-sbWpjs_Io!Vn+8*;i|&f(kDT1vj}S$L!Q z!Q9R7EZ#$1(1n9OdGYP$7nX){4uibqjMs8zb0xTK0S8XTJr9c za}wlRyL7DLHz9HjII$cl>2|dwXDvs+?IrrUTI!)Sua59vawJY}erusMBVqTN=h>3G z#hp-=6_(QlH=3JdnxjybqlMNS&1X4UM02F13*zVrT2>|p-n=#@m}P`#G-#xPbOAh1 zD}r(QxaC@&A_A3){P+QKVu#|9qh?TOF(*8U zq0-lHP%!<@#a`Q@*KS?E2McGQD3l|2$-C=>8mRi>me-O}p4~sq45tv%d&vk%Y?qn4 zrjTkYaZ3D4{Nx0FF1`DiPewo3?!+d9@H;mB#0HDy>SJ?ri#gMLzPz8JnT1W^&*u^1 z`vgeJpbT~h1RJSwvaYddk--on9?mc@(~9NB8VIAD?8T+OPQMEv zR0#XB_p*mT|F`{}6qdMf@1jkw!*?Zxzus*7Ab2V}aXWVRqUk>U-YIyBiOLS#K}o>v zDbiNiB`{wgMd2tc)1TtDIJQQ6RGYU_Cr7x{%%8_6SFLLLQ^tO4&r9+KLDzmXP1YA7 zp}hDw)3c&bUa54>U=SZ0nNlOEu71#9{%Tb-jDL`!7cSuQ2Iao^Sb0Yy9aByV7tAgA zg*n<0uE47|_mF+F$+11e43Lu@e9lRgu~q6VmX=HW^0qE*nl8*TO_x3|TL%98Q07L( zRVZ&>ljYzzTrtc8r;(6z{`x{BnGC>ll_{{MCyl*A@epd8!!$=II=!n-sI7Ft2GY7; zKiI8!01O0i>c#>ES7nXvIB2phwa>Oqj@1E498Dw(yLk98ui;k1jGl|>CvWB_4*ymIaee=g@6i!n@TH^=*A=S z08|mXLs!`j`RJyZo8SsaPrutpKPaE(QWIQX4&WE`@{=6R;RlJAn!t}J5=+Ae((s-v zT)VO8FfqUn8lis_ky!*K8uv6ua00wt3|tG{lxRvNHj2@w!SyY{+(x=Nbcs`nw~=UBcwmX9wG7L=aG#N2XSO00%K)q4VfzM$l?{DGWUug zt-%h;Cs<6z(-o|0$`Imj4&_#8JHA(D7G{e5cV9~2yV98CGPllDiZYTc!Y)c<7`sBD zTFv+-jU_2^f8LKWzcN1lwo^~GA81`>P@*a{F4B8QuY%RQ0y>LqogtuS=|Mw!6)mQ& zHAqif9alDr%AL1MT{=lDUuZ+4C_BE?fP{>TQU|is?lA32i}RH!ZPmiU=(p*-ZAB&! zq2D&PevfADst0rv!*uZz+KnC2q*hl_tX}Op4I0#`*`RRUI<*@#s9meRyv1qm2DY?O zH^*GI(m{q)Xx_AvZ=*)oP_bFlN|hS3IdMhlF!?H9u(dcr&sn3s3Z>#sqEM2O|Jek{QT-wvL86Z z*S9`Z{1-(w%jRI#S@UY3clYrHpx(z!v0>yH6bXBeqd$a!J9)I^lQKw=p$7O7Le7zs zfN8P)d^&bKfSL~iR zP`X>>QCQmr^OQ-K>i26!2x;24-nrU0FVR~4RtYkfHm7RKW|cEN1UcLI*YdLIh;=r< zGv4l=(qcx5k~5pn+`fBC^O+?}gfyR;hc#hmMw;n{DWJ!96Y#Xt05$E+P3;t ztJY7LICV>1fB(9hCj|tJY0x5YOiT9NY}`1iUq7h}(aG<4SK%vgKX#_w^EyEBY4bXe zNAf%Jos0)Ns+JIfgq!9WNN<-1Ie(x1i{}|%No2b*o<0`e=v9OQhF0V?3BPuoEFrI3 z85;fzs6H4oESWE)x@1NWBH`pSP=>{n!lqP4f z-p&D`f4|YV(TX7Uq?O;ESAI5^_XWKxKA8?fewLT6krn9>?cksYAP)f@xt23Gt&$I< zp`^RrI8>C|WN61Fef=u4y6Ize1IZ6Q2n^!(@XG#T6I+j&yD4JRf~Fl8z^0j#*V^S; zD%tBcwd^*(Mv${~yG;Gb1BZ;Oy*i+3&VIAzFCfQC^ej`L0tgK%4X@)#`CgLxkb!nV zD4%tg+Om4?>~8HD!JQYVQhHO$iKS~dDL=%^tp<9uDiu!BVQTl@+oV3{Hx@~~aAk9q zkJZXIsoo3D=4w9{VbgIbNSSCq0SVT#Up}^rssooeS14VoLWNSLE7*-tWc(w^%h%Vd zxUVmj=_r+HE|n?QuQKtybNXaGU7~odK6h?)%wH$h3>`jv$gt6)q&}Au9rj$llI*bS zN^r!)yi+2U2Rlw!hQRn(8bX@ejo`I_3ZNNl@{LaAT+{W_=7cru81A!VnDk)$%1v;F z1dQ%86+0<1O?-$7)R+pCMI7w_rgo}NaoAx<*s*YfexBH)Ro|h5`!?>LV}8y=sn5MN zMb>DPlv`Ro!^yH|A>eO-~l>*uFTjeOPer z_H&zzC{lQ2qb@@RNxg4vb=-AhAZ#`s?K&#BB{j9F+dN{b zj+P@Tdire|*(@Byu)1BsODwV9OM3Suf01gCI%Lo^<*QhiCI%_UT;6Ux-*06yS!$n! zg7%9~7mPETL~pC=KEBJ8*%1M)BD{np^;#|VSu(^9jSsEYY-Jp&0;!{W&n{ey_^}^T zlz%Ymv-{E7@yITScTLVLpPU%mjZ_|ad)MjU7&gqg?rcxH5%Zi{)+6@#$KcVt8yKfN zvM+;NRNwUZe%WcEHh;>aC3SOo+S^ww-nUg~XoTI+U@~ZgD2^BP4K2R@%=yK-7-xM?JfJ)OeCuo`+ERE_u zk9I3(#~j=%rewqfJefBv=`N=zVCw zrm{6N142@;?NuM@M+#0LMN^4S0%dX=hx{<;yC@+7Gx<+MNWAlV0`ZQ4d^$)z8)T#; zLp)1By5p8?vPcaT6$$a}0pJHl0sJft$kn2Me1oK(I|qqS|3a1W`STU_Y~VR&I=mqd z{*sWfEPfBg(~WIMHNRCKs%soI}Q-! zTjb%gDDb>tFh=E0cRCxt_OBjY($}xNpEo_%1~Vc@>ea5@uwm`m^@?1CZddEvgf3?n z{S&+X@_O=RL!B7%Y0IIguov@%0+pLKtxP|^O7nZ>wOPJp4cpdyXnMNSna%4?aseLX zP0zgnVAU;fUlv6k-rQn}!u?fI>cOc=C)Pvm^|jYP9>bX<24m<&viVx=o5XN--hC+D zw6b5*rhb*1B0!^wt5jM>ye&F90lV7P4l`TBx^M6o5KPHJ7v<_0h*8|g&#N*r?gX9C z($vzJOk8Kfa3P7jR{F|_A0)aj8EJu*W7YT%r>Cg#SW(P%YMmRiMQ&)=MYR163yvDQ(2U@4k@@%NAZb zHU0Y2e4BLAH9-)n}eT1PJtB__Mt!rM?R2=S1!XsDoU7=uDc;QtD@*ER_4|%3M!TpD|?&W37oPy zWAP5CcScbfGB{_gDLDIMH+V-NaQtF7*BASmus zU%irs19IH>$c{@rffCD>liQC;XyWvHiw#%6$*_kUzf|WUInL}lO;jmw*~*b{7a@MG zAx&qL*}{(xU-(H?PDm!p89DIfUXggOB|OCL$_3?HsPgFoh>%Zwmx091#%|)FpL)3# z0%le&Sx%4gCT3AUaZ%vC3wNH*{X&koQS!%SC;%17V{-3|8I`$F5*C2h7wDCGjKqE= z*U5Z5@%uXng`sbuKTx}MGgOC8FG&yb^c8tTx<7+1nxUC?X^(CiJ|HZlxPjtLINr{J z_vW~IATmZfCOP;!LSXc7%1;eU!=m>3wEM73YdWR0x zhb-a%UN&UGf+5x0wymyyw-6{U?5*cy8oG>vs{_R%!JEFF${s&dX2d z3{JkTg1}sH0{FW+(ODjC|AIg0!3SLR@RPXZgY(}XlFINHFB=w~C$4RtxFN#?9r-rM z^*XsX2t!JfpVO~4f*eE0{pPS{5XS9?F3%I!H*WaQWyUV>+=-Nz8#}=jQuxPy*f0c> zM!Nfho$u0<25`73=`|=Lt|{ai>})n$eJ^84f5B?tC@tfzvFXRAv65B zYO=PRn-7vaw$~%cB6L>QTZyQ76j1S!=5IFUj281uy%}`KP2Dim1+e%+l8V!pni~?( zOkt?l)~*M?kD(YF+45HBTZ!+(@$tJmGkkTo4CC?8o8$vH+`bFB$v=0amn+*>uEZTz zL`AL;hC(Z7mkRBm5jjY9rjnf`X~W-NOPBuoH{Mb9%ZnFZkYLOsO(VNRYs z`+|Qq)Qx98{2+%eYc8cG)vZZi!nJGGmC`8fm40lkphA--n|&KIJCMc*OgR-%Ic=WG zCf7QZPHx)$7scu~cf;#fxi)=Sl*8&bdz+eaPFv8WRh@Qq8gy;Ypj*SBuFf;|)1UPJ zdY$UkE!Vr!`6ewZl&e_4F?Y^9PF}@Jc;~jyohy&7n_Rtyw|mZD_+dayKv!r zo<$2FFkX`un9Ioid!Y;G+}g7G=;!Y5OA#yw zJtv=~U2&huXd0uHw3F<#!~kDUe=e0~;$?WCQs>~kEAv5(RKjfRtlk8vL!{Cszu zeq$^d{gp4kq1e znWmIW7?E@q8*u-z1N+DV(Njx%IJ&X_L>SbHraeT{iaae}q@*uX`mS=}!%#ABL_$SV zh+wqqGjL2lyd9sDR<>@vw$&h**ni_un!$Y1OkDxF1Yb&L$B@Ct4?2s-pBWz;A3he3 z$tB2sj~dL|MGY@tb#A0Cj5Ltl*hB+(&1DOKyk@ZXjv)N(}fsX2&Rt>puv!J4at$AYd(_j&%i3g3uS~k z*c`_f&V2=2i!N>H(X>5s>43)7`gAQD74+ zt^FS5D7leR1rnlvgFKnw>Ncyk4#mi^2II^}$*SRxva3|(x{dosj~UWwXt|=5OZ078 zc|hp+K3#|SxYd+m{L58pEexD8yvvln!)jOQQ@w_+-?ZLc#t!J*vRBD3m(rcJv3?L>_LNOjvLUvVWAR(^@eq82gmie ze22kp~J$lwHnb5YM<1{>_Vr}C6F(wq1K;Y){gW(nwc+K z)Uk*S+7gntzojQuo()}D!aKajXtta*ziCI9ziHOGrahLeiX$=}-fLcqR^^tFCR^yj zQmrXPbBDu-PTkt{mHPB(+qmcCfg^+bWB3x&kfB%N{U=Ns(j=e@3~pF;c)iMg>vFdr zJDSRRg38*9%IZ#gyz1G=T7}8_=fxhMOp%Gue_dIh<-Nzwi(kHFaq~_vA2!X|+_dkS zmFXv<2M!(Df6&O0KexB;zNqeu!g-`Vy*oDVVwu zs8FypUzDpAqbe9q+WLg#CmPa{?^bRw!%epWQ54i)C#m_#<(L_*sI>pV>F80Lx;F^kO6m@qKWgyIWea?rY?u{Br8qOb z8{?9dA>Xq3o#~YRJIk-@JSdZK$!;;eVfCSe4fBc}1~%x?VjR z*EJ-a>?Wate5_|Z#P8?FMc~S&?+hmwNnp!y+G<=z$6d9WRGC)mR-2^@4;)&&qGirW z02dZC?NhYQf_@_g>l!v{)~l{xO0QA3Haa9c7(ZCa8@CdoYFCG9@Vwz8W_lEe3?`|iTT%uGq#)AP{*dZegnLo&06kr~F*R=VZXNjm&FQ+ukR|qX z8r>dpk&C1{3=I4#vaO7GDM<0P=jXfGY|9kCgf0>qkJ1o5rRivA$lU%Tj>^AFq<6tW zWu*b-S%-%2qT$*^P4E!d>(lfd>~}`|GvZs=PJMAa&vYI)P!8ed%3h%|O|_n;%4rwO zS7x)UGxDVFd}X#lC$=(cC(xBy;ty$bWmb95mJy9ZY2pTyB_9z`iTKRW_#F;MM3DMR z>T6C%GarQttJ(MTh*%TZ&4Q5 zP37IYrNfXUy_2&CH;80)$<(m6-^|)0!(l+cu2rXd4h5)LyL4OmYRj?}LPmC)U5+AdZK^k9uZvJ=7{PWk_zSQKd*`t_L*?dufj%F5=jmzFk*waXltAbdIC8~?DYJLY zwQt*Q32xPKMI`K=x^nkiaZ=;vZS{3Z*KjL3s87EjSU9jo-M(ci6)fGa_wYbi)vqzn zKrF2XX8Y6X7M`usMy2$U6~nx0Gf-~E+^L_Vd3L3X>~_3@SZPARG+&FU4STz}^{?A^_%LbUg>|`;UriaQ9BwW4&m~QoGNDl&C{VlEy4ksd zX7S?hOqe7q_94iL_ucILrrvV4(}%l-sv@w0QLp}F zzG^J5Hq)C~yI{s)NL^cdVwtf1vEz!3Zhi&BxSox2*Gm}Cs`W(skcAUg)USIY(%|7u zjtCb5!yA~6l&X1ZNT2*&;u^K-Gm38}^dSLRwsG9ORrizDEIPTf8eYlt_uBPXhldYX z+@@)nr6V`(Pp?Skb?>=D>T`9A|Cp)6o7e6}w{uc1L(5#90s(;uXf-g=YT&FcxqI++ zcAMJZtejdCv3m825yfjcmU8iLN>|*K*?3xTCrh>HL}|#B#to`>U+a#vk8|c=kSWJI z^X2bn^P83sugWWHL%UkC-adz0X{Zft>d5-A968)eV(N*Zjx5{!3}aF3I_Is{6UN|* zg&h2Q0||$nxKhDfRr{)tUw?q%q!X@0wbocSg><1>bL9Q7lUf6{8X-WI@rSYT*52p& zW>cpo8=)@SaT-2qlr9zW4K>g`r%QVs5-+=x4CuLJ5+7IO9lwmSn6L97740Tjs+>k! zomIGMCTEO~$+&38w$LoQJY5G5w40>v@{n#~UB1ghzGd$6T-Nz0uW8}1V-waUs-4c^ zuQNv56d5|Qc(r^^h4NIcvv`zC>4N#Z^83}6W(u`g840@PZA??<&X=XJa+7wHXcMZH z5_Thai92Q8DD&Yh#n@y^r6qN{EGiW-%(dydT4mQ#B{;TO4u?s=kip||K}8-s&XFL< z_)PnQFO*VVMoIPNLthC#disYxnM%)@x4^yV&?T2A%<}i0H1YA0DFyT~aE17U z8KQUWrrpL5Qg#Xw=?30V(%XIl-yp4w0w~4b2fBaWB+d3_KlVk03EwgN% z(&1YB3Z+X|U>|a-Qb~2I@;~pVdf*3a6Vt0g1uyGnrf6JBTV@w3cP{RY*7rYeXgX!L zbn$)ldA06Ys-3~NbjgYpOP2N}XUnTnme=+^^X$4BoLL8jM!(7=7!ONBNC_&FBdwGr z|Fj_r*{N)6v$$zKdC3ubkz`;YAA1nW#+-zTn@8rYlCm(>YCN$%GZWl+d>f-bMZWkfuhQr z+GCnD8B=@c&cTD&uYuW2hZ)_>P3&tTz5YtZ4WSsqKSLB( zbc0TBWiGVUicPyW>}Lp$_wiA>3+XVFj7osqZp9$q4l+V1uwbvG-?M=HGnl-`3rVd; zjo^eb5dpiYNC=jDG9zkt-pN+UY|d=89$sC1@+{9k$D6m#QK(+AQHyg!HIgosi938f zuR$+O8ct0S%=8XE@inC(i4E4XCB1J5>1U|-IlrJkAwN9lE9z|#5`pY!B)5_v(^J%e$#TSEc3 z40Y;kZ$b$8z@3q_Mt2b$X!s8-&p?2aSP>$sRu8WBMgJ_EyyEs;>({I zCgQ2*R<2hbk{%s0*Ya)|^Uc`?)Xy}HQ?`UI=a0B~fkE@;1qIHd>|&KI zQd`Nw4!{){Lk}xM%8%Z`WL`R;p9l{EtX*Gw{~%G2U%B*dvd&?1z*bX zw@R9BJjXj&@V_|z!u$>=a(pDkCA+w5n&&5m3VKWIn>_a4l=?y*d!Ys2!Ex@BgyU;f z9A81`fAkzkqdiu}VK6V?TbNp3#zz>irSq6LpCY;4WyxI`H);&{lk-(7iZC|Uf2002 z)=GVWeyZ49PD3u)olb=Oe?FP0pZd$Clmd#8PK%PofS)hU^SpC|T6pO|a`6_`$d|QTBc#3)>@Pr*UXt<) zPh{PnliJ%P)%}+AtmGo>mW5xEI{7jCWvpXKFQ?rkmt=vatkWizrmWxuhYJw4d47_n z-H}~d^q#x;|AX?Wt}T_}-~K{yrn>1#(7tthbfW6s*{EIbN?x+@Hx2*O zwsm4Nzh<)=x24>ID7Q}k2i(5=U*|@<|HHH;{%zOA(h~J{vF75)z%M~_5ms6C<>Y5^ zU!&v2^d+@Mqb|?!=7HqW9sQOb9Y)5ssk3&JrI0?+ge$U1_~}0-JWLZF)k?_QPfhB| zO9<9KPp#Ro!r?pQlH{`X3r|^GE1wja@?dr;*JPj4wq)J1*EKMD?5&z@!IGVEUHY|b z`UhRFZ`(F}u3y7lTDktuyuSQj=4I_Md8sZ`OBETBLG4I{({kdUJj{66{Pw3qZJ~+U zHPlyDsF&RatbcPNQ99kkSM3gj#ue56;2@MHH~v67o6g9KT}*gd>v*nNJ07T)aN@PT z{x5yaI8Gc;gj50h&?45Ux5ha+!!dH{R+>}+4i+HwU1*F@sSNhen{8qo<}u1xV?b#s z4X4SGJce2~N*}mSu1aZ+a3UWG_+Mh6JCX~|$Euo5-M(|MMx)Npd3|2fw$54_>pG2< z=a*R5e~YzPNf$wP*=k8U%6IV&o{06jod{)2jVz}j?cYD#*JjEZ zSUIE3k(*{SR8_v{M$laNP#Ko9nnb^sW{g7us%q{aHrHRz?&=)d-(qvqx+I~mDXo4j zW@bcpQP0<}RkvQfy3`@)_3t5ai1JxAD{5-IW3_eybV6{}=MnFt{C{jLMKNtGQfh}L zH)fB%*ssUl9)n}rv}$*0=BU389qiY2omh8fwXwbZ{W>(RHNV=3&Vikw5kDt7m7Wvr z!&aws7JYfD`Wl#3GhJ3P&BQTXtcBV`H3`HSB1xzBK&0E(m6QKzU_+9XFYqC+-c0&<|n$T zx@tV8ujI+TWp^HvKGSdhOmUW?tYB1Az!JTm7DLazWj8j|qqGKFLYnLH@w7SBZ>c1Y zNxx+`R(lbW=s#QMWschA&K{1oos8{o_iS*y!+>`v9Spd&e~T9WRhu<4UiEL@+`nq` z=E9L*5o=tf1Kt7Wt>$Sa=cazF|6ot*xA4{)Msqft=6R7`)p#MiN!@0eA(c!TbT!y{vNh2 zsYm_cou(*b?G`7p7j<*RAPI6u_578gnb%X?o=Z5L9n(W0t-2N!e4=sd~eh9inJa4g)R+U`iQ zFZurcWN3CycRtosZ}5bi;#N7&oi)PEj4QhGvAD8w9;T8xNI-+lJ*3k5FQ^u3jyfTv zo{~p?l~sdD>&{p{(N*M!aH-i8Uv6YxO)ZOVnmw~~6)*aSEqPc@FF4cfC(F-{eQxg| zCrN5NlsIu6%54;G=w7|L{t|R=p*55}ofOr%ck@P3y*39#jVjzC>Od8bNo^-B+N8{Y zrcL{|Yu}_nC*oWxVPxB8bvuAEbn%cXeZcNs%)jCB9#iA)@+LE+cTf@jU0LR1rBcOFSZ`<5feDLDb0ILgyhotOUMgV zq`#Sl`6+Wr@}b*gdUm40+07Hv-_(n{wGp~F(%#I=Rh>I}Wo}*z74aw&6b@SVA^5`A zv>+G);v4dYY}uUS+DNFqcjM)&o97!^t=|oK-puL?mp+eul}A`$3DNL*eD_4J(e0*h7LzPrsz2pB)khgsnG3^&Hf%MT=f$bH-!o zJrzF}JNowXyJTYDM*7Xn;S~C9Hvh1R@tq>s$IPgu)HPoweR+%yN*f+yIsIlaPSI~L zR+7#TlRfun22MI3FKXB#_zGUGI-TCj$#g;{hdM%2a7+9d ze02G~JyFMC0$G%{A}KlQ2w8wc6i?4h$B36vebgFtM}wJ*wMzcXl2dJ-dUn>|*A{Wk z261LP{Pe>v#iCPstweO${EiPD*)OQpin;TmYs0v{qr(@E=sUJn)ZDo%YLD$Zd{Ox5 zzT;{|&z-lT*0_En7hg`;dE?Ud9ha}|N)WcSY2CUF{V45Pw`tw3b*t7=i#DxWwQ1YB zO<_aTp->`a#`)mj^D|P&ouSqIheAp1`PNW>oA3kV_K>QEF=IxL0T>eq4Lg&l=_{kB ztx!64F-1;`UO7F|)P??HSfoj{X#{r3gM_c~dA(qMEPj=oksdcP59Y{xx-zhunS0`P zZ;_fpo-5^}DL!#G5*z9BeH!kF3bBnLchzn+uP6P%EjHQ4jn$OZL-p?9?yGA{Zjr8} z_$`H_n172DB_;f!9rPmm$Pse8DLGE!p)Yjz#t3eVgHo{V`E$~V+#E+r6QpnR zvnOnVIm{A%2jy)=he3&?nnj9X^njrj_MK(uPcG!#bhLco| zdAEog$rE-Ty1^K-f~1>KJlI1`DpBVp5P#*6j9!qoHR#qeK#S%mel3QM~QH%HbP zXj1D&lP2T`nRE*t!!}4!)#zsWR$&C$Od?W-^mH6g{zkzPO}t9qDXqUAJ5SV zdtkep+Hq9^RN2tL2n}pOkvB*S{;M3H*U0(C=TU4+9IGFZ})$ zZ3uTJkuy8LG{H@cr}6k!9bUqA@ID8gu2Mc(qse^C`i6|N&-3fk%q!_BiUPr#xhJi(Q zpWhk=UDI~9ZmoGZTdJGDy$!Hm(U!Jyn+zk*um7R3JP*rrAYs>Wk++%6@{l&Id&%e- z&Bxt!C|XVh*tyG@0C`4d>F9ozb16ckY5m)Bbr&{v!2zbm`cm3(}+8 zv^@`^!skOJsOW7_e>4(JKvYOKi@x2pyy)P!wxpvo(%&=a6qyD3=H74 z4obq7Cz|fMJ^}r3GK5UuK*CAqeb5FxCqoHn4H;|p{XwZKcI{e8b-Ly6Z_{3X6PDR1 zSh0h{oqKld*qds34+7MY_~4dyCHc*s;0XTo(-CTu<8%0-0|V64PldX($b#=5$O43o zxuhWTKD!aLI(ew>kpy>vzF1Y?-h7KfHG{9>Pk(~1zq>Kl5;*%AoBmm`0p@m^TyAd3 zVT0yE`Sd0DsYs6-*o`3DpcC1uTWATM3N8>hB5 zUv*6Aq3yTuy?S4DvdXxdN-uRh8Wy-WMC{S1$8dWnL$2zF_g>`?B5a?s{J7ncC6wRk zh+Q)$)~+|Y|CphZA}2;2T}x7!l?n<+C}$b{b-v%ijLO(HsJ|Wr4?p(D33~|9YcC5c z)?PY%8T6(x^tWl)+8amo*MClzX0gwYGO{d9`#D<_*^8Sbq zf^`#jG$JJJ!nX!H`@^8O?_m%=HhAmS!Ta97M_~F}@v$oab@k~{*8-G+i9ogjBe=Kn2Vr%Oj~pwVcj86U66Tu54_l8 z@{Lxp4=PToMDE=x7am@r^%vq8mnWazE=S*{#b<1h>~yk=*=#bCP;-X43{~e1ZOya zNjbG`;vSzZCg(0L!oalKU8qrcoz#@d!y46TTLCLh-X1hlUMO@>!aIar5A z=z2SJ?uC(Kc0?}kTy4ovL&1i1+s+T)H*@%vZ372xyE1&{zVP{N>ozQC7`mid=jD+* z#*Dl$SG(hPKkEtn`2^6{`Nf{N(iPX!u_Sso93wf?Ap+>WV^=vkBNu6<&qZ6~ zZc}e@sjjzim1x+yh4NCA5kgt}NaU?+9nDt7==_fFJcTI}p{#iwzvo1~7pbpu8?)n+ z=giOfnAXjrY{$yBE5FW;4oJHg#sxp@AK9*E?K0hc3p7~XX!MBUb_vX|TgFK908Fm*^c$@UN4DCxRH%E^K6d0N~U@wXD2%Q{i7 zVwz_lNNRb1=>ZTH{7tHp{TC1B0}R8C_Bk3pH?@||fB3llWdHqo)(Om zGcSN26wgZ<>GF^!c2Ep_FC0ESQh#CMxubYE1Sr&2su>i-j}&+ElI%Nt*mx|bvK&u3 zX2gTAAHwYAZnvJYD}V}fzaW2L#n-YZzE~_m8tZbaY${)*Y^00E>B+ivjE#g8cUvy@ z%2GT@nNML4#)n(Lhv-gFl{wIC3H%ksedPdsbNPrnlg^!ewCgG!v<(kcd|$xp*STOT z>C8UtnjdkRavhhcM(OOO>gmlle)HSVakBU~V)Q6Ey|i@e$E5dLE^H&WlapaMOx}uz znrh-4-}2_QkmVlkU07Cyi&^ns?c-n1~MUoXk5QhI2+})vYeLe0Q+}(Ca z&2xXz-EVBgiVGl1*4Q=BBe3KYEcqiNqo+oq?W?NH{IjyM0UYw?5Wox9kRJzsls)W3 zLD|PfKsmr*a7HJ2RVAcpOH`t9iXvUIXJnc^wRk_sD@S8@KK@@ky( zKPa!kF+|F1(eM9LUWds4t-K!l@m+ZXPI*RoBbEL#Y7u30(SSvad+2c7fDT?BKn{#D)r@T5;8AlJVnAGGG@m=J2 zK1M<8smRp}XlR@ktdK!l6t1EnGdVtO`WneFMv>Pe$)bz~Ifq0nxPn<)S?=G8b{7f9 z7id`!g#?MjzQpwoeV75ML7QuC4QSPoD!A2PB+;Z2DVEAHE}6ON{wF1i1dqv8@wh5_ zDd`cZM4E<`OpRJJ_{~dQ60La`ny>D-DBd@4n_sP=8=3QNgmavEs=KX*2RkM1w0T=G0v}^x}JH$m@(~HT{-zgVntGyvh=`J+~#OnGR)E1 zs{UTU~ToMbRuR+e_DE+=SK6w4(%WYK zkN*#YnB#!}c-n2+0~94k8}RwG3LV?F+lZU7?Myr|W@6j6ZQHhO+cx*h)W6>|yZc4I z^Aw*#-`n?0#<9m4^VdJ~j&t%j|Chh?PygpXmStOx%VwScvt6wVJiMwT88(wU)KEwT`u}wVt)UwSl#vwUIT# z+SuB}+SJ<2+T7a0+R_?nZDnn3ZDVa~ZD(z7?O^R_?PTq2jj~2tyI8wgyIH$idsur~ zds%y1`&j#0`&s*22UrJM2U!POhggSNhgpYPM_5N%M_ET($5_W&$63c)Cs-$1Cs`+3 zr&y<2r&*_4XIN)iXIW=k=UC@j=UL}l7g!fs7g-lumspotmsyuvS6EkCS6NqE*I3tD z*ICzFH&{1XH(57Zw^+AYw^_WsXIN9+wl-`7lq#aqK~w|;1dNzKfT$=P0a0m6i-OW3 zppYV9r3R29pfu^dmn4J`g%}hNL|Py~q)4QO4oN6)eD;3MKKs1;d(Xd*YyHV&Wvw~K z81o+YJu=st7>7XHK+eWofestC8}=J^8xBIYLiR#-LJqOEvG%ccu?`lt7WNi)77ksu zUG`meT@GrtYW8Y&Y7P~)74{W&6%H_4m_5u6=D@IJ*fZ=H4zjkg_Of=e4w<%@_L+8> z4o@|8 zsCqqAcAz%tmg{EdHt9as&C-q2t>>6bo61As8R8k_p@vbyhQbEJsD>27A;UpKYAdC6sCBTF zsz6Z~QW#XA7ElU?3I+?P?iBYS_d$0mokAa?57Mck6wx8kK~ZWlC3z@$FqvvYu^F-% zw4n}A28IR(2dF>_a0oaEq+%$TAASLKLAPp+O;PEG2d* zb}*J|L9rOJ7_^{vQM!h@2D_+g6ty9>K{aXxrDCXJu!0Jsz=mLhFe-z>7-9@EsInB< zA=yD$Y9=LfD048A>O^rGavF4^(kQec+8~Vzp+JTpgAgi_LL4Fv5~(4SkfD&l5b7>v zS9=1K1O>-TXlI;~npQLfHv!548Gt6hb3hg#4p0S%02Be<0dRoVfIPrkKph|&PzFc` z5CAU$Ie-K}4Im0o0!Rhm0bzgwKr#RWhy_#tG6BSzXEh&0Kv^PMRSBS?1TCC3D6i&C zO=V4ZO<_$+4YuZ$wN_mZsH{heP?KAeSW{brt|_fat7)uxQIlO0UsGKZSyNo|zNVoj zv?jkMsiwXrrl!0mqo%3mc}-SL9H4oSGDsTi9qbq!9&8@`AwKQ(%WK|i!fV!x?!}n< zIrn>Ra&8XoX8^{7@Y;ASJQxK+X`{4IU^a-Y&DLUrc|bhcJX$>9Fi@Cwm{u6r5M-!r zsAULl1+{9oYPEtDKnmIlS_0fvEK+Au8` zm;qvFGqf0BS&*!@td=Y|6O^f)sg((K0y$|rX*q#uAeuH!iw1^(AleWu2$%>WY7@1H z;1E!Vc8FF8co($WFo8|-#K+7wWGLU6K5K(-0+)j`z)j%i;4E+)xC$HrE&{&;A&YAq*FW zH^dq?7~%}^t=QIvR$MDy0jtoUfK$L1U<(=wa0PgGtb2ny&K*z3(i`YFI$jhj+8~M( z#V2Ev8cnhpWg9Xk4--YdJ=)!g3)v#&}YB)7~1-7E00#|{DVPOq0 z91PFEG8z~-23{5`+aQaR#b;tO8!~a3cqgn=gA>jPPs7q0XgC@kf`v3da1cBZOKc$G zi1-j}NJ9uN1iy>jMNYtz+)*)fWQKyyw2}p?30Mxy05$=i1G9i}z$#z_un72$)A!fF zJm6bk9WWYL222MMfG>eLzyx3oFbY@#Oac0eIN}f`G}zBw}hYXiO<44bzBufyu_iW2!Nc zm}1O(j*6@VV+~MFmb?UDuqg-_EI~j!_;Q#56NloU*7ZH6W+7l zbZ^G|&-vf;lk;=Y%LXVs9FN2!@F)}31gNGr*5Md}o zxFOOIVTfvlw<22+ttbV!0#X5?fGU6&APW!$D0jF!(jDQBqQmJ(I)aW8g^MCZ5u&JM zcrr2>k&Lo|+aPTaHmCvk0CE5^fC9pSNFV};!oV>|3<84+ga;x65rL=;_y%$Vv4IkT z3n7INLa11HEHV}mi?V=QAT1CUs4jRHvJ26LQiH1@)evf^3U~#w0#Sj2!C^=k0)}G1 z8At|#fs%#GB4rV>s7!b!G82)Ba)LV{oe)ka8k~ltA!sNF9D;-(ASfc7h$JG2s1SGv zG6WHV+J)~%`o5C)8arqMzj9D1@q4rAMC1}_({-OlR*I3C${FE=$giYHS6+?06caPm zeBqwRY0|1Iw?1cC6Y^GRmBk?+U2GQLcC?8AO(m`duZf$|%>p)B+BJ zBhyKpu8Cr*0mAsm5z>OIP*nlNbWU|$m>s!I+8N*D`vGJmr6MRC7TH1?8$alq3o?;X zjS+5*oFFZYAMniv8K5(fW=J-C}EUeKTm2<+$k?o{k zcN@vw@IFeZ{pnjaVREx?)%t1bv{M6yZS<9nArz>RcN zWQ1cQTS*h+hn8~TCOWDa!d;Pc(#km3Qa0SUQN>ZXB65HxU89TjFoZjjjH z`!jk?7-mOL?0nPgR?QX^{-l#yHPX&ZhB}O0Y07l15^T3oR9Fnr^A? z2=BJ}=E{3d8`&Ul7%9E&{gFJ;wlulvw@)i8&FH#{LR>=I*U3pgUah<|lk2JlaXoFE z*XQ|hYvrUFcdEF@)wB&x&iM&y6{MMVs?y_D+L)7DetU5r`0pv65^ukne?9@Ha!*M# zp0EAdWVW9M4twXy?dqgxuloupT<#r{bE?U4?QOp%m;JbK*>{Y~Rczu)+WIDE`~-0M zcTCGw2jXVi)+Skg`*B&rMlo+B+s!BQ{Qx-J@D(2=!?v=?em_ZE+3!x3y3HTINOM zHJUi8R&d_PJUh9z%#FxtG#=%Y?l5iC$@yhLL_wqJs463Fqm4bey}XzC;i-|HifmkL zTkGV+@*!sKQxiSa%($*L`sB(o7c={*ag&NuTt(Z!lLdng#Dozm-i{trRnRw>0%TpTy@_gBl2v>0uij-3uDWb{)sUsmf+&_-cFB1 ziLwAIeDO%{f`?FD!I0^E*}4_Gc)NFJX3vuk+D6i)f>vS0Exlti2cP6>n@E?%ShW^U z^e)XDc#^GcoL+j}s-U>1cY22ZNxrsedReCxy?CXUIkWFcR)f*q(sNeH#qGVnW_X|E zHJIEjE4Labp6y+m;eL|SU_4UlV}&WE_Rh};J}GE09VuI|+9+oCZqMvp`+zjkEtRo~ zEpF|dm^rkTi!{+K%dqMyruVMQaIIw{jR~cWRu#nqy|Xg{Yxzi1LfNPlqj;m2J+pr; zi)9p4s%Mp1+|^5;;akgNnFN(JS<#9ay&E$;YdI|A?b2W?Vll0kF(b5Az%tz~+p*f6 z@vY7Co_}D2vVTzYwtr|~VrFS|6S+?}E5pd5RG~Xz=IiPtl206ya3J~%gO)JU< zx@TwBR$0jXgsf4c*zc0F=BxQg00B381y*D@Q?}ZVl;n*6I;_?QsH^iV&g&DJOlf6|?u{At>Nacd_J?32NU3ah>`d$G1nbat zZm~blo3(#CYsV<06w;kJ z)3r)x@onern1qxOyJ<6w)eRQUcFvCRZfQt2afY_aU=*_s zL+$CbvJ<-rQVz+0G(nz2vLJDgDo6yR2=b1@x?V%_Aa5ackZ4F5BppJ4yoBUH5+F5@ zC`bt;6@rI^K?)$r5DX+1QUS??5Q)!-A7nSPWSLc&n?;#SoYQ6=@eQ$(7)~rCrf>+{ zD<@_hZL^HVBoK3niNsnWnpjFqBQ_FW5VMK##A;$Bv6%Rt!}CIk`NSk*Ju!w@PRt-S z5uX#Yh;fi+j_xDTdTAZBVOlfohwL=$7i=Cj0h@)LiXI+M;8-4tbsGDX?Ro5`$XW-{Am(}rckv|$fy4zLE8 z18m?XkOgD{*_cfX3&X^)12+R%fy_Ym#^wfVgSo*L+7x05F@@N%o3X4|W-Qxc(}HEe zv|x8_cCoscU2L^YHI^Dvja{)>!Kz?Zuwk1p7K{mFGd3A429v>--IQg?GG*DBo0+Uk zW+vNd(~0H8bYjysX)GF(#)fP{+PbOH{4Y*lxOj*x<{U1Z59MdiK=9|n&7=;9xwv}S zL#g86o^!n1r=W@3?i8-)RT60RPyBqPm7h9odBj{^42E#~ic9bT9A%H%y1v%DNO27# zRGq6NwUsKDhtF#G9^objsGncE_FVq9E%c>o0H}jjS^nO?jl%ds0d^!mS`cRIrhJ$d zm9Lt%c{M4m5qxzwOV3>oDt6D-`E{DmFRME}nJd3d$>xf(tS74_m6zLE_MBq9C1+rb z#YI#1nU=nJ+I&!?qw-Rxrja_pfD3Ut#pU_2_>jBKuLT0gXFeVjx!3fnF*3&AIJ!lb zm&dfUlFaP@wRZlBC?KEs_?_Z5r?8SNH#@Tf;GGCZF6bwJKX);d^G(H%;p=E>jiWV< z>+&m&Gbyg2TF3tkka-O4qz<8r2P7J%IENmaH_tFmkSqzup1y8tNM=rw$Cxp^Dpk!A zl3rCUqm-Mr{*JZEe1A8%42NzjMVogufIBr5dH2Bqf%bK`;CmiE=!# z-R>f53bhjF>}etTFN>;Hl6VJcCtAjWHUC&xgI}F=5Nf9WncrW9^B+&I%FlxDAiV$9 z7)B5Ck3jguyP|zZYb?0tJ%;X+WBjA{qt(Z7htTp9$!Jrl(*hH3ZK3TT@#D5~+wpH0 znMrKmq}D0}ZTzgoe>mtWH9hDz>C38bWok`5ca}F@6QG7hdsed`i>5;_|*G}a*^j)&n28rwToHBct zxTcWe+c^iJ0ep|WM>K>6%Nd}PokO{3fqMvZ_BKI!O6Eg)tIbzkuvGKB0)O z?D>j`*7z)CT54zULY(=>-CVcH=l&V|6o0+1l{+rO+~Bsa{wc(R>dglLD!*+G+k9cf zX`f#gU}yGZ1QkNpara00`8vH*0&NXn9da{b=Rz}jZTU62eC=JMRoBVoACD-PGIgaA zLat@V_f!00_oLtV$Dm!zgQo}z9)1fh$0fi}G1At;eDsqTIr0}>Pi>ars%aIcTaz-} zEsc`{>yzMGg-o9ZqLwl}kTbNy?=YngEP}TyW7BB6Q}?BsVDVzq!_cAolfnQ;)9uBK z9_J|Obu#GVVUCMF9R+k${pmr~r{myzJE#A9;~;I!zxv=KN>@sdjG0D(?EH9WFxU2t zbue9rGmGL-*AT-ijS6xT{+Z2hd;#|wv&S-CqXz(v(W*COLP2Q|rVYv5AkB3-)5@}M z5>Oh2%A6!|CE3OWqLrp>Pfi?Anj#mT?mFtPQbq2!O}2$b5vmSpaAGVYxi^JdOu}K= zo4Ryy*oAaG=Q!nQOSIu!qj+lE(wmE*(|t7v`FY!$)kYZ_)&{Xa_8ArZWC{^V={i->+gLq0jf&>miK%Wz7;aTHX-)yvC1w@KiSAvuOUK23Wq zR+G8)ptMRn_$arS>mMYOK;XMGulju-}&e^6{hS6*CX$lw0jmuBqI&6hS zwTuPGDe?ErkG$kehP27{G=w#jrhfflDNaXo;<)@gw{qz;km3sK&_CUE@vo`pBCRwv zDa~O+iQX{+Q|=@M3;?)ogT7xW=sXOqG!Oc=8>S(PPZ&Oe>So z=T-b)@Xg%dWkC%CR&ts(bty`Ve1I>viC3M>&o`N@y8(2gu}c4*N4X&u?Bc&aNRb~> zTE9;Y7>J$fvU+IN{M}ZNe#0um*+4f`>vkfLd?vr~;#8c*?`SLZq4SQqBrRVK$e^uz z{=$W-te^<}peX5ho3C594A^oqQ|^sPSUxo33Ok&B_R>Oky9_RtUtZgZ)yeTIZYfsmD`xxSfOO0o};HAqk_I>en&j@)w*Uq*&`*{Z(S=I*(TWr z9?x<@E3I+euFVNKBDb=!S^;eXK!-%=y+TQeoD}+!!v;QW+I3*%1?TPO-XPk0ZGY8T zgikva810_BAjs&kaxFb+7PsNNf;h_c3k}GyJO(QgrT@!jcdKe#i*a|&PMXFhT*}X!^*gTwc)js`t41dEZn?)Ff0>LI%?a^-Ysbc=t@aRq#husxRrZ^S)~Jy+tX{ zo|1Wy`_2RQPQQC5)r$O5Oio!(yYWo!7l$8^TdKf;wvpW~vIcHw^^Rz(S9?RrSeYK3 zmyu=sVqW1)Qt6EjMOm4F_v>1Qz2Yy!L8lj@t;`YE5ZdHK;QYl14PcUh@AJGW-f)Kn zU2swuNqCJAf&WgL{$8#S^Zlv+D?780xlooAU+Kf-o^xmNo66sXZI_y&)${fKnF<}| zK(SI`0mu3&V(rfYIGoj5_6YEc&Q`Mrz(3>LF1cO3b)PBvQAzGh%y54SUe`bqhE2dl_?P-c}MJH$ds@&*)VwASraXhz{jDTg@@=82d^`@Y)C*?*dT ze2skc<==Dnk7-KZppLqcPmq6z-TJa&WOq1_{A2R%#&n2N*R{4M9$~KUlZAcV-e0>Q z8EN|dehT!t{F&Npl?)}p_z1@oURincz>IOCIwLa?SFYfhytxE0OZ*%#QGb?>k_PxsO=r<>lMxp!~4|LOHVvHeFE7ZSC3l__N_r!4Uf)NN zKQHTiZz%aAe|naz{t>Y&`uD;GBIGphg$`Sah2DBXkxckcH}3hr8#hC)qE`;q-T|pJx#xKd0SMVP7*`% zXa~zqPV(**W_DMor6e!a@Je>PSu*hw#~g}CJ#r{qLV}F2)t>pgtg0Z^u zhoX1c`xnHFPyLZF*3iSym$?bo&<^4`?-ACydII6l)5Hs>X^|-dq*t@eb?6CxYp7)9 zD6iziA~N;$WRJDX_mD3lEo1J6pBnWcWIog7_NtHZ>vIkxlI&i}cZjK&LW^AHnCP|e zNl|jj^@gwOR3ES_=}f9u{YYWDflt-1!rgRV(y?NPp)({+->WfmPu>9nuOM{C&fpmr z{8GIQe9n82zIg9+VMVsoWN?Ri4j6wD7PNqWdVHwms$7eJX}d;#a7uYj;|aI4`n-`h zJ}tKw9pn9P)yS2nK8f$lCs{4F-D(!nUhzv*f$dlyOl-QSpdVIH5OTtQYzT_O^CMznO zA)eDD%lme0Ci=@*eL7`lL(T|_=IbAL)TFzinC3M*A2<}u`OPquvx%r%s(>XA(JIH}=j<5PEf9A1 zaF3qFn{P8Fr8xBD8qri*f|H^IAsa@(w zGFO7my~eCGM9Zi5I_h$NkFqM~;Rjz(luQZz1)I*N zRS`J4OIMf$#n}_R5B+9qeBV2@LmJJA^o;fU5oo7A%6A`I7^j+Hr1xhmf6 zKP*8b;AJg?Bgyo4;N_g!#ea}!7ynb^x&PFt_s>R7AwnPEXj5-AZ1YzE=E2YgB3vUs z1scJjQOHVtvgbbjs$VO$XBNU8#xqiOywUo^Q0%FNa8y%QN<~!FXTh+5$sPXsr+l_Sgp^ztem8HtD zZ}0B+;uL`n0EHFs$FM`*Bvl_iAAjnjFzR#EFjwPb`A>ns7F!s>a4Awe^AmM@1fCfp zmAPy&QL|(Bv^(TAZ4% zcQ+ryC7cA+COpS9w=O)5ghXZnebM1-sFu7!e_{j0Qo*g^5v z(EBRalOBSs-Nx_Og_hi}^R2$#-#vSuV0^D&?%vnSTH#^8)Z1g*jT=vh+WFlrmnM$znU<)V)5h6n+27(*;x6d=K_EgdhKW-kw|ep?s1}f7|0@Wmg7z-#?Zv)5r8X zK88p?(|@cOGjIrWt6Ru-nI@@)B<_;fdm^U74~IVCp%R71K?f2}*U=G)M^4(gpz zt4djdiXXkK_1MT@ZCirm%HHo$lLV(x_Wd|Z+9`!V^4gE6 z3qJM`zWJ^;J?~=Z`lH-=6$L6T~U?$sF2TlJ2E$O(I`7E@v(A!{zc9X_30`Sw00tWUr} zynZ>)>D+}^z%QO+$*mS}Nd<#rou2lo-?U_7zkz`30&4Zl?Kiho!H%v*4n<+-oUw~I zVYb)jFSQRa$Emaimzj}VR>fOr&AHIk*0T=9s?;i0p(Nl&P02C51Ybmns!Or z!_J%TkEZBxGUX+H=Opo+A!5K7f5yUWuy5xtWc19)UA6SUvaVL7q-2HHMPrDogvP*! z0U!xBB8$bGLoEe*rq@?{-=iAUqng6%zdlrkvE+AGV!!>?Bkxv?=F5Zmr`1Vz`^m{- zLojly_9@549gd#Cc!SO4SOU_)bJdHZ4fGfcb>Vl?R}f7fBOBBbi2AO+#^N1V)_>-D zXO@rJ_K(&%YXgQ&%%SSH5Bom;ti4<->CU?ONM`Nf5>IG)koMX%&D}EdG87Pw5YSI? zhv|i?F|?o9tXKJNjH0S3!A$L4Hut&!zC*4UMy7Q5)}?1LUNrR@ZS+gyVc69ek_48ToVC_YG)w`FZ56v&Ha9e*cA&{!1H~+6Jjs(2B!KN&Z9;0;d_^^gx9Y&rT$=#p34vci;o_Dx7utIv46bKR!vXD zN&VM>7Sw86Sfm*=dvNf2x{k5?@ngjpdRb6zwGjDt62@t=eLIKAE?&Z+bNf- z-UfSyJ^3=@EnO93Z`?2b&{oJ)>FpY}Hjj$D!u{n%zonh+@%s4tR(50-1|6SXM!y%r ztgSPMN%Sn$^()(YqZQEp^85`Mw?ak8+st;8t=UFj2 zEtWRoZSey|dybuuEIe5p?p65W=Al6&u9CxpS6>(ZIPdtn=-{APpQYw~(_0RGNoBY0 z-mgvUwP&84%B_152R0uTuvS@vJnXAJtT2UyPE;u*Ahax?wD zJLkdNH<-fFVoc+$HS3M9@=fUXQo$jyQpp%QFpy8;o*$+T9H&ilcm#_r5WY5y0j0$k6yQZ zEw3&=$c#}YA3Fuao^3eW7G2&}KIE5B^1KB1l-AeTcU|U@JXX8yWjW_>8ERu;V}YP( z(&~(4e9NAcC1>K+af0n?cWJn$dUxi5$`@%w0@JBn(kB3u7Y|_xP+X4y?#=DjvrNYe*W#cq{&dpyk^^H zg?jHcZ$@Qc;U%^tJMrwyx#@F7FNU)gEN?YS|BAUGKhihidzQjk)_LQtA0_~E`~L9! z@cd1?KvW>=*wn(pLV5E@&`8j&S8Tn&kXxP1$$~b#^{~>}HeK>|d}KfYuIDBi)re}0 zd}8sq%ktQW|FBxg`-NW%zlvi}Z&7cHXZ2?Eipy7SZrrq4)2Y*~yA`Cj+h;AXxiw&` zx%zZmtN1U z-D}fI`i)=B%w%H#y=Mir30Da~`B>YaS+k=>xlUl@Cw=EBR zw9{(`uj3I0xElYUS9ec-mG~^xvZT^;<@4G}s|))6wUJ=EMWgfdfFk5J$c?8Q7XQEIqRN%WsFl*-N)d*f2xCJ3H{cMyiice(%k$`P*rJBu#6i7JR#GhmoBU2c zLDzqpK7F0ADM9<`&`IA57i0VG30sn^zM7qA`RLQj7mAVN2d@|($T@0~qtg6w=k{L3 zSIxio#Mlg&NqxL5)!Yg~_w*h;rLlL~HdcTVUgqq8!$Z}{(7$^0(tCbP?1)T4jrjmZ zskccDKGF9S7H@y$F5&t>&uo$T03Unq&R4`Y`F+v*M;}id)+4)^fHj_c0A}Dsdhg9J zn07@T8c@1;N#oag)gxXQqeqZ=^MKgJGf|Z~$=}5ZS;-`jz=ZnV1iRRGXm=OEKR&c- z5_5O@T1QEpw12_x_0hm<`OJNy-&p(IjXC$E?QOuj5&%+P?YS?O3pz zvcaaDb$LlA_Dfa@r#2Q1R!BUY8}AE%3az`!u21X{WK{^q{1lP;tRdBUC~Y;r{aFoT zP0vyH(EhRA41aH9@XHC8BH(t{9TBpzSh$pD^Tg-HGGpZW`#Y1rFT1aXj*6gr)CEO8 zY#ea=tCxO_M;tPS>kf!ho<&m z;*PC;j~w5_)E!>~tB%+D9-k-XmV*YsA|`!5gQkOR`;{E&D9$1Gq{s+o z5RqV3|CTA;w2|-N1B?Il>Ctk5#=cW=FRa9(-4|6dT2|nDi{Qf0#UtdC93#qzs0$~k zi(9K7>rt1UPI>+=<@KQLM`Y=}#(xCS{-@!wm3*8qLVXf0egTq!w|cz|mumfb__z1V zds~tg<4UxQCGMj&YhLE(x>fu=J-3faQ%h(}9UW|8-}p9wQGTuA|NBQS?X3wh_&DR`?K91baO>zj zM=xDI>UwtwF7mDZ_X~$^KFoyRaCE_&v2WiQ*l=LC$AWocl}b0}n8=pr(-FLc`5>R2 zp)KQ{6C=hC8MvS|dR5rt=$AI^xJ_;!Zc=&4@nOq;%RO9HUs8j`E7B6_%4|j^1SJq( z0T)>HMXke)eu|8)oizS`qTK26fZ^xhZl1s~pW&BHSkdiAvaE?xuT^2?K1Lzm(ay6>~J>_5n7I1ky9ABu%7r96vBdG#) zSV6?+VE&TzP@aHs-FxFfe+TUUj(Z+zthxR@WFaU-@TYp`ckUfB$n>=FAudrJMb1z; zcz#vgBsADTR^Jub8#up9{))Uq}!F8jIJRz zp~0C>0zIGfR&EZoZbED>?BcSSKz#PJQ`B~Z4KSgis3cWa?a}K5iQh2PTY&w5%5~~Z zp2YV(TSL*zNxnti;DJ!f^|OxpG4-!nmB(lqrBh21rSb)^ENW7qIE-}0i+nt7sjnqF z<55hFc8X$rv~dbrDJAk>Hi=8~pU)cD*{Ax!kxi?6Ra6?}+F92s@w+a}5#{xd?{~Kv z#jBi-zps&a=|bA}TDnoasH^bBsC#2B=3V7njw_yFHmsNn$C~e4CSO%!$R=oTS!)RN z#KnlGMA)Uwn?wJs1n!v(% zKfD=3_|hLR8f`gs)5Aq(T3gM?>DZ8Rc30o-z}2A6+m_eAS=}0lB7hQPdA##&Kfyb)!>oE(Gxfrjfq&b4HX%B8ff4Hg)dNP1x~S5=Ouu3I-Rai5k7MdO9ieyn0H1e3D-PC#B!raV z+jGHEcehW`cEh`#NS(RQ@a@Odt zRe*M-O~<}YP{oXKbT`J1QzQFI5UOnS`4UYzIMDUTZhxTbgMppoK6xd)W}gyw|Gc)9nr-nN9SQF6-R=#>i%mcwTSVBuw!I4`CM-qDw;V#<0I{?jQKo z*$+1k=?on41;x(#^XlL`skg?u~449iqBqf_>AI@-(RwL<~CGdw3%uf6<8_AaMitd0`I0k zi}e0NVsGxjS4yHPMV)@W3fJV#Ik?a2=x0l*%ZktA4;maakvp1a#eH8m^wHH1QYWos ztilbrNGFaTvpV$FitCn@K%a1!L}7$|VRQplaLrOy;QQg|?_%cPkG@<~lxdj|Lo28s zXjxP{JwbyXv2X!pkPo7-@*22YI1_GLqf~DAmpMqbxh_&<=)Ne;j#IEYDKnzA*PXf%lT!Q3IY$51Q?N zqpT1XgCB$WBX zU@OJJSJUpqXu|n8_G}XNEhen!qPFo8(+mA4J4b9ti1!>ao7Y-a&7iWsDY-t~Sg2?t z6y+*626hz`-SI3)%iHluH}C6`tdLnH&t6n*PI>h;)x1;22TA1t!c_V&JZ6HCqCpG30+#@Cd_ z#6ZB;Hd?zuhBV+v{3?tfw8D9}K+j-K5exJE7Y-(u$>y%!`4)Bae+CqFdN+q-$@i)& z>A*h6@N1Ng+tqgV4H|!uaS;B%HgXyn^ED;DHSI5rN5zGPx+*?@0Mo8W_W8^3QI(`p zYw~F`@=>$T7t9Q`-JH+3xdikp*&Y0Bxv$%<;0|pGV|kpD+}+c&Uu)V~|F1^6(Dvbv zoen1IpKd$F+gqKhz7e$s-8v!DW@58n{q$_OM5K$IA?V_f`Pa6uzKvep5QD{o1rk2>-Kv_) z4iP;iKl>$bXCK#ENu{1k22?8gTTRTD)t4=e&(W7uhWqpB<*LDLAuIMJbEzbCb z>(U6$sM_(om>An~z>LhHuu>f@PgQ=dCI7Bhw%QKQTm)R75Z#IdYzo*dB1P`*<2JK> z!_niRk}?NA?BUHm{2xI44}#w`ICk@z=1oH>j}K=&vMwI?r#l}yU%6MZ>Z@eIZhmCc ziu~mtKiYSUTul4&+}!!XfAlLPUZ8i3ReV;L*E7sK!PQlnp3%amGZ7!OudN%LsSn+}QXKRRqN@UAVj6?F1q30(}*waHas z`S9Nd_Q7XU&a;dq3>kAzBdcv5b6=FK{`t**_K3Q3^9v4aUmRXMv4_j@@N3KeATK!D zBIn=Zt}4aT$Mnr}PQk%^^k7Wr0T)nRUU=_DJ8vbOZ#DpMtLfY3{`GH;u#-XPd((Yv z`CCug+HP|Ctpq1)O)T#F0oM`iq$#}nXuG?u_*VhoCmS!nno@oK?mw?;_pVu9ASfh~ z&{?8O8s1;|Y~pj`l@Qt~eG0Dp*euH7>>GOGm}0%(9pYmI>D8c=x}`TMom|B)bKHS-RRM_DXjj+Fd7GJNa|>D7jEa#W*11JM zXx|^9dhkC~wEmQ{&gSqIXG;{H64bO5sr#r9+?|As=}$tI5@_J3;SFwkLcjA0d{*xW zv_HA^?}1!>jEg^|@lVjLZ3a=d=G}7T4T5yTE9h8Ja;? z;ve`sX&th&L=z3pe0hf!VTR(+rGkj+5z zBWkmO=B0CZ^E=lLU#nQPNAH05e=hHLia%;HFsTn(4|5fxXg5DvfAPlar4*5><~4OE zH`G<^d}Bec=cskP>I-ko!Q;%sF3)a7Kv` z4A~fG{^H?^hC~>ImrULKG3F88g#Jw?MfdW1lfYJdT0d#GhVy!3Bc57t|K#`+`7kZ< zhS*#N+&ulS=Fk7(Q^bU*3;njI|NC3yGDw^HRsOdBqF-NIj_Kd5>rM`LrL5$HB9?$0 zgMb2&fV@QIKSTezo~KO&`yYws^05d<2(m`VuU(~Seg?nklqLK0_4x5aOMIFhD{rdc zcv58*ief<1t+ky_ zp)91OK+7M$)bO}QHZ+E#7^Esr-!Zjjmztm8Yp5rk9O&dqa1X83$go#FD*Jei&2LaY zuJ`r4{4T(&DwuuLqRQ-uR#Hv4&%4 z5BkTL@LJaOe(rrtgiXg9`YutPtW$$r=N<9nJ8IYB&*{aXbEdB;FL~x>f|^Bz7x!Ih zFM_4o{hqBgn|Jukz-2~>R6yztvvz(yMML~f7U&clXh#eQ^F|4H;UnMiIc<|nsyT+7 z_&7N;^QB@YY=7o+*35=~1|bH#{4YEX1`jB?WcI*GcmIA=|8&KcqPpfxOF!9LBQUVF z@knTDmAbsEMgT9%q5`h8sf+m)q2{%3I!e0B?$^O2*YAjS{= zAK4(I2v~^19h{sOI4f=)iDiyx8h8XXwx4m;D5WChO4;1k})I8 za)KgaT(Prv&Vx7vm6y|E&0$p=SIR@jPjxPG&os-6K(!Au*ydMNH>s2X9o-@^$A2I% z4ao1iWF4qe!tdF3S>{D%1Zm{kEsh0=)yahCen!)F^Tp#05i~*OD!t^C)z}%;4~(jx z&R1iJAJa${zio}fJED{7Ut+fuuaC^9*xI}t2^?Bn19`Ch z*otlU1V{XomSHjO|8d{rUDiBIIIvk4k}WGa3jgHV8q~1i8I%C?(m>VtmE9goFjD*|z|AYEA%oUu=;d1^N^Wkg82o3eOPqAAe!&_f6TydS{^%laM zw_<6wB22ep=3a>L8zDvI(H_VKEyO)KdXaF1|M0hk#Fx)xkx)su&7;g_ zZ*q+Cg`t`;xRAsOgA<-ttqO8>?f#c*uzo<{hF{*gMA!Z%?oa-7m*|ga`lrb0Eui>E$z2HdY{K3j zy^FmSuC^7;-9+B_Ti2toagGbm>j^{z!nrTqcJ3f>z(-IDUwse9L<&T0$(vws_!w?F0H-kaB~%;_~!x_PK;A^0CICemppmU<=v z^(_KbP3iaX&Lh{y3yt3(WI~<4G0B zi&AW;KF6N&&J@jh-9bB+kXW&y*?V0O27a{lsGC~B^A8u3TJkkR=xmb=9=hfGAR!*M zghkg6u_PZNrWR&hAWb}Lyl*hR;Fm`HUP+9?c{k;XXe1H6fqr>FO=<37VRux1N~83NDe;QU9vd8ED!|9$Ki<{S5JnL6J2`774WHpN8D6uF8u9WG?3 z446@0b`l^l#}=y2dJC`m&dYL5gDgR%iX8+fWgP`pv@_l+%awiiKf$!I6TIBvIJ|4o zLf@L*lGi$JJi6p!LfmI1SHLmlx1ck6S@F`CcPTEk;F&20?k;S9_$HP}-aE#6djX_6 z8q_Ep@AtcN@-IrWm8U74FBXFQ5VpC+dS9hteUam>rOmYJ5^2cA;#m4tv!$F-E{4yK zK$%!sNPMfEZr6{~O||ZyuqxTy&)hh~{l7)3xVEAAN1qIh-s2j@sTh6e)Z7lha+VWc z2szvObl*dc#Y2JgY-UITPO=bL+4OXAgj#ZhsBL5(iqa=r{%?)J-#Q!-S?oX5;qos2 z=xnRSYzXd~o+z^5l$Rub>1`|f-0x2^4O0JW)cIfX&}1EvT+xk|lzhihQa`!(dTI80 zNJUnz2am#me>cdqR$ptdQ($-hXDHY$a{wcw_&?O}7D}*`v$;g+np8 z=>JVcH9d3qE4AeR*9rU3r$bl-81pYAUxa6M^}kZzz+<2gu*cn-hUWz_kL457&VSI~ zu#7(Me`k{2Tb*M5PYrRfSH>SPMzpN#Urw|ddYO)~H~)oSKXhP*ORpMT&98=Y(b}jP1R`=Tnzyf_Lz& zqEG>U@$lV9&SWU)htm|s>bGY9kx-i+F-k^bwN~}tTYu1x>!S|Mi;m*u9u|4b)ThGt zOo1(g&&96y4|PSO=+oH$VKZvw7{>zY(gsR;4Rz_1xzm>N2X=JoeqK#wXSdXG-Nel+ z4|%NnEAeZ1P|3UALX9w=0luv1cY-lhIwr2K>ig`Aod-){Cdc1Pu{NmN=CxTE%xzVay1vc+6d?f&>0ciwQ~!%Z zwZWu^xcgl3ZN|eOnoBJEpB9Uzu?U;c`gBbmQW&ECt!;*mity*|3 zjaQB@!S>?Gh62j5qsOa1`RAhQ+8(R)@wZmZs#F8*{?PQS%Y&yC>s0v%2V~K_OHKy@ z(Ja~FN~wcuY^e%T)KrHwI{_N2>^F*gd$(>})(6YNMDNdnJbET|`bPS3s&PN~k?dG;QROm&L&HZgOrntwHOyaxyj%CNP z_u10B1Xl0rTarw8(Brdpcu-f=Z)h86{nm&$Z=~qcc$I~h=-KU$xtH6RW0INquiV-lUM~z&NpKw2pVEkC`w-pK zai#Z_-Hv9@7(fN5ZAQ>4qB_TRN(*zSMxNV;eu99@aLiSEXUf5nMCjX8)WxHyi;%?%qtqeHCB1+n~}&rGydOFRziUKWS_Y^!#-}KuIIn)1|zaLHD%&R^M=!_60xT zmcTfyU4P7r+WtVPOK|H~IqX0# zM??KggQ{o`@kpg0Rp{*Xj*sG51NnRPQBqdZW^Ku{RsKDfybeyWifMs9V@XuIruh6v zIy72qRmvRxC#9#(-rUT#)1f7zjSml{kG}+b*Fx)G9F%Fb_)MGr_SHREZhxlMxqQvC z0=tb4B8Oa*aCj$iNQ?QbdtLMKdd!aTp(` zGuxWkn5e8Dn)qTNikpdsrwe?LN2$qe+y=gTTwQK8RUF31bk@%&W%I(Ai8L4Mx8`Q{ zxoP1dVLu(!tcdGFytLv;y@t@k@*C%wW$D0c-Ib^$Dm3f45GC#$DGAy{ZB5JyD&IS< z+FILQQ*ZnosAmt|;*Ydz-h@{7#Dp(!`7LF8wvtwU_DQ;;9q(@9xb?WQ4cM8AUw&-+ z<}_hLijPgb&rJFrwokUodYayq9iN|5joLWBU7Jboen+5PK&kM@ z_mHhhDX8WbyH(8>**A^16G^uy-}OVx_IiHXW0(CI5TB=Bu}dR)wN^I?3)!_myRoz>Qb0nMJJ8qqG8kMfIrBk55snH9(I;^s@X-^s!DO@L7sB|)|q4=$(`>9!Cg z4n$m`fP)aRk<6XPap?NxHt4Fo3H_MY^@S(ka7`~1nFycs`= z-#{^T)&U^~5@tFCZ@JtM1(DY`(GYD%tQ%Cl%%c0{a?>3(z4iDsDDaGfapTq~nKU!u zTej6&Hmyrc$LXZn_WAa*c}syQzk}P};W7E8OLg+s$|2+h{M6FQ-E(Ql z#xkVpN0-cHmbP#X!?<$?dl&y}VY{gIwy-!ApdVMD@^PT&(*sC|^l_%z00WU_#jVfV zx8OeE^l<>Ds40s6I zQ*VVZ+goT!gdSV-cQf;E*64GXvkXa5Hk+G+n44J-X`rg56IrZ`~RXweK z5HvLY-WH*Uh;E)8tf3KVG{mY9)on%A)c^GDGyLGRa{SC88<_z3DP~=0l>KtBW?0|U zp+TU)V(7ajxB|`hisT0gw6o?%5?$25>XfE|OfqJwek6CUNZzo)b%=4~GBWzQaqX7c zb8DEaZnWI5;ns}IH)dN-)NqTD;I!J%KsUE)(4?@~e7RBpCJ1xL8q}2Gyt`Y|!d?(L zKvUX;lh9a(PfT~H9ivS&Yt~cdjn1(zN{2E|YSt%WX**0BN|n!*Hk=Slz6N~5(ovi= zc%~_-jfZa9sqlsVD$NF~OXVKuVXeOteD^d_y@bv_m8vp9r-rHosHxunJSk71Ut@?_ZeT&o>s$Zn=vRbu1TZdf=qpf{mgZ_-}s zS&CZU-3dU(8|QkKVV$S~-cTnT7I*EW8iSJ$)A(PN_vWViaIlslao5cu0vj2nx8A{E0Luk z4%xduZ~y`D3)3X`^*-~=_6{{Wa9;9g7dZml2F7DAB(o{LS{>id$1jC!mbR+&`+3%>KG*B9o z5UoWmlf{ja{gR4+us2&!s@H5i6LhTy(#3K{bBIdmy5>xCx}KAstSSL@l9q9xD}dxbSz>kU#at>4r9Js>M>frCN3TPMZuno9zxOv-ehY&zq z+20IE*bee1S{o>nB}3gJ?j<`tcs$N-PK@8E|DeKm9a(YF=_L4rB78tsmIIiuTk)R0 z+upezf1^BE*Fj^(-m2aL+o_@2suAgdrd9 z)(*_QZSR?rY44hQ-9A3>ys#WqftQMqb)ZGx-TlP+fx7Nlq}0Uj*ANeTPgfSfOLC2& zi=m4c0JNqxFGmX+^^&cSaAl0ig#Hb<(CCf*)g28vl5Y?Cq6REGb9#B`-jZ{w5XjoF zZWP+sxqcmg7(Q=@H4r7TgJ#uGRe+LhMkGx~y_$V1WR*5#8KH#tP7yQtn4Y!jXeB)h_Z%EJKgg0(K>pU2r_hozfoPX!-nD1 z4mCRVs1M+l75?pTz{{Z1w>jSb`$G4`kQ=U6Bc_Ay{JPM|zMDAuS#z*IXrZ5P`TL

b&AgH?c@kf=PLd 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 t3aM> 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 literal 0 HcmV?d00001 diff --git a/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Medium.woff2 b/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Medium.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..f92498a2ecf4d95ddd85c8b18f7b9ebc15e11658 GIT binary patch literal 105924 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 RS-;sm8d61l{^uOb{{jFVK@0!@ literal 0 HcmV?d00001 diff --git a/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Regular.woff b/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..62d3a61871039b20b0bfc6c7474d00a5639f3830 GIT binary patch literal 133844 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


Zh`0ua!LT;JuL(Kdt$sjf@wC%{`lAGN*>ceRAaK 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
@@ -189,22 +189,27 @@ export const AppConfig = (props) => {
+
+
+
@@ -213,22 +218,22 @@ export const AppConfig = (props) => {
@@ -237,7 +242,7 @@ export const AppConfig = (props) => {
@@ -246,51 +251,56 @@ export const AppConfig = (props) => {
PrimeOne Design - 2022
+
+ +
@@ -299,62 +309,62 @@ export const AppConfig = (props) => {
From c44e732b1c8f7465ffc913ff1892e3c0fdc6e0af Mon Sep 17 00:00:00 2001 From: Mariela Date: Thu, 21 Jul 2022 00:44:19 -0600 Subject: [PATCH 14/61] =?UTF-8?q?edici=C3=B3n=20de=20clases=20de=20botones?= =?UTF-8?q?,=20y=20eliminar=20importaci=C3=B3n=20de=20doc=20eliminado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web-react/src/components/ComunidadViviendas.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index 4aee42f0..b3841e64 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -4,7 +4,6 @@ import { Button } from 'primereact/button'; import { DataTable } from 'primereact/datatable'; import { Column } from 'primereact/column'; import { Dropdown } from 'primereact/dropdown'; -import { LocationService } from '../service/LocationService'; const Communities = () => { @@ -123,7 +122,7 @@ const Communities = () => {
- + @@ -134,7 +133,7 @@ const Communities = () => {
- + @@ -145,7 +144,7 @@ const Communities = () => {
- + @@ -156,7 +155,7 @@ const Communities = () => {
- + @@ -169,7 +168,7 @@ const Communities = () => {
- + @@ -182,7 +181,7 @@ const Communities = () => {
- + From df2c9326463461cb0823d29b2811c1715cabcdd2 Mon Sep 17 00:00:00 2001 From: Mariela Date: Thu, 21 Jul 2022 04:27:39 -0600 Subject: [PATCH 15/61] registro de comunidad --- api-gateway/src/app.controller.ts | 4 +- api-gateway/src/app.service.ts | 4 +- .../src/schemas/community.schema.ts | 4 +- .../src/schemas/house.schema.ts | 4 +- .../src/schemas/tenant.schema.ts | 2 +- .../src/components/ComunidadViviendas.js | 229 +++++++++++++----- 6 files changed, 183 insertions(+), 64 deletions(-) diff --git a/api-gateway/src/app.controller.ts b/api-gateway/src/app.controller.ts index b2b65e09..c71d9b54 100644 --- a/api-gateway/src/app.controller.ts +++ b/api-gateway/src/app.controller.ts @@ -78,11 +78,11 @@ export class AppController { @Body('canton') canton: string, @Body('district') district: string, @Body('num_houses') num_houses: number, - @Body('phone') phone: number, + @Body('phone') phone: string, @Body('quote') quote: number, @Body('status') status: string, @Body('date_entry') date_entry: Date, - @Body('houses') houses: [{}], + @Body('houses') houses: [], ) { return this.appService.createCommunity(name, province, canton, diff --git a/api-gateway/src/app.service.ts b/api-gateway/src/app.service.ts index badc59ab..976807ed 100644 --- a/api-gateway/src/app.service.ts +++ b/api-gateway/src/app.service.ts @@ -131,11 +131,11 @@ export class AppService { //POST parameter from API createCommunity(name: string, province: string, canton: string, district: string - , num_houses: number, phone: number, quote: number, status: string, date_entry: Date, houses: [{}]) { + , num_houses: number, phone: string, quote: number, status: string, date_entry: Date, houses: []) { const pattern = { cmd: 'createCommunity' }; const payload = { name: name, province: province, canton: canton, district: district, num_houses: num_houses, - phone: phone, quote: quote, status: status, date_entry: date_entry, houses + phone: phone, quote: quote, status: status, date_entry: date_entry, houses: houses }; return this.clientCommunityApp .send(pattern, payload) diff --git a/servicio-comunidad-viviendas/src/schemas/community.schema.ts b/servicio-comunidad-viviendas/src/schemas/community.schema.ts index bc00ed43..92c57eb0 100644 --- a/servicio-comunidad-viviendas/src/schemas/community.schema.ts +++ b/servicio-comunidad-viviendas/src/schemas/community.schema.ts @@ -10,7 +10,7 @@ export class Community { @Prop() id_admin: string; - @Prop({ default: "Sin Administrador" }) + @Prop() name_admin: string ; @Prop() @@ -29,7 +29,7 @@ export class Community { num_houses: number; @Prop() - phone: number; + phone: string; @Prop() quote: number; diff --git a/servicio-comunidad-viviendas/src/schemas/house.schema.ts b/servicio-comunidad-viviendas/src/schemas/house.schema.ts index 905f8664..dbb542be 100644 --- a/servicio-comunidad-viviendas/src/schemas/house.schema.ts +++ b/servicio-comunidad-viviendas/src/schemas/house.schema.ts @@ -1,5 +1,7 @@ import { Schema, Prop, SchemaFactory } from '@nestjs/mongoose'; +import e from 'express'; import { Document } from 'mongoose'; +import { empty } from 'rxjs'; import { Tenant, TenantSchema } from './tenant.schema'; @@ -15,7 +17,7 @@ export class House extends Document { @Prop({ default: "desocupada" }) state: string; - @Prop({ type: TenantSchema, default: " " }) + @Prop({ type: TenantSchema }) tenants: Tenant; } export const HouseSchema = SchemaFactory.createForClass(House); \ No newline at end of file diff --git a/servicio-comunidad-viviendas/src/schemas/tenant.schema.ts b/servicio-comunidad-viviendas/src/schemas/tenant.schema.ts index e0d66fa4..c0e66ec5 100644 --- a/servicio-comunidad-viviendas/src/schemas/tenant.schema.ts +++ b/servicio-comunidad-viviendas/src/schemas/tenant.schema.ts @@ -4,7 +4,7 @@ import { Schema, Prop, SchemaFactory } from '@nestjs/mongoose'; @Schema() export class Tenant { - @Prop() + @Prop( {default: ''}) tenant_id: string; } diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index b3841e64..b436bbbf 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -1,20 +1,44 @@ -import React, { useEffect, useState } from 'react'; +import React, { useEffect, useState, useRef } from 'react'; import { InputText } from 'primereact/inputtext'; import { Button } from 'primereact/button'; import { DataTable } from 'primereact/datatable'; import { Column } from 'primereact/column'; import { Dropdown } from 'primereact/dropdown'; +import { Toast } from 'primereact/toast'; +import classNames from 'classnames'; const Communities = () => { + + let emptyCommunity = { + name: '', + province: provinciaId, + canton: cantonId, + district: districtId, + phone: '', + num_houses: 0, + status: 'activo', + date_entry: new Date(), + houses: [], + quote: 0 + }; + + const [communitiesList, setCommunitiesList] = useState([]); + const [community, setCommunity] = useState(emptyCommunity); + const [housesList, setHousesList] = useState([]); const [provincesList, setProvincesList] = useState([]); - const [provinciaId, setProvinciaId] = useState(); + const [provinciaId, setProvinciaId] = useState(null); const [cantonsList, setCantonsList] = useState([]); const [cantonId, setCantonId] = useState(null); const [districtsList, setDistrictsList] = useState([]); const [districtId, setDistrictId] = useState(null); + const [submitted, setSubmitted] = useState(false); + const toast = useRef(null); + const dt = useRef(null); + + const p = provincesList.map((item) => ({ label: item.name, @@ -35,36 +59,56 @@ const Communities = () => { })) - async function getCommunites() { - let response = await fetch('http://localhost:4000/community/allCommunities', { method: 'GET' }); - let list = await response.json(); - setCommunitiesList(list.message); - } + useEffect(() => { - getCommunites(); + fillProvinces(); }, []) useEffect(() => { - getProvinces(); - - }, []) - - useEffect(() => { - getCantons(); + fillCantons(); }, [provinciaId]) useEffect(() => { - getDistricts(); + fillDistricts(); }, [cantonId]) - async function getProvinces() { const response = await fetch('assets/demo/data/provincias.json', { method: 'GET' }); - const getP = await response.json(); - setProvincesList(await getP) + return await response.json(); + } + + async function fillProvinces() { + const getP = await getProvinces(); + setProvincesList(await getP); + } + + async function getCantons() { + const response = await fetch('assets/demo/data/cantones.json', { method: 'GET' }); + return await response.json(); + } + + async function fillCantons() { + const resJson = await getCantons(); + const cantones = await resJson.filter(function (i, n) { + return i.parentCode === provinciaId; + }); + setCantonsList(await cantones); + } + + async function getDistricts() { + const response = await fetch('assets/demo/data/distritos.json', { method: 'GET' }); + return await response.json(); + } + + async function fillDistricts() { + const resJson = await getDistricts(); + const cantones = await resJson.filter(function (i, n) { + return i.parentCode === provinciaId; + }); + setCantonsList(await cantones); } const handleProvinces = (event) => { @@ -72,36 +116,106 @@ const Communities = () => { setProvinciaId(getprovinciaId); } - - async function getCantons() { - const response = await fetch('assets/demo/data/cantones.json', { method: 'GET' }); - const resJson = await response.json(); - const cantones = await resJson.filter(function (i, n) { - return i.parentCode === provinciaId; - }); - setCantonsList(await cantones); - } - const handleCanton = (event) => { const getCantonId = event.target.value; setCantonId(getCantonId); } - async function getDistricts() { - const response = await fetch('assets/demo/data/distritos.json', { method: 'GET' }); - const resJson = await response.json(); - const distrits = await resJson.filter(function (i, n) { - return i.parentCode === cantonId; - }); - setDistrictsList(await distrits); + const handleDistrict = (event) => { + const getDistrictId = event.target.value; + setDistrictId(getDistrictId); } + async function getCommunites() { + let response = await fetch('http://localhost:4000/community/allCommunities', { method: 'GET' }); + let resJson = await response.json(); + let pList = await getProvinces(); + let cList = await getCantons(); + let dList = await getDistricts(); + await resJson.message.map((item) => { + item.province = pList.find(p => p.code === item.province).name + item.canton = cList.find(p => p.code === item.canton).name + item.district = dList.find(p => p.code === item.district).name + }) + setCommunitiesList(await resJson.message); + } + + useEffect(() => { + getCommunites(); + + }, []) + + + const saveCommunity = () => { + setSubmitted(true); + + if (community.name.trim()) { + let _communities = [...communitiesList]; + let _community = { ...community }; + _community.province = provinciaId; + _community.canton = cantonId; + _community.district = districtId; + + + + for (let i = 0; i < _community.num_houses; i++){ + _community.houses.push({ + number_house: i+1, + description: "es esta descripcion", + }) + } + + + _communities.push(_community); + toast.current.show({ severity: 'success', summary: 'Successful', detail: 'Community Created', life: 3000 }); + + setCommunitiesList(_communities); + + setProvinciaId(''); + setCantonId(''); + setDistrictId(''); + setCommunity(emptyCommunity); + + + + // console.log(houses) + fetch('http://localhost:4000/community/createCommunity', { + cache: 'no-cache', + method: 'POST', + body: JSON.stringify(_community), + headers: { + 'Content-Type': 'application/json' + } + }) + .then( + function (response) { + if (response.status != 201) + console.log('Ocurrió un error con el servicio: ' + response.status); + else + return response.json(); + } + ) + .catch( + err => console.log('Ocurrió un error con el fetch', err) + ); + } + + } + + const onInputChange = (e, name) => { + const val = (e.target && e.target.value) || ''; + let _community = { ...community }; + _community[`${name}`] = val; + + setCommunity(_community); + } return (
Comunidades de Viviendas
+ @@ -116,81 +230,84 @@ const Communities = () => {
+ +
Registro de comunidad de viviendas
- +
- + - + onInputChange(e, 'name')} required autoFocus className={classNames({ 'p-invalid': submitted && !community.name } )} />
+ {submitted && community.name==='' && Nombre es requirido.}
- +
- + - +
+ {submitted && !community.province && Provincia es requirido.}
- + - +
+ {submitted && !community.canton && Cantón es requirido.}
- + - +
+ {submitted && !community.district && Distrito es requirido.}
-
-
- +
- + - - + onInputChange(e, 'phone')} required autoFocus className={classNames({ 'p-invalid': submitted && !community.phone } )} />
+ {submitted && community.phone==='' && Número de teléfono es requirido.}
-
- + - - + onInputChange(e, 'num_houses')} required autoFocus className={classNames({ 'p-invalid': submitted && community.num_houses < 1 } )} />
+ {submitted && community.num_houses < 1 && Número de viviendas es requirido y debe ser mayor que 0.}
- +
From b775e73242c0ac74c06e61b43c08147e6f1dc686 Mon Sep 17 00:00:00 2001 From: Mariela Date: Thu, 21 Jul 2022 04:28:21 -0600 Subject: [PATCH 16/61] fix estilo --- .../web-react/public/assets/themes/khaki/theme.css | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/web-ui/web-react/public/assets/themes/khaki/theme.css b/web-ui/web-react/public/assets/themes/khaki/theme.css index da26198f..08d350a6 100644 --- a/web-ui/web-react/public/assets/themes/khaki/theme.css +++ b/web-ui/web-react/public/assets/themes/khaki/theme.css @@ -88,6 +88,12 @@ box-sizing: border-box; } +.p-icon-input-khaki { + border-top-right-radius: 0!important; + border-bottom-right-radius: 0!important; + border-color: #C08135; +} + .p-component { font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 1rem; @@ -948,12 +954,7 @@ background: transparent; } -.p-icon-input { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - background-color: #D7A86E; - border-color: #C08135; -} + .p-input-filled .p-dropdown { background: #e9ecef; From a77782acaa834dd3c036a017a361a1458d68df5c Mon Sep 17 00:00:00 2001 From: Mariela Date: Thu, 21 Jul 2022 04:51:47 -0600 Subject: [PATCH 17/61] fixes textos --- .../public/assets/demo/data/distritos.json | 12 ++-- .../src/components/ComunidadViviendas.js | 58 ++++++++++--------- 2 files changed, 38 insertions(+), 32 deletions(-) diff --git a/web-ui/web-react/public/assets/demo/data/distritos.json b/web-ui/web-react/public/assets/demo/data/distritos.json index f82239a0..584e14bd 100644 --- a/web-ui/web-react/public/assets/demo/data/distritos.json +++ b/web-ui/web-react/public/assets/demo/data/distritos.json @@ -55,7 +55,7 @@ "parentCode": "101" }, { - "name": "Escazú", + "name": "Escazú", "code": "10201", "parentCode": "102" }, @@ -355,7 +355,7 @@ "parentCode": "111" }, { - "name": "Dulce Name de Jesús", + "name": "Dulce Name de Jesús", "code": "11103", "parentCode": "111" }, @@ -555,7 +555,7 @@ "parentCode": "119" }, { - "name": "Barú", + "name": "Barú", "code": "11909", "parentCode": "119" }, @@ -785,7 +785,7 @@ "parentCode": "204" }, { - "name": "Jesús María", + "name": "Jesús María", "code": "20403", "parentCode": "204" }, @@ -795,7 +795,7 @@ "parentCode": "205" }, { - "name": "Jesús", + "name": "Jesús", "code": "20502", "parentCode": "205" }, @@ -1510,7 +1510,7 @@ "parentCode": "404" }, { - "name": "Jesús", + "name": "Jesús", "code": "40404", "parentCode": "404" }, diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index b436bbbf..3eaaa4a2 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -105,10 +105,10 @@ const Communities = () => { async function fillDistricts() { const resJson = await getDistricts(); - const cantones = await resJson.filter(function (i, n) { - return i.parentCode === provinciaId; + const districts = await resJson.filter(function (i, n) { + return i.parentCode === cantonId; }); - setCantonsList(await cantones); + setDistrictsList(await districts); } const handleProvinces = (event) => { @@ -149,6 +149,7 @@ const Communities = () => { const saveCommunity = () => { setSubmitted(true); + if (community.name.trim()) { let _communities = [...communitiesList]; let _community = { ...community }; @@ -164,20 +165,6 @@ const Communities = () => { description: "es esta descripcion", }) } - - - _communities.push(_community); - toast.current.show({ severity: 'success', summary: 'Successful', detail: 'Community Created', life: 3000 }); - - setCommunitiesList(_communities); - - setProvinciaId(''); - setCantonId(''); - setDistrictId(''); - setCommunity(emptyCommunity); - - - // console.log(houses) fetch('http://localhost:4000/community/createCommunity', { cache: 'no-cache', @@ -195,9 +182,28 @@ const Communities = () => { return response.json(); } ) + .then(() => { + + _community.province = provincesList.find(p => p.code === _community.province).name + _community.canton = cantonsList.find(p => p.code === _community.canton).name + _community.district = districtsList.find(p => p.code === _community.district).name + + _communities.push(_community); + toast.current.show({ severity: 'success', summary: 'Registro exitoso', detail: 'Comunidad de vivienda Creada', life: 3000 }); + + setCommunitiesList(_communities); + + + setProvinciaId(''); + setCantonId(''); + setDistrictId(''); + setCommunity(emptyCommunity); + }) .catch( err => console.log('Ocurrió un error con el fetch', err) ); + + } } @@ -241,9 +247,9 @@ const Communities = () => { - onInputChange(e, 'name')} required autoFocus className={classNames({ 'p-invalid': submitted && !community.name } )} /> + onInputChange(e, 'name')} required autoFocus className={classNames({ 'p-invalid': submitted && community.name==='' } )} />
- {submitted && community.name==='' && Nombre es requirido.} + {submitted && community.name==='' && Nombre es requirido.}
@@ -253,9 +259,9 @@ const Communities = () => { - +
- {submitted && !community.province && Provincia es requirido.} + {submitted && (!community.province || community.province === '') && Provincia es requirido.}
@@ -267,7 +273,7 @@ const Communities = () => {
- {submitted && !community.canton && Cantón es requirido.} + {submitted && !community.canton && Cantón es requirido.}
@@ -279,7 +285,7 @@ const Communities = () => {
- {submitted && !community.district && Distrito es requirido.} + {submitted && !community.district && Distrito es requirido.}
@@ -289,9 +295,9 @@ const Communities = () => { - onInputChange(e, 'phone')} required autoFocus className={classNames({ 'p-invalid': submitted && !community.phone } )} /> + onInputChange(e, 'phone')} required autoFocus className={classNames({ 'p-invalid': submitted && community.phone==='' } )} />
- {submitted && community.phone==='' && Número de teléfono es requirido.} + {submitted && community.phone==='' && Número de teléfono es requirido.}
@@ -303,7 +309,7 @@ const Communities = () => { onInputChange(e, 'num_houses')} required autoFocus className={classNames({ 'p-invalid': submitted && community.num_houses < 1 } )} />
- {submitted && community.num_houses < 1 && Número de viviendas es requirido y debe ser mayor que 0.} + {submitted && community.num_houses < 1 && Número de viviendas es requirido y debe ser mayor que 0.}
From e9d008da00e0d56168814e8713de7dc4058ff622 Mon Sep 17 00:00:00 2001 From: Mariela Date: Thu, 21 Jul 2022 14:34:47 -0600 Subject: [PATCH 18/61] delete quote and description --- api-gateway/src/app.controller.ts | 3 +- api-gateway/src/app.service.ts | 4 +- .../src/schemas/community.schema.ts | 3 -- .../src/schemas/house.schema.ts | 3 -- .../src/components/ComunidadViviendas.js | 42 +++++++++++++------ 5 files changed, 33 insertions(+), 22 deletions(-) diff --git a/api-gateway/src/app.controller.ts b/api-gateway/src/app.controller.ts index c71d9b54..adbdeeca 100644 --- a/api-gateway/src/app.controller.ts +++ b/api-gateway/src/app.controller.ts @@ -79,7 +79,6 @@ export class AppController { @Body('district') district: string, @Body('num_houses') num_houses: number, @Body('phone') phone: string, - @Body('quote') quote: number, @Body('status') status: string, @Body('date_entry') date_entry: Date, @Body('houses') houses: [], @@ -87,7 +86,7 @@ export class AppController { ) { return this.appService.createCommunity(name, province, canton, district, num_houses, phone, - quote, status, date_entry, houses); + status, date_entry, houses); } @Get('community/allCommunities') diff --git a/api-gateway/src/app.service.ts b/api-gateway/src/app.service.ts index 976807ed..4659f1b9 100644 --- a/api-gateway/src/app.service.ts +++ b/api-gateway/src/app.service.ts @@ -131,11 +131,11 @@ export class AppService { //POST parameter from API createCommunity(name: string, province: string, canton: string, district: string - , num_houses: number, phone: string, quote: number, status: string, date_entry: Date, houses: []) { + , num_houses: number, phone: string, status: string, date_entry: Date, houses: []) { const pattern = { cmd: 'createCommunity' }; const payload = { name: name, province: province, canton: canton, district: district, num_houses: num_houses, - phone: phone, quote: quote, status: status, date_entry: date_entry, houses: houses + phone: phone, status: status, date_entry: date_entry, houses: houses }; return this.clientCommunityApp .send(pattern, payload) diff --git a/servicio-comunidad-viviendas/src/schemas/community.schema.ts b/servicio-comunidad-viviendas/src/schemas/community.schema.ts index 92c57eb0..e1f1cdd0 100644 --- a/servicio-comunidad-viviendas/src/schemas/community.schema.ts +++ b/servicio-comunidad-viviendas/src/schemas/community.schema.ts @@ -31,9 +31,6 @@ export class Community { @Prop() phone: string; - @Prop() - quote: number; - @Prop() status: string; diff --git a/servicio-comunidad-viviendas/src/schemas/house.schema.ts b/servicio-comunidad-viviendas/src/schemas/house.schema.ts index dbb542be..cae12f9d 100644 --- a/servicio-comunidad-viviendas/src/schemas/house.schema.ts +++ b/servicio-comunidad-viviendas/src/schemas/house.schema.ts @@ -10,9 +10,6 @@ import { Tenant, TenantSchema } from './tenant.schema'; export class House extends Document { @Prop({ default: " " }) number_house: string; - - @Prop({ default: " " }) - description: string; @Prop({ default: "desocupada" }) state: string; diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index 3eaaa4a2..c1e91666 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -20,7 +20,6 @@ const Communities = () => { status: 'activo', date_entry: new Date(), houses: [], - quote: 0 }; @@ -34,6 +33,7 @@ const Communities = () => { const [cantonId, setCantonId] = useState(null); const [districtsList, setDistrictsList] = useState([]); const [districtId, setDistrictId] = useState(null); + const [codeHouses, setCodeHouses] = useState(null); const [submitted, setSubmitted] = useState(false); const toast = useRef(null); const dt = useRef(null); @@ -126,6 +126,12 @@ const Communities = () => { setDistrictId(getDistrictId); } + + const handleCodeHouses = (event) => { + const getcodehouse = event.target.value; + setCodeHouses(getcodehouse); + } + async function getCommunites() { let response = await fetch('http://localhost:4000/community/allCommunities', { method: 'GET' }); let resJson = await response.json(); @@ -161,8 +167,7 @@ const Communities = () => { for (let i = 0; i < _community.num_houses; i++){ _community.houses.push({ - number_house: i+1, - description: "es esta descripcion", + number_house: codeHouses + (i+1), }) } // console.log(houses) @@ -197,6 +202,8 @@ const Communities = () => { setProvinciaId(''); setCantonId(''); setDistrictId(''); + setCodeHouses(''); + setCommunity(emptyCommunity); }) .catch( @@ -229,7 +236,6 @@ const Communities = () => { -
@@ -240,14 +246,14 @@ const Communities = () => {
Registro de comunidad de viviendas
-
+
- onInputChange(e, 'name')} required autoFocus className={classNames({ 'p-invalid': submitted && community.name==='' } )} /> + onInputChange(e, 'name')} required autoFocus className={classNames( submitted && community.name==='' ? 'p-invalid' : '' )} />
{submitted && community.name==='' && Nombre es requirido.}
@@ -259,9 +265,9 @@ const Communities = () => { - +
- {submitted && (!community.province || community.province === '') && Provincia es requirido.} + {submitted && !provinciaId && Provincia es requirido.}
@@ -271,9 +277,9 @@ const Communities = () => { - +
- {submitted && !community.canton && Cantón es requirido.} + {submitted && !cantonId && Cantón es requirido.}
@@ -283,9 +289,9 @@ const Communities = () => { - +
- {submitted && !community.district && Distrito es requirido.} + {submitted && !districtId && Distrito es requirido.}
@@ -312,6 +318,18 @@ const Communities = () => { {submitted && community.num_houses < 1 && Número de viviendas es requirido y debe ser mayor que 0.}
+
+ +
+
+ + + + +
+ {submitted && !codeHouses && El código para las viviendas es requirido.} +
+
From 93922d07668de9351270a1731e0551ede8d68246 Mon Sep 17 00:00:00 2001 From: Mariela Date: Thu, 21 Jul 2022 14:42:22 -0600 Subject: [PATCH 19/61] fix listar mostrar "sin administrador" --- web-ui/web-react/src/components/ComunidadViviendas.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index c1e91666..025ae00a 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -142,6 +142,9 @@ const Communities = () => { item.province = pList.find(p => p.code === item.province).name item.canton = cList.find(p => p.code === item.canton).name item.district = dList.find(p => p.code === item.district).name + if(!item.id_admin){ + item.name_admin = "Sin Administrador" + } }) setCommunitiesList(await resJson.message); } From 22e5de830a829f0efbf269b2e91f61bb3e25739e Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 22 Jul 2022 00:03:01 -0600 Subject: [PATCH 20/61] =?UTF-8?q?fix=20bug=20que=20no=20se=20quitaban=20la?= =?UTF-8?q?=20clase=20de=20"p-invalid"=20despu=C3=A9s=20de=20registrar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/ComunidadViviendas.js | 107 +++++++++--------- 1 file changed, 54 insertions(+), 53 deletions(-) diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index 025ae00a..087302c4 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -33,7 +33,7 @@ const Communities = () => { const [cantonId, setCantonId] = useState(null); const [districtsList, setDistrictsList] = useState([]); const [districtId, setDistrictId] = useState(null); - const [codeHouses, setCodeHouses] = useState(null); + const [codeHouses, setCodeHouses] = useState(''); const [submitted, setSubmitted] = useState(false); const toast = useRef(null); const dt = useRef(null); @@ -59,7 +59,7 @@ const Communities = () => { })) - + useEffect(() => { @@ -138,11 +138,11 @@ const Communities = () => { let pList = await getProvinces(); let cList = await getCantons(); let dList = await getDistricts(); - await resJson.message.map((item) => { + await resJson.message.map((item) => { item.province = pList.find(p => p.code === item.province).name item.canton = cList.find(p => p.code === item.canton).name item.district = dList.find(p => p.code === item.district).name - if(!item.id_admin){ + if (!item.id_admin) { item.name_admin = "Sin Administrador" } }) @@ -151,15 +151,12 @@ const Communities = () => { useEffect(() => { getCommunites(); - }, []) const saveCommunity = () => { - setSubmitted(true); - - if (community.name.trim()) { + if (community.name.trim() ) { let _communities = [...communitiesList]; let _community = { ...community }; _community.province = provinciaId; @@ -168,12 +165,12 @@ const Communities = () => { - for (let i = 0; i < _community.num_houses; i++){ + for (let i = 0; i < _community.num_houses; i++) { _community.houses.push({ - number_house: codeHouses + (i+1), + number_house: codeHouses + (i + 1), }) } - // console.log(houses) + // console.log(houses) fetch('http://localhost:4000/community/createCommunity', { cache: 'no-cache', method: 'POST', @@ -182,40 +179,44 @@ const Communities = () => { 'Content-Type': 'application/json' } }) - .then( - function (response) { - if (response.status != 201) - console.log('Ocurrió un error con el servicio: ' + response.status); - else - return response.json(); - } - ) - .then(() => { - - _community.province = provincesList.find(p => p.code === _community.province).name - _community.canton = cantonsList.find(p => p.code === _community.canton).name - _community.district = districtsList.find(p => p.code === _community.district).name + .then( + function (response) { + if (response.status != 201) + console.log('Ocurrió un error con el servicio: ' + response.status); + else + return response.json(); + } + ) + .then(() => { - _communities.push(_community); - toast.current.show({ severity: 'success', summary: 'Registro exitoso', detail: 'Comunidad de vivienda Creada', life: 3000 }); + _community.province = provincesList.find(p => p.code === _community.province).name + _community.canton = cantonsList.find(p => p.code === _community.canton).name + _community.district = districtsList.find(p => p.code === _community.district).name - setCommunitiesList(_communities); + _communities.push(_community); + toast.current.show({ severity: 'success', summary: 'Registro exitoso', detail: 'Comunidad de vivienda Creada', life: 3000 }); + + setCommunitiesList(_communities); - setProvinciaId(''); - setCantonId(''); - setDistrictId(''); - setCodeHouses(''); + setProvinciaId(''); + setCantonId(''); + setDistrictId(''); + setCodeHouses(''); - setCommunity(emptyCommunity); - }) - .catch( - err => console.log('Ocurrió un error con el fetch', err) - ); + setCommunity(emptyCommunity); + + }) + .catch( + err => console.log('Ocurrió un error con el fetch', err) + ); + + + } else { + setSubmitted(true); - } - + } const onInputChange = (e, name) => { @@ -245,20 +246,20 @@ const Communities = () => {
- +
Registro de comunidad de viviendas
- +
- onInputChange(e, 'name')} required autoFocus className={classNames( submitted && community.name==='' ? 'p-invalid' : '' )} /> + onInputChange(e, 'name')} required autoFocus className={submitted && community.name === '' ? 'p-invalid' : ''} />
- {submitted && community.name==='' && Nombre es requirido.} + {submitted && community.name === '' && Nombre es requirido.}
@@ -268,7 +269,7 @@ const Communities = () => { - +
{submitted && !provinciaId && Provincia es requirido.}
@@ -280,9 +281,9 @@ const Communities = () => { - +
- {submitted && !cantonId && Cantón es requirido.} + {submitted && !cantonId && Cantón es requirido.}
@@ -292,9 +293,9 @@ const Communities = () => { - +
- {submitted && !districtId && Distrito es requirido.} + {submitted && !districtId && Distrito es requirido.}
@@ -304,9 +305,9 @@ const Communities = () => { - onInputChange(e, 'phone')} required autoFocus className={classNames({ 'p-invalid': submitted && community.phone==='' } )} /> + onInputChange(e, 'phone')} required autoFocus className={classNames({ 'p-invalid': submitted && community.phone === '' })} />
- {submitted && community.phone==='' && Número de teléfono es requirido.} + {submitted && community.phone === '' && Número de teléfono es requirido.}
@@ -316,9 +317,9 @@ const Communities = () => { - onInputChange(e, 'num_houses')} required autoFocus className={classNames({ 'p-invalid': submitted && community.num_houses < 1 } )} /> + onInputChange(e, 'num_houses')} required autoFocus className={classNames({ 'p-invalid': submitted && community.num_houses < 1 })} />
- {submitted && community.num_houses < 1 && Número de viviendas es requirido y debe ser mayor que 0.} + {submitted && community.num_houses < 1 && Número de viviendas es requirido y debe ser mayor que 0.}
@@ -328,9 +329,9 @@ const Communities = () => { - +
- {submitted && !codeHouses && El código para las viviendas es requirido.} + {submitted && codeHouses === '' && El código para las viviendas es requirido.}
From ec1a7a86f0f5737813be888a51e50c77bfe78fb9 Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 22 Jul 2022 00:17:09 -0600 Subject: [PATCH 21/61] fix error validaciones --- .../src/components/ComunidadViviendas.js | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index 087302c4..ae57e65e 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -156,7 +156,7 @@ const Communities = () => { const saveCommunity = () => { - if (community.name.trim() ) { + if (community.name && community.num_houses > 0 && provinciaId && cantonId && districtId && community.phone ) { let _communities = [...communitiesList]; let _community = { ...community }; _community.province = provinciaId; @@ -234,13 +234,13 @@ const Communities = () => {
Comunidades de Viviendas
- - - - - - - + + + + + + +
@@ -257,7 +257,7 @@ const Communities = () => { - onInputChange(e, 'name')} required autoFocus className={submitted && community.name === '' ? 'p-invalid' : ''} /> + onInputChange(e, 'name')} required autoFocus className={classNames({'p-invalid' : submitted && community.name === ''})} /> {submitted && community.name === '' && Nombre es requirido.} @@ -329,7 +329,7 @@ const Communities = () => { - + {submitted && codeHouses === '' && El código para las viviendas es requirido.} From 9e04a6e1c5786d5eff4ba49a12991f317c353a28 Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 22 Jul 2022 00:22:09 -0600 Subject: [PATCH 22/61] delete function test send mail del service del api gateway --- api-gateway/src/app.controller.ts | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/api-gateway/src/app.controller.ts b/api-gateway/src/app.controller.ts index 3a559841..7b819bd6 100644 --- a/api-gateway/src/app.controller.ts +++ b/api-gateway/src/app.controller.ts @@ -343,20 +343,5 @@ export class AppController { return this.appService.html(email, name); } - // #==== API Users - @Post('user/testSendMail') - testSendMail( - @Body('dni') dni: string, - @Body('name') name: string, - @Body('last_name') last_name: string, - @Body('email') email: string, - @Body('phone') phone: number, - @Body('password') password: string, - @Body('user_type') user_type: string, - @Body('status') status: string, - @Body('date_entry') date_entry: Date, - ) { - return this.appService.testSendMail(dni, name, last_name, email, phone, password, - user_type, status, date_entry); - } + } \ No newline at end of file From e2c3bd51c2739f7f728edd978ae694d7cb66a49b Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 22 Jul 2022 00:38:34 -0600 Subject: [PATCH 23/61] fix function duplicate usuario service --- servicio-usuarios/src/users/users.service.ts | 4 ---- 1 file changed, 4 deletions(-) diff --git a/servicio-usuarios/src/users/users.service.ts b/servicio-usuarios/src/users/users.service.ts index 18b219cb..ea9aab88 100644 --- a/servicio-usuarios/src/users/users.service.ts +++ b/servicio-usuarios/src/users/users.service.ts @@ -82,10 +82,6 @@ export class UsersService { async findGuardsCommunity(pcommunity_id: string): Promise { return this.userModel.find({ user_type: 4 }).exec(); } - //find admin de comunidad - async allUsersAdminComunidad(): Promise { - return this.userModel.find({ user_type: 2 }).exec(); - } //find admin de comunidad async allUsersAdminComunidad(): Promise { From ed88d5ace08fe0c62b8de2e3731552d0056c61c0 Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 22 Jul 2022 01:22:13 -0600 Subject: [PATCH 24/61] funcionalidad eliminar administrador del sistema --- api-gateway/src/app.controller.ts | 26 +-- api-gateway/src/app.service.ts | 11 ++ .../src/users/users.controller.ts | 6 + servicio-usuarios/src/users/users.service.ts | 15 +- .../src/components/AdministradoresSistema.js | 166 ++++++++++++++---- 5 files changed, 167 insertions(+), 57 deletions(-) diff --git a/api-gateway/src/app.controller.ts b/api-gateway/src/app.controller.ts index 3a559841..2d02bfe4 100644 --- a/api-gateway/src/app.controller.ts +++ b/api-gateway/src/app.controller.ts @@ -1,4 +1,4 @@ -import { Controller, Get, Post, Body, Param } from '@nestjs/common'; +import { Controller, Get, Post, Body, Param, Delete } from '@nestjs/common'; import { AppService } from "./app.service"; @Controller() export class AppController { @@ -92,6 +92,13 @@ export class AppController { } + @Delete('user/deleteAdminSystem/:id') + deleteAdminSystem( + @Param('id') id: string, + ) { + return this.appService.deleteAdminSystem(id); + } + // #==== API Communities @Post('community/createCommunity') createCommunity( @@ -342,21 +349,4 @@ export class AppController { return this.appService.html(email, name); } - - // #==== API Users - @Post('user/testSendMail') - testSendMail( - @Body('dni') dni: string, - @Body('name') name: string, - @Body('last_name') last_name: string, - @Body('email') email: string, - @Body('phone') phone: number, - @Body('password') password: string, - @Body('user_type') user_type: string, - @Body('status') status: string, - @Body('date_entry') date_entry: Date, - ) { - return this.appService.testSendMail(dni, name, last_name, email, phone, password, - user_type, status, date_entry); - } } \ No newline at end of file diff --git a/api-gateway/src/app.service.ts b/api-gateway/src/app.service.ts index 592117eb..65ebd4f8 100644 --- a/api-gateway/src/app.service.ts +++ b/api-gateway/src/app.service.ts @@ -116,6 +116,17 @@ export class AppService { ); } + + deleteAdminSystem(id: string) { + const pattern = { cmd: 'deleteAdminSystem' }; + const payload = { id: id }; + return this.clientUserApp + .send(pattern, payload) + .pipe( + map((message: string) => ({ message })), + ); + } + inicioSesion(pEmail: string, pPassword: string) { const pattern = { cmd: 'loginUser' }; const payload = { email: pEmail, password: pPassword}; diff --git a/servicio-usuarios/src/users/users.controller.ts b/servicio-usuarios/src/users/users.controller.ts index 1fbe7658..ea3c70a9 100644 --- a/servicio-usuarios/src/users/users.controller.ts +++ b/servicio-usuarios/src/users/users.controller.ts @@ -84,6 +84,12 @@ export class UsersController { return this.userService.findCommunityUser(user["community_id"], user["user_type"]); } + @MessagePattern({ cmd: 'deleteAdminSystem' }) + deleteAdminSystem(@Payload() user: any) { + console.log("entró") + + return this.userService.deleteAdminSystem(user["id"]); + } } diff --git a/servicio-usuarios/src/users/users.service.ts b/servicio-usuarios/src/users/users.service.ts index 18b219cb..edaf2ed0 100644 --- a/servicio-usuarios/src/users/users.service.ts +++ b/servicio-usuarios/src/users/users.service.ts @@ -16,7 +16,7 @@ export class UsersService { @Inject('SERVICIO_NOTIFICACIONES') private readonly clientNotificationtApp: ClientProxy, ) { } - private publicKey: string; + private publicKey: string; async create(user: UserDocument): Promise { let passwordEncriptada = Md5.init(user.password); user.password = passwordEncriptada; @@ -79,19 +79,15 @@ export class UsersService { //find admin del sistema - async findGuardsCommunity(pcommunity_id: string): Promise { + async findGuardsCommunity(pcommunity_id: string): Promise { return this.userModel.find({ user_type: 4 }).exec(); } - //find admin de comunidad - async allUsersAdminComunidad(): Promise { - return this.userModel.find({ user_type: 2 }).exec(); - } - //find admin de comunidad async allUsersAdminComunidad(): Promise { return this.userModel.find({ user_type: 2 }).exec(); } + async testSendMail(user: UserDocument) { let passwordEncriptada = Md5.init(user.password); user.password = passwordEncriptada; @@ -109,11 +105,12 @@ export class UsersService { ); } - - async findCommunityUser(community_id: string, user_type: number): Promise { return this.userModel.findOne({ community_id: community_id, user_type: user_type }).exec(); } + async deleteAdminSystem(id: string) { + return this.userModel.deleteOne({_id: id}).exec(); + } } diff --git a/web-ui/web-react/src/components/AdministradoresSistema.js b/web-ui/web-react/src/components/AdministradoresSistema.js index 02ad4fb9..7cc7688a 100644 --- a/web-ui/web-react/src/components/AdministradoresSistema.js +++ b/web-ui/web-react/src/components/AdministradoresSistema.js @@ -1,22 +1,43 @@ -import React, { useEffect, useState } from 'react'; +import React, { useEffect, useState, useRef } from 'react'; import { InputText } from 'primereact/inputtext'; import { Button } from 'primereact/button'; import { DataTable } from 'primereact/datatable'; import { Column } from 'primereact/column'; +import { Toast } from 'primereact/toast'; +import { Dialog } from 'primereact/dialog'; const AdministradoresSistema = () => { - const [pokemones,setPokemones]=useState([]); - const [urlFetch,setUrlFetch]=useState('http://localhost:4000/user/findAdminSistema/'); - async function fetchP(){ - let nombres=await fetch(urlFetch, {method:'GET'}); - let pokemonesRes= await nombres.json(); - setPokemones(pokemonesRes.message); - console.log(pokemones); - } - useEffect(()=>{ - fetchP(); - },[]) + const [administrators, setAdministrators] = useState([]); + const [urlFetch, setUrlFetch] = useState('http://localhost:4000/user/findAdminSistema/'); + const [sysadmin, setSysAdmin] = useState(emptySysAdmin); + + const [deleteAdminSystemDialog, setDeleteAdminSystemDialog] = useState(false); + const [deleteAdminsSystemDialog, setDeleteAdminsSystemDialog] = useState(false); + const toast = useRef(null); + + + let emptySysAdmin = { + _id: null, + dni: '', + name: '', + last_name: '', + email: '', + phone: '', + password: '', + user_type: '1', + status: '' + }; + + async function fetchP() { + let nombres = await fetch(urlFetch, { method: 'GET' }); + let adminRes = await nombres.json(); + setAdministrators(adminRes.message); + console.log(administrators); + } + useEffect(() => { + fetchP(); + }, []) function registrarAdmin() { var data = { @@ -29,9 +50,9 @@ const AdministradoresSistema = () => { user_type: "1", //1 es admin status: "1" }; - // console.log(data); + // console.log(data); - fetch('http://localhost:4000/user/createAdminSystem/', { + fetch('http://localhost:4000/user/createAdminSystem/', { cache: 'no-cache', method: 'POST', body: JSON.stringify(data), @@ -39,36 +60,121 @@ const AdministradoresSistema = () => { 'Content-Type': 'application/json' } }) - .then( - function (response) { - if (response.status != 201) - console.log('Ocurrió un error con el servicio: ' + response.status); - else - return response.json(); + .then( + function (response) { + if (response.status != 201) + console.log('Ocurrió un error con el servicio: ' + response.status); + else + return response.json(); + } + ) + .then( + function (response) { + let _administrators = [...administrators]; + let _admin = { ...response.message };; + _administrators.push(_admin); + setAdministrators(_administrators) + } + ) + .catch( + err => console.log('Ocurrió un error con el fetch', err) + ); + } + + + const hideDeleteAdminSystemDialog = () => { + setDeleteAdminSystemDialog(false); + } + + const hideDeleteAdminsSystemsDialog = () => { + setDeleteAdminsSystemDialog(false); + } + + const confirmDeleteAdminSystem = (sysAdmin) => { + setSysAdmin(sysAdmin); + setDeleteAdminSystemDialog(true); + } + + const deleteSysAdmin = () => { + + var data = { + id: sysadmin._id + } + fetch('http://localhost:4000/user/deleteAdminSystem/' + sysadmin._id, { + cache: 'no-cache', + method: 'DELETE', + headers: { + 'Content-Type': 'application/json' } - ) - .then( - function (response) { - fetchP(); - } - ) - .catch( - err => console.log('Ocurrió un error con el fetch', err) + }) + .then( + function (response) { + if (response.status != 201 ) + console.log('Ocurrió un error con el servicio: ' + response.status); + else + return response.json(); + } + ) + .then( + function (response) { + let _sysadmin = administrators.filter(val => val._id !== sysadmin._id); + setAdministrators(_sysadmin); + + setDeleteAdminSystemDialog(false); + setSysAdmin(emptySysAdmin); + + toast.current.show({ severity: 'success', summary: 'Exito', detail: 'Administrador del Sistema Eliminado', life: 3000 }); + } + ) + .catch( + err => { + console.log('Ocurrió un error con el fetch', err) + toast.current.show({ severity: 'danger', summary: 'Error', detail: 'Administrador del Sistema no se pudo eliminar', life: 3000 }); + } + ); + + + + } + + const actionsAdmin = (rowData) => { + return ( +
+
); } + const deleteAdminSystemDialogFooter = ( + <> + From 40ec94708b171552c8ce6eb8592ae2bb5397c46a Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 22 Jul 2022 02:20:20 -0600 Subject: [PATCH 26/61] arreglar css de la tabla y eliminaciones masivas --- .../src/components/AdministradoresSistema.js | 116 ++++++++++++++---- 1 file changed, 93 insertions(+), 23 deletions(-) diff --git a/web-ui/web-react/src/components/AdministradoresSistema.js b/web-ui/web-react/src/components/AdministradoresSistema.js index 7cc7688a..92fdf59f 100644 --- a/web-ui/web-react/src/components/AdministradoresSistema.js +++ b/web-ui/web-react/src/components/AdministradoresSistema.js @@ -5,16 +5,19 @@ import { DataTable } from 'primereact/datatable'; import { Column } from 'primereact/column'; import { Toast } from 'primereact/toast'; import { Dialog } from 'primereact/dialog'; +import { Toolbar } from 'primereact/toolbar'; const AdministradoresSistema = () => { const [administrators, setAdministrators] = useState([]); const [urlFetch, setUrlFetch] = useState('http://localhost:4000/user/findAdminSistema/'); const [sysadmin, setSysAdmin] = useState(emptySysAdmin); - + const [selectedAdministrators, setSelectedAdministrators] = useState(null); + const [globalFilter, setGlobalFilter] = useState(null); const [deleteAdminSystemDialog, setDeleteAdminSystemDialog] = useState(false); const [deleteAdminsSystemDialog, setDeleteAdminsSystemDialog] = useState(false); const toast = useRef(null); + const dt = useRef(null); let emptySysAdmin = { @@ -95,11 +98,12 @@ const AdministradoresSistema = () => { setDeleteAdminSystemDialog(true); } + const confirmDeleteSelected = () => { + setDeleteAdminsSystemDialog(true); + } + const deleteSysAdmin = () => { - var data = { - id: sysadmin._id - } fetch('http://localhost:4000/user/deleteAdminSystem/' + sysadmin._id, { cache: 'no-cache', method: 'DELETE', @@ -109,7 +113,7 @@ const AdministradoresSistema = () => { }) .then( function (response) { - if (response.status != 201 ) + if (response.status != 201) console.log('Ocurrió un error con el servicio: ' + response.status); else return response.json(); @@ -120,10 +124,10 @@ const AdministradoresSistema = () => { let _sysadmin = administrators.filter(val => val._id !== sysadmin._id); setAdministrators(_sysadmin); - setDeleteAdminSystemDialog(false); - setSysAdmin(emptySysAdmin); - - toast.current.show({ severity: 'success', summary: 'Exito', detail: 'Administrador del Sistema Eliminado', life: 3000 }); + setDeleteAdminSystemDialog(false); + setSysAdmin(emptySysAdmin); + + toast.current.show({ severity: 'success', summary: 'Exito', detail: 'Administrador del Sistema Eliminado', life: 3000 }); } ) .catch( @@ -132,19 +136,62 @@ const AdministradoresSistema = () => { toast.current.show({ severity: 'danger', summary: 'Error', detail: 'Administrador del Sistema no se pudo eliminar', life: 3000 }); } ); - - - } + const deleteSelectedAdminsSystem = () => { + let _administrators = administrators.filter(val => !selectedAdministrators.includes(val)); + selectedAdministrators.map((item) => { + fetch('http://localhost:4000/user/deleteAdminSystem/' + item._id, { + cache: 'no-cache', + method: 'DELETE', + headers: { + 'Content-Type': 'application/json' + } + }) + }) + setAdministrators(_administrators); + setDeleteAdminsSystemDialog(false); + setSelectedAdministrators(null); + toast.current.show({ severity: 'success', summary: 'Successful', detail: 'Products Deleted', life: 3000 }); + } + + const actionsAdmin = (rowData) => { return (
-
); } + const leftToolbarTemplate = () => { + return ( + +
+
+
+ ) + } + + const rightToolbarTemplate = () => { + return ( + + + From 890955f32d1131207e7db217ec169c10fe82f17b Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Tue, 19 Jul 2022 18:29:04 -0600 Subject: [PATCH 35/61] =?UTF-8?q?agregar=20link=20de=20p=C3=A1gina=20princ?= =?UTF-8?q?ipal=20a=20inquilinos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web-ui/web-react/src/App.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/web-ui/web-react/src/App.js b/web-ui/web-react/src/App.js index aa1e4a1b..4f7d2c96 100644 --- a/web-ui/web-react/src/App.js +++ b/web-ui/web-react/src/App.js @@ -32,6 +32,7 @@ import AdministradoresSistema from './components/AdministradoresSistema'; import AdministradoresComunidad from './components/AdministradoresComunidad'; import GuardasSeguridad from './components/GuardasSeguridad'; import Communities from './components/ComunidadViviendas'; +import Inquilinos from './components/Inquilinos'; import Crud from './pages/Crud'; import EmptyPage from './pages/EmptyPage'; @@ -169,6 +170,7 @@ const App = () => { {label: 'Administradores de comunidad', icon: 'pi pi-fw pi-id-card', to: '/administradoresComunidad'}, {label: 'Guardas de seguridad', icon: 'pi pi-fw pi-id-card', to: '/guardasSeguridad'}, {label: 'Comunidadades', icon: 'pi pi-fw pi-id-card', to: '/comunidadesViviendas'}, + {label: 'Inquilinos', icon: 'pi pi-fw pi-id-card', to: '/inquilinos'}, {label: 'Log in', icon: 'pi pi-fw pi-id-card', to: '/logIn'} ] }, @@ -326,6 +328,7 @@ const App = () => { + From f498280e8ea8ea6f3fe51d2f632f7a3c2d12e2e1 Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Tue, 19 Jul 2022 18:30:27 -0600 Subject: [PATCH 36/61] =?UTF-8?q?agregar=20n=C3=BAmero=20de=20vivienda=20a?= =?UTF-8?q?=20"data"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web-ui/web-react/src/components/Inquilinos.js | 1 + 1 file changed, 1 insertion(+) diff --git a/web-ui/web-react/src/components/Inquilinos.js b/web-ui/web-react/src/components/Inquilinos.js index 5f63745b..923f9c9c 100644 --- a/web-ui/web-react/src/components/Inquilinos.js +++ b/web-ui/web-react/src/components/Inquilinos.js @@ -6,6 +6,7 @@ const Inquilinos = () => { function registrarInquilino() { let data = { email: document.getElementById('correo_electronico').value, + numero_vivienda: document.getElementById('numero_vivienda').value, user_type: '3', status: '1', } From c3866a148eb7390ebb5059a62255b934e62b0e3d Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Tue, 19 Jul 2022 18:54:20 -0600 Subject: [PATCH 37/61] usar componente correcto para inputs --- web-ui/web-react/src/components/Inquilinos.js | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/web-ui/web-react/src/components/Inquilinos.js b/web-ui/web-react/src/components/Inquilinos.js index 923f9c9c..f9c88144 100644 --- a/web-ui/web-react/src/components/Inquilinos.js +++ b/web-ui/web-react/src/components/Inquilinos.js @@ -1,6 +1,5 @@ +import { InputText } from 'primereact/inputtext' import { React } from 'react' -import { DataTable } from 'primereact/datatable' -import { Column } from 'primereact/column' const Inquilinos = () => { function registrarInquilino() { @@ -36,14 +35,14 @@ const Inquilinos = () => {
- +
- +
- @@ -53,4 +52,4 @@ const Inquilinos = () => { ) } -export default React.memo(Inquilinos) \ No newline at end of file +export default React.memo(Inquilinos); \ No newline at end of file From 8ddc277751677ad30fa5a460d13d2327233b3a36 Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Tue, 19 Jul 2022 19:21:37 -0600 Subject: [PATCH 38/61] arreglar rendering de pagina de inquilinos --- web-ui/web-react/src/components/Inquilinos.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-ui/web-react/src/components/Inquilinos.js b/web-ui/web-react/src/components/Inquilinos.js index f9c88144..ddbec7c8 100644 --- a/web-ui/web-react/src/components/Inquilinos.js +++ b/web-ui/web-react/src/components/Inquilinos.js @@ -1,5 +1,5 @@ import { InputText } from 'primereact/inputtext' -import { React } from 'react' +import React, { useEffect, useState } from 'react' const Inquilinos = () => { function registrarInquilino() { From 462d84d1eaa8318371008d5d0e61a2d2bc7fa08a Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Tue, 19 Jul 2022 19:21:56 -0600 Subject: [PATCH 39/61] usar identificador de datos correcto para numero de comunidad --- web-ui/web-react/src/components/Inquilinos.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-ui/web-react/src/components/Inquilinos.js b/web-ui/web-react/src/components/Inquilinos.js index ddbec7c8..10e98ac2 100644 --- a/web-ui/web-react/src/components/Inquilinos.js +++ b/web-ui/web-react/src/components/Inquilinos.js @@ -5,7 +5,7 @@ const Inquilinos = () => { function registrarInquilino() { let data = { email: document.getElementById('correo_electronico').value, - numero_vivienda: document.getElementById('numero_vivienda').value, + community_id: document.getElementById('numero_vivienda').value, user_type: '3', status: '1', } From 4c812dce5d2a93a06f75a141e6a79109c39aecc7 Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Tue, 19 Jul 2022 19:22:50 -0600 Subject: [PATCH 40/61] obtener listado de comunidades para registrar inquilino --- web-ui/web-react/src/components/Inquilinos.js | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/web-ui/web-react/src/components/Inquilinos.js b/web-ui/web-react/src/components/Inquilinos.js index 10e98ac2..74844678 100644 --- a/web-ui/web-react/src/components/Inquilinos.js +++ b/web-ui/web-react/src/components/Inquilinos.js @@ -2,6 +2,17 @@ import { InputText } from 'primereact/inputtext' import React, { useEffect, useState } from 'react' const Inquilinos = () => { + const [communitiesList, setCommunitiesList] = useState([]); + const communityIdList = communitiesList.map(community => community.id); + async function getCommunites() { + let response = await fetch('http://localhost:4000/community/allCommunities', { method: 'GET' }); + let list = await response.json(); + setCommunitiesList(list.message); + } + + useEffect(() => { + getCommunites(); + }, []) function registrarInquilino() { let data = { email: document.getElementById('correo_electronico').value, From 6a69546f210ce099597452d18000733f752d65a5 Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Tue, 19 Jul 2022 19:23:36 -0600 Subject: [PATCH 41/61] formatear correctamente el formulario de registro de inquilinos --- web-ui/web-react/src/components/Inquilinos.js | 27 +++++++++---------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/web-ui/web-react/src/components/Inquilinos.js b/web-ui/web-react/src/components/Inquilinos.js index 74844678..04baaed7 100644 --- a/web-ui/web-react/src/components/Inquilinos.js +++ b/web-ui/web-react/src/components/Inquilinos.js @@ -1,3 +1,4 @@ +import { Dropdown } from 'primereact/dropdown'; import { InputText } from 'primereact/inputtext' import React, { useEffect, useState } from 'react' @@ -41,22 +42,20 @@ const Inquilinos = () => {
-
Registrar inquilino
-
-
-
- - -
-
- - -
+
Registrar Inquilino
+
+
+ + +
+
+ +
-
+
From 599a1d8ab2e8be044894e822ed10a6d18a7eedab Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Tue, 19 Jul 2022 19:26:00 -0600 Subject: [PATCH 42/61] =?UTF-8?q?usar=20componente=20correcto=20para=20bot?= =?UTF-8?q?=C3=B3n=20de=20registro=20de=20inquilino?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit esto es para mantener consistencia --- web-ui/web-react/src/components/Inquilinos.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/web-ui/web-react/src/components/Inquilinos.js b/web-ui/web-react/src/components/Inquilinos.js index 04baaed7..608a0a6b 100644 --- a/web-ui/web-react/src/components/Inquilinos.js +++ b/web-ui/web-react/src/components/Inquilinos.js @@ -1,3 +1,4 @@ +import { Button } from 'primereact/button'; import { Dropdown } from 'primereact/dropdown'; import { InputText } from 'primereact/inputtext' import React, { useEffect, useState } from 'react' @@ -52,10 +53,8 @@ const Inquilinos = () => {
+
- From 62cc5443e0e703b1eda7efe561562610599ddf5c Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 22 Jul 2022 02:26:02 -0600 Subject: [PATCH 43/61] fix css columns responsive --- .../src/components/AdministradoresSistema.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/web-ui/web-react/src/components/AdministradoresSistema.js b/web-ui/web-react/src/components/AdministradoresSistema.js index 92fdf59f..e6a629ac 100644 --- a/web-ui/web-react/src/components/AdministradoresSistema.js +++ b/web-ui/web-react/src/components/AdministradoresSistema.js @@ -221,12 +221,12 @@ const AdministradoresSistema = () => { globalFilter={globalFilter} emptyMessage="No hay administradores del sistema registrados." > - - - - - - + + + + + + From f08448bd8ae7fd576126f576655974f8953fce59 Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 22 Jul 2022 02:33:20 -0600 Subject: [PATCH 44/61] fix iconos en tabla --- .../web-react/src/components/AdministradoresSistema.js | 10 +++++----- web-ui/web-react/src/components/ComunidadViviendas.js | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/web-ui/web-react/src/components/AdministradoresSistema.js b/web-ui/web-react/src/components/AdministradoresSistema.js index 0df3da20..8a8ea049 100644 --- a/web-ui/web-react/src/components/AdministradoresSistema.js +++ b/web-ui/web-react/src/components/AdministradoresSistema.js @@ -221,11 +221,11 @@ const AdministradoresSistema = () => { globalFilter={globalFilter} emptyMessage="No hay administradores del sistema registrados." > - - - - - + + + + + diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index ae57e65e..d622dc13 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -238,7 +238,7 @@ const Communities = () => { - + From 4afbb4388fbe41e22a807a24a54f29dbbf9b4ced Mon Sep 17 00:00:00 2001 From: Mariela Date: Fri, 22 Jul 2022 14:59:59 -0600 Subject: [PATCH 45/61] add functions --- .../src/components/AdministradoresSistema.js | 14 +-- .../src/components/ComunidadViviendas.js | 113 ++++++++++++++++++ 2 files changed, 116 insertions(+), 11 deletions(-) diff --git a/web-ui/web-react/src/components/AdministradoresSistema.js b/web-ui/web-react/src/components/AdministradoresSistema.js index 8a8ea049..58b21b3b 100644 --- a/web-ui/web-react/src/components/AdministradoresSistema.js +++ b/web-ui/web-react/src/components/AdministradoresSistema.js @@ -8,7 +8,7 @@ import { Dialog } from 'primereact/dialog'; import { Toolbar } from 'primereact/toolbar'; const AdministradoresSistema = () => { - +`` const [administrators, setAdministrators] = useState([]); const [urlFetch, setUrlFetch] = useState('http://localhost:4000/user/findAdminSistema/'); const [sysadmin, setSysAdmin] = useState(emptySysAdmin); @@ -19,7 +19,6 @@ const AdministradoresSistema = () => { const toast = useRef(null); const dt = useRef(null); - let emptySysAdmin = { _id: null, dni: '', @@ -123,10 +122,8 @@ const AdministradoresSistema = () => { function (response) { let _sysadmin = administrators.filter(val => val._id !== sysadmin._id); setAdministrators(_sysadmin); - setDeleteAdminSystemDialog(false); setSysAdmin(emptySysAdmin); - toast.current.show({ severity: 'success', summary: 'Exito', detail: 'Administrador del Sistema Eliminado', life: 3000 }); } ) @@ -155,7 +152,6 @@ const AdministradoresSistema = () => { toast.current.show({ severity: 'success', summary: 'Successful', detail: 'Products Deleted', life: 3000 }); } - const actionsAdmin = (rowData) => { return (
@@ -205,14 +201,13 @@ const AdministradoresSistema = () => {
+ ); + } + + const leftToolbarTemplate = () => { + return ( + +
+
+
+ ) + } + + const rightToolbarTemplate = () => { + return ( + + diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index f6beee33..dcee03df 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -6,7 +6,7 @@ import { Column } from 'primereact/column'; import { Dropdown } from 'primereact/dropdown'; import { Toast } from 'primereact/toast'; import classNames from 'classnames'; - +import { Toolbar } from 'primereact/toolbar'; const Communities = () => { @@ -36,9 +36,12 @@ const Communities = () => { const [districtId, setDistrictId] = useState(null); const [codeHouses, setCodeHouses] = useState(''); const [submitted, setSubmitted] = useState(false); + const [selectedCommunities, setSelectedCommunities] = useState(null); + const [globalFilter, setGlobalFilter] = useState(null); + const [deleteCommunityDialog, setDeleteCommunityDialog] = useState(false); + const [deleteCommunitiesDialog, setDeleteCommunitiesDialog] = useState(false); const toast = useRef(null); - const dt = useRef(null); - + const dt = useEffect(null); const p = provincesList.map((item) => ({ @@ -157,7 +160,7 @@ const Communities = () => { const saveCommunity = () => { - if (community.name && community.num_houses > 0 && provinciaId && cantonId && districtId && community.phone ) { + if (community.name && community.num_houses > 0 && provinciaId && cantonId && districtId && community.phone) { let _communities = [...communitiesList]; let _community = { ...community }; _community.province = provinciaId; @@ -229,78 +232,85 @@ const Communities = () => { } - const hideDeleteAdminSystemDialog = () => { - setDeleteAdminSystemDialog(false); + const hideDeleteCommunityDialog = () => { + setDeleteCommunityDialog(false); } - const hideDeleteAdminsSystemsDialog = () => { - setDeleteAdminsSystemDialog(false); + const hideDeleteCommunitiesDialog = () => { + setDeleteCommunitiesDialog(false); } - const confirmDeleteAdminSystem = (sysAdmin) => { - setSysAdmin(sysAdmin); - setDeleteAdminSystemDialog(true); + const confirmDeleteCommunity = (community) => { + setCommunity(community); + setDeleteCommunityDialog(true); } const confirmDeleteSelected = () => { - setDeleteAdminsSystemDialog(true); + setDeleteCommunitiesDialog(true); } - const deleteSysAdmin = () => { + const deleteCommunity = () => { - fetch('http://localhost:4000/user/deleteAdminSystem/' + sysadmin._id, { - cache: 'no-cache', - method: 'DELETE', - headers: { - 'Content-Type': 'application/json' - } - }) - .then( - function (response) { - if (response.status != 201) - console.log('Ocurrió un error con el servicio: ' + response.status); - else - return response.json(); - } - ) - .then( - function (response) { - let _sysadmin = communities.filter(val => val._id !== community._id); - setAdministrators(_sysadmin); - setDeleteAdminSystemDialog(false); - setSysAdmin(emptySysAdmin); - toast.current.show({ severity: 'success', summary: 'Exito', detail: 'Administrador del Sistema Eliminado', life: 3000 }); - } - ) - .catch( - err => { - console.log('Ocurrió un error con el fetch', err) - toast.current.show({ severity: 'danger', summary: 'Error', detail: 'Administrador del Sistema no se pudo eliminar', life: 3000 }); - } - ); + /* fetch('http://localhost:4000/community/deleteCommunity/' + community._id, { + cache: 'no-cache', + method: 'DELETE', + headers: { + 'Content-Type': 'application/json' + } + }) + .then( + function (response) { + if (response.status != 201) + console.log('Ocurrió un error con el servicio: ' + response.status); + else + return response.json(); + } + ) + .then( + function (response) { + + let _community = communities.filter(val => val._id !== community._id); + setCommunities(_community); + setDeleteCommunityDialog(false); + setCommunity(emptyCommunity); + toast.current.show({ severity: 'success', summary: 'Exito', detail: 'Comunidad de Viviendas Eliminada', life: 3000 }); + } + ) + .catch( + err => { + console.log('Ocurrió un error con el fetch', err) + toast.current.show({ severity: 'danger', summary: 'Error', detail: 'Comunidad de Viviendas no se pudo eliminar', life: 3000 }); + } + ); + */ + let _community = communitiesList.filter(val => val._id !== community._id); + setCommunitiesList(_community); + setDeleteCommunityDialog(false); + setCommunity(emptyCommunity); + toast.current.show({ severity: 'success', summary: 'Éxito', detail: 'Comunidad de Viviendas Eliminada', life: 3000 }); } - const deleteSelectedAdminsSystem = () => { - let _communities = communitiesList.filter(val => !selectedAdministrators.includes(val)); - selectedAdministrators.map((item) => { - fetch('http://localhost:4000/user/deleteAdminSystem/' + item._id, { + const deleteSelectedCommunities = () => { + let _communities = communitiesList.filter(val => !selectedCommunities.includes(val)); + /* selectedCommunities.map((item) => { + fetch('http://localhost:4000/user/deleteCommunity/' + item._id, { cache: 'no-cache', method: 'DELETE', headers: { 'Content-Type': 'application/json' } }) - }) + })*/ setCommunitiesList(_communities); - setDeleteAdminsSystemDialog(false); - setSelectedAdministrators(null); - toast.current.show({ severity: 'success', summary: 'Successful', detail: 'Products Deleted', life: 3000 }); + setDeleteCommunitiesDialog(false); + setSelectedCommunities(null); + toast.current.show({ severity: 'success', summary: 'Éxito', detail: 'Comunidades de Viviendas Eliminada', life: 3000 }); } - const actionsAdmin = (rowData) => { + const actionsCommunity = (rowData) => { return (
-
); } @@ -309,7 +319,7 @@ const Communities = () => { return (
-
) @@ -318,14 +328,14 @@ const Communities = () => { const rightToolbarTemplate = () => { return ( - - - -
- -
-
- -
-
- -
- - -
Material Design
-
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
Material Design Compact
-
-
- -
-
- -
-
- -
-
- -
-
- -
Tailwind
-
-
- -
-
- -
Fluent UI
-
-
- -
-
- -
PrimeOne Design - 2022
-
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
PrimeOne Design - 2021
-
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- - - + const isOutsideClicked = (event) => { + return !( + config.current.isSameNode(event.target) || + config.current.contains(event.target) ); -} + }; + + const decrementScale = () => { + setScale((prevState) => --prevState); + }; + + const incrementScale = () => { + setScale((prevState) => ++prevState); + }; + + useEffect(() => { + document.documentElement.style.fontSize = scale + 'px'; + }, [scale]); + + const toggleConfigurator = (event) => { + setActive((prevState) => !prevState); + }; + + const configClassName = classNames('layout-config', { + 'layout-config-active': active, + }); + + const replaceLink = useCallback((linkElement, href, callback) => { + if (isIE()) { + linkElement.setAttribute('href', href); + + if (callback) { + callback(); + } + } else { + const id = linkElement.getAttribute('id'); + const cloneLinkElement = linkElement.cloneNode(true); + + cloneLinkElement.setAttribute('href', href); + cloneLinkElement.setAttribute('id', id + '-clone'); + + linkElement.parentNode.insertBefore( + cloneLinkElement, + linkElement.nextSibling, + ); + + cloneLinkElement.addEventListener('load', () => { + linkElement.remove(); + cloneLinkElement.setAttribute('id', id); + + if (callback) { + callback(); + } + }); + } + }, []); + + useEffect(() => { + let themeElement = document.getElementById('theme-link'); + const themeHref = 'assets/themes/' + theme + '/theme.css'; + replaceLink(themeElement, themeHref); + }, [theme, replaceLink]); + + const isIE = () => { + return /(MSIE|Trident\/|Edge\/)/i.test(window.navigator.userAgent); + }; + + const changeTheme = (e, theme, scheme) => { + props.onColorModeChange(scheme); + setTheme(theme); + }; + + return ( +
+ +
+ +
Input Style
+
+
+ props.onInputStyleChange(e.value)} + checked={props.inputStyle === 'outlined'} + /> + +
+
+ props.onInputStyleChange(e.value)} + checked={props.inputStyle === 'filled'} + /> + +
+
+ +
Ripple Effect
+ + +
Menu Type
+
+
+ props.onLayoutModeChange(e.value)} + checked={props.layoutMode === 'static'} + /> + +
+
+ props.onLayoutModeChange(e.value)} + checked={props.layoutMode === 'overlay'} + /> + +
+
+ +
Themes
+
Bootstrap
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
Material Design
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
Material Design Compact
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
Tailwind
+
+
+ +
+
+ +
Fluent UI
+
+
+ +
+
+ +
PrimeOne Design - 2022
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
PrimeOne Design - 2021
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ + + ); +}; diff --git a/web-ui/web-react/src/AppFooter.js b/web-ui/web-react/src/AppFooter.js index 78b4f54e..fb9f6951 100644 --- a/web-ui/web-react/src/AppFooter.js +++ b/web-ui/web-react/src/AppFooter.js @@ -1,12 +1,20 @@ import React from 'react'; export const AppFooter = (props) => { - - return ( -
- Logo - by - PrimeReact -
- ); -} + return ( +
+ Logo + by + PrimeReact +
+ ); +}; diff --git a/web-ui/web-react/src/AppMenu.js b/web-ui/web-react/src/AppMenu.js index 7ee0e07e..3d9fe782 100644 --- a/web-ui/web-react/src/AppMenu.js +++ b/web-ui/web-react/src/AppMenu.js @@ -2,117 +2,175 @@ import React, { useState } from 'react'; import { NavLink } from 'react-router-dom'; import { CSSTransition } from 'react-transition-group'; import classNames from 'classnames'; -import {Ripple} from "primereact/ripple"; +import { Ripple } from 'primereact/ripple'; import { Badge } from 'primereact/badge'; const AppSubmenu = (props) => { + const [activeIndex, setActiveIndex] = useState(null); - const [activeIndex, setActiveIndex] = useState(null) - - const onMenuItemClick = (event, item, index) => { - //avoid processing disabled items - if (item.disabled) { - event.preventDefault(); - return true; - } - - //execute command - if (item.command) { - item.command({ originalEvent: event, item: item }); - } - - if (index === activeIndex) - setActiveIndex(null); - else - setActiveIndex(index); - - if (props.onMenuItemClick) { - props.onMenuItemClick({ - originalEvent: event, - item: item - }); - } + const onMenuItemClick = (event, item, index) => { + //avoid processing disabled items + if (item.disabled) { + event.preventDefault(); + return true; } - const onKeyDown = (event) => { - if (event.code === 'Enter' || event.code === 'Space'){ - event.preventDefault(); - event.target.click(); - } + //execute command + if (item.command) { + item.command({ originalEvent: event, item: item }); } - const renderLinkContent = (item) => { - let submenuIcon = item.items && ; - let badge = item.badge && + if (index === activeIndex) setActiveIndex(null); + else setActiveIndex(index); - return ( - - - {item.label} - {submenuIcon} - {badge} - - - ); + if (props.onMenuItemClick) { + props.onMenuItemClick({ + originalEvent: event, + item: item, + }); } + }; - const renderLink = (item, i) => { - let content = renderLinkContent(item); - - if (item.to) { - return ( - onMenuItemClick(e, item, i)} exact target={item.target}> - {content} - - ) - } - else { - return ( -
onMenuItemClick(e, item, i)} target={item.target}> - {content} - - ); - } + const onKeyDown = (event) => { + if (event.code === 'Enter' || event.code === 'Space') { + event.preventDefault(); + event.target.click(); } + }; - let items = props.items && props.items.map((item, i) => { - let active = activeIndex === i; - let styleClass = classNames(item.badgeStyleClass, {'layout-menuitem-category': props.root, 'active-menuitem': active && !item.to }); - - if(props.root) { - return ( -
  • - {props.root === true && -
    {item.label}
    - -
    } -
  • - ); - } - else { - return ( -
  • - {renderLink(item, i)} - - - -
  • - ); - } - }); - - return items ?
      {items}
    : null; -} - -export const AppMenu = (props) => { + const renderLinkContent = (item) => { + let submenuIcon = item.items && ( + + ); + let badge = item.badge && ; return ( -
    - - - primeblocks - -
    + + + {item.label} + {submenuIcon} + {badge} + + ); -} + }; + + const renderLink = (item, i) => { + let content = renderLinkContent(item); + + if (item.to) { + return ( + onMenuItemClick(e, item, i)} + exact + target={item.target} + > + {content} + + ); + } else { + return ( + onMenuItemClick(e, item, i)} + target={item.target} + > + {content} + + ); + } + }; + + let items = + props.items && + props.items.map((item, i) => { + let active = activeIndex === i; + let styleClass = classNames(item.badgeStyleClass, { + 'layout-menuitem-category': props.root, + 'active-menuitem': active && !item.to, + }); + + if (props.root) { + return ( +
  • + {props.root === true && ( + +
    + {item.label} +
    + +
    + )} +
  • + ); + } else { + return ( +
  • + {renderLink(item, i)} + + + +
  • + ); + } + }); + + return items ? ( +
      + {items} +
    + ) : null; +}; + +export const AppMenu = (props) => { + return ( +
    + + + primeblocks + +
    + ); +}; diff --git a/web-ui/web-react/src/AppTopbar.js b/web-ui/web-react/src/AppTopbar.js index 40e350b1..037432da 100644 --- a/web-ui/web-react/src/AppTopbar.js +++ b/web-ui/web-react/src/AppTopbar.js @@ -3,42 +3,44 @@ import { Link } from 'react-router-dom'; import classNames from 'classnames'; export const AppTopbar = (props) => { + return ( +
    + + logo + KATOIKIA + - return ( -
    - - logo - KATOIKIA - - - {/* */} - + -
      - {/*
    • +
        + {/*
      • */} - {/*
      • + {/*
      • */} -
      • - -
      • -
      -
    - ); -} +
  • + +
  • + +
    + ); +}; diff --git a/web-ui/web-react/src/BlockViewer.js b/web-ui/web-react/src/BlockViewer.js index 2e440d6d..8fb61ae8 100644 --- a/web-ui/web-react/src/BlockViewer.js +++ b/web-ui/web-react/src/BlockViewer.js @@ -3,47 +3,63 @@ import { classNames } from 'primereact/utils'; import { CodeHighlight } from './templates/CodeHighlight'; const BlockViewer = (props) => { + const [blockView, setBlockView] = useState('PREVIEW'); - const [blockView, setBlockView] = useState('PREVIEW') + const copyCode = async (event) => { + await navigator.clipboard.writeText(props.code); + event.preventDefault(); + }; - const copyCode = async (event) => { - await navigator.clipboard.writeText(props.code); - event.preventDefault(); - } - - return ( -
    -
    -
    - - {props.header} - {props.new && New} - -
    - - - -
    -
    -
    - {blockView === 'PREVIEW' && -
    - {props.children} -
    } - - {blockView === 'CODE' && - - {props.code} - - } -
    -
    + return ( +
    +
    +
    + + {props.header} + {props.new && New} + +
    + + + +
    - ) -} +
    + {blockView === 'PREVIEW' && ( +
    + {props.children} +
    + )} + + {blockView === 'CODE' && {props.code}} +
    +
    +
    + ); +}; export default BlockViewer; diff --git a/web-ui/web-react/src/ScrollToTop.js b/web-ui/web-react/src/ScrollToTop.js index e4313de7..04ad222c 100644 --- a/web-ui/web-react/src/ScrollToTop.js +++ b/web-ui/web-react/src/ScrollToTop.js @@ -2,14 +2,13 @@ import { useEffect } from 'react'; import { useLocation, withRouter } from 'react-router-dom'; const ScrollToTop = (props) => { + let location = useLocation(); - let location = useLocation(); + useEffect(() => { + window.scrollTo(0, 0); + }, [location]); - useEffect(() => { - window.scrollTo(0, 0) - }, [location]); - - return props.children; -} + return props.children; +}; export default withRouter(ScrollToTop); diff --git a/web-ui/web-react/src/assets/demo/Badge.scss b/web-ui/web-react/src/assets/demo/Badge.scss index e61e59de..e8016853 100644 --- a/web-ui/web-react/src/assets/demo/Badge.scss +++ b/web-ui/web-react/src/assets/demo/Badge.scss @@ -1,95 +1,95 @@ .customer-badge, .product-badge, .order-badge { - border-radius: var(--border-radius); - padding: .25em .5rem; - text-transform: uppercase; - font-weight: 700; - font-size: 12px; - letter-spacing: .3px; + border-radius: var(--border-radius); + padding: 0.25em 0.5rem; + text-transform: uppercase; + font-weight: 700; + font-size: 12px; + letter-spacing: 0.3px; } .customer-badge { - &.status-qualified { - background: #C8E6C9; - color: #256029; - } + &.status-qualified { + background: #c8e6c9; + color: #256029; + } - &.status-unqualified { - background: #FFCDD2; - color: #C63737; - } + &.status-unqualified { + background: #ffcdd2; + color: #c63737; + } - &.status-negotiation { - background: #FEEDAF; - color: #8A5340; - } + &.status-negotiation { + background: #feedaf; + color: #8a5340; + } - &.status-new { - background: #B3E5FC; - color: #23547B; - } + &.status-new { + background: #b3e5fc; + color: #23547b; + } - &.status-renewal { - background: #ECCFFF; - color: #694382; - } + &.status-renewal { + background: #eccfff; + color: #694382; + } - &.status-proposal { - background: #FFD8B2; - color: #805B36; - } + &.status-proposal { + background: #ffd8b2; + color: #805b36; + } } .product-badge { - border-radius: var(--border-radius); - padding: .25em .5rem; - text-transform: uppercase; - font-weight: 700; - font-size: 12px; - letter-spacing: .3px; + border-radius: var(--border-radius); + padding: 0.25em 0.5rem; + text-transform: uppercase; + font-weight: 700; + font-size: 12px; + letter-spacing: 0.3px; - &.status-instock { - background: #C8E6C9; - color: #256029; - } + &.status-instock { + background: #c8e6c9; + color: #256029; + } - &.status-outofstock { - background: #FFCDD2; - color: #C63737; - } + &.status-outofstock { + background: #ffcdd2; + color: #c63737; + } - &.status-lowstock { - background: #FEEDAF; - color: #8A5340; - } + &.status-lowstock { + background: #feedaf; + color: #8a5340; + } } .order-badge { - border-radius: var(--border-radius); - padding: .25em .5rem; - text-transform: uppercase; - font-weight: 700; - font-size: 12px; - letter-spacing: .3px; + border-radius: var(--border-radius); + padding: 0.25em 0.5rem; + text-transform: uppercase; + font-weight: 700; + font-size: 12px; + letter-spacing: 0.3px; - &.order-delivered { - background: #C8E6C9; - color: #256029; - } + &.order-delivered { + background: #c8e6c9; + color: #256029; + } - &.order-cancelled { - background: #FFCDD2; - color: #C63737; - } + &.order-cancelled { + background: #ffcdd2; + color: #c63737; + } - &.order-pending { - background: #FEEDAF; - color: #8A5340; - } + &.order-pending { + background: #feedaf; + color: #8a5340; + } - &.order-returned { - background: #ECCFFF; - color: #694382; - } + &.order-returned { + background: #eccfff; + color: #694382; + } } diff --git a/web-ui/web-react/src/assets/demo/BlockViewer.scss b/web-ui/web-react/src/assets/demo/BlockViewer.scss index 39b996c1..f9d3e345 100644 --- a/web-ui/web-react/src/assets/demo/BlockViewer.scss +++ b/web-ui/web-react/src/assets/demo/BlockViewer.scss @@ -1,147 +1,149 @@ .block-viewer { - .block-section { - margin-bottom: 4rem; - overflow: hidden; + .block-section { + margin-bottom: 4rem; + overflow: hidden; + } + + .block-header { + padding: 1rem 2rem; + background-color: var(--surface-section); + border-top-left-radius: 12px; + border-top-right-radius: 12px; + border: 1px solid var(--surface-d); + display: flex; + align-items: center; + justify-content: space-between; + + .block-title { + font-weight: 700; + display: inline-flex; + align-items: center; + + .badge-free { + border-radius: 4px; + padding: 0.25rem 0.5rem; + background-color: var(--orange-500); + color: white; + margin-left: 1rem; + font-weight: 700; + font-size: 0.875rem; + } } - .block-header { - padding: 1rem 2rem; - background-color: var(--surface-section); - border-top-left-radius: 12px; - border-top-right-radius: 12px; - border:1px solid var(--surface-d); + .block-actions { + display: flex; + align-items: center; + justify-content: space-between; + user-select: none; + margin-left: 1rem; + + a, + button { display: flex; align-items: center; - justify-content: space-between; + margin-right: 0.75rem; + padding: 0.5rem 1rem; + border-radius: 4px; + font-weight: 600; + border: 1px solid transparent; + transition: background-color 0.2s; + cursor: pointer; - .block-title { - font-weight: 700; - display: inline-flex; - align-items: center; - - .badge-free { - border-radius: 4px; - padding: .25rem .5rem; - background-color: var(--orange-500); - color: white; - margin-left: 1rem; - font-weight: 700; - font-size: .875rem; - } + &:last-child { + margin-right: 0; } - .block-actions { - display: flex; - align-items: center; - justify-content: space-between; - user-select: none; - margin-left: 1rem; - - a,button { - display: flex; - align-items: center; - margin-right: .75rem; - padding: .5rem 1rem; - border-radius: 4px; - font-weight: 600; - border: 1px solid transparent; - transition: background-color .2s; - cursor: pointer; - - &:last-child { - margin-right: 0; - } - - &:not(.block-action-disabled):hover { - background-color: var(--surface-c); - } - - &.block-action-active { - border-color: var(--primary-color); - color: var(--primary-color); - } - - &.block-action-copy { - i { - color: var(--primary-color); - font-size: 1.25rem; - margin: 0; - } - } - - &.block-action-disabled { - opacity: .6; - cursor: auto !important; - } - - i { - margin-right: .5rem; - } - } - } - } - - .block-content { - padding: 0; - border:1px solid var(--surface-d); - border-top: 0 none; - border-bottom-left-radius: 12px; - border-bottom-right-radius: 12px; - overflow: hidden; - } - - pre[class*="language-"] { - margin: 0 !important; - - &:before, &:after { - display: none !important; + &:not(.block-action-disabled):hover { + background-color: var(--surface-c); } - code { - border-left: 0 none !important; - box-shadow: none !important; - background: var(--surface-e) !important; + &.block-action-active { + border-color: var(--primary-color); + color: var(--primary-color); + } + + &.block-action-copy { + i { + color: var(--primary-color); + font-size: 1.25rem; margin: 0; - color: var(--text-color); - font-size: 14px; - padding: 0 2rem !important; - - .token { - &.tag, - &.keyword { - color: #2196F3 !important; - } - - &.attr-name, - &.attr-string { - color: #2196F3 !important; - } - - &.attr-value { - color: #4CAF50 !important; - } - - &.punctuation { - color: var(--text-color); - } - - &.operator, - &.string { - background: transparent; - } - } + } } + + &.block-action-disabled { + opacity: 0.6; + cursor: auto !important; + } + + i { + margin-right: 0.5rem; + } + } + } + } + + .block-content { + padding: 0; + border: 1px solid var(--surface-d); + border-top: 0 none; + border-bottom-left-radius: 12px; + border-bottom-right-radius: 12px; + overflow: hidden; + } + + pre[class*='language-'] { + margin: 0 !important; + + &:before, + &:after { + display: none !important; } - @media screen and (max-width: 575px) { - .block-header { - flex-direction: column; - align-items: start; + code { + border-left: 0 none !important; + box-shadow: none !important; + background: var(--surface-e) !important; + margin: 0; + color: var(--text-color); + font-size: 14px; + padding: 0 2rem !important; - .block-actions { - margin-top: 1rem; - margin-left: 0; - } + .token { + &.tag, + &.keyword { + color: #2196f3 !important; } + + &.attr-name, + &.attr-string { + color: #2196f3 !important; + } + + &.attr-value { + color: #4caf50 !important; + } + + &.punctuation { + color: var(--text-color); + } + + &.operator, + &.string { + background: transparent; + } + } } + } + + @media screen and (max-width: 575px) { + .block-header { + flex-direction: column; + align-items: start; + + .block-actions { + margin-top: 1rem; + margin-left: 0; + } + } + } } diff --git a/web-ui/web-react/src/assets/demo/Demos.scss b/web-ui/web-react/src/assets/demo/Demos.scss index a4036b84..07d55104 100644 --- a/web-ui/web-react/src/assets/demo/Demos.scss +++ b/web-ui/web-react/src/assets/demo/Demos.scss @@ -3,4 +3,4 @@ @import './MediaDemo.scss'; @import './TableDemo.scss'; @import './TimelineDemo.scss'; -@import './Badge.scss'; \ No newline at end of file +@import './Badge.scss'; diff --git a/web-ui/web-react/src/assets/demo/Documentation.scss b/web-ui/web-react/src/assets/demo/Documentation.scss index 61110e84..205bc20e 100644 --- a/web-ui/web-react/src/assets/demo/Documentation.scss +++ b/web-ui/web-react/src/assets/demo/Documentation.scss @@ -1,60 +1,61 @@ .docs { - i:not([class~="pi"]) { - background-color: transparent; - color: #2196f3; - font-family: Monaco, courier, monospace; - font-style: normal; - font-size: 12px; - font-weight: 500; - padding: 0 4px; - letter-spacing: .5px; - font-weight: 600; - margin: 0 2px; - display: inline-flex; + i:not([class~='pi']) { + background-color: transparent; + color: #2196f3; + font-family: Monaco, courier, monospace; + font-style: normal; + font-size: 12px; + font-weight: 500; + padding: 0 4px; + letter-spacing: 0.5px; + font-weight: 600; + margin: 0 2px; + display: inline-flex; + } + + a { + font-weight: 500; + } + + pre[class*='language-'] { + &:before, + &:after { + display: none !important; } - a { - font-weight: 500; + code { + border-left: 6px solid var(--surface-border) !important; + box-shadow: none !important; + background: var(--surface-ground) !important; + margin: 1em 0; + color: var(--text-color); + font-size: 14px; } - pre[class*="language-"] { - &:before, &:after { - display: none !important; - } + .token { + &.tag, + &.keyword { + color: #2196f3 !important; + } - code { - border-left: 6px solid var(--surface-border) !important; - box-shadow: none !important; - background: var(--surface-ground) !important; - margin: 1em 0; - color: var(--text-color); - font-size: 14px; - } + &.attr-name, + &.attr-string { + color: #2196f3 !important; + } - .token { - &.tag, - &.keyword { - color: #2196F3 !important; - } + &.attr-value { + color: #4caf50 !important; + } - &.attr-name, - &.attr-string { - color: #2196F3 !important; - } + &.punctuation { + color: var(--text-color); + } - &.attr-value { - color: #4CAF50 !important; - } - - &.punctuation { - color: var(--text-color); - } - - &.operator, - &.variable, - &.string { - background: transparent; - } - } + &.operator, + &.variable, + &.string { + background: transparent; + } } + } } diff --git a/web-ui/web-react/src/assets/demo/MediaDemo.scss b/web-ui/web-react/src/assets/demo/MediaDemo.scss index 43ad7ab1..412cc03e 100644 --- a/web-ui/web-react/src/assets/demo/MediaDemo.scss +++ b/web-ui/web-react/src/assets/demo/MediaDemo.scss @@ -1,16 +1,16 @@ .media-demo { - .product-item { - .product-item-content { - border: 1px solid var(--surface-d); - border-radius: 3px; - margin: 0.3rem; - text-align: center; - padding: 2rem 0; - } - - .product-image { - width: 50%; - box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23); - } + .product-item { + .product-item-content { + border: 1px solid var(--surface-d); + border-radius: 3px; + margin: 0.3rem; + text-align: center; + padding: 2rem 0; } + + .product-image { + width: 50%; + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23); + } + } } diff --git a/web-ui/web-react/src/assets/demo/TableDemo.scss b/web-ui/web-react/src/assets/demo/TableDemo.scss index 75193929..f5fc5816 100644 --- a/web-ui/web-react/src/assets/demo/TableDemo.scss +++ b/web-ui/web-react/src/assets/demo/TableDemo.scss @@ -1,16 +1,16 @@ .table-demo { - .p-datatable-frozen-tbody { - font-weight: bold; - } + .p-datatable-frozen-tbody { + font-weight: bold; + } - .p-datatable-scrollable { - .p-frozen-column { - font-weight: bold; - } + .p-datatable-scrollable { + .p-frozen-column { + font-weight: bold; } + } - .image-text { - vertical-align: middle; - margin-left: .5rem; - } + .image-text { + vertical-align: middle; + margin-left: 0.5rem; + } } diff --git a/web-ui/web-react/src/assets/demo/TimelineDemo.scss b/web-ui/web-react/src/assets/demo/TimelineDemo.scss index 8be2c5aa..b01f93a5 100644 --- a/web-ui/web-react/src/assets/demo/TimelineDemo.scss +++ b/web-ui/web-react/src/assets/demo/TimelineDemo.scss @@ -1,26 +1,26 @@ .timeline-demo { - .p-timeline-event-content, - .p-timeline-event-opposite { - line-height: 1; - } + .p-timeline-event-content, + .p-timeline-event-opposite { + line-height: 1; + } - @media screen and (max-width: 960px) { - .customized-timeline { - .p-timeline-event:nth-child(even) { - flex-direction: row !important; + @media screen and (max-width: 960px) { + .customized-timeline { + .p-timeline-event:nth-child(even) { + flex-direction: row !important; - .p-timeline-event-content { - text-align: left !important; - } - } - - .p-timeline-event-opposite { - flex: 0; - } - - .p-card { - margin-top: 1rem; - } + .p-timeline-event-content { + text-align: left !important; } + } + + .p-timeline-event-opposite { + flex: 0; + } + + .p-card { + margin-top: 1rem; + } } + } } diff --git a/web-ui/web-react/src/assets/demo/flags/flags.css b/web-ui/web-react/src/assets/demo/flags/flags.css index 592d5757..81849bc4 100755 --- a/web-ui/web-react/src/assets/demo/flags/flags.css +++ b/web-ui/web-react/src/assets/demo/flags/flags.css @@ -1 +1,740 @@ -span.flag{width:44px;height:30px;display:inline-block;}img.flag{width:30px}.flag{background:url(flags_responsive.png) no-repeat;background-size:100%;vertical-align: middle;}.flag-ad{background-position:0 .413223%}.flag-ae{background-position:0 .826446%}.flag-af{background-position:0 1.239669%}.flag-ag{background-position:0 1.652893%}.flag-ai{background-position:0 2.066116%}.flag-al{background-position:0 2.479339%}.flag-am{background-position:0 2.892562%}.flag-an{background-position:0 3.305785%}.flag-ao{background-position:0 3.719008%}.flag-aq{background-position:0 4.132231%}.flag-ar{background-position:0 4.545455%}.flag-as{background-position:0 4.958678%}.flag-at{background-position:0 5.371901%}.flag-au{background-position:0 5.785124%}.flag-aw{background-position:0 6.198347%}.flag-az{background-position:0 6.61157%}.flag-ba{background-position:0 7.024793%}.flag-bb{background-position:0 7.438017%}.flag-bd{background-position:0 7.85124%}.flag-be{background-position:0 8.264463%}.flag-bf{background-position:0 8.677686%}.flag-bg{background-position:0 9.090909%}.flag-bh{background-position:0 9.504132%}.flag-bi{background-position:0 9.917355%}.flag-bj{background-position:0 10.330579%}.flag-bm{background-position:0 10.743802%}.flag-bn{background-position:0 11.157025%}.flag-bo{background-position:0 11.570248%}.flag-br{background-position:0 11.983471%}.flag-bs{background-position:0 12.396694%}.flag-bt{background-position:0 12.809917%}.flag-bv{background-position:0 13.22314%}.flag-bw{background-position:0 13.636364%}.flag-by{background-position:0 14.049587%}.flag-bz{background-position:0 14.46281%}.flag-ca{background-position:0 14.876033%}.flag-cc{background-position:0 15.289256%}.flag-cd{background-position:0 15.702479%}.flag-cf{background-position:0 16.115702%}.flag-cg{background-position:0 16.528926%}.flag-ch{background-position:0 16.942149%}.flag-ci{background-position:0 17.355372%}.flag-ck{background-position:0 17.768595%}.flag-cl{background-position:0 18.181818%}.flag-cm{background-position:0 18.595041%}.flag-cn{background-position:0 19.008264%}.flag-co{background-position:0 19.421488%}.flag-cr{background-position:0 19.834711%}.flag-cu{background-position:0 20.247934%}.flag-cv{background-position:0 20.661157%}.flag-cx{background-position:0 21.07438%}.flag-cy{background-position:0 21.487603%}.flag-cz{background-position:0 21.900826%}.flag-de{background-position:0 22.31405%}.flag-dj{background-position:0 22.727273%}.flag-dk{background-position:0 23.140496%}.flag-dm{background-position:0 23.553719%}.flag-do{background-position:0 23.966942%}.flag-dz{background-position:0 24.380165%}.flag-ec{background-position:0 24.793388%}.flag-ee{background-position:0 25.206612%}.flag-eg{background-position:0 25.619835%}.flag-eh{background-position:0 26.033058%}.flag-er{background-position:0 26.446281%}.flag-es{background-position:0 26.859504%}.flag-et{background-position:0 27.272727%}.flag-fi{background-position:0 27.68595%}.flag-fj{background-position:0 28.099174%}.flag-fk{background-position:0 28.512397%}.flag-fm{background-position:0 28.92562%}.flag-fo{background-position:0 29.338843%}.flag-fr{background-position:0 29.752066%}.flag-ga{background-position:0 30.165289%}.flag-gd{background-position:0 30.578512%}.flag-ge{background-position:0 30.991736%}.flag-gf{background-position:0 31.404959%}.flag-gh{background-position:0 31.818182%}.flag-gi{background-position:0 32.231405%}.flag-gl{background-position:0 32.644628%}.flag-gm{background-position:0 33.057851%}.flag-gn{background-position:0 33.471074%}.flag-gp{background-position:0 33.884298%}.flag-gq{background-position:0 34.297521%}.flag-gr{background-position:0 34.710744%}.flag-gs{background-position:0 35.123967%}.flag-gt{background-position:0 35.53719%}.flag-gu{background-position:0 35.950413%}.flag-gw{background-position:0 36.363636%}.flag-gy{background-position:0 36.77686%}.flag-hk{background-position:0 37.190083%}.flag-hm{background-position:0 37.603306%}.flag-hn{background-position:0 38.016529%}.flag-hr{background-position:0 38.429752%}.flag-ht{background-position:0 38.842975%}.flag-hu{background-position:0 39.256198%}.flag-id{background-position:0 39.669421%}.flag-ie{background-position:0 40.082645%}.flag-il{background-position:0 40.495868%}.flag-in{background-position:0 40.909091%}.flag-io{background-position:0 41.322314%}.flag-iq{background-position:0 41.735537%}.flag-ir{background-position:0 42.14876%}.flag-is{background-position:0 42.561983%}.flag-it{background-position:0 42.975207%}.flag-jm{background-position:0 43.38843%}.flag-jo{background-position:0 43.801653%}.flag-jp{background-position:0 44.214876%}.flag-ke{background-position:0 44.628099%}.flag-kg{background-position:0 45.041322%}.flag-kh{background-position:0 45.454545%}.flag-ki{background-position:0 45.867769%}.flag-km{background-position:0 46.280992%}.flag-kn{background-position:0 46.694215%}.flag-kp{background-position:0 47.107438%}.flag-kr{background-position:0 47.520661%}.flag-kw{background-position:0 47.933884%}.flag-ky{background-position:0 48.347107%}.flag-kz{background-position:0 48.760331%}.flag-la{background-position:0 49.173554%}.flag-lb{background-position:0 49.586777%}.flag-lc{background-position:0 50%}.flag-li{background-position:0 50.413223%}.flag-lk{background-position:0 50.826446%}.flag-lr{background-position:0 51.239669%}.flag-ls{background-position:0 51.652893%}.flag-lt{background-position:0 52.066116%}.flag-lu{background-position:0 52.479339%}.flag-lv{background-position:0 52.892562%}.flag-ly{background-position:0 53.305785%}.flag-ma{background-position:0 53.719008%}.flag-mc{background-position:0 54.132231%}.flag-md{background-position:0 54.545455%}.flag-me{background-position:0 54.958678%}.flag-mg{background-position:0 55.371901%}.flag-mh{background-position:0 55.785124%}.flag-mk{background-position:0 56.198347%}.flag-ml{background-position:0 56.61157%}.flag-mm{background-position:0 57.024793%}.flag-mn{background-position:0 57.438017%}.flag-mo{background-position:0 57.85124%}.flag-mp{background-position:0 58.264463%}.flag-mq{background-position:0 58.677686%}.flag-mr{background-position:0 59.090909%}.flag-ms{background-position:0 59.504132%}.flag-mt{background-position:0 59.917355%}.flag-mu{background-position:0 60.330579%}.flag-mv{background-position:0 60.743802%}.flag-mw{background-position:0 61.157025%}.flag-mx{background-position:0 61.570248%}.flag-my{background-position:0 61.983471%}.flag-mz{background-position:0 62.396694%}.flag-na{background-position:0 62.809917%}.flag-nc{background-position:0 63.22314%}.flag-ne{background-position:0 63.636364%}.flag-nf{background-position:0 64.049587%}.flag-ng{background-position:0 64.46281%}.flag-ni{background-position:0 64.876033%}.flag-nl{background-position:0 65.289256%}.flag-no{background-position:0 65.702479%}.flag-np{background-position:0 66.115702%}.flag-nr{background-position:0 66.528926%}.flag-nu{background-position:0 66.942149%}.flag-nz{background-position:0 67.355372%}.flag-om{background-position:0 67.768595%}.flag-pa{background-position:0 68.181818%}.flag-pe{background-position:0 68.595041%}.flag-pf{background-position:0 69.008264%}.flag-pg{background-position:0 69.421488%}.flag-ph{background-position:0 69.834711%}.flag-pk{background-position:0 70.247934%}.flag-pl{background-position:0 70.661157%}.flag-pm{background-position:0 71.07438%}.flag-pn{background-position:0 71.487603%}.flag-pr{background-position:0 71.900826%}.flag-pt{background-position:0 72.31405%}.flag-pw{background-position:0 72.727273%}.flag-py{background-position:0 73.140496%}.flag-qa{background-position:0 73.553719%}.flag-re{background-position:0 73.966942%}.flag-ro{background-position:0 74.380165%}.flag-rs{background-position:0 74.793388%}.flag-ru{background-position:0 75.206612%}.flag-rw{background-position:0 75.619835%}.flag-sa{background-position:0 76.033058%}.flag-sb{background-position:0 76.446281%}.flag-sc{background-position:0 76.859504%}.flag-sd{background-position:0 77.272727%}.flag-se{background-position:0 77.68595%}.flag-sg{background-position:0 78.099174%}.flag-sh{background-position:0 78.512397%}.flag-si{background-position:0 78.92562%}.flag-sj{background-position:0 79.338843%}.flag-sk{background-position:0 79.752066%}.flag-sl{background-position:0 80.165289%}.flag-sm{background-position:0 80.578512%}.flag-sn{background-position:0 80.991736%}.flag-so{background-position:0 81.404959%}.flag-sr{background-position:0 81.818182%}.flag-ss{background-position:0 82.231405%}.flag-st{background-position:0 82.644628%}.flag-sv{background-position:0 83.057851%}.flag-sy{background-position:0 83.471074%}.flag-sz{background-position:0 83.884298%}.flag-tc{background-position:0 84.297521%}.flag-td{background-position:0 84.710744%}.flag-tf{background-position:0 85.123967%}.flag-tg{background-position:0 85.53719%}.flag-th{background-position:0 85.950413%}.flag-tj{background-position:0 86.363636%}.flag-tk{background-position:0 86.77686%}.flag-tl{background-position:0 87.190083%}.flag-tm{background-position:0 87.603306%}.flag-tn{background-position:0 88.016529%}.flag-to{background-position:0 88.429752%}.flag-tp{background-position:0 88.842975%}.flag-tr{background-position:0 89.256198%}.flag-tt{background-position:0 89.669421%}.flag-tv{background-position:0 90.082645%}.flag-tw{background-position:0 90.495868%}.flag-ty{background-position:0 90.909091%}.flag-tz{background-position:0 91.322314%}.flag-ua{background-position:0 91.735537%}.flag-ug{background-position:0 92.14876%}.flag-gb,.flag-uk{background-position:0 92.561983%}.flag-um{background-position:0 92.975207%}.flag-us{background-position:0 93.38843%}.flag-uy{background-position:0 93.801653%}.flag-uz{background-position:0 94.214876%}.flag-va{background-position:0 94.628099%}.flag-vc{background-position:0 95.041322%}.flag-ve{background-position:0 95.454545%}.flag-vg{background-position:0 95.867769%}.flag-vi{background-position:0 96.280992%}.flag-vn{background-position:0 96.694215%}.flag-vu{background-position:0 97.107438%}.flag-wf{background-position:0 97.520661%}.flag-ws{background-position:0 97.933884%}.flag-ye{background-position:0 98.347107%}.flag-za{background-position:0 98.760331%}.flag-zm{background-position:0 99.173554%}.flag-zr{background-position:0 99.586777%}.flag-zw{background-position:0 100%} +span.flag { + width: 44px; + height: 30px; + display: inline-block; +} +img.flag { + width: 30px; +} +.flag { + background: url(flags_responsive.png) no-repeat; + background-size: 100%; + vertical-align: middle; +} +.flag-ad { + background-position: 0 0.413223%; +} +.flag-ae { + background-position: 0 0.826446%; +} +.flag-af { + background-position: 0 1.239669%; +} +.flag-ag { + background-position: 0 1.652893%; +} +.flag-ai { + background-position: 0 2.066116%; +} +.flag-al { + background-position: 0 2.479339%; +} +.flag-am { + background-position: 0 2.892562%; +} +.flag-an { + background-position: 0 3.305785%; +} +.flag-ao { + background-position: 0 3.719008%; +} +.flag-aq { + background-position: 0 4.132231%; +} +.flag-ar { + background-position: 0 4.545455%; +} +.flag-as { + background-position: 0 4.958678%; +} +.flag-at { + background-position: 0 5.371901%; +} +.flag-au { + background-position: 0 5.785124%; +} +.flag-aw { + background-position: 0 6.198347%; +} +.flag-az { + background-position: 0 6.61157%; +} +.flag-ba { + background-position: 0 7.024793%; +} +.flag-bb { + background-position: 0 7.438017%; +} +.flag-bd { + background-position: 0 7.85124%; +} +.flag-be { + background-position: 0 8.264463%; +} +.flag-bf { + background-position: 0 8.677686%; +} +.flag-bg { + background-position: 0 9.090909%; +} +.flag-bh { + background-position: 0 9.504132%; +} +.flag-bi { + background-position: 0 9.917355%; +} +.flag-bj { + background-position: 0 10.330579%; +} +.flag-bm { + background-position: 0 10.743802%; +} +.flag-bn { + background-position: 0 11.157025%; +} +.flag-bo { + background-position: 0 11.570248%; +} +.flag-br { + background-position: 0 11.983471%; +} +.flag-bs { + background-position: 0 12.396694%; +} +.flag-bt { + background-position: 0 12.809917%; +} +.flag-bv { + background-position: 0 13.22314%; +} +.flag-bw { + background-position: 0 13.636364%; +} +.flag-by { + background-position: 0 14.049587%; +} +.flag-bz { + background-position: 0 14.46281%; +} +.flag-ca { + background-position: 0 14.876033%; +} +.flag-cc { + background-position: 0 15.289256%; +} +.flag-cd { + background-position: 0 15.702479%; +} +.flag-cf { + background-position: 0 16.115702%; +} +.flag-cg { + background-position: 0 16.528926%; +} +.flag-ch { + background-position: 0 16.942149%; +} +.flag-ci { + background-position: 0 17.355372%; +} +.flag-ck { + background-position: 0 17.768595%; +} +.flag-cl { + background-position: 0 18.181818%; +} +.flag-cm { + background-position: 0 18.595041%; +} +.flag-cn { + background-position: 0 19.008264%; +} +.flag-co { + background-position: 0 19.421488%; +} +.flag-cr { + background-position: 0 19.834711%; +} +.flag-cu { + background-position: 0 20.247934%; +} +.flag-cv { + background-position: 0 20.661157%; +} +.flag-cx { + background-position: 0 21.07438%; +} +.flag-cy { + background-position: 0 21.487603%; +} +.flag-cz { + background-position: 0 21.900826%; +} +.flag-de { + background-position: 0 22.31405%; +} +.flag-dj { + background-position: 0 22.727273%; +} +.flag-dk { + background-position: 0 23.140496%; +} +.flag-dm { + background-position: 0 23.553719%; +} +.flag-do { + background-position: 0 23.966942%; +} +.flag-dz { + background-position: 0 24.380165%; +} +.flag-ec { + background-position: 0 24.793388%; +} +.flag-ee { + background-position: 0 25.206612%; +} +.flag-eg { + background-position: 0 25.619835%; +} +.flag-eh { + background-position: 0 26.033058%; +} +.flag-er { + background-position: 0 26.446281%; +} +.flag-es { + background-position: 0 26.859504%; +} +.flag-et { + background-position: 0 27.272727%; +} +.flag-fi { + background-position: 0 27.68595%; +} +.flag-fj { + background-position: 0 28.099174%; +} +.flag-fk { + background-position: 0 28.512397%; +} +.flag-fm { + background-position: 0 28.92562%; +} +.flag-fo { + background-position: 0 29.338843%; +} +.flag-fr { + background-position: 0 29.752066%; +} +.flag-ga { + background-position: 0 30.165289%; +} +.flag-gd { + background-position: 0 30.578512%; +} +.flag-ge { + background-position: 0 30.991736%; +} +.flag-gf { + background-position: 0 31.404959%; +} +.flag-gh { + background-position: 0 31.818182%; +} +.flag-gi { + background-position: 0 32.231405%; +} +.flag-gl { + background-position: 0 32.644628%; +} +.flag-gm { + background-position: 0 33.057851%; +} +.flag-gn { + background-position: 0 33.471074%; +} +.flag-gp { + background-position: 0 33.884298%; +} +.flag-gq { + background-position: 0 34.297521%; +} +.flag-gr { + background-position: 0 34.710744%; +} +.flag-gs { + background-position: 0 35.123967%; +} +.flag-gt { + background-position: 0 35.53719%; +} +.flag-gu { + background-position: 0 35.950413%; +} +.flag-gw { + background-position: 0 36.363636%; +} +.flag-gy { + background-position: 0 36.77686%; +} +.flag-hk { + background-position: 0 37.190083%; +} +.flag-hm { + background-position: 0 37.603306%; +} +.flag-hn { + background-position: 0 38.016529%; +} +.flag-hr { + background-position: 0 38.429752%; +} +.flag-ht { + background-position: 0 38.842975%; +} +.flag-hu { + background-position: 0 39.256198%; +} +.flag-id { + background-position: 0 39.669421%; +} +.flag-ie { + background-position: 0 40.082645%; +} +.flag-il { + background-position: 0 40.495868%; +} +.flag-in { + background-position: 0 40.909091%; +} +.flag-io { + background-position: 0 41.322314%; +} +.flag-iq { + background-position: 0 41.735537%; +} +.flag-ir { + background-position: 0 42.14876%; +} +.flag-is { + background-position: 0 42.561983%; +} +.flag-it { + background-position: 0 42.975207%; +} +.flag-jm { + background-position: 0 43.38843%; +} +.flag-jo { + background-position: 0 43.801653%; +} +.flag-jp { + background-position: 0 44.214876%; +} +.flag-ke { + background-position: 0 44.628099%; +} +.flag-kg { + background-position: 0 45.041322%; +} +.flag-kh { + background-position: 0 45.454545%; +} +.flag-ki { + background-position: 0 45.867769%; +} +.flag-km { + background-position: 0 46.280992%; +} +.flag-kn { + background-position: 0 46.694215%; +} +.flag-kp { + background-position: 0 47.107438%; +} +.flag-kr { + background-position: 0 47.520661%; +} +.flag-kw { + background-position: 0 47.933884%; +} +.flag-ky { + background-position: 0 48.347107%; +} +.flag-kz { + background-position: 0 48.760331%; +} +.flag-la { + background-position: 0 49.173554%; +} +.flag-lb { + background-position: 0 49.586777%; +} +.flag-lc { + background-position: 0 50%; +} +.flag-li { + background-position: 0 50.413223%; +} +.flag-lk { + background-position: 0 50.826446%; +} +.flag-lr { + background-position: 0 51.239669%; +} +.flag-ls { + background-position: 0 51.652893%; +} +.flag-lt { + background-position: 0 52.066116%; +} +.flag-lu { + background-position: 0 52.479339%; +} +.flag-lv { + background-position: 0 52.892562%; +} +.flag-ly { + background-position: 0 53.305785%; +} +.flag-ma { + background-position: 0 53.719008%; +} +.flag-mc { + background-position: 0 54.132231%; +} +.flag-md { + background-position: 0 54.545455%; +} +.flag-me { + background-position: 0 54.958678%; +} +.flag-mg { + background-position: 0 55.371901%; +} +.flag-mh { + background-position: 0 55.785124%; +} +.flag-mk { + background-position: 0 56.198347%; +} +.flag-ml { + background-position: 0 56.61157%; +} +.flag-mm { + background-position: 0 57.024793%; +} +.flag-mn { + background-position: 0 57.438017%; +} +.flag-mo { + background-position: 0 57.85124%; +} +.flag-mp { + background-position: 0 58.264463%; +} +.flag-mq { + background-position: 0 58.677686%; +} +.flag-mr { + background-position: 0 59.090909%; +} +.flag-ms { + background-position: 0 59.504132%; +} +.flag-mt { + background-position: 0 59.917355%; +} +.flag-mu { + background-position: 0 60.330579%; +} +.flag-mv { + background-position: 0 60.743802%; +} +.flag-mw { + background-position: 0 61.157025%; +} +.flag-mx { + background-position: 0 61.570248%; +} +.flag-my { + background-position: 0 61.983471%; +} +.flag-mz { + background-position: 0 62.396694%; +} +.flag-na { + background-position: 0 62.809917%; +} +.flag-nc { + background-position: 0 63.22314%; +} +.flag-ne { + background-position: 0 63.636364%; +} +.flag-nf { + background-position: 0 64.049587%; +} +.flag-ng { + background-position: 0 64.46281%; +} +.flag-ni { + background-position: 0 64.876033%; +} +.flag-nl { + background-position: 0 65.289256%; +} +.flag-no { + background-position: 0 65.702479%; +} +.flag-np { + background-position: 0 66.115702%; +} +.flag-nr { + background-position: 0 66.528926%; +} +.flag-nu { + background-position: 0 66.942149%; +} +.flag-nz { + background-position: 0 67.355372%; +} +.flag-om { + background-position: 0 67.768595%; +} +.flag-pa { + background-position: 0 68.181818%; +} +.flag-pe { + background-position: 0 68.595041%; +} +.flag-pf { + background-position: 0 69.008264%; +} +.flag-pg { + background-position: 0 69.421488%; +} +.flag-ph { + background-position: 0 69.834711%; +} +.flag-pk { + background-position: 0 70.247934%; +} +.flag-pl { + background-position: 0 70.661157%; +} +.flag-pm { + background-position: 0 71.07438%; +} +.flag-pn { + background-position: 0 71.487603%; +} +.flag-pr { + background-position: 0 71.900826%; +} +.flag-pt { + background-position: 0 72.31405%; +} +.flag-pw { + background-position: 0 72.727273%; +} +.flag-py { + background-position: 0 73.140496%; +} +.flag-qa { + background-position: 0 73.553719%; +} +.flag-re { + background-position: 0 73.966942%; +} +.flag-ro { + background-position: 0 74.380165%; +} +.flag-rs { + background-position: 0 74.793388%; +} +.flag-ru { + background-position: 0 75.206612%; +} +.flag-rw { + background-position: 0 75.619835%; +} +.flag-sa { + background-position: 0 76.033058%; +} +.flag-sb { + background-position: 0 76.446281%; +} +.flag-sc { + background-position: 0 76.859504%; +} +.flag-sd { + background-position: 0 77.272727%; +} +.flag-se { + background-position: 0 77.68595%; +} +.flag-sg { + background-position: 0 78.099174%; +} +.flag-sh { + background-position: 0 78.512397%; +} +.flag-si { + background-position: 0 78.92562%; +} +.flag-sj { + background-position: 0 79.338843%; +} +.flag-sk { + background-position: 0 79.752066%; +} +.flag-sl { + background-position: 0 80.165289%; +} +.flag-sm { + background-position: 0 80.578512%; +} +.flag-sn { + background-position: 0 80.991736%; +} +.flag-so { + background-position: 0 81.404959%; +} +.flag-sr { + background-position: 0 81.818182%; +} +.flag-ss { + background-position: 0 82.231405%; +} +.flag-st { + background-position: 0 82.644628%; +} +.flag-sv { + background-position: 0 83.057851%; +} +.flag-sy { + background-position: 0 83.471074%; +} +.flag-sz { + background-position: 0 83.884298%; +} +.flag-tc { + background-position: 0 84.297521%; +} +.flag-td { + background-position: 0 84.710744%; +} +.flag-tf { + background-position: 0 85.123967%; +} +.flag-tg { + background-position: 0 85.53719%; +} +.flag-th { + background-position: 0 85.950413%; +} +.flag-tj { + background-position: 0 86.363636%; +} +.flag-tk { + background-position: 0 86.77686%; +} +.flag-tl { + background-position: 0 87.190083%; +} +.flag-tm { + background-position: 0 87.603306%; +} +.flag-tn { + background-position: 0 88.016529%; +} +.flag-to { + background-position: 0 88.429752%; +} +.flag-tp { + background-position: 0 88.842975%; +} +.flag-tr { + background-position: 0 89.256198%; +} +.flag-tt { + background-position: 0 89.669421%; +} +.flag-tv { + background-position: 0 90.082645%; +} +.flag-tw { + background-position: 0 90.495868%; +} +.flag-ty { + background-position: 0 90.909091%; +} +.flag-tz { + background-position: 0 91.322314%; +} +.flag-ua { + background-position: 0 91.735537%; +} +.flag-ug { + background-position: 0 92.14876%; +} +.flag-gb, +.flag-uk { + background-position: 0 92.561983%; +} +.flag-um { + background-position: 0 92.975207%; +} +.flag-us { + background-position: 0 93.38843%; +} +.flag-uy { + background-position: 0 93.801653%; +} +.flag-uz { + background-position: 0 94.214876%; +} +.flag-va { + background-position: 0 94.628099%; +} +.flag-vc { + background-position: 0 95.041322%; +} +.flag-ve { + background-position: 0 95.454545%; +} +.flag-vg { + background-position: 0 95.867769%; +} +.flag-vi { + background-position: 0 96.280992%; +} +.flag-vn { + background-position: 0 96.694215%; +} +.flag-vu { + background-position: 0 97.107438%; +} +.flag-wf { + background-position: 0 97.520661%; +} +.flag-ws { + background-position: 0 97.933884%; +} +.flag-ye { + background-position: 0 98.347107%; +} +.flag-za { + background-position: 0 98.760331%; +} +.flag-zm { + background-position: 0 99.173554%; +} +.flag-zr { + background-position: 0 99.586777%; +} +.flag-zw { + background-position: 0 100%; +} diff --git a/web-ui/web-react/src/assets/layout/_overrides.scss b/web-ui/web-react/src/assets/layout/_overrides.scss index 850b92b1..e6b931c3 100644 --- a/web-ui/web-react/src/assets/layout/_overrides.scss +++ b/web-ui/web-react/src/assets/layout/_overrides.scss @@ -1 +1 @@ -//Suggested location to add your overrides so that migration would be easy by just updating the SASS folder in the future \ No newline at end of file +//Suggested location to add your overrides so that migration would be easy by just updating the SASS folder in the future diff --git a/web-ui/web-react/src/assets/layout/_variables.scss b/web-ui/web-react/src/assets/layout/_variables.scss index 3886613d..54a65a75 100644 --- a/web-ui/web-react/src/assets/layout/_variables.scss +++ b/web-ui/web-react/src/assets/layout/_variables.scss @@ -1,4 +1,4 @@ /* General */ -$fontSize:10px; -$borderRadius:12px; -$transitionDuration:.2s; +$fontSize: 10px; +$borderRadius: 12px; +$transitionDuration: 0.2s; diff --git a/web-ui/web-react/src/assets/layout/layout.scss b/web-ui/web-react/src/assets/layout/layout.scss index 5980a637..772e4ee7 100644 --- a/web-ui/web-react/src/assets/layout/layout.scss +++ b/web-ui/web-react/src/assets/layout/layout.scss @@ -1,3 +1,3 @@ -@import "./_variables"; -@import "./sass/_layout"; -@import "./_overrides"; \ No newline at end of file +@import './_variables'; +@import './sass/_layout'; +@import './_overrides'; diff --git a/web-ui/web-react/src/assets/layout/sass/_config.scss b/web-ui/web-react/src/assets/layout/sass/_config.scss index 76bf2a28..466271c3 100644 --- a/web-ui/web-react/src/assets/layout/sass/_config.scss +++ b/web-ui/web-react/src/assets/layout/sass/_config.scss @@ -1,103 +1,104 @@ .layout-config { - position: fixed; - top: 0; - padding: 0; - right: 0; - width: 20rem; - z-index: 999; + position: fixed; + top: 0; + padding: 0; + right: 0; + width: 20rem; + z-index: 999; + height: 100vh; + transform: translateX(100%); + transition: transform $transitionDuration; + backface-visibility: hidden; + box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.02), 0px 0px 2px rgba(0, 0, 0, 0.05), + 0px 1px 4px rgba(0, 0, 0, 0.08) !important; + color: var(--text-color); + background-color: var(--surface-overlay); + border-top-left-radius: 12px; + border-bottom-left-radius: 12px; + + &.layout-config-active { + transform: translateX(0); + } + + .layout-config-button { + display: block; + position: absolute; + width: 52px; + height: 52px; + line-height: 52px; + background-color: var(--primary-color); + color: var(--primary-color-text); + text-align: center; + top: 230px; + left: -52px; + z-index: -1; + overflow: hidden; + cursor: pointer; + border-top-left-radius: $borderRadius; + border-bottom-left-radius: $borderRadius; + border-bottom-right-radius: 0; + border-top-right-radius: 0; + transition: background-color $transitionDuration; + + i { + font-size: 32px; + line-height: inherit; + cursor: pointer; + transform: rotate(0deg); + transition: color $transitionDuration, transform 1s; + } + } + + .layout-config-close { + position: absolute; + right: 1rem; + top: 1rem; + z-index: 1; + } + + .layout-config-content { + position: relative; + overflow: auto; height: 100vh; - transform: translateX(100%); - transition: transform $transitionDuration; - backface-visibility: hidden; - box-shadow: 0px 3px 5px rgba(0,0,0,.02), 0px 0px 2px rgba(0,0,0,.05), 0px 1px 4px rgba(0,0,0,.08) !important; - color: var(--text-color); - background-color: var(--surface-overlay); - border-top-left-radius: 12px; - border-bottom-left-radius: 12px; + padding: 2rem; + } - &.layout-config-active { - transform: translateX(0); + .config-scale { + display: flex; + align-items: center; + margin: 1rem 0 2rem 0; + + .p-button { + margin-right: 0.5rem; } - .layout-config-button { - display: block; - position: absolute; - width: 52px; - height: 52px; - line-height: 52px; - background-color: var(--primary-color); - color: var(--primary-color-text); - text-align: center; - top: 230px; - left: -52px; - z-index: -1; - overflow: hidden; - cursor: pointer; - border-top-left-radius: $borderRadius; - border-bottom-left-radius: $borderRadius; - border-bottom-right-radius: 0; - border-top-right-radius: 0; - transition: background-color $transitionDuration; + i { + margin-right: 0.5rem; + font-size: 0.75rem; + color: var(--text-color-secondary); - i { - font-size: 32px; - line-height: inherit; - cursor: pointer; - transform: rotate(0deg); - transition: color $transitionDuration, transform 1s; - } + &.scale-active { + font-size: 1.25rem; + color: var(--primary-color); + } + } + } + + .free-themes { + img { + width: 2rem; + border-radius: 4px; + transition: transform 0.2s; + display: block; + + &:hover { + transform: scale(1.1); + } } - .layout-config-close { - position: absolute; - right: 1rem; - top: 1rem; - z-index: 1; - } - - .layout-config-content { - position: relative; - overflow: auto; - height: 100vh; - padding: 2rem; - } - - .config-scale { - display: flex; - align-items: center; - margin: 1rem 0 2rem 0; - - .p-button { - margin-right: .5rem; - } - - i { - margin-right: .5rem; - font-size: .75rem; - color: var(--text-color-secondary); - - &.scale-active { - font-size: 1.25rem; - color: var(--primary-color); - } - } - } - - .free-themes { - img { - width: 2rem; - border-radius: 4px; - transition: transform .2s; - display: block; - - &:hover { - transform: scale(1.1); - } - } - - span { - font-size: .75rem; - margin-top: .25rem; - } + span { + font-size: 0.75rem; + margin-top: 0.25rem; } + } } diff --git a/web-ui/web-react/src/assets/layout/sass/_content.scss b/web-ui/web-react/src/assets/layout/sass/_content.scss index 2c40e1da..5bf68c26 100644 --- a/web-ui/web-react/src/assets/layout/sass/_content.scss +++ b/web-ui/web-react/src/assets/layout/sass/_content.scss @@ -1,12 +1,12 @@ .layout-main-container { - display: flex; - flex-direction: column; - min-height: 100vh; - justify-content: space-between; - padding: 7rem 2rem 2rem 4rem; - transition: margin-left $transitionDuration; + display: flex; + flex-direction: column; + min-height: 100vh; + justify-content: space-between; + padding: 7rem 2rem 2rem 4rem; + transition: margin-left $transitionDuration; } .layout-main { - flex: 1 1 auto; + flex: 1 1 auto; } diff --git a/web-ui/web-react/src/assets/layout/sass/_footer.scss b/web-ui/web-react/src/assets/layout/sass/_footer.scss index 367d3128..4b988613 100644 --- a/web-ui/web-react/src/assets/layout/sass/_footer.scss +++ b/web-ui/web-react/src/assets/layout/sass/_footer.scss @@ -1,8 +1,8 @@ .layout-footer { - transition: margin-left $transitionDuration; - display: flex; - align-items: center; - justify-content: center; - padding-top: 1rem; - border-top: 1px solid var(--surface-border); + transition: margin-left $transitionDuration; + display: flex; + align-items: center; + justify-content: center; + padding-top: 1rem; + border-top: 1px solid var(--surface-border); } diff --git a/web-ui/web-react/src/assets/layout/sass/_layout.scss b/web-ui/web-react/src/assets/layout/sass/_layout.scss index ec73f06a..908c2f42 100644 --- a/web-ui/web-react/src/assets/layout/sass/_layout.scss +++ b/web-ui/web-react/src/assets/layout/sass/_layout.scss @@ -1,11 +1,11 @@ -@import "./_mixins"; -@import "./_splash"; -@import "./_main"; -@import "./_topbar"; -@import "./_menu"; -@import "./_config"; -@import "./_content"; -@import "./_footer"; -@import "./_responsive"; -@import "./_utils"; -@import "./_typography"; +@import './_mixins'; +@import './_splash'; +@import './_main'; +@import './_topbar'; +@import './_menu'; +@import './_config'; +@import './_content'; +@import './_footer'; +@import './_responsive'; +@import './_utils'; +@import './_typography'; diff --git a/web-ui/web-react/src/assets/layout/sass/_main.scss b/web-ui/web-react/src/assets/layout/sass/_main.scss index 6edf0076..fa3adfdf 100644 --- a/web-ui/web-react/src/assets/layout/sass/_main.scss +++ b/web-ui/web-react/src/assets/layout/sass/_main.scss @@ -1,28 +1,29 @@ * { - box-sizing: border-box; + box-sizing: border-box; } html { - height: 100%; - font-size: $fontSize; + height: 100%; + font-size: $fontSize; } body { - font-family: var(--font-family); - color: var(--text-color); - background-color: var(--surface-ground); - margin: 0; - padding: 0; - min-height: 100%; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; + font-family: var(--font-family); + color: var(--text-color); + background-color: var(--surface-ground); + margin: 0; + padding: 0; + min-height: 100%; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; } -a, button { - text-decoration: none; - color: var(--primary-color); +a, +button { + text-decoration: none; + color: var(--primary-color); } .layout-theme-light { - background-color: #edf1f5; + background-color: #edf1f5; } diff --git a/web-ui/web-react/src/assets/layout/sass/_menu.scss b/web-ui/web-react/src/assets/layout/sass/_menu.scss index a7bff896..55e7174f 100644 --- a/web-ui/web-react/src/assets/layout/sass/_menu.scss +++ b/web-ui/web-react/src/assets/layout/sass/_menu.scss @@ -1,120 +1,121 @@ .layout-sidebar { - position: fixed; - width: 300px; - height: calc(100vh - 9rem); - z-index: 999; - overflow-y: auto; - user-select: none; - top: 7rem; - left: 2rem; - transition: transform $transitionDuration, left $transitionDuration; - background-color: var(--surface-overlay); - border-radius: 12px; - padding: 1.5rem; - box-shadow: 0px 3px 5px rgba(0,0,0,.02), 0px 0px 2px rgba(0,0,0,.05), 0px 1px 4px rgba(0,0,0,.08) + position: fixed; + width: 300px; + height: calc(100vh - 9rem); + z-index: 999; + overflow-y: auto; + user-select: none; + top: 7rem; + left: 2rem; + transition: transform $transitionDuration, left $transitionDuration; + background-color: var(--surface-overlay); + border-radius: 12px; + padding: 1.5rem; + box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.02), 0px 0px 2px rgba(0, 0, 0, 0.05), + 0px 1px 4px rgba(0, 0, 0, 0.08); } .layout-menu { - list-style-type: none; - margin: 0; - padding: 0; + list-style-type: none; + margin: 0; + padding: 0; - li { - &.layout-menuitem-category { - margin-top: .75rem; + li { + &.layout-menuitem-category { + margin-top: 0.75rem; - &:first-child { - margin-top: 0; - } - } - - .layout-menuitem-root-text { - text-transform: uppercase; - color:var(--surface-900); - font-weight: 600; - margin-bottom: .5rem; - font-size: .875rem; - } - - a { - cursor: pointer; - text-decoration: none; - display: flex; - align-items: center; - color:var(--text-color); - transition: color $transitionDuration; - border-radius: $borderRadius; - padding: .75rem 1rem; - transition: background-color .15s; - - span { - margin-left: 0.5rem; - } - - .menuitem-toggle-icon { - margin-left: auto; - } - - &:focus { - @include focused-inset(); - } - - &:hover { - background-color: var(--surface-hover); - } - - &.router-link-exact-active { - font-weight: 700; - color: var(--primary-color); - } - - .p-badge { - margin-left: auto; - } - } - - &.active-menuitem { - > a { - .menuitem-toggle-icon { - &:before { - content: '\e933'; - } - } - } - } - - ul { - list-style-type: none; - margin: 0; - padding: 0; - - &.layout-submenu-wrapper-enter { - max-height: 0; - } - - &.layout-submenu-wrapper-enter-active { - overflow: hidden; - max-height: 1000px; - transition: max-height 1s ease-in-out; - } - - &.layout-submenu-wrapper-enter-done { - transform: none; - } - - &.layout-submenu-wrapper-exit { - max-height: 1000px; - } - - &.layout-submenu-wrapper-exit-active { - overflow: hidden; - max-height: 0; - transition: max-height 0.45s cubic-bezier(0.86, 0, 0.07, 1); - } - - ul { - padding-left: 1rem; - } - } + &:first-child { + margin-top: 0; + } } + + .layout-menuitem-root-text { + text-transform: uppercase; + color: var(--surface-900); + font-weight: 600; + margin-bottom: 0.5rem; + font-size: 0.875rem; + } + + a { + cursor: pointer; + text-decoration: none; + display: flex; + align-items: center; + color: var(--text-color); + transition: color $transitionDuration; + border-radius: $borderRadius; + padding: 0.75rem 1rem; + transition: background-color 0.15s; + + span { + margin-left: 0.5rem; + } + + .menuitem-toggle-icon { + margin-left: auto; + } + + &:focus { + @include focused-inset(); + } + + &:hover { + background-color: var(--surface-hover); + } + + &.router-link-exact-active { + font-weight: 700; + color: var(--primary-color); + } + + .p-badge { + margin-left: auto; + } + } + + &.active-menuitem { + > a { + .menuitem-toggle-icon { + &:before { + content: '\e933'; + } + } + } + } + + ul { + list-style-type: none; + margin: 0; + padding: 0; + + &.layout-submenu-wrapper-enter { + max-height: 0; + } + + &.layout-submenu-wrapper-enter-active { + overflow: hidden; + max-height: 1000px; + transition: max-height 1s ease-in-out; + } + + &.layout-submenu-wrapper-enter-done { + transform: none; + } + + &.layout-submenu-wrapper-exit { + max-height: 1000px; + } + + &.layout-submenu-wrapper-exit-active { + overflow: hidden; + max-height: 0; + transition: max-height 0.45s cubic-bezier(0.86, 0, 0.07, 1); + } + + ul { + padding-left: 1rem; + } + } + } } diff --git a/web-ui/web-react/src/assets/layout/sass/_mixins.scss b/web-ui/web-react/src/assets/layout/sass/_mixins.scss index ec26860a..65e74e5f 100644 --- a/web-ui/web-react/src/assets/layout/sass/_mixins.scss +++ b/web-ui/web-react/src/assets/layout/sass/_mixins.scss @@ -1,13 +1,13 @@ @mixin focused() { - outline: 0 none; - outline-offset: 0; - transition: box-shadow .2s; - box-shadow: var(--focus-ring); + outline: 0 none; + outline-offset: 0; + transition: box-shadow 0.2s; + box-shadow: var(--focus-ring); } @mixin focused-inset() { - outline: 0 none; - outline-offset: 0; - transition: box-shadow .2s; - box-shadow: inset var(--focus-ring); + outline: 0 none; + outline-offset: 0; + transition: box-shadow 0.2s; + box-shadow: inset var(--focus-ring); } diff --git a/web-ui/web-react/src/assets/layout/sass/_responsive.scss b/web-ui/web-react/src/assets/layout/sass/_responsive.scss index d94d09c8..fc470cd2 100644 --- a/web-ui/web-react/src/assets/layout/sass/_responsive.scss +++ b/web-ui/web-react/src/assets/layout/sass/_responsive.scss @@ -1,89 +1,89 @@ @media (min-width: 992px) { - .layout-wrapper { - &.layout-overlay { - .layout-main-container { - margin-left: 0; - padding-left: 2rem; - } + .layout-wrapper { + &.layout-overlay { + .layout-main-container { + margin-left: 0; + padding-left: 2rem; + } - .layout-sidebar { - transform: translateX(-100%); - left: 0; - top: 0; - height: 100vh; - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } + .layout-sidebar { + transform: translateX(-100%); + left: 0; + top: 0; + height: 100vh; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } - &.layout-overlay-sidebar-active { - .layout-sidebar { - transform: translateX(0); - } - } - } - - &.layout-static { - .layout-main-container { - margin-left: 300px; - } - - &.layout-static-sidebar-inactive { - .layout-sidebar { - transform: translateX(-100%); - left: 0; - } - - .layout-main-container { - margin-left: 0; - padding-left: 2rem; - } - } - } - - .layout-mask { - display: none; + &.layout-overlay-sidebar-active { + .layout-sidebar { + transform: translateX(0); } + } } + + &.layout-static { + .layout-main-container { + margin-left: 300px; + } + + &.layout-static-sidebar-inactive { + .layout-sidebar { + transform: translateX(-100%); + left: 0; + } + + .layout-main-container { + margin-left: 0; + padding-left: 2rem; + } + } + } + + .layout-mask { + display: none; + } + } } @media (max-width: 991px) { - .layout-wrapper { - .layout-main-container { - margin-left: 0; - padding-left: 2rem; - } - - .layout-sidebar { - transform: translateX(-100%); - left: 0; - top: 0; - height: 100vh; - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } - - .layout-mask { - z-index: 998; - background-color: var(--mask-bg); - - &.layout-mask-enter-from, - &.layout-mask-leave-to { - background-color: transparent; - } - } - - &.layout-mobile-sidebar-active { - .layout-sidebar { - transform: translateX(0); - } - - .layout-mask { - display: block; - } - } + .layout-wrapper { + .layout-main-container { + margin-left: 0; + padding-left: 2rem; } - .body-overflow-hidden { - overflow: hidden; + .layout-sidebar { + transform: translateX(-100%); + left: 0; + top: 0; + height: 100vh; + border-top-left-radius: 0; + border-bottom-left-radius: 0; } + + .layout-mask { + z-index: 998; + background-color: var(--mask-bg); + + &.layout-mask-enter-from, + &.layout-mask-leave-to { + background-color: transparent; + } + } + + &.layout-mobile-sidebar-active { + .layout-sidebar { + transform: translateX(0); + } + + .layout-mask { + display: block; + } + } + } + + .body-overflow-hidden { + overflow: hidden; + } } diff --git a/web-ui/web-react/src/assets/layout/sass/_splash.scss b/web-ui/web-react/src/assets/layout/sass/_splash.scss index a8141044..f3ff3e7e 100644 --- a/web-ui/web-react/src/assets/layout/sass/_splash.scss +++ b/web-ui/web-react/src/assets/layout/sass/_splash.scss @@ -1,47 +1,48 @@ .preloader { - position: fixed; - z-index: 999999; - background: #edf1f5; - width: 100%; - height: 100%; + position: fixed; + z-index: 999999; + background: #edf1f5; + width: 100%; + height: 100%; } .preloader-content { - border: 0 solid transparent; - border-radius: 50%; - width: 150px; - height: 150px; - position: absolute; - top: calc(50vh - 75px); - left: calc(50vw - 75px); + border: 0 solid transparent; + border-radius: 50%; + width: 150px; + height: 150px; + position: absolute; + top: calc(50vh - 75px); + left: calc(50vw - 75px); } -.preloader-content:before, .preloader-content:after{ - content: ''; - border: 1em solid var(--primary-color); - border-radius: 50%; - width: inherit; - height: inherit; - position: absolute; - top: 0; - left: 0; - animation: loader 2s linear infinite; +.preloader-content:before, +.preloader-content:after { + content: ''; + border: 1em solid var(--primary-color); + border-radius: 50%; + width: inherit; + height: inherit; + position: absolute; + top: 0; + left: 0; + animation: loader 2s linear infinite; + opacity: 0; +} + +.preloader-content:before { + animation-delay: 0.5s; +} + +@keyframes loader { + 0% { + transform: scale(0); opacity: 0; -} - -.preloader-content:before{ - animation-delay: 0.5s; -} - -@keyframes loader{ - 0%{ - transform: scale(0); - opacity: 0; - } - 50%{ - opacity: 1; - } - 100%{ - transform: scale(1); - opacity: 0; - } + } + 50% { + opacity: 1; + } + 100% { + transform: scale(1); + opacity: 0; + } } diff --git a/web-ui/web-react/src/assets/layout/sass/_topbar.scss b/web-ui/web-react/src/assets/layout/sass/_topbar.scss index 79402366..3984dd7d 100644 --- a/web-ui/web-react/src/assets/layout/sass/_topbar.scss +++ b/web-ui/web-react/src/assets/layout/sass/_topbar.scss @@ -1,149 +1,151 @@ .layout-topbar { - position: fixed; - height: 5rem; - z-index: 997; - left: 0; - top: 0; - width: 100%; - padding: 0 2rem; - background-color: var(--surface-card); - transition: left $transitionDuration; + position: fixed; + height: 5rem; + z-index: 997; + left: 0; + top: 0; + width: 100%; + padding: 0 2rem; + background-color: var(--surface-card); + transition: left $transitionDuration; + display: flex; + align-items: center; + box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.02), 0px 0px 2px rgba(0, 0, 0, 0.05), + 0px 1px 4px rgba(0, 0, 0, 0.08); + + .layout-topbar-logo { display: flex; align-items: center; - box-shadow: 0px 3px 5px rgba(0,0,0,.02), 0px 0px 2px rgba(0,0,0,.05), 0px 1px 4px rgba(0,0,0,.08); + color: var(--surface-900); + font-size: 1.5rem; + font-weight: 500; + width: 300px; + border-radius: 12px; - .layout-topbar-logo { - display: flex; - align-items: center; - color: var(--surface-900); - font-size: 1.5rem; - font-weight: 500; - width: 300px; - border-radius: 12px; - - img { - height: 2.5rem; - margin-right: .5rem; - } - - &:focus { - @include focused(); - } + img { + height: 2.5rem; + margin-right: 0.5rem; } + &:focus { + @include focused(); + } + } + + .layout-topbar-button { + display: inline-flex; + justify-content: center; + align-items: center; + position: relative; + color: var(--text-color-secondary); + border-radius: 50%; + width: 3rem; + height: 3rem; + cursor: pointer; + transition: background-color $transitionDuration; + + &:hover { + color: var(--text-color); + background-color: var(--surface-hover); + } + + &:focus { + @include focused(); + } + + i { + font-size: 1.5rem; + } + + span { + font-size: 1rem; + display: none; + } + } + + .layout-menu-button { + margin-left: 2rem; + } + + .layout-topbar-menu-button { + display: none; + + i { + font-size: 1.25rem; + } + } + + .layout-topbar-menu { + margin: 0 0 0 auto; + padding: 0; + list-style: none; + display: flex; + .layout-topbar-button { - display: inline-flex; - justify-content: center; - align-items: center; - position: relative; - color: var(--text-color-secondary); - border-radius: 50%; - width: 3rem; - height: 3rem; - cursor: pointer; - transition: background-color $transitionDuration; - - &:hover { - color: var(--text-color); - background-color: var(--surface-hover); - } - - &:focus { - @include focused(); - } - - i { - font-size: 1.5rem; - } - - span { - font-size: 1rem; - display: none; - } - } - - .layout-menu-button { - margin-left: 2rem; - } - - .layout-topbar-menu-button { - display: none; - - i { - font-size: 1.25rem; - } - } - - .layout-topbar-menu { - margin: 0 0 0 auto; - padding: 0; - list-style: none; - display: flex; - - .layout-topbar-button { - margin-left: 1rem; - } + margin-left: 1rem; } + } } @media (max-width: 991px) { - .layout-topbar { - justify-content: space-between; + .layout-topbar { + justify-content: space-between; - .layout-topbar-logo { - width: auto; - order: 2; - } - - .layout-menu-button { - margin-left: 0; - order: 1; - } - - .layout-topbar-menu-button { - display: inline-flex; - margin-left: 0; - order: 3; - } - - .layout-topbar-menu { - margin-left: 0; - position: absolute; - flex-direction: column; - background-color: var(--surface-overlay); - box-shadow: 0px 3px 5px rgba(0,0,0,.02), 0px 0px 2px rgba(0,0,0,.05), 0px 1px 4px rgba(0,0,0,.08); - border-radius: 12px; - padding: 1rem; - right: 2rem; - top: 5rem; - min-width: 15rem; - display: none; - -webkit-animation: scalein 0.15s linear; - animation: scalein 0.15s linear; - - &.layout-topbar-menu-mobile-active { - display: block - } - - .layout-topbar-button { - margin-left: 0; - display: flex; - width: 100%; - height: auto; - justify-content: flex-start; - border-radius: 12px; - padding: 1rem; - - i { - font-size: 1rem; - margin-right: .5rem; - } - - span { - font-weight: medium; - display: block; - } - } - } + .layout-topbar-logo { + width: auto; + order: 2; } + + .layout-menu-button { + margin-left: 0; + order: 1; + } + + .layout-topbar-menu-button { + display: inline-flex; + margin-left: 0; + order: 3; + } + + .layout-topbar-menu { + margin-left: 0; + position: absolute; + flex-direction: column; + background-color: var(--surface-overlay); + box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.02), + 0px 0px 2px rgba(0, 0, 0, 0.05), 0px 1px 4px rgba(0, 0, 0, 0.08); + border-radius: 12px; + padding: 1rem; + right: 2rem; + top: 5rem; + min-width: 15rem; + display: none; + -webkit-animation: scalein 0.15s linear; + animation: scalein 0.15s linear; + + &.layout-topbar-menu-mobile-active { + display: block; + } + + .layout-topbar-button { + margin-left: 0; + display: flex; + width: 100%; + height: auto; + justify-content: flex-start; + border-radius: 12px; + padding: 1rem; + + i { + font-size: 1rem; + margin-right: 0.5rem; + } + + span { + font-weight: medium; + display: block; + } + } + } + } } diff --git a/web-ui/web-react/src/assets/layout/sass/_typography.scss b/web-ui/web-react/src/assets/layout/sass/_typography.scss index 5cd89d25..3cb2d648 100644 --- a/web-ui/web-react/src/assets/layout/sass/_typography.scss +++ b/web-ui/web-react/src/assets/layout/sass/_typography.scss @@ -1,63 +1,68 @@ -h1, h2, h3, h4, h5, h6 { - margin: 1.5rem 0 1rem 0; - font-family: inherit; - font-weight: 500; - line-height: 1.2; - color: inherit; +h1, +h2, +h3, +h4, +h5, +h6 { + margin: 1.5rem 0 1rem 0; + font-family: inherit; + font-weight: 500; + line-height: 1.2; + color: inherit; - &:first-child { - margin-top: 0; - } + &:first-child { + margin-top: 0; + } } h1 { - font-size: 2.5rem; + font-size: 2.5rem; } h2 { - font-size: 2rem; + font-size: 2rem; } h3 { - font-size: 1.75rem; + font-size: 1.75rem; } h4 { - font-size: 1.5rem; + font-size: 1.5rem; } h5 { - font-size: 1.25rem; + font-size: 1.25rem; } h6 { - font-size: 1rem; + font-size: 1rem; } mark { - background: #FFF8E1; - padding: .25rem .4rem; - border-radius: $borderRadius; - font-family: monospace; + background: #fff8e1; + padding: 0.25rem 0.4rem; + border-radius: $borderRadius; + font-family: monospace; } blockquote { - margin: 1rem 0; - padding: 0 2rem; - border-left: 4px solid #90A4AE; + margin: 1rem 0; + padding: 0 2rem; + border-left: 4px solid #90a4ae; } hr { - border-top: solid var(--surface-border); - border-width: 1px 0 0 0; - margin: 1rem 0; + border-top: solid var(--surface-border); + border-width: 1px 0 0 0; + margin: 1rem 0; } p { - margin: 0 0 1rem 0; - line-height: 1.5; + margin: 0 0 1rem 0; + line-height: 1.5; - &:last-child { - margin-bottom: 0; - } + &:last-child { + margin-bottom: 0; + } } diff --git a/web-ui/web-react/src/assets/layout/sass/_utils.scss b/web-ui/web-react/src/assets/layout/sass/_utils.scss index 93bdb6c9..49ce2848 100644 --- a/web-ui/web-react/src/assets/layout/sass/_utils.scss +++ b/web-ui/web-react/src/assets/layout/sass/_utils.scss @@ -1,11 +1,12 @@ .card { - background-color: var(--surface-card); - padding: 1.5rem; - margin-bottom: 1rem; - border-radius: $borderRadius; - box-shadow: 0px 3px 5px rgba(0,0,0,.02), 0px 0px 2px rgba(0,0,0,.05), 0px 1px 4px rgba(0,0,0,.08) !important; + background-color: var(--surface-card); + padding: 1.5rem; + margin-bottom: 1rem; + border-radius: $borderRadius; + box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.02), 0px 0px 2px rgba(0, 0, 0, 0.05), + 0px 1px 4px rgba(0, 0, 0, 0.08) !important; - &.card-w-title { - padding-bottom: 2rem; - } + &.card-w-title { + padding-bottom: 2rem; + } } diff --git a/web-ui/web-react/src/components/AdministradoresComunidad.js b/web-ui/web-react/src/components/AdministradoresComunidad.js index 06416d5d..c1ec59c4 100644 --- a/web-ui/web-react/src/components/AdministradoresComunidad.js +++ b/web-ui/web-react/src/components/AdministradoresComunidad.js @@ -6,7 +6,7 @@ import { Column } from 'primereact/column'; import { Toast } from 'primereact/toast'; import { Dialog } from 'primereact/dialog'; import { Toolbar } from 'primereact/toolbar'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { faHome, faUserAlt } from '@fortawesome/free-solid-svg-icons'; import { faPhoneAlt } from '@fortawesome/free-solid-svg-icons'; import { faAt } from '@fortawesome/free-solid-svg-icons'; @@ -14,74 +14,84 @@ import { faIdCardAlt } from '@fortawesome/free-solid-svg-icons'; import { faEllipsis } from '@fortawesome/free-solid-svg-icons'; import { faHomeAlt } from '@fortawesome/free-solid-svg-icons'; - const AdministradoresComunidad = () => { + const [listaAdmins, setListaAdmins] = useState([]); + const [listaAdminComunidad, setListaAdminComunidad] = useState([]); + const [adminCommunity, setAdminCommunity] = useState(emptyAdminCommunity); + const [selectedAdminsCommunities, setSelectedAdminsCommunities] = + useState(null); + const [globalFilter, setGlobalFilter] = useState(null); + const [deleteAdminCommunityDialog, setDeleteAdminCommunityDialog] = + useState(false); + const [deleteAdminsCommunitiesDialog, setDeleteAdminsCommunitiesDialog] = + useState(false); + const toast = useRef(null); + const dt = useRef(null); - const [listaAdmins, setListaAdmins] = useState([]); - const [listaAdminComunidad, setListaAdminComunidad] = useState([]); - const [adminCommunity, setAdminCommunity] = useState(emptyAdminCommunity); - const [selectedAdminsCommunities, setSelectedAdminsCommunities] = useState(null); - const [globalFilter, setGlobalFilter] = useState(null); - const [deleteAdminCommunityDialog, setDeleteAdminCommunityDialog] = useState(false); - const [deleteAdminsCommunitiesDialog, setDeleteAdminsCommunitiesDialog] = useState(false); - const toast = useRef(null); - const dt = useRef(null); + let emptyAdminCommunity = { + _id: null, + dni: '', + name: '', + last_name: '', + email: '', + phone: '', + password: '', + community_id: '', + community_name: '', + user_type: '2', + status: '', + }; - let emptyAdminCommunity = { - _id: null, - dni: '', - name: '', - last_name: '', - email: '', - phone: '', - password: '', - community_id: '', - community_name: '', - user_type: '2', - status: '' - }; + async function listaAdmin() { + let nombres = await fetch( + 'http://localhost:4000/user/findAdminComunidad/', + { method: 'GET' }, + ) + .then((response) => response.json()) + .then((data) => { + return Promise.all( + data.message.map((item) => { + //item.full_name returns the repositorie name + return fetch( + `http://localhost:4000/community/findCommunityName/${item.community_id}`, + { method: 'GET' }, + ) + .then((response2) => response2.json()) + .then((data) => { + console.log(data.message.name); + item.community_name = data.message.name; + return item; + }); + }), + ); + }) + .then((data) => setListaAdmins(data)); + } - async function listaAdmin() { - let nombres = await fetch('http://localhost:4000/user/findAdminComunidad/', { method: 'GET' }) - .then((response) => response.json()) - .then((data) => { - return Promise.all(data.message.map(item => { - //item.full_name returns the repositorie name - return fetch(`http://localhost:4000/community/findCommunityName/${item.community_id}`, { method: 'GET' }) - .then((response2) => response2.json()) - .then(data => { - console.log(data.message.name); - item.community_name = data.message.name - return item - }) - })); - }).then(data => setListaAdmins(data) - ); + async function nombreComunidad(id) { + let nombres = await fetch( + 'http://localhost:4000/community/findCommunityName/' + id, + { method: 'GET' }, + ); + let nombresRes = await nombres.json(); + return await nombresRes.message['name']; + } - } + async function setNameCommunities() { + Promise.all( + listaAdmins.map(async function (administrador) { + // await listaComunidades(administrador.community_id); + administrador.community_id = await listaAdminComunidad.name; + }), + ); + } - async function nombreComunidad(id) { - let nombres = await fetch('http://localhost:4000/community/findCommunityName/' + id, { method: 'GET' }); - let nombresRes = await nombres.json(); - return await nombresRes.message['name']; - } + useEffect(() => { + listaAdmin(); + }, []); - - async function setNameCommunities() { - Promise.all(listaAdmins.map(async function (administrador) { - // await listaComunidades(administrador.community_id); - administrador.community_id = await listaAdminComunidad.name; - })) - } - - useEffect(() => { - listaAdmin(); - - }, []) - - - const deleteAdminCommunity = () => { - /* fetch('http://localhost:4000/community/deleteCommunity/' + community._id, { + const deleteAdminCommunity = () => { + /* fetch('http://localhost:4000/community/deleteCommunity/' + community._id, { cache: 'no-cache', method: 'DELETE', headers: { @@ -113,16 +123,24 @@ const AdministradoresComunidad = () => { } ); */ - let _administrators = listaAdmins.filter(val => val._id !== adminCommunity._id); - setListaAdmins(_administrators); - setDeleteAdminCommunityDialog(false); - setAdminCommunity(emptyAdminCommunity); - toast.current.show({ severity: 'success', summary: 'Administrador de Comunidad Eliminada', life: 3000 }); - } + let _administrators = listaAdmins.filter( + (val) => val._id !== adminCommunity._id, + ); + setListaAdmins(_administrators); + setDeleteAdminCommunityDialog(false); + setAdminCommunity(emptyAdminCommunity); + toast.current.show({ + severity: 'success', + summary: 'Administrador de Comunidad Eliminada', + life: 3000, + }); + }; - const deleteSelectedAdminsCommunity = () => { - let _admins = listaAdmins.filter(val => !selectedAdminsCommunities.includes(val)); - /* selectedCommunities.map((item) => { + const deleteSelectedAdminsCommunity = () => { + let _admins = listaAdmins.filter( + (val) => !selectedAdminsCommunities.includes(val), + ); + /* selectedCommunities.map((item) => { fetch('http://localhost:4000/user/deleteCommunity/' + item._id, { cache: 'no-cache', method: 'DELETE', @@ -131,285 +149,515 @@ const AdministradoresComunidad = () => { } }) })*/ - setListaAdmins(_admins); - setDeleteAdminsCommunitiesDialog(false); - setSelectedAdminsCommunities(null); - toast.current.show({ severity: 'success', summary: 'Éxito', detail: 'Administradores de Comunidad de Viviendas Eliminado', life: 3000 }); - } + setListaAdmins(_admins); + setDeleteAdminsCommunitiesDialog(false); + setSelectedAdminsCommunities(null); + toast.current.show({ + severity: 'success', + summary: 'Éxito', + detail: 'Administradores de Comunidad de Viviendas Eliminado', + life: 3000, + }); + }; + const hideDeleteAdminCommunityDialog = () => { + setDeleteAdminCommunityDialog(false); + }; + const hideDeleteAdminsCommunitysDialog = () => { + setDeleteAdminsCommunitiesDialog(false); + }; - const hideDeleteAdminCommunityDialog = () => { - setDeleteAdminCommunityDialog(false); - } - - const hideDeleteAdminsCommunitysDialog = () => { - setDeleteAdminsCommunitiesDialog(false); - } - - const confirmDeleteAdminCommunity = (adminCommunity) => { - setAdminCommunity(adminCommunity); - setDeleteAdminCommunityDialog(true); - } - - const confirmDeleteSelected = () => { - setDeleteAdminsCommunitiesDialog(true); - } - - const actionsAdminCommunity = (rowData) => { - return ( -
    -
    - ); - } - - const leftToolbarTemplate = () => { - return ( - -
    -
    -
    - ) - } - - const rightToolbarTemplate = () => { - return ( - -
    - ); - } - - const leftToolbarTemplate = () => { - return ( - -
    -
    -
    - ) - } - - const rightToolbarTemplate = () => { - return ( - - - - - +
    +
    + ); + }; + + const leftToolbarTemplate = () => { + return ( + +
    +
    - ) -} +
    + ); + }; + + const rightToolbarTemplate = () => { + return ( + + + + + + + ); +}; const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + return prevProps.location.pathname === nextProps.location.pathname; }; export default React.memo(AdministradoresSistema, comparisonFn); diff --git a/web-ui/web-react/src/components/ComunidadViviendas.js b/web-ui/web-react/src/components/ComunidadViviendas.js index 4dd54733..7fc4e7ad 100644 --- a/web-ui/web-react/src/components/ComunidadViviendas.js +++ b/web-ui/web-react/src/components/ComunidadViviendas.js @@ -8,255 +8,255 @@ import { Toast } from 'primereact/toast'; import classNames from 'classnames'; import { Dialog } from 'primereact/dialog'; import { Toolbar } from 'primereact/toolbar'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { faHome } from '@fortawesome/free-solid-svg-icons'; import { faMapLocationDot } from '@fortawesome/free-solid-svg-icons'; import { faPhoneAlt } from '@fortawesome/free-solid-svg-icons'; import { faEllipsis } from '@fortawesome/free-solid-svg-icons'; const Communities = () => { + let emptyCommunity = { + _id: null, + name: '', + province: provinciaId, + canton: cantonId, + district: districtId, + phone: '', + num_houses: 0, + status: 'activo', + date_entry: new Date(), + houses: [], + }; - let emptyCommunity = { - _id: null, - name: '', - province: provinciaId, - canton: cantonId, - district: districtId, - phone: '', - num_houses: 0, - status: 'activo', - date_entry: new Date(), - houses: [], - }; + const [communitiesList, setCommunitiesList] = useState([]); + const [community, setCommunity] = useState(emptyCommunity); + const [housesList, setHousesList] = useState([]); + const [provincesList, setProvincesList] = useState([]); + const [provinciaId, setProvinciaId] = useState(null); + const [cantonsList, setCantonsList] = useState([]); + const [cantonId, setCantonId] = useState(null); + const [districtsList, setDistrictsList] = useState([]); + const [districtId, setDistrictId] = useState(null); + const [codeHouses, setCodeHouses] = useState(''); + const [submitted, setSubmitted] = useState(false); + const [selectedCommunities, setSelectedCommunities] = useState(null); + const [globalFilter, setGlobalFilter] = useState(null); + const [deleteCommunityDialog, setDeleteCommunityDialog] = useState(false); + const [deleteCommunitiesDialog, setDeleteCommunitiesDialog] = useState(false); + const toast = useRef(null); + const dt = useRef(null); - const [communitiesList, setCommunitiesList] = useState([]); - const [community, setCommunity] = useState(emptyCommunity); + const p = provincesList.map((item) => ({ + label: item.name, + value: item.code, + })); - const [housesList, setHousesList] = useState([]); - const [provincesList, setProvincesList] = useState([]); - const [provinciaId, setProvinciaId] = useState(null); - const [cantonsList, setCantonsList] = useState([]); - const [cantonId, setCantonId] = useState(null); - const [districtsList, setDistrictsList] = useState([]); - const [districtId, setDistrictId] = useState(null); - const [codeHouses, setCodeHouses] = useState(''); - const [submitted, setSubmitted] = useState(false); - const [selectedCommunities, setSelectedCommunities] = useState(null); - const [globalFilter, setGlobalFilter] = useState(null); - const [deleteCommunityDialog, setDeleteCommunityDialog] = useState(false); - const [deleteCommunitiesDialog, setDeleteCommunitiesDialog] = useState(false); - const toast = useRef(null); - const dt = useRef(null); + const c = cantonsList.map((item) => ({ + label: item.name, + value: item.code, + parent: item.parentCode, + })); + const d = districtsList.map((item) => ({ + label: item.name, + value: item.code, + parent: item.parentCode, + })); + useEffect(() => { + fillProvinces(); + }, []); - const p = provincesList.map((item) => ({ - label: item.name, - value: item.code - })) + useEffect(() => { + fillCantons(); + }, [provinciaId]); + useEffect(() => { + fillDistricts(); + }, [cantonId]); - const c = cantonsList.map((item) => ({ - label: item.name, - value: item.code, - parent: item.parentCode - })) + async function getProvinces() { + const response = await fetch('assets/demo/data/provincias.json', { + method: 'GET', + }); + return await response.json(); + } - const d = districtsList.map((item) => ({ - label: item.name, - value: item.code, - parent: item.parentCode - })) + async function fillProvinces() { + const getP = await getProvinces(); + setProvincesList(await getP); + } + async function getCantons() { + const response = await fetch('assets/demo/data/cantones.json', { + method: 'GET', + }); + return await response.json(); + } + async function fillCantons() { + const resJson = await getCantons(); + const cantones = await resJson.filter(function (i, n) { + return i.parentCode === provinciaId; + }); + setCantonsList(await cantones); + } - useEffect(() => { - fillProvinces(); + async function getDistricts() { + const response = await fetch('assets/demo/data/distritos.json', { + method: 'GET', + }); + return await response.json(); + } - }, []) + async function fillDistricts() { + const resJson = await getDistricts(); + const districts = await resJson.filter(function (i, n) { + return i.parentCode === cantonId; + }); + setDistrictsList(await districts); + } - useEffect(() => { - fillCantons(); - }, [provinciaId]) + const handleProvinces = (event) => { + const getprovinciaId = event.target.value; + setProvinciaId(getprovinciaId); + }; - useEffect(() => { - fillDistricts(); - }, [cantonId]) + const handleCanton = (event) => { + const getCantonId = event.target.value; + setCantonId(getCantonId); + }; - async function getProvinces() { - const response = await fetch('assets/demo/data/provincias.json', { method: 'GET' }); - return await response.json(); - } + const handleDistrict = (event) => { + const getDistrictId = event.target.value; + setDistrictId(getDistrictId); + }; - async function fillProvinces() { - const getP = await getProvinces(); - setProvincesList(await getP); - } + const handleCodeHouses = (event) => { + const getcodehouse = event.target.value; + setCodeHouses(getcodehouse); + }; - async function getCantons() { - const response = await fetch('assets/demo/data/cantones.json', { method: 'GET' }); - return await response.json(); - } + async function getCommunites() { + let response = await fetch( + 'http://localhost:4000/community/allCommunities', + { method: 'GET' }, + ); + let resJson = await response.json(); + let pList = await getProvinces(); + let cList = await getCantons(); + let dList = await getDistricts(); + await resJson.message.map((item) => { + item.province = pList.find((p) => p.code === item.province).name; + item.canton = cList.find((p) => p.code === item.canton).name; + item.district = dList.find((p) => p.code === item.district).name; + if (!item.id_admin) { + item.name_admin = 'Sin Administrador'; + } + }); + setCommunitiesList(await resJson.message); + } - async function fillCantons() { - const resJson = await getCantons(); - const cantones = await resJson.filter(function (i, n) { - return i.parentCode === provinciaId; + useEffect(() => { + getCommunites(); + }, []); + + const saveCommunity = () => { + if ( + community.name && + community.num_houses > 0 && + provinciaId && + cantonId && + districtId && + community.phone + ) { + let _communities = [...communitiesList]; + let _community = { ...community }; + _community.province = provinciaId; + _community.canton = cantonId; + _community.district = districtId; + + for (let i = 0; i < _community.num_houses; i++) { + _community.houses.push({ + number_house: codeHouses + (i + 1), }); - setCantonsList(await cantones); - } - - async function getDistricts() { - const response = await fetch('assets/demo/data/distritos.json', { method: 'GET' }); - return await response.json(); - } - - async function fillDistricts() { - const resJson = await getDistricts(); - const districts = await resJson.filter(function (i, n) { - return i.parentCode === cantonId; - }); - setDistrictsList(await districts); - } - - const handleProvinces = (event) => { - const getprovinciaId = event.target.value; - setProvinciaId(getprovinciaId); - } - - const handleCanton = (event) => { - const getCantonId = event.target.value; - setCantonId(getCantonId); - } - - const handleDistrict = (event) => { - const getDistrictId = event.target.value; - setDistrictId(getDistrictId); - } - - - const handleCodeHouses = (event) => { - const getcodehouse = event.target.value; - setCodeHouses(getcodehouse); - } - - async function getCommunites() { - let response = await fetch('http://localhost:4000/community/allCommunities', { method: 'GET' }); - let resJson = await response.json(); - let pList = await getProvinces(); - let cList = await getCantons(); - let dList = await getDistricts(); - await resJson.message.map((item) => { - item.province = pList.find(p => p.code === item.province).name - item.canton = cList.find(p => p.code === item.canton).name - item.district = dList.find(p => p.code === item.district).name - if (!item.id_admin) { - item.name_admin = "Sin Administrador" - } + } + // console.log(houses) + fetch('http://localhost:4000/community/createCommunity', { + cache: 'no-cache', + method: 'POST', + body: JSON.stringify(_community), + headers: { + 'Content-Type': 'application/json', + }, + }) + .then(function (response) { + if (response.status != 201) + console.log('Ocurrió un error con el servicio: ' + response.status); + else return response.json(); }) - setCommunitiesList(await resJson.message); + .then(() => { + _community.province = provincesList.find( + (p) => p.code === _community.province, + ).name; + _community.canton = cantonsList.find( + (p) => p.code === _community.canton, + ).name; + _community.district = districtsList.find( + (p) => p.code === _community.district, + ).name; + + _communities.push(_community); + toast.current.show({ + severity: 'success', + summary: 'Registro exitoso', + detail: 'Comunidad de vivienda Creada', + life: 3000, + }); + + setCommunitiesList(_communities); + + setProvinciaId(''); + setCantonId(''); + setDistrictId(''); + setCodeHouses(''); + + setCommunity(emptyCommunity); + }) + .catch((err) => console.log('Ocurrió un error con el fetch', err)); + } else { + setSubmitted(true); } + }; - useEffect(() => { - getCommunites(); - }, []) + const onInputChange = (e, name) => { + const val = (e.target && e.target.value) || ''; + let _community = { ...community }; + _community[`${name}`] = val; + setCommunity(_community); + }; - const saveCommunity = () => { + const hideDeleteCommunityDialog = () => { + setDeleteCommunityDialog(false); + }; - if (community.name && community.num_houses > 0 && provinciaId && cantonId && districtId && community.phone) { - let _communities = [...communitiesList]; - let _community = { ...community }; - _community.province = provinciaId; - _community.canton = cantonId; - _community.district = districtId; + const hideDeleteCommunitiesDialog = () => { + setDeleteCommunitiesDialog(false); + }; + const confirmDeleteCommunity = (community) => { + setCommunity(community); + setDeleteCommunityDialog(true); + }; + const confirmDeleteSelected = () => { + setDeleteCommunitiesDialog(true); + }; - for (let i = 0; i < _community.num_houses; i++) { - _community.houses.push({ - number_house: codeHouses + (i + 1), - }) - } - // console.log(houses) - fetch('http://localhost:4000/community/createCommunity', { - cache: 'no-cache', - method: 'POST', - body: JSON.stringify(_community), - headers: { - 'Content-Type': 'application/json' - } - }) - .then( - function (response) { - if (response.status != 201) - console.log('Ocurrió un error con el servicio: ' + response.status); - else - return response.json(); - } - ) - .then(() => { - - _community.province = provincesList.find(p => p.code === _community.province).name - _community.canton = cantonsList.find(p => p.code === _community.canton).name - _community.district = districtsList.find(p => p.code === _community.district).name - - _communities.push(_community); - toast.current.show({ severity: 'success', summary: 'Registro exitoso', detail: 'Comunidad de vivienda Creada', life: 3000 }); - - setCommunitiesList(_communities); - - - setProvinciaId(''); - setCantonId(''); - setDistrictId(''); - setCodeHouses(''); - - setCommunity(emptyCommunity); - - }) - .catch( - err => console.log('Ocurrió un error con el fetch', err) - ); - - - } else { - setSubmitted(true); - - } - - } - - const onInputChange = (e, name) => { - const val = (e.target && e.target.value) || ''; - let _community = { ...community }; - _community[`${name}`] = val; - - setCommunity(_community); - } - - - const hideDeleteCommunityDialog = () => { - setDeleteCommunityDialog(false); - } - - const hideDeleteCommunitiesDialog = () => { - setDeleteCommunitiesDialog(false); - } - - const confirmDeleteCommunity = (community) => { - setCommunity(community); - setDeleteCommunityDialog(true); - } - - const confirmDeleteSelected = () => { - setDeleteCommunitiesDialog(true); - } - - const deleteCommunity = () => { - - /* fetch('http://localhost:4000/community/deleteCommunity/' + community._id, { + const deleteCommunity = () => { + /* fetch('http://localhost:4000/community/deleteCommunity/' + community._id, { cache: 'no-cache', method: 'DELETE', headers: { @@ -288,16 +288,23 @@ const Communities = () => { } ); */ - let _community = communitiesList.filter(val => val._id !== community._id); - setCommunitiesList(_community); - setDeleteCommunityDialog(false); - setCommunity(emptyCommunity); - toast.current.show({ severity: 'success', summary: 'Éxito', detail: 'Comunidad de Viviendas Eliminada', life: 3000 }); - } + let _community = communitiesList.filter((val) => val._id !== community._id); + setCommunitiesList(_community); + setDeleteCommunityDialog(false); + setCommunity(emptyCommunity); + toast.current.show({ + severity: 'success', + summary: 'Éxito', + detail: 'Comunidad de Viviendas Eliminada', + life: 3000, + }); + }; - const deleteSelectedCommunities = () => { - let _communities = communitiesList.filter(val => !selectedCommunities.includes(val)); - /* selectedCommunities.map((item) => { + const deleteSelectedCommunities = () => { + let _communities = communitiesList.filter( + (val) => !selectedCommunities.includes(val), + ); + /* selectedCommunities.map((item) => { fetch('http://localhost:4000/user/deleteCommunity/' + item._id, { cache: 'no-cache', method: 'DELETE', @@ -306,246 +313,492 @@ const Communities = () => { } }) })*/ - setCommunitiesList(_communities); - setDeleteCommunitiesDialog(false); - setSelectedCommunities(null); - toast.current.show({ severity: 'success', summary: 'Éxito', detail: 'Comunidades de Viviendas Eliminadas', life: 3000 }); - } - - const actionsCommunity = (rowData) => { - return ( -
    -
    - ); - } - - const leftToolbarTemplate = () => { - return ( - -
    -
    -
    - ) - } - - const rightToolbarTemplate = () => { - return ( - - - - - - + + +
    + + {selectedCommunities && ( + + ¿Está seguro eliminar los adminsitradores del sistema + seleccionados? + + )}
    - +
    + + +
    +
    +
    Registro de comunidad de viviendas
    +
    +
    + +
    +
    + + + + onInputChange(e, 'name')} + required + autoFocus + className={classNames({ + 'p-invalid': submitted && community.name === '', + })} + /> +
    + {submitted && community.name === '' && ( + Nombre es requirido. + )} +
    +
    +
    + +
    +
    + + + + +
    + {submitted && !provinciaId && ( + Provincia es requirido. + )} +
    +
    +
    + +
    +
    + + + + +
    + {submitted && !cantonId && ( + Cantón es requirido. + )} +
    +
    +
    + +
    +
    + + + + +
    + {submitted && !districtId && ( + Distrito es requirido. + )} +
    +
    +
    + +
    +
    + + + + onInputChange(e, 'phone')} + required + autoFocus + className={classNames({ + 'p-invalid': submitted && community.phone === '', + })} + /> +
    + {submitted && community.phone === '' && ( + + Número de teléfono es requirido. + + )} +
    +
    +
    + +
    +
    + + + + onInputChange(e, 'num_houses')} + required + autoFocus + className={classNames({ + 'p-invalid': submitted && community.num_houses < 1, + })} + /> +
    + {submitted && community.num_houses < 1 && ( + + Número de viviendas es requirido y debe ser mayor que 0. + + )} +
    +
    +
    + +
    +
    + + + + +
    + {submitted && codeHouses === '' && ( + + El código para las viviendas es requirido. + + )} +
    +
    +
    + +
    +
    +
    +
    + + ); +}; - - ) -} - -export default React.memo(Communities); \ No newline at end of file +export default React.memo(Communities); diff --git a/web-ui/web-react/src/components/GuardasSeguridad.js b/web-ui/web-react/src/components/GuardasSeguridad.js index bc4ec2f8..836d8647 100644 --- a/web-ui/web-react/src/components/GuardasSeguridad.js +++ b/web-ui/web-react/src/components/GuardasSeguridad.js @@ -5,117 +5,136 @@ import { DataTable } from 'primereact/datatable'; import { Column } from 'primereact/column'; const GuardasSeguridad = () => { - - const [pokemones,setPokemones]=useState([]); - const [urlFetch,setUrlFetch]=useState('http://localhost:4000/user/findGuards/62be68215692582bbfd77134'); - async function fetchP(){ - let nombres=await fetch(urlFetch, {method:'GET'}); - let pokemonesRes= await nombres.json(); + const [pokemones, setPokemones] = useState([]); + const [urlFetch, setUrlFetch] = useState( + 'http://localhost:4000/user/findGuards/62be68215692582bbfd77134', + ); + async function fetchP() { + let nombres = await fetch(urlFetch, { method: 'GET' }); + let pokemonesRes = await nombres.json(); setPokemones(pokemonesRes.message); console.log(pokemones); - } - useEffect(()=>{ - fetchP(); - },[]) + } + useEffect(() => { + fetchP(); + }, []); - function registrarGuarda() { - var data = { - dni: document.getElementById('identificacion').value, - name: document.getElementById('nombre').value, - last_name: document.getElementById('apellidos').value, - email: document.getElementById('correo_electronico').value, - phone: document.getElementById('telefono').value, - password: document.getElementById('correo_electronico').value, - user_type: "4", //4 es guarda - status: "1", - community_id:"62be68215692582bbfd77134" - }; - var data2={ - dni: "98765", - name: "Danielito", - last_name: "Rodriguez", - email: "danirodriguez@gmail.com", - phone: 84664515, - password: "1203", - user_type: "2", - status: "4", - community_id:"62be68215692582bbfd77134" - } - console.log(data2); + function registrarGuarda() { + var data = { + dni: document.getElementById('identificacion').value, + name: document.getElementById('nombre').value, + last_name: document.getElementById('apellidos').value, + email: document.getElementById('correo_electronico').value, + phone: document.getElementById('telefono').value, + password: document.getElementById('correo_electronico').value, + user_type: '4', //4 es guarda + status: '1', + community_id: '62be68215692582bbfd77134', + }; + var data2 = { + dni: '98765', + name: 'Danielito', + last_name: 'Rodriguez', + email: 'danirodriguez@gmail.com', + phone: 84664515, + password: '1203', + user_type: '2', + status: '4', + community_id: '62be68215692582bbfd77134', + }; + console.log(data2); - fetch('http://localhost:4000/user/createGuard', { - cache: 'no-cache', - method: 'POST', - mode:'cors', - body: JSON.stringify(data2), - headers: { - 'Content-Type': 'application/json' - } - }) - .then( - function (response) { - if (response.status != 201) - console.log('Ocurrió un error con el servicio: ' + response.status); - else - return response.json(); - } - ) - .then( - function (response) { - fetchP(); - } - ) - .catch( - err => console.log('Ocurrió un error con el fetch', err) - ); - } + fetch('http://localhost:4000/user/createGuard', { + cache: 'no-cache', + method: 'POST', + mode: 'cors', + body: JSON.stringify(data2), + headers: { + 'Content-Type': 'application/json', + }, + }) + .then(function (response) { + if (response.status != 201) + console.log('Ocurrió un error con el servicio: ' + response.status); + else return response.json(); + }) + .then(function (response) { + fetchP(); + }) + .catch((err) => console.log('Ocurrió un error con el fetch', err)); + } - return ( -
    -
    -
    -
    Guardas de seguridad
    - - - - - - - -
    -
    -
    -
    -
    Registro de un guarda de seguridad
    -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - - -
    - -
    -
    -
    + return ( +
    +
    +
    +
    Guardas de seguridad
    + + + + + + +
    +
    +
    +
    +
    Registro de un guarda de seguridad
    +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    + +
    +
    +
    +
    + ); +}; - - ) -} - -export default React.memo(GuardasSeguridad); \ No newline at end of file +export default React.memo(GuardasSeguridad); diff --git a/web-ui/web-react/src/components/Inquilinos.js b/web-ui/web-react/src/components/Inquilinos.js index 608a0a6b..280cf83a 100644 --- a/web-ui/web-react/src/components/Inquilinos.js +++ b/web-ui/web-react/src/components/Inquilinos.js @@ -1,27 +1,30 @@ import { Button } from 'primereact/button'; import { Dropdown } from 'primereact/dropdown'; -import { InputText } from 'primereact/inputtext' -import React, { useEffect, useState } from 'react' +import { InputText } from 'primereact/inputtext'; +import React, { useEffect, useState } from 'react'; const Inquilinos = () => { const [communitiesList, setCommunitiesList] = useState([]); - const communityIdList = communitiesList.map(community => community.id); + const communityIdList = communitiesList.map((community) => community.id); async function getCommunites() { - let response = await fetch('http://localhost:4000/community/allCommunities', { method: 'GET' }); + let response = await fetch( + 'http://localhost:4000/community/allCommunities', + { method: 'GET' }, + ); let list = await response.json(); setCommunitiesList(list.message); } useEffect(() => { getCommunites(); - }, []) + }, []); function registrarInquilino() { let data = { email: document.getElementById('correo_electronico').value, community_id: document.getElementById('numero_vivienda').value, user_type: '3', status: '1', - } + }; fetch('http://localhost:3000/api/createUser', { method: 'POST', @@ -32,11 +35,11 @@ const Inquilinos = () => { }, }).then((response) => { if (response.ok) { - alert('Inquilino registrado correctamente') + alert('Inquilino registrado correctamente'); } else { - alert('Error al registrar inquilino') + alert('Error al registrar inquilino'); } - }) + }); } return ( @@ -47,18 +50,26 @@ const Inquilinos = () => {
    - +
    - +
    -
    - ) -} + ); +}; -export default React.memo(Inquilinos); \ No newline at end of file +export default React.memo(Inquilinos); diff --git a/web-ui/web-react/src/components/LogIn.js b/web-ui/web-react/src/components/LogIn.js index 10c58bd6..22808d70 100644 --- a/web-ui/web-react/src/components/LogIn.js +++ b/web-ui/web-react/src/components/LogIn.js @@ -2,32 +2,29 @@ import React from 'react'; import { InputText } from 'primereact/inputtext'; const LogIn = () => { - - return ( -
    -
    -
    -
    Iniciar Sesión
    -
    -
    - - -
    -
    - - -
    - - {/* */} -
    -
    + return ( +
    +
    +
    +
    Iniciar Sesión
    +
    +
    + + +
    +
    + +
    -
    - ) -} -export default LogIn + {/* */} +
    +
    +
    +
    + ); +}; + +export default LogIn; /* image 1 */ - - diff --git a/web-ui/web-react/src/index.js b/web-ui/web-react/src/index.js index fb5e7a3f..9a5f6b56 100644 --- a/web-ui/web-react/src/index.js +++ b/web-ui/web-react/src/index.js @@ -3,19 +3,19 @@ import React from 'react'; import ReactDOM from 'react-dom'; import App from './App'; //import * as serviceWorker from './serviceWorker'; -import { HashRouter } from 'react-router-dom' +import { HashRouter } from 'react-router-dom'; import ScrollToTop from './ScrollToTop'; ReactDOM.render( - - - - - , - document.getElementById('root') + + + + + , + document.getElementById('root'), ); // If you want your app to work offline and load faster, you can change // unregister() to register() below. Note this comes with some pitfalls. // Learn more about service workers: http://bit.ly/CRA-PWA -//serviceWorker.unregister(); \ No newline at end of file +//serviceWorker.unregister(); diff --git a/web-ui/web-react/src/pages/Crud.js b/web-ui/web-react/src/pages/Crud.js index cfe3081f..58e9780b 100644 --- a/web-ui/web-react/src/pages/Crud.js +++ b/web-ui/web-react/src/pages/Crud.js @@ -15,370 +15,623 @@ import { InputText } from 'primereact/inputtext'; import { ProductService } from '../service/ProductService'; const Crud = () => { - let emptyProduct = { - id: null, - name: '', - image: null, - description: '', - category: null, - price: 0, - quantity: 0, - rating: 0, - inventoryStatus: 'INSTOCK' - }; + let emptyProduct = { + id: null, + name: '', + image: null, + description: '', + category: null, + price: 0, + quantity: 0, + rating: 0, + inventoryStatus: 'INSTOCK', + }; - const [products, setProducts] = useState(null); - const [productDialog, setProductDialog] = useState(false); - const [deleteProductDialog, setDeleteProductDialog] = useState(false); - const [deleteProductsDialog, setDeleteProductsDialog] = useState(false); - const [product, setProduct] = useState(emptyProduct); - const [selectedProducts, setSelectedProducts] = useState(null); - const [submitted, setSubmitted] = useState(false); - const [globalFilter, setGlobalFilter] = useState(null); - const toast = useRef(null); - const dt = useRef(null); + const [products, setProducts] = useState(null); + const [productDialog, setProductDialog] = useState(false); + const [deleteProductDialog, setDeleteProductDialog] = useState(false); + const [deleteProductsDialog, setDeleteProductsDialog] = useState(false); + const [product, setProduct] = useState(emptyProduct); + const [selectedProducts, setSelectedProducts] = useState(null); + const [submitted, setSubmitted] = useState(false); + const [globalFilter, setGlobalFilter] = useState(null); + const toast = useRef(null); + const dt = useRef(null); - useEffect(() => { - const productService = new ProductService(); - productService.getProducts().then(data => setProducts(data)); - }, []); + useEffect(() => { + const productService = new ProductService(); + productService.getProducts().then((data) => setProducts(data)); + }, []); - const formatCurrency = (value) => { - return value.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); + const formatCurrency = (value) => { + return value.toLocaleString('en-US', { + style: 'currency', + currency: 'USD', + }); + }; + + const openNew = () => { + setProduct(emptyProduct); + setSubmitted(false); + setProductDialog(true); + }; + + const hideDialog = () => { + setSubmitted(false); + setProductDialog(false); + }; + + const hideDeleteProductDialog = () => { + setDeleteProductDialog(false); + }; + + const hideDeleteProductsDialog = () => { + setDeleteProductsDialog(false); + }; + + const saveProduct = () => { + setSubmitted(true); + + if (product.name.trim()) { + let _products = [...products]; + let _product = { ...product }; + if (product.id) { + const index = findIndexById(product.id); + + _products[index] = _product; + toast.current.show({ + severity: 'success', + summary: 'Successful', + detail: 'Product Updated', + life: 3000, + }); + } else { + _product.id = createId(); + _product.image = 'product-placeholder.svg'; + _products.push(_product); + toast.current.show({ + severity: 'success', + summary: 'Successful', + detail: 'Product Created', + life: 3000, + }); + } + + setProducts(_products); + setProductDialog(false); + setProduct(emptyProduct); + } + }; + + const editProduct = (product) => { + setProduct({ ...product }); + setProductDialog(true); + }; + + const confirmDeleteProduct = (product) => { + setProduct(product); + setDeleteProductDialog(true); + }; + + const deleteProduct = () => { + let _products = products.filter((val) => val.id !== product.id); + setProducts(_products); + setDeleteProductDialog(false); + setProduct(emptyProduct); + toast.current.show({ + severity: 'success', + summary: 'Successful', + detail: 'Product Deleted', + life: 3000, + }); + }; + + const findIndexById = (id) => { + let index = -1; + for (let i = 0; i < products.length; i++) { + if (products[i].id === id) { + index = i; + break; + } } - const openNew = () => { - setProduct(emptyProduct); - setSubmitted(false); - setProductDialog(true); + return index; + }; + + const createId = () => { + let id = ''; + let chars = + 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; + for (let i = 0; i < 5; i++) { + id += chars.charAt(Math.floor(Math.random() * chars.length)); } + return id; + }; - const hideDialog = () => { - setSubmitted(false); - setProductDialog(false); - } + const exportCSV = () => { + dt.current.exportCSV(); + }; - const hideDeleteProductDialog = () => { - setDeleteProductDialog(false); - } + const confirmDeleteSelected = () => { + setDeleteProductsDialog(true); + }; - const hideDeleteProductsDialog = () => { - setDeleteProductsDialog(false); - } + const deleteSelectedProducts = () => { + let _products = products.filter((val) => !selectedProducts.includes(val)); + setProducts(_products); + setDeleteProductsDialog(false); + setSelectedProducts(null); + toast.current.show({ + severity: 'success', + summary: 'Successful', + detail: 'Products Deleted', + life: 3000, + }); + }; - const saveProduct = () => { - setSubmitted(true); + const onCategoryChange = (e) => { + let _product = { ...product }; + _product['category'] = e.value; + setProduct(_product); + }; - if (product.name.trim()) { - let _products = [...products]; - let _product = { ...product }; - if (product.id) { - const index = findIndexById(product.id); + const onInputChange = (e, name) => { + const val = (e.target && e.target.value) || ''; + let _product = { ...product }; + _product[`${name}`] = val; - _products[index] = _product; - toast.current.show({ severity: 'success', summary: 'Successful', detail: 'Product Updated', life: 3000 }); - } - else { - _product.id = createId(); - _product.image = 'product-placeholder.svg'; - _products.push(_product); - toast.current.show({ severity: 'success', summary: 'Successful', detail: 'Product Created', life: 3000 }); - } + setProduct(_product); + }; - setProducts(_products); - setProductDialog(false); - setProduct(emptyProduct); - } - } + const onInputNumberChange = (e, name) => { + const val = e.value || 0; + let _product = { ...product }; + _product[`${name}`] = val; - const editProduct = (product) => { - setProduct({ ...product }); - setProductDialog(true); - } - - const confirmDeleteProduct = (product) => { - setProduct(product); - setDeleteProductDialog(true); - } - - const deleteProduct = () => { - let _products = products.filter(val => val.id !== product.id); - setProducts(_products); - setDeleteProductDialog(false); - setProduct(emptyProduct); - toast.current.show({ severity: 'success', summary: 'Successful', detail: 'Product Deleted', life: 3000 }); - } - - const findIndexById = (id) => { - let index = -1; - for (let i = 0; i < products.length; i++) { - if (products[i].id === id) { - index = i; - break; - } - } - - return index; - } - - const createId = () => { - let id = ''; - let chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; - for (let i = 0; i < 5; i++) { - id += chars.charAt(Math.floor(Math.random() * chars.length)); - } - return id; - } - - const exportCSV = () => { - dt.current.exportCSV(); - } - - const confirmDeleteSelected = () => { - setDeleteProductsDialog(true); - } - - const deleteSelectedProducts = () => { - let _products = products.filter(val => !selectedProducts.includes(val)); - setProducts(_products); - setDeleteProductsDialog(false); - setSelectedProducts(null); - toast.current.show({ severity: 'success', summary: 'Successful', detail: 'Products Deleted', life: 3000 }); - } - - const onCategoryChange = (e) => { - let _product = { ...product }; - _product['category'] = e.value; - setProduct(_product); - } - - const onInputChange = (e, name) => { - const val = (e.target && e.target.value) || ''; - let _product = { ...product }; - _product[`${name}`] = val; - - setProduct(_product); - } - - const onInputNumberChange = (e, name) => { - const val = e.value || 0; - let _product = { ...product }; - _product[`${name}`] = val; - - setProduct(_product); - } - - const leftToolbarTemplate = () => { - return ( - -
    -
    -
    - ) - } - - const rightToolbarTemplate = () => { - return ( - - -
    - ); - } - - const header = ( -
    -
    Manage Products
    - - - setGlobalFilter(e.target.value)} placeholder="Search..." /> - -
    - ); - - const productDialogFooter = ( - <> - + + ); + }; - const customizedContent = (item) => { - return ( - - { item.image && e.target.src = 'https://www.primefaces.org/wp-content/uploads/2020/05/placeholder.png'} alt={item.name} width={200} className="shadow-2 mb-3" />} -

    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore sed consequuntur error repudiandae numquam deserunt - quisquam repellat libero asperiores earum nam nobis, culpa ratione quam perferendis esse, cupiditate neque quas!

    - -
    - ); - }; + const customizedMarker = (item) => { + return ( + + + + ); + }; - const customizedMarker = (item) => { - return ( - - - - ); - }; + return ( +
    +
    +
    +

    Timeline

    - return
    -
    -
    -

    Timeline

    +
    Custom Timeline
    + -
    Custom Timeline
    - - -
    Horizontal - Alternate Align
    - item} opposite={ } /> -
    +
    Horizontal - Alternate Align
    + item} + opposite={ } + />
    +
    -} - -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + ); }; -export default React.memo(TimelineDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(TimelineDemo, comparisonFn); diff --git a/web-ui/web-react/src/service/CountryService.js b/web-ui/web-react/src/service/CountryService.js index 43532da9..f8c58103 100644 --- a/web-ui/web-react/src/service/CountryService.js +++ b/web-ui/web-react/src/service/CountryService.js @@ -1,9 +1,9 @@ -import axios from 'axios' +import axios from 'axios'; export class CountryService { - - getCountries() { - return axios.get('assets/demo/data/countries.json') - .then(res => res.data.data); - } -} \ No newline at end of file + getCountries() { + return axios + .get('assets/demo/data/countries.json') + .then((res) => res.data.data); + } +} diff --git a/web-ui/web-react/src/service/CustomerService.js b/web-ui/web-react/src/service/CustomerService.js index 257ae3c6..4958a90c 100644 --- a/web-ui/web-react/src/service/CustomerService.js +++ b/web-ui/web-react/src/service/CustomerService.js @@ -1,14 +1,15 @@ -import axios from 'axios' +import axios from 'axios'; export class CustomerService { - getCustomersMedium() { - return axios.get('assets/demo/data/customers-medium.json') - .then(res => res.data.data); - } + getCustomersMedium() { + return axios + .get('assets/demo/data/customers-medium.json') + .then((res) => res.data.data); + } - getCustomersLarge() { - return axios.get('assets/demo/data/customers-large.json') - .then(res => res.data.data); - } - -} \ No newline at end of file + getCustomersLarge() { + return axios + .get('assets/demo/data/customers-large.json') + .then((res) => res.data.data); + } +} diff --git a/web-ui/web-react/src/service/EventService.js b/web-ui/web-react/src/service/EventService.js index cd486b3e..7cc65488 100644 --- a/web-ui/web-react/src/service/EventService.js +++ b/web-ui/web-react/src/service/EventService.js @@ -1,9 +1,9 @@ import axios from 'axios'; export class EventService { - - getEvents() { - return axios.get('assets/demo/data/events.json') - .then(res => res.data.data); - } + getEvents() { + return axios + .get('assets/demo/data/events.json') + .then((res) => res.data.data); + } } diff --git a/web-ui/web-react/src/service/NodeService.js b/web-ui/web-react/src/service/NodeService.js index 2d0f2828..a26bf091 100644 --- a/web-ui/web-react/src/service/NodeService.js +++ b/web-ui/web-react/src/service/NodeService.js @@ -1,13 +1,15 @@ import axios from 'axios'; export class NodeService { - getTreeNodes() { - return axios.get('assets/demo/data/treenodes.json') - .then(res => res.data.root); - } + getTreeNodes() { + return axios + .get('assets/demo/data/treenodes.json') + .then((res) => res.data.root); + } - getTreeTableNodes() { - return axios.get('assets/demo/data/treetablenodes.json') - .then(res => res.data.root); - } + getTreeTableNodes() { + return axios + .get('assets/demo/data/treetablenodes.json') + .then((res) => res.data.root); + } } diff --git a/web-ui/web-react/src/service/PhotoService.js b/web-ui/web-react/src/service/PhotoService.js index 30614faa..0e138506 100644 --- a/web-ui/web-react/src/service/PhotoService.js +++ b/web-ui/web-react/src/service/PhotoService.js @@ -1,8 +1,9 @@ import axios from 'axios'; export class PhotoService { - - getImages() { - return axios.get('assets/demo/data/photos.json').then(res => res.data.data); - } + getImages() { + return axios + .get('assets/demo/data/photos.json') + .then((res) => res.data.data); + } } diff --git a/web-ui/web-react/src/service/ProductService.js b/web-ui/web-react/src/service/ProductService.js index ce8a229e..da658536 100644 --- a/web-ui/web-react/src/service/ProductService.js +++ b/web-ui/web-react/src/service/ProductService.js @@ -1,16 +1,21 @@ import axios from 'axios'; export class ProductService { + getProductsSmall() { + return axios + .get('assets/demo/data/products-small.json') + .then((res) => res.data.data); + } - getProductsSmall() { - return axios.get('assets/demo/data/products-small.json').then(res => res.data.data); - } + getProducts() { + return axios + .get('assets/demo/data/products.json') + .then((res) => res.data.data); + } - getProducts() { - return axios.get('assets/demo/data/products.json').then(res => res.data.data); - } - - getProductsWithOrdersSmall() { - return axios.get('assets/demo/data/products-orders-small.json').then(res => res.data.data); - } -} \ No newline at end of file + getProductsWithOrdersSmall() { + return axios + .get('assets/demo/data/products-orders-small.json') + .then((res) => res.data.data); + } +} diff --git a/web-ui/web-react/src/serviceWorker.js b/web-ui/web-react/src/serviceWorker.js index 2283ff9c..f17645e5 100755 --- a/web-ui/web-react/src/serviceWorker.js +++ b/web-ui/web-react/src/serviceWorker.js @@ -16,8 +16,8 @@ const isLocalhost = Boolean( window.location.hostname === '[::1]' || // 127.0.0.1/8 is considered localhost for IPv4. window.location.hostname.match( - /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ - ) + /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/, + ), ); export function register(config) { @@ -43,7 +43,7 @@ export function register(config) { navigator.serviceWorker.ready.then(() => { console.log( 'This web app is being served cache-first by a service ' + - 'worker. To learn more, visit http://bit.ly/CRA-PWA' + 'worker. To learn more, visit http://bit.ly/CRA-PWA', ); }); } else { @@ -57,7 +57,7 @@ export function register(config) { function registerValidSW(swUrl, config) { navigator.serviceWorker .register(swUrl) - .then(registration => { + .then((registration) => { registration.onupdatefound = () => { const installingWorker = registration.installing; if (installingWorker == null) { @@ -71,7 +71,7 @@ function registerValidSW(swUrl, config) { // content until all client tabs are closed. console.log( 'New content is available and will be used when all ' + - 'tabs for this page are closed. See http://bit.ly/CRA-PWA.' + 'tabs for this page are closed. See http://bit.ly/CRA-PWA.', ); // Execute callback @@ -93,7 +93,7 @@ function registerValidSW(swUrl, config) { }; }; }) - .catch(error => { + .catch((error) => { console.error('Error during service worker registration:', error); }); } @@ -101,7 +101,7 @@ function registerValidSW(swUrl, config) { function checkValidServiceWorker(swUrl, config) { // Check if the service worker can be found. If it can't reload the page. fetch(swUrl) - .then(response => { + .then((response) => { // Ensure service worker exists, and that we really are getting a JS file. const contentType = response.headers.get('content-type'); if ( @@ -109,7 +109,7 @@ function checkValidServiceWorker(swUrl, config) { (contentType != null && contentType.indexOf('javascript') === -1) ) { // No service worker found. Probably a different app. Reload the page. - navigator.serviceWorker.ready.then(registration => { + navigator.serviceWorker.ready.then((registration) => { registration.unregister().then(() => { window.location.reload(); }); @@ -121,14 +121,14 @@ function checkValidServiceWorker(swUrl, config) { }) .catch(() => { console.log( - 'No internet connection found. App is running in offline mode.' + 'No internet connection found. App is running in offline mode.', ); }); } export function unregister() { if ('serviceWorker' in navigator) { - navigator.serviceWorker.ready.then(registration => { + navigator.serviceWorker.ready.then((registration) => { registration.unregister(); }); } diff --git a/web-ui/web-react/src/templates/BlocksDemo.js b/web-ui/web-react/src/templates/BlocksDemo.js index d62d0947..040f9e74 100644 --- a/web-ui/web-react/src/templates/BlocksDemo.js +++ b/web-ui/web-react/src/templates/BlocksDemo.js @@ -6,9 +6,9 @@ import { Checkbox } from 'primereact/checkbox'; import BlockViewer from '../BlockViewer'; const BlocksDemo = () => { - const [checked, setChecked] = useState(false); + const [checked, setChecked] = useState(false); - const block1 = ` + const block1 = `
    @@ -26,7 +26,7 @@ const BlocksDemo = () => {
    `; - const block2 = ` + const block2 = `
    One Product, @@ -80,7 +80,7 @@ const BlocksDemo = () => {
    `; - const block3 = ` + const block3 = `
    Pricing Plans
    Lorem ipsum dolor sit, amet consectetur adipisicing elit. Velit numquam eligendi quos.
    @@ -198,7 +198,7 @@ const BlocksDemo = () => {
    `; - const block4 = ` + const block4 = `
     POWERED BY DISCORD
    @@ -209,7 +209,7 @@ const BlocksDemo = () => {
    `; - const block5 = ` + const block5 = `
    🔥 Hot Deals!
    @@ -224,7 +224,7 @@ const BlocksDemo = () => {
    `; - const block6 = ` + const block6 = `
    • @@ -263,7 +263,7 @@ const BlocksDemo = () => {
    `; - const block7 = ` + const block7 = `
    @@ -330,7 +330,7 @@ const BlocksDemo = () => {
    `; - const block8 = ` + const block8 = `
    hyper @@ -359,7 +359,7 @@ const BlocksDemo = () => {
    `; - const block9 = ` + const block9 = `
    Movie Information
    Morbi tristique blandit turpis. In viverra ligula id nulla hendrerit rutrum.
    @@ -409,7 +409,7 @@ const BlocksDemo = () => {
    `; - const block10 = ` + const block10 = `
    Card Title
    Vivamus id nisl interdum, blandit augue sit amet, eleifend mi.
    @@ -417,422 +417,639 @@ const BlocksDemo = () => {
    `; - return ( - <> - -
    -
    -
    - Create the screens your -
    your visitors deserve to see
    -

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

    + return ( + <> + +
    +
    +
    + + Create the screens your + +
    + your visitors deserve to see +
    +

    + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do + eiusmod tempor incididunt ut labore et dolore magna aliqua. +

    - - -
    -
    -
    - hero-1 -
    + + +
    +
    +
    + hero-1 +
    +
    +
    + + +
    +
    + One Product, + Many Solutions +
    +
    + Ac turpis egestas maecenas pharetra convallis posuere morbi leo + urna. +
    +
    +
    + + + +
    + Built for Developers +
    + + Duis aute irure dolor in reprehenderit in voluptate velit esse + cillum dolore eu fugiat nulla pariatur. + +
    +
    + + + +
    + End-to-End Encryption +
    + + Risus nec feugiat in fermentum posuere urna nec. Posuere + sollicitudin aliquam ultrices sagittis. + +
    +
    + + + +
    Easy to Use
    + + Ornare suspendisse sed nisi lacus sed viverra tellus. Neque + volutpat ac tincidunt vitae semper. + +
    +
    + + + +
    + Fast & Global Support +
    + + Fermentum et sollicitudin ac orci phasellus egestas tellus + rutrum tellus. + +
    +
    + + + +
    Open Source
    + + Nec tincidunt praesent semper feugiat. Sed adipiscing diam donec + adipiscing tristique risus nec feugiat.{' '} + +
    +
    + + + +
    Trusted Securitty
    + + Mattis rhoncus urna neque viverra justo nec ultrices. Id cursus + metus aliquam eleifend. + +
    +
    +
    +
    + + +
    +
    + Pricing Plans +
    +
    + Lorem ipsum dolor sit, amet consectetur adipisicing elit. Velit + numquam eligendi quos. +
    + +
    +
    +
    +
    +
    Basic
    +
    Plan description
    +
    +
    + $9 + per month +
    +
    +
      +
    • + + Arcu vitae elementum +
    • +
    • + + Dui faucibus in ornare +
    • +
    • + + Morbi tincidunt augue +
    • +
    +
    +
    - +
    +
    - -
    -
    - One Product, - Many Solutions -
    -
    Ac turpis egestas maecenas pharetra convallis posuere morbi leo urna.
    -
    -
    - - - -
    Built for Developers
    - Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. -
    -
    - - - -
    End-to-End Encryption
    - Risus nec feugiat in fermentum posuere urna nec. Posuere sollicitudin aliquam ultrices sagittis. -
    -
    - - - -
    Easy to Use
    - Ornare suspendisse sed nisi lacus sed viverra tellus. Neque volutpat ac tincidunt vitae semper. -
    -
    - - - -
    Fast & Global Support
    - Fermentum et sollicitudin ac orci phasellus egestas tellus rutrum tellus. -
    -
    - - - -
    Open Source
    - Nec tincidunt praesent semper feugiat. Sed adipiscing diam donec adipiscing tristique risus nec feugiat. -
    -
    - - - -
    Trusted Securitty
    - Mattis rhoncus urna neque viverra justo nec ultrices. Id cursus metus aliquam eleifend. -
    -
    +
    +
    +
    +
    + Premium +
    +
    Plan description
    +
    +
    + $29 + per month +
    +
    +
      +
    • + + Arcu vitae elementum +
    • +
    • + + Dui faucibus in ornare +
    • +
    • + + Morbi tincidunt augue +
    • +
    • + + Duis ultricies lacus sed +
    • +
    +
    +
    - +
    +
    - -
    -
    Pricing Plans
    -
    Lorem ipsum dolor sit, amet consectetur adipisicing elit. Velit numquam eligendi quos.
    +
    +
    +
    +
    + Enterprise +
    +
    Plan description
    +
    +
    + $49 + per month +
    +
    +
      +
    • + + Arcu vitae elementum +
    • +
    • + + Dui faucibus in ornare +
    • +
    • + + Morbi tincidunt augue +
    • +
    • + + Duis ultricies lacus sed +
    • +
    • + + Imperdiet proin +
    • +
    • + + Nisi scelerisque +
    • +
    +
    + +
    +
    +
    +
    +
    +
    -
    -
    -
    -
    -
    Basic
    -
    Plan description
    -
    -
    - $9 - per month -
    -
    -
      -
    • - - Arcu vitae elementum -
    • -
    • - - Dui faucibus in ornare -
    • -
    • - - Morbi tincidunt augue -
    • -
    -
    - -
    -
    -
    + +
    +
    +
    +  POWERED BY DISCORD +
    +
    + Join Our Design Community +
    +
    + Lorem ipsum dolor sit, amet consectetur adipisicing elit. Velit + numquam eligendi quos. +
    + +
    +
    +
    -
    -
    -
    -
    Premium
    -
    Plan description
    -
    -
    - $29 - per month -
    -
    -
      -
    • - - Arcu vitae elementum -
    • -
    • - - Dui faucibus in ornare -
    • -
    • - - Morbi tincidunt augue -
    • -
    • - - Duis ultricies lacus sed -
    • -
    -
    - -
    -
    -
    + +
    +
    + + 🔥 + {' '} + Hot Deals! +
    +
    + + Libero voluptatum atque exercitationem praesentium provident odit. + +
    + + +
    +
    -
    -
    -
    -
    Enterprise
    -
    Plan description
    -
    -
    - $49 - per month -
    -
    -
      -
    • - - Arcu vitae elementum -
    • -
    • - - Dui faucibus in ornare -
    • -
    • - - Morbi tincidunt augue -
    • -
    • - - Duis ultricies lacus sed -
    • -
    • - - Imperdiet proin -
    • -
    • - - Nisi scelerisque -
    • -
    -
    - -
    -
    -
    + +
    +
      +
    • + +
    • +
    • + +
    • +
    • + Analytics +
    • +
    +
    +
    +
    Customers
    +
    +
    + + 332 Active Users +
    +
    + + 9402 Sessions +
    +
    + + 2.32m Avg. Duration +
    +
    +
    +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +
    +
    + + Orders + +
    152
    +
    +
    + +
    +
    + 24 new + since last visit +
    +
    +
    +
    +
    +
    + + Revenue + +
    $2.100
    +
    +
    + +
    +
    + %52+ + since last week +
    +
    +
    +
    +
    +
    + + Customers + +
    28441
    +
    +
    + +
    +
    + 520 + newly registered +
    +
    +
    +
    +
    +
    + + Comments + +
    + 152 Unread
    +
    +
    + +
    - + 85 + responded +
    +
    +
    +
    +
    - -
    -
    -
     POWERED BY DISCORD
    -
    Join Our Design Community
    -
    Lorem ipsum dolor sit, amet consectetur adipisicing elit. Velit numquam eligendi quos.
    - -
    -
    -
    + +
    +
    + hyper +
    + Welcome Back +
    + + Don't have an account? + + +
    - -
    -
    🔥 Hot Deals!
    -
    - Libero voluptatum atque exercitationem praesentium provident odit. -
    - - -
    -
    +
    + + - -
    -
      -
    • - -
    • -
    • - -
    • -
    • - Analytics -
    • -
    -
    -
    -
    Customers
    -
    -
    - - 332 Active Users -
    -
    - - 9402 Sessions -
    -
    - - 2.32m Avg. Duration -
    -
    -
    -
    -
    -
    -
    -
    + + - -
    -
    -
    -
    -
    -
    - Orders -
    152
    -
    -
    - -
    -
    - 24 new - since last visit -
    -
    -
    -
    -
    -
    - Revenue -
    $2.100
    -
    -
    - -
    -
    - %52+ - since last week -
    -
    -
    -
    -
    -
    - Customers -
    28441
    -
    -
    - -
    -
    - 520 - newly registered -
    -
    -
    -
    -
    -
    - Comments -
    152 Unread
    -
    -
    - -
    -
    - 85 - responded -
    -
    -
    -
    -
    +
    +
    + setChecked(e.checked)} + checked={checked} + /> + +
    + +
    - -
    -
    - hyper -
    Welcome Back
    - Don't have an account? - -
    +
    +
    + -
    - - + +
    +
    + Movie Information +
    +
    + Morbi tristique blandit turpis. In viverra ligula id nulla hendrerit + rutrum. +
    +
      +
    • +
      Title
      +
      + Heat +
      +
      +
      +
    • +
    • +
      Genre
      +
      + + + +
      +
      +
      +
    • +
    • +
      Director
      +
      + Michael Mann +
      +
      +
      +
    • +
    • +
      Actors
      +
      + Robert De Niro, Al Pacino +
      +
      +
      +
    • +
    • +
      Plot
      +
      + A group of professional bank robbers start to feel the heat from + police when they unknowingly leave a clue at their latest heist. +
      +
      +
      +
    • +
    +
    +
    - - - -
    -
    - setChecked(e.checked)} checked={checked} /> - -
    - -
    - -
    -
    -
    - - -
    -
    Movie Information
    -
    Morbi tristique blandit turpis. In viverra ligula id nulla hendrerit rutrum.
    -
      -
    • -
      Title
      -
      Heat
      -
      -
      -
    • -
    • -
      Genre
      -
      - - - -
      -
      -
      -
    • -
    • -
      Director
      -
      Michael Mann
      -
      -
      -
    • -
    • -
      Actors
      -
      Robert De Niro, Al Pacino
      -
      -
      -
    • -
    • -
      Plot
      -
      - A group of professional bank robbers start to feel the heat from police - when they unknowingly leave a clue at their latest heist.
      -
      -
      -
    • -
    -
    -
    - - -
    -
    Card Title
    -
    Vivamus id nisl interdum, blandit augue sit amet, eleifend mi.
    -
    -
    -
    - - ) -} - -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + +
    +
    Card Title
    +
    + Vivamus id nisl interdum, blandit augue sit amet, eleifend mi. +
    +
    +
    +
    + + ); }; -export default React.memo(BlocksDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(BlocksDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/ButtonDemo.js b/web-ui/web-react/src/templates/ButtonDemo.js index 33d777d3..5fbdc695 100644 --- a/web-ui/web-react/src/templates/ButtonDemo.js +++ b/web-ui/web-react/src/templates/ButtonDemo.js @@ -3,195 +3,381 @@ import { Button } from 'primereact/button'; import { SplitButton } from 'primereact/splitbutton'; const ButtonDemo = () => { - const [loading1, setLoading1] = useState(false); - const [loading2, setLoading2] = useState(false); - const [loading3, setLoading3] = useState(false); - const [loading4, setLoading4] = useState(false); + const [loading1, setLoading1] = useState(false); + const [loading2, setLoading2] = useState(false); + const [loading3, setLoading3] = useState(false); + const [loading4, setLoading4] = useState(false); - const onLoadingClick1 = () => { - setLoading1(true); + const onLoadingClick1 = () => { + setLoading1(true); - setTimeout(() => { - setLoading1(false); - }, 2000); - } + setTimeout(() => { + setLoading1(false); + }, 2000); + }; - const onLoadingClick2 = () => { - setLoading2(true); + const onLoadingClick2 = () => { + setLoading2(true); - setTimeout(() => { - setLoading2(false); - }, 2000); - } + setTimeout(() => { + setLoading2(false); + }, 2000); + }; - const onLoadingClick3 = () => { - setLoading3(true); + const onLoadingClick3 = () => { + setLoading3(true); - setTimeout(() => { - setLoading3(false); - }, 2000); - } + setTimeout(() => { + setLoading3(false); + }, 2000); + }; - const onLoadingClick4 = () => { - setLoading4(true); + const onLoadingClick4 = () => { + setLoading4(true); - setTimeout(() => { - setLoading4(false); - }, 2000); - } + setTimeout(() => { + setLoading4(false); + }, 2000); + }; - const items = [ - { - label: 'Update', - icon: 'pi pi-refresh' - }, - { - label: 'Delete', - icon: 'pi pi-times' - }, - { - label: 'Home', - icon: 'pi pi-home' - } - ]; + const items = [ + { + label: 'Update', + icon: 'pi pi-refresh', + }, + { + label: 'Delete', + icon: 'pi pi-times', + }, + { + label: 'Home', + icon: 'pi pi-home', + }, + ]; - return ( -
    -
    -
    -
    Default
    - - - -
    - -
    -
    Severities
    -
    - -
    -
    Text
    -
    - -
    -
    Outlined
    -
    - -
    -
    Button Group
    - -
    - -
    -
    SplitButton
    - - - - - -
    -
    - -
    -
    -
    Icons
    - - - -
    - -
    -
    Raised
    -
    - -
    -
    Rounded
    -
    - -
    -
    Rounded Icons
    -
    - -
    -
    Rounded Text
    -
    - -
    -
    Rounded Outlined
    -
    - -
    -
    Loading
    -
    -
    + return ( +
    +
    +
    +
    Default
    + + +
    - ) -} -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; +
    +
    Severities
    +
    + +
    +
    Text
    +
    + +
    +
    Outlined
    +
    + +
    +
    Button Group
    + +
    + +
    +
    SplitButton
    + + + + + +
    +
    + +
    +
    +
    Icons
    + + + +
    + +
    +
    Raised
    +
    + +
    +
    Rounded
    +
    + +
    +
    Rounded Icons
    +
    + +
    +
    Rounded Text
    +
    + +
    +
    Rounded Outlined
    +
    + +
    +
    Loading
    +
    +
    +
    + ); }; -export default React.memo(ButtonDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(ButtonDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/ChartDemo.js b/web-ui/web-react/src/templates/ChartDemo.js index 669daaaa..fac867e7 100644 --- a/web-ui/web-react/src/templates/ChartDemo.js +++ b/web-ui/web-react/src/templates/ChartDemo.js @@ -2,406 +2,404 @@ import React, { useEffect, useState } from 'react'; import { Chart } from 'primereact/chart'; const lineData = { - labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'], - datasets: [ - { - label: 'First Dataset', - data: [65, 59, 80, 81, 56, 55, 40], - fill: false, - backgroundColor: '#2f4860', - borderColor: '#2f4860', - tension: .4 - }, - { - label: 'Second Dataset', - data: [28, 48, 40, 19, 86, 27, 90], - fill: false, - backgroundColor: '#00bb7e', - borderColor: '#00bb7e', - tension: .4 - } - ] + labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'], + datasets: [ + { + label: 'First Dataset', + data: [65, 59, 80, 81, 56, 55, 40], + fill: false, + backgroundColor: '#2f4860', + borderColor: '#2f4860', + tension: 0.4, + }, + { + label: 'Second Dataset', + data: [28, 48, 40, 19, 86, 27, 90], + fill: false, + backgroundColor: '#00bb7e', + borderColor: '#00bb7e', + tension: 0.4, + }, + ], }; const pieData = { - labels: ['A', 'B', 'C'], - datasets: [ - { - data: [300, 50, 100], - backgroundColor: [ - "#FF6384", - "#36A2EB", - "#FFCE56" - ], - hoverBackgroundColor: [ - "#FF6384", - "#36A2EB", - "#FFCE56" - ] - } - ] + labels: ['A', 'B', 'C'], + datasets: [ + { + data: [300, 50, 100], + backgroundColor: ['#FF6384', '#36A2EB', '#FFCE56'], + hoverBackgroundColor: ['#FF6384', '#36A2EB', '#FFCE56'], + }, + ], }; const polarData = { - datasets: [{ - data: [ - 11, - 16, - 7, - 3, - 14 - ], - backgroundColor: [ - "#FF6384", - "#4BC0C0", - "#FFCE56", - "#E7E9ED", - "#36A2EB" - ], - label: 'My dataset' - }], - labels: [ - "Red", - "Green", - "Yellow", - "Grey", - "Blue" - ] + datasets: [ + { + data: [11, 16, 7, 3, 14], + backgroundColor: ['#FF6384', '#4BC0C0', '#FFCE56', '#E7E9ED', '#36A2EB'], + label: 'My dataset', + }, + ], + labels: ['Red', 'Green', 'Yellow', 'Grey', 'Blue'], }; const barData = { - labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'], - datasets: [ - { - label: 'My First dataset', - backgroundColor: '#2f4860', - data: [65, 59, 80, 81, 56, 55, 40] - }, - { - label: 'My Second dataset', - backgroundColor: '#00bb7e', - data: [28, 48, 40, 19, 86, 27, 90] - } - ] + labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'], + datasets: [ + { + label: 'My First dataset', + backgroundColor: '#2f4860', + data: [65, 59, 80, 81, 56, 55, 40], + }, + { + label: 'My Second dataset', + backgroundColor: '#00bb7e', + data: [28, 48, 40, 19, 86, 27, 90], + }, + ], }; const doughnutData = { - labels: ['A', 'B', 'C'], - datasets: [ - { - data: [300, 50, 100], - backgroundColor: [ - "#FF6384", - "#36A2EB", - "#FFCE56" - ], - hoverBackgroundColor: [ - "#FF6384", - "#36A2EB", - "#FFCE56" - ] - } - ] + labels: ['A', 'B', 'C'], + datasets: [ + { + data: [300, 50, 100], + backgroundColor: ['#FF6384', '#36A2EB', '#FFCE56'], + hoverBackgroundColor: ['#FF6384', '#36A2EB', '#FFCE56'], + }, + ], }; const radarData = { - labels: ['Eating', 'Drinking', 'Sleeping', 'Designing', 'Coding', 'Cycling', 'Running'], - datasets: [ - { - label: 'My First dataset', - backgroundColor: 'rgba(179,181,198,0.2)', - borderColor: 'rgba(179,181,198,1)', - pointBackgroundColor: 'rgba(179,181,198,1)', - pointBorderColor: '#fff', - pointHoverBackgroundColor: '#fff', - pointHoverBorderColor: 'rgba(179,181,198,1)', - data: [65, 59, 90, 81, 56, 55, 40] - }, - { - label: 'My Second dataset', - backgroundColor: 'rgba(255,99,132,0.2)', - borderColor: 'rgba(255,99,132,1)', - pointBackgroundColor: 'rgba(255,99,132,1)', - pointBorderColor: '#fff', - pointHoverBackgroundColor: '#fff', - pointHoverBorderColor: 'rgba(255,99,132,1)', - data: [28, 48, 40, 19, 96, 27, 100] - } - ] + labels: [ + 'Eating', + 'Drinking', + 'Sleeping', + 'Designing', + 'Coding', + 'Cycling', + 'Running', + ], + datasets: [ + { + label: 'My First dataset', + backgroundColor: 'rgba(179,181,198,0.2)', + borderColor: 'rgba(179,181,198,1)', + pointBackgroundColor: 'rgba(179,181,198,1)', + pointBorderColor: '#fff', + pointHoverBackgroundColor: '#fff', + pointHoverBorderColor: 'rgba(179,181,198,1)', + data: [65, 59, 90, 81, 56, 55, 40], + }, + { + label: 'My Second dataset', + backgroundColor: 'rgba(255,99,132,0.2)', + borderColor: 'rgba(255,99,132,1)', + pointBackgroundColor: 'rgba(255,99,132,1)', + pointBorderColor: '#fff', + pointHoverBackgroundColor: '#fff', + pointHoverBorderColor: 'rgba(255,99,132,1)', + data: [28, 48, 40, 19, 96, 27, 100], + }, + ], }; const ChartDemo = (props) => { - const [lineOptions, setLineOptions] = useState(null) - const [barOptions, setBarOptions] = useState(null) - const [pieOptions, setPieOptions] = useState(null) - const [polarOptions, setPolarOptions] = useState(null) - const [radarOptions, setRadarOptions] = useState(null) + const [lineOptions, setLineOptions] = useState(null); + const [barOptions, setBarOptions] = useState(null); + const [pieOptions, setPieOptions] = useState(null); + const [polarOptions, setPolarOptions] = useState(null); + const [radarOptions, setRadarOptions] = useState(null); - const applyLightTheme = () => { - const lineOptions = { - plugins: { - legend: { - labels: { - color: '#495057' - } - } - }, - scales: { - x: { - ticks: { - color: '#495057' - }, - grid: { - color: '#ebedef', - } - }, - y: { - ticks: { - color: '#495057' - }, - grid: { - color: '#ebedef', - } - }, - } - }; + const applyLightTheme = () => { + const lineOptions = { + plugins: { + legend: { + labels: { + color: '#495057', + }, + }, + }, + scales: { + x: { + ticks: { + color: '#495057', + }, + grid: { + color: '#ebedef', + }, + }, + y: { + ticks: { + color: '#495057', + }, + grid: { + color: '#ebedef', + }, + }, + }, + }; - const barOptions = { - plugins: { - legend: { - labels: { - color: '#495057' - } - } - }, - scales: { - x: { - ticks: { - color: '#495057' - }, - grid: { - color: '#ebedef', - } - }, - y: { - ticks: { - color: '#495057' - }, - grid: { - color: '#ebedef', - } - }, - } - }; + const barOptions = { + plugins: { + legend: { + labels: { + color: '#495057', + }, + }, + }, + scales: { + x: { + ticks: { + color: '#495057', + }, + grid: { + color: '#ebedef', + }, + }, + y: { + ticks: { + color: '#495057', + }, + grid: { + color: '#ebedef', + }, + }, + }, + }; - const pieOptions = { - plugins: { - legend: { - labels: { - color: '#495057' - } - } - } - }; + const pieOptions = { + plugins: { + legend: { + labels: { + color: '#495057', + }, + }, + }, + }; - const polarOptions = { - plugins: { - legend: { - labels: { - color: '#495057' - } - } - }, - scales: { - r: { - grid: { - color: '#ebedef' - } - } - } - }; + const polarOptions = { + plugins: { + legend: { + labels: { + color: '#495057', + }, + }, + }, + scales: { + r: { + grid: { + color: '#ebedef', + }, + }, + }, + }; - const radarOptions = { - plugins: { - legend: { - labels: { - color: '#495057' - } - } - }, - scales: { - r: { - grid: { - color: '#ebedef' - } - } - } - }; + const radarOptions = { + plugins: { + legend: { + labels: { + color: '#495057', + }, + }, + }, + scales: { + r: { + grid: { + color: '#ebedef', + }, + }, + }, + }; - setLineOptions(lineOptions) - setBarOptions(barOptions) - setPieOptions(pieOptions) - setPolarOptions(polarOptions) - setRadarOptions(radarOptions) + setLineOptions(lineOptions); + setBarOptions(barOptions); + setPieOptions(pieOptions); + setPolarOptions(polarOptions); + setRadarOptions(radarOptions); + }; + const applyDarkTheme = () => { + const lineOptions = { + plugins: { + legend: { + labels: { + color: '#ebedef', + }, + }, + }, + scales: { + x: { + ticks: { + color: '#ebedef', + }, + grid: { + color: 'rgba(160, 167, 181, .3)', + }, + }, + y: { + ticks: { + color: '#ebedef', + }, + grid: { + color: 'rgba(160, 167, 181, .3)', + }, + }, + }, + }; + + const barOptions = { + plugins: { + legend: { + labels: { + color: '#ebedef', + }, + }, + }, + scales: { + x: { + ticks: { + color: '#ebedef', + }, + grid: { + color: 'rgba(160, 167, 181, .3)', + }, + }, + y: { + ticks: { + color: '#ebedef', + }, + grid: { + color: 'rgba(160, 167, 181, .3)', + }, + }, + }, + }; + + const pieOptions = { + plugins: { + legend: { + labels: { + color: '#ebedef', + }, + }, + }, + }; + + const polarOptions = { + plugins: { + legend: { + labels: { + color: '#ebedef', + }, + }, + }, + scales: { + r: { + grid: { + color: 'rgba(160, 167, 181, .3)', + }, + }, + }, + }; + + const radarOptions = { + plugins: { + legend: { + labels: { + color: '#ebedef', + }, + }, + }, + scales: { + r: { + grid: { + color: 'rgba(160, 167, 181, .3)', + }, + }, + }, + }; + + setLineOptions(lineOptions); + setBarOptions(barOptions); + setPieOptions(pieOptions); + setPolarOptions(polarOptions); + setRadarOptions(radarOptions); + }; + + useEffect(() => { + if (props.colorMode === 'light') { + applyLightTheme(); + } else { + applyDarkTheme(); } + }, [props.colorMode]); - const applyDarkTheme = () => { - const lineOptions = { - plugins: { - legend: { - labels: { - color: '#ebedef' - } - } - }, - scales: { - x: { - ticks: { - color: '#ebedef' - }, - grid: { - color: 'rgba(160, 167, 181, .3)', - } - }, - y: { - ticks: { - color: '#ebedef' - }, - grid: { - color: 'rgba(160, 167, 181, .3)', - } - }, - } - }; - - const barOptions = { - plugins: { - legend: { - labels: { - color: '#ebedef' - } - } - }, - scales: { - x: { - ticks: { - color: '#ebedef' - }, - grid: { - color: 'rgba(160, 167, 181, .3)', - } - }, - y: { - ticks: { - color: '#ebedef' - }, - grid: { - color: 'rgba(160, 167, 181, .3)', - } - }, - } - }; - - const pieOptions = { - plugins: { - legend: { - labels: { - color: '#ebedef' - } - } - } - }; - - const polarOptions = { - plugins: { - legend: { - labels: { - color: '#ebedef' - } - } - }, - scales: { - r: { - grid: { - color: 'rgba(160, 167, 181, .3)' - } - } - } - }; - - const radarOptions = { - plugins: { - legend: { - labels: { - color: '#ebedef' - } - } - }, - scales: { - r: { - grid: { - color: 'rgba(160, 167, 181, .3)' - } - } - } - }; - - setLineOptions(lineOptions) - setBarOptions(barOptions) - setPieOptions(pieOptions) - setPolarOptions(polarOptions) - setRadarOptions(radarOptions) - } - - useEffect(() => { - if (props.colorMode === 'light') { - applyLightTheme(); - } else { - applyDarkTheme(); - } - }, [props.colorMode]); - - return ( -
    -
    -
    -
    Linear Chart
    - -
    - -
    -
    Pie Chart
    - -
    - -
    -
    Polar Area Chart
    - -
    -
    -
    -
    -
    Bar Chart
    - -
    - -
    -
    Doughnut Chart
    - -
    - -
    -
    Radar Chart
    - -
    -
    + return ( +
    +
    +
    +
    Linear Chart
    +
    - ) -} + +
    +
    Pie Chart
    + +
    + +
    +
    Polar Area Chart
    + +
    +
    +
    +
    +
    Bar Chart
    + +
    + +
    +
    Doughnut Chart
    + +
    + +
    +
    Radar Chart
    + +
    +
    +
    + ); +}; const comparisonFn = function (prevProps, nextProps) { - return (prevProps.location.pathname === nextProps.location.pathname) && (prevProps.colorMode === nextProps.colorMode); + return ( + prevProps.location.pathname === nextProps.location.pathname && + prevProps.colorMode === nextProps.colorMode + ); }; export default React.memo(ChartDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/CodeHighlight.js b/web-ui/web-react/src/templates/CodeHighlight.js index e6035c20..19c5fb9b 100644 --- a/web-ui/web-react/src/templates/CodeHighlight.js +++ b/web-ui/web-react/src/templates/CodeHighlight.js @@ -8,25 +8,24 @@ import 'prismjs/components/prism-css'; import 'prismjs/components/prism-scss'; export const CodeHighlight = (props) => { + const codeElement = useRef(null); - const codeElement = useRef(null); + useEffect(() => { + if (Prism) { + Prism.highlightElement(codeElement.current); + } + }, []); - useEffect(() => { - if (Prism) { - Prism.highlightElement(codeElement.current); - } - }, []); - - return ( -
    -            
    -                {props.children} 
    -                
    -        
    - ); -} + return ( +
    +      
    +        {props.children} 
    +      
    +    
    + ); +}; CodeHighlight.defaultProps = { - lang: 'jsx', - style: null + lang: 'jsx', + style: null, }; diff --git a/web-ui/web-react/src/templates/Dashboard.js b/web-ui/web-react/src/templates/Dashboard.js index c332d519..6eef0e5e 100644 --- a/web-ui/web-react/src/templates/Dashboard.js +++ b/web-ui/web-react/src/templates/Dashboard.js @@ -7,348 +7,503 @@ import { Column } from 'primereact/column'; import { ProductService } from '../service/ProductService'; const lineData = { - labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'], - datasets: [ - { - label: 'First Dataset', - data: [65, 59, 80, 81, 56, 55, 40], - fill: false, - backgroundColor: '#2f4860', - borderColor: '#2f4860', - tension: .4 - }, - { - label: 'Second Dataset', - data: [28, 48, 40, 19, 86, 27, 90], - fill: false, - backgroundColor: '#00bb7e', - borderColor: '#00bb7e', - tension: .4 - } - ] + labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'], + datasets: [ + { + label: 'First Dataset', + data: [65, 59, 80, 81, 56, 55, 40], + fill: false, + backgroundColor: '#2f4860', + borderColor: '#2f4860', + tension: 0.4, + }, + { + label: 'Second Dataset', + data: [28, 48, 40, 19, 86, 27, 90], + fill: false, + backgroundColor: '#00bb7e', + borderColor: '#00bb7e', + tension: 0.4, + }, + ], }; const Dashboard = (props) => { - const [products, setProducts] = useState(null); - const menu1 = useRef(null); - const menu2 = useRef(null); - const [lineOptions, setLineOptions] = useState(null) + const [products, setProducts] = useState(null); + const menu1 = useRef(null); + const menu2 = useRef(null); + const [lineOptions, setLineOptions] = useState(null); - const applyLightTheme = () => { - const lineOptions = { - plugins: { - legend: { - labels: { - color: '#495057' - } - } - }, - scales: { - x: { - ticks: { - color: '#495057' - }, - grid: { - color: '#ebedef', - } - }, - y: { - ticks: { - color: '#495057' - }, - grid: { - color: '#ebedef', - } - }, - } - }; - - setLineOptions(lineOptions) - } - - const applyDarkTheme = () => { - const lineOptions = { - plugins: { - legend: { - labels: { - color: '#ebedef' - } - } - }, - scales: { - x: { - ticks: { - color: '#ebedef' - }, - grid: { - color: 'rgba(160, 167, 181, .3)', - } - }, - y: { - ticks: { - color: '#ebedef' - }, - grid: { - color: 'rgba(160, 167, 181, .3)', - } - }, - } - }; - - setLineOptions(lineOptions) - } - - useEffect(() => { - const productService = new ProductService(); - productService.getProductsSmall().then(data => setProducts(data)); - }, []); - - useEffect(() => { - if (props.colorMode === 'light') { - applyLightTheme(); - } else { - applyDarkTheme(); - } - }, [props.colorMode]); - - const formatCurrency = (value) => { - return value.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); + const applyLightTheme = () => { + const lineOptions = { + plugins: { + legend: { + labels: { + color: '#495057', + }, + }, + }, + scales: { + x: { + ticks: { + color: '#495057', + }, + grid: { + color: '#ebedef', + }, + }, + y: { + ticks: { + color: '#495057', + }, + grid: { + color: '#ebedef', + }, + }, + }, }; - return ( -
    -
    -
    -
    -
    - Orders -
    152
    -
    -
    - -
    -
    - 24 new - since last visit -
    -
    -
    -
    -
    -
    - Revenue -
    $2.100
    -
    -
    - -
    -
    - %52+ - since last week -
    -
    -
    -
    -
    -
    - Customers -
    28441
    -
    -
    - -
    -
    - 520 - newly registered -
    -
    -
    -
    -
    -
    - Comments -
    152 Unread
    -
    -
    - -
    -
    - 85 - responded -
    -
    + setLineOptions(lineOptions); + }; -
    -
    -
    Recent Sales
    - - {data.image}}/> - - formatCurrency(data.price)}/> - ( - <> -
    -
    -
    -
    Best Selling Products
    -
    -
    -
    -
      -
    • -
      - Space T-Shirt -
      Clothing
      -
      -
      -
      -
      -
      - %50 -
      -
    • -
    • -
      - Portal Sticker -
      Accessories
      -
      -
      -
      -
      -
      - %16 -
      -
    • -
    • -
      - Supernova Sticker -
      Accessories
      -
      -
      -
      -
      -
      - %67 -
      -
    • -
    • -
      - Wonders Notebook -
      Office
      -
      -
      -
      -
      -
      - %35 -
      -
    • -
    • -
      - Mat Black Case -
      Accessories
      -
      -
      -
      -
      -
      - %75 -
      -
    • -
    • -
      - Robots T-Shirt -
      Clothing
      -
      -
      -
      -
      -
      - %40 -
      -
    • -
    -
    + const applyDarkTheme = () => { + const lineOptions = { + plugins: { + legend: { + labels: { + color: '#ebedef', + }, + }, + }, + scales: { + x: { + ticks: { + color: '#ebedef', + }, + grid: { + color: 'rgba(160, 167, 181, .3)', + }, + }, + y: { + ticks: { + color: '#ebedef', + }, + grid: { + color: 'rgba(160, 167, 181, .3)', + }, + }, + }, + }; + + setLineOptions(lineOptions); + }; + + useEffect(() => { + const productService = new ProductService(); + productService.getProductsSmall().then((data) => setProducts(data)); + }, []); + + useEffect(() => { + if (props.colorMode === 'light') { + applyLightTheme(); + } else { + applyDarkTheme(); + } + }, [props.colorMode]); + + const formatCurrency = (value) => { + return value.toLocaleString('en-US', { + style: 'currency', + currency: 'USD', + }); + }; + + return ( +
    +
    +
    +
    +
    + Orders +
    152
    - -
    -
    -
    Sales Overview
    - -
    - -
    -
    -
    Notifications
    -
    -
    -
    - - TODAY -
      -
    • -
      - -
      - Richard Jones - has purchased a blue t-shirt for 79$ - -
    • -
    • -
      - -
      - Your request for withdrawal of 2500$ has been initiated. -
    • -
    - - YESTERDAY -
      -
    • -
      - -
      - Keyser Wick - has purchased a black jacket for 59$ - -
    • -
    • -
      - -
      - Jane Davis - has posted a new questions about your product. - -
    • -
    -
    -
    -
    -
    TAKE THE NEXT STEP
    -
    Try PrimeBlocks
    -
    - -
    +
    +
    +
    + 24 new + since last visit
    - ); -} +
    +
    +
    +
    +
    + Revenue +
    $2.100
    +
    +
    + +
    +
    + %52+ + since last week +
    +
    +
    +
    +
    +
    + Customers +
    28441
    +
    +
    + +
    +
    + 520 + newly registered +
    +
    +
    +
    +
    +
    + Comments +
    152 Unread
    +
    +
    + +
    +
    + 85 + responded +
    +
    + +
    +
    +
    Recent Sales
    + + ( + {data.image} + )} + /> + + formatCurrency(data.price)} + /> + ( + <> +
    +
    +
    +
    Best Selling Products
    +
    +
    +
    +
      +
    • +
      + + Space T-Shirt + +
      Clothing
      +
      +
      +
      +
      +
      + %50 +
      +
    • +
    • +
      + + Portal Sticker + +
      Accessories
      +
      +
      +
      +
      +
      + %16 +
      +
    • +
    • +
      + + Supernova Sticker + +
      Accessories
      +
      +
      +
      +
      +
      + %67 +
      +
    • +
    • +
      + + Wonders Notebook + +
      Office
      +
      +
      +
      +
      +
      + %35 +
      +
    • +
    • +
      + + Mat Black Case + +
      Accessories
      +
      +
      +
      +
      +
      + %75 +
      +
    • +
    • +
      + + Robots T-Shirt + +
      Clothing
      +
      +
      +
      +
      +
      + %40 +
      +
    • +
    +
    +
    + +
    +
    +
    Sales Overview
    + +
    + +
    +
    +
    Notifications
    +
    +
    +
    + + TODAY +
      +
    • +
      + +
      + + Richard Jones + + {' '} + has purchased a blue t-shirt for{' '} + 79$ + + +
    • +
    • +
      + +
      + + Your request for withdrawal of{' '} + 2500$ has + been initiated. + +
    • +
    + + YESTERDAY +
      +
    • +
      + +
      + + Keyser Wick + + {' '} + has purchased a black jacket for{' '} + 59$ + + +
    • +
    • +
      + +
      + + Jane Davis + + {' '} + has posted a new questions about your product. + + +
    • +
    +
    +
    +
    +
    + TAKE THE NEXT STEP +
    +
    + Try PrimeBlocks +
    +
    + +
    +
    +
    + ); +}; const comparisonFn = function (prevProps, nextProps) { - return (prevProps.location.pathname === nextProps.location.pathname) && (prevProps.colorMode === nextProps.colorMode); + return ( + prevProps.location.pathname === nextProps.location.pathname && + prevProps.colorMode === nextProps.colorMode + ); }; export default React.memo(Dashboard, comparisonFn); diff --git a/web-ui/web-react/src/templates/Documentation.js b/web-ui/web-react/src/templates/Documentation.js index bb47ca8b..f1a2d7cb 100644 --- a/web-ui/web-react/src/templates/Documentation.js +++ b/web-ui/web-react/src/templates/Documentation.js @@ -2,92 +2,123 @@ import React from 'react'; import { CodeHighlight } from './CodeHighlight'; const Documentation = () => { + return ( +
    +
    +
    +

    Current Version

    +

    React 17.x and PrimeReact 7.x

    - return ( -
    -
    -
    -

    Current Version

    -

    React 17.x and PrimeReact 7.x

    - -
    Getting Started
    -

    Sakai is an application template for React based on the popular create-react-app that allows - creating React apps with no configuration. To get started, clone the repository from GitHub and install the dependencies with npm or yarn.

    - -{` +
    Getting Started
    +

    + Sakai is an application template for React based on the popular{' '} + + create-react-app + {' '} + that allows creating React apps with no configuration. To get + started, clone the{' '} + repository{' '} + from GitHub and install the dependencies with npm or yarn. +

    + + {` "npm install" or "yarn" `} - +
    -

    Next step is running the application using the start script and navigate to http://localhost:3000/ to view the application. - That is it, you may now start with the development of your application using the Sakai template.

    +

    + Next step is running the application using the start script and + navigate to http://localhost:3000/ to view the application. + That is it, you may now start with the development of your + application using the Sakai template. +

    - -{` + + {` "npm start" or "yarn start" `} - + -
    React Scripts
    -

    Following commands are derived from create-app-app.

    - -{` +
    React Scripts
    +

    Following commands are derived from create-app-app.

    + + {` "npm start" or "yarn start": Starts the development server "npm test" or "yarn test": Runs the tests. "npm run build" or "yarn run build": Creates a production build. `} - +
    -
    Dependencies
    -

    Dependencies of Sakai are listed below and needs to be defined at package.json.

    +
    Dependencies
    +

    + Dependencies of Sakai are listed below and needs to be defined at + package.json. +

    - -{` + + {` "primereact": "...", //required: PrimeReact components "primeicons": "...", //required: Icons "primeflex": "...", //optional: Sample pages "react-transition-group": "^4.4.1", //required: PrimeReact animations `} - + -
    Structure
    -

    Sakai consists of 2 main parts; the application layout and the resources. App.js inside src folder is the main component containing the template for the base layout - whereas required resources such as SASS structure for the layout are placed inside the src/layout folder.

    +
    Structure
    +

    + Sakai consists of 2 main parts; the application layout and the + resources. App.js inside src folder is the main component + containing the template for the base layout whereas required + resources such as SASS structure for the layout are placed inside + the src/layout folder. +

    -
    Application Template
    -

    Main layout is the JSX template of the App.js, it is divided into a couple of child components such as topbar, profile, menu and footer. Here is render method of the - App.js component that implements the logic such as menu state, layout modes and so on. -

    +
    Application Template
    +

    + Main layout is the JSX template of the App.js, it is divided into a + couple of child components such as topbar, profile, menu and footer. + Here is render method of the App.js component that implements the + logic such as menu state, layout modes and so on. +

    -
    Menu
    -

    Menu is a separate component defined in AppMenu.js file based on PrimeReact MenuModel API. In order to define the menuitems, - navigate to App.js file and define your own model as a nested structure. Here is the menu component from the demo application.

    +
    Menu
    +

    + Menu is a separate component defined in AppMenu.js file based on + PrimeReact MenuModel API. In order to define the menuitems, navigate + to App.js file and define your own model as a nested structure. Here + is the menu component from the demo application. +

    -
    PrimeReact Theme
    -

    Sakai theming is based on the PrimeReact theme being used. Default theme is lara-light-indigo.

    +
    PrimeReact Theme
    +

    + Sakai theming is based on the PrimeReact theme being used. Default + theme is lara-light-indigo. +

    -
    SASS Variables
    -

    In case you'd like to customize the main layout variables, open _variables.scss file under src/layout folder. Saving the changes - will be reflected instantly at your browser. -

    +
    SASS Variables
    +

    + In case you'd like to customize the main layout variables, open{' '} + _variables.scss file under src/layout folder. Saving the + changes will be reflected instantly at your browser. +

    -
    src/layout/_variables.scss
    - -{` +
    src/layout/_variables.scss
    + + {` /* General */ $fontSize:14px; $borderRadius:12px; $transitionDuration:.2s; `} - -
    -
    +
    - ) -} +
    +
    + ); +}; const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + return prevProps.location.pathname === nextProps.location.pathname; }; export default React.memo(Documentation, comparisonFn); diff --git a/web-ui/web-react/src/templates/FileDemo.js b/web-ui/web-react/src/templates/FileDemo.js index ea6572c2..59f707ad 100644 --- a/web-ui/web-react/src/templates/FileDemo.js +++ b/web-ui/web-react/src/templates/FileDemo.js @@ -2,29 +2,48 @@ import React, { useRef } from 'react'; import { FileUpload } from 'primereact/fileupload'; const FileDemo = () => { - const toast = useRef(null); + const toast = useRef(null); - const onUpload = () => { - toast.current.show({ severity: 'info', summary: 'Success', detail: 'File Uploaded', life: 3000 }); - } + const onUpload = () => { + toast.current.show({ + severity: 'info', + summary: 'Success', + detail: 'File Uploaded', + life: 3000, + }); + }; - return ( -
    -
    -
    -
    Advanced
    - + return ( +
    +
    +
    +
    Advanced
    + -
    Basic
    - -
    -
    +
    Basic
    +
    - ) -} +
    +
    + ); +}; const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + return prevProps.location.pathname === nextProps.location.pathname; }; export default React.memo(FileDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/FloatLabelDemo.js b/web-ui/web-react/src/templates/FloatLabelDemo.js index 130a354d..7077b1b1 100644 --- a/web-ui/web-react/src/templates/FloatLabelDemo.js +++ b/web-ui/web-react/src/templates/FloatLabelDemo.js @@ -1,134 +1,186 @@ -import React, {useState, useEffect} from 'react'; -import {InputText} from 'primereact/inputtext'; -import {InputTextarea} from 'primereact/inputtextarea'; -import {InputMask} from 'primereact/inputmask'; -import {InputNumber} from 'primereact/inputnumber'; -import {AutoComplete} from 'primereact/autocomplete'; -import {Calendar} from 'primereact/calendar'; -import {Chips} from 'primereact/chips'; -import {Dropdown} from 'primereact/dropdown'; -import {MultiSelect} from 'primereact/multiselect'; -import {CountryService} from '../service/CountryService'; +import React, { useState, useEffect } from 'react'; +import { InputText } from 'primereact/inputtext'; +import { InputTextarea } from 'primereact/inputtextarea'; +import { InputMask } from 'primereact/inputmask'; +import { InputNumber } from 'primereact/inputnumber'; +import { AutoComplete } from 'primereact/autocomplete'; +import { Calendar } from 'primereact/calendar'; +import { Chips } from 'primereact/chips'; +import { Dropdown } from 'primereact/dropdown'; +import { MultiSelect } from 'primereact/multiselect'; +import { CountryService } from '../service/CountryService'; const FloatLabelDemo = () => { - const [countries, setCountries] = useState([]); - const [filteredCountries, setFilteredCountries] = useState(null); - const [value1, setValue1] = useState(''); - const [value2, setValue2] = useState(''); - const [value3, setValue3] = useState(null); - const [value4, setValue4] = useState(''); - const [value5, setValue5] = useState(''); - const [value6, setValue6] = useState(''); - const [value7, setValue7] = useState(''); - const [value8, setValue8] = useState(''); - const [value9, setValue9] = useState([]); - const [value10, setValue10] = useState(null); + const [countries, setCountries] = useState([]); + const [filteredCountries, setFilteredCountries] = useState(null); + const [value1, setValue1] = useState(''); + const [value2, setValue2] = useState(''); + const [value3, setValue3] = useState(null); + const [value4, setValue4] = useState(''); + const [value5, setValue5] = useState(''); + const [value6, setValue6] = useState(''); + const [value7, setValue7] = useState(''); + const [value8, setValue8] = useState(''); + const [value9, setValue9] = useState([]); + const [value10, setValue10] = useState(null); - const cities = [ - {name: 'New York', code: 'NY'}, - {name: 'Rome', code: 'RM'}, - {name: 'London', code: 'LDN'}, - {name: 'Istanbul', code: 'IST'}, - {name: 'Paris', code: 'PRS'}, - ]; + const cities = [ + { name: 'New York', code: 'NY' }, + { name: 'Rome', code: 'RM' }, + { name: 'London', code: 'LDN' }, + { name: 'Istanbul', code: 'IST' }, + { name: 'Paris', code: 'PRS' }, + ]; - useEffect(() => { - const countryService = new CountryService(); - countryService.getCountries().then((countries) => { - setCountries(countries); - }); - }, []); + useEffect(() => { + const countryService = new CountryService(); + countryService.getCountries().then((countries) => { + setCountries(countries); + }); + }, []); - const searchCountry = (event) => { - // in a real application, make a request to a remote url with the query and - // return filtered results, for demo we filter at client side - const filtered = []; - const query = event.query; - for (let i = 0; i < countries.length; i++) { - const country = countries[i]; - if (country.name.toLowerCase().indexOf(query.toLowerCase()) === 0) { - filtered.push(country); - } - } - setFilteredCountries(filtered); - }; + const searchCountry = (event) => { + // in a real application, make a request to a remote url with the query and + // return filtered results, for demo we filter at client side + const filtered = []; + const query = event.query; + for (let i = 0; i < countries.length; i++) { + const country = countries[i]; + if (country.name.toLowerCase().indexOf(query.toLowerCase()) === 0) { + filtered.push(country); + } + } + setFilteredCountries(filtered); + }; - return ( -
    -
    Float Label
    -
    -
    - - setValue1(e.target.value)}/> - - -
    -
    - - setValue6(e.value)} suggestions={filteredCountries} completeMethod={searchCountry} field="name"> - - -
    -
    - - setValue7(e.value)}> - - -
    -
    - - setValue9(e.value)}> - - -
    -
    - - setValue2(e.value)}> - - -
    -
    - - setValue3(e.target.value)}> - - -
    -
    -
    - - - - - setValue4(e.target.value)}/> - - -
    -
    -
    - - setValue8(e.value)} optionLabel="name"> - - -
    -
    - - setValue10(e.value)} optionLabel="name"> - - -
    -
    - - setValue5(e.target.value)}> - - -
    -
    + return ( +
    +
    Float Label
    +
    +
    + + setValue1(e.target.value)} + /> + +
    - ) -} +
    + + setValue6(e.value)} + suggestions={filteredCountries} + completeMethod={searchCountry} + field="name" + > + + +
    +
    + + setValue7(e.value)} + > + + +
    +
    + + setValue9(e.value)} + > + + +
    +
    + + setValue2(e.value)} + > + + +
    +
    + + setValue3(e.target.value)} + > + + +
    +
    +
    + + + + + setValue4(e.target.value)} + /> + + +
    +
    +
    + + setValue8(e.value)} + optionLabel="name" + > + + +
    +
    + + setValue10(e.value)} + optionLabel="name" + > + + +
    +
    + + setValue5(e.target.value)} + > + + +
    +
    +
    + ); +}; const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + return prevProps.location.pathname === nextProps.location.pathname; }; export default React.memo(FloatLabelDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/FormLayoutDemo.js b/web-ui/web-react/src/templates/FormLayoutDemo.js index 03d26aba..224d0239 100644 --- a/web-ui/web-react/src/templates/FormLayoutDemo.js +++ b/web-ui/web-react/src/templates/FormLayoutDemo.js @@ -5,126 +5,141 @@ import { InputTextarea } from 'primereact/inputtextarea'; import { Dropdown } from 'primereact/dropdown'; const FormLayoutDemo = () => { - const [dropdownItem, setDropdownItem] = useState(null); - const dropdownItems = [ - { name: 'Option 1', code: 'Option 1' }, - { name: 'Option 2', code: 'Option 2' }, - { name: 'Option 3', code: 'Option 3' } - ]; + const [dropdownItem, setDropdownItem] = useState(null); + const dropdownItems = [ + { name: 'Option 1', code: 'Option 1' }, + { name: 'Option 2', code: 'Option 2' }, + { name: 'Option 3', code: 'Option 3' }, + ]; - return ( -
    -
    -
    -
    Vertical
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - -
    -
    Vertical Grid
    -
    -
    - - -
    -
    - - -
    -
    -
    -
    - -
    -
    -
    Horizontal
    -
    - -
    - -
    -
    -
    - -
    - -
    -
    -
    - -
    -
    Inline
    -
    -
    - - -
    -
    - - -
    - -
    -
    - -
    -
    Help Text
    -
    - - - Enter your username to reset your password. -
    -
    -
    - -
    -
    -
    Advanced
    -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - - setDropdownItem(e.value)} options={dropdownItems} optionLabel="name" placeholder="Select One"> -
    -
    - - -
    -
    -
    -
    + return ( +
    +
    +
    +
    Vertical
    +
    + + +
    +
    + + +
    +
    + + +
    - ) -} + +
    +
    Vertical Grid
    +
    +
    + + +
    +
    + + +
    +
    +
    +
    + +
    +
    +
    Horizontal
    +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    + +
    +
    Inline
    +
    +
    + + +
    +
    + + +
    + +
    +
    + +
    +
    Help Text
    +
    + + + Enter your username to reset your password. +
    +
    +
    + +
    +
    +
    Advanced
    +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + setDropdownItem(e.value)} + options={dropdownItems} + optionLabel="name" + placeholder="Select One" + > +
    +
    + + +
    +
    +
    +
    +
    + ); +}; const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + return prevProps.location.pathname === nextProps.location.pathname; }; export default React.memo(FormLayoutDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/IconsDemo.js b/web-ui/web-react/src/templates/IconsDemo.js index 2b5e0da3..c6a5c16c 100644 --- a/web-ui/web-react/src/templates/IconsDemo.js +++ b/web-ui/web-react/src/templates/IconsDemo.js @@ -4,99 +4,119 @@ import { InputText } from 'primereact/inputtext'; import { CodeHighlight } from './CodeHighlight'; const IconsDemo = () => { - const [icons, setIcons] = useState([]); - const [filteredIcons, setFilteredIcons] = useState([]); + const [icons, setIcons] = useState([]); + const [filteredIcons, setFilteredIcons] = useState([]); - useEffect(() => { - axios.get('assets/demo/data/icons.json').then(res => { - let icons = res.data.icons; - icons.sort((icon1, icon2) => { - if (icon1.properties.name < icon2.properties.name) - return -1; - else if (icon1.properties.name < icon2.properties.name) - return 1; - else - return 0; - }); + useEffect(() => { + axios.get('assets/demo/data/icons.json').then((res) => { + let icons = res.data.icons; + icons.sort((icon1, icon2) => { + if (icon1.properties.name < icon2.properties.name) return -1; + else if (icon1.properties.name < icon2.properties.name) return 1; + else return 0; + }); - setIcons(icons); - setFilteredIcons(icons); - }); - }, []); + setIcons(icons); + setFilteredIcons(icons); + }); + }, []); - const onFilter = (event) => { - if (!event.target.value) { - setFilteredIcons(icons); - } - else { - setFilteredIcons(icons.filter( it => { - return it.icon.tags[0].includes(event.target.value); - })); - } + const onFilter = (event) => { + if (!event.target.value) { + setFilteredIcons(icons); + } else { + setFilteredIcons( + icons.filter((it) => { + return it.icon.tags[0].includes(event.target.value); + }), + ); } + }; - return ( -
    -

    Icons

    -

    PrimeReact components internally use PrimeIcons library, the official icons suite from PrimeTek.

    + return ( +
    +

    Icons

    +

    + PrimeReact components internally use{' '} + + PrimeIcons + {' '} + library, the official icons suite from{' '} + + PrimeTek + + . +

    -
    Download
    -

    PrimeIcons is available at npm, run the following command to download it to your project.

    - -{` +
    Download
    +

    + PrimeIcons is available at npm, run the following command to download it + to your project. +

    + + {` npm install primeicons --save `} - +
    -
    Getting Started
    -

    PrimeIcons use the pi pi-{icon} syntax such as pi pi-check. - A standalone icon can be displayed using an element like i or span

    +
    Getting Started
    +

    + PrimeIcons use the pi pi-{icon} syntax such + as pi pi-check. A standalone icon can be displayed + using an element like i or span +

    - -{` + + {` `} - + -
    Size
    -

    Size of the icons can easily be changed using font-size property.

    +
    Size
    +

    Size of the icons can easily be changed using font-size property.

    - -{` + + {` `} - + - + - -{` + + {` `} - + - + -
    Spinning Animation
    -

    Special pi-spin class applies continuous rotation to an icon.

    - -{` +
    Spinning Animation
    +

    Special pi-spin class applies continuous rotation to an icon.

    + + {` `} - +
    - + -
    Constants
    -

    PrimeIcons constants API is provided to easily choose an icon with typescript e.g. when defining a menu model.

    - -{` +
    Constants
    +

    + PrimeIcons constants API is provided to easily choose an icon with + typescript e.g. when defining a menu model. +

    + + {` `} - - -{` + + + {` import {PrimeIcons} from 'primereact/api'; const items = [ @@ -112,33 +132,52 @@ const items = [ } ] `} - -
    List of Icons
    -

    Here is the current list of PrimeIcons, more icons are added periodically. You may also request new icons at the issue tracker.

    + +
    List of Icons
    +

    + Here is the current list of PrimeIcons, more icons are added + periodically. You may also{' '} + + request new icons + {' '} + at the issue tracker. +

    -
    - -
    -
    - { - filteredIcons && filteredIcons.map(iconMeta => { - const { icon, properties } = iconMeta; +
    + +
    +
    + {filteredIcons && + filteredIcons.map((iconMeta) => { + const { icon, properties } = iconMeta; - return icon.tags.indexOf('deprecate') === -1 && ( -
    - -
    pi-{properties.name}
    -
    - ); - }) - } -
    -
    - ) -} - -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + return ( + icon.tags.indexOf('deprecate') === -1 && ( +
    + +
    pi-{properties.name}
    +
    + ) + ); + })} +
    +
    + ); }; -export default React.memo(IconsDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(IconsDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/InputDemo.js b/web-ui/web-react/src/templates/InputDemo.js index 9dcf1bd3..47252b33 100644 --- a/web-ui/web-react/src/templates/InputDemo.js +++ b/web-ui/web-react/src/templates/InputDemo.js @@ -23,332 +23,485 @@ import { CountryService } from '../service/CountryService'; import { NodeService } from '../service/NodeService'; export const InputDemo = () => { - const [floatValue, setFloatValue] = useState(''); - const [autoValue, setAutoValue] = useState(null); - const [selectedAutoValue, setSelectedAutoValue] = useState(null); - const [autoFilteredValue, setAutoFilteredValue] = useState([]); - const [calendarValue, setCalendarValue] = useState(null); - const [inputNumberValue, setInputNumberValue] = useState(null); - const [chipsValue, setChipsValue] = useState([]); - const [sliderValue, setSliderValue] = useState(''); - const [ratingValue, setRatingValue] = useState(null); - const [colorValue, setColorValue] = useState('1976D2'); - const [knobValue, setKnobValue] = useState(20); - const [radioValue, setRadioValue] = useState(null); - const [checkboxValue, setCheckboxValue] = useState([]); - const [switchValue, setSwitchValue] = useState(false); - const [listboxValue, setListboxValue] = useState(null); - const [dropdownValue, setDropdownValue] = useState(null); - const [multiselectValue, setMultiselectValue] = useState(null); - const [toggleValue, setToggleValue] = useState(false); - const [selectButtonValue1, setSelectButtonValue1] = useState(null); - const [selectButtonValue2, setSelectButtonValue2] = useState(null); - const [inputGroupValue, setInputGroupValue] = useState(false); - const [selectedNode, setSelectedNode] = useState(null); - const [treeSelectNodes, setTreeSelectNodes] = useState(null); + const [floatValue, setFloatValue] = useState(''); + const [autoValue, setAutoValue] = useState(null); + const [selectedAutoValue, setSelectedAutoValue] = useState(null); + const [autoFilteredValue, setAutoFilteredValue] = useState([]); + const [calendarValue, setCalendarValue] = useState(null); + const [inputNumberValue, setInputNumberValue] = useState(null); + const [chipsValue, setChipsValue] = useState([]); + const [sliderValue, setSliderValue] = useState(''); + const [ratingValue, setRatingValue] = useState(null); + const [colorValue, setColorValue] = useState('1976D2'); + const [knobValue, setKnobValue] = useState(20); + const [radioValue, setRadioValue] = useState(null); + const [checkboxValue, setCheckboxValue] = useState([]); + const [switchValue, setSwitchValue] = useState(false); + const [listboxValue, setListboxValue] = useState(null); + const [dropdownValue, setDropdownValue] = useState(null); + const [multiselectValue, setMultiselectValue] = useState(null); + const [toggleValue, setToggleValue] = useState(false); + const [selectButtonValue1, setSelectButtonValue1] = useState(null); + const [selectButtonValue2, setSelectButtonValue2] = useState(null); + const [inputGroupValue, setInputGroupValue] = useState(false); + const [selectedNode, setSelectedNode] = useState(null); + const [treeSelectNodes, setTreeSelectNodes] = useState(null); - const listboxValues = [ - { name: 'New York', code: 'NY' }, - { name: 'Rome', code: 'RM' }, - { name: 'London', code: 'LDN' }, - { name: 'Istanbul', code: 'IST' }, - { name: 'Paris', code: 'PRS' } - ]; + const listboxValues = [ + { name: 'New York', code: 'NY' }, + { name: 'Rome', code: 'RM' }, + { name: 'London', code: 'LDN' }, + { name: 'Istanbul', code: 'IST' }, + { name: 'Paris', code: 'PRS' }, + ]; - const dropdownValues = [ - { name: 'New York', code: 'NY' }, - { name: 'Rome', code: 'RM' }, - { name: 'London', code: 'LDN' }, - { name: 'Istanbul', code: 'IST' }, - { name: 'Paris', code: 'PRS' } - ]; + const dropdownValues = [ + { name: 'New York', code: 'NY' }, + { name: 'Rome', code: 'RM' }, + { name: 'London', code: 'LDN' }, + { name: 'Istanbul', code: 'IST' }, + { name: 'Paris', code: 'PRS' }, + ]; - const multiselectValues = [ - { name: 'Australia', code: 'AU' }, - { name: 'Brazil', code: 'BR' }, - { name: 'China', code: 'CN' }, - { name: 'Egypt', code: 'EG' }, - { name: 'France', code: 'FR' }, - { name: 'Germany', code: 'DE' }, - { name: 'India', code: 'IN' }, - { name: 'Japan', code: 'JP' }, - { name: 'Spain', code: 'ES' }, - { name: 'United States', code: 'US' } - ]; + const multiselectValues = [ + { name: 'Australia', code: 'AU' }, + { name: 'Brazil', code: 'BR' }, + { name: 'China', code: 'CN' }, + { name: 'Egypt', code: 'EG' }, + { name: 'France', code: 'FR' }, + { name: 'Germany', code: 'DE' }, + { name: 'India', code: 'IN' }, + { name: 'Japan', code: 'JP' }, + { name: 'Spain', code: 'ES' }, + { name: 'United States', code: 'US' }, + ]; - const selectButtonValues1 = [ - { name: 'Option 1', code: 'O1' }, - { name: 'Option 2', code: 'O2' }, - { name: 'Option 3', code: 'O3' }, - ]; + const selectButtonValues1 = [ + { name: 'Option 1', code: 'O1' }, + { name: 'Option 2', code: 'O2' }, + { name: 'Option 3', code: 'O3' }, + ]; - const selectButtonValues2 = [ - { name: 'Option 1', code: 'O1' }, - { name: 'Option 2', code: 'O2' }, - { name: 'Option 3', code: 'O3' }, - ]; + const selectButtonValues2 = [ + { name: 'Option 1', code: 'O1' }, + { name: 'Option 2', code: 'O2' }, + { name: 'Option 3', code: 'O3' }, + ]; - useEffect(() => { - const countryService = new CountryService(); - const nodeService = new NodeService(); - countryService.getCountries().then(data => setAutoValue(data)); - nodeService.getTreeNodes().then(data => setTreeSelectNodes(data)); - }, []); + useEffect(() => { + const countryService = new CountryService(); + const nodeService = new NodeService(); + countryService.getCountries().then((data) => setAutoValue(data)); + nodeService.getTreeNodes().then((data) => setTreeSelectNodes(data)); + }, []); - const searchCountry = (event) => { - setTimeout(() => { - if (!event.query.trim().length) { - setAutoFilteredValue([...autoValue]); - } - else { - setAutoFilteredValue(autoValue.filter((country) => { - return country.name.toLowerCase().startsWith(event.query.toLowerCase()); - })); - } - }, 250); - }; - - const onCheckboxChange = (e) => { - let selectedValue = [...checkboxValue]; - if (e.checked) - selectedValue.push(e.value); - else - selectedValue.splice(selectedValue.indexOf(e.value), 1); - - setCheckboxValue(selectedValue); - }; - - const itemTemplate = (option) => { - return ( -
    - - {option.name} -
    + const searchCountry = (event) => { + setTimeout(() => { + if (!event.query.trim().length) { + setAutoFilteredValue([...autoValue]); + } else { + setAutoFilteredValue( + autoValue.filter((country) => { + return country.name + .toLowerCase() + .startsWith(event.query.toLowerCase()); + }), ); - }; + } + }, 250); + }; - const selectedItemTemplate = (option) => { - if (option) { - return ( -
    - - {option.name} -
    - ); - } + const onCheckboxChange = (e) => { + let selectedValue = [...checkboxValue]; + if (e.checked) selectedValue.push(e.value); + else selectedValue.splice(selectedValue.indexOf(e.value), 1); - return 'Select Countries'; - }; + setCheckboxValue(selectedValue); + }; + const itemTemplate = (option) => { return ( -
    -
    -
    -
    InputText
    -
    -
    - -
    -
    - -
    -
    - -
    -
    +
    + + {option.name} +
    + ); + }; -
    Icons
    -
    -
    - - - - -
    -
    - - - - -
    -
    - - - - - -
    -
    + const selectedItemTemplate = (option) => { + if (option) { + return ( +
    + + {option.name} +
    + ); + } -
    Float Label
    - - setFloatValue(e.target.value)} /> - - + return 'Select Countries'; + }; -
    Textarea
    - - -
    AutoComplete
    - setSelectedAutoValue(e.value)} suggestions={autoFilteredValue} completeMethod={searchCountry} field="name" /> - -
    Calendar
    - setCalendarValue(e.value)}> - -
    InputNumber
    - setInputNumberValue(e.value)} showButtons mode="decimal"> - -
    Chips
    - setChipsValue(e.value)} /> -
    - -
    -
    -
    -
    Slider
    - setSliderValue(parseInt(e.target.value), 10)} /> - setSliderValue(e.value)} /> -
    -
    -
    Rating
    - setRatingValue(e.value)} /> -
    -
    -
    ColorPicker
    - setColorValue(e.value)} style={{ width: '2rem' }} /> -
    -
    -
    Knob
    - setKnobValue(e.value)} step={10} min={-50} max={50} /> -
    -
    -
    + return ( +
    +
    +
    +
    InputText
    +
    +
    +
    - -
    -
    -
    RadioButton
    -
    -
    -
    - setRadioValue(e.value)} /> - -
    -
    -
    -
    - setRadioValue(e.value)} /> - -
    -
    -
    -
    - setRadioValue(e.value)} /> - -
    -
    -
    - -
    Checkbox
    -
    -
    -
    - - -
    -
    -
    -
    - - -
    -
    -
    -
    - - -
    -
    -
    - -
    Input Switch
    - setSwitchValue(e.value)} /> -
    - -
    -
    Listbox
    - setListboxValue(e.value)} options={listboxValues} optionLabel="name" filter /> - -
    Dropdown
    - setDropdownValue(e.value)} options={dropdownValues} optionLabel="name" placeholder="Select" /> - -
    MultiSelect
    - setMultiselectValue(e.value)} options={multiselectValues} optionLabel="name" placeholder="Select Countries" filter - itemTemplate={itemTemplate} selectedItemTemplate={selectedItemTemplate} /> - -
    TreeSelect
    - setSelectedNode(e.value)} options={treeSelectNodes} placeholder="Select Item"> -
    - -
    -
    ToggleButton
    - setToggleValue(e.value)} onLabel="Yes" offLabel="No" /> - -
    SelectButton
    - setSelectButtonValue1(e.value)} options={selectButtonValues1} optionLabel="name" /> - -
    SelectButton - Multiple
    - setSelectButtonValue2(e.value)} options={selectButtonValues2} optionLabel="name" multiple /> -
    +
    +
    +
    + +
    +
    +
    Icons
    +
    +
    + + + + +
    +
    + + + + +
    +
    + + + + + +
    +
    + +
    Float Label
    + + setFloatValue(e.target.value)} + /> + + + +
    Textarea
    + + +
    AutoComplete
    + setSelectedAutoValue(e.value)} + suggestions={autoFilteredValue} + completeMethod={searchCountry} + field="name" + /> + +
    Calendar
    + setCalendarValue(e.value)} + > + +
    InputNumber
    + setInputNumberValue(e.value)} + showButtons + mode="decimal" + > + +
    Chips
    + setChipsValue(e.value)} /> +
    + +
    +
    -
    -
    Input Groups
    -
    -
    -
    - - - - -
    -
    - -
    -
    - - - - $ - .00 -
    -
    - -
    -
    -
    -
    - -
    -
    - - setInputGroupValue(e.checked)} binary /> - - -
    -
    -
    -
    +
    Slider
    + setSliderValue(parseInt(e.target.value), 10)} + /> + setSliderValue(e.value)} + />
    -
    - ) -} +
    +
    Rating
    + setRatingValue(e.value)} + /> +
    +
    +
    ColorPicker
    + setColorValue(e.value)} + style={{ width: '2rem' }} + /> +
    +
    +
    Knob
    + setKnobValue(e.value)} + step={10} + min={-50} + max={50} + /> +
    +
    +
    +
    -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; +
    +
    +
    RadioButton
    +
    +
    +
    + setRadioValue(e.value)} + /> + +
    +
    +
    +
    + setRadioValue(e.value)} + /> + +
    +
    +
    +
    + setRadioValue(e.value)} + /> + +
    +
    +
    + +
    Checkbox
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    + +
    Input Switch
    + setSwitchValue(e.value)} + /> +
    + +
    +
    Listbox
    + setListboxValue(e.value)} + options={listboxValues} + optionLabel="name" + filter + /> + +
    Dropdown
    + setDropdownValue(e.value)} + options={dropdownValues} + optionLabel="name" + placeholder="Select" + /> + +
    MultiSelect
    + setMultiselectValue(e.value)} + options={multiselectValues} + optionLabel="name" + placeholder="Select Countries" + filter + itemTemplate={itemTemplate} + selectedItemTemplate={selectedItemTemplate} + /> + +
    TreeSelect
    + setSelectedNode(e.value)} + options={treeSelectNodes} + placeholder="Select Item" + > +
    + +
    +
    ToggleButton
    + setToggleValue(e.value)} + onLabel="Yes" + offLabel="No" + /> + +
    SelectButton
    + setSelectButtonValue1(e.value)} + options={selectButtonValues1} + optionLabel="name" + /> + +
    SelectButton - Multiple
    + setSelectButtonValue2(e.value)} + options={selectButtonValues2} + optionLabel="name" + multiple + /> +
    +
    + +
    +
    +
    Input Groups
    +
    +
    +
    + + + + +
    +
    + +
    +
    + + + + + + + + $ + .00 +
    +
    + +
    +
    +
    +
    + +
    +
    + + setInputGroupValue(e.checked)} + binary + /> + + +
    +
    +
    +
    +
    +
    + ); }; -export default React.memo(InputDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(InputDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/InvalidStateDemo.js b/web-ui/web-react/src/templates/InvalidStateDemo.js index d11d3e75..378f839b 100644 --- a/web-ui/web-react/src/templates/InvalidStateDemo.js +++ b/web-ui/web-react/src/templates/InvalidStateDemo.js @@ -12,108 +12,170 @@ import { Password } from 'primereact/password'; import { CountryService } from '../service/CountryService'; const InvalidStateDemo = () => { - const [countries, setCountries] = useState([]); - const [filteredCountries, setFilteredCountries] = useState(null); - const [value1, setValue1] = useState(''); - const [value2, setValue2] = useState(''); - const [value3, setValue3] = useState(null); - const [value4, setValue4] = useState(''); - const [value5, setValue5] = useState(''); - const [value6, setValue6] = useState(''); - const [value7, setValue7] = useState(''); - const [value8, setValue8] = useState([]); - const [value9, setValue9] = useState(null); - const [value10, setValue10] = useState(''); + const [countries, setCountries] = useState([]); + const [filteredCountries, setFilteredCountries] = useState(null); + const [value1, setValue1] = useState(''); + const [value2, setValue2] = useState(''); + const [value3, setValue3] = useState(null); + const [value4, setValue4] = useState(''); + const [value5, setValue5] = useState(''); + const [value6, setValue6] = useState(''); + const [value7, setValue7] = useState(''); + const [value8, setValue8] = useState([]); + const [value9, setValue9] = useState(null); + const [value10, setValue10] = useState(''); - const cities = [ - { name: 'New York', code: 'NY' }, - { name: 'Rome', code: 'RM' }, - { name: 'London', code: 'LDN' }, - { name: 'Istanbul', code: 'IST' }, - { name: 'Paris', code: 'PRS' }, - ]; + const cities = [ + { name: 'New York', code: 'NY' }, + { name: 'Rome', code: 'RM' }, + { name: 'London', code: 'LDN' }, + { name: 'Istanbul', code: 'IST' }, + { name: 'Paris', code: 'PRS' }, + ]; - useEffect(() => { - const countryService = new CountryService(); - countryService.getCountries().then((countries) => { - setCountries(countries); - }); - }, []); + useEffect(() => { + const countryService = new CountryService(); + countryService.getCountries().then((countries) => { + setCountries(countries); + }); + }, []); - const searchCountry = (event) => { - // in a real application, make a request to a remote url with the query and - // return filtered results, for demo we filter at client side - const filtered = []; - const query = event.query; - for (let i = 0; i < countries.length; i++) { - const country = countries[i]; - if (country.name.toLowerCase().indexOf(query.toLowerCase()) === 0) { - filtered.push(country); - } - } - setFilteredCountries(filtered); - }; + const searchCountry = (event) => { + // in a real application, make a request to a remote url with the query and + // return filtered results, for demo we filter at client side + const filtered = []; + const query = event.query; + for (let i = 0; i < countries.length; i++) { + const country = countries[i]; + if (country.name.toLowerCase().indexOf(query.toLowerCase()) === 0) { + filtered.push(country); + } + } + setFilteredCountries(filtered); + }; - return ( -
    -
    -
    -
    Invalid State
    -
    -
    -
    - - setValue1(e.target.value)} className="p-invalid" /> -
    -
    - - setValue5(e.value)} suggestions={filteredCountries} completeMethod={searchCountry} field="name" className="p-invalid"/> -
    -
    - - setValue6(e.value)} className="p-invalid" showIcon/> -
    -
    - - setValue8(e.value)} className="p-invalid"/> -
    -
    - - setValue10(e.target.value)} className="p-invalid" /> -
    -
    - -
    -
    - - setValue2(e.value)} className="p-invalid"/> -
    -
    - - setValue3(e.target.value)} className="p-invalid"/> -
    -
    - - setValue7(e.value)} optionLabel="name" className="p-invalid"/> -
    -
    - - setValue9(e.value)} optionLabel="name" className="p-invalid"/> -
    -
    - - setValue4(e.target.value)} className="p-invalid"/> -
    -
    -
    -
    + return ( +
    +
    +
    +
    Invalid State
    +
    +
    +
    + + setValue1(e.target.value)} + className="p-invalid" + /> +
    +
    + + setValue5(e.value)} + suggestions={filteredCountries} + completeMethod={searchCountry} + field="name" + className="p-invalid" + /> +
    +
    + + setValue6(e.value)} + className="p-invalid" + showIcon + /> +
    +
    + + setValue8(e.value)} + className="p-invalid" + /> +
    +
    + + setValue10(e.target.value)} + className="p-invalid" + /> +
    + +
    +
    + + setValue2(e.value)} + className="p-invalid" + /> +
    +
    + + setValue3(e.target.value)} + className="p-invalid" + /> +
    +
    + + setValue7(e.value)} + optionLabel="name" + className="p-invalid" + /> +
    +
    + + setValue9(e.value)} + optionLabel="name" + className="p-invalid" + /> +
    +
    + + setValue4(e.target.value)} + className="p-invalid" + /> +
    +
    +
    - ) -} +
    +
    + ); +}; const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + return prevProps.location.pathname === nextProps.location.pathname; }; export default React.memo(InvalidStateDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/ListDemo.js b/web-ui/web-react/src/templates/ListDemo.js index 2d73aa5b..2ea17526 100644 --- a/web-ui/web-react/src/templates/ListDemo.js +++ b/web-ui/web-react/src/templates/ListDemo.js @@ -8,154 +8,219 @@ import { OrderList } from 'primereact/orderlist'; import { ProductService } from '../service/ProductService'; const ListDemo = () => { - const listValue = [ - { name: 'San Francisco', code: 'SF' }, - { name: 'London', code: 'LDN' }, - { name: 'Paris', code: 'PRS' }, - { name: 'Istanbul', code: 'IST' }, - { name: 'Berlin', code: 'BRL' }, - { name: 'Barcelona', code: 'BRC' }, - { name: 'Rome', code: 'RM' }, - ]; + const listValue = [ + { name: 'San Francisco', code: 'SF' }, + { name: 'London', code: 'LDN' }, + { name: 'Paris', code: 'PRS' }, + { name: 'Istanbul', code: 'IST' }, + { name: 'Berlin', code: 'BRL' }, + { name: 'Barcelona', code: 'BRC' }, + { name: 'Rome', code: 'RM' }, + ]; - const [picklistSourceValue, setPicklistSourceValue] = useState(listValue); - const [picklistTargetValue, setPicklistTargetValue] = useState([]); - const [orderlistValue, setOrderlistValue] = useState(listValue); - const [dataviewValue, setDataviewValue] = useState(null); - const [layout, setLayout] = useState('grid'); - const [sortKey, setSortKey] = useState(null); - const [sortOrder, setSortOrder] = useState(null); - const [sortField, setSortField] = useState(null); + const [picklistSourceValue, setPicklistSourceValue] = useState(listValue); + const [picklistTargetValue, setPicklistTargetValue] = useState([]); + const [orderlistValue, setOrderlistValue] = useState(listValue); + const [dataviewValue, setDataviewValue] = useState(null); + const [layout, setLayout] = useState('grid'); + const [sortKey, setSortKey] = useState(null); + const [sortOrder, setSortOrder] = useState(null); + const [sortField, setSortField] = useState(null); - const sortOptions = [ - { label: 'Price High to Low', value: '!price' }, - { label: 'Price Low to High', value: 'price' } - ]; + const sortOptions = [ + { label: 'Price High to Low', value: '!price' }, + { label: 'Price Low to High', value: 'price' }, + ]; - useEffect(() => { - const productService = new ProductService(); - productService.getProducts().then(data => setDataviewValue(data)); - }, []); + useEffect(() => { + const productService = new ProductService(); + productService.getProducts().then((data) => setDataviewValue(data)); + }, []); - const onSortChange = (event) => { - const value = event.value; + const onSortChange = (event) => { + const value = event.value; - if (value.indexOf('!') === 0) { - setSortOrder(-1); - setSortField(value.substring(1, value.length)); - setSortKey(value); - } - else { - setSortOrder(1); - setSortField(value); - setSortKey(value); - } - }; + if (value.indexOf('!') === 0) { + setSortOrder(-1); + setSortField(value.substring(1, value.length)); + setSortKey(value); + } else { + setSortOrder(1); + setSortField(value); + setSortKey(value); + } + }; - const dataviewHeader = ( -
    -
    - -
    -
    - setLayout(e.value)} /> -
    -
    - ); - - const dataviewListItem = (data) => { - return ( -
    -
    - {data.name} -
    -
    {data.name}
    -
    {data.description}
    - -
    - - {data.category} -
    -
    -
    - ${data.price} - - {data.inventoryStatus} -
    -
    -
    - ); - }; - - const dataviewGridItem = (data) => { - return ( -
    -
    -
    -
    - - {data.category} -
    - {data.inventoryStatus} -
    -
    - {data.name} -
    {data.name}
    -
    {data.description}
    - -
    -
    - ${data.price} -
    -
    -
    - ); - }; - - const itemTemplate = (data, layout) => { - if (!data) { - return; - } - - if (layout === 'list') { - return dataviewListItem(data); - } - else if (layout === 'grid') { - return dataviewGridItem(data); - } - }; + const dataviewHeader = ( +
    +
    + +
    +
    + setLayout(e.value)} + /> +
    +
    + ); + const dataviewListItem = (data) => { return ( -
    -
    -
    -
    DataView
    - -
    -
    - -
    -
    -
    PickList
    -
    {item.name}
    } - onChange={(e) => { setPicklistSourceValue(e.source); setPicklistTargetValue(e.target) }} sourceStyle={{ height: '200px' }} targetStyle={{ height: '200px' }}>
    -
    -
    - -
    -
    -
    OrderList
    -
    {item.name}
    } - onChange={(e) => setOrderlistValue(e.value)}>
    -
    +
    +
    + {data.name} +
    +
    {data.name}
    +
    {data.description}
    + +
    + + {data.category}
    +
    +
    + + ${data.price} + + + + {data.inventoryStatus} + +
    - ) -} +
    + ); + }; -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + const dataviewGridItem = (data) => { + return ( +
    +
    +
    +
    + + {data.category} +
    + + {data.inventoryStatus} + +
    +
    + {data.name} +
    {data.name}
    +
    {data.description}
    + +
    +
    + ${data.price} +
    +
    +
    + ); + }; + + const itemTemplate = (data, layout) => { + if (!data) { + return; + } + + if (layout === 'list') { + return dataviewListItem(data); + } else if (layout === 'grid') { + return dataviewGridItem(data); + } + }; + + return ( +
    +
    +
    +
    DataView
    + +
    +
    + +
    +
    +
    PickList
    +
    {item.name}
    } + onChange={(e) => { + setPicklistSourceValue(e.source); + setPicklistTargetValue(e.target); + }} + sourceStyle={{ height: '200px' }} + targetStyle={{ height: '200px' }} + >
    +
    +
    + +
    +
    +
    OrderList
    +
    {item.name}
    } + onChange={(e) => setOrderlistValue(e.value)} + >
    +
    +
    +
    + ); }; -export default React.memo(ListDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(ListDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/MediaDemo.js b/web-ui/web-react/src/templates/MediaDemo.js index c9b74002..6231bdeb 100644 --- a/web-ui/web-react/src/templates/MediaDemo.js +++ b/web-ui/web-react/src/templates/MediaDemo.js @@ -2,115 +2,163 @@ import React, { useEffect, useState } from 'react'; import { Carousel } from 'primereact/carousel'; import { Galleria } from 'primereact/galleria'; import { Button } from 'primereact/button'; -import { Image } from "primereact/image"; +import { Image } from 'primereact/image'; import { ProductService } from '../service/ProductService'; import { PhotoService } from '../service/PhotoService'; const MediaDemo = () => { - const [products, setProducts] = useState([]); - const [images, setImages] = useState([]); - const galleriaResponsiveOptions = [ - { - breakpoint: "1024px", - numVisible: 5, - }, - { - breakpoint: "960px", - numVisible: 4, - }, - { - breakpoint: "768px", - numVisible: 3, - }, - { - breakpoint: "560px", - numVisible: 1, - }, - ]; - const carouselResponsiveOptions = [ - { - breakpoint: "1024px", - numVisible: 3, - numScroll: 3, - }, - { - breakpoint: "768px", - numVisible: 2, - numScroll: 2, - }, - { - breakpoint: "560px", - numVisible: 1, - numScroll: 1, - }, - ]; + const [products, setProducts] = useState([]); + const [images, setImages] = useState([]); + const galleriaResponsiveOptions = [ + { + breakpoint: '1024px', + numVisible: 5, + }, + { + breakpoint: '960px', + numVisible: 4, + }, + { + breakpoint: '768px', + numVisible: 3, + }, + { + breakpoint: '560px', + numVisible: 1, + }, + ]; + const carouselResponsiveOptions = [ + { + breakpoint: '1024px', + numVisible: 3, + numScroll: 3, + }, + { + breakpoint: '768px', + numVisible: 2, + numScroll: 2, + }, + { + breakpoint: '560px', + numVisible: 1, + numScroll: 1, + }, + ]; - useEffect(() => { - const productService = new ProductService(); - productService.getProductsSmall().then((products) => setProducts(products)); + useEffect(() => { + const productService = new ProductService(); + productService.getProductsSmall().then((products) => setProducts(products)); - const photoService = new PhotoService(); - photoService.getImages().then((images) => setImages(images)); - }, []); - - const carouselItemTemplate = (product) => { - return ( -
    -
    -
    - {product.name} -
    -
    -

    - {product.name} -

    -
    ${product.price}
    - {product.inventoryStatus} -
    - - - -
    -
    -
    -
    - ); - }; - - const galleriaItemTemplate = (item) => {item.alt} - const galleriaThumbnailTemplate = (item) => {item.alt} + const photoService = new PhotoService(); + photoService.getImages().then((images) => setImages(images)); + }, []); + const carouselItemTemplate = (product) => { return ( -
    -
    -
    -
    Carousel
    - -
    -
    - -
    -
    -
    Galleria
    - -
    -
    - -
    -
    -
    Image
    -
    - galleria -
    -
    +
    +
    +
    + {product.name} +
    +
    +

    {product.name}

    +
    ${product.price}
    + + {product.inventoryStatus} + +
    + + +
    +
    +
    ); -} + }; -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + const galleriaItemTemplate = (item) => ( + {item.alt} + ); + const galleriaThumbnailTemplate = (item) => ( + {item.alt} + ); + + return ( +
    +
    +
    +
    Carousel
    + +
    +
    + +
    +
    +
    Galleria
    + +
    +
    + +
    +
    +
    Image
    +
    + galleria +
    +
    +
    +
    + ); }; -export default React.memo(MediaDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(MediaDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/MenuDemo.js b/web-ui/web-react/src/templates/MenuDemo.js index 67552d8b..fe7c7667 100644 --- a/web-ui/web-react/src/templates/MenuDemo.js +++ b/web-ui/web-react/src/templates/MenuDemo.js @@ -17,575 +17,623 @@ import { PaymentDemo } from '../templates/menu/PaymentDemo'; import { SeatDemo } from '../templates/menu/SeatDemo'; const MenuDemo = () => { - const [activeIndex, setActiveIndex] = useState(0); + const [activeIndex, setActiveIndex] = useState(0); - const menu = useRef(null); - const contextMenu = useRef(null); - const history = useHistory(); - const location = useLocation(); + const menu = useRef(null); + const contextMenu = useRef(null); + const history = useHistory(); + const location = useLocation(); - const checkActiveIndex = useCallback(() => { - const paths = location.pathname.split('/'); - const currentPath = paths[paths.length - 1]; + const checkActiveIndex = useCallback(() => { + const paths = location.pathname.split('/'); + const currentPath = paths[paths.length - 1]; - switch (currentPath) { - case 'seat': - setActiveIndex(1); - break; - case 'payment': - setActiveIndex(2); - break; - case 'confirmation': - setActiveIndex(3); - break; - default: - break; - } - },[location]) + switch (currentPath) { + case 'seat': + setActiveIndex(1); + break; + case 'payment': + setActiveIndex(2); + break; + case 'confirmation': + setActiveIndex(3); + break; + default: + break; + } + }, [location]); - useEffect(() => { - checkActiveIndex(); - }, [checkActiveIndex]) + useEffect(() => { + checkActiveIndex(); + }, [checkActiveIndex]); - const nestedMenuitems = [ + const nestedMenuitems = [ + { + label: 'Customers', + icon: 'pi pi-fw pi-table', + items: [ { - label: 'Customers', - icon: 'pi pi-fw pi-table', + label: 'New', + icon: 'pi pi-fw pi-user-plus', + items: [ + { + label: 'Customer', + icon: 'pi pi-fw pi-plus', + }, + { + label: 'Duplicate', + icon: 'pi pi-fw pi-copy', + }, + ], + }, + { + label: 'Edit', + icon: 'pi pi-fw pi-user-edit', + }, + ], + }, + { + label: 'Orders', + icon: 'pi pi-fw pi-shopping-cart', + items: [ + { + label: 'View', + icon: 'pi pi-fw pi-list', + }, + { + label: 'Search', + icon: 'pi pi-fw pi-search', + }, + ], + }, + { + label: 'Shipments', + icon: 'pi pi-fw pi-envelope', + items: [ + { + label: 'Tracker', + icon: 'pi pi-fw pi-compass', + }, + { + label: 'Map', + icon: 'pi pi-fw pi-map-marker', + }, + { + label: 'Manage', + icon: 'pi pi-fw pi-pencil', + }, + ], + }, + { + label: 'Profile', + icon: 'pi pi-fw pi-user', + items: [ + { + label: 'Settings', + icon: 'pi pi-fw pi-cog', + }, + { + label: 'Billing', + icon: 'pi pi-fw pi-file', + }, + ], + }, + { + label: 'Quit', + icon: 'pi pi-fw pi-sign-out', + }, + ]; + + const breadcrumbHome = { icon: 'pi pi-home', to: '/' }; + const breadcrumbItems = [ + { label: 'Computer' }, + { label: 'Notebook' }, + { label: 'Accessories' }, + { label: 'Backpacks' }, + { label: 'Item' }, + ]; + + const wizardItems = [ + { label: 'Personal', command: () => history.push('/menu') }, + { label: 'Seat', command: () => history.push('/menu/seat') }, + { label: 'Payment', command: () => history.push('/menu/payment') }, + { + label: 'Confirmation', + command: () => history.push('/menu/confirmation'), + }, + ]; + + const tieredMenuItems = [ + { + label: 'Customers', + icon: 'pi pi-fw pi-table', + items: [ + { + label: 'New', + icon: 'pi pi-fw pi-user-plus', + items: [ + { + label: 'Customer', + icon: 'pi pi-fw pi-plus', + }, + { + label: 'Duplicate', + icon: 'pi pi-fw pi-copy', + }, + ], + }, + { + label: 'Edit', + icon: 'pi pi-fw pi-user-edit', + }, + ], + }, + { + label: 'Orders', + icon: 'pi pi-fw pi-shopping-cart', + items: [ + { + label: 'View', + icon: 'pi pi-fw pi-list', + }, + { + label: 'Search', + icon: 'pi pi-fw pi-search', + }, + ], + }, + { + label: 'Shipments', + icon: 'pi pi-fw pi-envelope', + items: [ + { + label: 'Tracker', + icon: 'pi pi-fw pi-compass', + }, + { + label: 'Map', + icon: 'pi pi-fw pi-map-marker', + }, + { + label: 'Manage', + icon: 'pi pi-fw pi-pencil', + }, + ], + }, + { + label: 'Profile', + icon: 'pi pi-fw pi-user', + items: [ + { + label: 'Settings', + icon: 'pi pi-fw pi-cog', + }, + { + label: 'Billing', + icon: 'pi pi-fw pi-file', + }, + ], + }, + { + separator: true, + }, + { + label: 'Quit', + icon: 'pi pi-fw pi-sign-out', + }, + ]; + + const overlayMenuItems = [ + { + label: 'Save', + icon: 'pi pi-save', + }, + { + label: 'Update', + icon: 'pi pi-refresh', + }, + { + label: 'Delete', + icon: 'pi pi-trash', + }, + { + separator: true, + }, + { + label: 'Home', + icon: 'pi pi-home', + }, + ]; + + const menuitems = [ + { + label: 'Customers', + items: [ + { + label: 'New', + icon: 'pi pi-fw pi-plus', + }, + { + label: 'Edit', + icon: 'pi pi-fw pi-user-edit', + }, + ], + }, + { + label: 'Orders', + items: [ + { + label: 'View', + icon: 'pi pi-fw pi-list', + }, + { + label: 'Search', + icon: 'pi pi-fw pi-search', + }, + ], + }, + ]; + + const contextMenuItems = [ + { + label: 'Save', + icon: 'pi pi-save', + }, + { + label: 'Update', + icon: 'pi pi-refresh', + }, + { + label: 'Delete', + icon: 'pi pi-trash', + }, + { + separator: true, + }, + { + label: 'Options', + icon: 'pi pi-cog', + }, + ]; + + const megamenuItems = [ + { + label: 'Fashion', + icon: 'pi pi-fw pi-tag', + items: [ + [ + { + label: 'Woman', items: [ - { - label: 'New', - icon: 'pi pi-fw pi-user-plus', - items: [ - { - label: 'Customer', - icon: 'pi pi-fw pi-plus' - }, - { - label: 'Duplicate', - icon: 'pi pi-fw pi-copy' - }, - - ] - }, - { - label: 'Edit', - icon: 'pi pi-fw pi-user-edit' - } - ] - }, - { - label: 'Orders', - icon: 'pi pi-fw pi-shopping-cart', + { label: 'Woman Item' }, + { label: 'Woman Item' }, + { label: 'Woman Item' }, + ], + }, + { + label: 'Men', items: [ - { - label: 'View', - icon: 'pi pi-fw pi-list' - }, - { - label: 'Search', - icon: 'pi pi-fw pi-search' - }, - - ] - }, - { - label: 'Shipments', - icon: 'pi pi-fw pi-envelope', + { label: 'Men Item' }, + { label: 'Men Item' }, + { label: 'Men Item' }, + ], + }, + ], + [ + { + label: 'Kids', + items: [{ label: 'Kids Item' }, { label: 'Kids Item' }], + }, + { + label: 'Luggage', items: [ - { - label: 'Tracker', - icon: 'pi pi-fw pi-compass' - - }, - { - label: 'Map', - icon: 'pi pi-fw pi-map-marker' - - }, - { - label: 'Manage', - icon: 'pi pi-fw pi-pencil' - } - ] - }, - { - label: 'Profile', - icon: 'pi pi-fw pi-user', + { label: 'Luggage Item' }, + { label: 'Luggage Item' }, + { label: 'Luggage Item' }, + ], + }, + ], + ], + }, + { + label: 'Electronics', + icon: 'pi pi-fw pi-desktop', + items: [ + [ + { + label: 'Computer', + items: [{ label: 'Computer Item' }, { label: 'Computer Item' }], + }, + { + label: 'Camcorder', items: [ - { - label: 'Settings', - icon: 'pi pi-fw pi-cog' - }, - { - label: 'Billing', - icon: 'pi pi-fw pi-file' - } - ] - }, - { - label: 'Quit', - icon: 'pi pi-fw pi-sign-out' - } - ]; - - const breadcrumbHome = { icon: 'pi pi-home', to: '/' }; - const breadcrumbItems = [ - { label: 'Computer' }, - { label: 'Notebook' }, - { label: 'Accessories' }, - { label: 'Backpacks' }, - { label: 'Item' } - ]; - - const wizardItems = [ - { label: 'Personal', command: () => history.push('/menu') }, - { label: 'Seat', command: () => history.push('/menu/seat') }, - { label: 'Payment', command: () => history.push('/menu/payment') }, - { label: 'Confirmation', command: () => history.push('/menu/confirmation') } - ]; - - const tieredMenuItems = [ - { - label: 'Customers', - icon: 'pi pi-fw pi-table', + { label: 'Camcorder Item' }, + { label: 'Camcorder Item' }, + { label: 'Camcorder Item' }, + ], + }, + ], + [ + { + label: 'TV', + items: [{ label: 'TV Item' }, { label: 'TV Item' }], + }, + { + label: 'Audio', items: [ - { - label: 'New', - icon: 'pi pi-fw pi-user-plus', - items: [ - { - label: 'Customer', - icon: 'pi pi-fw pi-plus' - }, - { - label: 'Duplicate', - icon: 'pi pi-fw pi-copy' - } - ] - }, - { - label: 'Edit', - icon: 'pi pi-fw pi-user-edit' - } - ] - }, - { - label: 'Orders', - icon: 'pi pi-fw pi-shopping-cart', + { label: 'Audio Item' }, + { label: 'Audio Item' }, + { label: 'Audio Item' }, + ], + }, + ], + [ + { + label: 'Sports.7', + items: [{ label: 'Sports.7.1' }, { label: 'Sports.7.2' }], + }, + ], + ], + }, + { + label: 'Furniture', + icon: 'pi pi-fw pi-image', + items: [ + [ + { + label: 'Living Room', items: [ - { - label: 'View', - icon: 'pi pi-fw pi-list' - }, - { - label: 'Search', - icon: 'pi pi-fw pi-search' - } - ] - }, - { - label: 'Shipments', - icon: 'pi pi-fw pi-envelope', + { label: 'Living Room Item' }, + { label: 'Living Room Item' }, + ], + }, + { + label: 'Kitchen', items: [ - { - label: 'Tracker', - icon: 'pi pi-fw pi-compass' - - }, - { - label: 'Map', - icon: 'pi pi-fw pi-map-marker' - - }, - { - label: 'Manage', - icon: 'pi pi-fw pi-pencil' - } - ] - }, - { - label: 'Profile', - icon: 'pi pi-fw pi-user', + { label: 'Kitchen Item' }, + { label: 'Kitchen Item' }, + { label: 'Kitchen Item' }, + ], + }, + ], + [ + { + label: 'Bedroom', + items: [{ label: 'Bedroom Item' }, { label: 'Bedroom Item' }], + }, + { + label: 'Outdoor', items: [ - { - label: 'Settings', - icon: 'pi pi-fw pi-cog' - }, - { - label: 'Billing', - icon: 'pi pi-fw pi-file' - } - ] - }, - { - separator: true - }, - { - label: 'Quit', - icon: 'pi pi-fw pi-sign-out' - } - ]; - - const overlayMenuItems = [ - { - label: 'Save', - icon: 'pi pi-save' - }, - { - label: 'Update', - icon: 'pi pi-refresh' - }, - { - label: 'Delete', - icon: 'pi pi-trash' - }, - { - separator: true - }, - { - label: 'Home', - icon: 'pi pi-home' - } - ]; - - const menuitems = [ - { - label: 'Customers', + { label: 'Outdoor Item' }, + { label: 'Outdoor Item' }, + { label: 'Outdoor Item' }, + ], + }, + ], + ], + }, + { + label: 'Sports', + icon: 'pi pi-fw pi-star', + items: [ + [ + { + label: 'Basketball', + items: [{ label: 'Basketball Item' }, { label: 'Basketball Item' }], + }, + { + label: 'Football', items: [ - { - label: 'New', - icon: 'pi pi-fw pi-plus', - }, - { - label: 'Edit', - icon: 'pi pi-fw pi-user-edit' - } - ] - }, - { - label: 'Orders', - items: [ - { - label: 'View', - icon: 'pi pi-fw pi-list' - }, - { - label: 'Search', - icon: 'pi pi-fw pi-search' - } - ] - } - ]; + { label: 'Football Item' }, + { label: 'Football Item' }, + { label: 'Football Item' }, + ], + }, + ], + [ + { + label: 'Tennis', + items: [{ label: 'Tennis Item' }, { label: 'Tennis Item' }], + }, + ], + ], + }, + ]; - const contextMenuItems = [ + const panelMenuitems = [ + { + label: 'Customers', + icon: 'pi pi-fw pi-table', + items: [ { - label: 'Save', - icon: 'pi pi-save' + label: 'New', + icon: 'pi pi-fw pi-user-plus', + items: [ + { + label: 'Customer', + icon: 'pi pi-fw pi-plus', + }, + { + label: 'Duplicate', + icon: 'pi pi-fw pi-copy', + }, + ], }, { - label: 'Update', - icon: 'pi pi-refresh' + label: 'Edit', + icon: 'pi pi-fw pi-user-edit', + }, + ], + }, + { + label: 'Orders', + icon: 'pi pi-fw pi-shopping-cart', + items: [ + { + label: 'View', + icon: 'pi pi-fw pi-list', }, { - label: 'Delete', - icon: 'pi pi-trash' + label: 'Search', + icon: 'pi pi-fw pi-search', + }, + ], + }, + { + label: 'Shipments', + icon: 'pi pi-fw pi-envelope', + items: [ + { + label: 'Tracker', + icon: 'pi pi-fw pi-compass', }, { - separator: true + label: 'Map', + icon: 'pi pi-fw pi-map-marker', }, { - label: 'Options', - icon: 'pi pi-cog' - } - ]; + label: 'Manage', + icon: 'pi pi-fw pi-pencil', + }, + ], + }, + { + label: 'Profile', + icon: 'pi pi-fw pi-user', + items: [ + { + label: 'Settings', + icon: 'pi pi-fw pi-cog', + }, + { + label: 'Billing', + icon: 'pi pi-fw pi-file', + }, + ], + }, + ]; - const megamenuItems = [ - { - label: 'Fashion', icon: 'pi pi-fw pi-tag', - items: [ - [ - { - label: 'Woman', - items: [{ label: 'Woman Item' }, { label: 'Woman Item' }, { label: 'Woman Item' }] - }, - { - label: 'Men', - items: [{ label: 'Men Item' }, { label: 'Men Item' }, { label: 'Men Item' }] - } - ], - [ - { - label: 'Kids', - items: [{ label: 'Kids Item' }, { label: 'Kids Item' }] - }, - { - label: 'Luggage', - items: [{ label: 'Luggage Item' }, { label: 'Luggage Item' }, { label: 'Luggage Item' }] - } - ] - ] - }, - { - label: 'Electronics', icon: 'pi pi-fw pi-desktop', - items: [ - [ - { - label: 'Computer', - items: [{ label: 'Computer Item' }, { label: 'Computer Item' }] - }, - { - label: 'Camcorder', - items: [{ label: 'Camcorder Item' }, { label: 'Camcorder Item' }, { label: 'Camcorder Item' },] - }, - ], - [ - { - label: 'TV', - items: [{ label: 'TV Item' }, { label: 'TV Item' }] - }, - { - label: 'Audio', - items: [{ label: 'Audio Item' }, { label: 'Audio Item' }, { label: 'Audio Item' }] - } - ], - [ - { - label: 'Sports.7', - items: [{ label: 'Sports.7.1' }, { label: 'Sports.7.2' }] - } - ] - ] - }, - { - label: 'Furniture', icon: 'pi pi-fw pi-image', - items: [ - [ - { - label: 'Living Room', - items: [{ label: 'Living Room Item' }, { label: 'Living Room Item' },] - }, - { - label: 'Kitchen', - items: [{ label: 'Kitchen Item' }, { label: 'Kitchen Item' }, { label: 'Kitchen Item' }] - } - ], - [ - { - label: 'Bedroom', - items: [{ label: 'Bedroom Item' }, { label: 'Bedroom Item' }] - }, - { - label: 'Outdoor', - items: [{ label: 'Outdoor Item' }, { label: 'Outdoor Item' }, { label: 'Outdoor Item' }] - } - ] - ] - }, - { - label: 'Sports', icon: 'pi pi-fw pi-star', - items: [ - [ - { - label: 'Basketball', - items: [{ label: 'Basketball Item' }, { label: 'Basketball Item' }] - }, - { - label: 'Football', - items: [{ label: 'Football Item' }, { label: 'Football Item' }, { label: 'Football Item' }] - } - ], - [ - { - label: 'Tennis', - items: [{ label: 'Tennis Item' }, { label: 'Tennis Item' }] - } - ] - ] - } - ]; + const toggleMenu = (event) => { + menu.current.toggle(event); + }; - const panelMenuitems = [ - { - label: 'Customers', - icon: 'pi pi-fw pi-table', - items: [ - { - label: 'New', - icon: 'pi pi-fw pi-user-plus', - items: [ - { - label: 'Customer', - icon: 'pi pi-fw pi-plus' - }, - { - label: 'Duplicate', - icon: 'pi pi-fw pi-copy' - }, - - ] - }, - { - label: 'Edit', - icon: 'pi pi-fw pi-user-edit' - } - ] - }, - { - label: 'Orders', - icon: 'pi pi-fw pi-shopping-cart', - items: [ - { - label: 'View', - icon: 'pi pi-fw pi-list' - }, - { - label: 'Search', - icon: 'pi pi-fw pi-search' - } - ] - }, - { - label: 'Shipments', - icon: 'pi pi-fw pi-envelope', - items: [ - { - label: 'Tracker', - icon: 'pi pi-fw pi-compass' - - }, - { - label: 'Map', - icon: 'pi pi-fw pi-map-marker' - - }, - { - label: 'Manage', - icon: 'pi pi-fw pi-pencil' - } - ] - }, - { - label: 'Profile', - icon: 'pi pi-fw pi-user', - items: [ - { - label: 'Settings', - icon: 'pi pi-fw pi-cog' - }, - { - label: 'Billing', - icon: 'pi pi-fw pi-file' - } - ] - } - ]; - - const toggleMenu = (event) => { - menu.current.toggle(event); - }; - - const onContextRightClick = (event) => { - contextMenu.current.show(event); - }; - - const menubarEndTemplate = () => { - return ( - - - - - ); - }; + const onContextRightClick = (event) => { + contextMenu.current.show(event); + }; + const menubarEndTemplate = () => { return ( -
    -
    -
    -
    Menubar
    - -
    -
    + + + + + ); + }; -
    -
    -
    Breadcrumb
    - -
    -
    - -
    -
    -
    Steps
    - setActiveIndex(e.index)} readOnly={false} /> - - - - -
    -
    - -
    -
    -
    TabMenu
    - setActiveIndex(e.index)} /> - - - - -
    -
    - -
    -
    -
    Tiered Menu
    - -
    -
    - -
    -
    -
    Plain Menu
    - -
    -
    - -
    -
    -
    Overlay Menu
    - - -
    - -
    -
    ContextMenu
    - Right click to display. - -
    -
    - -
    -
    -
    MegaMenu - Horizontal
    - - -
    MegaMenu - Vertical
    - -
    -
    - -
    -
    -
    PanelMenu
    - -
    -
    + return ( +
    +
    +
    +
    Menubar
    +
    - ) -} +
    -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; +
    +
    +
    Breadcrumb
    + +
    +
    + +
    +
    +
    Steps
    + setActiveIndex(e.index)} + readOnly={false} + /> + + + + +
    +
    + +
    +
    +
    TabMenu
    + setActiveIndex(e.index)} + /> + + + + +
    +
    + +
    +
    +
    Tiered Menu
    + +
    +
    + +
    +
    +
    Plain Menu
    + +
    +
    + +
    +
    +
    Overlay Menu
    + + +
    + +
    +
    ContextMenu
    + Right click to display. + +
    +
    + +
    +
    +
    MegaMenu - Horizontal
    + + +
    MegaMenu - Vertical
    + +
    +
    + +
    +
    +
    PanelMenu
    + +
    +
    +
    + ); }; -export default React.memo(MenuDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(MenuDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/MessagesDemo.js b/web-ui/web-react/src/templates/MessagesDemo.js index c373c20a..04c80672 100644 --- a/web-ui/web-react/src/templates/MessagesDemo.js +++ b/web-ui/web-react/src/templates/MessagesDemo.js @@ -6,105 +6,188 @@ import { InputText } from 'primereact/inputtext'; import { Button } from 'primereact/button'; const MessagesDemo = () => { - const [username, setUsername] = useState(''); - const [email, setEmail] = useState(''); - const toast = useRef(); - const message = useRef(); + const [username, setUsername] = useState(''); + const [email, setEmail] = useState(''); + const toast = useRef(); + const message = useRef(); - const addSuccessMessage = () => { - message.current.show({ severity: 'success', content: 'Message Detail' }); - }; + const addSuccessMessage = () => { + message.current.show({ severity: 'success', content: 'Message Detail' }); + }; - const addInfoMessage = () => { - message.current.show({ severity: 'info', content: 'Message Detail' }); - }; + const addInfoMessage = () => { + message.current.show({ severity: 'info', content: 'Message Detail' }); + }; - const addWarnMessage = () => { - message.current.show({ severity: 'warn', content: 'Message Detail' }); - }; + const addWarnMessage = () => { + message.current.show({ severity: 'warn', content: 'Message Detail' }); + }; - const addErrorMessage = () => { - message.current.show({ severity: 'error', content: 'Message Detail' }); - }; + const addErrorMessage = () => { + message.current.show({ severity: 'error', content: 'Message Detail' }); + }; - const showSuccess = () => { - toast.current.show({ severity: 'success', summary: 'Success Message', detail: 'Message Detail', life: 3000 }); - }; + const showSuccess = () => { + toast.current.show({ + severity: 'success', + summary: 'Success Message', + detail: 'Message Detail', + life: 3000, + }); + }; - const showInfo = () => { - toast.current.show({ severity: 'info', summary: 'Info Message', detail: 'Message Detail', life: 3000 }); - }; + const showInfo = () => { + toast.current.show({ + severity: 'info', + summary: 'Info Message', + detail: 'Message Detail', + life: 3000, + }); + }; - const showWarn = () => { - toast.current.show({ severity: 'warn', summary: 'Warn Message', detail: 'Message Detail', life: 3000 }); - }; + const showWarn = () => { + toast.current.show({ + severity: 'warn', + summary: 'Warn Message', + detail: 'Message Detail', + life: 3000, + }); + }; - const showError = () => { - toast.current.show({ severity: 'error', summary: 'Error Message', detail: 'Message Detail', life: 3000 }); - }; + const showError = () => { + toast.current.show({ + severity: 'error', + summary: 'Error Message', + detail: 'Message Detail', + life: 3000, + }); + }; - return ( -
    -
    -
    -
    Toast
    + return ( +
    +
    +
    +
    Toast
    - -
    -
    - -
    -
    -
    Messages
    - -
    -
    - -
    -
    -
    Inline
    -
    - -
    - setUsername(e.target.value)} required className="p-invalid mr-2"/> - -
    -
    -
    - -
    - setEmail(e.target.value)} required className="p-invalid mr-2"/> - -
    -
    -
    -
    - -
    -
    -
    Help Text
    -
    - - - Enter your username to reset your password. -
    -
    -
    + +
    - ); -} +
    + +
    +
    +
    Messages
    + +
    +
    + +
    +
    +
    Inline
    +
    + +
    + setUsername(e.target.value)} + required + className="p-invalid mr-2" + /> + +
    +
    +
    + +
    + setEmail(e.target.value)} + required + className="p-invalid mr-2" + /> + +
    +
    +
    +
    + +
    +
    +
    Help Text
    +
    + + + + Enter your username to reset your password. + +
    +
    +
    +
    + ); +}; const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + return prevProps.location.pathname === nextProps.location.pathname; }; export default React.memo(MessagesDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/MiscDemo.js b/web-ui/web-react/src/templates/MiscDemo.js index b47318ab..04665ad0 100644 --- a/web-ui/web-react/src/templates/MiscDemo.js +++ b/web-ui/web-react/src/templates/MiscDemo.js @@ -11,195 +11,341 @@ import { ScrollPanel } from 'primereact/scrollpanel'; import { ScrollTop } from 'primereact/scrolltop'; const MiscDemo = () => { - const [value, setValue] = useState(0); - const interval = useRef(null); + const [value, setValue] = useState(0); + const interval = useRef(null); - useEffect(() => { - let val = value; - interval.current = setInterval(() => { - val += Math.floor(Math.random() * 10) + 1; + useEffect(() => { + let val = value; + interval.current = setInterval(() => { + val += Math.floor(Math.random() * 10) + 1; - if (val >= 100) { - val = 100; - clearInterval(interval.current); - } - setValue(val); - }, 2000); + if (val >= 100) { + val = 100; + clearInterval(interval.current); + } + setValue(val); + }, 2000); - return () => { - if (interval.current) { - clearInterval(interval.current); - interval.current = null; - } - } - }, [value]); + return () => { + if (interval.current) { + clearInterval(interval.current); + interval.current = null; + } + }; + }, [value]); - return ( -
    -
    -
    -
    ProgressBar
    -
    -
    - -
    -
    - -
    -
    -
    + return ( +
    +
    +
    +
    ProgressBar
    +
    +
    +
    -
    -
    -

    Badge

    -
    Numbers
    - - - - - - -
    Positioned Badge
    - - - - -
    Button Badge
    - - - -
    Sizes
    - - - -
    - -
    -

    Avatar

    -
    Avatar Group
    - - - - - - - - - -
    Label - Circle
    - - - - -
    Icon - Badge
    - -
    - -
    -

    ScrollTop

    - -

    - Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - Vitae et leo duis ut diam. - Ultricies mi quis hendrerit dolor magna eget est lorem. Amet consectetur adipiscing elit ut. - Nam libero justo laoreet sit amet. Pharetra massa massa ultricies mi quis hendrerit dolor magna. - Est ultricies integer quis auctor elit sed vulputate. Consequat ac felis donec et. Tellus orci ac auctor augue mauris. - Semper feugiat nibh sed pulvinar proin gravida hendrerit lectus a. Tincidunt arcu non sodales neque sodales. - Metus aliquam eleifend mi in nulla posuere sollicitudin aliquam ultrices. Sodales ut etiam sit amet nisl purus. - Cursus sit amet dictum sit amet. Tristique senectus et netus et malesuada fames ac turpis egestas. - Et tortor consequat id porta nibh venenatis cras sed. Diam maecenas ultricies mi eget mauris. - Eget egestas purus viverra accumsan in nisl nisi. Suscipit adipiscing bibendum est ultricies integer. - Mattis aliquam faucibus purus in massa tempor nec. -

    - -
    -
    -
    -
    -
    -

    Tag

    -
    Tags
    - - - - - - -
    Pills
    - - - - - - -
    Icons
    - - - - - -
    - -
    -

    Chip

    -
    Basic
    -
    - - - - -
    - -
    Icon
    -
    - - - - -
    - -
    Image
    -
    - - - - -
    - -
    Styling
    -
    - - - - -
    -
    - -
    -

    Skeleton

    -
    -
    - -
    - - - -
    -
    - -
    - - -
    -
    -
    +
    +
    +
    - ) -} +
    +
    +
    +

    Badge

    +
    Numbers
    + + + + + -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; +
    Positioned Badge
    + + + + + + + + + + +
    Button Badge
    + + + +
    Sizes
    + + + +
    + +
    +

    Avatar

    +
    Avatar Group
    + + + + + + + + + +
    Label - Circle
    + + + + +
    Icon - Badge
    + + + +
    + +
    +

    ScrollTop

    + +

    + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do + eiusmod tempor incididunt ut labore et dolore magna aliqua. Vitae + et leo duis ut diam. Ultricies mi quis hendrerit dolor magna eget + est lorem. Amet consectetur adipiscing elit ut. Nam libero justo + laoreet sit amet. Pharetra massa massa ultricies mi quis hendrerit + dolor magna. Est ultricies integer quis auctor elit sed vulputate. + Consequat ac felis donec et. Tellus orci ac auctor augue mauris. + Semper feugiat nibh sed pulvinar proin gravida hendrerit lectus a. + Tincidunt arcu non sodales neque sodales. Metus aliquam eleifend + mi in nulla posuere sollicitudin aliquam ultrices. Sodales ut + etiam sit amet nisl purus. Cursus sit amet dictum sit amet. + Tristique senectus et netus et malesuada fames ac turpis egestas. + Et tortor consequat id porta nibh venenatis cras sed. Diam + maecenas ultricies mi eget mauris. Eget egestas purus viverra + accumsan in nisl nisi. Suscipit adipiscing bibendum est ultricies + integer. Mattis aliquam faucibus purus in massa tempor nec. +

    + +
    +
    +
    +
    +
    +

    Tag

    +
    Tags
    + + + + + + +
    Pills
    + + + + + + +
    Icons
    + + + + + +
    + +
    +

    Chip

    +
    Basic
    +
    + + + + +
    + +
    Icon
    +
    + + + + +
    + +
    Image
    +
    + + + + +
    + +
    Styling
    +
    + + + + +
    +
    + +
    +

    Skeleton

    +
    +
    + +
    + + + +
    +
    + +
    + + +
    +
    +
    +
    +
    + ); }; -export default React.memo(MiscDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(MiscDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/OverlayDemo.js b/web-ui/web-react/src/templates/OverlayDemo.js index e5f1cb95..51fddc97 100644 --- a/web-ui/web-react/src/templates/OverlayDemo.js +++ b/web-ui/web-react/src/templates/OverlayDemo.js @@ -11,184 +11,368 @@ import { confirmPopup } from 'primereact/confirmpopup'; import { ProductService } from '../service/ProductService'; const OverlayDemo = () => { - const [displayBasic, setDisplayBasic] = useState(false); - const [displayConfirmation, setDisplayConfirmation] = useState(false); - const [visibleLeft, setVisibleLeft] = useState(false); - const [visibleRight, setVisibleRight] = useState(false); - const [visibleTop, setVisibleTop] = useState(false); - const [visibleBottom, setVisibleBottom] = useState(false); - const [visibleFullScreen, setVisibleFullScreen] = useState(false); - const [products, setProducts] = useState(null); - const [selectedProduct, setSelectedProduct] = useState(null); - const op = useRef(null); - const op2 = useRef(null); - const toast = useRef(null); + const [displayBasic, setDisplayBasic] = useState(false); + const [displayConfirmation, setDisplayConfirmation] = useState(false); + const [visibleLeft, setVisibleLeft] = useState(false); + const [visibleRight, setVisibleRight] = useState(false); + const [visibleTop, setVisibleTop] = useState(false); + const [visibleBottom, setVisibleBottom] = useState(false); + const [visibleFullScreen, setVisibleFullScreen] = useState(false); + const [products, setProducts] = useState(null); + const [selectedProduct, setSelectedProduct] = useState(null); + const op = useRef(null); + const op2 = useRef(null); + const toast = useRef(null); - const accept = () => { - toast.current.show({ severity: 'info', summary: 'Confirmed', detail: 'You have accepted', life: 3000 }); - }; + const accept = () => { + toast.current.show({ + severity: 'info', + summary: 'Confirmed', + detail: 'You have accepted', + life: 3000, + }); + }; - const reject = () => { - toast.current.show({ severity: 'error', summary: 'Rejected', detail: 'You have rejected', life: 3000 }); - }; + const reject = () => { + toast.current.show({ + severity: 'error', + summary: 'Rejected', + detail: 'You have rejected', + life: 3000, + }); + }; - const confirm = (event) => { - confirmPopup({ - target: event.currentTarget, - message: 'Are you sure you want to proceed?', - icon: 'pi pi-exclamation-triangle', - accept, - reject - }); - }; + const confirm = (event) => { + confirmPopup({ + target: event.currentTarget, + message: 'Are you sure you want to proceed?', + icon: 'pi pi-exclamation-triangle', + accept, + reject, + }); + }; - useEffect(() => { - const productService = new ProductService(); - productService.getProductsSmall().then(data => setProducts(data)); - }, []); + useEffect(() => { + const productService = new ProductService(); + productService.getProductsSmall().then((data) => setProducts(data)); + }, []); - const toggle = (event) => { - op.current.toggle(event); - }; + const toggle = (event) => { + op.current.toggle(event); + }; - const toggleDataTable = (event) => { - op2.current.toggle(event); - }; + const toggleDataTable = (event) => { + op2.current.toggle(event); + }; - const formatCurrency = (value) => { - return value.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); - }; + const formatCurrency = (value) => { + return value.toLocaleString('en-US', { + style: 'currency', + currency: 'USD', + }); + }; - const onProductSelect = (event) => { - op2.current.hide(); - toast.current.show({ severity: 'info', summary: 'Product Selected', detail: event.data.name, life: 3000 }); - }; + const onProductSelect = (event) => { + op2.current.hide(); + toast.current.show({ + severity: 'info', + summary: 'Product Selected', + detail: event.data.name, + life: 3000, + }); + }; - const basicDialogFooter =
    -
    -
    -
    -
    Overlay Panel
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -
    -
    Confirmation
    -
    -
    -
    Sidebar
    - setVisibleLeft(false)} baseZIndex={1000}> -

    Left Sidebar

    -
    - - setVisibleRight(false)} baseZIndex={1000} position="right"> -

    Right Sidebar

    -
    - - setVisibleTop(false)} baseZIndex={1000} position="top"> -

    Top Sidebar

    -
    - - setVisibleBottom(false)} baseZIndex={1000} position="bottom"> -

    Bottom Sidebar

    -
    - - setVisibleFullScreen(false)} baseZIndex={1000} fullScreen> -

    Full Screen

    -
    - -
    -
    - -
    -
    -
    Tooltip
    -
    -
    - -
    - -
    -
    -
    -
    - - -
    -
    ConfirmPopup
    - -
    -
    +
    +
    +
    +
    +
    Overlay Panel
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    Confirmation
    +
    +
    +
    Sidebar
    + setVisibleLeft(false)} + baseZIndex={1000} + > +

    Left Sidebar

    +
    - - ) -} + setVisibleRight(false)} + baseZIndex={1000} + position="right" + > +

    Right Sidebar

    +
    -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + setVisibleTop(false)} + baseZIndex={1000} + position="top" + > +

    Top Sidebar

    +
    + + setVisibleBottom(false)} + baseZIndex={1000} + position="bottom" + > +

    Bottom Sidebar

    +
    + + setVisibleFullScreen(false)} + baseZIndex={1000} + fullScreen + > +

    Full Screen

    +
    + +
    +
    + +
    +
    +
    Tooltip
    +
    +
    + +
    + +
    +
    +
    +
    + + +
    +
    ConfirmPopup
    + +
    +
    +
    + + ); }; -export default React.memo(OverlayDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(OverlayDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/PanelDemo.js b/web-ui/web-react/src/templates/PanelDemo.js index 7590e4b6..f754b824 100644 --- a/web-ui/web-react/src/templates/PanelDemo.js +++ b/web-ui/web-react/src/templates/PanelDemo.js @@ -1,4 +1,4 @@ -import React, {useRef} from 'react'; +import React, { useRef } from 'react'; import { Toolbar } from 'primereact/toolbar'; import { Button } from 'primereact/button'; import { SplitButton } from 'primereact/splitbutton'; @@ -11,242 +11,347 @@ import { Divider } from 'primereact/divider'; import { InputText } from 'primereact/inputtext'; import { Splitter, SplitterPanel } from 'primereact/splitter'; import { Password } from 'primereact/password'; -import {Menu} from "primereact/menu"; +import { Menu } from 'primereact/menu'; const PanelDemo = () => { - const menu1 = useRef(null); - const toolbarItems = [ - { - label: 'Save', - icon: 'pi pi-check' - }, - { - label: 'Update', - icon: 'pi pi-upload' - }, - { - label: 'Delete', - icon: 'pi pi-trash' - }, - { - label: 'Home Page', - icon: 'pi pi-home' - }, - ]; - - const toolbarLeftTemplate = () => { - return ( - <> -
    - ); + const menu1 = useRef(null); + const toolbarItems = [ + { + label: 'Save', + icon: 'pi pi-check', + }, + { + label: 'Update', + icon: 'pi pi-upload', + }, + { + label: 'Delete', + icon: 'pi pi-trash', + }, + { + label: 'Home Page', + icon: 'pi pi-home', + }, + ]; + const toolbarLeftTemplate = () => { return ( -
    -
    -
    -
    Toolbar
    - -
    -
    -
    -
    -
    AccordionPanel
    - - -

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. - Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

    -
    - -

    Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque - ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia - voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. - Consectetur, adipisci velit, sed quia non numquam eius modi.

    -
    - -

    At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores - et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. - Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit - quo minus.

    -
    -
    -
    -
    -
    TabView
    - - -

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. - Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

    - -

    Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque - ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia - voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. - Consectetur, adipisci velit, sed quia non numquam eius modi.

    -
    - -

    At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores - et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. - Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit - quo minus.

    -
    -
    -
    -
    -
    -
    -
    Panel
    - -

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. - Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

    -
    -
    -
    -
    Fieldset
    -
    -

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. - Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

    -
    -
    - -

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. - Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. - Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

    -
    -
    + <> + -
    -
    -
    - - OR - -
    -
    -

    Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, - totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi - architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit - aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione - voluptatem sequi nesciunt. Consectetur, adipisci velit, sed quia non numquam eius modi.

    + - - Badge - +
    + ); -

    At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum - deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati - cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est - laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. - Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus.

    - - - - - -

    Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et - voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur - a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis - doloribus asperiores repellat. - Donec vel volutpat ipsum. Integer nunc magna, posuere ut tincidunt eget, egestas vitae sapien. - Morbi dapibus luctus odio.

    -
    -
    -
    -
    - -
    -
    -
    Splitter
    - - -
    - Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut - labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation - ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit - in voluptate velit esse cillum dolore eu fugiat nulla pariatur. - Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim - id est laborum. -
    -
    - - - -
    - Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium - doloremque - laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi - architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia - voluptas - sit - aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione - voluptatem sequi nesciunt. Consectetur, adipisci velit, sed quia non numquam eius - modi. -
    -
    - -
    - At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis - praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias - excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui - officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem - rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est - eligendi optio cumque nihil impedit quo minus. -
    -
    -
    -
    -
    -
    -
    + return ( +
    +
    +
    +
    Toolbar
    +
    - ) -} +
    +
    +
    +
    AccordionPanel
    + + +

    + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do + eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut + enim ad minim veniam, quis nostrud exercitation ullamco laboris + nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor + in reprehenderit in voluptate velit esse cillum dolore eu fugiat + nulla pariatur. Excepteur sint occaecat cupidatat non proident, + sunt in culpa qui officia deserunt mollit anim id est laborum. +

    +
    + +

    + Sed ut perspiciatis unde omnis iste natus error sit voluptatem + accusantium doloremque laudantium, totam rem aperiam, eaque ipsa + quae ab illo inventore veritatis et quasi architecto beatae + vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia + voluptas sit aspernatur aut odit aut fugit, sed quia + consequuntur magni dolores eos qui ratione voluptatem sequi + nesciunt. Consectetur, adipisci velit, sed quia non numquam eius + modi. +

    +
    + +

    + At vero eos et accusamus et iusto odio dignissimos ducimus qui + blanditiis praesentium voluptatum deleniti atque corrupti quos + dolores et quas molestias excepturi sint occaecati cupiditate + non provident, similique sunt in culpa qui officia deserunt + mollitia animi, id est laborum et dolorum fuga. Et harum quidem + rerum facilis est et expedita distinctio. Nam libero tempore, + cum soluta nobis est eligendi optio cumque nihil impedit quo + minus. +

    +
    +
    +
    +
    +
    TabView
    + + +

    + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do + eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut + enim ad minim veniam, quis nostrud exercitation ullamco laboris + nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor + in reprehenderit in voluptate velit esse cillum dolore eu fugiat + nulla pariatur. Excepteur sint occaecat cupidatat non proident, + sunt in culpa qui officia deserunt mollit anim id est laborum. +

    +
    + +

    + Sed ut perspiciatis unde omnis iste natus error sit voluptatem + accusantium doloremque laudantium, totam rem aperiam, eaque ipsa + quae ab illo inventore veritatis et quasi architecto beatae + vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia + voluptas sit aspernatur aut odit aut fugit, sed quia + consequuntur magni dolores eos qui ratione voluptatem sequi + nesciunt. Consectetur, adipisci velit, sed quia non numquam eius + modi. +

    +
    + +

    + At vero eos et accusamus et iusto odio dignissimos ducimus qui + blanditiis praesentium voluptatum deleniti atque corrupti quos + dolores et quas molestias excepturi sint occaecati cupiditate + non provident, similique sunt in culpa qui officia deserunt + mollitia animi, id est laborum et dolorum fuga. Et harum quidem + rerum facilis est et expedita distinctio. Nam libero tempore, + cum soluta nobis est eligendi optio cumque nihil impedit quo + minus. +

    +
    +
    +
    +
    +
    +
    +
    Panel
    + +

    + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do + eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut + enim ad minim veniam, quis nostrud exercitation ullamco laboris + nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in + reprehenderit in voluptate velit esse cillum dolore eu fugiat + nulla pariatur. Excepteur sint occaecat cupidatat non proident, + sunt in culpa qui officia deserunt mollit anim id est laborum. +

    +
    +
    +
    +
    Fieldset
    +
    +

    + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do + eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut + enim ad minim veniam, quis nostrud exercitation ullamco laboris + nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in + reprehenderit in voluptate velit esse cillum dolore eu fugiat + nulla pariatur. Excepteur sint occaecat cupidatat non proident, + sunt in culpa qui officia deserunt mollit anim id est laborum. +

    +
    +
    + +

    + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do + eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim + ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut + aliquip ex ea commodo consequat. Duis aute irure dolor in + reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla + pariatur. Excepteur sint occaecat cupidatat non proident, sunt in + culpa qui officia deserunt mollit anim id est laborum. +

    +
    +
    -const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; +
    +
    +
    Divider
    +
    +
    +
    +
    + + + + +
    +
    + + + + +
    + +
    +
    +
    + + OR + +
    +
    +

    + Sed ut perspiciatis unde omnis iste natus error sit voluptatem + accusantium doloremque laudantium, totam rem aperiam, eaque ipsa + quae ab illo inventore veritatis et quasi architecto beatae + vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia + voluptas sit aspernatur aut odit aut fugit, sed quia + consequuntur magni dolores eos qui ratione voluptatem sequi + nesciunt. Consectetur, adipisci velit, sed quia non numquam eius + modi. +

    + + + Badge + + +

    + At vero eos et accusamus et iusto odio dignissimos ducimus qui + blanditiis praesentium voluptatum deleniti atque corrupti quos + dolores et quas molestias excepturi sint occaecati cupiditate + non provident, similique sunt in culpa qui officia deserunt + mollitia animi, id est laborum et dolorum fuga. Et harum quidem + rerum facilis est et expedita distinctio. Nam libero tempore, + cum soluta nobis est eligendi optio cumque nihil impedit quo + minus. +

    + + + + + +

    + Temporibus autem quibusdam et aut officiis debitis aut rerum + necessitatibus saepe eveniet ut et voluptates repudiandae sint + et molestiae non recusandae. Itaque earum rerum hic tenetur a + sapiente delectus, ut aut reiciendis voluptatibus maiores alias + consequatur aut perferendis doloribus asperiores repellat. Donec + vel volutpat ipsum. Integer nunc magna, posuere ut tincidunt + eget, egestas vitae sapien. Morbi dapibus luctus odio. +

    +
    +
    +
    +
    + +
    +
    +
    Splitter
    + + +
    + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do + eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut + enim ad minim veniam, quis nostrud exercitation ullamco laboris + nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor + in reprehenderit in voluptate velit esse cillum dolore eu fugiat + nulla pariatur. Excepteur sint occaecat cupidatat non proident, + sunt in culpa qui officia deserunt mollit anim id est laborum. +
    +
    + + + +
    + Sed ut perspiciatis unde omnis iste natus error sit + voluptatem accusantium doloremque laudantium, totam rem + aperiam, eaque ipsa quae ab illo inventore veritatis et + quasi architecto beatae vitae dicta sunt explicabo. Nemo + enim ipsam voluptatem quia voluptas sit aspernatur aut odit + aut fugit, sed quia consequuntur magni dolores eos qui + ratione voluptatem sequi nesciunt. Consectetur, adipisci + velit, sed quia non numquam eius modi. +
    +
    + +
    + At vero eos et accusamus et iusto odio dignissimos ducimus + qui blanditiis praesentium voluptatum deleniti atque + corrupti quos dolores et quas molestias excepturi sint + occaecati cupiditate non provident, similique sunt in culpa + qui officia deserunt mollitia animi, id est laborum et + dolorum fuga. Et harum quidem rerum facilis est et expedita + distinctio. Nam libero tempore, cum soluta nobis est + eligendi optio cumque nihil impedit quo minus. +
    +
    +
    +
    +
    +
    +
    +
    + ); }; -export default React.memo(PanelDemo, comparisonFn); \ No newline at end of file +const comparisonFn = function (prevProps, nextProps) { + return prevProps.location.pathname === nextProps.location.pathname; +}; + +export default React.memo(PanelDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/TableDemo.js b/web-ui/web-react/src/templates/TableDemo.js index 2bebc1ea..51c17544 100644 --- a/web-ui/web-react/src/templates/TableDemo.js +++ b/web-ui/web-react/src/templates/TableDemo.js @@ -17,359 +17,740 @@ import { CustomerService } from '../service/CustomerService'; import { ProductService } from '../service/ProductService'; const TableDemo = () => { - const [customers1, setCustomers1] = useState(null); - const [customers2, setCustomers2] = useState([]); - const [customers3, setCustomers3] = useState([]); - const [filters1, setFilters1] = useState(null); - const [loading1, setLoading1] = useState(true); - const [loading2, setLoading2] = useState(true); - const [idFrozen, setIdFrozen] = useState(false); - const [products, setProducts] = useState([]); - const [expandedRows, setExpandedRows] = useState(null); + const [customers1, setCustomers1] = useState(null); + const [customers2, setCustomers2] = useState([]); + const [customers3, setCustomers3] = useState([]); + const [filters1, setFilters1] = useState(null); + const [loading1, setLoading1] = useState(true); + const [loading2, setLoading2] = useState(true); + const [idFrozen, setIdFrozen] = useState(false); + const [products, setProducts] = useState([]); + const [expandedRows, setExpandedRows] = useState(null); - const representatives = [ - { name: "Amy Elsner", image: 'amyelsner.png' }, - { name: "Anna Fali", image: 'annafali.png' }, - { name: "Asiya Javayant", image: 'asiyajavayant.png' }, - { name: "Bernardo Dominic", image: 'bernardodominic.png' }, - { name: "Elwin Sharvill", image: 'elwinsharvill.png' }, - { name: "Ioni Bowcher", image: 'ionibowcher.png' }, - { name: "Ivan Magalhaes", image: 'ivanmagalhaes.png' }, - { name: "Onyama Limba", image: 'onyamalimba.png' }, - { name: "Stephen Shaw", image: 'stephenshaw.png' }, - { name: "XuXue Feng", image: 'xuxuefeng.png' } - ]; + const representatives = [ + { name: 'Amy Elsner', image: 'amyelsner.png' }, + { name: 'Anna Fali', image: 'annafali.png' }, + { name: 'Asiya Javayant', image: 'asiyajavayant.png' }, + { name: 'Bernardo Dominic', image: 'bernardodominic.png' }, + { name: 'Elwin Sharvill', image: 'elwinsharvill.png' }, + { name: 'Ioni Bowcher', image: 'ionibowcher.png' }, + { name: 'Ivan Magalhaes', image: 'ivanmagalhaes.png' }, + { name: 'Onyama Limba', image: 'onyamalimba.png' }, + { name: 'Stephen Shaw', image: 'stephenshaw.png' }, + { name: 'XuXue Feng', image: 'xuxuefeng.png' }, + ]; - const statuses = [ - 'unqualified', 'qualified', 'new', 'negotiation', 'renewal', 'proposal' - ]; + const statuses = [ + 'unqualified', + 'qualified', + 'new', + 'negotiation', + 'renewal', + 'proposal', + ]; - const customerService = new CustomerService(); - const productService = new ProductService(); + const customerService = new CustomerService(); + const productService = new ProductService(); - useEffect(() => { - setLoading2(true); + useEffect(() => { + setLoading2(true); - customerService.getCustomersLarge().then(data => { setCustomers1(getCustomers(data)); setLoading1(false) }); - customerService.getCustomersLarge().then(data => { setCustomers2(getCustomers(data)); setLoading2(false); }); - customerService.getCustomersMedium().then(data => setCustomers3(data)); - productService.getProductsWithOrdersSmall().then(data => setProducts(data)); + customerService.getCustomersLarge().then((data) => { + setCustomers1(getCustomers(data)); + setLoading1(false); + }); + customerService.getCustomersLarge().then((data) => { + setCustomers2(getCustomers(data)); + setLoading2(false); + }); + customerService.getCustomersMedium().then((data) => setCustomers3(data)); + productService + .getProductsWithOrdersSmall() + .then((data) => setProducts(data)); - initFilters1(); - }, []); // eslint-disable-line react-hooks/exhaustive-deps + initFilters1(); + }, []); // eslint-disable-line react-hooks/exhaustive-deps - const balanceTemplate = (rowData) => { - return ( - - {formatCurrency(rowData.balance)} - - ) - } + const balanceTemplate = (rowData) => { + return {formatCurrency(rowData.balance)}; + }; - const getCustomers = (data) => { - return [...data || []].map(d => { - d.date = new Date(d.date); - return d; - }); - } + const getCustomers = (data) => { + return [...(data || [])].map((d) => { + d.date = new Date(d.date); + return d; + }); + }; - const formatDate = (value) => { - return value.toLocaleDateString('en-US', { - day: '2-digit', - month: '2-digit', - year: 'numeric', - }); - } + const formatDate = (value) => { + return value.toLocaleDateString('en-US', { + day: '2-digit', + month: '2-digit', + year: 'numeric', + }); + }; - const formatCurrency = (value) => { - return value.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); - } + const formatCurrency = (value) => { + return value.toLocaleString('en-US', { + style: 'currency', + currency: 'USD', + }); + }; - const initFilters1 = () => { - setFilters1({ - 'global': { value: null, matchMode: FilterMatchMode.CONTAINS }, - 'name': { operator: FilterOperator.AND, constraints: [{ value: null, matchMode: FilterMatchMode.STARTS_WITH }] }, - 'country.name': { operator: FilterOperator.AND, constraints: [{ value: null, matchMode: FilterMatchMode.STARTS_WITH }] }, - 'representative': { value: null, matchMode: FilterMatchMode.IN }, - 'date': { operator: FilterOperator.AND, constraints: [{ value: null, matchMode: FilterMatchMode.DATE_IS }] }, - 'balance': { operator: FilterOperator.AND, constraints: [{ value: null, matchMode: FilterMatchMode.EQUALS }] }, - 'status': { operator: FilterOperator.OR, constraints: [{ value: null, matchMode: FilterMatchMode.EQUALS }] }, - 'activity': { value: null, matchMode: FilterMatchMode.BETWEEN }, - 'verified': { value: null, matchMode: FilterMatchMode.EQUALS } - }); - } - - - const countryBodyTemplate = (rowData) => { - return ( - - flag - {rowData.country.name} - - ); - } - - const filterClearTemplate = (options) => { - return ; - } - - const filterApplyTemplate = (options) => { - return - } - - const representativeBodyTemplate = (rowData) => { - const representative = rowData.representative; - return ( - - {representative.name} e.target.src = 'https://www.primefaces.org/wp-content/uploads/2020/05/placeholder.png'} width={32} style={{ verticalAlign: 'middle' }} /> - {representative.name} - - ); - } - - const representativeFilterTemplate = (options) => { - return (<> -
    Agent Picker
    - options.filterCallback(e.value)} optionLabel="name" placeholder="Any" className="p-column-filter" /> - - ) - } - - const representativesItemTemplate = (option) => { - return ( -
    - {option.name} - {option.name} -
    - ); - } - - const dateBodyTemplate = (rowData) => { - return formatDate(rowData.date); - } - - const dateFilterTemplate = (options) => { - return options.filterCallback(e.value, options.index)} dateFormat="mm/dd/yy" placeholder="mm/dd/yyyy" mask="99/99/9999" /> - } - - const balanceBodyTemplate = (rowData) => { - return formatCurrency(rowData.balance); - } - - const balanceFilterTemplate = (options) => { - return options.filterCallback(e.value, options.index)} mode="currency" currency="USD" locale="en-US" /> - } - - const statusBodyTemplate = (rowData) => { - return {rowData.status}; - } - - const statusFilterTemplate = (options) => { - return options.filterCallback(e.value, options.index)} itemTemplate={statusItemTemplate} placeholder="Select a Status" className="p-column-filter" showClear />; - } - - const statusItemTemplate = (option) => { - return {option}; - } - - const activityBodyTemplate = (rowData) => { - return ; - } - - const activityFilterTemplate = (options) => { - return ( - - options.filterCallback(e.value)} range className="m-3"> -
    - {options.value ? options.value[0] : 0} - {options.value ? options.value[1] : 100} -
    -
    - ) - } - - const verifiedBodyTemplate = (rowData) => { - return ; - } - - const verifiedFilterTemplate = (options) => { - return options.filterCallback(e.value)} /> - } - - const expandAll = () => { - let _expandedRows = {}; - products.forEach(p => _expandedRows[`${p.id}`] = true); - - setExpandedRows(_expandedRows); - } - - const collapseAll = () => { - setExpandedRows(null); - } - - const amountBodyTemplate = (rowData) => { - return formatCurrency(rowData.amount); - } - - const statusOrderBodyTemplate = (rowData) => { - return {rowData.status}; - } - - const searchBodyTemplate = () => { - return
    - ); - - const headerTemplate = (data) => { - return ( - - {data.representative.name} - {data.representative.name} - - ); - } - - const footerTemplate = (data) => { - return ( - - Total Customers - {calculateCustomerTotal(data.representative.name)} - - ); - } - - const calculateCustomerTotal = (name) => { - let total = 0; - - if (customers3) { - for (let customer of customers3) { - if (customer.representative.name === name) { - total++; - } - } - } - - return total; - } + const initFilters1 = () => { + setFilters1({ + global: { value: null, matchMode: FilterMatchMode.CONTAINS }, + name: { + operator: FilterOperator.AND, + constraints: [{ value: null, matchMode: FilterMatchMode.STARTS_WITH }], + }, + 'country.name': { + operator: FilterOperator.AND, + constraints: [{ value: null, matchMode: FilterMatchMode.STARTS_WITH }], + }, + representative: { value: null, matchMode: FilterMatchMode.IN }, + date: { + operator: FilterOperator.AND, + constraints: [{ value: null, matchMode: FilterMatchMode.DATE_IS }], + }, + balance: { + operator: FilterOperator.AND, + constraints: [{ value: null, matchMode: FilterMatchMode.EQUALS }], + }, + status: { + operator: FilterOperator.OR, + constraints: [{ value: null, matchMode: FilterMatchMode.EQUALS }], + }, + activity: { value: null, matchMode: FilterMatchMode.BETWEEN }, + verified: { value: null, matchMode: FilterMatchMode.EQUALS }, + }); + }; + const countryBodyTemplate = (rowData) => { return ( -
    -
    -
    -
    Filter Menu
    - - - - - - - - - - -
    -
    - -
    -
    - -
    Frozen Columns
    - setIdFrozen(e.value)} onIcon="pi pi-lock" offIcon="pi pi-lock-open" onLabel="Unfreeze Id" offLabel="Freeze Id" style={{ width: '10rem' }} /> - - - - - - - - - - - - - -
    -
    - -
    -
    -
    Row Expand
    - setExpandedRows(e.data)} responsiveLayout="scroll" - rowExpansionTemplate={rowExpansionTemplate} dataKey="id" header={header}> - - - - - - - - -
    -
    - -
    -
    -
    Subheader Grouping
    - - - - - - - -
    -
    -
    + + flag + + {rowData.country.name} + + ); -} + }; + + const filterClearTemplate = (options) => { + return ( + + ); + }; + + const filterApplyTemplate = (options) => { + return ( + + ); + }; + + const representativeBodyTemplate = (rowData) => { + const representative = rowData.representative; + return ( + + {representative.name} + (e.target.src = + 'https://www.primefaces.org/wp-content/uploads/2020/05/placeholder.png') + } + width={32} + style={{ verticalAlign: 'middle' }} + /> + + {representative.name} + + + ); + }; + + const representativeFilterTemplate = (options) => { + return ( + <> +
    Agent Picker
    + options.filterCallback(e.value)} + optionLabel="name" + placeholder="Any" + className="p-column-filter" + /> + + ); + }; + + const representativesItemTemplate = (option) => { + return ( +
    + {option.name} + + {option.name} + +
    + ); + }; + + const dateBodyTemplate = (rowData) => { + return formatDate(rowData.date); + }; + + const dateFilterTemplate = (options) => { + return ( + options.filterCallback(e.value, options.index)} + dateFormat="mm/dd/yy" + placeholder="mm/dd/yyyy" + mask="99/99/9999" + /> + ); + }; + + const balanceBodyTemplate = (rowData) => { + return formatCurrency(rowData.balance); + }; + + const balanceFilterTemplate = (options) => { + return ( + options.filterCallback(e.value, options.index)} + mode="currency" + currency="USD" + locale="en-US" + /> + ); + }; + + const statusBodyTemplate = (rowData) => { + return ( + + {rowData.status} + + ); + }; + + const statusFilterTemplate = (options) => { + return ( + options.filterCallback(e.value, options.index)} + itemTemplate={statusItemTemplate} + placeholder="Select a Status" + className="p-column-filter" + showClear + /> + ); + }; + + const statusItemTemplate = (option) => { + return {option}; + }; + + const activityBodyTemplate = (rowData) => { + return ( + + ); + }; + + const activityFilterTemplate = (options) => { + return ( + + options.filterCallback(e.value)} + range + className="m-3" + > +
    + {options.value ? options.value[0] : 0} + {options.value ? options.value[1] : 100} +
    +
    + ); + }; + + const verifiedBodyTemplate = (rowData) => { + return ( + + ); + }; + + const verifiedFilterTemplate = (options) => { + return ( + options.filterCallback(e.value)} + /> + ); + }; + + const expandAll = () => { + let _expandedRows = {}; + products.forEach((p) => (_expandedRows[`${p.id}`] = true)); + + setExpandedRows(_expandedRows); + }; + + const collapseAll = () => { + setExpandedRows(null); + }; + + const amountBodyTemplate = (rowData) => { + return formatCurrency(rowData.amount); + }; + + const statusOrderBodyTemplate = (rowData) => { + return ( + + {rowData.status} + + ); + }; + + const searchBodyTemplate = () => { + return
    + ); + + const headerTemplate = (data) => { + return ( + + {data.representative.name} + {data.representative.name} + + ); + }; + + const footerTemplate = (data) => { + return ( + + + Total Customers + + {calculateCustomerTotal(data.representative.name)} + + ); + }; + + const calculateCustomerTotal = (name) => { + let total = 0; + + if (customers3) { + for (let customer of customers3) { + if (customer.representative.name === name) { + total++; + } + } + } + + return total; + }; + + return ( +
    +
    +
    +
    Filter Menu
    + + + + + + + + + + +
    +
    + +
    +
    +
    Frozen Columns
    + setIdFrozen(e.value)} + onIcon="pi pi-lock" + offIcon="pi pi-lock-open" + onLabel="Unfreeze Id" + offLabel="Freeze Id" + style={{ width: '10rem' }} + /> + + + + + + + + + + + + + +
    +
    + +
    +
    +
    Row Expand
    + setExpandedRows(e.data)} + responsiveLayout="scroll" + rowExpansionTemplate={rowExpansionTemplate} + dataKey="id" + header={header} + > + + + + + + + + +
    +
    + +
    +
    +
    Subheader Grouping
    + + + + + + + +
    +
    +
    + ); +}; const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + return prevProps.location.pathname === nextProps.location.pathname; }; export default React.memo(TableDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/TreeDemo.js b/web-ui/web-react/src/templates/TreeDemo.js index 90e7efdb..82f22823 100644 --- a/web-ui/web-react/src/templates/TreeDemo.js +++ b/web-ui/web-react/src/templates/TreeDemo.js @@ -5,41 +5,54 @@ import { Column } from 'primereact/column'; import { NodeService } from '../service/NodeService'; const TreeDemo = () => { - const [treeNodes, setTreeNodes] = useState([]); - const [selectedTreeNodeKeys, setSelectedTreeNodeKeys] = useState(null); - const [treeTableNodes, setTreeTableNodes] = useState([]); - const [selectedTreeTableNodeKeys, setSelectedTreeTableNodeKeys] = useState([]); + const [treeNodes, setTreeNodes] = useState([]); + const [selectedTreeNodeKeys, setSelectedTreeNodeKeys] = useState(null); + const [treeTableNodes, setTreeTableNodes] = useState([]); + const [selectedTreeTableNodeKeys, setSelectedTreeTableNodeKeys] = useState( + [], + ); - useEffect(() => { - const nodeService = new NodeService(); - nodeService.getTreeNodes().then(data => setTreeNodes(data)); - nodeService.getTreeTableNodes().then(data => setTreeTableNodes(data)); - }, []); + useEffect(() => { + const nodeService = new NodeService(); + nodeService.getTreeNodes().then((data) => setTreeNodes(data)); + nodeService.getTreeTableNodes().then((data) => setTreeTableNodes(data)); + }, []); - return ( -
    -
    -
    -
    Tree
    - setSelectedTreeNodeKeys(e.value)}/> -
    -
    -
    -
    -
    TreeTable
    - setSelectedTreeTableNodeKeys(e.value)}> - - - - -
    -
    + return ( +
    +
    +
    +
    Tree
    + setSelectedTreeNodeKeys(e.value)} + />
    - ) -} +
    +
    +
    +
    TreeTable
    + setSelectedTreeTableNodeKeys(e.value)} + > + + + + +
    +
    +
    + ); +}; const comparisonFn = function (prevProps, nextProps) { - return prevProps.location.pathname === nextProps.location.pathname; + return prevProps.location.pathname === nextProps.location.pathname; }; export default React.memo(TreeDemo, comparisonFn); diff --git a/web-ui/web-react/src/templates/menu/ConfirmationDemo.js b/web-ui/web-react/src/templates/menu/ConfirmationDemo.js index 14556bd3..d5a6dca5 100644 --- a/web-ui/web-react/src/templates/menu/ConfirmationDemo.js +++ b/web-ui/web-react/src/templates/menu/ConfirmationDemo.js @@ -1,10 +1,12 @@ import React from 'react'; export const ConfirmationDemo = () => { - return ( -
    - -

    Confirmation Component Content via Child Route

    -
    - ) -} + return ( +
    + +

    + Confirmation Component Content via Child Route +

    +
    + ); +}; diff --git a/web-ui/web-react/src/templates/menu/PaymentDemo.js b/web-ui/web-react/src/templates/menu/PaymentDemo.js index 8a37e836..4afd4bf8 100644 --- a/web-ui/web-react/src/templates/menu/PaymentDemo.js +++ b/web-ui/web-react/src/templates/menu/PaymentDemo.js @@ -1,10 +1,10 @@ import React from 'react'; export const PaymentDemo = () => { - return ( -
    - -

    Payment Component Content via Child Route

    -
    - ) -} + return ( +
    + +

    Payment Component Content via Child Route

    +
    + ); +}; diff --git a/web-ui/web-react/src/templates/menu/PersonalDemo.js b/web-ui/web-react/src/templates/menu/PersonalDemo.js index e9aad639..964df2f5 100644 --- a/web-ui/web-react/src/templates/menu/PersonalDemo.js +++ b/web-ui/web-react/src/templates/menu/PersonalDemo.js @@ -1,10 +1,10 @@ import React from 'react'; export const PersonalDemo = () => { - return ( -
    - -

    Personal Component Content via Child Route

    -
    - ) -} + return ( +
    + +

    Personal Component Content via Child Route

    +
    + ); +}; diff --git a/web-ui/web-react/src/templates/menu/SeatDemo.js b/web-ui/web-react/src/templates/menu/SeatDemo.js index 989dff7c..bd03ea1b 100644 --- a/web-ui/web-react/src/templates/menu/SeatDemo.js +++ b/web-ui/web-react/src/templates/menu/SeatDemo.js @@ -1,10 +1,10 @@ import React from 'react'; export const SeatDemo = () => { - return ( -
    - -

    Seat Component Content via Child Route

    -
    - ) -} + return ( +
    + +

    Seat Component Content via Child Route

    +
    + ); +}; From c4096300fc6c2cd062db883407ccb2cfe802611b Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Sun, 24 Jul 2022 23:01:15 -0600 Subject: [PATCH 59/61] rename node js workflow for github --- .github/workflows/{mobile.js.yml => node.js.yml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .github/workflows/{mobile.js.yml => node.js.yml} (100%) diff --git a/.github/workflows/mobile.js.yml b/.github/workflows/node.js.yml similarity index 100% rename from .github/workflows/mobile.js.yml rename to .github/workflows/node.js.yml From 4a595d6f44cab97fe80144139cc089e36d2422ee Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Sun, 24 Jul 2022 23:04:37 -0600 Subject: [PATCH 60/61] add 'dev' branch to branch lists for workflows --- .github/workflows/node.js.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml index ed3a4edd..d4520efe 100644 --- a/.github/workflows/node.js.yml +++ b/.github/workflows/node.js.yml @@ -5,9 +5,9 @@ name: Node.js CI on: push: - branches: ['master'] + branches: ['master', 'dev'] pull_request: - branches: ['master'] + branches: ['master', 'dev'] jobs: build: From cc6ea6da2f2445064dff1b2621770c3b9a69de12 Mon Sep 17 00:00:00 2001 From: Eduardo Quiros Date: Sun, 24 Jul 2022 23:31:44 -0600 Subject: [PATCH 61/61] "step can't have both the 'uses' and 'run' keys" --- .github/workflows/node.js.yml | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml index d4520efe..22f0a461 100644 --- a/.github/workflows/node.js.yml +++ b/.github/workflows/node.js.yml @@ -10,25 +10,22 @@ on: branches: ['master', 'dev'] jobs: - build: + build-api: runs-on: ubuntu-latest - defaults: - run: - working-directory: ./mobile-ui strategy: matrix: node-version: [14.x, 16.x, 18.x] # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ - steps: - - uses: actions/checkout@v3 - run: cd ./mobile-ui + - name: checkout + uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} cache: 'npm' + - name: Test run: | + cd ./api-gateway npm ci npm run build --if-present - npm test

    r(Ifh(G&LKCEgD#UVN#q)G6d6X& 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 literal 0 HcmV?d00001 diff --git a/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Regular.woff2 b/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..6c2b6893d593201d7c94e52687f78b2ef28b357e GIT binary patch literal 98868 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%0D(-D;tD2U3Vy$! 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 literal 0 HcmV?d00001 diff --git a/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-SemiBold.woff b/web-ui/web-react/public/assets/themes/khaki/fonts/Inter-SemiBold.woff new file mode 100644 index 0000000000000000000000000000000000000000..a815f43a91f462c1610a991e21c4a42f2ac6a12f GIT binary patch literal 142932 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 `>0IwGJyHK~ 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 z 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ⅇ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 Date: Thu, 21 Jul 2022 00:43:41 -0600 Subject: [PATCH 13/61] =?UTF-8?q?modificaci=C3=B3n=20de=20nuevo=20tema=20(?= =?UTF-8?q?colores)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../public/assets/themes/khaki/theme.css | 7119 +++++++++++++++++ web-ui/web-react/public/index.html | 2 +- web-ui/web-react/src/AppConfig.js | 92 +- 3 files changed, 7171 insertions(+), 42 deletions(-) create mode 100644 web-ui/web-react/public/assets/themes/khaki/theme.css diff --git a/web-ui/web-react/public/assets/themes/khaki/theme.css b/web-ui/web-react/public/assets/themes/khaki/theme.css new file mode 100644 index 00000000..da26198f --- /dev/null +++ b/web-ui/web-react/public/assets/themes/khaki/theme.css @@ -0,0 +1,7119 @@ +:root { + --surface-a: #ffffff; + --surface-b: #f8f9fa; + --surface-c: #e9ecef; + --surface-d: #dee2e6; + --surface-e: #ffffff; + --surface-f: #ffffff; + --text-color: #495057; + --text-color-secondary: #6c757d; + --primary-color: #D7A86E; + --primary-color-text: #ffffff; + --font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; + --surface-0: #ffffff; + --surface-50: #FAFAFA; + --surface-100: #F5F5F5; + --surface-200: #EEEEEE; + --surface-300: #E0E0E0; + --surface-400: #BDBDBD; + --surface-500: #9E9E9E; + --surface-600: #757575; + --surface-700: #616161; + --surface-800: #424242; + --surface-900: #212121; + --gray-50: #FAFAFA; + --gray-100: #F5F5F5; + --gray-200: #EEEEEE; + --gray-300: #E0E0E0; + --gray-400: #BDBDBD; + --gray-500: #9E9E9E; + --gray-600: #757575; + --gray-700: #616161; + --gray-800: #424242; + --gray-900: #212121; + --content-padding: 1.25rem; + --inline-spacing: 0.5rem; + --border-radius: 6px; + --surface-ground: #eff3f8; + --surface-section: #ffffff; + --surface-card: #ffffff; + --surface-overlay: #ffffff; + --surface-border: #dfe7ef; + --surface-hover: #f6f9fc; + --focus-ring: 0 0 0 0.2rem #ffd9ac; + --maskbg: rgba(0, 0, 0, 0.4); +} + +@font-face { + font-family: "Inter"; + font-style: normal; + font-weight: 300; + src: local(""), url("./fonts/Inter-Light.woff2") format("woff2"), url("./fonts/Inter-Light.woff") format("woff"); + /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ +} + +@font-face { + font-family: "Inter"; + font-style: normal; + font-weight: 400; + src: local(""), url("./fonts/Inter-Regular.woff2") format("woff2"), url("./fonts/Inter-Regular.woff") format("woff"); + /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ +} + +@font-face { + font-family: "Inter"; + font-style: normal; + font-weight: 500; + src: local(""), url("./fonts/Inter-Medium.woff2") format("woff2"), url("./fonts/Inter-Medium.woff") format("woff"); + /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ +} + +@font-face { + font-family: "Inter"; + font-style: normal; + font-weight: 600; + src: local(""), url("./fonts/Inter-SemiBold.woff2") format("woff2"), url("./fonts/Inter-SemiBold.woff") format("woff"); + /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ +} + +@font-face { + font-family: "Inter"; + font-style: normal; + font-weight: 700; + src: local(""), url("./fonts/Inter-Bold.woff2") format("woff2"), url("./fonts/Inter-Bold.woff") format("woff"); + /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ +} + +* { + box-sizing: border-box; +} + +.p-component { + font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-size: 1rem; + font-weight: normal; +} + +.p-component-overlay { + background-color: rgba(0, 0, 0, 0.4); + transition-duration: 0.2s; +} + +.p-disabled, +.p-component:disabled { + opacity: 0.6; +} + +.p-error { + color: #e24c4c; +} + +.p-text-secondary { + color: #6c757d; +} + +.pi { + font-size: 1rem; +} + +.p-link { + font-size: 1rem; + font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + border-radius: 6px; +} + +.p-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-component-overlay-enter { + animation: p-component-overlay-enter-animation 150ms forwards; +} + +.p-component-overlay-leave { + animation: p-component-overlay-leave-animation 150ms forwards; +} + +@keyframes p-component-overlay-enter-animation { + from { + background-color: transparent; + } + + to { + background-color: var(--maskbg); + } +} + +@keyframes p-component-overlay-leave-animation { + from { + background-color: var(--maskbg); + } + + to { + background-color: transparent; + } +} + +:root { + --blue-50: #f5f9ff; + --blue-100: #d0e1fd; + --blue-200: #abc9fb; + --blue-300: #85b2f9; + --blue-400: #609af8; + --blue-500: #3b82f6; + --blue-600: #326fd1; + --blue-700: #295bac; + --blue-800: #204887; + --blue-900: #183462; + --green-50: #f4fcf7; + --green-100: #caf1d8; + --green-200: #a0e6ba; + --green-300: #76db9b; + --green-400: #4cd07d; + --green-500: #22c55e; + --green-600: #1da750; + --green-700: #188a42; + --green-800: #136c34; + --green-900: #0e4f26; + --yellow-50: #fefbf3; + --yellow-100: #faedc4; + --yellow-200: #f6de95; + --yellow-300: #f2d066; + --yellow-400: #eec137; + --yellow-500: #eab308; + --yellow-600: #c79807; + --yellow-700: #a47d06; + --yellow-800: #816204; + --yellow-900: #5e4803; + --cyan-50: #f3fbfd; + --cyan-100: #c3edf5; + --cyan-200: #94e0ed; + --cyan-300: #65d2e4; + --cyan-400: #35c4dc; + --cyan-500: #06b6d4; + --cyan-600: #059bb4; + --cyan-700: #047f94; + --cyan-800: #036475; + --cyan-900: #024955; + --pink-50: #fef6fa; + --pink-100: #fad3e7; + --pink-200: #f7b0d3; + --pink-300: #f38ec0; + --pink-400: #f06bac; + --pink-500: #ec4899; + --pink-600: #c93d82; + --pink-700: #a5326b; + --pink-800: #822854; + --pink-900: #5e1d3d; + --indigo-50: #f7f7fe; + --indigo-100: #dadafc; + --indigo-200: #bcbdf9; + --indigo-300: #9ea0f6; + --indigo-400: #8183f4; + --indigo-500: #6366f1; + --indigo-600: #5457cd; + --indigo-700: #4547a9; + --indigo-800: #363885; + --indigo-900: #282960; + --teal-50: #f3fbfb; + --teal-100: #c7eeea; + --teal-200: #9ae0d9; + --teal-300: #6dd3c8; + --teal-400: #41c5b7; + --teal-500: #14b8a6; + --teal-600: #119c8d; + --teal-700: #0e8174; + --teal-800: #0b655b; + --teal-900: #084a42; + --orange-50: #fff8f3; + --orange-100: #feddc7; + --orange-200: #fcc39b; + --orange-300: #fba86f; + --orange-400: #fa8e42; + --orange-500: #f97316; + --orange-600: #d46213; + --orange-700: #ae510f; + --orange-800: #893f0c; + --orange-900: #642e09; + --bluegray-50: #f7f8f9; + --bluegray-100: #dadee3; + --bluegray-200: #bcc3cd; + --bluegray-300: #9fa9b7; + --bluegray-400: #818ea1; + --bluegray-500: #64748b; + --bluegray-600: #556376; + --bluegray-700: #465161; + --bluegray-800: #37404c; + --bluegray-900: #282e38; + --purple-50: #fbf7ff; + --purple-100: #ead6fd; + --purple-200: #dab6fc; + --purple-300: #c996fa; + --purple-400: #b975f9; + --purple-500: #a855f7; + --purple-600: #8f48d2; + --purple-700: #763cad; + --purple-800: #5c2f88; + --purple-900: #432263; +} + +.p-autocomplete .p-autocomplete-loader { + right: 0.75rem; +} + +.p-autocomplete.p-autocomplete-dd .p-autocomplete-loader { + right: 3.75rem; +} + +.p-autocomplete .p-autocomplete-multiple-container { + padding: 0.375rem 0.75rem; +} + +.p-autocomplete .p-autocomplete-multiple-container:not(.p-disabled):hover { + border-color: #D7A86E; +} + +.p-autocomplete .p-autocomplete-multiple-container:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: #D7A86E; +} + +.p-autocomplete .p-autocomplete-multiple-container .p-autocomplete-input-token { + padding: 0.375rem 0; +} + +.p-autocomplete .p-autocomplete-multiple-container .p-autocomplete-input-token input { + font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-size: 1rem; + color: #495057; + padding: 0; + margin: 0; +} + +.p-autocomplete .p-autocomplete-multiple-container .p-autocomplete-token { + padding: 0.375rem 0.75rem; + margin-right: 0.5rem; + background: #EEF2FF; + color: #C08135; + border-radius: 6px; +} + +.p-autocomplete .p-autocomplete-multiple-container .p-autocomplete-token .p-autocomplete-token-icon { + margin-left: 0.5rem; +} + +.p-autocomplete.p-invalid.p-component>.p-inputtext { + border-color: #e24c4c; +} + +.p-autocomplete-panel { + background: #ffffff; + color: #495057; + border: 0 none; + border-radius: 6px; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-autocomplete-panel .p-autocomplete-items { + padding: 0.75rem 0; +} + +.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item { + margin: 0; + padding: 0.75rem 1.25rem; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item:hover { + color: #495057; + background: #e9ecef; +} + +.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item-group { + margin: 0; + padding: 0.75rem 1.25rem; + color: #343a40; + background: #ffffff; + font-weight: 700; +} + +.p-calendar.p-invalid.p-component>.p-inputtext { + border-color: #e24c4c; +} + +.p-datepicker { + padding: 0.5rem; + background: #ffffff; + color: #495057; + border: 1px solid #ced4da; + border-radius: 6px; +} + +.p-datepicker:not(.p-datepicker-inline) { + background: #ffffff; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-datepicker:not(.p-datepicker-inline) .p-datepicker-header { + background: #ffffff; +} + +.p-datepicker .p-datepicker-header { + padding: 0.5rem; + color: #495057; + background: #ffffff; + font-weight: 600; + margin: 0; + border-bottom: 1px solid #dee2e6; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-datepicker .p-datepicker-header .p-datepicker-prev, +.p-datepicker .p-datepicker-header .p-datepicker-next { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-datepicker .p-datepicker-header .p-datepicker-prev:enabled:hover, +.p-datepicker .p-datepicker-header .p-datepicker-next:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-datepicker .p-datepicker-header .p-datepicker-prev:focus, +.p-datepicker .p-datepicker-header .p-datepicker-next:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-datepicker .p-datepicker-header .p-datepicker-title { + line-height: 2rem; +} + +.p-datepicker .p-datepicker-header .p-datepicker-title select { + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-datepicker .p-datepicker-header .p-datepicker-title select:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: #D7A86E; +} + +.p-datepicker .p-datepicker-header .p-datepicker-title .p-datepicker-month { + margin-right: 0.5rem; +} + +.p-datepicker table { + font-size: 1rem; + margin: 0.5rem 0; +} + +.p-datepicker table th { + padding: 0.5rem; +} + +.p-datepicker table th>span { + width: 2.5rem; + height: 2.5rem; +} + +.p-datepicker table td { + padding: 0.5rem; +} + +.p-datepicker table td>span { + width: 2.5rem; + height: 2.5rem; + border-radius: 50%; + transition: box-shadow 0.2s; + border: 1px solid transparent; +} + +.p-datepicker table td>span.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-datepicker table td>span:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-datepicker table td.p-datepicker-today>span { + background: #ced4da; + color: #495057; + border-color: transparent; +} + +.p-datepicker table td.p-datepicker-today>span.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-datepicker .p-datepicker-buttonbar { + padding: 1rem 0; + border-top: 1px solid #dee2e6; +} + +.p-datepicker .p-datepicker-buttonbar .p-button { + width: auto; +} + +.p-datepicker .p-timepicker { + border-top: 1px solid #dee2e6; + padding: 0.5rem; +} + +.p-datepicker .p-timepicker button { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-datepicker .p-timepicker button:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-datepicker .p-timepicker button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-datepicker .p-timepicker button:last-child { + margin-top: 0.2em; +} + +.p-datepicker .p-timepicker span { + font-size: 1.25rem; +} + +.p-datepicker .p-timepicker>div { + padding: 0 0.5rem; +} + +.p-datepicker.p-datepicker-timeonly .p-timepicker { + border-top: 0 none; +} + +.p-datepicker .p-monthpicker { + margin: 0.5rem 0; +} + +.p-datepicker .p-monthpicker .p-monthpicker-month { + padding: 0.5rem; + transition: box-shadow 0.2s; + border-radius: 6px; +} + +.p-datepicker .p-monthpicker .p-monthpicker-month.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-datepicker.p-datepicker-multiple-month .p-datepicker-group { + border-right: 1px solid #dee2e6; + padding-right: 0.5rem; + padding-left: 0.5rem; + padding-top: 0; + padding-bottom: 0; +} + +.p-datepicker.p-datepicker-multiple-month .p-datepicker-group:first-child { + padding-left: 0; +} + +.p-datepicker.p-datepicker-multiple-month .p-datepicker-group:last-child { + padding-right: 0; + border-right: 0 none; +} + +.p-datepicker:not(.p-disabled) table td span:not(.p-highlight):not(.p-disabled):hover { + background: #e9ecef; +} + +.p-datepicker:not(.p-disabled) table td span:not(.p-highlight):not(.p-disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-datepicker:not(.p-disabled) .p-monthpicker .p-monthpicker-month:not(.p-highlight):not(.p-disabled):hover { + background: #e9ecef; +} + +.p-datepicker:not(.p-disabled) .p-monthpicker .p-monthpicker-month:not(.p-highlight):not(.p-disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +@media screen and (max-width: 769px) { + + .p-datepicker table th, + .p-datepicker table td { + padding: 0; + } +} + +.p-cascadeselect { + background: #ffffff; + border: 1px solid #ced4da; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 6px; +} + +.p-cascadeselect:not(.p-disabled):hover { + border-color: #D7A86E; +} + +.p-cascadeselect:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: #D7A86E; +} + +.p-cascadeselect .p-cascadeselect-label { + background: transparent; + border: 0 none; + padding: 0.75rem 0.75rem; +} + +.p-cascadeselect .p-cascadeselect-label.p-placeholder { + color: #6c757d; +} + +.p-cascadeselect .p-cascadeselect-label:enabled:focus { + outline: 0 none; + box-shadow: none; +} + +.p-cascadeselect .p-cascadeselect-trigger { + background: transparent; + color: #6c757d; + width: 3rem; + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.p-cascadeselect.p-invalid.p-component { + border-color: #e24c4c; +} + +.p-cascadeselect-panel { + background: #ffffff; + color: #495057; + border: 0 none; + border-radius: 6px; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-cascadeselect-panel .p-cascadeselect-items { + padding: 0.75rem 0; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item { + margin: 0; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item .p-cascadeselect-item-content { + padding: 0.75rem 1.25rem; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item .p-cascadeselect-item-content:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item:not(.p-highlight):not(.p-disabled):hover { + color: #495057; + background: #e9ecef; +} + +.p-cascadeselect-panel .p-cascadeselect-items .p-cascadeselect-item .p-cascadeselect-group-icon { + font-size: 0.875rem; +} + +.p-input-filled .p-cascadeselect { + background: #e9ecef; +} + +.p-input-filled .p-cascadeselect:not(.p-disabled):hover { + background-color: #e9ecef; +} + +.p-input-filled .p-cascadeselect:not(.p-disabled).p-focus { + background-color: #ffffff; +} + +.p-checkbox { + width: 22px; + height: 22px; +} + +.p-checkbox .p-checkbox-box { + border: 2px solid #ced4da; + background: #ffffff; + width: 22px; + height: 22px; + color: #495057; + border-radius: 6px; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-checkbox .p-checkbox-box .p-checkbox-icon { + transition-duration: 0.2s; + color: #ffffff; + font-size: 14px; +} + +.p-checkbox .p-checkbox-box.p-highlight { + border-color: #D7A86E; + background: #D7A86E; +} + +.p-checkbox .p-checkbox-box.p-highlight:not(.p-disabled):hover { + border-color: #C08135; + background: #C08135; + color: #ffffff; +} + +.p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover { + border-color: #D7A86E; +} + +.p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: #D7A86E; +} + +.p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover { + border-color: #C08135; + background: #C08135; + color: #ffffff; +} + +.p-checkbox.p-invalid>.p-checkbox-box { + border-color: #e24c4c; +} + +.p-input-filled .p-checkbox .p-checkbox-box { + background-color: #e9ecef; +} + +.p-input-filled .p-checkbox .p-checkbox-box.p-highlight { + background: #D7A86E; +} + +.p-input-filled .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover { + background-color: #e9ecef; +} + +.p-input-filled .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover { + background: #C08135; +} + +.p-chips .p-chips-multiple-container { + padding: 0.375rem 0.75rem; +} + +.p-chips .p-chips-multiple-container:not(.p-disabled):hover { + border-color: #D7A86E; +} + +.p-chips .p-chips-multiple-container:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: #D7A86E; +} + +.p-chips .p-chips-multiple-container .p-chips-token { + padding: 0.375rem 0.75rem; + margin-right: 0.5rem; + background: #EEF2FF; + color: #C08135; + border-radius: 6px; +} + +.p-chips .p-chips-multiple-container .p-chips-token .p-chips-token-icon { + margin-left: 0.5rem; +} + +.p-chips .p-chips-multiple-container .p-chips-input-token { + padding: 0.375rem 0; +} + +.p-chips .p-chips-multiple-container .p-chips-input-token input { + font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-size: 1rem; + color: #495057; + padding: 0; + margin: 0; +} + +.p-chips.p-invalid.p-component>.p-inputtext { + border-color: #e24c4c; +} + +.p-colorpicker-preview { + width: 2rem; + height: 2rem; +} + +.p-colorpicker-panel { + background: #323232; + border-color: #191919; +} + +.p-colorpicker-panel .p-colorpicker-color-handle, +.p-colorpicker-panel .p-colorpicker-hue-handle { + border-color: #ffffff; +} + +.p-colorpicker-overlay-panel { + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-dropdown { + background: #ffffff; + border: 1px solid #ced4da; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 6px; +} + +.p-dropdown:not(.p-disabled):hover { + border-color: #D7A86E; +} + +.p-dropdown:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: #D7A86E; +} + +.p-dropdown.p-dropdown-clearable .p-dropdown-label { + padding-right: 1.75rem; +} + +.p-dropdown .p-dropdown-label { + background: transparent; + border: 0 none; +} + +.p-dropdown .p-dropdown-label.p-placeholder { + color: #6c757d; +} + +.p-dropdown .p-dropdown-label:enabled:focus { + outline: 0 none; + box-shadow: none; +} + +.p-dropdown .p-dropdown-trigger { + background: transparent; + color: #6c757d; + width: 3rem; + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.p-dropdown .p-dropdown-clear-icon { + color: #6c757d; + right: 3rem; +} + +.p-dropdown.p-invalid.p-component { + border-color: #e24c4c; +} + +.p-dropdown-panel { + background: #ffffff; + color: #495057; + border: 0 none; + border-radius: 6px; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-dropdown-panel .p-dropdown-header { + padding: 0.75rem 1.25rem; + border-bottom: 1px solid #dee2e6; + color: #343a40; + background: #f8f9fa; + margin: 0; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-dropdown-panel .p-dropdown-header .p-dropdown-filter { + padding-right: 1.75rem; + margin-right: -1.75rem; +} + +.p-dropdown-panel .p-dropdown-header .p-dropdown-filter-icon { + right: 0.75rem; + color: #6c757d; +} + +.p-dropdown-panel .p-dropdown-header .p-dropdown-clearable-filter .p-dropdown-filter { + padding-right: 3.5rem; + margin-right: -3.5rem; +} + +.p-dropdown-panel .p-dropdown-header .p-dropdown-clearable-filter .p-dropdown-filter-clear-icon { + right: 2.5rem; +} + +.p-dropdown-panel .p-dropdown-items { + padding: 0.75rem 0; +} + +.p-dropdown-panel .p-dropdown-items .p-dropdown-item { + margin: 0; + padding: 0.75rem 1.25rem; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-dropdown-panel .p-dropdown-items .p-dropdown-item.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-dropdown-panel .p-dropdown-items .p-dropdown-item:not(.p-highlight):not(.p-disabled):hover { + color: #495057; + background: #e9ecef; +} + +.p-dropdown-panel .p-dropdown-items .p-dropdown-item-group { + margin: 0; + padding: 0.75rem 1.25rem; + color: #343a40; + background: #ffffff; + font-weight: 700; +} + +.p-dropdown-panel .p-dropdown-items .p-dropdown-empty-message { + padding: 0.75rem 1.25rem; + color: #495057; + background: transparent; +} + +.p-icon-input { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + background-color: #D7A86E; + border-color: #C08135; +} + +.p-input-filled .p-dropdown { + background: #e9ecef; +} + +.p-input-filled .p-dropdown:not(.p-disabled):hover { + background-color: #e9ecef; +} + +.p-input-filled .p-dropdown:not(.p-disabled).p-focus { + background-color: #ffffff; +} + +.p-editor-container .p-editor-toolbar { + background: #f8f9fa; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-editor-container .p-editor-toolbar.ql-snow { + border: 1px solid #dee2e6; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-stroke { + stroke: #6c757d; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-fill { + fill: #6c757d; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker .ql-picker-label { + border: 0 none; + color: #6c757d; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker .ql-picker-label:hover { + color: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker .ql-picker-label:hover .ql-stroke { + stroke: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker .ql-picker-label:hover .ql-fill { + fill: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label { + color: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke { + stroke: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill { + fill: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options { + background: #ffffff; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); + border-radius: 6px; + padding: 0.75rem 0; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options .ql-picker-item { + color: #495057; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options .ql-picker-item:hover { + color: #495057; + background: #e9ecef; +} + +.p-editor-container .p-editor-toolbar.ql-snow .ql-picker.ql-expanded:not(.ql-icon-picker) .ql-picker-item { + padding: 0.75rem 1.25rem; +} + +.p-editor-container .p-editor-content { + border-bottom-right-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-editor-container .p-editor-content.ql-snow { + border: 1px solid #dee2e6; +} + +.p-editor-container .p-editor-content .ql-editor { + background: #ffffff; + color: #495057; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-editor-container .ql-snow.ql-toolbar button:hover, +.p-editor-container .ql-snow.ql-toolbar button:focus { + color: #495057; +} + +.p-editor-container .ql-snow.ql-toolbar button:hover .ql-stroke, +.p-editor-container .ql-snow.ql-toolbar button:focus .ql-stroke { + stroke: #495057; +} + +.p-editor-container .ql-snow.ql-toolbar button:hover .ql-fill, +.p-editor-container .ql-snow.ql-toolbar button:focus .ql-fill { + fill: #495057; +} + +.p-editor-container .ql-snow.ql-toolbar button.ql-active, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-label.ql-active, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-item.ql-selected { + color: #D7A86E; +} + +.p-editor-container .ql-snow.ql-toolbar button.ql-active .ql-stroke, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke { + stroke: #D7A86E; +} + +.p-editor-container .ql-snow.ql-toolbar button.ql-active .ql-fill, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill { + fill: #D7A86E; +} + +.p-editor-container .ql-snow.ql-toolbar button.ql-active .ql-picker-label, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-picker-label, +.p-editor-container .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-picker-label { + color: #D7A86E; +} + +.p-inputgroup-addon { + background: #e9ecef; + color: #6c757d; + border-top: 1px solid #ced4da; + border-left: 1px solid #ced4da; + border-bottom: 1px solid #ced4da; + padding: 0.75rem 0.75rem; + min-width: 3rem; +} + +.p-inputgroup-addon:last-child { + border-right: 1px solid #ced4da; +} + +.p-inputgroup>.p-component, +.p-inputgroup>.p-inputwrapper>.p-inputtext, +.p-inputgroup>.p-float-label>.p-component { + border-radius: 0; + margin: 0; +} + +.p-inputgroup>.p-component+.p-inputgroup-addon, +.p-inputgroup>.p-inputwrapper>.p-inputtext+.p-inputgroup-addon, +.p-inputgroup>.p-float-label>.p-component+.p-inputgroup-addon { + border-left: 0 none; +} + +.p-inputgroup>.p-component:focus, +.p-inputgroup>.p-inputwrapper>.p-inputtext:focus, +.p-inputgroup>.p-float-label>.p-component:focus { + z-index: 1; +} + +.p-inputgroup>.p-component:focus~label, +.p-inputgroup>.p-inputwrapper>.p-inputtext:focus~label, +.p-inputgroup>.p-float-label>.p-component:focus~label { + z-index: 1; +} + +.p-inputgroup-addon:first-child, +.p-inputgroup button:first-child, +.p-inputgroup input:first-child, +.p-inputgroup>.p-inputwrapper:first-child, +.p-inputgroup>.p-inputwrapper:first-child>.p-inputtext { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-inputgroup .p-float-label:first-child input { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-inputgroup-addon:last-child, +.p-inputgroup button:last-child, +.p-inputgroup input:last-child, +.p-inputgroup>.p-inputwrapper:last-child, +.p-inputgroup>.p-inputwrapper:last-child>.p-inputtext { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.p-inputgroup .p-float-label:last-child input { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.p-fluid .p-inputgroup .p-button { + width: auto; +} + +.p-fluid .p-inputgroup .p-button.p-button-icon-only { + width: 3rem; +} + +.p-inputnumber.p-invalid.p-component>.p-inputtext { + border-color: #e24c4c; +} + +.p-inputswitch { + width: 3rem; + height: 1.75rem; +} + +.p-inputswitch .p-inputswitch-slider { + background: #ced4da; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 30px; +} + +.p-inputswitch .p-inputswitch-slider:before { + background: #ffffff; + width: 1.25rem; + height: 1.25rem; + left: 0.25rem; + margin-top: -0.625rem; + border-radius: 50%; + transition-duration: 0.2s; +} + +.p-inputswitch.p-inputswitch-checked .p-inputswitch-slider:before { + transform: translateX(1.25rem); +} + +.p-inputswitch.p-focus .p-inputswitch-slider { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-inputswitch:not(.p-disabled):hover .p-inputswitch-slider { + background: #b6bfc8; +} + +.p-inputswitch.p-inputswitch-checked .p-inputswitch-slider { + background: #D7A86E; +} + +.p-inputswitch.p-inputswitch-checked .p-inputswitch-slider:before { + background: #ffffff; +} + +.p-inputswitch.p-inputswitch-checked:not(.p-disabled):hover .p-inputswitch-slider { + background: #C08135; +} + +.p-inputswitch.p-invalid { + border-color: #e24c4c; +} + +.p-inputtext { + font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-size: 1rem; + color: #495057; + background: #ffffff; + padding: 0.75rem 0.75rem; + border: 1px solid #ced4da; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + appearance: none; + border-radius: 6px; +} + +.p-inputtext:enabled:hover { + border-color: #D7A86E; +} + +.p-inputtext:enabled:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: #D7A86E; +} + +.p-inputtext.p-invalid.p-component { + border-color: #e24c4c; +} + +.p-inputtext.p-inputtext-sm { + font-size: 0.875rem; + padding: 0.65625rem 0.65625rem; +} + +.p-inputtext.p-inputtext-lg { + font-size: 1.25rem; + padding: 0.9375rem 0.9375rem; +} + +.p-float-label>label { + left: 0.75rem; + color: #6c757d; + transition-duration: 0.2s; +} + +.p-float-label>label.p-error { + color: #e24c4c; +} + +.p-input-icon-left>i:first-of-type, +.p-input-icon-left>svg:first-of-type, +.p-input-icon-left>.p-input-prefix { + left: 0.75rem; + color: #6c757d; +} + +.p-input-icon-left>.p-inputtext { + padding-left: 2.5rem; +} + +.p-input-icon-left.p-float-label>label { + left: 2.5rem; +} + +.p-input-icon-right>i:last-of-type, +.p-input-icon-right>svg:last-of-type, +.p-input-icon-right>.p-input-suffix { + right: 0.75rem; + color: #6c757d; +} + +.p-input-icon-right>.p-inputtext { + padding-right: 2.5rem; +} + +::-webkit-input-placeholder { + color: #6c757d; +} + +:-moz-placeholder { + color: #6c757d; +} + +::-moz-placeholder { + color: #6c757d; +} + +:-ms-input-placeholder { + color: #6c757d; +} + +.p-input-filled .p-inputtext { + background-color: #e9ecef; +} + +.p-input-filled .p-inputtext:enabled:hover { + background-color: #e9ecef; +} + +.p-input-filled .p-inputtext:enabled:focus { + background-color: #ffffff; +} + +.p-inputtext-sm .p-inputtext { + font-size: 0.875rem; + padding: 0.65625rem 0.65625rem; +} + +.p-inputtext-lg .p-inputtext { + font-size: 1.25rem; + padding: 0.9375rem 0.9375rem; +} + +.p-listbox { + background: #ffffff; + color: #495057; + border: 1px solid #ced4da; + border-radius: 6px; +} + +.p-listbox .p-listbox-header { + padding: 0.75rem 1.25rem; + border-bottom: 1px solid #dee2e6; + color: #343a40; + background: #f8f9fa; + margin: 0; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-listbox .p-listbox-header .p-listbox-filter { + padding-right: 1.75rem; +} + +.p-listbox .p-listbox-header .p-listbox-filter-icon { + right: 0.75rem; + color: #6c757d; +} + +.p-listbox .p-listbox-list { + padding: 0.75rem 0; +} + +.p-listbox .p-listbox-list .p-listbox-item { + margin: 0; + padding: 0.75rem 1.25rem; + border: 0 none; + color: #495057; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-listbox .p-listbox-list .p-listbox-item.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-listbox .p-listbox-list .p-listbox-item:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-listbox .p-listbox-list .p-listbox-item-group { + margin: 0; + padding: 0.75rem 1.25rem; + color: #343a40; + background: #ffffff; + font-weight: 700; +} + +.p-listbox .p-listbox-list .p-listbox-empty-message { + padding: 0.75rem 1.25rem; + color: #495057; + background: transparent; +} + +.p-listbox:not(.p-disabled) .p-listbox-item:not(.p-highlight):not(.p-disabled):hover { + color: #495057; + background: #e9ecef; +} + +.p-listbox.p-invalid { + border-color: #e24c4c; +} + +.p-mention-panel { + background: #ffffff; + color: #495057; + border: 0 none; + border-radius: 6px; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-mention-panel .p-mention-items { + padding: 0.75rem 0; +} + +.p-mention-panel .p-mention-items .p-mention-item { + margin: 0; + padding: 0.75rem 1.25rem; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-mention-panel .p-mention-items .p-mention-item:hover { + color: #495057; + background: #e9ecef; +} + +.p-mention-panel .p-mention-items .p-mention-item.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-multiselect { + background: #ffffff; + border: 1px solid #ced4da; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 6px; +} + +.p-multiselect:not(.p-disabled):hover { + border-color: #D7A86E; +} + +.p-multiselect:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: #D7A86E; +} + +.p-multiselect.p-multiselect-clearable .p-multiselect-label { + padding-right: 1.75rem; +} + +.p-multiselect .p-multiselect-label { + padding: 0.75rem 0.75rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-multiselect .p-multiselect-label.p-placeholder { + color: #6c757d; +} + +.p-multiselect.p-multiselect-chip .p-multiselect-token { + padding: 0.375rem 0.75rem; + margin-right: 0.5rem; + background: #EEF2FF; + color: #C08135; + border-radius: 6px; +} + +.p-multiselect.p-multiselect-chip .p-multiselect-token .p-multiselect-token-icon { + margin-left: 0.5rem; +} + +.p-multiselect .p-multiselect-trigger { + background: transparent; + color: #6c757d; + width: 3rem; + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.p-multiselect .p-multiselect-clear-icon { + color: #6c757d; + right: 3rem; +} + +.p-multiselect.p-invalid.p-component { + border-color: #e24c4c; +} + +.p-inputwrapper-filled.p-multiselect.p-multiselect-chip .p-multiselect-label { + padding: 0.375rem 0.75rem; +} + +.p-inputwrapper-filled.p-multiselect.p-multiselect-chip .p-multiselect-label.p-multiselect-items-label { + padding: 0.75rem 0.75rem; +} + +.p-inputwrapper-filled.p-multiselect.p-multiselect-clearable .p-multiselect-label { + padding-right: 1.75rem; +} + +.p-multiselect-panel { + background: #ffffff; + color: #495057; + border: 0 none; + border-radius: 6px; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-multiselect-panel .p-multiselect-header { + padding: 0.75rem 1.25rem; + border-bottom: 1px solid #dee2e6; + color: #343a40; + background: #f8f9fa; + margin: 0; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-filter-container { + margin: 0 0.5rem; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-filter-container .p-inputtext { + padding-right: 1.75rem; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-filter-container .p-multiselect-filter-icon { + right: 0.75rem; + color: #6c757d; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-close { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-close:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-multiselect-panel .p-multiselect-header .p-multiselect-close:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-multiselect-panel .p-multiselect-items { + padding: 0.75rem 0; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item { + margin: 0; + padding: 0.75rem 1.25rem; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item:not(.p-highlight):not(.p-disabled):hover { + color: #495057; + background: #e9ecef; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item .p-checkbox { + margin-right: 0.5rem; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-item-group { + margin: 0; + padding: 0.75rem 1.25rem; + color: #343a40; + background: #ffffff; + font-weight: 700; +} + +.p-multiselect-panel .p-multiselect-items .p-multiselect-empty-message { + padding: 0.75rem 1.25rem; + color: #495057; + background: transparent; +} + +.p-input-filled .p-multiselect { + background: #e9ecef; +} + +.p-input-filled .p-multiselect:not(.p-disabled):hover { + background-color: #e9ecef; +} + +.p-input-filled .p-multiselect:not(.p-disabled).p-focus { + background-color: #ffffff; +} + +.p-password.p-invalid.p-component>.p-inputtext { + border-color: #e24c4c; +} + +.p-password-panel { + padding: 1.25rem; + background: #ffffff; + color: #495057; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); + border-radius: 6px; +} + +.p-password-panel .p-password-meter { + margin-bottom: 0.5rem; + background: #dee2e6; +} + +.p-password-panel .p-password-meter .p-password-strength.weak { + background: #ea5455; +} + +.p-password-panel .p-password-meter .p-password-strength.medium { + background: #ff9f42; +} + +.p-password-panel .p-password-meter .p-password-strength.strong { + background: #29c76f; +} + +.p-radiobutton { + width: 22px; + height: 22px; +} + +.p-radiobutton .p-radiobutton-box { + border: 2px solid #ced4da; + background: #ffffff; + width: 22px; + height: 22px; + color: #495057; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-radiobutton .p-radiobutton-box:not(.p-disabled):not(.p-highlight):hover { + border-color: #D7A86E; +} + +.p-radiobutton .p-radiobutton-box:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: #D7A86E; +} + +.p-radiobutton .p-radiobutton-box .p-radiobutton-icon { + width: 12px; + height: 12px; + transition-duration: 0.2s; + background-color: #ffffff; +} + +.p-radiobutton .p-radiobutton-box.p-highlight { + border-color: #D7A86E; + background: #D7A86E; +} + +.p-radiobutton .p-radiobutton-box.p-highlight:not(.p-disabled):hover { + border-color: #C08135; + background: #C08135; + color: #ffffff; +} + +.p-radiobutton.p-invalid>.p-radiobutton-box { + border-color: #e24c4c; +} + +.p-radiobutton:focus { + outline: 0 none; +} + +.p-input-filled .p-radiobutton .p-radiobutton-box { + background-color: #e9ecef; +} + +.p-input-filled .p-radiobutton .p-radiobutton-box:not(.p-disabled):hover { + background-color: #e9ecef; +} + +.p-input-filled .p-radiobutton .p-radiobutton-box.p-highlight { + background: #D7A86E; +} + +.p-input-filled .p-radiobutton .p-radiobutton-box.p-highlight:not(.p-disabled):hover { + background: #C08135; +} + +.p-rating .p-rating-icon { + color: #495057; + margin-left: 0.5rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + font-size: 1.143rem; +} + +.p-rating .p-rating-icon.p-rating-cancel { + color: #ea5455; +} + +.p-rating .p-rating-icon:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-rating .p-rating-icon:first-child { + margin-left: 0; +} + +.p-rating .p-rating-icon.pi-star-fill { + color: #D7A86E; +} + +.p-rating:not(.p-disabled):not(.p-readonly) .p-rating-icon:hover { + color: #D7A86E; +} + +.p-rating:not(.p-disabled):not(.p-readonly) .p-rating-icon.p-rating-cancel:hover { + color: #e73d3e; +} + +.p-selectbutton .p-button { + background: #ffffff; + border: 1px solid #ced4da; + color: #495057; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-selectbutton .p-button .p-button-icon-left, +.p-selectbutton .p-button .p-button-icon-right { + color: #6c757d; +} + +.p-selectbutton .p-button:not(.p-disabled):not(.p-highlight):hover { + background: #e9ecef; + border-color: #ced4da; + color: #495057; +} + +.p-selectbutton .p-button:not(.p-disabled):not(.p-highlight):hover .p-button-icon-left, +.p-selectbutton .p-button:not(.p-disabled):not(.p-highlight):hover .p-button-icon-right { + color: #343a40; +} + +.p-selectbutton .p-button.p-highlight { + background: #D7A86E; + border-color: #D7A86E; + color: #ffffff; +} + +.p-selectbutton .p-button.p-highlight .p-button-icon-left, +.p-selectbutton .p-button.p-highlight .p-button-icon-right { + color: #ffffff; +} + +.p-selectbutton .p-button.p-highlight:hover { + background: #C08135; + border-color: #C08135; + color: #ffffff; +} + +.p-selectbutton .p-button.p-highlight:hover .p-button-icon-left, +.p-selectbutton .p-button.p-highlight:hover .p-button-icon-right { + color: #ffffff; +} + +.p-selectbutton.p-invalid>.p-button { + border-color: #e24c4c; +} + +.p-slider { + background: #dee2e6; + border: 0 none; + border-radius: 6px; +} + +.p-slider.p-slider-horizontal { + height: 0.286rem; +} + +.p-slider.p-slider-horizontal .p-slider-handle { + margin-top: -0.5715rem; + margin-left: -0.5715rem; +} + +.p-slider.p-slider-vertical { + width: 0.286rem; +} + +.p-slider.p-slider-vertical .p-slider-handle { + margin-left: -0.5715rem; + margin-bottom: -0.5715rem; +} + +.p-slider .p-slider-handle { + height: 1.143rem; + width: 1.143rem; + background: #ffffff; + border: 2px solid #D7A86E; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-slider .p-slider-handle:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-slider .p-slider-range { + background: #D7A86E; +} + +.p-slider:not(.p-disabled) .p-slider-handle:hover { + background: #D7A86E; + border-color: #D7A86E; +} + +.p-treeselect { + background: #ffffff; + border: 1px solid #ced4da; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 6px; +} + +.p-treeselect:not(.p-disabled):hover { + border-color: #D7A86E; +} + +.p-treeselect:not(.p-disabled).p-focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: #D7A86E; +} + +.p-treeselect .p-treeselect-label { + padding: 0.75rem 0.75rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-treeselect .p-treeselect-label.p-placeholder { + color: #6c757d; +} + +.p-treeselect.p-treeselect-chip .p-treeselect-token { + padding: 0.375rem 0.75rem; + margin-right: 0.5rem; + background: #dee2e6; + color: #495057; + border-radius: 16px; +} + +.p-treeselect .p-treeselect-trigger { + background: transparent; + color: #6c757d; + width: 3rem; + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.p-treeselect.p-invalid.p-component { + border-color: #e24c4c; +} + +.p-inputwrapper-filled.p-treeselect.p-treeselect-chip .p-treeselect-label { + padding: 0.375rem 0.75rem; +} + +.p-treeselect-panel { + background: #ffffff; + color: #495057; + border: 0 none; + border-radius: 6px; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-treeselect-panel .p-treeselect-header { + padding: 0.75rem 1.25rem; + border-bottom: 1px solid #dee2e6; + color: #343a40; + background: #f8f9fa; + margin: 0; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-treeselect-panel .p-treeselect-header .p-treeselect-filter-container { + margin-right: 0.5rem; +} + +.p-treeselect-panel .p-treeselect-header .p-treeselect-filter-container .p-treeselect-filter { + padding-right: 1.75rem; +} + +.p-treeselect-panel .p-treeselect-header .p-treeselect-filter-container .p-treeselect-filter-icon { + right: 0.75rem; + color: #6c757d; +} + +.p-treeselect-panel .p-treeselect-header .p-treeselect-filter-container.p-treeselect-clearable-filter .p-treeselect-filter { + padding-right: 3.5rem; +} + +.p-treeselect-panel .p-treeselect-header .p-treeselect-filter-container.p-treeselect-clearable-filter .p-treeselect-filter-clear-icon { + right: 2.5rem; +} + +.p-treeselect-panel .p-treeselect-header .p-treeselect-close { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-treeselect-panel .p-treeselect-header .p-treeselect-close:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-treeselect-panel .p-treeselect-header .p-treeselect-close:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-treeselect-panel .p-treeselect-items-wrapper .p-tree { + border: 0 none; +} + +.p-treeselect-panel .p-treeselect-items-wrapper .p-treeselect-empty-message { + padding: 0.75rem 1.25rem; + color: #495057; + background: transparent; +} + +.p-input-filled .p-treeselect { + background: #e9ecef; +} + +.p-input-filled .p-treeselect:not(.p-disabled):hover { + background-color: #e9ecef; +} + +.p-input-filled .p-treeselect:not(.p-disabled).p-focus { + background-color: #ffffff; +} + +.p-togglebutton.p-button { + background: #ffffff; + border: 1px solid #ced4da; + color: #495057; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-togglebutton.p-button .p-button-icon-left, +.p-togglebutton.p-button .p-button-icon-right { + color: #6c757d; +} + +.p-togglebutton.p-button:not(.p-disabled):not(.p-highlight):hover { + background: #e9ecef; + border-color: #ced4da; + color: #495057; +} + +.p-togglebutton.p-button:not(.p-disabled):not(.p-highlight):hover .p-button-icon-left, +.p-togglebutton.p-button:not(.p-disabled):not(.p-highlight):hover .p-button-icon-right { + color: #343a40; +} + +.p-togglebutton.p-button.p-highlight { + background: #D7A86E; + border-color: #D7A86E; + color: #ffffff; +} + +.p-togglebutton.p-button.p-highlight .p-button-icon-left, +.p-togglebutton.p-button.p-highlight .p-button-icon-right { + color: #ffffff; +} + +.p-togglebutton.p-button.p-highlight:hover { + background: #C08135; + border-color: #C08135; + color: #ffffff; +} + +.p-togglebutton.p-button.p-highlight:hover .p-button-icon-left, +.p-togglebutton.p-button.p-highlight:hover .p-button-icon-right { + color: #ffffff; +} + +.p-togglebutton.p-button.p-invalid>.p-button { + border-color: #e24c4c; +} + +.p-button { + color: #ffffff; + background: #D7A86E; + border: 1px solid #D7A86E; + padding: 0.75rem 1.25rem; + font-size: 1rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 6px; +} + +.p-button:enabled:hover, +.p-button:not(button):not(a):not(.p-disabled):hover { + background: #C08135; + color: #ffffff; + border-color: #C08135; +} + +.p-button:enabled:active, +.p-button:not(button):not(a):not(.p-disabled):active { + background: #C08135; + color: #ffffff; + border-color: #C08135; +} + +.p-button.p-button-outlined { + background-color: transparent; + color: #D7A86E; + border: 1px solid; +} + +.p-button.p-button-outlined:enabled:hover, +.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover { + background: rgba(99, 102, 241, 0.04); + color: #D7A86E; + border: 1px solid; +} + +.p-button.p-button-outlined:enabled:active, +.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active { + background: rgba(99, 102, 241, 0.16); + color: #D7A86E; + border: 1px solid; +} + +.p-button.p-button-outlined.p-button-plain { + color: #6c757d; + border-color: #6c757d; +} + +.p-button.p-button-outlined.p-button-plain:enabled:hover, +.p-button.p-button-outlined.p-button-plain:not(button):not(a):not(.p-disabled):hover { + background: #e9ecef; + color: #6c757d; +} + +.p-button.p-button-outlined.p-button-plain:enabled:active, +.p-button.p-button-outlined.p-button-plain:not(button):not(a):not(.p-disabled):active { + background: #dee2e6; + color: #6c757d; +} + +.p-button.p-button-text { + background-color: transparent; + color: #D7A86E; + border-color: transparent; +} + +.p-button.p-button-text:enabled:hover, +.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover { + background: rgba(99, 102, 241, 0.04); + color: #D7A86E; + border-color: transparent; +} + +.p-button.p-button-text:enabled:active, +.p-button.p-button-text:not(button):not(a):not(.p-disabled):active { + background: rgba(99, 102, 241, 0.16); + color: #D7A86E; + border-color: transparent; +} + +.p-button.p-button-text.p-button-plain { + color: #6c757d; +} + +.p-button.p-button-text.p-button-plain:enabled:hover, +.p-button.p-button-text.p-button-plain:not(button):not(a):not(.p-disabled):hover { + background: #e9ecef; + color: #6c757d; +} + +.p-button.p-button-text.p-button-plain:enabled:active, +.p-button.p-button-text.p-button-plain:not(button):not(a):not(.p-disabled):active { + background: #dee2e6; + color: #6c757d; +} + +.p-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-button .p-button-icon-left { + margin-right: 0.5rem; +} + +.p-button .p-button-icon-right { + margin-left: 0.5rem; +} + +.p-button .p-button-icon-bottom { + margin-top: 0.5rem; +} + +.p-button .p-button-icon-top { + margin-bottom: 0.5rem; +} + +.p-button .p-badge { + margin-left: 0.5rem; + min-width: 1rem; + height: 1rem; + line-height: 1rem; + color: #D7A86E; + background-color: #ffffff; +} + +.p-button.p-button-raised { + box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12); +} + +.p-button.p-button-rounded { + border-radius: 2rem; +} + +.p-button.p-button-icon-only { + width: 3rem; + padding: 0.75rem 0; +} + +.p-button.p-button-icon-only .p-button-icon-left, +.p-button.p-button-icon-only .p-button-icon-right { + margin: 0; +} + +.p-button.p-button-icon-only.p-button-rounded { + border-radius: 50%; + height: 3rem; +} + +.p-button.p-button-sm { + font-size: 0.875rem; + padding: 0.65625rem 1.09375rem; +} + +.p-button.p-button-sm .p-button-icon { + font-size: 0.875rem; +} + +.p-button.p-button-lg { + font-size: 1.25rem; + padding: 0.9375rem 1.5625rem; +} + +.p-button.p-button-lg .p-button-icon { + font-size: 1.25rem; +} + +.p-button.p-button-loading-label-only.p-button-loading-left .p-button-label { + margin-left: 0.5rem; +} + +.p-button.p-button-loading-label-only.p-button-loading-right .p-button-label { + margin-right: 0.5rem; +} + +.p-button.p-button-loading-label-only.p-button-loading-top .p-button-label { + margin-top: 0.5rem; +} + +.p-button.p-button-loading-label-only.p-button-loading-bottom .p-button-label { + margin-bottom: 0.5rem; +} + +.p-button.p-button-loading-label-only .p-button-loading-icon { + margin: 0; +} + +.p-fluid .p-button { + width: 100%; +} + +.p-fluid .p-button-icon-only { + width: 3rem; +} + +.p-fluid .p-buttonset { + display: flex; +} + +.p-fluid .p-buttonset .p-button { + flex: 1; +} + +.p-button.p-button-secondary, +.p-buttonset.p-button-secondary>.p-button, +.p-splitbutton.p-button-secondary>.p-button, +.p-fileupload-choose.p-button-secondary { + color: #ffffff; + background: #64748B; + border: 1px solid #64748B; +} + +.p-button.p-button-secondary:enabled:hover, +.p-button.p-button-secondary:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-secondary>.p-button:enabled:hover, +.p-buttonset.p-button-secondary>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-secondary>.p-button:enabled:hover, +.p-splitbutton.p-button-secondary>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-secondary:enabled:hover, +.p-fileupload-choose.p-button-secondary:not(button):not(a):not(.p-disabled):hover { + background: #475569; + color: #ffffff; + border-color: #475569; +} + +.p-button.p-button-secondary:enabled:focus, +.p-button.p-button-secondary:not(button):not(a):not(.p-disabled):focus, +.p-buttonset.p-button-secondary>.p-button:enabled:focus, +.p-buttonset.p-button-secondary>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-splitbutton.p-button-secondary>.p-button:enabled:focus, +.p-splitbutton.p-button-secondary>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-fileupload-choose.p-button-secondary:enabled:focus, +.p-fileupload-choose.p-button-secondary:not(button):not(a):not(.p-disabled):focus { + box-shadow: 0 0 0 0.2rem #E2E8F0; +} + +.p-button.p-button-secondary:enabled:active, +.p-button.p-button-secondary:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-secondary>.p-button:enabled:active, +.p-buttonset.p-button-secondary>.p-button:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-secondary>.p-button:enabled:active, +.p-splitbutton.p-button-secondary>.p-button:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-secondary:enabled:active, +.p-fileupload-choose.p-button-secondary:not(button):not(a):not(.p-disabled):active { + background: #334155; + color: #ffffff; + border-color: #334155; +} + +.p-button.p-button-secondary.p-button-outlined, +.p-buttonset.p-button-secondary>.p-button.p-button-outlined, +.p-splitbutton.p-button-secondary>.p-button.p-button-outlined, +.p-fileupload-choose.p-button-secondary.p-button-outlined { + background-color: transparent; + color: #64748B; + border: 1px solid; +} + +.p-button.p-button-secondary.p-button-outlined:enabled:hover, +.p-button.p-button-secondary.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-secondary>.p-button.p-button-outlined:enabled:hover, +.p-buttonset.p-button-secondary>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-secondary>.p-button.p-button-outlined:enabled:hover, +.p-splitbutton.p-button-secondary>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-secondary.p-button-outlined:enabled:hover, +.p-fileupload-choose.p-button-secondary.p-button-outlined:not(button):not(a):not(.p-disabled):hover { + background: rgba(100, 116, 139, 0.04); + color: #64748B; + border: 1px solid; +} + +.p-button.p-button-secondary.p-button-outlined:enabled:active, +.p-button.p-button-secondary.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-secondary>.p-button.p-button-outlined:enabled:active, +.p-buttonset.p-button-secondary>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-secondary>.p-button.p-button-outlined:enabled:active, +.p-splitbutton.p-button-secondary>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-secondary.p-button-outlined:enabled:active, +.p-fileupload-choose.p-button-secondary.p-button-outlined:not(button):not(a):not(.p-disabled):active { + background: rgba(100, 116, 139, 0.16); + color: #64748B; + border: 1px solid; +} + +.p-button.p-button-secondary.p-button-text, +.p-buttonset.p-button-secondary>.p-button.p-button-text, +.p-splitbutton.p-button-secondary>.p-button.p-button-text, +.p-fileupload-choose.p-button-secondary.p-button-text { + background-color: transparent; + color: #64748B; + border-color: transparent; +} + +.p-button.p-button-secondary.p-button-text:enabled:hover, +.p-button.p-button-secondary.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-secondary>.p-button.p-button-text:enabled:hover, +.p-buttonset.p-button-secondary>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-secondary>.p-button.p-button-text:enabled:hover, +.p-splitbutton.p-button-secondary>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-secondary.p-button-text:enabled:hover, +.p-fileupload-choose.p-button-secondary.p-button-text:not(button):not(a):not(.p-disabled):hover { + background: rgba(100, 116, 139, 0.04); + border-color: transparent; + color: #64748B; +} + +.p-button.p-button-secondary.p-button-text:enabled:active, +.p-button.p-button-secondary.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-secondary>.p-button.p-button-text:enabled:active, +.p-buttonset.p-button-secondary>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-secondary>.p-button.p-button-text:enabled:active, +.p-splitbutton.p-button-secondary>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-secondary.p-button-text:enabled:active, +.p-fileupload-choose.p-button-secondary.p-button-text:not(button):not(a):not(.p-disabled):active { + background: rgba(100, 116, 139, 0.16); + border-color: transparent; + color: #64748B; +} + +.p-button.p-button-info, +.p-buttonset.p-button-info>.p-button, +.p-splitbutton.p-button-info>.p-button, +.p-fileupload-choose.p-button-info { + color: #ffffff; + background: #3B82F6; + border: 1px solid #3B82F6; +} + +.p-button.p-button-info:enabled:hover, +.p-button.p-button-info:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-info>.p-button:enabled:hover, +.p-buttonset.p-button-info>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-info>.p-button:enabled:hover, +.p-splitbutton.p-button-info>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-info:enabled:hover, +.p-fileupload-choose.p-button-info:not(button):not(a):not(.p-disabled):hover { + background: #2563EB; + color: #ffffff; + border-color: #2563EB; +} + +.p-button.p-button-info:enabled:focus, +.p-button.p-button-info:not(button):not(a):not(.p-disabled):focus, +.p-buttonset.p-button-info>.p-button:enabled:focus, +.p-buttonset.p-button-info>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-splitbutton.p-button-info>.p-button:enabled:focus, +.p-splitbutton.p-button-info>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-fileupload-choose.p-button-info:enabled:focus, +.p-fileupload-choose.p-button-info:not(button):not(a):not(.p-disabled):focus { + box-shadow: 0 0 0 0.2rem #BFDBFE; +} + +.p-button.p-button-info:enabled:active, +.p-button.p-button-info:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-info>.p-button:enabled:active, +.p-buttonset.p-button-info>.p-button:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-info>.p-button:enabled:active, +.p-splitbutton.p-button-info>.p-button:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-info:enabled:active, +.p-fileupload-choose.p-button-info:not(button):not(a):not(.p-disabled):active { + background: #1D4ED8; + color: #ffffff; + border-color: #1D4ED8; +} + +.p-button.p-button-info.p-button-outlined, +.p-buttonset.p-button-info>.p-button.p-button-outlined, +.p-splitbutton.p-button-info>.p-button.p-button-outlined, +.p-fileupload-choose.p-button-info.p-button-outlined { + background-color: transparent; + color: #3B82F6; + border: 1px solid; +} + +.p-button.p-button-info.p-button-outlined:enabled:hover, +.p-button.p-button-info.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-info>.p-button.p-button-outlined:enabled:hover, +.p-buttonset.p-button-info>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-info>.p-button.p-button-outlined:enabled:hover, +.p-splitbutton.p-button-info>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-info.p-button-outlined:enabled:hover, +.p-fileupload-choose.p-button-info.p-button-outlined:not(button):not(a):not(.p-disabled):hover { + background: rgba(59, 130, 246, 0.04); + color: #3B82F6; + border: 1px solid; +} + +.p-button.p-button-info.p-button-outlined:enabled:active, +.p-button.p-button-info.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-info>.p-button.p-button-outlined:enabled:active, +.p-buttonset.p-button-info>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-info>.p-button.p-button-outlined:enabled:active, +.p-splitbutton.p-button-info>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-info.p-button-outlined:enabled:active, +.p-fileupload-choose.p-button-info.p-button-outlined:not(button):not(a):not(.p-disabled):active { + background: rgba(59, 130, 246, 0.16); + color: #3B82F6; + border: 1px solid; +} + +.p-button.p-button-info.p-button-text, +.p-buttonset.p-button-info>.p-button.p-button-text, +.p-splitbutton.p-button-info>.p-button.p-button-text, +.p-fileupload-choose.p-button-info.p-button-text { + background-color: transparent; + color: #3B82F6; + border-color: transparent; +} + +.p-button.p-button-info.p-button-text:enabled:hover, +.p-button.p-button-info.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-info>.p-button.p-button-text:enabled:hover, +.p-buttonset.p-button-info>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-info>.p-button.p-button-text:enabled:hover, +.p-splitbutton.p-button-info>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-info.p-button-text:enabled:hover, +.p-fileupload-choose.p-button-info.p-button-text:not(button):not(a):not(.p-disabled):hover { + background: rgba(59, 130, 246, 0.04); + border-color: transparent; + color: #3B82F6; +} + +.p-button.p-button-info.p-button-text:enabled:active, +.p-button.p-button-info.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-info>.p-button.p-button-text:enabled:active, +.p-buttonset.p-button-info>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-info>.p-button.p-button-text:enabled:active, +.p-splitbutton.p-button-info>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-info.p-button-text:enabled:active, +.p-fileupload-choose.p-button-info.p-button-text:not(button):not(a):not(.p-disabled):active { + background: rgba(59, 130, 246, 0.16); + border-color: transparent; + color: #3B82F6; +} + +.p-button.p-button-success, +.p-buttonset.p-button-success>.p-button, +.p-splitbutton.p-button-success>.p-button, +.p-fileupload-choose.p-button-success { + color: #ffffff; + background: #22C55E; + border: 1px solid #22C55E; +} + +.p-button.p-button-success:enabled:hover, +.p-button.p-button-success:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-success>.p-button:enabled:hover, +.p-buttonset.p-button-success>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-success>.p-button:enabled:hover, +.p-splitbutton.p-button-success>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-success:enabled:hover, +.p-fileupload-choose.p-button-success:not(button):not(a):not(.p-disabled):hover { + background: #16A34A; + color: #ffffff; + border-color: #16A34A; +} + +.p-button.p-button-success:enabled:focus, +.p-button.p-button-success:not(button):not(a):not(.p-disabled):focus, +.p-buttonset.p-button-success>.p-button:enabled:focus, +.p-buttonset.p-button-success>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-splitbutton.p-button-success>.p-button:enabled:focus, +.p-splitbutton.p-button-success>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-fileupload-choose.p-button-success:enabled:focus, +.p-fileupload-choose.p-button-success:not(button):not(a):not(.p-disabled):focus { + box-shadow: 0 0 0 0.2rem #BBF7D0; +} + +.p-button.p-button-success:enabled:active, +.p-button.p-button-success:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-success>.p-button:enabled:active, +.p-buttonset.p-button-success>.p-button:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-success>.p-button:enabled:active, +.p-splitbutton.p-button-success>.p-button:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-success:enabled:active, +.p-fileupload-choose.p-button-success:not(button):not(a):not(.p-disabled):active { + background: #15803D; + color: #ffffff; + border-color: #15803D; +} + +.p-button.p-button-success.p-button-outlined, +.p-buttonset.p-button-success>.p-button.p-button-outlined, +.p-splitbutton.p-button-success>.p-button.p-button-outlined, +.p-fileupload-choose.p-button-success.p-button-outlined { + background-color: transparent; + color: #22C55E; + border: 1px solid; +} + +.p-button.p-button-success.p-button-outlined:enabled:hover, +.p-button.p-button-success.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-success>.p-button.p-button-outlined:enabled:hover, +.p-buttonset.p-button-success>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-success>.p-button.p-button-outlined:enabled:hover, +.p-splitbutton.p-button-success>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-success.p-button-outlined:enabled:hover, +.p-fileupload-choose.p-button-success.p-button-outlined:not(button):not(a):not(.p-disabled):hover { + background: rgba(34, 197, 94, 0.04); + color: #22C55E; + border: 1px solid; +} + +.p-button.p-button-success.p-button-outlined:enabled:active, +.p-button.p-button-success.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-success>.p-button.p-button-outlined:enabled:active, +.p-buttonset.p-button-success>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-success>.p-button.p-button-outlined:enabled:active, +.p-splitbutton.p-button-success>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-success.p-button-outlined:enabled:active, +.p-fileupload-choose.p-button-success.p-button-outlined:not(button):not(a):not(.p-disabled):active { + background: rgba(34, 197, 94, 0.16); + color: #22C55E; + border: 1px solid; +} + +.p-button.p-button-success.p-button-text, +.p-buttonset.p-button-success>.p-button.p-button-text, +.p-splitbutton.p-button-success>.p-button.p-button-text, +.p-fileupload-choose.p-button-success.p-button-text { + background-color: transparent; + color: #22C55E; + border-color: transparent; +} + +.p-button.p-button-success.p-button-text:enabled:hover, +.p-button.p-button-success.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-success>.p-button.p-button-text:enabled:hover, +.p-buttonset.p-button-success>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-success>.p-button.p-button-text:enabled:hover, +.p-splitbutton.p-button-success>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-success.p-button-text:enabled:hover, +.p-fileupload-choose.p-button-success.p-button-text:not(button):not(a):not(.p-disabled):hover { + background: rgba(34, 197, 94, 0.04); + border-color: transparent; + color: #22C55E; +} + +.p-button.p-button-success.p-button-text:enabled:active, +.p-button.p-button-success.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-success>.p-button.p-button-text:enabled:active, +.p-buttonset.p-button-success>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-success>.p-button.p-button-text:enabled:active, +.p-splitbutton.p-button-success>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-success.p-button-text:enabled:active, +.p-fileupload-choose.p-button-success.p-button-text:not(button):not(a):not(.p-disabled):active { + background: rgba(34, 197, 94, 0.16); + border-color: transparent; + color: #22C55E; +} + +.p-button.p-button-warning, +.p-buttonset.p-button-warning>.p-button, +.p-splitbutton.p-button-warning>.p-button, +.p-fileupload-choose.p-button-warning { + color: #ffffff; + background: #F59E0B; + border: 1px solid #F59E0B; +} + +.p-button.p-button-warning:enabled:hover, +.p-button.p-button-warning:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-warning>.p-button:enabled:hover, +.p-buttonset.p-button-warning>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-warning>.p-button:enabled:hover, +.p-splitbutton.p-button-warning>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-warning:enabled:hover, +.p-fileupload-choose.p-button-warning:not(button):not(a):not(.p-disabled):hover { + background: #D97706; + color: #ffffff; + border-color: #D97706; +} + +.p-button.p-button-warning:enabled:focus, +.p-button.p-button-warning:not(button):not(a):not(.p-disabled):focus, +.p-buttonset.p-button-warning>.p-button:enabled:focus, +.p-buttonset.p-button-warning>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-splitbutton.p-button-warning>.p-button:enabled:focus, +.p-splitbutton.p-button-warning>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-fileupload-choose.p-button-warning:enabled:focus, +.p-fileupload-choose.p-button-warning:not(button):not(a):not(.p-disabled):focus { + box-shadow: 0 0 0 0.2rem #FDE68A; +} + +.p-button.p-button-warning:enabled:active, +.p-button.p-button-warning:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-warning>.p-button:enabled:active, +.p-buttonset.p-button-warning>.p-button:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-warning>.p-button:enabled:active, +.p-splitbutton.p-button-warning>.p-button:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-warning:enabled:active, +.p-fileupload-choose.p-button-warning:not(button):not(a):not(.p-disabled):active { + background: #B45309; + color: #ffffff; + border-color: #B45309; +} + +.p-button.p-button-warning.p-button-outlined, +.p-buttonset.p-button-warning>.p-button.p-button-outlined, +.p-splitbutton.p-button-warning>.p-button.p-button-outlined, +.p-fileupload-choose.p-button-warning.p-button-outlined { + background-color: transparent; + color: #F59E0B; + border: 1px solid; +} + +.p-button.p-button-warning.p-button-outlined:enabled:hover, +.p-button.p-button-warning.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-warning>.p-button.p-button-outlined:enabled:hover, +.p-buttonset.p-button-warning>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-warning>.p-button.p-button-outlined:enabled:hover, +.p-splitbutton.p-button-warning>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-warning.p-button-outlined:enabled:hover, +.p-fileupload-choose.p-button-warning.p-button-outlined:not(button):not(a):not(.p-disabled):hover { + background: rgba(245, 158, 11, 0.04); + color: #F59E0B; + border: 1px solid; +} + +.p-button.p-button-warning.p-button-outlined:enabled:active, +.p-button.p-button-warning.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-warning>.p-button.p-button-outlined:enabled:active, +.p-buttonset.p-button-warning>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-warning>.p-button.p-button-outlined:enabled:active, +.p-splitbutton.p-button-warning>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-warning.p-button-outlined:enabled:active, +.p-fileupload-choose.p-button-warning.p-button-outlined:not(button):not(a):not(.p-disabled):active { + background: rgba(245, 158, 11, 0.16); + color: #F59E0B; + border: 1px solid; +} + +.p-button.p-button-warning.p-button-text, +.p-buttonset.p-button-warning>.p-button.p-button-text, +.p-splitbutton.p-button-warning>.p-button.p-button-text, +.p-fileupload-choose.p-button-warning.p-button-text { + background-color: transparent; + color: #F59E0B; + border-color: transparent; +} + +.p-button.p-button-warning.p-button-text:enabled:hover, +.p-button.p-button-warning.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-warning>.p-button.p-button-text:enabled:hover, +.p-buttonset.p-button-warning>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-warning>.p-button.p-button-text:enabled:hover, +.p-splitbutton.p-button-warning>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-warning.p-button-text:enabled:hover, +.p-fileupload-choose.p-button-warning.p-button-text:not(button):not(a):not(.p-disabled):hover { + background: rgba(245, 158, 11, 0.04); + border-color: transparent; + color: #F59E0B; +} + +.p-button.p-button-warning.p-button-text:enabled:active, +.p-button.p-button-warning.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-warning>.p-button.p-button-text:enabled:active, +.p-buttonset.p-button-warning>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-warning>.p-button.p-button-text:enabled:active, +.p-splitbutton.p-button-warning>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-warning.p-button-text:enabled:active, +.p-fileupload-choose.p-button-warning.p-button-text:not(button):not(a):not(.p-disabled):active { + background: rgba(245, 158, 11, 0.16); + border-color: transparent; + color: #F59E0B; +} + +.p-button.p-button-help, +.p-buttonset.p-button-help>.p-button, +.p-splitbutton.p-button-help>.p-button, +.p-fileupload-choose.p-button-help { + color: #ffffff; + background: #A855F7; + border: 1px solid #A855F7; +} + +.p-button.p-button-help:enabled:hover, +.p-button.p-button-help:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-help>.p-button:enabled:hover, +.p-buttonset.p-button-help>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-help>.p-button:enabled:hover, +.p-splitbutton.p-button-help>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-help:enabled:hover, +.p-fileupload-choose.p-button-help:not(button):not(a):not(.p-disabled):hover { + background: #9333EA; + color: #ffffff; + border-color: #9333EA; +} + +.p-button.p-button-help:enabled:focus, +.p-button.p-button-help:not(button):not(a):not(.p-disabled):focus, +.p-buttonset.p-button-help>.p-button:enabled:focus, +.p-buttonset.p-button-help>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-splitbutton.p-button-help>.p-button:enabled:focus, +.p-splitbutton.p-button-help>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-fileupload-choose.p-button-help:enabled:focus, +.p-fileupload-choose.p-button-help:not(button):not(a):not(.p-disabled):focus { + box-shadow: 0 0 0 0.2rem #E9D5FF; +} + +.p-button.p-button-help:enabled:active, +.p-button.p-button-help:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-help>.p-button:enabled:active, +.p-buttonset.p-button-help>.p-button:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-help>.p-button:enabled:active, +.p-splitbutton.p-button-help>.p-button:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-help:enabled:active, +.p-fileupload-choose.p-button-help:not(button):not(a):not(.p-disabled):active { + background: #7E22CE; + color: #ffffff; + border-color: #7E22CE; +} + +.p-button.p-button-help.p-button-outlined, +.p-buttonset.p-button-help>.p-button.p-button-outlined, +.p-splitbutton.p-button-help>.p-button.p-button-outlined, +.p-fileupload-choose.p-button-help.p-button-outlined { + background-color: transparent; + color: #A855F7; + border: 1px solid; +} + +.p-button.p-button-help.p-button-outlined:enabled:hover, +.p-button.p-button-help.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-help>.p-button.p-button-outlined:enabled:hover, +.p-buttonset.p-button-help>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-help>.p-button.p-button-outlined:enabled:hover, +.p-splitbutton.p-button-help>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-help.p-button-outlined:enabled:hover, +.p-fileupload-choose.p-button-help.p-button-outlined:not(button):not(a):not(.p-disabled):hover { + background: rgba(168, 85, 247, 0.04); + color: #A855F7; + border: 1px solid; +} + +.p-button.p-button-help.p-button-outlined:enabled:active, +.p-button.p-button-help.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-help>.p-button.p-button-outlined:enabled:active, +.p-buttonset.p-button-help>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-help>.p-button.p-button-outlined:enabled:active, +.p-splitbutton.p-button-help>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-help.p-button-outlined:enabled:active, +.p-fileupload-choose.p-button-help.p-button-outlined:not(button):not(a):not(.p-disabled):active { + background: rgba(168, 85, 247, 0.16); + color: #A855F7; + border: 1px solid; +} + +.p-button.p-button-help.p-button-text, +.p-buttonset.p-button-help>.p-button.p-button-text, +.p-splitbutton.p-button-help>.p-button.p-button-text, +.p-fileupload-choose.p-button-help.p-button-text { + background-color: transparent; + color: #A855F7; + border-color: transparent; +} + +.p-button.p-button-help.p-button-text:enabled:hover, +.p-button.p-button-help.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-help>.p-button.p-button-text:enabled:hover, +.p-buttonset.p-button-help>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-help>.p-button.p-button-text:enabled:hover, +.p-splitbutton.p-button-help>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-help.p-button-text:enabled:hover, +.p-fileupload-choose.p-button-help.p-button-text:not(button):not(a):not(.p-disabled):hover { + background: rgba(168, 85, 247, 0.04); + border-color: transparent; + color: #A855F7; +} + +.p-button.p-button-help.p-button-text:enabled:active, +.p-button.p-button-help.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-help>.p-button.p-button-text:enabled:active, +.p-buttonset.p-button-help>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-help>.p-button.p-button-text:enabled:active, +.p-splitbutton.p-button-help>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-help.p-button-text:enabled:active, +.p-fileupload-choose.p-button-help.p-button-text:not(button):not(a):not(.p-disabled):active { + background: rgba(168, 85, 247, 0.16); + border-color: transparent; + color: #A855F7; +} + +.p-button.p-button-danger, +.p-buttonset.p-button-danger>.p-button, +.p-splitbutton.p-button-danger>.p-button, +.p-fileupload-choose.p-button-danger { + color: #ffffff; + background: #EF4444; + border: 1px solid #EF4444; +} + +.p-button.p-button-danger:enabled:hover, +.p-button.p-button-danger:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-danger>.p-button:enabled:hover, +.p-buttonset.p-button-danger>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-danger>.p-button:enabled:hover, +.p-splitbutton.p-button-danger>.p-button:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-danger:enabled:hover, +.p-fileupload-choose.p-button-danger:not(button):not(a):not(.p-disabled):hover { + background: #DC2626; + color: #ffffff; + border-color: #DC2626; +} + +.p-button.p-button-danger:enabled:focus, +.p-button.p-button-danger:not(button):not(a):not(.p-disabled):focus, +.p-buttonset.p-button-danger>.p-button:enabled:focus, +.p-buttonset.p-button-danger>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-splitbutton.p-button-danger>.p-button:enabled:focus, +.p-splitbutton.p-button-danger>.p-button:not(button):not(a):not(.p-disabled):focus, +.p-fileupload-choose.p-button-danger:enabled:focus, +.p-fileupload-choose.p-button-danger:not(button):not(a):not(.p-disabled):focus { + box-shadow: 0 0 0 0.2rem #FECACA; +} + +.p-button.p-button-danger:enabled:active, +.p-button.p-button-danger:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-danger>.p-button:enabled:active, +.p-buttonset.p-button-danger>.p-button:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-danger>.p-button:enabled:active, +.p-splitbutton.p-button-danger>.p-button:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-danger:enabled:active, +.p-fileupload-choose.p-button-danger:not(button):not(a):not(.p-disabled):active { + background: #B91C1C; + color: #ffffff; + border-color: #B91C1C; +} + +.p-button.p-button-danger.p-button-outlined, +.p-buttonset.p-button-danger>.p-button.p-button-outlined, +.p-splitbutton.p-button-danger>.p-button.p-button-outlined, +.p-fileupload-choose.p-button-danger.p-button-outlined { + background-color: transparent; + color: #EF4444; + border: 1px solid; +} + +.p-button.p-button-danger.p-button-outlined:enabled:hover, +.p-button.p-button-danger.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-danger>.p-button.p-button-outlined:enabled:hover, +.p-buttonset.p-button-danger>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-danger>.p-button.p-button-outlined:enabled:hover, +.p-splitbutton.p-button-danger>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-danger.p-button-outlined:enabled:hover, +.p-fileupload-choose.p-button-danger.p-button-outlined:not(button):not(a):not(.p-disabled):hover { + background: rgba(239, 68, 68, 0.04); + color: #EF4444; + border: 1px solid; +} + +.p-button.p-button-danger.p-button-outlined:enabled:active, +.p-button.p-button-danger.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-danger>.p-button.p-button-outlined:enabled:active, +.p-buttonset.p-button-danger>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-danger>.p-button.p-button-outlined:enabled:active, +.p-splitbutton.p-button-danger>.p-button.p-button-outlined:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-danger.p-button-outlined:enabled:active, +.p-fileupload-choose.p-button-danger.p-button-outlined:not(button):not(a):not(.p-disabled):active { + background: rgba(239, 68, 68, 0.16); + color: #EF4444; + border: 1px solid; +} + +.p-button.p-button-danger.p-button-text, +.p-buttonset.p-button-danger>.p-button.p-button-text, +.p-splitbutton.p-button-danger>.p-button.p-button-text, +.p-fileupload-choose.p-button-danger.p-button-text { + background-color: transparent; + color: #EF4444; + border-color: transparent; +} + +.p-button.p-button-danger.p-button-text:enabled:hover, +.p-button.p-button-danger.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-buttonset.p-button-danger>.p-button.p-button-text:enabled:hover, +.p-buttonset.p-button-danger>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-splitbutton.p-button-danger>.p-button.p-button-text:enabled:hover, +.p-splitbutton.p-button-danger>.p-button.p-button-text:not(button):not(a):not(.p-disabled):hover, +.p-fileupload-choose.p-button-danger.p-button-text:enabled:hover, +.p-fileupload-choose.p-button-danger.p-button-text:not(button):not(a):not(.p-disabled):hover { + background: rgba(239, 68, 68, 0.04); + border-color: transparent; + color: #EF4444; +} + +.p-button.p-button-danger.p-button-text:enabled:active, +.p-button.p-button-danger.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-buttonset.p-button-danger>.p-button.p-button-text:enabled:active, +.p-buttonset.p-button-danger>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-splitbutton.p-button-danger>.p-button.p-button-text:enabled:active, +.p-splitbutton.p-button-danger>.p-button.p-button-text:not(button):not(a):not(.p-disabled):active, +.p-fileupload-choose.p-button-danger.p-button-text:enabled:active, +.p-fileupload-choose.p-button-danger.p-button-text:not(button):not(a):not(.p-disabled):active { + background: rgba(239, 68, 68, 0.16); + border-color: transparent; + color: #EF4444; +} + +.p-button.p-button-link { + color: #C08135; + background: transparent; + border: transparent; +} + +.p-button.p-button-link:enabled:hover, +.p-button.p-button-link:not(button):not(a):not(.p-disabled):hover { + background: transparent; + color: #C08135; + border-color: transparent; +} + +.p-button.p-button-link:enabled:hover .p-button-label, +.p-button.p-button-link:not(button):not(a):not(.p-disabled):hover .p-button-label { + text-decoration: underline; +} + +.p-button.p-button-link:enabled:focus, +.p-button.p-button-link:not(button):not(a):not(.p-disabled):focus { + background: transparent; + box-shadow: 0 0 0 0.2rem #ffd9ac; + border-color: transparent; +} + +.p-button.p-button-link:enabled:active, +.p-button.p-button-link:not(button):not(a):not(.p-disabled):active { + background: transparent; + color: #C08135; + border-color: transparent; +} + +.p-speeddial-button.p-button.p-button-icon-only { + width: 4rem; + height: 4rem; +} + +.p-speeddial-button.p-button.p-button-icon-only .p-button-icon { + font-size: 1.3rem; +} + +.p-speeddial-action { + width: 3rem; + height: 3rem; + background: #495057; + color: #fff; +} + +.p-speeddial-action:hover { + background: #022354; + color: #fff; +} + +.p-speeddial-direction-up .p-speeddial-item { + margin: 0.25rem; +} + +.p-speeddial-direction-up .p-speeddial-item:first-child { + margin-bottom: 0.5rem; +} + +.p-speeddial-direction-down .p-speeddial-item { + margin: 0.25rem; +} + +.p-speeddial-direction-down .p-speeddial-item:first-child { + margin-top: 0.5rem; +} + +.p-speeddial-direction-left .p-speeddial-item { + margin: 0 0.25rem; +} + +.p-speeddial-direction-left .p-speeddial-item:first-child { + margin-right: 0.5rem; +} + +.p-speeddial-direction-right .p-speeddial-item { + margin: 0 0.25rem; +} + +.p-speeddial-direction-right .p-speeddial-item:first-child { + margin-left: 0.5rem; +} + +.p-speeddial-circle .p-speeddial-item, +.p-speeddial-semi-circle .p-speeddial-item, +.p-speeddial-quarter-circle .p-speeddial-item { + margin: 0; +} + +.p-speeddial-circle .p-speeddial-item:first-child, +.p-speeddial-circle .p-speeddial-item:last-child, +.p-speeddial-semi-circle .p-speeddial-item:first-child, +.p-speeddial-semi-circle .p-speeddial-item:last-child, +.p-speeddial-quarter-circle .p-speeddial-item:first-child, +.p-speeddial-quarter-circle .p-speeddial-item:last-child { + margin: 0; +} + +.p-speeddial-mask { + background-color: rgba(0, 0, 0, 0.4); +} + +.p-carousel .p-carousel-content .p-carousel-prev, +.p-carousel .p-carousel-content .p-carousel-next { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + margin: 0.5rem; +} + +.p-carousel .p-carousel-content .p-carousel-prev:enabled:hover, +.p-carousel .p-carousel-content .p-carousel-next:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-carousel .p-carousel-content .p-carousel-prev:focus, +.p-carousel .p-carousel-content .p-carousel-next:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-carousel .p-carousel-indicators { + padding: 1rem; +} + +.p-carousel .p-carousel-indicators .p-carousel-indicator { + margin-right: 0.5rem; + margin-bottom: 0.5rem; +} + +.p-carousel .p-carousel-indicators .p-carousel-indicator button { + background-color: #ced4da; + width: 2rem; + height: 0.5rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 0; +} + +.p-carousel .p-carousel-indicators .p-carousel-indicator button:hover { + background: #adb5bd; +} + +.p-carousel .p-carousel-indicators .p-carousel-indicator.p-highlight button { + background: #EEF2FF; + color: #C08135; +} + +.p-datatable .p-paginator-top { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-datatable .p-paginator-bottom { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-datatable .p-datatable-header { + background: #f8f9fa; + color: #343a40; + border: 1px solid #dee2e6; + border-width: 1px 0 1px 0; + padding: 1rem 1rem; + font-weight: 700; +} + +.p-datatable .p-datatable-footer { + background: #f8f9fa; + color: #343a40; + border: 1px solid #dee2e6; + border-width: 0 0 1px 0; + padding: 1rem 1rem; + font-weight: 700; +} + +.p-datatable .p-datatable-thead>tr>th { + text-align: left; + padding: 1rem 1rem; + border: 1px solid #dee2e6; + border-width: 0 0 1px 0; + font-weight: 700; + color: #343a40; + background: #f8f9fa; + transition: box-shadow 0.2s; +} + +.p-datatable .p-datatable-tfoot>tr>td { + text-align: left; + padding: 1rem 1rem; + border: 1px solid #dee2e6; + border-width: 0 0 1px 0; + font-weight: 700; + color: #343a40; + background: #f8f9fa; +} + +.p-datatable .p-sortable-column .p-sortable-column-icon { + color: #343a40; + margin-left: 0.5rem; +} + +.p-datatable .p-sortable-column .p-sortable-column-badge { + border-radius: 50%; + height: 1.143rem; + min-width: 1.143rem; + line-height: 1.143rem; + color: #C08135; + background: #EEF2FF; + margin-left: 0.5rem; +} + +.p-datatable .p-sortable-column:not(.p-highlight):not(.p-sortable-disabled):hover { + background: #e9ecef; + color: #343a40; +} + +.p-datatable .p-sortable-column:not(.p-highlight):not(.p-sortable-disabled):hover .p-sortable-column-icon { + color: #343a40; +} + +.p-datatable .p-sortable-column.p-highlight { + background: #EEF2FF; + color: #C08135; +} + +.p-datatable .p-sortable-column.p-highlight .p-sortable-column-icon { + color: #C08135; +} + +.p-datatable .p-sortable-column.p-highlight:not(.p-sortable-disabled):hover { + background: #EEF2FF; + color: #C08135; +} + +.p-datatable .p-sortable-column.p-highlight:not(.p-sortable-disabled):hover .p-sortable-column-icon { + color: #C08135; +} + +.p-datatable .p-sortable-column:focus { + box-shadow: inset 0 0 0 1px #ffd9ac; + outline: 0 none; +} + +.p-datatable .p-datatable-tbody>tr { + background: #ffffff; + color: #495057; + transition: box-shadow 0.2s; + outline-color: #ffd9ac; +} + +.p-datatable .p-datatable-tbody>tr>td { + text-align: left; + border: 1px solid #dee2e6; + border-width: 0 0 1px 0; + padding: 1rem 1rem; + outline-color: #ffd9ac; +} + +.p-datatable .p-datatable-tbody>tr>td .p-row-toggler, +.p-datatable .p-datatable-tbody>tr>td .p-row-editor-init, +.p-datatable .p-datatable-tbody>tr>td .p-row-editor-save, +.p-datatable .p-datatable-tbody>tr>td .p-row-editor-cancel { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-datatable .p-datatable-tbody>tr>td .p-row-toggler:enabled:hover, +.p-datatable .p-datatable-tbody>tr>td .p-row-editor-init:enabled:hover, +.p-datatable .p-datatable-tbody>tr>td .p-row-editor-save:enabled:hover, +.p-datatable .p-datatable-tbody>tr>td .p-row-editor-cancel:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-datatable .p-datatable-tbody>tr>td .p-row-toggler:focus, +.p-datatable .p-datatable-tbody>tr>td .p-row-editor-init:focus, +.p-datatable .p-datatable-tbody>tr>td .p-row-editor-save:focus, +.p-datatable .p-datatable-tbody>tr>td .p-row-editor-cancel:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-datatable .p-datatable-tbody>tr>td .p-row-editor-save { + margin-right: 0.5rem; +} + +.p-datatable .p-datatable-tbody>tr>td>.p-column-title { + font-weight: 700; +} + +.p-datatable .p-datatable-tbody>tr>td.p-highlight { + background: #EEF2FF; + color: #C08135; +} + +.p-datatable .p-datatable-tbody>tr.p-highlight { + background: #EEF2FF; + color: #C08135; +} + +.p-datatable .p-datatable-tbody>tr.p-datatable-dragpoint-top>td { + box-shadow: inset 0 2px 0 0 #EEF2FF; +} + +.p-datatable .p-datatable-tbody>tr.p-datatable-dragpoint-bottom>td { + box-shadow: inset 0 -2px 0 0 #EEF2FF; +} + +.p-datatable.p-datatable-hoverable-rows .p-datatable-tbody>tr:not(.p-highlight):not(.p-datatable-emptymessage):hover { + background: #e9ecef; + color: #495057; +} + +.p-datatable .p-column-resizer-helper { + background: #D7A86E; +} + +.p-datatable .p-datatable-scrollable-header, +.p-datatable .p-datatable-scrollable-footer { + background: #f8f9fa; +} + +.p-datatable .p-datatable-loading-icon { + font-size: 2rem; +} + +.p-datatable.p-datatable-gridlines .p-datatable-header { + border-width: 1px 1px 0 1px; +} + +.p-datatable.p-datatable-gridlines .p-datatable-footer { + border-width: 0 1px 1px 1px; +} + +.p-datatable.p-datatable-gridlines .p-paginator-top { + border-width: 0 1px 0 1px; +} + +.p-datatable.p-datatable-gridlines .p-paginator-bottom { + border-width: 0 1px 1px 1px; +} + +.p-datatable.p-datatable-gridlines .p-datatable-thead>tr>th { + border-width: 1px 1px 1px 1px; +} + +.p-datatable.p-datatable-gridlines .p-datatable-tbody>tr>td { + border-width: 1px; +} + +.p-datatable.p-datatable-gridlines .p-datatable-tfoot>tr>td { + border-width: 1px; +} + +.p-datatable.p-datatable-striped .p-datatable-tbody>tr.p-row-odd { + background: #fcfcfc; +} + +.p-datatable.p-datatable-striped .p-datatable-tbody>tr.p-row-odd.p-highlight { + background: #EEF2FF; + color: #C08135; +} + +.p-datatable.p-datatable-striped .p-datatable-tbody>tr.p-row-odd.p-highlight .p-row-toggler { + color: #C08135; +} + +.p-datatable.p-datatable-striped .p-datatable-tbody>tr.p-row-odd.p-highlight .p-row-toggler:hover { + color: #C08135; +} + +.p-datatable.p-datatable-striped .p-datatable-tbody>tr.p-row-odd+.p-row-expanded { + background: #fcfcfc; +} + +.p-datatable.p-datatable-sm .p-datatable-header { + padding: 0.5rem 0.5rem; +} + +.p-datatable.p-datatable-sm .p-datatable-thead>tr>th { + padding: 0.5rem 0.5rem; +} + +.p-datatable.p-datatable-sm .p-datatable-tbody>tr>td { + padding: 0.5rem 0.5rem; +} + +.p-datatable.p-datatable-sm .p-datatable-tfoot>tr>td { + padding: 0.5rem 0.5rem; +} + +.p-datatable.p-datatable-sm .p-datatable-footer { + padding: 0.5rem 0.5rem; +} + +.p-datatable.p-datatable-lg .p-datatable-header { + padding: 1.25rem 1.25rem; +} + +.p-datatable.p-datatable-lg .p-datatable-thead>tr>th { + padding: 1.25rem 1.25rem; +} + +.p-datatable.p-datatable-lg .p-datatable-tbody>tr>td { + padding: 1.25rem 1.25rem; +} + +.p-datatable.p-datatable-lg .p-datatable-tfoot>tr>td { + padding: 1.25rem 1.25rem; +} + +.p-datatable.p-datatable-lg .p-datatable-footer { + padding: 1.25rem 1.25rem; +} + +.p-datatable-drag-selection-helper { + background: rgba(99, 102, 241, 0.16); +} + +.p-dataview .p-paginator-top { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-dataview .p-paginator-bottom { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-dataview .p-dataview-header { + background: #f8f9fa; + color: #343a40; + border: 1px solid #dee2e6; + border-width: 1px 0 1px 0; + padding: 1rem 1rem; + font-weight: 700; +} + +.p-dataview .p-dataview-content { + background: #ffffff; + color: #495057; + border: 0 none; + padding: 0; +} + +.p-dataview.p-dataview-list .p-dataview-content>.p-grid>div { + border: solid #dee2e6; + border-width: 0 0 1px 0; +} + +.p-dataview .p-dataview-footer { + background: #f8f9fa; + color: #343a40; + border: 1px solid #dee2e6; + border-width: 0 0 1px 0; + padding: 1rem 1rem; + font-weight: 700; + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.p-dataview .p-dataview-loading-icon { + font-size: 2rem; +} + +.p-datascroller .p-paginator-top { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-datascroller .p-paginator-bottom { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-datascroller .p-datascroller-header { + background: #f8f9fa; + color: #343a40; + border: 1px solid #dee2e6; + border-width: 1px 0 1px 0; + padding: 1rem 1rem; + font-weight: 700; +} + +.p-datascroller .p-datascroller-content { + background: #ffffff; + color: #495057; + border: 0 none; + padding: 0; +} + +.p-datascroller.p-datascroller-inline .p-datascroller-list>li { + border: solid #dee2e6; + border-width: 0 0 1px 0; +} + +.p-datascroller .p-datascroller-footer { + background: #f8f9fa; + color: #343a40; + border: 1px solid #dee2e6; + border-width: 0 0 1px 0; + padding: 1rem 1rem; + font-weight: 700; + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} + +.p-column-filter-row .p-column-filter-menu-button, +.p-column-filter-row .p-column-filter-clear-button { + margin-left: 0.5rem; +} + +.p-column-filter-menu-button { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-column-filter-menu-button:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-column-filter-menu-button.p-column-filter-menu-button-open, +.p-column-filter-menu-button.p-column-filter-menu-button-open:hover { + background: #e9ecef; + color: #343a40; +} + +.p-column-filter-menu-button.p-column-filter-menu-button-active, +.p-column-filter-menu-button.p-column-filter-menu-button-active:hover { + background: #EEF2FF; + color: #C08135; +} + +.p-column-filter-menu-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-column-filter-clear-button { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-column-filter-clear-button:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-column-filter-clear-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-column-filter-overlay { + background: #ffffff; + color: #495057; + border: 0 none; + border-radius: 6px; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); + min-width: 12.5rem; +} + +.p-column-filter-overlay .p-column-filter-row-items { + padding: 0.75rem 0; +} + +.p-column-filter-overlay .p-column-filter-row-items .p-column-filter-row-item { + margin: 0; + padding: 0.75rem 1.25rem; + border: 0 none; + color: #495057; + background: transparent; + transition: box-shadow 0.2s; + border-radius: 0; +} + +.p-column-filter-overlay .p-column-filter-row-items .p-column-filter-row-item.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-column-filter-overlay .p-column-filter-row-items .p-column-filter-row-item:not(.p-highlight):not(.p-disabled):hover { + color: #495057; + background: #e9ecef; +} + +.p-column-filter-overlay .p-column-filter-row-items .p-column-filter-row-item:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-column-filter-overlay .p-column-filter-row-items .p-column-filter-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-column-filter-overlay-menu .p-column-filter-operator { + padding: 0.75rem 1.25rem; + border-bottom: 1px solid #dee2e6; + color: #343a40; + background: #f8f9fa; + margin: 0; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-column-filter-overlay-menu .p-column-filter-constraint { + padding: 1.25rem; + border-bottom: 1px solid #dee2e6; +} + +.p-column-filter-overlay-menu .p-column-filter-constraint .p-column-filter-matchmode-dropdown { + margin-bottom: 0.5rem; +} + +.p-column-filter-overlay-menu .p-column-filter-constraint .p-column-filter-remove-button { + margin-top: 0.5rem; +} + +.p-column-filter-overlay-menu .p-column-filter-constraint:last-child { + border-bottom: 0 none; +} + +.p-column-filter-overlay-menu .p-column-filter-add-rule { + padding: 0.75rem 1.25rem; +} + +.p-column-filter-overlay-menu .p-column-filter-buttonbar { + padding: 1.25rem; +} + +.fc { + /* FullCalendar 4 */ + /* FullCalendar 5 */ +} + +.fc.fc-unthemed .fc-view-container th { + background: #f8f9fa; + border: 1px solid #dee2e6; + color: #343a40; +} + +.fc.fc-unthemed .fc-view-container td.fc-widget-content { + border: 1px solid #dee2e6; + color: #495057; +} + +.fc.fc-unthemed .fc-view-container td.fc-head-container { + border: 1px solid #dee2e6; +} + +.fc.fc-unthemed .fc-view-container .fc-view { + background: #ffffff; +} + +.fc.fc-unthemed .fc-view-container .fc-row { + border-right: 1px solid #dee2e6; +} + +.fc.fc-unthemed .fc-view-container .fc-event { + background: #C08135; + border: 1px solid #C08135; + color: #ffffff; +} + +.fc.fc-unthemed .fc-view-container .fc-divider { + background: #f8f9fa; + border: 1px solid #dee2e6; +} + +.fc.fc-unthemed .fc-toolbar .fc-button { + color: #ffffff; + background: #D7A86E; + border: 1px solid #D7A86E; + font-size: 1rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 6px; + display: flex; + align-items: center; +} + +.fc.fc-unthemed .fc-toolbar .fc-button:enabled:hover { + background: #C08135; + color: #ffffff; + border-color: #C08135; +} + +.fc.fc-unthemed .fc-toolbar .fc-button:enabled:active { + background: #C08135; + color: #ffffff; + border-color: #C08135; +} + +.fc.fc-unthemed .fc-toolbar .fc-button:enabled:active:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.fc.fc-unthemed .fc-toolbar .fc-button .fc-icon-chevron-left { + font-family: "PrimeIcons" !important; + text-indent: 0; + font-size: 1rem; +} + +.fc.fc-unthemed .fc-toolbar .fc-button .fc-icon-chevron-left:before { + content: "\e900"; +} + +.fc.fc-unthemed .fc-toolbar .fc-button .fc-icon-chevron-right { + font-family: "PrimeIcons" !important; + text-indent: 0; + font-size: 1rem; +} + +.fc.fc-unthemed .fc-toolbar .fc-button .fc-icon-chevron-right:before { + content: "\e901"; +} + +.fc.fc-unthemed .fc-toolbar .fc-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.fc.fc-unthemed .fc-toolbar .fc-button.fc-dayGridMonth-button, +.fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridWeek-button, +.fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridDay-button { + background: #ffffff; + border: 1px solid #ced4da; + color: #495057; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.fc.fc-unthemed .fc-toolbar .fc-button.fc-dayGridMonth-button:hover, +.fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridWeek-button:hover, +.fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridDay-button:hover { + background: #e9ecef; + border-color: #ced4da; + color: #495057; +} + +.fc.fc-unthemed .fc-toolbar .fc-button.fc-dayGridMonth-button.fc-button-active, +.fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridWeek-button.fc-button-active, +.fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridDay-button.fc-button-active { + background: #D7A86E; + border-color: #D7A86E; + color: #ffffff; +} + +.fc.fc-unthemed .fc-toolbar .fc-button.fc-dayGridMonth-button.fc-button-active:hover, +.fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridWeek-button.fc-button-active:hover, +.fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridDay-button.fc-button-active:hover { + background: #C08135; + border-color: #C08135; + color: #ffffff; +} + +.fc.fc-unthemed .fc-toolbar .fc-button.fc-dayGridMonth-button:focus, +.fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridWeek-button:focus, +.fc.fc-unthemed .fc-toolbar .fc-button.fc-timeGridDay-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + z-index: 1; +} + +.fc.fc-unthemed .fc-toolbar .fc-button-group .fc-button { + border-radius: 0; +} + +.fc.fc-unthemed .fc-toolbar .fc-button-group .fc-button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.fc.fc-unthemed .fc-toolbar .fc-button-group .fc-button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.fc.fc-theme-standard .fc-view-harness .fc-scrollgrid { + border-color: #dee2e6; +} + +.fc.fc-theme-standard .fc-view-harness th { + background: #f8f9fa; + border-color: #dee2e6; + color: #343a40; +} + +.fc.fc-theme-standard .fc-view-harness td { + color: #495057; + border-color: #dee2e6; +} + +.fc.fc-theme-standard .fc-view-harness .fc-view { + background: #ffffff; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover { + background: none; + border: 0 none; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-header { + border: 1px solid #dee2e6; + padding: 1.25rem; + background: #f8f9fa; + color: #343a40; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-header .fc-popover-close { + opacity: 1; + display: flex; + align-items: center; + justify-content: center; + overflow: hidden; + font-family: "PrimeIcons" !important; + font-size: 1rem; + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-header .fc-popover-close:before { + content: "\e90b"; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-header .fc-popover-close:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-header .fc-popover-close:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.fc.fc-theme-standard .fc-view-harness .fc-popover .fc-popover-body { + padding: 1.25rem; + border: 1px solid #dee2e6; + background: #ffffff; + color: #495057; + border-top: 0 none; +} + +.fc.fc-theme-standard .fc-view-harness .fc-event.fc-daygrid-block-event { + color: #ffffff; + background: #C08135; + border-color: #C08135; +} + +.fc.fc-theme-standard .fc-view-harness .fc-event.fc-daygrid-block-event .fc-event-main { + color: #ffffff; +} + +.fc.fc-theme-standard .fc-view-harness .fc-event.fc-daygrid-dot-event .fc-daygrid-event-dot { + background: #C08135; + border-color: #C08135; +} + +.fc.fc-theme-standard .fc-view-harness .fc-event.fc-daygrid-dot-event:hover { + background: #e9ecef; + color: #495057; +} + +.fc.fc-theme-standard .fc-view-harness .fc-cell-shaded { + background: #f8f9fa; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button { + color: #ffffff; + background: #D7A86E; + border: 1px solid #D7A86E; + font-size: 1rem; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; + border-radius: 6px; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button:enabled:hover { + background: #C08135; + color: #ffffff; + border-color: #C08135; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button:enabled:active { + background: #C08135; + color: #ffffff; + border-color: #C08135; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button:enabled:active:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button:disabled { + opacity: 0.6; + color: #ffffff; + background: #D7A86E; + border: 1px solid #D7A86E; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button .fc-icon-chevron-left { + font-family: "PrimeIcons" !important; + text-indent: 0; + font-size: 1rem; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button .fc-icon-chevron-left:before { + content: "\e900"; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button .fc-icon-chevron-right { + font-family: "PrimeIcons" !important; + text-indent: 0; + font-size: 1rem; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button .fc-icon-chevron-right:before { + content: "\e901"; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-dayGridMonth-button, +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridWeek-button, +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridDay-button { + background: #ffffff; + border: 1px solid #ced4da; + color: #495057; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-dayGridMonth-button:hover, +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridWeek-button:hover, +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridDay-button:hover { + background: #e9ecef; + border-color: #ced4da; + color: #495057; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-dayGridMonth-button.fc-button-active, +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridWeek-button.fc-button-active, +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridDay-button.fc-button-active { + background: #D7A86E; + border-color: #D7A86E; + color: #ffffff; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-dayGridMonth-button.fc-button-active:hover, +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridWeek-button.fc-button-active:hover, +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridDay-button.fc-button-active:hover { + background: #C08135; + border-color: #C08135; + color: #ffffff; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-dayGridMonth-button:not(:disabled):focus, +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridWeek-button:not(:disabled):focus, +.fc.fc-theme-standard .fc-toolbar .fc-button.fc-timeGridDay-button:not(:disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + z-index: 1; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button-group .fc-button { + border-radius: 0; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button-group .fc-button:first-child { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} + +.fc.fc-theme-standard .fc-toolbar .fc-button-group .fc-button:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.fc.fc-theme-standard .fc-highlight { + color: #C08135; + background: #EEF2FF; +} + +.p-orderlist .p-orderlist-controls { + padding: 1.25rem; +} + +.p-orderlist .p-orderlist-controls .p-button { + margin-bottom: 0.5rem; +} + +.p-orderlist .p-orderlist-header { + background: #f8f9fa; + color: #343a40; + border: 1px solid #dee2e6; + padding: 1.25rem; + font-weight: 700; + border-bottom: 0 none; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-orderlist .p-orderlist-list { + border: 1px solid #dee2e6; + background: #ffffff; + color: #495057; + padding: 0.75rem 0; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-orderlist .p-orderlist-list .p-orderlist-item { + padding: 0.75rem 1.25rem; + margin: 0; + border: 0 none; + color: #495057; + background: transparent; + transition: transform 0.2s, box-shadow 0.2s; +} + +.p-orderlist .p-orderlist-list .p-orderlist-item:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-orderlist .p-orderlist-list .p-orderlist-item:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-orderlist .p-orderlist-list .p-orderlist-item.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +@media screen and (max-width: 769px) { + .p-orderlist { + flex-direction: column; + } + + .p-orderlist .p-orderlist-controls { + padding: 1.25rem; + flex-direction: row; + } + + .p-orderlist .p-orderlist-controls .p-button { + margin-right: 0.5rem; + margin-bottom: 0; + } + + .p-orderlist .p-orderlist-controls .p-button:last-child { + margin-right: 0; + } +} + +.p-organizationchart .p-organizationchart-node-content.p-organizationchart-selectable-node:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-organizationchart .p-organizationchart-node-content.p-highlight { + background: #EEF2FF; + color: #C08135; +} + +.p-organizationchart .p-organizationchart-node-content.p-highlight .p-node-toggler i { + color: #6f91ff; +} + +.p-organizationchart .p-organizationchart-line-down { + background: #dee2e6; +} + +.p-organizationchart .p-organizationchart-line-left { + border-right: 1px solid #dee2e6; + border-color: #dee2e6; +} + +.p-organizationchart .p-organizationchart-line-top { + border-top: 1px solid #dee2e6; + border-color: #dee2e6; +} + +.p-organizationchart .p-organizationchart-node-content { + border: 1px solid #dee2e6; + background: #ffffff; + color: #495057; + padding: 1.25rem; +} + +.p-organizationchart .p-organizationchart-node-content .p-node-toggler { + background: inherit; + color: inherit; + border-radius: 50%; +} + +.p-organizationchart .p-organizationchart-node-content .p-node-toggler:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-paginator { + background: #ffffff; + color: #6c757d; + border: solid #e9ecef; + border-width: 0; + padding: 0.5rem 1rem; + border-radius: 6px; +} + +.p-paginator .p-paginator-first, +.p-paginator .p-paginator-prev, +.p-paginator .p-paginator-next, +.p-paginator .p-paginator-last { + background-color: transparent; + border: 0 none; + color: #6c757d; + min-width: 3rem; + height: 3rem; + margin: 0.143rem; + transition: box-shadow 0.2s; + border-radius: 50%; +} + +.p-paginator .p-paginator-first:not(.p-disabled):not(.p-highlight):hover, +.p-paginator .p-paginator-prev:not(.p-disabled):not(.p-highlight):hover, +.p-paginator .p-paginator-next:not(.p-disabled):not(.p-highlight):hover, +.p-paginator .p-paginator-last:not(.p-disabled):not(.p-highlight):hover { + background: #e9ecef; + border-color: transparent; + color: #343a40; +} + +.p-paginator .p-paginator-first { + border-top-left-radius: 50%; + border-bottom-left-radius: 50%; +} + +.p-paginator .p-paginator-last { + border-top-right-radius: 50%; + border-bottom-right-radius: 50%; +} + +.p-paginator .p-dropdown { + margin-left: 0.5rem; + height: 3rem; +} + +.p-paginator .p-dropdown .p-dropdown-label { + padding-right: 0; +} + +.p-paginator .p-paginator-page-input { + margin-left: 0.5rem; + margin-right: 0.5rem; +} + +.p-paginator .p-paginator-page-input .p-inputtext { + max-width: 3rem; +} + +.p-paginator .p-paginator-current { + background-color: transparent; + border: 0 none; + color: #6c757d; + min-width: 3rem; + height: 3rem; + margin: 0.143rem; + padding: 0 0.5rem; +} + +.p-paginator .p-paginator-pages .p-paginator-page { + background-color: transparent; + border: 0 none; + color: #6c757d; + min-width: 3rem; + height: 3rem; + margin: 0.143rem; + transition: box-shadow 0.2s; + border-radius: 50%; +} + +.p-paginator .p-paginator-pages .p-paginator-page.p-highlight { + background: #EEF2FF; + border-color: #EEF2FF; + color: #C08135; +} + +.p-paginator .p-paginator-pages .p-paginator-page:not(.p-highlight):hover { + background: #e9ecef; + border-color: transparent; + color: #343a40; +} + +.p-picklist .p-picklist-buttons { + padding: 1.25rem; +} + +.p-picklist .p-picklist-buttons .p-button { + margin-bottom: 0.5rem; +} + +.p-picklist .p-picklist-header { + background: #f8f9fa; + color: #343a40; + border: 1px solid #dee2e6; + padding: 1.25rem; + font-weight: 700; + border-bottom: 0 none; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-picklist .p-picklist-list { + border: 1px solid #dee2e6; + background: #ffffff; + color: #495057; + padding: 0.75rem 0; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-picklist .p-picklist-list .p-picklist-item { + padding: 0.75rem 1.25rem; + margin: 0; + border: 0 none; + color: #495057; + background: transparent; + transition: transform 0.2s, box-shadow 0.2s; +} + +.p-picklist .p-picklist-list .p-picklist-item:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-picklist .p-picklist-list .p-picklist-item:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-picklist .p-picklist-list .p-picklist-item.p-highlight { + color: #C08135; + background: #EEF2FF; +} + +@media screen and (max-width: 769px) { + .p-picklist { + flex-direction: column; + } + + .p-picklist .p-picklist-buttons { + padding: 1.25rem; + flex-direction: row; + } + + .p-picklist .p-picklist-buttons .p-button { + margin-right: 0.5rem; + margin-bottom: 0; + } + + .p-picklist .p-picklist-buttons .p-button:last-child { + margin-right: 0; + } + + .p-picklist .p-picklist-transfer-buttons .pi-angle-right:before { + content: "\e930"; + } + + .p-picklist .p-picklist-transfer-buttons .pi-angle-double-right:before { + content: "\e92c"; + } + + .p-picklist .p-picklist-transfer-buttons .pi-angle-left:before { + content: "\e933"; + } + + .p-picklist .p-picklist-transfer-buttons .pi-angle-double-left:before { + content: "\e92f"; + } +} + +.p-tree { + border: 1px solid #dee2e6; + background: #ffffff; + color: #495057; + padding: 1.25rem; + border-radius: 6px; +} + +.p-tree .p-tree-container .p-treenode { + padding: 0.143rem; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content { + border-radius: 6px; + transition: box-shadow 0.2s; + padding: 0.5rem; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-tree-toggler { + margin-right: 0.5rem; + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-tree-toggler:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-tree-toggler:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-treenode-icon { + margin-right: 0.5rem; + color: #6c757d; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-checkbox { + margin-right: 0.5rem; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content .p-checkbox .p-indeterminate .p-checkbox-icon { + color: #495057; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight { + background: #EEF2FF; + color: #C08135; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight .p-tree-toggler, +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight .p-treenode-icon { + color: #C08135; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight .p-tree-toggler:hover, +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight .p-treenode-icon:hover { + color: #C08135; +} + +.p-tree .p-tree-container .p-treenode .p-treenode-content.p-treenode-selectable:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-tree .p-tree-filter-container { + margin-bottom: 0.5rem; +} + +.p-tree .p-tree-filter-container .p-tree-filter { + width: 100%; + padding-right: 1.75rem; +} + +.p-tree .p-tree-filter-container .p-tree-filter-icon { + right: 0.75rem; + color: #6c757d; +} + +.p-tree .p-treenode-children { + padding: 0 0 0 1rem; +} + +.p-tree .p-tree-loading-icon { + font-size: 2rem; +} + +.p-tree .p-treenode-droppoint { + height: 0.5rem; +} + +.p-tree .p-treenode-droppoint.p-treenode-droppoint-active { + background: #8ba7ff; +} + +.p-treetable .p-paginator-top { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-treetable .p-paginator-bottom { + border-width: 0 0 1px 0; + border-radius: 0; +} + +.p-treetable .p-treetable-header { + background: #f8f9fa; + color: #343a40; + border: 1px solid #dee2e6; + border-width: 1px 0 1px 0; + padding: 1rem 1rem; + font-weight: 700; +} + +.p-treetable .p-treetable-footer { + background: #f8f9fa; + color: #343a40; + border: 1px solid #dee2e6; + border-width: 0 0 1px 0; + padding: 1rem 1rem; + font-weight: 700; +} + +.p-treetable .p-treetable-thead>tr>th { + text-align: left; + padding: 1rem 1rem; + border: 1px solid #dee2e6; + border-width: 0 0 1px 0; + font-weight: 700; + color: #343a40; + background: #f8f9fa; + transition: box-shadow 0.2s; +} + +.p-treetable .p-treetable-tfoot>tr>td { + text-align: left; + padding: 1rem 1rem; + border: 1px solid #dee2e6; + border-width: 0 0 1px 0; + font-weight: 700; + color: #343a40; + background: #f8f9fa; +} + +.p-treetable .p-sortable-column { + outline-color: #ffd9ac; +} + +.p-treetable .p-sortable-column .p-sortable-column-icon { + color: #343a40; + margin-left: 0.5rem; +} + +.p-treetable .p-sortable-column .p-sortable-column-badge { + border-radius: 50%; + height: 1.143rem; + min-width: 1.143rem; + line-height: 1.143rem; + color: #C08135; + background: #EEF2FF; + margin-left: 0.5rem; +} + +.p-treetable .p-sortable-column:not(.p-highlight):hover { + background: #e9ecef; + color: #343a40; +} + +.p-treetable .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon { + color: #343a40; +} + +.p-treetable .p-sortable-column.p-highlight { + background: #EEF2FF; + color: #C08135; +} + +.p-treetable .p-sortable-column.p-highlight .p-sortable-column-icon { + color: #C08135; +} + +.p-treetable .p-treetable-tbody>tr { + background: #ffffff; + color: #495057; + transition: box-shadow 0.2s; + outline-color: #ffd9ac; +} + +.p-treetable .p-treetable-tbody>tr>td { + text-align: left; + border: 1px solid #dee2e6; + border-width: 0 0 1px 0; + padding: 1rem 1rem; +} + +.p-treetable .p-treetable-tbody>tr>td .p-treetable-toggler { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + margin-right: 0.5rem; +} + +.p-treetable .p-treetable-tbody>tr>td .p-treetable-toggler:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-treetable .p-treetable-tbody>tr>td .p-treetable-toggler:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-treetable .p-treetable-tbody>tr>td .p-treetable-toggler+.p-checkbox { + margin-right: 0.5rem; +} + +.p-treetable .p-treetable-tbody>tr>td .p-treetable-toggler+.p-checkbox .p-indeterminate .p-checkbox-icon { + color: #495057; +} + +.p-treetable .p-treetable-tbody>tr.p-highlight { + background: #EEF2FF; + color: #C08135; +} + +.p-treetable .p-treetable-tbody>tr.p-highlight .p-treetable-toggler { + color: #C08135; +} + +.p-treetable .p-treetable-tbody>tr.p-highlight .p-treetable-toggler:hover { + color: #C08135; +} + +.p-treetable.p-treetable-hoverable-rows .p-treetable-tbody>tr:not(.p-highlight):hover { + background: #e9ecef; + color: #495057; +} + +.p-treetable.p-treetable-hoverable-rows .p-treetable-tbody>tr:not(.p-highlight):hover .p-treetable-toggler { + color: #495057; +} + +.p-treetable .p-column-resizer-helper { + background: #D7A86E; +} + +.p-treetable .p-treetable-scrollable-header, +.p-treetable .p-treetable-scrollable-footer { + background: #f8f9fa; +} + +.p-treetable .p-treetable-loading-icon { + font-size: 2rem; +} + +.p-treetable.p-treetable-gridlines .p-datatable-header { + border-width: 1px 1px 0 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-footer { + border-width: 0 1px 1px 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-top { + border-width: 0 1px 0 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-bottom { + border-width: 0 1px 1px 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-thead>tr>th { + border-width: 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-tbody>tr>td { + border-width: 1px; +} + +.p-treetable.p-treetable-gridlines .p-treetable-tfoot>tr>td { + border-width: 1px; +} + +.p-treetable.p-treetable-sm .p-treetable-header { + padding: 0.875rem 0.875rem; +} + +.p-treetable.p-treetable-sm .p-treetable-thead>tr>th { + padding: 0.5rem 0.5rem; +} + +.p-treetable.p-treetable-sm .p-treetable-tbody>tr>td { + padding: 0.5rem 0.5rem; +} + +.p-treetable.p-treetable-sm .p-treetable-tfoot>tr>td { + padding: 0.5rem 0.5rem; +} + +.p-treetable.p-treetable-sm .p-treetable-footer { + padding: 0.5rem 0.5rem; +} + +.p-treetable.p-treetable-lg .p-treetable-header { + padding: 1.25rem 1.25rem; +} + +.p-treetable.p-treetable-lg .p-treetable-thead>tr>th { + padding: 1.25rem 1.25rem; +} + +.p-treetable.p-treetable-lg .p-treetable-tbody>tr>td { + padding: 1.25rem 1.25rem; +} + +.p-treetable.p-treetable-lg .p-treetable-tfoot>tr>td { + padding: 1.25rem 1.25rem; +} + +.p-treetable.p-treetable-lg .p-treetable-footer { + padding: 1.25rem 1.25rem; +} + +.p-timeline .p-timeline-event-marker { + border: 2px solid #D7A86E; + border-radius: 50%; + width: 1rem; + height: 1rem; + background-color: #ffffff; +} + +.p-timeline .p-timeline-event-connector { + background-color: #dee2e6; +} + +.p-timeline.p-timeline-vertical .p-timeline-event-opposite, +.p-timeline.p-timeline-vertical .p-timeline-event-content { + padding: 0 1rem; +} + +.p-timeline.p-timeline-vertical .p-timeline-event-connector { + width: 2px; +} + +.p-timeline.p-timeline-horizontal .p-timeline-event-opposite, +.p-timeline.p-timeline-horizontal .p-timeline-event-content { + padding: 1rem 0; +} + +.p-timeline.p-timeline-horizontal .p-timeline-event-connector { + height: 2px; +} + +.p-accordion .p-accordion-header .p-accordion-header-link { + padding: 1.25rem; + border: 1px solid #dee2e6; + color: #6c757d; + background: #f8f9fa; + font-weight: 700; + border-radius: 6px; + transition: box-shadow 0.2s; +} + +.p-accordion .p-accordion-header .p-accordion-header-link .p-accordion-toggle-icon { + margin-right: 0.5rem; +} + +.p-accordion .p-accordion-header:not(.p-disabled) .p-accordion-header-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-accordion .p-accordion-header:not(.p-highlight):not(.p-disabled):hover .p-accordion-header-link { + background: #e9ecef; + border-color: #dee2e6; + color: #343a40; +} + +.p-accordion .p-accordion-header:not(.p-disabled).p-highlight .p-accordion-header-link { + background: #f8f9fa; + border-color: #dee2e6; + color: #343a40; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.p-accordion .p-accordion-header:not(.p-disabled).p-highlight:hover .p-accordion-header-link { + border-color: #dee2e6; + background: #e9ecef; + color: #343a40; +} + +.p-accordion .p-accordion-content { + padding: 1.25rem; + border: 1px solid #dee2e6; + background: #ffffff; + color: #495057; + border-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-accordion .p-accordion-tab { + margin-bottom: 4px; +} + +.p-card { + background: #ffffff; + color: #495057; + box-shadow: 0 2px 1px -1px rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 1px 3px 0 rgba(0, 0, 0, 0.12); + border-radius: 6px; +} + +.p-card .p-card-body { + padding: 1.25rem; +} + +.p-card .p-card-title { + font-size: 1.5rem; + font-weight: 700; + margin-bottom: 0.5rem; +} + +.p-card .p-card-subtitle { + font-weight: 400; + margin-bottom: 0.5rem; + color: #6c757d; +} + +.p-card .p-card-content { + padding: 1.25rem 0; +} + +.p-card .p-card-footer { + padding: 1.25rem 0 0 0; +} + +.p-fieldset { + border: 1px solid #dee2e6; + background: #ffffff; + color: #495057; + border-radius: 6px; +} + +.p-fieldset .p-fieldset-legend { + padding: 1.25rem; + border: 1px solid #dee2e6; + color: #343a40; + background: #f8f9fa; + font-weight: 700; + border-radius: 6px; +} + +.p-fieldset.p-fieldset-toggleable .p-fieldset-legend { + padding: 0; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-fieldset.p-fieldset-toggleable .p-fieldset-legend a { + padding: 1.25rem; + color: #343a40; + border-radius: 6px; + transition: box-shadow 0.2s; +} + +.p-fieldset.p-fieldset-toggleable .p-fieldset-legend a .p-fieldset-toggler { + margin-right: 0.5rem; +} + +.p-fieldset.p-fieldset-toggleable .p-fieldset-legend a:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-fieldset.p-fieldset-toggleable .p-fieldset-legend:hover { + background: #e9ecef; + border-color: #dee2e6; + color: #343a40; +} + +.p-fieldset .p-fieldset-content { + padding: 1.25rem; +} + +.p-divider .p-divider-content { + background-color: #ffffff; +} + +.p-divider.p-divider-horizontal { + margin: 1.25rem 0; + padding: 0 1.25rem; +} + +.p-divider.p-divider-horizontal:before { + border-top: 1px #dee2e6; +} + +.p-divider.p-divider-horizontal .p-divider-content { + padding: 0 0.5rem; +} + +.p-divider.p-divider-vertical { + margin: 0 1.25rem; + padding: 1.25rem 0; +} + +.p-divider.p-divider-vertical:before { + border-left: 1px #dee2e6; +} + +.p-divider.p-divider-vertical .p-divider-content { + padding: 0.5rem 0; +} + +.p-panel .p-panel-header { + border: 1px solid #dee2e6; + padding: 1.25rem; + background: #f8f9fa; + color: #343a40; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-panel .p-panel-header .p-panel-title { + font-weight: 700; +} + +.p-panel .p-panel-header .p-panel-header-icon { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-panel .p-panel-header .p-panel-header-icon:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-panel .p-panel-header .p-panel-header-icon:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-panel.p-panel-toggleable .p-panel-header { + padding: 0.75rem 1.25rem; +} + +.p-panel .p-panel-content { + padding: 1.25rem; + border: 1px solid #dee2e6; + background: #ffffff; + color: #495057; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 6px; + border-top: 0 none; +} + +.p-panel .p-panel-footer { + padding: 0.75rem 1.25rem; + border: 1px solid #dee2e6; + background: #ffffff; + color: #495057; + border-top: 0 none; +} + +.p-splitter { + border: 1px solid #dee2e6; + background: #ffffff; + border-radius: 6px; + color: #495057; +} + +.p-splitter .p-splitter-gutter { + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + background: #f8f9fa; +} + +.p-splitter .p-splitter-gutter .p-splitter-gutter-handle { + background: #dee2e6; +} + +.p-splitter .p-splitter-gutter-resizing { + background: #dee2e6; +} + +.p-scrollpanel .p-scrollpanel-bar { + background: #f8f9fa; + border: 0 none; +} + +.p-tabview .p-tabview-nav { + background: #ffffff; + border: 1px solid #dee2e6; + border-width: 0 0 2px 0; +} + +.p-tabview .p-tabview-nav li { + margin-right: 0; +} + +.p-tabview .p-tabview-nav li .p-tabview-nav-link { + border: solid #dee2e6; + border-width: 0 0 2px 0; + border-color: transparent transparent #dee2e6 transparent; + background: #ffffff; + color: #6c757d; + padding: 1.25rem; + font-weight: 700; + border-top-right-radius: 6px; + border-top-left-radius: 6px; + transition: box-shadow 0.2s; + margin: 0 0 -2px 0; +} + +.p-tabview .p-tabview-nav li .p-tabview-nav-link:not(.p-disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.2rem #ffd9ac; +} + +.p-tabview .p-tabview-nav li:not(.p-highlight):not(.p-disabled):hover .p-tabview-nav-link { + background: #ffffff; + border-color: #adb5bd; + color: #6c757d; +} + +.p-tabview .p-tabview-nav li.p-highlight .p-tabview-nav-link { + background: #ffffff; + border-color: #D7A86E; + color: #D7A86E; +} + +.p-tabview .p-tabview-close { + margin-left: 0.5rem; +} + +.p-tabview .p-tabview-nav-btn.p-link { + background: #ffffff; + color: #D7A86E; + width: 3rem; + box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12); + border-radius: 0; +} + +.p-tabview .p-tabview-nav-btn.p-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.2rem #ffd9ac; +} + +.p-tabview .p-tabview-panels { + background: #ffffff; + padding: 1.25rem; + border: 0 none; + color: #495057; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-toolbar { + background: #f8f9fa; + border: 1px solid #dee2e6; + padding: 1.25rem; + border-radius: 6px; +} + +.p-toolbar .p-toolbar-separator { + margin: 0 0.5rem; +} + +.p-confirm-popup { + background: #ffffff; + color: #495057; + border: 0 none; + border-radius: 6px; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); +} + +.p-confirm-popup .p-confirm-popup-content { + padding: 1.25rem; +} + +.p-confirm-popup .p-confirm-popup-footer { + text-align: right; + padding: 0 1.25rem 1.25rem 1.25rem; +} + +.p-confirm-popup .p-confirm-popup-footer button { + margin: 0 0.5rem 0 0; + width: auto; +} + +.p-confirm-popup .p-confirm-popup-footer button:last-child { + margin: 0; +} + +.p-confirm-popup:after { + border: solid transparent; + border-color: rgba(255, 255, 255, 0); + border-bottom-color: #ffffff; +} + +.p-confirm-popup:before { + border: solid transparent; + border-color: rgba(255, 255, 255, 0); + border-bottom-color: #ffffff; +} + +.p-confirm-popup.p-confirm-popup-flipped:after { + border-top-color: #ffffff; +} + +.p-confirm-popup.p-confirm-popup-flipped:before { + border-top-color: #ffffff; +} + +.p-confirm-popup .p-confirm-popup-icon { + font-size: 1.5rem; +} + +.p-confirm-popup .p-confirm-popup-message { + margin-left: 1rem; +} + +.p-dialog { + border-radius: 6px; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); + border: 0 none; +} + +.p-dialog .p-dialog-header { + border-bottom: 0 none; + background: #ffffff; + color: #343a40; + padding: 1.5rem; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-dialog .p-dialog-header .p-dialog-title { + font-weight: 700; + font-size: 1.25rem; +} + +.p-dialog .p-dialog-header .p-dialog-header-icon { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + margin-right: 0.5rem; +} + +.p-dialog .p-dialog-header .p-dialog-header-icon:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-dialog .p-dialog-header .p-dialog-header-icon:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-dialog .p-dialog-header .p-dialog-header-icon:last-child { + margin-right: 0; +} + +.p-dialog .p-dialog-content { + background: #ffffff; + color: #495057; + padding: 0 1.5rem 2rem 1.5rem; +} + +.p-dialog .p-dialog-footer { + border-top: 0 none; + background: #ffffff; + color: #495057; + padding: 0 1.5rem 1.5rem 1.5rem; + text-align: right; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-dialog .p-dialog-footer button { + margin: 0 0.5rem 0 0; + width: auto; +} + +.p-dialog.p-confirm-dialog .p-confirm-dialog-icon { + font-size: 2rem; +} + +.p-dialog.p-confirm-dialog .p-confirm-dialog-message { + margin-left: 1rem; +} + +.p-overlaypanel { + background: #ffffff; + color: #495057; + border: 0 none; + border-radius: 6px; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); +} + +.p-overlaypanel .p-overlaypanel-content { + padding: 1.25rem; +} + +.p-overlaypanel .p-overlaypanel-close { + background: #D7A86E; + color: #ffffff; + width: 2rem; + height: 2rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 50%; + position: absolute; + top: -1rem; + right: -1rem; +} + +.p-overlaypanel .p-overlaypanel-close:enabled:hover { + background: #C08135; + color: #ffffff; +} + +.p-overlaypanel:after { + border: solid transparent; + border-color: rgba(255, 255, 255, 0); + border-bottom-color: #ffffff; +} + +.p-overlaypanel:before { + border: solid transparent; + border-color: rgba(255, 255, 255, 0); + border-bottom-color: #ffffff; +} + +.p-overlaypanel.p-overlaypanel-flipped:after { + border-top-color: #ffffff; +} + +.p-overlaypanel.p-overlaypanel-flipped:before { + border-top-color: #ffffff; +} + +.p-sidebar { + background: #ffffff; + color: #495057; + border: 0 none; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); +} + +.p-sidebar .p-sidebar-header { + padding: 1.25rem; +} + +.p-sidebar .p-sidebar-header .p-sidebar-close, +.p-sidebar .p-sidebar-header .p-sidebar-icon { + width: 2rem; + height: 2rem; + color: #6c757d; + border: 0 none; + background: transparent; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-sidebar .p-sidebar-header .p-sidebar-close:enabled:hover, +.p-sidebar .p-sidebar-header .p-sidebar-icon:enabled:hover { + color: #343a40; + border-color: transparent; + background: #e9ecef; +} + +.p-sidebar .p-sidebar-header .p-sidebar-close:focus, +.p-sidebar .p-sidebar-header .p-sidebar-icon:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-sidebar .p-sidebar-header+.p-sidebar-content { + padding-top: 0; +} + +.p-sidebar .p-sidebar-content { + padding: 1.25rem; +} + +.p-tooltip .p-tooltip-text { + background: #495057; + color: #ffffff; + padding: 0.75rem 0.75rem; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); + border-radius: 6px; +} + +.p-tooltip.p-tooltip-right .p-tooltip-arrow { + border-right-color: #495057; +} + +.p-tooltip.p-tooltip-left .p-tooltip-arrow { + border-left-color: #495057; +} + +.p-tooltip.p-tooltip-top .p-tooltip-arrow { + border-top-color: #495057; +} + +.p-tooltip.p-tooltip-bottom .p-tooltip-arrow { + border-bottom-color: #495057; +} + +.p-fileupload .p-fileupload-buttonbar { + background: #f8f9fa; + padding: 1.25rem; + border: 1px solid #dee2e6; + color: #343a40; + border-bottom: 0 none; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-fileupload .p-fileupload-buttonbar .p-button { + margin-right: 0.5rem; +} + +.p-fileupload .p-fileupload-content { + background: #ffffff; + padding: 2rem 1rem; + border: 1px solid #dee2e6; + color: #495057; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-fileupload .p-progressbar { + height: 0.25rem; +} + +.p-fileupload .p-fileupload-row>div { + padding: 1rem 1rem; +} + +.p-fileupload.p-fileupload-advanced .p-message { + margin-top: 0; +} + +.p-breadcrumb { + background: #ffffff; + border: 1px solid #dee2e6; + border-radius: 6px; + padding: 1rem; +} + +.p-breadcrumb ul li .p-menuitem-link { + transition: box-shadow 0.2s; + border-radius: 6px; +} + +.p-breadcrumb ul li .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-breadcrumb ul li .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-breadcrumb ul li .p-menuitem-link .p-menuitem-icon { + color: #6c757d; +} + +.p-breadcrumb ul li.p-breadcrumb-chevron { + margin: 0 0.5rem 0 0.5rem; + color: #495057; +} + +.p-breadcrumb ul li:last-child .p-menuitem-text { + color: #495057; +} + +.p-breadcrumb ul li:last-child .p-menuitem-icon { + color: #6c757d; +} + +.p-contextmenu { + padding: 0.25rem 0; + background: #ffffff; + color: #495057; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); + border-radius: 6px; + width: 12.5rem; +} + +.p-contextmenu .p-menuitem-link { + padding: 0.75rem 1.25rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-contextmenu .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-contextmenu .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-contextmenu .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-contextmenu .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-contextmenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-contextmenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-contextmenu .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-contextmenu .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-contextmenu .p-submenu-list { + padding: 0.25rem 0; + background: #ffffff; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); + border-radius: 6px; +} + +.p-contextmenu .p-menuitem.p-menuitem-active>.p-menuitem-link { + background: #EEF2FF; +} + +.p-contextmenu .p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-text { + color: #C08135; +} + +.p-contextmenu .p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-icon, +.p-contextmenu .p-menuitem.p-menuitem-active>.p-menuitem-link .p-submenu-icon { + color: #C08135; +} + +.p-contextmenu .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-contextmenu .p-submenu-icon { + font-size: 0.875rem; +} + +.p-dock .p-dock-list { + background: rgba(255, 255, 255, 0.1); + border: 1px solid rgba(255, 255, 255, 0.2); + padding: 0.5rem 0.5rem; + border-radius: 0.5rem; +} + +.p-dock .p-dock-item { + padding: 0.5rem; +} + +.p-dock .p-dock-action { + width: 4rem; + height: 4rem; +} + +.p-dock.p-dock-magnification.p-dock-top .p-dock-item-second-prev, +.p-dock.p-dock-magnification.p-dock-top .p-dock-item-second-next, +.p-dock.p-dock-magnification.p-dock-bottom .p-dock-item-second-prev, +.p-dock.p-dock-magnification.p-dock-bottom .p-dock-item-second-next { + margin: 0 0.9rem; +} + +.p-dock.p-dock-magnification.p-dock-top .p-dock-item-prev, +.p-dock.p-dock-magnification.p-dock-top .p-dock-item-next, +.p-dock.p-dock-magnification.p-dock-bottom .p-dock-item-prev, +.p-dock.p-dock-magnification.p-dock-bottom .p-dock-item-next { + margin: 0 1.3rem; +} + +.p-dock.p-dock-magnification.p-dock-top .p-dock-item-current, +.p-dock.p-dock-magnification.p-dock-bottom .p-dock-item-current { + margin: 0 1.5rem; +} + +.p-dock.p-dock-magnification.p-dock-left .p-dock-item-second-prev, +.p-dock.p-dock-magnification.p-dock-left .p-dock-item-second-next, +.p-dock.p-dock-magnification.p-dock-right .p-dock-item-second-prev, +.p-dock.p-dock-magnification.p-dock-right .p-dock-item-second-next { + margin: 0.9rem 0; +} + +.p-dock.p-dock-magnification.p-dock-left .p-dock-item-prev, +.p-dock.p-dock-magnification.p-dock-left .p-dock-item-next, +.p-dock.p-dock-magnification.p-dock-right .p-dock-item-prev, +.p-dock.p-dock-magnification.p-dock-right .p-dock-item-next { + margin: 1.3rem 0; +} + +.p-dock.p-dock-magnification.p-dock-left .p-dock-item-current, +.p-dock.p-dock-magnification.p-dock-right .p-dock-item-current { + margin: 1.5rem 0; +} + +@media screen and (max-width: 960px) { + + .p-dock.p-dock-top .p-dock-list-container, + .p-dock.p-dock-bottom .p-dock-list-container { + overflow-x: auto; + width: 100%; + } + + .p-dock.p-dock-top .p-dock-list-container .p-dock-list, + .p-dock.p-dock-bottom .p-dock-list-container .p-dock-list { + margin: 0 auto; + } + + .p-dock.p-dock-left .p-dock-list-container, + .p-dock.p-dock-right .p-dock-list-container { + overflow-y: auto; + height: 100%; + } + + .p-dock.p-dock-left .p-dock-list-container .p-dock-list, + .p-dock.p-dock-right .p-dock-list-container .p-dock-list { + margin: auto 0; + } + + .p-dock .p-dock-list .p-dock-item { + transform: none; + margin: 0; + } +} + +.p-megamenu { + padding: 0.5rem; + background: #f8f9fa; + color: #495057; + border: 1px solid #dee2e6; + border-radius: 6px; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem>.p-menuitem-link { + padding: 0.75rem 1.25rem; + color: #495057; + border-radius: 6px; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem>.p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem>.p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem>.p-menuitem-link .p-submenu-icon { + color: #6c757d; + margin-left: 0.5rem; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem>.p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link, +.p-megamenu .p-megamenu-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link:not(.p-disabled):hover { + background: #EEF2FF; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-text, +.p-megamenu .p-megamenu-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #C08135; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-icon, +.p-megamenu .p-megamenu-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #C08135; +} + +.p-megamenu .p-megamenu-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link .p-submenu-icon, +.p-megamenu .p-megamenu-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #C08135; +} + +.p-megamenu .p-menuitem-link { + padding: 0.75rem 1.25rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-megamenu .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-megamenu .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-megamenu .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-megamenu .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-megamenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-megamenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-megamenu .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-megamenu .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-megamenu .p-megamenu-panel { + background: #ffffff; + color: #495057; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-megamenu .p-megamenu-submenu-header { + margin: 0; + padding: 0.75rem 1.25rem; + color: #343a40; + background: #ffffff; + font-weight: 700; + border-top-right-radius: 6px; + border-top-left-radius: 6px; +} + +.p-megamenu .p-megamenu-submenu { + padding: 0.25rem 0; + width: 12.5rem; +} + +.p-megamenu .p-megamenu-submenu .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-megamenu .p-menuitem.p-menuitem-active>.p-menuitem-link { + background: #EEF2FF; +} + +.p-megamenu .p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-text { + color: #C08135; +} + +.p-megamenu .p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-icon, +.p-megamenu .p-menuitem.p-menuitem-active>.p-menuitem-link .p-submenu-icon { + color: #C08135; +} + +.p-megamenu.p-megamenu-vertical { + width: 12.5rem; + padding: 0.25rem 0; +} + +.p-menu { + padding: 0.25rem 0; + background: #ffffff; + color: #495057; + border: 1px solid #dee2e6; + border-radius: 6px; + width: 12.5rem; +} + +.p-menu .p-menuitem-link { + padding: 0.75rem 1.25rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-menu .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-menu .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-menu .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-menu .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-menu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-menu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-menu .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-menu .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-menu.p-menu-overlay { + background: #ffffff; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-menu .p-submenu-header { + margin: 0; + padding: 0.75rem 1.25rem; + color: #343a40; + background: #ffffff; + font-weight: 700; + border-top-right-radius: 0; + border-top-left-radius: 0; +} + +.p-menu .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-menubar { + padding: 0.5rem; + background: #f8f9fa; + color: #495057; + border: 1px solid #dee2e6; + border-radius: 6px; +} + +.p-menubar .p-menuitem-link { + padding: 0.75rem 1.25rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-menubar .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-menubar .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-menubar .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-menubar .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-menubar .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-menubar .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-menubar .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-menubar .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link { + padding: 0.75rem 1.25rem; + color: #495057; + border-radius: 6px; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link .p-submenu-icon { + color: #6c757d; + margin-left: 0.5rem; +} + +.p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-menubar .p-menubar-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link, +.p-menubar .p-menubar-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link:not(.p-disabled):hover { + background: #EEF2FF; +} + +.p-menubar .p-menubar-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-text, +.p-menubar .p-menubar-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #C08135; +} + +.p-menubar .p-menubar-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-icon, +.p-menubar .p-menubar-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #C08135; +} + +.p-menubar .p-menubar-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link .p-submenu-icon, +.p-menubar .p-menubar-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #C08135; +} + +.p-menubar .p-submenu-list { + padding: 0.25rem 0; + background: #ffffff; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); + width: 12.5rem; +} + +.p-menubar .p-submenu-list .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-menubar .p-submenu-list .p-submenu-icon { + font-size: 0.875rem; +} + +.p-menubar .p-menuitem.p-menuitem-active>.p-menuitem-link { + background: #EEF2FF; +} + +.p-menubar .p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-text { + color: #C08135; +} + +.p-menubar .p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-icon, +.p-menubar .p-menuitem.p-menuitem-active>.p-menuitem-link .p-submenu-icon { + color: #C08135; +} + +@media screen and (max-width: 960px) { + .p-menubar { + position: relative; + } + + .p-menubar .p-menubar-button { + display: flex; + width: 2rem; + height: 2rem; + color: #6c757d; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + } + + .p-menubar .p-menubar-button:hover { + color: #6c757d; + background: #e9ecef; + } + + .p-menubar .p-menubar-button:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; + } + + .p-menubar .p-menubar-root-list { + position: absolute; + display: none; + padding: 0.25rem 0; + background: #ffffff; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); + width: 100%; + } + + .p-menubar .p-menubar-root-list .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; + } + + .p-menubar .p-menubar-root-list .p-submenu-icon { + font-size: 0.875rem; + } + + .p-menubar .p-menubar-root-list>.p-menuitem { + width: 100%; + position: static; + } + + .p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link { + padding: 0.75rem 1.25rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; + } + + .p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link .p-menuitem-text { + color: #495057; + } + + .p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; + } + + .p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link .p-submenu-icon { + color: #6c757d; + } + + .p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; + } + + .p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; + } + + .p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; + } + + .p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; + } + + .p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; + } + + .p-menubar .p-menubar-root-list>.p-menuitem>.p-menuitem-link>.p-submenu-icon { + margin-left: auto; + transition: transform 0.2s; + } + + .p-menubar .p-menubar-root-list>.p-menuitem.p-menuitem-active>.p-menuitem-link>.p-submenu-icon { + transform: rotate(-180deg); + } + + .p-menubar .p-menubar-root-list .p-submenu-list { + width: 100%; + position: static; + box-shadow: none; + border: 0 none; + } + + .p-menubar .p-menubar-root-list .p-submenu-list .p-submenu-icon { + transition: transform 0.2s; + transform: rotate(90deg); + } + + .p-menubar .p-menubar-root-list .p-submenu-list .p-menuitem-active>.p-menuitem-link>.p-submenu-icon { + transform: rotate(-90deg); + } + + .p-menubar .p-menubar-root-list .p-menuitem { + width: 100%; + position: static; + } + + .p-menubar .p-menubar-root-list ul li a { + padding-left: 2.25rem; + } + + .p-menubar .p-menubar-root-list ul li ul li a { + padding-left: 3.75rem; + } + + .p-menubar .p-menubar-root-list ul li ul li ul li a { + padding-left: 5.25rem; + } + + .p-menubar .p-menubar-root-list ul li ul li ul li ul li a { + padding-left: 6.75rem; + } + + .p-menubar .p-menubar-root-list ul li ul li ul li ul li ul li a { + padding-left: 8.25rem; + } + + .p-menubar.p-menubar-mobile-active .p-menubar-root-list { + display: flex; + flex-direction: column; + top: 100%; + left: 0; + z-index: 1; + } +} + +.p-panelmenu .p-panelmenu-header>a { + padding: 1.25rem; + border: 1px solid #dee2e6; + color: #6c757d; + background: #f8f9fa; + font-weight: 700; + border-radius: 6px; + transition: box-shadow 0.2s; +} + +.p-panelmenu .p-panelmenu-header>a .p-panelmenu-icon { + margin-right: 0.5rem; +} + +.p-panelmenu .p-panelmenu-header>a .p-menuitem-icon { + margin-right: 0.5rem; +} + +.p-panelmenu .p-panelmenu-header>a:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-panelmenu .p-panelmenu-header:not(.p-highlight):not(.p-disabled)>a:hover { + background: #e9ecef; + border-color: #dee2e6; + color: #343a40; +} + +.p-panelmenu .p-panelmenu-header.p-highlight { + margin-bottom: 0; +} + +.p-panelmenu .p-panelmenu-header.p-highlight>a { + background: #f8f9fa; + border-color: #dee2e6; + color: #343a40; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.p-panelmenu .p-panelmenu-header.p-highlight:not(.p-disabled)>a:hover { + border-color: #dee2e6; + background: #e9ecef; + color: #343a40; +} + +.p-panelmenu .p-panelmenu-content { + padding: 0.25rem 0; + border: 1px solid #dee2e6; + background: #ffffff; + color: #495057; + margin-bottom: 4px; + border-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 6px; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link { + padding: 0.75rem 1.25rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-panelmenu .p-panelmenu-content .p-menuitem .p-menuitem-link .p-panelmenu-icon { + margin-right: 0.5rem; +} + +.p-panelmenu .p-panelmenu-content .p-submenu-list:not(.p-panelmenu-root-submenu) { + padding: 0 0 0 1rem; +} + +.p-panelmenu .p-panelmenu-panel { + margin-bottom: 4px; +} + +.p-slidemenu { + padding: 0.25rem 0; + background: #ffffff; + color: #495057; + border: 1px solid #dee2e6; + border-radius: 6px; + width: 12.5rem; +} + +.p-slidemenu .p-menuitem-link { + padding: 0.75rem 1.25rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-slidemenu .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-slidemenu .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-slidemenu .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-slidemenu .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-slidemenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-slidemenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-slidemenu .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-slidemenu .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-slidemenu.p-slidemenu-overlay { + background: #ffffff; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-slidemenu .p-slidemenu-list { + padding: 0.25rem 0; + background: #ffffff; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-slidemenu .p-slidemenu.p-slidemenu-active>.p-slidemenu-link { + background: #EEF2FF; +} + +.p-slidemenu .p-slidemenu.p-slidemenu-active>.p-slidemenu-link .p-slidemenu-text { + color: #C08135; +} + +.p-slidemenu .p-slidemenu.p-slidemenu-active>.p-slidemenu-link .p-slidemenu-icon, +.p-slidemenu .p-slidemenu.p-slidemenu-active>.p-slidemenu-link .p-slidemenu-icon { + color: #C08135; +} + +.p-slidemenu .p-slidemenu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-slidemenu .p-slidemenu-icon { + font-size: 0.875rem; +} + +.p-slidemenu .p-slidemenu-backward { + padding: 0.75rem 1.25rem; + color: #495057; +} + +.p-steps .p-steps-item .p-menuitem-link { + background: transparent; + transition: box-shadow 0.2s; + border-radius: 6px; + background: #ffffff; +} + +.p-steps .p-steps-item .p-menuitem-link .p-steps-number { + color: #495057; + border: 1px solid #e9ecef; + background: #ffffff; + min-width: 2rem; + height: 2rem; + line-height: 2rem; + font-size: 1.143rem; + z-index: 1; + border-radius: 50%; +} + +.p-steps .p-steps-item .p-menuitem-link .p-steps-title { + margin-top: 0.5rem; + color: #6c757d; +} + +.p-steps .p-steps-item .p-menuitem-link:not(.p-disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-steps .p-steps-item.p-highlight .p-steps-number { + background: #EEF2FF; + color: #C08135; +} + +.p-steps .p-steps-item.p-highlight .p-steps-title { + font-weight: 700; + color: #495057; +} + +.p-steps .p-steps-item:before { + content: " "; + border-top: 1px solid #dee2e6; + width: 100%; + top: 50%; + left: 0; + display: block; + position: absolute; + margin-top: -1rem; +} + +.p-tabmenu .p-tabmenu-nav { + background: #ffffff; + border: 1px solid #dee2e6; + border-width: 0 0 2px 0; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem { + margin-right: 0; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem .p-menuitem-link { + border: solid #dee2e6; + border-width: 0 0 2px 0; + border-color: transparent transparent #dee2e6 transparent; + background: #ffffff; + color: #6c757d; + padding: 1.25rem; + font-weight: 700; + border-top-right-radius: 6px; + border-top-left-radius: 6px; + transition: box-shadow 0.2s; + margin: 0 0 -2px 0; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem .p-menuitem-link .p-menuitem-icon { + margin-right: 0.5rem; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem .p-menuitem-link:not(.p-disabled):focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 0.2rem #ffd9ac; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem:not(.p-highlight):not(.p-disabled):hover .p-menuitem-link { + background: #ffffff; + border-color: #adb5bd; + color: #6c757d; +} + +.p-tabmenu .p-tabmenu-nav .p-tabmenuitem.p-highlight .p-menuitem-link { + background: #ffffff; + border-color: #D7A86E; + color: #D7A86E; +} + +.p-tieredmenu { + padding: 0.25rem 0; + background: #ffffff; + color: #495057; + border: 1px solid #dee2e6; + border-radius: 6px; + width: 12.5rem; +} + +.p-tieredmenu .p-menuitem-link { + padding: 0.75rem 1.25rem; + color: #495057; + border-radius: 0; + transition: box-shadow 0.2s; + user-select: none; +} + +.p-tieredmenu .p-menuitem-link .p-menuitem-text { + color: #495057; +} + +.p-tieredmenu .p-menuitem-link .p-menuitem-icon { + color: #6c757d; + margin-right: 0.5rem; +} + +.p-tieredmenu .p-menuitem-link .p-submenu-icon { + color: #6c757d; +} + +.p-tieredmenu .p-menuitem-link:not(.p-disabled):hover { + background: #e9ecef; +} + +.p-tieredmenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text { + color: #495057; +} + +.p-tieredmenu .p-menuitem-link:not(.p-disabled):hover .p-menuitem-icon { + color: #6c757d; +} + +.p-tieredmenu .p-menuitem-link:not(.p-disabled):hover .p-submenu-icon { + color: #6c757d; +} + +.p-tieredmenu .p-menuitem-link:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: inset 0 0 0 1px #ffd9ac; +} + +.p-tieredmenu.p-tieredmenu-overlay { + background: #ffffff; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-tieredmenu .p-submenu-list { + padding: 0.25rem 0; + background: #ffffff; + border: 0 none; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); +} + +.p-tieredmenu .p-menuitem.p-menuitem-active>.p-menuitem-link { + background: #EEF2FF; +} + +.p-tieredmenu .p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-text { + color: #C08135; +} + +.p-tieredmenu .p-menuitem.p-menuitem-active>.p-menuitem-link .p-menuitem-icon, +.p-tieredmenu .p-menuitem.p-menuitem-active>.p-menuitem-link .p-submenu-icon { + color: #C08135; +} + +.p-tieredmenu .p-menu-separator { + border-top: 1px solid #dee2e6; + margin: 0.25rem 0; +} + +.p-tieredmenu .p-submenu-icon { + font-size: 0.875rem; +} + +.p-inline-message { + padding: 0.75rem 0.75rem; + margin: 0; + border-radius: 6px; +} + +.p-inline-message.p-inline-message-info { + background: #e9e9ff; + border: solid #696cff; + border-width: 0px; + color: #696cff; +} + +.p-inline-message.p-inline-message-info .p-inline-message-icon { + color: #696cff; +} + +.p-inline-message.p-inline-message-success { + background: #e4f8f0; + border: solid #1ea97c; + border-width: 0px; + color: #1ea97c; +} + +.p-inline-message.p-inline-message-success .p-inline-message-icon { + color: #1ea97c; +} + +.p-inline-message.p-inline-message-warn { + background: #fff2e2; + border: solid #cc8925; + border-width: 0px; + color: #cc8925; +} + +.p-inline-message.p-inline-message-warn .p-inline-message-icon { + color: #cc8925; +} + +.p-inline-message.p-inline-message-error { + background: #ffe7e6; + border: solid #ff5757; + border-width: 0px; + color: #ff5757; +} + +.p-inline-message.p-inline-message-error .p-inline-message-icon { + color: #ff5757; +} + +.p-inline-message .p-inline-message-icon { + font-size: 1rem; + margin-right: 0.5rem; +} + +.p-inline-message .p-inline-message-text { + font-size: 1rem; +} + +.p-inline-message.p-inline-message-icon-only .p-inline-message-icon { + margin-right: 0; +} + +.p-message { + margin: 1rem 0; + border-radius: 6px; +} + +.p-message .p-message-wrapper { + padding: 1.25rem 1.75rem; +} + +.p-message .p-message-close { + width: 2rem; + height: 2rem; + border-radius: 50%; + background: transparent; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-message .p-message-close:hover { + background: rgba(255, 255, 255, 0.3); +} + +.p-message .p-message-close:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-message.p-message-info { + background: #e9e9ff; + border: solid #696cff; + border-width: 0 0 0 6px; + color: #696cff; +} + +.p-message.p-message-info .p-message-icon { + color: #696cff; +} + +.p-message.p-message-info .p-message-close { + color: #696cff; +} + +.p-message.p-message-success { + background: #e4f8f0; + border: solid #1ea97c; + border-width: 0 0 0 6px; + color: #1ea97c; +} + +.p-message.p-message-success .p-message-icon { + color: #1ea97c; +} + +.p-message.p-message-success .p-message-close { + color: #1ea97c; +} + +.p-message.p-message-warn { + background: #fff2e2; + border: solid #cc8925; + border-width: 0 0 0 6px; + color: #cc8925; +} + +.p-message.p-message-warn .p-message-icon { + color: #cc8925; +} + +.p-message.p-message-warn .p-message-close { + color: #cc8925; +} + +.p-message.p-message-error { + background: #ffe7e6; + border: solid #ff5757; + border-width: 0 0 0 6px; + color: #ff5757; +} + +.p-message.p-message-error .p-message-icon { + color: #ff5757; +} + +.p-message.p-message-error .p-message-close { + color: #ff5757; +} + +.p-message .p-message-text { + font-size: 1rem; + font-weight: 400; +} + +.p-message .p-message-icon { + font-size: 1.5rem; + margin-right: 0.5rem; +} + +.p-toast { + opacity: 0.9; +} + +.p-toast .p-toast-message { + margin: 0 0 1rem 0; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); + border-radius: 6px; +} + +.p-toast .p-toast-message .p-toast-message-content { + padding: 1rem; + border-width: 0 0 0 6px; +} + +.p-toast .p-toast-message .p-toast-message-content .p-toast-message-text { + margin: 0 0 0 1rem; +} + +.p-toast .p-toast-message .p-toast-message-content .p-toast-message-icon { + font-size: 2rem; +} + +.p-toast .p-toast-message .p-toast-message-content .p-toast-summary { + font-weight: 700; +} + +.p-toast .p-toast-message .p-toast-message-content .p-toast-detail { + margin: 0.5rem 0 0 0; +} + +.p-toast .p-toast-message .p-toast-icon-close { + width: 2rem; + height: 2rem; + border-radius: 50%; + background: transparent; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-toast .p-toast-message .p-toast-icon-close:hover { + background: rgba(255, 255, 255, 0.3); +} + +.p-toast .p-toast-message .p-toast-icon-close:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-toast .p-toast-message.p-toast-message-info { + background: #e9e9ff; + border: solid #696cff; + border-width: 0 0 0 6px; + color: #696cff; +} + +.p-toast .p-toast-message.p-toast-message-info .p-toast-message-icon, +.p-toast .p-toast-message.p-toast-message-info .p-toast-icon-close { + color: #696cff; +} + +.p-toast .p-toast-message.p-toast-message-success { + background: #e4f8f0; + border: solid #1ea97c; + border-width: 0 0 0 6px; + color: #1ea97c; +} + +.p-toast .p-toast-message.p-toast-message-success .p-toast-message-icon, +.p-toast .p-toast-message.p-toast-message-success .p-toast-icon-close { + color: #1ea97c; +} + +.p-toast .p-toast-message.p-toast-message-warn { + background: #fff2e2; + border: solid #cc8925; + border-width: 0 0 0 6px; + color: #cc8925; +} + +.p-toast .p-toast-message.p-toast-message-warn .p-toast-message-icon, +.p-toast .p-toast-message.p-toast-message-warn .p-toast-icon-close { + color: #cc8925; +} + +.p-toast .p-toast-message.p-toast-message-error { + background: #ffe7e6; + border: solid #ff5757; + border-width: 0 0 0 6px; + color: #ff5757; +} + +.p-toast .p-toast-message.p-toast-message-error .p-toast-message-icon, +.p-toast .p-toast-message.p-toast-message-error .p-toast-icon-close { + color: #ff5757; +} + +.p-galleria .p-galleria-close { + margin: 0.5rem; + background: transparent; + color: #f8f9fa; + width: 4rem; + height: 4rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 50%; +} + +.p-galleria .p-galleria-close .p-galleria-close-icon { + font-size: 2rem; +} + +.p-galleria .p-galleria-close:hover { + background: rgba(255, 255, 255, 0.1); + color: #f8f9fa; +} + +.p-galleria .p-galleria-item-nav { + background: transparent; + color: #f8f9fa; + width: 4rem; + height: 4rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 6px; + margin: 0 0.5rem; +} + +.p-galleria .p-galleria-item-nav .p-galleria-item-prev-icon, +.p-galleria .p-galleria-item-nav .p-galleria-item-next-icon { + font-size: 2rem; +} + +.p-galleria .p-galleria-item-nav:not(.p-disabled):hover { + background: rgba(255, 255, 255, 0.1); + color: #f8f9fa; +} + +.p-galleria .p-galleria-caption { + background: rgba(0, 0, 0, 0.5); + color: #f8f9fa; + padding: 1rem; +} + +.p-galleria .p-galleria-indicators { + padding: 1rem; +} + +.p-galleria .p-galleria-indicators .p-galleria-indicator button { + background-color: #ced4da; + width: 1rem; + height: 1rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 50%; +} + +.p-galleria .p-galleria-indicators .p-galleria-indicator button:hover { + background: #adb5bd; +} + +.p-galleria .p-galleria-indicators .p-galleria-indicator.p-highlight button { + background: #EEF2FF; + color: #C08135; +} + +.p-galleria.p-galleria-indicators-bottom .p-galleria-indicator, +.p-galleria.p-galleria-indicators-top .p-galleria-indicator { + margin-right: 0.5rem; +} + +.p-galleria.p-galleria-indicators-left .p-galleria-indicator, +.p-galleria.p-galleria-indicators-right .p-galleria-indicator { + margin-bottom: 0.5rem; +} + +.p-galleria.p-galleria-indicator-onitem .p-galleria-indicators { + background: rgba(0, 0, 0, 0.5); +} + +.p-galleria.p-galleria-indicator-onitem .p-galleria-indicators .p-galleria-indicator button { + background: rgba(255, 255, 255, 0.4); +} + +.p-galleria.p-galleria-indicator-onitem .p-galleria-indicators .p-galleria-indicator button:hover { + background: rgba(255, 255, 255, 0.6); +} + +.p-galleria.p-galleria-indicator-onitem .p-galleria-indicators .p-galleria-indicator.p-highlight button { + background: #EEF2FF; + color: #C08135; +} + +.p-galleria .p-galleria-thumbnail-container { + background: rgba(0, 0, 0, 0.9); + padding: 1rem 0.25rem; +} + +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-prev, +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-next { + margin: 0.5rem; + background-color: transparent; + color: #f8f9fa; + width: 2rem; + height: 2rem; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + border-radius: 50%; +} + +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-prev:hover, +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-next:hover { + background: rgba(255, 255, 255, 0.1); + color: #f8f9fa; +} + +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-item-content { + transition: box-shadow 0.2s; +} + +.p-galleria .p-galleria-thumbnail-container .p-galleria-thumbnail-item-content:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-galleria-mask { + --maskbg: rgba(0, 0, 0, 0.9); +} + +.p-image-mask { + --maskbg: rgba(0, 0, 0, 0.9); +} + +.p-image-preview-indicator { + background-color: transparent; + color: #f8f9fa; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-image-preview-container:hover>.p-image-preview-indicator { + background-color: rgba(0, 0, 0, 0.5); +} + +.p-image-toolbar { + padding: 1rem; +} + +.p-image-action.p-link { + color: #f8f9fa; + background-color: transparent; + width: 3rem; + height: 3rem; + border-radius: 50%; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + margin-right: 0.5rem; +} + +.p-image-action.p-link:last-child { + margin-right: 0; +} + +.p-image-action.p-link:hover { + color: #f8f9fa; + background-color: rgba(255, 255, 255, 0.1); +} + +.p-image-action.p-link i { + font-size: 1.5rem; +} + +.p-avatar { + background-color: #dee2e6; + border-radius: 6px; +} + +.p-avatar.p-avatar-lg { + width: 3rem; + height: 3rem; + font-size: 1.5rem; +} + +.p-avatar.p-avatar-lg .p-avatar-icon { + font-size: 1.5rem; +} + +.p-avatar.p-avatar-xl { + width: 4rem; + height: 4rem; + font-size: 2rem; +} + +.p-avatar.p-avatar-xl .p-avatar-icon { + font-size: 2rem; +} + +.p-avatar-group .p-avatar { + border: 2px solid #ffffff; +} + +.p-chip { + background-color: #dee2e6; + color: #495057; + border-radius: 16px; + padding: 0 0.75rem; +} + +.p-chip .p-chip-text { + line-height: 1.5; + margin-top: 0.375rem; + margin-bottom: 0.375rem; +} + +.p-chip .p-chip-icon { + margin-right: 0.5rem; +} + +.p-chip img { + width: 2.25rem; + height: 2.25rem; + margin-left: -0.75rem; + margin-right: 0.5rem; +} + +.p-chip .p-chip-remove-icon { + border-radius: 6px; + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; + margin-left: 0.5rem; +} + +.p-chip .p-chip-remove-icon:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-scrolltop { + width: 3rem; + height: 3rem; + border-radius: 50%; + box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); + transition: background-color 0.2s, color 0.2s, box-shadow 0.2s; +} + +.p-scrolltop.p-link { + background: rgba(0, 0, 0, 0.7); +} + +.p-scrolltop.p-link:hover { + background: rgba(0, 0, 0, 0.8); +} + +.p-scrolltop .p-scrolltop-icon { + font-size: 1.5rem; + color: #f8f9fa; +} + +.p-skeleton { + background-color: #dee2e6; + border-radius: 6px; +} + +.p-skeleton:after { + background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0)); +} + +.p-tag { + background: #D7A86E; + color: #ffffff; + font-size: 0.75rem; + font-weight: 700; + padding: 0.25rem 0.4rem; + border-radius: 6px; +} + +.p-tag.p-tag-success { + background-color: #22C55E; + color: #ffffff; +} + +.p-tag.p-tag-info { + background-color: #3B82F6; + color: #ffffff; +} + +.p-tag.p-tag-warning { + background-color: #F59E0B; + color: #ffffff; +} + +.p-tag.p-tag-danger { + background-color: #EF4444; + color: #ffffff; +} + +.p-tag .p-tag-icon { + margin-right: 0.25rem; + font-size: 0.75rem; +} + +.p-inplace .p-inplace-display { + padding: 0.75rem 0.75rem; + border-radius: 6px; + transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-inplace .p-inplace-display:not(.p-disabled):hover { + background: #e9ecef; + color: #495057; +} + +.p-inplace .p-inplace-display:focus { + outline: 0 none; + outline-offset: 0; + box-shadow: 0 0 0 0.2rem #ffd9ac; +} + +.p-progressbar { + border: 0 none; + height: 1.5rem; + background: #dee2e6; + border-radius: 6px; +} + +.p-progressbar .p-progressbar-value { + border: 0 none; + margin: 0; + background: #D7A86E; +} + +.p-progressbar .p-progressbar-label { + color: #495057; + line-height: 1.5rem; +} + +.p-terminal { + background: #ffffff; + color: #495057; + border: 1px solid #dee2e6; + padding: 1.25rem; +} + +.p-terminal .p-terminal-input { + font-size: 1rem; + font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; +} + +.p-badge { + background: #D7A86E; + color: #ffffff; + font-size: 0.75rem; + font-weight: 700; + min-width: 1.5rem; + height: 1.5rem; + line-height: 1.5rem; +} + +.p-badge.p-badge-secondary { + background-color: #64748B; + color: #ffffff; +} + +.p-badge.p-badge-success { + background-color: #22C55E; + color: #ffffff; +} + +.p-badge.p-badge-info { + background-color: #3B82F6; + color: #ffffff; +} + +.p-badge.p-badge-warning { + background-color: #F59E0B; + color: #ffffff; +} + +.p-badge.p-badge-danger { + background-color: #EF4444; + color: #ffffff; +} + +.p-badge.p-badge-lg { + font-size: 1.125rem; + min-width: 2.25rem; + height: 2.25rem; + line-height: 2.25rem; +} + +.p-badge.p-badge-xl { + font-size: 1.5rem; + min-width: 3rem; + height: 3rem; + line-height: 3rem; +} + +.p-tag { + background: #D7A86E; + color: #ffffff; + font-size: 0.75rem; + font-weight: 700; + padding: 0.25rem 0.4rem; + border-radius: 6px; +} + +.p-tag.p-tag-success { + background-color: #22C55E; + color: #ffffff; +} + +.p-tag.p-tag-info { + background-color: #3B82F6; + color: #ffffff; +} + +.p-tag.p-tag-warning { + background-color: #F59E0B; + color: #ffffff; +} + +.p-tag.p-tag-danger { + background-color: #EF4444; + color: #ffffff; +} + +.p-virtualscroller-loading-icon { + font-size: 2rem; +} + +.p-button-label { + font-weight: 700; +} + +.p-accordion .p-accordion-header .p-accordion-header-link { + transition: background-color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-tabview .p-tabview-nav li .p-tabview-nav-link { + transition: background-color 0.2s, border-color 0.2s, box-shadow 0.2s; +} + +.p-tabview .p-tabview-nav .p-tabview-ink-bar { + z-index: 1; + display: block; + position: absolute; + bottom: 0; + height: 2px; + background-color: #D7A86E; + transition: 500ms cubic-bezier(0.35, 0, 0.25, 1); +} + +.p-carousel .p-carousel-indicators .p-carousel-indicator.p-highlight button { + background-color: #D7A86E; +} + +.p-galleria .p-galleria-indicators .p-galleria-indicator.p-highlight button { + background-color: #D7A86E; +} + +.p-button:focus { + box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #b1b3f8, 0 1px 2px 0 black; +} + +.p-button.p-button-secondary:enabled:focus { + box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #b0b9c6, 0 1px 2px 0 black; +} + +.p-button.p-button-success:enabled:focus { + box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #88eaac, 0 1px 2px 0 black; +} + +.p-button.p-button-info:enabled:focus { + box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #9dc1fb, 0 1px 2px 0 black; +} + +.p-button.p-button-warning:enabled:focus { + box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #facf85, 0 1px 2px 0 black; +} + +.p-button.p-button-help:enabled:focus { + box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #d4aafb, 0 1px 2px 0 black; +} + +.p-button.p-button-danger:enabled:focus { + box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #f7a2a2, 0 1px 2px 0 black; +} \ No newline at end of file diff --git a/web-ui/web-react/public/index.html b/web-ui/web-react/public/index.html index 19890d71..57aa76ac 100644 --- a/web-ui/web-react/public/index.html +++ b/web-ui/web-react/public/index.html @@ -9,7 +9,7 @@ - + diff --git a/web-ui/web-react/src/AppConfig.js b/web-ui/web-react/src/AppConfig.js index ceb14209..bc0bdb95 100644 --- a/web-ui/web-react/src/AppConfig.js +++ b/web-ui/web-react/src/AppConfig.js @@ -2,14 +2,14 @@ import React, { useCallback, useEffect, useRef, useState } from 'react'; import { RadioButton } from 'primereact/radiobutton'; import { InputSwitch } from 'primereact/inputswitch'; import classNames from 'classnames'; -import {Button} from "primereact/button"; +import { Button } from "primereact/button"; export const AppConfig = (props) => { const [active, setActive] = useState(false); const [scale, setScale] = useState(14); - const [scales] = useState([12,13,14,15,16]); - const [theme, setTheme] = useState('lara-light-indigo'); + const [scales] = useState([12, 13, 14, 15, 16]); + const [theme, setTheme] = useState('khaki'); const config = useRef(null); let outsideClickListener = useRef(null); @@ -96,14 +96,14 @@ export const AppConfig = (props) => { } }); } - },[]) + }, []) useEffect(() => { let themeElement = document.getElementById('theme-link'); const themeHref = 'assets/themes/' + theme + '/theme.css'; replaceLink(themeElement, themeHref); - },[theme,replaceLink]) + }, [theme, replaceLink]) const isIE = () => { return /(MSIE|Trident\/|Edge\/)/i.test(window.navigator.userAgent) @@ -119,7 +119,7 @@ export const AppConfig = (props) => { -