├── server ├── .env ├── e2e │ ├── setup.test.js │ ├── jest.e2e.config.json │ └── app.e2e-spec.ts ├── .server.eslintignore ├── nest-cli.json ├── tsconfig.build.json ├── src │ ├── security │ │ ├── payload.interface.ts │ │ ├── role-type.ts │ │ ├── decorators │ │ │ ├── roles.decorator.ts │ │ │ └── auth-user.decorator.ts │ │ ├── index.ts │ │ ├── guards │ │ │ ├── auth.guard.ts │ │ │ └── roles.guard.ts │ │ ├── password-util.ts │ │ └── passport.jwt.strategy.ts │ ├── client │ │ ├── request.ts │ │ └── interceptors │ │ │ └── logging.interceptor.ts │ ├── repository │ │ ├── user.repository.ts │ │ └── authority.repository.ts │ ├── service │ │ ├── dto │ │ │ ├── base.dto.ts │ │ │ ├── password-change.dto.ts │ │ │ ├── user-login.dto.ts │ │ │ └── user.dto.ts │ │ └── mapper │ │ │ └── user.mapper.ts │ ├── domain │ │ ├── authority.entity.ts │ │ ├── base │ │ │ ├── base.entity.ts │ │ │ └── pagination.entity.ts │ │ └── user.entity.ts │ ├── module │ │ ├── user.module.ts │ │ └── auth.module.ts │ ├── migrations │ │ └── 1570200270081-CreateTables.ts │ ├── swagger.ts │ ├── web │ │ └── rest │ │ │ ├── management.controller.ts │ │ │ ├── user.jwt.controller.ts │ │ │ └── public.user.controller.ts │ ├── app.module.ts │ ├── config │ │ ├── application-dev.yml │ │ └── application-test.yml │ └── orm.config.ts ├── .prettierrc.js ├── sonar-project.properties ├── test │ └── admin │ │ └── management.controller.spec.ts ├── scripts │ └── copy-resources.ts └── webpack.server.prod.config.js ├── .huskyrc ├── src ├── main │ ├── webapp │ │ ├── app │ │ │ ├── config │ │ │ │ ├── pagination.constants.ts │ │ │ │ ├── authority.constants.ts │ │ │ │ ├── input.constants.ts │ │ │ │ ├── error.constants.ts │ │ │ │ ├── dayjs.ts │ │ │ │ ├── uib-pagination.config.ts │ │ │ │ ├── datepicker-adapter.ts │ │ │ │ └── font-awesome-icons.ts │ │ │ ├── layouts │ │ │ │ ├── footer │ │ │ │ │ ├── footer.component.html │ │ │ │ │ └── footer.component.ts │ │ │ │ ├── navbar │ │ │ │ │ ├── navbar.route.ts │ │ │ │ │ ├── navbar.component.scss │ │ │ │ │ └── navbar.component.ts │ │ │ │ ├── main │ │ │ │ │ ├── main.component.html │ │ │ │ │ └── main.component.ts │ │ │ │ ├── error │ │ │ │ │ ├── error.component.html │ │ │ │ │ ├── error.component.ts │ │ │ │ │ └── error.route.ts │ │ │ │ └── profiles │ │ │ │ │ ├── profile-info.model.ts │ │ │ │ │ ├── page-ribbon.component.ts │ │ │ │ │ ├── page-ribbon.component.scss │ │ │ │ │ └── profile.service.ts │ │ │ ├── shared │ │ │ │ ├── alert │ │ │ │ │ ├── alert-error.model.ts │ │ │ │ │ ├── alert.component.html │ │ │ │ │ ├── alert-error.component.html │ │ │ │ │ ├── alert.component.ts │ │ │ │ │ └── alert.component.spec.ts │ │ │ │ ├── date │ │ │ │ │ ├── duration.pipe.ts │ │ │ │ │ ├── format-medium-date.pipe.ts │ │ │ │ │ ├── format-medium-datetime.pipe.ts │ │ │ │ │ ├── format-medium-date.pipe.spec.ts │ │ │ │ │ └── format-medium-datetime.pipe.spec.ts │ │ │ │ ├── shared-libs.module.ts │ │ │ │ ├── sort │ │ │ │ │ ├── sort.directive.ts │ │ │ │ │ └── sort-by.directive.ts │ │ │ │ ├── pagination │ │ │ │ │ ├── item-count.component.ts │ │ │ │ │ └── item-count.component.spec.ts │ │ │ │ ├── shared.module.ts │ │ │ │ └── auth │ │ │ │ │ └── has-any-authority.directive.ts │ │ │ ├── login │ │ │ │ ├── login.model.ts │ │ │ │ ├── login.route.ts │ │ │ │ ├── login.module.ts │ │ │ │ ├── login.service.ts │ │ │ │ └── login.component.ts │ │ │ ├── admin │ │ │ │ ├── docs │ │ │ │ │ ├── docs.component.scss │ │ │ │ │ ├── docs.component.html │ │ │ │ │ ├── docs.component.ts │ │ │ │ │ ├── docs.route.ts │ │ │ │ │ └── docs.module.ts │ │ │ │ ├── logs │ │ │ │ │ ├── logs.route.ts │ │ │ │ │ ├── log.model.ts │ │ │ │ │ ├── logs.module.ts │ │ │ │ │ ├── logs.service.ts │ │ │ │ │ ├── logs.service.spec.ts │ │ │ │ │ └── logs.component.ts │ │ │ │ ├── health │ │ │ │ │ ├── health.route.ts │ │ │ │ │ ├── health.model.ts │ │ │ │ │ ├── health.module.ts │ │ │ │ │ ├── health.service.ts │ │ │ │ │ ├── modal │ │ │ │ │ │ ├── health-modal.component.ts │ │ │ │ │ │ └── health-modal.component.html │ │ │ │ │ ├── health.component.ts │ │ │ │ │ └── health.component.html │ │ │ │ ├── metrics │ │ │ │ │ ├── metrics.route.ts │ │ │ │ │ ├── blocks │ │ │ │ │ │ ├── jvm-memory │ │ │ │ │ │ │ ├── jvm-memory.component.ts │ │ │ │ │ │ │ └── jvm-memory.component.html │ │ │ │ │ │ ├── metrics-endpoints-requests │ │ │ │ │ │ │ ├── metrics-endpoints-requests.component.ts │ │ │ │ │ │ │ └── metrics-endpoints-requests.component.html │ │ │ │ │ │ ├── metrics-garbagecollector │ │ │ │ │ │ │ └── metrics-garbagecollector.component.ts │ │ │ │ │ │ ├── metrics-cache │ │ │ │ │ │ │ ├── metrics-cache.component.ts │ │ │ │ │ │ │ └── metrics-cache.component.html │ │ │ │ │ │ ├── metrics-datasource │ │ │ │ │ │ │ └── metrics-datasource.component.ts │ │ │ │ │ │ ├── metrics-request │ │ │ │ │ │ │ ├── metrics-request.component.ts │ │ │ │ │ │ │ └── metrics-request.component.html │ │ │ │ │ │ ├── metrics-system │ │ │ │ │ │ │ └── metrics-system.component.ts │ │ │ │ │ │ ├── jvm-threads │ │ │ │ │ │ │ ├── jvm-threads.component.ts │ │ │ │ │ │ │ └── jvm-threads.component.html │ │ │ │ │ │ └── metrics-modal-threads │ │ │ │ │ │ │ └── metrics-modal-threads.component.ts │ │ │ │ │ ├── metrics.service.ts │ │ │ │ │ ├── metrics.component.ts │ │ │ │ │ ├── metrics.module.ts │ │ │ │ │ ├── metrics.component.spec.ts │ │ │ │ │ └── metrics.component.html │ │ │ │ ├── configuration │ │ │ │ │ ├── configuration.route.ts │ │ │ │ │ ├── configuration.module.ts │ │ │ │ │ ├── configuration.model.ts │ │ │ │ │ ├── configuration.service.ts │ │ │ │ │ └── configuration.component.ts │ │ │ │ ├── user-management │ │ │ │ │ ├── detail │ │ │ │ │ │ ├── user-management-detail.component.ts │ │ │ │ │ │ ├── user-management-detail.component.html │ │ │ │ │ │ └── user-management-detail.component.spec.ts │ │ │ │ │ ├── delete │ │ │ │ │ │ ├── user-management-delete-dialog.component.ts │ │ │ │ │ │ ├── user-management-delete-dialog.component.html │ │ │ │ │ │ └── user-management-delete-dialog.component.spec.ts │ │ │ │ │ ├── user-management.model.ts │ │ │ │ │ ├── user-management.module.ts │ │ │ │ │ ├── service │ │ │ │ │ │ └── user-management.service.ts │ │ │ │ │ └── user-management.route.ts │ │ │ │ └── admin-routing.module.ts │ │ │ ├── account │ │ │ │ ├── register │ │ │ │ │ ├── register.model.ts │ │ │ │ │ ├── register.route.ts │ │ │ │ │ └── register.service.ts │ │ │ │ ├── activate │ │ │ │ │ ├── activate.route.ts │ │ │ │ │ ├── activate.component.html │ │ │ │ │ ├── activate.service.ts │ │ │ │ │ └── activate.component.ts │ │ │ │ ├── password │ │ │ │ │ ├── password-strength-bar │ │ │ │ │ │ ├── password-strength-bar.component.html │ │ │ │ │ │ └── password-strength-bar.component.scss │ │ │ │ │ ├── password.route.ts │ │ │ │ │ ├── password.service.ts │ │ │ │ │ └── password.component.ts │ │ │ │ ├── password-reset │ │ │ │ │ ├── init │ │ │ │ │ │ ├── password-reset-init.route.ts │ │ │ │ │ │ ├── password-reset-init.service.ts │ │ │ │ │ │ └── password-reset-init.component.ts │ │ │ │ │ └── finish │ │ │ │ │ │ ├── password-reset-finish.route.ts │ │ │ │ │ │ ├── password-reset-finish.service.ts │ │ │ │ │ │ └── password-reset-finish.component.ts │ │ │ │ ├── settings │ │ │ │ │ ├── settings.route.ts │ │ │ │ │ └── settings.component.ts │ │ │ │ ├── account.route.ts │ │ │ │ └── account.module.ts │ │ │ ├── core │ │ │ │ ├── request │ │ │ │ │ ├── request.model.ts │ │ │ │ │ └── request-util.ts │ │ │ │ ├── util │ │ │ │ │ ├── operators.spec.ts │ │ │ │ │ ├── operators.ts │ │ │ │ │ ├── data-util.service.spec.ts │ │ │ │ │ ├── parse-links.service.spec.ts │ │ │ │ │ ├── parse-links.service.ts │ │ │ │ │ └── event-manager.service.ts │ │ │ │ ├── auth │ │ │ │ │ ├── account.model.ts │ │ │ │ │ ├── state-storage.service.ts │ │ │ │ │ ├── user-route-access.service.ts │ │ │ │ │ └── auth-jwt.service.ts │ │ │ │ ├── config │ │ │ │ │ ├── application-config.service.ts │ │ │ │ │ └── application-config.service.spec.ts │ │ │ │ └── interceptor │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── error-handler.interceptor.ts │ │ │ │ │ ├── notification.interceptor.ts │ │ │ │ │ ├── auth.interceptor.ts │ │ │ │ │ └── auth-expired.interceptor.ts │ │ │ ├── home │ │ │ │ ├── home.route.ts │ │ │ │ ├── home.module.ts │ │ │ │ ├── home.component.scss │ │ │ │ ├── home.component.ts │ │ │ │ └── home.component.spec.ts │ │ │ ├── entities │ │ │ │ ├── user │ │ │ │ │ ├── user.model.ts │ │ │ │ │ └── user.service.ts │ │ │ │ └── entity-routing.module.ts │ │ │ ├── app.constants.ts │ │ │ └── app-routing.module.ts │ │ ├── favicon.ico │ │ ├── content │ │ │ ├── images │ │ │ │ ├── logo-jhipster.png │ │ │ │ ├── jhipster_family_member_0_head-192.png │ │ │ │ ├── jhipster_family_member_0_head-256.png │ │ │ │ ├── jhipster_family_member_0_head-384.png │ │ │ │ ├── jhipster_family_member_0_head-512.png │ │ │ │ ├── jhipster_family_member_1_head-192.png │ │ │ │ ├── jhipster_family_member_1_head-256.png │ │ │ │ ├── jhipster_family_member_1_head-384.png │ │ │ │ ├── jhipster_family_member_1_head-512.png │ │ │ │ ├── jhipster_family_member_2_head-192.png │ │ │ │ ├── jhipster_family_member_2_head-256.png │ │ │ │ ├── jhipster_family_member_2_head-384.png │ │ │ │ ├── jhipster_family_member_2_head-512.png │ │ │ │ ├── jhipster_family_member_3_head-192.png │ │ │ │ ├── jhipster_family_member_3_head-256.png │ │ │ │ ├── jhipster_family_member_3_head-384.png │ │ │ │ └── jhipster_family_member_3_head-512.png │ │ │ └── scss │ │ │ │ ├── vendor.scss │ │ │ │ └── _bootstrap-variables.scss │ │ ├── swagger-ui │ │ │ └── dist │ │ │ │ └── images │ │ │ │ └── throbber.gif │ │ ├── polyfills.ts │ │ ├── robots.txt │ │ ├── WEB-INF │ │ │ └── web.xml │ │ ├── main.ts │ │ ├── manifest.webapp │ │ └── 404.html │ └── docker │ │ ├── app.yml │ │ ├── sonar.yml │ │ └── mysql.yml └── test │ └── javascript │ └── protractor.conf.js ├── .prettierignore ├── webpack ├── logo-jhipster.png └── proxy.conf.js ├── tsconfig.e2e.json ├── .lintstagedrc.js ├── .dockerignore ├── tsconfig.app.json ├── .eslintignore ├── .prettierrc ├── tsconfig.spec.json ├── Dockerfile ├── .editorconfig ├── ngsw-config.json ├── tsconfig.json ├── .browserslistrc ├── jest.conf.js ├── .yo-rc.json └── sonar-project.properties /server/.env: -------------------------------------------------------------------------------- 1 | BACKEND_ENV=dev 2 | -------------------------------------------------------------------------------- /server/e2e/setup.test.js: -------------------------------------------------------------------------------- 1 | process.env.BACKEND_ENV = 'test'; 2 | -------------------------------------------------------------------------------- /.huskyrc: -------------------------------------------------------------------------------- 1 | { 2 | "hooks": { 3 | "pre-commit": "lint-staged" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /src/main/webapp/app/config/pagination.constants.ts: -------------------------------------------------------------------------------- 1 | export const ITEMS_PER_PAGE = 20; 2 | -------------------------------------------------------------------------------- /server/.server.eslintignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | dist 3 | coverage 4 | scripts 5 | webpack.server.prod.config.js 6 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | target 3 | build 4 | package-lock.json 5 | .git 6 | .mvn 7 | gradle 8 | .gradle 9 | -------------------------------------------------------------------------------- /webpack/logo-jhipster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/webpack/logo-jhipster.png -------------------------------------------------------------------------------- /src/main/webapp/app/layouts/footer/footer.component.html: -------------------------------------------------------------------------------- 1 |
4 | -------------------------------------------------------------------------------- /src/main/webapp/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/favicon.ico -------------------------------------------------------------------------------- /server/nest-cli.json: -------------------------------------------------------------------------------- 1 | { 2 | "language": "ts", 3 | "collection": "@nestjs/schematics", 4 | "sourceRoot": "src" 5 | } 6 | -------------------------------------------------------------------------------- /tsconfig.e2e.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "compilerOptions": { 4 | "module": "commonjs" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/main/webapp/app/config/authority.constants.ts: -------------------------------------------------------------------------------- 1 | export enum Authority { 2 | ADMIN = 'ROLE_ADMIN', 3 | USER = 'ROLE_USER', 4 | } 5 | -------------------------------------------------------------------------------- /src/main/webapp/app/shared/alert/alert-error.model.ts: -------------------------------------------------------------------------------- 1 | export class AlertError { 2 | constructor(public message: string) {} 3 | } 4 | -------------------------------------------------------------------------------- /.lintstagedrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | '{,src/**/,webpack/}*.{md,json,yml,html,js,ts,tsx,css,scss,java}': ['prettier --write'], 3 | }; 4 | -------------------------------------------------------------------------------- /server/tsconfig.build.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "exclude": ["node_modules", "test", "dist", "**/*spec.ts"] 4 | } 5 | -------------------------------------------------------------------------------- /src/main/webapp/app/config/input.constants.ts: -------------------------------------------------------------------------------- 1 | export const DATE_FORMAT = 'YYYY-MM-DD'; 2 | export const DATE_TIME_FORMAT = 'YYYY-MM-DDTHH:mm'; 3 | -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | server/node_modules 3 | package-lock.json 4 | server/package-lock.json 5 | yarn.lock 6 | server/yarn.lock 7 | target 8 | -------------------------------------------------------------------------------- /server/src/security/payload.interface.ts: -------------------------------------------------------------------------------- 1 | export interface Payload { 2 | id: number; 3 | username: string; 4 | authorities?: string[]; 5 | } 6 | -------------------------------------------------------------------------------- /server/.prettierrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | semi: true, 3 | trailingComma: "all", 4 | singleQuote: true, 5 | printWidth: 120, 6 | tabWidth: 4 7 | }; 8 | -------------------------------------------------------------------------------- /src/main/webapp/content/images/logo-jhipster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/logo-jhipster.png -------------------------------------------------------------------------------- /src/main/webapp/app/login/login.model.ts: -------------------------------------------------------------------------------- 1 | export class Login { 2 | constructor(public username: string, public password: string, public rememberMe: boolean) {} 3 | } 4 | -------------------------------------------------------------------------------- /src/main/webapp/swagger-ui/dist/images/throbber.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/swagger-ui/dist/images/throbber.gif -------------------------------------------------------------------------------- /src/main/webapp/app/admin/docs/docs.component.scss: -------------------------------------------------------------------------------- 1 | @import '~bootstrap/scss/functions'; 2 | @import '~bootstrap/scss/variables'; 3 | 4 | iframe { 5 | background: white; 6 | } 7 | -------------------------------------------------------------------------------- /server/src/security/role-type.ts: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | export enum RoleType { 4 | USER = 'ROLE_USER', 5 | ADMIN = 'ROLE_ADMIN', 6 | ANONYMOUS = 'ROLE_ANONYMOUS', 7 | } 8 | -------------------------------------------------------------------------------- /src/main/docker/app.yml: -------------------------------------------------------------------------------- 1 | version: '3.8' 2 | services: 3 | gen-app: 4 | build: ../../.. 5 | container_name: gen-app 6 | environment: 7 | ports: 8 | - 8081:8081 9 | -------------------------------------------------------------------------------- /tsconfig.app.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "files": ["src/main/webapp/main.ts", "src/main/webapp/polyfills.ts"], 4 | "include": ["src/main/webapp/**/*.d.ts"] 5 | } 6 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | src/main/docker/ 3 | src/test/javascript/protractor.conf.js 4 | jest.conf.js 5 | webpack/ 6 | target/ 7 | build/ 8 | node/ 9 | postcss.config.js 10 | server 11 | -------------------------------------------------------------------------------- /src/main/docker/sonar.yml: -------------------------------------------------------------------------------- 1 | version: '3.8' 2 | services: 3 | gen-sonar: 4 | image: sonarqube:8.8-community 5 | container_name: sonar 6 | ports: 7 | - 9001:9000 8 | - 9092:9092 9 | -------------------------------------------------------------------------------- /src/main/webapp/app/account/register/register.model.ts: -------------------------------------------------------------------------------- 1 | export class Registration { 2 | constructor(public login: string, public email: string, public password: string, public langKey: string) {} 3 | } 4 | -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_0_head-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_0_head-192.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_0_head-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_0_head-256.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_0_head-384.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_0_head-384.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_0_head-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_0_head-512.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_1_head-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_1_head-192.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_1_head-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_1_head-256.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_1_head-384.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_1_head-384.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_1_head-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_1_head-512.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_2_head-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_2_head-192.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_2_head-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_2_head-256.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_2_head-384.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_2_head-384.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_2_head-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_2_head-512.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_3_head-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_3_head-192.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_3_head-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_3_head-256.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_3_head-384.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_3_head-384.png -------------------------------------------------------------------------------- /src/main/webapp/content/images/jhipster_family_member_3_head-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhipster/jhipster-sample-app-nodejs/HEAD/src/main/webapp/content/images/jhipster_family_member_3_head-512.png -------------------------------------------------------------------------------- /src/main/webapp/polyfills.ts: -------------------------------------------------------------------------------- 1 | import 'zone.js/dist/zone'; 2 | import '@angular/localize/init'; 3 | 4 | // Fix needed for SockJS, see https://github.com/sockjs/sockjs-client/issues/439 5 | (window as any).global = window; 6 | -------------------------------------------------------------------------------- /server/src/client/request.ts: -------------------------------------------------------------------------------- 1 | import { Request as ExpressRequest } from 'express'; 2 | import { UserDTO } from '../service/dto/user.dto'; 3 | 4 | export interface Request extends ExpressRequest { 5 | user?: UserDTO; 6 | } 7 | -------------------------------------------------------------------------------- /server/src/security/decorators/roles.decorator.ts: -------------------------------------------------------------------------------- 1 | import { SetMetadata } from '@nestjs/common'; 2 | import { RoleType } from '../role-type'; 3 | 4 | export const Roles = (...roles: RoleType[]): any => SetMetadata('roles', roles); 5 | -------------------------------------------------------------------------------- /server/src/repository/user.repository.ts: -------------------------------------------------------------------------------- 1 | import { EntityRepository, Repository } from 'typeorm'; 2 | import { User } from '../domain/user.entity'; 3 | 4 | @EntityRepository(User) 5 | export class UserRepository extends Repository| Method | 8 |Endpoint url | 9 |Count | 10 |Mean | 11 |
|---|---|---|---|
| {{ method.key }} | 17 |{{ entry.key }} | 18 |{{ method.value!.count }} | 19 |{{ method.value!.mean | number: '1.0-3' }} | 20 |
| Code | 7 |Count | 8 |Mean | 9 |Max | 10 |
|---|---|---|---|
| {{ entry.key }} | 15 |
16 | |
20 | 21 | {{ filterNaN(entry.value.mean) | number: '1.0-2' }} 22 | | 23 |{{ entry.value.max | number: '1.0-2' }} | 24 |
| Name | 20 |Value | 21 |
|---|---|
| {{ healthDetail.key }} | 26 |{{ readableValue(healthDetail.value) }} | 27 |
Sorry, but the page you were trying to view does not exist.
56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /src/main/webapp/app/admin/health/health.component.ts: -------------------------------------------------------------------------------- 1 | import { Component, OnInit } from '@angular/core'; 2 | import { HttpErrorResponse } from '@angular/common/http'; 3 | import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; 4 | 5 | import { HealthService } from './health.service'; 6 | import { Health, HealthDetails, HealthStatus } from './health.model'; 7 | import { HealthModalComponent } from './modal/health-modal.component'; 8 | 9 | @Component({ 10 | selector: 'jhi-health', 11 | templateUrl: './health.component.html', 12 | }) 13 | export class HealthComponent implements OnInit { 14 | health?: Health; 15 | 16 | constructor(private modalService: NgbModal, private healthService: HealthService) {} 17 | 18 | ngOnInit(): void { 19 | this.refresh(); 20 | } 21 | 22 | getBadgeClass(statusState: HealthStatus): string { 23 | if (statusState === 'UP') { 24 | return 'badge-success'; 25 | } else { 26 | return 'badge-danger'; 27 | } 28 | } 29 | 30 | refresh(): void { 31 | this.healthService.checkHealth().subscribe( 32 | health => (this.health = health), 33 | (error: HttpErrorResponse) => { 34 | if (error.status === 503) { 35 | this.health = error.error; 36 | } 37 | } 38 | ); 39 | } 40 | 41 | showHealth(health: { key: string; value: HealthDetails }): void { 42 | const modalRef = this.modalService.open(HealthModalComponent); 43 | modalRef.componentInstance.health = health; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /src/main/webapp/app/config/font-awesome-icons.ts: -------------------------------------------------------------------------------- 1 | import { 2 | faArrowLeft, 3 | faAsterisk, 4 | faBan, 5 | faBars, 6 | faBell, 7 | faBook, 8 | faCalendarAlt, 9 | faCheck, 10 | faCloud, 11 | faCogs, 12 | faDatabase, 13 | faEye, 14 | faFlag, 15 | faHeart, 16 | faHome, 17 | faList, 18 | faLock, 19 | faPencilAlt, 20 | faPlus, 21 | faRoad, 22 | faSave, 23 | faSearch, 24 | faSignOutAlt, 25 | faSignInAlt, 26 | faSort, 27 | faSortDown, 28 | faSortUp, 29 | faSync, 30 | faTachometerAlt, 31 | faTasks, 32 | faThList, 33 | faTimes, 34 | faTrashAlt, 35 | faUser, 36 | faUserPlus, 37 | faUsers, 38 | faUsersCog, 39 | faWrench, 40 | // jhipster-needle-add-icon-import 41 | } from '@fortawesome/free-solid-svg-icons'; 42 | 43 | export const fontAwesomeIcons = [ 44 | faArrowLeft, 45 | faAsterisk, 46 | faBan, 47 | faBars, 48 | faBell, 49 | faBook, 50 | faCalendarAlt, 51 | faCheck, 52 | faCloud, 53 | faCogs, 54 | faDatabase, 55 | faEye, 56 | faFlag, 57 | faHeart, 58 | faHome, 59 | faList, 60 | faLock, 61 | faPencilAlt, 62 | faPlus, 63 | faRoad, 64 | faSave, 65 | faSearch, 66 | faSignOutAlt, 67 | faSignInAlt, 68 | faSort, 69 | faSortDown, 70 | faSortUp, 71 | faSync, 72 | faTachometerAlt, 73 | faTasks, 74 | faThList, 75 | faTimes, 76 | faTrashAlt, 77 | faUser, 78 | faUserPlus, 79 | faUsers, 80 | faUsersCog, 81 | faWrench, 82 | // jhipster-needle-add-icon-import 83 | ]; 84 | -------------------------------------------------------------------------------- /src/main/webapp/app/shared/alert/alert.component.spec.ts: -------------------------------------------------------------------------------- 1 | jest.mock('app/core/util/alert.service'); 2 | 3 | import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; 4 | 5 | import { AlertService } from 'app/core/util/alert.service'; 6 | 7 | import { AlertComponent } from './alert.component'; 8 | 9 | describe('Component Tests', () => { 10 | describe('Alert Component', () => { 11 | let comp: AlertComponent; 12 | let fixture: ComponentFixture| Service Name | 13 |Status | 14 |Details | 15 |
|---|---|---|
| 20 | {{ componentHealth.key }} 21 | | 22 |23 | 24 | {{ componentHealth.value!.status }} 25 | 26 | | 27 |
28 |
33 | |
36 |
| Cache name | 8 |Cache Hits | 9 |Cache Misses | 10 |Cache Gets | 11 |Cache Puts | 12 |Cache Removals | 13 |Cache Evictions | 14 |Cache Hit % | 15 |Cache Miss % | 16 |
|---|---|---|---|---|---|---|---|---|
| {{ entry.key }} | 21 |{{ entry.value['cache.gets.hit'] }} | 22 |{{ entry.value['cache.gets.miss'] }} | 23 |{{ entry.value['cache.gets.hit'] + entry.value['cache.gets.miss'] }} | 24 |{{ entry.value['cache.puts'] }} | 25 |{{ entry.value['cache.removals'] }} | 26 |{{ entry.value['cache.evictions'] }} | 27 |28 | {{ 29 | filterNaN((100 * entry.value['cache.gets.hit']) / (entry.value['cache.gets.hit'] + entry.value['cache.gets.miss'])) 30 | | number: '1.0-4' 31 | }} 32 | | 33 |34 | {{ 35 | filterNaN((100 * entry.value['cache.gets.miss']) / (entry.value['cache.gets.hit'] + entry.value['cache.gets.miss'])) 36 | | number: '1.0-4' 37 | }} 38 | | 39 |