├── .editorconfig ├── .env.example ├── .gitignore ├── .graphqlconfig ├── .prettierignore ├── .prettierrc ├── README.md ├── angular.json ├── apps ├── api │ ├── jest.config.js │ ├── src │ │ ├── app │ │ │ └── app.module.ts │ │ ├── assets │ │ │ └── .gitkeep │ │ ├── environments │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ └── main.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── web-e2e │ ├── cypress.json │ ├── src │ │ ├── fixtures │ │ │ └── example.json │ │ ├── integration │ │ │ └── app.spec.ts │ │ ├── plugins │ │ │ └── index.js │ │ └── support │ │ │ ├── app.po.ts │ │ │ ├── commands.ts │ │ │ └── index.ts │ ├── tsconfig.e2e.json │ ├── tsconfig.json │ └── tslint.json └── web │ ├── .browserslistrc │ ├── jest.config.js │ ├── src │ ├── app │ │ ├── app.component.ts │ │ └── app.module.ts │ ├── assets │ │ ├── .gitkeep │ │ └── logo.png │ ├── favicon.ico │ ├── index.html │ ├── main.ts │ ├── polyfills.ts │ ├── styles.scss │ └── test-setup.ts │ ├── tsconfig.app.json │ ├── tsconfig.json │ ├── tsconfig.spec.json │ └── tslint.json ├── decorate-angular-cli.js ├── docker-compose.yml ├── graphql.schema.json ├── jest.config.js ├── libs ├── api │ ├── data-access │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── src │ │ │ ├── index.ts │ │ │ ├── lib │ │ │ │ ├── api-data-access.helper.ts │ │ │ │ ├── api-data-access.module.ts │ │ │ │ ├── api-data-access.service.ts │ │ │ │ └── sample-data │ │ │ │ │ └── sample-users.ts │ │ │ ├── migrations │ │ │ │ ├── 20200925071132-init │ │ │ │ │ ├── README.md │ │ │ │ │ ├── schema.prisma │ │ │ │ │ └── steps.json │ │ │ │ ├── 20200925083105-add-bio-field │ │ │ │ │ ├── README.md │ │ │ │ │ ├── schema.prisma │ │ │ │ │ └── steps.json │ │ │ │ ├── 20200925164238-location │ │ │ │ │ ├── README.md │ │ │ │ │ ├── schema.prisma │ │ │ │ │ └── steps.json │ │ │ │ └── migrate.lock │ │ │ └── schema.prisma │ │ ├── tsconfig.json │ │ ├── tsconfig.lib.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── feature-auth │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── src │ │ │ ├── index.ts │ │ │ └── lib │ │ │ │ ├── api-feature-auth.helper.ts │ │ │ │ ├── api-feature-auth.module.ts │ │ │ │ ├── api-feature-auth.resolver.ts │ │ │ │ ├── api-feature-auth.service.ts │ │ │ │ ├── decorators │ │ │ │ └── ctx-user.decorator.ts │ │ │ │ ├── dto │ │ │ │ ├── create-user.input.ts │ │ │ │ ├── jwt.dto.ts │ │ │ │ ├── login.input.ts │ │ │ │ ├── register.input.ts │ │ │ │ ├── update-user-password.input.ts │ │ │ │ └── update-user.input.ts │ │ │ │ ├── guards │ │ │ │ └── gql-auth.guard.ts │ │ │ │ ├── models │ │ │ │ ├── role.ts │ │ │ │ ├── user-token.ts │ │ │ │ └── user.ts │ │ │ │ └── strategies │ │ │ │ └── jwt.strategy.ts │ │ ├── tsconfig.json │ │ ├── tsconfig.lib.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── feature-comment │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── src │ │ │ ├── index.ts │ │ │ └── lib │ │ │ │ ├── api-feature-comment.module.ts │ │ │ │ ├── api-feature-comment.resolver.ts │ │ │ │ ├── api-feature-comment.service.ts │ │ │ │ ├── dto │ │ │ │ └── create-comment.input.ts │ │ │ │ └── models │ │ │ │ └── comment.ts │ │ ├── tsconfig.json │ │ ├── tsconfig.lib.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── feature-core │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── src │ │ │ ├── index.ts │ │ │ └── lib │ │ │ │ ├── api-feature-core.controller.ts │ │ │ │ ├── api-feature-core.module.ts │ │ │ │ ├── api-feature-core.resolver.ts │ │ │ │ ├── api-feature-core.service.ts │ │ │ │ └── config │ │ │ │ ├── configuration.ts │ │ │ │ └── validation.ts │ │ ├── tsconfig.json │ │ ├── tsconfig.lib.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ ├── feature-post │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── src │ │ │ ├── index.ts │ │ │ └── lib │ │ │ │ ├── api-feature-post-profile.resolver.ts │ │ │ │ ├── api-feature-post.module.ts │ │ │ │ ├── api-feature-post.resolver.ts │ │ │ │ ├── api-feature-post.service.ts │ │ │ │ ├── dto │ │ │ │ └── create-post.input.ts │ │ │ │ └── models │ │ │ │ └── post.ts │ │ ├── tsconfig.json │ │ ├── tsconfig.lib.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json │ └── feature-profile │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── src │ │ ├── index.ts │ │ └── lib │ │ │ ├── api-feature-profile.controller.ts │ │ │ ├── api-feature-profile.module.ts │ │ │ ├── api-feature-profile.resolver.ts │ │ │ ├── api-feature-profile.service.ts │ │ │ └── models │ │ │ └── profile.ts │ │ ├── tsconfig.json │ │ ├── tsconfig.lib.json │ │ ├── tsconfig.spec.json │ │ └── tslint.json └── web │ ├── data-access-auth │ ├── README.md │ ├── jest.config.js │ ├── src │ │ ├── index.ts │ │ ├── lib │ │ │ ├── web-data-access-auth.module.ts │ │ │ └── web-data-access-auth.service.ts │ │ └── test-setup.ts │ ├── tsconfig.json │ ├── tsconfig.lib.json │ ├── tsconfig.spec.json │ └── tslint.json │ ├── data-access │ ├── README.md │ ├── jest.config.js │ ├── src │ │ ├── codegen.yml │ │ ├── generated │ │ │ └── graphql.ts │ │ ├── graphql │ │ │ ├── auth-queries.graphql │ │ │ ├── core.graphql │ │ │ ├── post-queries.graphql │ │ │ └── profile-queries.graphql │ │ ├── index.ts │ │ ├── lib │ │ │ ├── web-data-access.module.ts │ │ │ └── web-data-access.service.ts │ │ └── test-setup.ts │ ├── tsconfig.json │ ├── tsconfig.lib.json │ ├── tsconfig.spec.json │ └── tslint.json │ ├── feature-auth │ ├── README.md │ ├── jest.config.js │ ├── src │ │ ├── index.ts │ │ ├── lib │ │ │ ├── components │ │ │ │ └── auth-page │ │ │ │ │ ├── auth-page.component.html │ │ │ │ │ ├── auth-page.component.scss │ │ │ │ │ └── auth-page.component.ts │ │ │ ├── containers │ │ │ │ ├── login.component.ts │ │ │ │ ├── logout.component.ts │ │ │ │ ├── profile.component.ts │ │ │ │ └── register.component.ts │ │ │ ├── guards │ │ │ │ └── auth.guard.ts │ │ │ ├── web-feature-auth.module.ts │ │ │ └── web-feature-auth.service.ts │ │ └── test-setup.ts │ ├── tsconfig.json │ ├── tsconfig.lib.json │ ├── tsconfig.spec.json │ └── tslint.json │ ├── feature-core │ ├── README.md │ ├── jest.config.js │ ├── src │ │ ├── environments │ │ │ ├── environment.prod.ts │ │ │ └── environment.ts │ │ ├── index.ts │ │ ├── lib │ │ │ ├── graphql.module.ts │ │ │ └── web-feature-core.module.ts │ │ └── test-setup.ts │ ├── tsconfig.json │ ├── tsconfig.lib.json │ ├── tsconfig.spec.json │ └── tslint.json │ ├── feature-post │ ├── README.md │ ├── jest.config.js │ ├── src │ │ ├── index.ts │ │ ├── lib │ │ │ ├── actions │ │ │ │ └── post.actions.ts │ │ │ ├── components │ │ │ │ └── post-modal.component.ts │ │ │ ├── containers │ │ │ │ └── post-index.component.ts │ │ │ ├── web-feature-post.component.ts │ │ │ ├── web-feature-post.module.ts │ │ │ └── web-feature-post.service.ts │ │ └── test-setup.ts │ ├── tsconfig.json │ ├── tsconfig.lib.json │ ├── tsconfig.spec.json │ └── tslint.json │ ├── feature-profile │ ├── README.md │ ├── jest.config.js │ ├── src │ │ ├── index.ts │ │ ├── lib │ │ │ ├── components │ │ │ │ └── profile-card.component.ts │ │ │ ├── containers │ │ │ │ └── profile-detail.component.ts │ │ │ ├── web-feature-profile.module.ts │ │ │ └── web-feature-profile.service.ts │ │ └── test-setup.ts │ ├── tsconfig.json │ ├── tsconfig.lib.json │ ├── tsconfig.spec.json │ └── tslint.json │ └── feature-shell │ ├── README.md │ ├── jest.config.js │ ├── src │ ├── index.ts │ ├── lib │ │ ├── app.config.ts │ │ ├── components │ │ │ ├── app-header-dropdown.component.ts │ │ │ ├── app-header-links.component.ts │ │ │ ├── app-header.component.ts │ │ │ ├── app-layout.component.ts │ │ │ └── not-found.component.ts │ │ └── web-feature-shell.module.ts │ └── test-setup.ts │ ├── tsconfig.json │ ├── tsconfig.lib.json │ ├── tsconfig.spec.json │ └── tslint.json ├── nx.json ├── package.json ├── tools ├── schematics │ └── .gitkeep └── tsconfig.tools.json ├── tsconfig.base.json ├── tslint.json └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- 1 | # Editor configuration, see http://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | charset = utf-8 6 | indent_style = space 7 | indent_size = 2 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | 11 | [*.md] 12 | max_line_length = off 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- 1 | NODE_ENV=development 2 | PORT=3000 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See http://help.github.com/ignore-files/ for more about ignoring files. 2 | 3 | # compiled output 4 | /dist 5 | /tmp 6 | /out-tsc 7 | 8 | # dependencies 9 | /node_modules 10 | 11 | # IDEs and editors 12 | /.idea 13 | .project 14 | .classpath 15 | .c9/ 16 | *.launch 17 | .settings/ 18 | *.sublime-workspace 19 | 20 | # IDE - VSCode 21 | .vscode/* 22 | !.vscode/settings.json 23 | !.vscode/tasks.json 24 | !.vscode/launch.json 25 | !.vscode/extensions.json 26 | 27 | # misc 28 | /.sass-cache 29 | /connect.lock 30 | /coverage 31 | /libpeerconnection.log 32 | npm-debug.log 33 | yarn-error.log 34 | testem.log 35 | /typings 36 | 37 | # System Files 38 | .DS_Store 39 | Thumbs.db 40 | .env 41 | -------------------------------------------------------------------------------- /.graphqlconfig: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Untitled GraphQL Schema", 3 | "schemaPath": "graphql.schema.json", 4 | "extensions": { 5 | "endpoints": { 6 | "Default GraphQL Endpoint": { 7 | "url": "http://localhost:3000/graphql", 8 | "headers": { 9 | "user-agent": "JS GraphQL" 10 | }, 11 | "introspect": false 12 | } 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | package.json 2 | dist 3 | coverage 4 | tmp -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "singleQuote": true, 3 | "printWidth": 120, 4 | "semi": false, 5 | "trailingComma": "all", 6 | "arrowParens": "always" 7 | } 8 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # AngularGraphql 2 | 3 | This project was generated using [Nx](https://nx.dev). 4 | 5 |
7 | profile works! 8 |
9 | `, 10 | styles: [], 11 | }) 12 | export class ProfileComponent implements OnInit { 13 | constructor() {} 14 | 15 | ngOnInit() {} 16 | } 17 | -------------------------------------------------------------------------------- /libs/web/feature-auth/src/lib/containers/register.component.ts: -------------------------------------------------------------------------------- 1 | import { WebDataAccessAuthService } from '@angular-graphql/web/data-access-auth' 2 | import { Component, OnInit } from '@angular/core' 3 | import { FormGroup } from '@angular/forms' 4 | import { Router } from '@angular/router' 5 | import { FormHelper } from '@kikstart-ui/ui-form' 6 | 7 | @Component({ 8 | template: ` 9 |13 | {{ name }} 14 |
15 |16 | {{ bio }} 17 |
18 |19 | {{ location }} 20 |
21 |