base_project
This commit is contained in:
		
						commit
						64aa7c10dc
					
				@ -0,0 +1,16 @@
 | 
				
			|||||||
 | 
					# Editor configuration, see https://editorconfig.org
 | 
				
			||||||
 | 
					root = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[*]
 | 
				
			||||||
 | 
					charset = utf-8
 | 
				
			||||||
 | 
					indent_style = space
 | 
				
			||||||
 | 
					indent_size = 2
 | 
				
			||||||
 | 
					insert_final_newline = true
 | 
				
			||||||
 | 
					trim_trailing_whitespace = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[*.ts]
 | 
				
			||||||
 | 
					quote_type = single
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[*.md]
 | 
				
			||||||
 | 
					max_line_length = off
 | 
				
			||||||
 | 
					trim_trailing_whitespace = false
 | 
				
			||||||
							
								
								
									
										17
									
								
								test13sep-demot1-f/authsec_angular/frontend/angular-clarity-master/.github/workflows/blank.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								test13sep-demot1-f/authsec_angular/frontend/angular-clarity-master/.github/workflows/blank.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,17 @@
 | 
				
			|||||||
 | 
					name: CI
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					on: [push]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					jobs:
 | 
				
			||||||
 | 
					  build:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					    - uses: actions/checkout@v1
 | 
				
			||||||
 | 
					    - name: Run a one-line script
 | 
				
			||||||
 | 
					      run: echo Hello, world!
 | 
				
			||||||
 | 
					    - name: Run a multi-line script
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        echo Add other actions to build,
 | 
				
			||||||
 | 
					        echo test, and deploy your project.
 | 
				
			||||||
							
								
								
									
										42
									
								
								test13sep-demot1-f/authsec_angular/frontend/angular-clarity-master/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								test13sep-demot1-f/authsec_angular/frontend/angular-clarity-master/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,42 @@
 | 
				
			|||||||
 | 
					# See http://help.github.com/ignore-files/ for more about ignoring files.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# compiled output
 | 
				
			||||||
 | 
					/dist
 | 
				
			||||||
 | 
					/tmp
 | 
				
			||||||
 | 
					/out-tsc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# dependencies
 | 
				
			||||||
 | 
					/node_modules
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# IDEs and editors
 | 
				
			||||||
 | 
					/.idea
 | 
				
			||||||
 | 
					.project
 | 
				
			||||||
 | 
					.classpath
 | 
				
			||||||
 | 
					.c9/
 | 
				
			||||||
 | 
					*.launch
 | 
				
			||||||
 | 
					.settings/
 | 
				
			||||||
 | 
					*.sublime-workspace
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# IDE - VSCode
 | 
				
			||||||
 | 
					.vscode/*
 | 
				
			||||||
 | 
					!.vscode/settings.json
 | 
				
			||||||
 | 
					!.vscode/tasks.json
 | 
				
			||||||
 | 
					!.vscode/launch.json
 | 
				
			||||||
 | 
					!.vscode/extensions.json
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# misc
 | 
				
			||||||
 | 
					/.angular/cache
 | 
				
			||||||
 | 
					/.sass-cache
 | 
				
			||||||
 | 
					/connect.lock
 | 
				
			||||||
 | 
					/coverage
 | 
				
			||||||
 | 
					/libpeerconnection.log
 | 
				
			||||||
 | 
					npm-debug.log
 | 
				
			||||||
 | 
					yarn-error.log
 | 
				
			||||||
 | 
					testem.log
 | 
				
			||||||
 | 
					/typings
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# System Files
 | 
				
			||||||
 | 
					.DS_Store
 | 
				
			||||||
 | 
					Thumbs.db
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										2
									
								
								test13sep-demot1-f/authsec_angular/frontend/angular-clarity-master/.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								test13sep-demot1-f/authsec_angular/frontend/angular-clarity-master/.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,52 @@
 | 
				
			|||||||
 | 
					# Angular-Clarity
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 16.0.4 [Angular.io](https://angular.io/) version 16.0.4 and [Clarity Design System](https://vmware.github.io/clarity/news) by VMware version 6.4.5/15.5.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Install
 | 
				
			||||||
 | 
					- clone project `git clone https://github.com/superpck/angular-clarity`
 | 
				
			||||||
 | 
					- goto project folder `cd angular-clarity`
 | 
				
			||||||
 | 
					- install necessary package `npm install`
 | 
				
			||||||
 | 
					- Fix some vulnerabilities (if founded) `npm audit fix --force`
 | 
				
			||||||
 | 
					- Run application with command `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.
 | 
				
			||||||
 | 
					- or Run `ng serve --port 8080 --open` with another port and open web browser.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Code scaffolding
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Build
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build.
 | 
				
			||||||
 | 
					- or `ng build --base-href ./ --prod --output-hashing none`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Running unit tests
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Running end-to-end tests
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Further help
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Screenshot
 | 
				
			||||||
 | 
					About Page
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Login Page
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Datagrid
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Datagrid expand row and single action
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Modal
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sweetalert2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -0,0 +1,21 @@
 | 
				
			|||||||
 | 
					# Security Policy
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Supported Versions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Use this section to tell people about which versions of your project are
 | 
				
			||||||
 | 
					currently being supported with security updates.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					| Version | Supported          |
 | 
				
			||||||
 | 
					| ------- | ------------------ |
 | 
				
			||||||
 | 
					| 5.1.x   | :white_check_mark: |
 | 
				
			||||||
 | 
					| 5.0.x   | :x:                |
 | 
				
			||||||
 | 
					| 4.0.x   | :white_check_mark: |
 | 
				
			||||||
 | 
					| < 4.0   | :x:                |
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Reporting a Vulnerability
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Use this section to tell people how to report a vulnerability.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Tell them where to go, how often they can expect to get an update on a
 | 
				
			||||||
 | 
					reported vulnerability, what to expect if the vulnerability is accepted or
 | 
				
			||||||
 | 
					declined, etc.
 | 
				
			||||||
@ -0,0 +1,134 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
 | 
				
			||||||
 | 
					  "version": 1,
 | 
				
			||||||
 | 
					  "newProjectRoot": "projects",
 | 
				
			||||||
 | 
					  "projects": {
 | 
				
			||||||
 | 
					    "angularclarity": {
 | 
				
			||||||
 | 
					      "projectType": "application",
 | 
				
			||||||
 | 
					      "schematics": {
 | 
				
			||||||
 | 
					        "@schematics/angular:component": {
 | 
				
			||||||
 | 
					          "style": "scss"
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "root": "",
 | 
				
			||||||
 | 
					      "sourceRoot": "src",
 | 
				
			||||||
 | 
					      "prefix": "app",
 | 
				
			||||||
 | 
					      "architect": {
 | 
				
			||||||
 | 
					        "build": {
 | 
				
			||||||
 | 
					          "builder": "@angular-devkit/build-angular:browser",
 | 
				
			||||||
 | 
					          "options": {
 | 
				
			||||||
 | 
					            "outputPath": "dist",
 | 
				
			||||||
 | 
					            "index": "src/index.html",
 | 
				
			||||||
 | 
					            "main": "src/main.ts",
 | 
				
			||||||
 | 
					            "polyfills": "src/polyfills.ts",
 | 
				
			||||||
 | 
					            "tsConfig": "tsconfig.app.json",
 | 
				
			||||||
 | 
					            "allowedCommonJsDependencies": [
 | 
				
			||||||
 | 
					              "lodash", "xlsx", "file-saver","@swimlane/ngx-datatable","@swimlane/ngx-charts","jquery","highcharts","chart.js",
 | 
				
			||||||
 | 
					              "clone-deep","@ckeditor/ckeditor5-build-classic","@ctrl/ngx-codemirror"
 | 
				
			||||||
 | 
					            ],
 | 
				
			||||||
 | 
					            "assets": [
 | 
				
			||||||
 | 
					              "src/favicon.ico",
 | 
				
			||||||
 | 
					              "src/assets"
 | 
				
			||||||
 | 
					            ],
 | 
				
			||||||
 | 
					            "styles": [
 | 
				
			||||||
 | 
					              "node_modules/@clr/icons/clr-icons.min.css",
 | 
				
			||||||
 | 
					              "node_modules/@clr/ui/clr-ui.min.css",
 | 
				
			||||||
 | 
					              "src/styles.scss",
 | 
				
			||||||
 | 
					              "node_modules/ngx-toastr/toastr.css"
 | 
				
			||||||
 | 
					            ],
 | 
				
			||||||
 | 
					            "scripts": [
 | 
				
			||||||
 | 
					              "node_modules/@webcomponents/webcomponentsjs/custom-elements-es5-adapter.js",
 | 
				
			||||||
 | 
					              "node_modules/@webcomponents/webcomponentsjs/webcomponents-bundle.js",
 | 
				
			||||||
 | 
					              "node_modules/@clr/icons/clr-icons.min.js"
 | 
				
			||||||
 | 
					            ],
 | 
				
			||||||
 | 
					            "vendorChunk": true,
 | 
				
			||||||
 | 
					            "extractLicenses": false,
 | 
				
			||||||
 | 
					            "buildOptimizer": false,
 | 
				
			||||||
 | 
					            "sourceMap": true,
 | 
				
			||||||
 | 
					            "optimization": false,
 | 
				
			||||||
 | 
					            "namedChunks": true
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
 | 
					          "configurations": {
 | 
				
			||||||
 | 
					            "production": {
 | 
				
			||||||
 | 
					              "fileReplacements": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "replace": "src/environments/environment.ts",
 | 
				
			||||||
 | 
					                  "with": "src/environments/environment.prod.ts"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ],
 | 
				
			||||||
 | 
					              "optimization": true,
 | 
				
			||||||
 | 
					              "outputHashing": "all",
 | 
				
			||||||
 | 
					              "sourceMap": false,
 | 
				
			||||||
 | 
					              "namedChunks": false,
 | 
				
			||||||
 | 
					              "extractLicenses": true,
 | 
				
			||||||
 | 
					              "vendorChunk": false,
 | 
				
			||||||
 | 
					              "buildOptimizer": true,
 | 
				
			||||||
 | 
					              "budgets": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "initial",
 | 
				
			||||||
 | 
					                  "maximumWarning": "10mb",
 | 
				
			||||||
 | 
					                  "maximumError": "10mb"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "anyComponentStyle",
 | 
				
			||||||
 | 
					                  "maximumWarning": "200kb",
 | 
				
			||||||
 | 
					                  "maximumError": "4mb"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
 | 
					          "defaultConfiguration": ""
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "serve": {
 | 
				
			||||||
 | 
					          "builder": "@angular-devkit/build-angular:dev-server",
 | 
				
			||||||
 | 
					          "options": {
 | 
				
			||||||
 | 
					            "browserTarget": "angularclarity:build"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
 | 
					          "configurations": {
 | 
				
			||||||
 | 
					            "production": {
 | 
				
			||||||
 | 
					              "browserTarget": "angularclarity:build:production"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "extract-i18n": {
 | 
				
			||||||
 | 
					          "builder": "@angular-devkit/build-angular:extract-i18n",
 | 
				
			||||||
 | 
					          "options": {
 | 
				
			||||||
 | 
					            "browserTarget": "angularclarity:build"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "test": {
 | 
				
			||||||
 | 
					          "builder": "@angular-devkit/build-angular:karma",
 | 
				
			||||||
 | 
					          "options": {
 | 
				
			||||||
 | 
					            "main": "src/test.ts",
 | 
				
			||||||
 | 
					            "polyfills": "src/polyfills.ts",
 | 
				
			||||||
 | 
					            "tsConfig": "tsconfig.spec.json",
 | 
				
			||||||
 | 
					            "karmaConfig": "karma.conf.js",
 | 
				
			||||||
 | 
					            "assets": [
 | 
				
			||||||
 | 
					              "src/favicon.ico",
 | 
				
			||||||
 | 
					              "src/assets"
 | 
				
			||||||
 | 
					            ],
 | 
				
			||||||
 | 
					            "styles": [
 | 
				
			||||||
 | 
					              "src/styles.scss"
 | 
				
			||||||
 | 
					            ],
 | 
				
			||||||
 | 
					            "scripts": []
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "e2e": {
 | 
				
			||||||
 | 
					          "builder": "@angular-devkit/build-angular:protractor",
 | 
				
			||||||
 | 
					          "options": {
 | 
				
			||||||
 | 
					            "protractorConfig": "e2e/protractor.conf.js",
 | 
				
			||||||
 | 
					            "devServerTarget": "angularclarity:serve"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
 | 
					          "configurations": {
 | 
				
			||||||
 | 
					            "production": {
 | 
				
			||||||
 | 
					              "devServerTarget": "angularclarity:serve:production"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "cli": {
 | 
				
			||||||
 | 
					    "analytics": "6e7a3b23-d894-47dd-8b4b-7fdeba9a5abd"
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					# This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
 | 
				
			||||||
 | 
					# For additional information regarding the format and rule options, please see:
 | 
				
			||||||
 | 
					# https://github.com/browserslist/browserslist#queries
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# You can see what browsers were selected by your queries by running:
 | 
				
			||||||
 | 
					#   npx browserslist
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					> 0.5%
 | 
				
			||||||
 | 
					last 2 versions
 | 
				
			||||||
 | 
					Firefox ESR
 | 
				
			||||||
 | 
					not dead
 | 
				
			||||||
 | 
					not IE 9-11 # For IE 9-11 support, remove 'not'.
 | 
				
			||||||
@ -0,0 +1,32 @@
 | 
				
			|||||||
 | 
					// @ts-check
 | 
				
			||||||
 | 
					// Protractor configuration file, see link for more information
 | 
				
			||||||
 | 
					// https://github.com/angular/protractor/blob/master/lib/config.ts
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const { SpecReporter } = require('jasmine-spec-reporter');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * @type { import("protractor").Config }
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					exports.config = {
 | 
				
			||||||
 | 
					  allScriptsTimeout: 11000,
 | 
				
			||||||
 | 
					  specs: [
 | 
				
			||||||
 | 
					    './src/**/*.e2e-spec.ts'
 | 
				
			||||||
 | 
					  ],
 | 
				
			||||||
 | 
					  capabilities: {
 | 
				
			||||||
 | 
					    browserName: 'chrome'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  directConnect: true,
 | 
				
			||||||
 | 
					  baseUrl: 'http://localhost:4200/',
 | 
				
			||||||
 | 
					  framework: 'jasmine',
 | 
				
			||||||
 | 
					  jasmineNodeOpts: {
 | 
				
			||||||
 | 
					    showColors: true,
 | 
				
			||||||
 | 
					    defaultTimeoutInterval: 30000,
 | 
				
			||||||
 | 
					    print: function() {}
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  onPrepare() {
 | 
				
			||||||
 | 
					    require('ts-node').register({
 | 
				
			||||||
 | 
					      project: require('path').join(__dirname, './tsconfig.json')
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					    jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
@ -0,0 +1,23 @@
 | 
				
			|||||||
 | 
					import { AppPage } from './app.po';
 | 
				
			||||||
 | 
					import { browser, logging } from 'protractor';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					describe('workspace-project App', () => {
 | 
				
			||||||
 | 
					  let page: AppPage;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(() => {
 | 
				
			||||||
 | 
					    page = new AppPage();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it('should display welcome message', () => {
 | 
				
			||||||
 | 
					    page.navigateTo();
 | 
				
			||||||
 | 
					    expect(page.getTitleText()).toEqual('angularclarity app is running!');
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  afterEach(async () => {
 | 
				
			||||||
 | 
					    // Assert that there are no errors emitted from the browser
 | 
				
			||||||
 | 
					    const logs = await browser.manage().logs().get(logging.Type.BROWSER);
 | 
				
			||||||
 | 
					    expect(logs).not.toContain(jasmine.objectContaining({
 | 
				
			||||||
 | 
					      level: logging.Level.SEVERE,
 | 
				
			||||||
 | 
					    } as logging.Entry));
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					import { browser, by, element } from 'protractor';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class AppPage {
 | 
				
			||||||
 | 
					  navigateTo(): Promise<unknown> {
 | 
				
			||||||
 | 
					    return browser.get(browser.baseUrl) as Promise<unknown>;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  getTitleText(): Promise<string> {
 | 
				
			||||||
 | 
					    return element(by.css('app-root .content span')).getText() as Promise<string>;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,13 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					  "extends": "../tsconfig.json",
 | 
				
			||||||
 | 
					  "compilerOptions": {
 | 
				
			||||||
 | 
					    "outDir": "../out-tsc/e2e",
 | 
				
			||||||
 | 
					    "module": "commonjs",
 | 
				
			||||||
 | 
					    "target": "es5",
 | 
				
			||||||
 | 
					    "types": [
 | 
				
			||||||
 | 
					      "jasmine",
 | 
				
			||||||
 | 
					      "jasminewd2",
 | 
				
			||||||
 | 
					      "node"
 | 
				
			||||||
 | 
					    ]
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,32 @@
 | 
				
			|||||||
 | 
					// Karma configuration file, see link for more information
 | 
				
			||||||
 | 
					// https://karma-runner.github.io/1.0/config/configuration-file.html
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					module.exports = function (config) {
 | 
				
			||||||
 | 
					  config.set({
 | 
				
			||||||
 | 
					    basePath: '',
 | 
				
			||||||
 | 
					    frameworks: ['jasmine', '@angular-devkit/build-angular'],
 | 
				
			||||||
 | 
					    plugins: [
 | 
				
			||||||
 | 
					      require('karma-jasmine'),
 | 
				
			||||||
 | 
					      require('karma-chrome-launcher'),
 | 
				
			||||||
 | 
					      require('karma-jasmine-html-reporter'),
 | 
				
			||||||
 | 
					      require('karma-coverage-istanbul-reporter'),
 | 
				
			||||||
 | 
					      require('@angular-devkit/build-angular/plugins/karma')
 | 
				
			||||||
 | 
					    ],
 | 
				
			||||||
 | 
					    client: {
 | 
				
			||||||
 | 
					      clearContext: false // leave Jasmine Spec Runner output visible in browser
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    coverageIstanbulReporter: {
 | 
				
			||||||
 | 
					      dir: require('path').join(__dirname, './coverage/ang'),
 | 
				
			||||||
 | 
					      reports: ['html', 'lcovonly', 'text-summary'],
 | 
				
			||||||
 | 
					      fixWebpackSourcePaths: true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    reporters: ['progress', 'kjhtml'],
 | 
				
			||||||
 | 
					    port: 9876,
 | 
				
			||||||
 | 
					    colors: true,
 | 
				
			||||||
 | 
					    logLevel: config.LOG_INFO,
 | 
				
			||||||
 | 
					    autoWatch: true,
 | 
				
			||||||
 | 
					    browsers: ['Chrome'],
 | 
				
			||||||
 | 
					    singleRun: false,
 | 
				
			||||||
 | 
					    restartOnFileChange: true
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
							
								
								
									
										14862
									
								
								test13sep-demot1-f/authsec_angular/frontend/angular-clarity-master/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										14862
									
								
								test13sep-demot1-f/authsec_angular/frontend/angular-clarity-master/package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@ -0,0 +1,89 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					  "name": "angular-clarity",
 | 
				
			||||||
 | 
					  "version": "16.0.4",
 | 
				
			||||||
 | 
					  "subVersion": "2023.06.02-01",
 | 
				
			||||||
 | 
					  "scripts": {
 | 
				
			||||||
 | 
					    "ng": "ng",
 | 
				
			||||||
 | 
					    "start": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng serve --port 4201 -o",
 | 
				
			||||||
 | 
					    "start:https": "ng serve --port 4201 --ssl -o",
 | 
				
			||||||
 | 
					    "build-prod": "node --max_old_space_size=64384  ./node_modules/@angular/cli/bin/ng build --prod ",
 | 
				
			||||||
 | 
					    "build": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --base-href ./ --configuration production --aot --build-optimizer",
 | 
				
			||||||
 | 
					    "test": "ng test",
 | 
				
			||||||
 | 
					    "lint": "ng lint",
 | 
				
			||||||
 | 
					    "e2e": "ng e2e"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "private": true,
 | 
				
			||||||
 | 
					  "dependencies": {
 | 
				
			||||||
 | 
					    "@angular/animations": "^16.0.4",
 | 
				
			||||||
 | 
					    "@angular/cdk": "^16.2.4",
 | 
				
			||||||
 | 
					    "@angular/common": "^16.0.4",
 | 
				
			||||||
 | 
					    "@angular/compiler": "^16.0.4",
 | 
				
			||||||
 | 
					    "@angular/core": "^16.0.4",
 | 
				
			||||||
 | 
					    "@angular/forms": "^16.0.4",
 | 
				
			||||||
 | 
					    "@angular/platform-browser": "^16.0.4",
 | 
				
			||||||
 | 
					    "@angular/platform-browser-dynamic": "^16.0.4",
 | 
				
			||||||
 | 
					    "@angular/router": "^16.0.4",
 | 
				
			||||||
 | 
					    "@auth0/angular-jwt": "^5.1.2",
 | 
				
			||||||
 | 
					    "@cds/core": "^6.9.0",
 | 
				
			||||||
 | 
					    "@ckeditor/ckeditor5-angular": "^7.0.1",
 | 
				
			||||||
 | 
					    "@ckeditor/ckeditor5-build-classic": "^40.0.0",
 | 
				
			||||||
 | 
					    "@clr/angular": "^15.5.0",
 | 
				
			||||||
 | 
					    "@clr/core": "^4.0.15",
 | 
				
			||||||
 | 
					    "@clr/icons": "^13.0.2",
 | 
				
			||||||
 | 
					    "@clr/ui": "^15.5.0",
 | 
				
			||||||
 | 
					    "@ctrl/ngx-codemirror": "^7.0.0",
 | 
				
			||||||
 | 
					    "@ngx-translate/core": "^16.0.3",
 | 
				
			||||||
 | 
					    "@ngx-translate/http-loader": "^16.0.0",
 | 
				
			||||||
 | 
					    "@swimlane/ngx-charts": "^20.4.1",
 | 
				
			||||||
 | 
					    "@webcomponents/custom-elements": "^1.6.0",
 | 
				
			||||||
 | 
					    "@webcomponents/webcomponentsjs": "^2.8.0",
 | 
				
			||||||
 | 
					    "angular-gridster2": "^16.0.0",
 | 
				
			||||||
 | 
					    "angularx-qrcode": "^16.0.2",
 | 
				
			||||||
 | 
					    "chart.js": "^4.4.0",
 | 
				
			||||||
 | 
					    "dom-to-image": "^2.6.0",
 | 
				
			||||||
 | 
					    "express": "^4.18.2",
 | 
				
			||||||
 | 
					    "file-saver": "^2.0.5",
 | 
				
			||||||
 | 
					    "highcharts": "^11.1.0",
 | 
				
			||||||
 | 
					    "highcharts-angular": "^3.1.2",
 | 
				
			||||||
 | 
					    "jquery": "^3.7.1",
 | 
				
			||||||
 | 
					    "jspdf": "^2.5.1",
 | 
				
			||||||
 | 
					    "jszip": "^3.10.1",
 | 
				
			||||||
 | 
					    "lit-html": "^3.1.0",
 | 
				
			||||||
 | 
					    "lodash": "^4.17.21",
 | 
				
			||||||
 | 
					    "moment": "^2.29.4",
 | 
				
			||||||
 | 
					    "ng-dynamic-component": "^10.1.1",
 | 
				
			||||||
 | 
					    "ng2-charts": "^5.0.3",
 | 
				
			||||||
 | 
					    "ng2-ckeditor": "^1.3.7",
 | 
				
			||||||
 | 
					    "ng2-search-filter": "^0.5.1",
 | 
				
			||||||
 | 
					    "ngx-captcha": "^13.0.0",
 | 
				
			||||||
 | 
					    "ngx-chips": "^3.0.0",
 | 
				
			||||||
 | 
					    "ngx-cookie-service": "^16.0.0",
 | 
				
			||||||
 | 
					    "ngx-drag-drop": "^16.1.0",
 | 
				
			||||||
 | 
					    "ngx-image-cropper": "^7.0.2",
 | 
				
			||||||
 | 
					    "ngx-toastr": "^17.0.2",
 | 
				
			||||||
 | 
					    "numeral": "^2.0.6",
 | 
				
			||||||
 | 
					    "rxjs": "^7.8.1",
 | 
				
			||||||
 | 
					    "sweetalert2": "^11.4.8",
 | 
				
			||||||
 | 
					    "tslib": "^2.5.2",
 | 
				
			||||||
 | 
					    "xlsx": "https://cdn.sheetjs.com/xlsx-0.19.3/xlsx-0.19.3.tgz",
 | 
				
			||||||
 | 
					    "zone.js": "~0.13.0"
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "devDependencies": {
 | 
				
			||||||
 | 
					    "@angular-devkit/build-angular": "^16.0.4",
 | 
				
			||||||
 | 
					    "@angular/cli": "^16.0.4",
 | 
				
			||||||
 | 
					    "@angular/compiler-cli": "^16.0.4",
 | 
				
			||||||
 | 
					    "@types/jasmine": "~4.3.2",
 | 
				
			||||||
 | 
					    "@types/jasminewd2": "~2.0.10",
 | 
				
			||||||
 | 
					    "@types/node": "^20.2.5",
 | 
				
			||||||
 | 
					    "jasmine-core": "~5.0.0",
 | 
				
			||||||
 | 
					    "jasmine-spec-reporter": "~7.0.0",
 | 
				
			||||||
 | 
					    "karma": "~6.4.2",
 | 
				
			||||||
 | 
					    "karma-chrome-launcher": "~3.2.0",
 | 
				
			||||||
 | 
					    "karma-coverage-istanbul-reporter": "~3.0.3",
 | 
				
			||||||
 | 
					    "karma-jasmine": "~5.1.0",
 | 
				
			||||||
 | 
					    "karma-jasmine-html-reporter": "^2.0.0",
 | 
				
			||||||
 | 
					    "ts-node": "^10.9.1",
 | 
				
			||||||
 | 
					    "tslint": "~6.1.3",
 | 
				
			||||||
 | 
					    "typescript": "^5.1.0"
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,42 @@
 | 
				
			|||||||
 | 
					import { Injectable } from '@angular/core';
 | 
				
			||||||
 | 
					import{environment} from 'src/environments/environment';
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * This is a singleton class
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					@Injectable()
 | 
				
			||||||
 | 
					export class AppConfig {
 | 
				
			||||||
 | 
					    //Provide all the Application Configs here
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public version: string = "1.0.0";
 | 
				
			||||||
 | 
					    public locale: string = "en-US";
 | 
				
			||||||
 | 
					    public currencyFormat = { style: "currency", currency: "USD" };
 | 
				
			||||||
 | 
					    public dateFormat = { year: 'numeric', month: 'short', day: 'numeric' };
 | 
				
			||||||
 | 
					// port in enviroment
 | 
				
			||||||
 | 
					    // API Related configs
 | 
				
			||||||
 | 
					    public apiPort: string; // this.apiURL //9191 to pc used and 8080/billingback to jboss
 | 
				
			||||||
 | 
					    public apiProtocol: string;
 | 
				
			||||||
 | 
					    public apiHostName: string;
 | 
				
			||||||
 | 
					    public baseApiPath: string;
 | 
				
			||||||
 | 
					    public backendURL: string = environment.backendUrl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    constructor() {
 | 
				
			||||||
 | 
					        if (this.apiProtocol === undefined) {
 | 
				
			||||||
 | 
					            this.apiProtocol = window.location.protocol;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        if (this.apiHostName === undefined) {
 | 
				
			||||||
 | 
					            this.apiHostName = window.location.hostname;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        if (this.apiPort === undefined) {
 | 
				
			||||||
 | 
					            this.apiPort = window.location.port;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        if (this.apiHostName.includes("infomud") || this.apiHostName.includes("heroku")) {
 | 
				
			||||||
 | 
					            this.baseApiPath = this.apiProtocol + "//" + this.apiHostName + "/";
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        else {
 | 
				
			||||||
 | 
					            this.baseApiPath = this.backendURL + "/";
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        if (this.locale === undefined) {
 | 
				
			||||||
 | 
					            this.locale = navigator.language;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					import { NgModule } from '@angular/core';
 | 
				
			||||||
 | 
					import { Routes, RouterModule } from '@angular/router';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const routes: Routes = [
 | 
				
			||||||
 | 
					 {path: '', redirectTo: 'login', pathMatch: 'full'}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@NgModule({
 | 
				
			||||||
 | 
					  imports: [RouterModule.forRoot(routes)],
 | 
				
			||||||
 | 
					  exports: [RouterModule]
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					export class AppRoutingModule { }
 | 
				
			||||||
@ -0,0 +1,3 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<router-outlet></router-outlet>
 | 
				
			||||||
@ -0,0 +1,35 @@
 | 
				
			|||||||
 | 
					import { TestBed, async } from '@angular/core/testing';
 | 
				
			||||||
 | 
					import { RouterTestingModule } from '@angular/router/testing';
 | 
				
			||||||
 | 
					import { AppComponent } from './app.component';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					describe('AppComponent', () => {
 | 
				
			||||||
 | 
					  beforeEach(async(() => {
 | 
				
			||||||
 | 
					    TestBed.configureTestingModule({
 | 
				
			||||||
 | 
					      imports: [
 | 
				
			||||||
 | 
					        RouterTestingModule
 | 
				
			||||||
 | 
					      ],
 | 
				
			||||||
 | 
					      declarations: [
 | 
				
			||||||
 | 
					        AppComponent
 | 
				
			||||||
 | 
					      ],
 | 
				
			||||||
 | 
					    }).compileComponents();
 | 
				
			||||||
 | 
					  }));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it('should create the app', () => {
 | 
				
			||||||
 | 
					    const fixture = TestBed.createComponent(AppComponent);
 | 
				
			||||||
 | 
					    const app = fixture.componentInstance;
 | 
				
			||||||
 | 
					    expect(app).toBeTruthy();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it(`should have as title 'angularclarity'`, () => {
 | 
				
			||||||
 | 
					    const fixture = TestBed.createComponent(AppComponent);
 | 
				
			||||||
 | 
					    const app = fixture.componentInstance;
 | 
				
			||||||
 | 
					    expect(app.title).toEqual('angularclarity');
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it('should render title', () => {
 | 
				
			||||||
 | 
					    const fixture = TestBed.createComponent(AppComponent);
 | 
				
			||||||
 | 
					    fixture.detectChanges();
 | 
				
			||||||
 | 
					    const compiled = fixture.nativeElement;
 | 
				
			||||||
 | 
					    expect(compiled.querySelector('.content span').textContent).toContain('angularclarity app is running!');
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					import { Component } from '@angular/core';
 | 
				
			||||||
 | 
					import { TranslateService } from '@ngx-translate/core';
 | 
				
			||||||
 | 
					@Component({
 | 
				
			||||||
 | 
					  selector: 'app-root',
 | 
				
			||||||
 | 
					  templateUrl: './app.component.html',
 | 
				
			||||||
 | 
					  styleUrls: ['./app.component.scss']
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					export class AppComponent {
 | 
				
			||||||
 | 
					  title = 'angularclarity';
 | 
				
			||||||
 | 
					  constructor(private translate: TranslateService) {
 | 
				
			||||||
 | 
					    // Set the default language
 | 
				
			||||||
 | 
					    this.translate.setDefaultLang('en');
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					switchLanguage(language: string) {
 | 
				
			||||||
 | 
					  this.translate.use(language);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,130 @@
 | 
				
			|||||||
 | 
					import { ExcelService } from './services/excel.service';
 | 
				
			||||||
 | 
					import { BrowserModule } from '@angular/platform-browser';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { ToastrModule } from 'ngx-toastr';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { AppRoutingModule } from './app-routing.module';
 | 
				
			||||||
 | 
					import { AppComponent } from './app.component';
 | 
				
			||||||
 | 
					import { ClarityModule } from '@clr/angular';
 | 
				
			||||||
 | 
					import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
 | 
				
			||||||
 | 
					import { HashLocationStrategy, LocationStrategy } from '@angular/common';
 | 
				
			||||||
 | 
					import { HttpClientModule, HTTP_INTERCEPTORS,HttpClient } from '@angular/common/http';
 | 
				
			||||||
 | 
					import { MainModule } from './modules/main/main.module';
 | 
				
			||||||
 | 
					import { LoginModule } from './modules/login/login.module';
 | 
				
			||||||
 | 
					import { MainService } from './services/main.service';
 | 
				
			||||||
 | 
					import { AlertService } from './services/alert.service';
 | 
				
			||||||
 | 
					import { HelperModule } from './pipes/helpers.module';
 | 
				
			||||||
 | 
					import { LogoComponent } from './modules/logo/logo.component';
 | 
				
			||||||
 | 
					import { AppConfig } from './app-config';
 | 
				
			||||||
 | 
					import { JwtInterceptor } from './services/jwt.interceptor';
 | 
				
			||||||
 | 
					import { UserInfoService } from './services/user-info.service';
 | 
				
			||||||
 | 
					import { AuthGuard } from './services/auth_guard.service';
 | 
				
			||||||
 | 
					import { LoginService } from './services/api/login.service';
 | 
				
			||||||
 | 
					import { ApiRequestService } from './services/api/api-request.service';
 | 
				
			||||||
 | 
					import { FormsModule, ReactiveFormsModule } from '@angular/forms';
 | 
				
			||||||
 | 
					import {CUSTOM_ELEMENTS_SCHEMA, NgModule } from "@angular/core";
 | 
				
			||||||
 | 
					import { TranslateService } from './services/api/translate.service';
 | 
				
			||||||
 | 
					import { RealnetMenuService } from './services/api/realnet-menu.service';
 | 
				
			||||||
 | 
					import { UserProfileService } from './services/admin/user-profile.service';
 | 
				
			||||||
 | 
					import { DragDropModule  } from '@angular/cdk/drag-drop';
 | 
				
			||||||
 | 
					import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
 | 
				
			||||||
 | 
					import { TranslateHttpLoader } from '@ngx-translate/http-loader';
 | 
				
			||||||
 | 
					import '@clr/icons';
 | 
				
			||||||
 | 
					import '@clr/icons/shapes/all-shapes';
 | 
				
			||||||
 | 
					import { AboutComponent } from './modules/main/admin/about/about.component';
 | 
				
			||||||
 | 
					import { LayoutComponent } from './modules/main/layout/layout.component';
 | 
				
			||||||
 | 
					import { SetupiconComponent } from './modules/main/builder/setupicon/setupicon.component';
 | 
				
			||||||
 | 
					import { MenumaintanceComponent } from './modules/main/admin/menumaintance/menumaintance.component';
 | 
				
			||||||
 | 
					import { UsermaintanceComponent } from './modules/main/admin/usermaintance/usermaintance.component';
 | 
				
			||||||
 | 
					import { UsergrpmaintenanceComponent } from './modules/main/admin/usergrpmaintenance/usergrpmaintenance.component';
 | 
				
			||||||
 | 
					import { MenuaccesscontrolComponent } from './modules/main/admin/menuaccesscontrol/menuaccesscontrol.component';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { SystemparametersComponent } from './modules/main/admin/systemparameters/systemparameters.component';
 | 
				
			||||||
 | 
					import { AccesstypeComponent } from './modules/main/admin/accesstype/accesstype.component';
 | 
				
			||||||
 | 
					import { SequencegenaratorComponent } from './modules/main/fnd/sequencegenarator/sequencegenarator.component';
 | 
				
			||||||
 | 
					import { ReportbuildallComponent } from './modules/main/builder/report-build/reportbuildall/reportbuildall.component';
 | 
				
			||||||
 | 
					import { ReportrunnerallComponent } from './modules/main/builder/report-runner/reportrunnerall/reportrunnerall.component';
 | 
				
			||||||
 | 
					import { ReportbuildaddComponent } from './modules/main/builder/report-build/reportbuildadd/reportbuildadd.component';
 | 
				
			||||||
 | 
					import { DashboardrunnerComponent } from './modules/main/builder/dashboardrunner/dashboardrunner.component';
 | 
				
			||||||
 | 
					import { DashrunnerallComponent } from './modules/main/builder/dashboardrunner/dashrunnerall/dashrunnerall.component';
 | 
				
			||||||
 | 
					import { AllnewdashComponent } from './modules/main/builder/dashboardnew/allnewdash/allnewdash.component';
 | 
				
			||||||
 | 
					import { AddnewdashComponent } from './modules/main/builder/dashboardnew/addnewdash/addnewdash.component';
 | 
				
			||||||
 | 
					import { DashboardComponent } from './modules/main/fnd/dashboard/dashboard.component';
 | 
				
			||||||
 | 
					import { ReportBuild2allComponent } from './modules/main/builder/report-build2/report-build2all/report-build2all.component';
 | 
				
			||||||
 | 
					import { ReportBuild2addComponent } from './modules/main/builder/report-build2/report-build2add/report-build2add.component';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export function HttpLoaderFactory(http: HttpClient) {
 | 
				
			||||||
 | 
					  return new TranslateHttpLoader(http , './assets/i18n/', '.json');
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					@NgModule({
 | 
				
			||||||
 | 
					  declarations: [
 | 
				
			||||||
 | 
					    AppComponent,
 | 
				
			||||||
 | 
					    LogoComponent,
 | 
				
			||||||
 | 
					  AboutComponent,
 | 
				
			||||||
 | 
					  AccesstypeComponent,
 | 
				
			||||||
 | 
					  SequencegenaratorComponent,
 | 
				
			||||||
 | 
					LayoutComponent,
 | 
				
			||||||
 | 
					SetupiconComponent,
 | 
				
			||||||
 | 
					MenumaintanceComponent,
 | 
				
			||||||
 | 
					UsermaintanceComponent,
 | 
				
			||||||
 | 
					UsergrpmaintenanceComponent,
 | 
				
			||||||
 | 
					MenuaccesscontrolComponent,
 | 
				
			||||||
 | 
					SystemparametersComponent,
 | 
				
			||||||
 | 
					ReportbuildallComponent,
 | 
				
			||||||
 | 
					ReportrunnerallComponent,
 | 
				
			||||||
 | 
					ReportbuildaddComponent,
 | 
				
			||||||
 | 
					DashboardrunnerComponent,
 | 
				
			||||||
 | 
					DashrunnerallComponent,
 | 
				
			||||||
 | 
					AllnewdashComponent,
 | 
				
			||||||
 | 
					AddnewdashComponent,
 | 
				
			||||||
 | 
					DashboardComponent,
 | 
				
			||||||
 | 
					ReportBuild2allComponent,
 | 
				
			||||||
 | 
					ReportBuild2addComponent,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ],
 | 
				
			||||||
 | 
					  imports: [
 | 
				
			||||||
 | 
					    BrowserModule,
 | 
				
			||||||
 | 
					    AppRoutingModule,
 | 
				
			||||||
 | 
					    ClarityModule,
 | 
				
			||||||
 | 
					    HttpClientModule,
 | 
				
			||||||
 | 
					    BrowserAnimationsModule,
 | 
				
			||||||
 | 
					    ToastrModule.forRoot(),
 | 
				
			||||||
 | 
					    HelperModule,
 | 
				
			||||||
 | 
					    MainModule,
 | 
				
			||||||
 | 
					    LoginModule,
 | 
				
			||||||
 | 
					    FormsModule,
 | 
				
			||||||
 | 
					    ReactiveFormsModule,
 | 
				
			||||||
 | 
					    DragDropModule,
 | 
				
			||||||
 | 
					    TranslateModule.forRoot({
 | 
				
			||||||
 | 
					      loader: {
 | 
				
			||||||
 | 
					        provide: TranslateLoader,
 | 
				
			||||||
 | 
					        useFactory: HttpLoaderFactory,
 | 
				
			||||||
 | 
					        deps: [HttpClient]
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    })
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ],
 | 
				
			||||||
 | 
					  providers: [
 | 
				
			||||||
 | 
					    MainService,
 | 
				
			||||||
 | 
					    AlertService,
 | 
				
			||||||
 | 
					    ExcelService,
 | 
				
			||||||
 | 
					    UserInfoService,
 | 
				
			||||||
 | 
					    LoginService,
 | 
				
			||||||
 | 
					    ApiRequestService,
 | 
				
			||||||
 | 
					    TranslateService,
 | 
				
			||||||
 | 
					    RealnetMenuService,
 | 
				
			||||||
 | 
					    UserProfileService,
 | 
				
			||||||
 | 
					    // ProjectSetupService,
 | 
				
			||||||
 | 
					    // TechnologyStackService,
 | 
				
			||||||
 | 
					    // DropdownService,
 | 
				
			||||||
 | 
					    // WireframeService,
 | 
				
			||||||
 | 
					    // SuregitService,
 | 
				
			||||||
 | 
					    AuthGuard,
 | 
				
			||||||
 | 
					    AppConfig,
 | 
				
			||||||
 | 
					    { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true },
 | 
				
			||||||
 | 
					    { provide: LocationStrategy, useClass: HashLocationStrategy }  // HashLocationStrategy  to use # and remove # PathLocationStrategy
 | 
				
			||||||
 | 
					  ],
 | 
				
			||||||
 | 
					  bootstrap: [AppComponent],
 | 
				
			||||||
 | 
					  schemas: [CUSTOM_ELEMENTS_SCHEMA  ]
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					export class AppModule { }
 | 
				
			||||||
@ -0,0 +1,169 @@
 | 
				
			|||||||
 | 
					export class field{
 | 
				
			||||||
 | 
					  _id?:any;
 | 
				
			||||||
 | 
					  name?:any;
 | 
				
			||||||
 | 
					  type?:any;
 | 
				
			||||||
 | 
					  icon?:any;
 | 
				
			||||||
 | 
					  toggle?:any;
 | 
				
			||||||
 | 
					  required?:any;
 | 
				
			||||||
 | 
					  regex?:any;
 | 
				
			||||||
 | 
					  errorText?:any;
 | 
				
			||||||
 | 
					  label?:any;
 | 
				
			||||||
 | 
					  description?:any;
 | 
				
			||||||
 | 
					  placeholder?:any;
 | 
				
			||||||
 | 
					  className?:any;
 | 
				
			||||||
 | 
					  subtype?:any;
 | 
				
			||||||
 | 
					  handle?:any;
 | 
				
			||||||
 | 
					  min?:number;
 | 
				
			||||||
 | 
					  max?:number;
 | 
				
			||||||
 | 
					  inline?:any;
 | 
				
			||||||
 | 
					  value?:any;
 | 
				
			||||||
 | 
					  size?:any;
 | 
				
			||||||
 | 
					  values?:Array<value>;
 | 
				
			||||||
 | 
					  div_name?:any;
 | 
				
			||||||
 | 
					  gridLine_name?:any;
 | 
				
			||||||
 | 
					  children?: field[];
 | 
				
			||||||
 | 
					  tooltipmsg?:any;
 | 
				
			||||||
 | 
					  maxcharacters?:any;
 | 
				
			||||||
 | 
					  visibilty?:any;
 | 
				
			||||||
 | 
					  duplicateVal?:any;
 | 
				
			||||||
 | 
					  encryptData?:any;
 | 
				
			||||||
 | 
					  personalHealthInfo?:any;
 | 
				
			||||||
 | 
					  descriptionText?:any;
 | 
				
			||||||
 | 
					  heightpx?:any;
 | 
				
			||||||
 | 
					  showDescription?:boolean;
 | 
				
			||||||
 | 
					  personalInfo?:boolean;
 | 
				
			||||||
 | 
					  readOnly?:any;
 | 
				
			||||||
 | 
					  sessionVar?:any;
 | 
				
			||||||
 | 
					  allowedDays?:any;
 | 
				
			||||||
 | 
					  allowedHrsFrom?:any;
 | 
				
			||||||
 | 
					  allowedHrsTo?:any;
 | 
				
			||||||
 | 
					  showSeconds?:boolean;
 | 
				
			||||||
 | 
					  datePicker?:any;
 | 
				
			||||||
 | 
					  alphabeticalOrdering?:boolean;
 | 
				
			||||||
 | 
					  fieldLayout?:any;
 | 
				
			||||||
 | 
					  otherChoice?:boolean;
 | 
				
			||||||
 | 
					  dynamicList?:any;
 | 
				
			||||||
 | 
					  iconType?:any;
 | 
				
			||||||
 | 
					  target?:any;
 | 
				
			||||||
 | 
					  defaultCamera?:any;
 | 
				
			||||||
 | 
					  imgoption?:Array<value>;
 | 
				
			||||||
 | 
					  questions?:Array<value1>;
 | 
				
			||||||
 | 
					  maxDuration?:any;
 | 
				
			||||||
 | 
					  maxNo?:number;
 | 
				
			||||||
 | 
					  decimalPlaces?:number;
 | 
				
			||||||
 | 
					  currencyType?:any;
 | 
				
			||||||
 | 
					  formatNo?:any;
 | 
				
			||||||
 | 
					  providersData?:any;
 | 
				
			||||||
 | 
					  apikey?:any;
 | 
				
			||||||
 | 
					  expanded?:boolean;
 | 
				
			||||||
 | 
					  files?:Array<any>;
 | 
				
			||||||
 | 
					  password?:any;
 | 
				
			||||||
 | 
					  content?:any;
 | 
				
			||||||
 | 
					  theme?:any;
 | 
				
			||||||
 | 
					  norows?:number;
 | 
				
			||||||
 | 
					  nocolumns?:number;
 | 
				
			||||||
 | 
					  editordata?:any;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					export class value{
 | 
				
			||||||
 | 
					  label?:any="";
 | 
				
			||||||
 | 
					  value?:any="";
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					export class value1{
 | 
				
			||||||
 | 
					  label1?:any="";
 | 
				
			||||||
 | 
					  value1?:any="";
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					export interface IProperty {
 | 
				
			||||||
 | 
					  url?: string;
 | 
				
			||||||
 | 
					  loading?: boolean;
 | 
				
			||||||
 | 
					  itemsPerPage?: number;
 | 
				
			||||||
 | 
					  total?: number;
 | 
				
			||||||
 | 
					  p?: number;
 | 
				
			||||||
 | 
					  sizeLimit?: number;
 | 
				
			||||||
 | 
					  title?: string;
 | 
				
			||||||
 | 
					  text?: string;
 | 
				
			||||||
 | 
					  items?: any[];
 | 
				
			||||||
 | 
					  sub?: any;
 | 
				
			||||||
 | 
					  isBlocked?: boolean;
 | 
				
			||||||
 | 
					  isDeleted?: boolean;
 | 
				
			||||||
 | 
					  isEmailVerified?: string;
 | 
				
			||||||
 | 
					  successMsg?: string;
 | 
				
			||||||
 | 
					  msg?: string;
 | 
				
			||||||
 | 
					  userId?: string;
 | 
				
			||||||
 | 
					  status?: number;
 | 
				
			||||||
 | 
					  userPlaceholder?: string;
 | 
				
			||||||
 | 
					  searchKey?: string;
 | 
				
			||||||
 | 
					  fullName?: string;
 | 
				
			||||||
 | 
					  email?: string;
 | 
				
			||||||
 | 
					  countryCode?: string;
 | 
				
			||||||
 | 
					  dialCode?: string;
 | 
				
			||||||
 | 
					  phoneNumber?: string;
 | 
				
			||||||
 | 
					  value?: Date;
 | 
				
			||||||
 | 
					  data?: any;
 | 
				
			||||||
 | 
					  name_es?: string;
 | 
				
			||||||
 | 
					  name_en?: string;
 | 
				
			||||||
 | 
					  countries?: any;
 | 
				
			||||||
 | 
					  states?: any;
 | 
				
			||||||
 | 
					  cities?: any;
 | 
				
			||||||
 | 
					  countries1?: any;
 | 
				
			||||||
 | 
					  states1?: any;
 | 
				
			||||||
 | 
					  cities1?: any;
 | 
				
			||||||
 | 
					  countries2?: any;
 | 
				
			||||||
 | 
					  states2?: any;
 | 
				
			||||||
 | 
					  cities2?: any;
 | 
				
			||||||
 | 
					  localities?: any;
 | 
				
			||||||
 | 
					  buildings?: any;
 | 
				
			||||||
 | 
					  country_id?: string;
 | 
				
			||||||
 | 
					  state_id?: string;
 | 
				
			||||||
 | 
					  city_id?: string;
 | 
				
			||||||
 | 
					  locality_id?: string;
 | 
				
			||||||
 | 
					  building_id?: string;
 | 
				
			||||||
 | 
					  countryCount?: number;
 | 
				
			||||||
 | 
					  stateCount?: number;
 | 
				
			||||||
 | 
					  cityCount?: number;
 | 
				
			||||||
 | 
					  stateCityCount?: number;
 | 
				
			||||||
 | 
					  localityCount?: number;
 | 
				
			||||||
 | 
					  buildingCount?: number;
 | 
				
			||||||
 | 
					  countriesAdd?: any;
 | 
				
			||||||
 | 
					  statesAdd?: any;
 | 
				
			||||||
 | 
					  citiesAdd?: any;
 | 
				
			||||||
 | 
					  localitiesAdd?: any;
 | 
				
			||||||
 | 
					  country_idAdd?: string;
 | 
				
			||||||
 | 
					  state_idAdd?: string;
 | 
				
			||||||
 | 
					  city_idAdd?: string;
 | 
				
			||||||
 | 
					  locality_idAdd?: string;
 | 
				
			||||||
 | 
					  countryCountAdd?: number;
 | 
				
			||||||
 | 
					  stateCountAdd?: number;
 | 
				
			||||||
 | 
					  cityCountAdd?: number;
 | 
				
			||||||
 | 
					  localityCountAdd?: number;
 | 
				
			||||||
 | 
					  successText?: string;
 | 
				
			||||||
 | 
					  propertyTypes?: any;
 | 
				
			||||||
 | 
					  propertyTypesCount?: number;
 | 
				
			||||||
 | 
					  amenities?: any;
 | 
				
			||||||
 | 
					  amenitiesCount?: number;
 | 
				
			||||||
 | 
					  projectTypes?: any;
 | 
				
			||||||
 | 
					  projectTypesCount?: number;
 | 
				
			||||||
 | 
					  routeName?: string;
 | 
				
			||||||
 | 
					  icon?: any;
 | 
				
			||||||
 | 
					  userType?: string;
 | 
				
			||||||
 | 
					  overlay?: any;
 | 
				
			||||||
 | 
					  is_broker_seller_dev?: number;
 | 
				
			||||||
 | 
					  is_buyer_renter?: number;
 | 
				
			||||||
 | 
					  is_broker?: number;
 | 
				
			||||||
 | 
					  is_data_collector?: number;
 | 
				
			||||||
 | 
					  image?: any;
 | 
				
			||||||
 | 
					  index?: number;
 | 
				
			||||||
 | 
					  name?: string;
 | 
				
			||||||
 | 
					  phone?: string;
 | 
				
			||||||
 | 
					  type?: number;
 | 
				
			||||||
 | 
					  property_id?: string;
 | 
				
			||||||
 | 
					  banks?: any;
 | 
				
			||||||
 | 
					  bankCount?: string;
 | 
				
			||||||
 | 
					  flag?: number;
 | 
				
			||||||
 | 
					  page?: number;
 | 
				
			||||||
 | 
					  property_for?: any;
 | 
				
			||||||
 | 
					  status_id?:any;
 | 
				
			||||||
 | 
					  type_id?:any;
 | 
				
			||||||
 | 
					  post_type?:any;
 | 
				
			||||||
 | 
					  developer_id?:any;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					export enum Role {
 | 
				
			||||||
 | 
					 // User = 'User',
 | 
				
			||||||
 | 
					  Admin = 'Admin'
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,30 @@
 | 
				
			|||||||
 | 
					export class Systemparameter{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 public schedulerTime: number;
 | 
				
			||||||
 | 
					 public leaseTaxCode: String;
 | 
				
			||||||
 | 
					 public vesselConfProcessLimit: number;
 | 
				
			||||||
 | 
					 public rowToDisplay: any;
 | 
				
			||||||
 | 
					 public linkToDisplay: any;
 | 
				
			||||||
 | 
					 public rowToAdd: any;
 | 
				
			||||||
 | 
					 public lovRowToDisplay:any;
 | 
				
			||||||
 | 
					 public lovLinkToDisplay: any;
 | 
				
			||||||
 | 
					 public oidserverName: any;
 | 
				
			||||||
 | 
					 public oidBase: any;
 | 
				
			||||||
 | 
					 public oidAdminUser: any;
 | 
				
			||||||
 | 
					 public oidServerPort: any;
 | 
				
			||||||
 | 
					 public userDefaultGroup: any;
 | 
				
			||||||
 | 
					 public  defaultDepartment: any;
 | 
				
			||||||
 | 
					 public defaultPosition: any;
 | 
				
			||||||
 | 
					 public singleCharge: any;
 | 
				
			||||||
 | 
					 public firstDayOftheWeek:any;
 | 
				
			||||||
 | 
					 public hourPerShift: any;
 | 
				
			||||||
 | 
					 public cnBillingFrequency: any;
 | 
				
			||||||
 | 
					 public billingDepartmentCode: any;
 | 
				
			||||||
 | 
					 public basePriceList: any;
 | 
				
			||||||
 | 
					 public nonContainerServiceOrder: any;
 | 
				
			||||||
 | 
					 public ediMaeSchedulerONOFF: any;
 | 
				
			||||||
 | 
					 public ediSchedulerONOFF: any;
 | 
				
			||||||
 | 
					public company_Display_Name:any;
 | 
				
			||||||
 | 
					public upload_Logo:any;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					export class User  {
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public name: string;
 | 
				
			||||||
 | 
					  public gender: string;
 | 
				
			||||||
 | 
					  public dob: string;
 | 
				
			||||||
 | 
					  public email: string;
 | 
				
			||||||
 | 
					  public picture:Blob;
 | 
				
			||||||
 | 
					  public location:string;
 | 
				
			||||||
 | 
					  public address1:string;
 | 
				
			||||||
 | 
					  public country:string;
 | 
				
			||||||
 | 
					  public phone:number;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					export class userdepartment{
 | 
				
			||||||
 | 
					  public  departmentCode:String;
 | 
				
			||||||
 | 
						public  active:String;
 | 
				
			||||||
 | 
						public  description:String;
 | 
				
			||||||
 | 
						public  createdOn:Date;
 | 
				
			||||||
 | 
						public  createdBy:String;
 | 
				
			||||||
 | 
						public  updatedOn:Date;
 | 
				
			||||||
 | 
						public  updatedBy:String;
 | 
				
			||||||
 | 
					  public id:number;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					export class Usergrpmain  {
 | 
				
			||||||
 | 
					  public usrGrp: number;
 | 
				
			||||||
 | 
					  public groupName:string;
 | 
				
			||||||
 | 
					  public groupDesc:string;
 | 
				
			||||||
 | 
					  public createby:string;
 | 
				
			||||||
 | 
					  public createdate:Date;
 | 
				
			||||||
 | 
					  public groupLevel:string;
 | 
				
			||||||
 | 
					  public status:string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,38 @@
 | 
				
			|||||||
 | 
					import { userdepartment } from "./userdepartment";
 | 
				
			||||||
 | 
					import { userposition } from "./userposition";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Usermain  {
 | 
				
			||||||
 | 
					  public userId: number;
 | 
				
			||||||
 | 
					  public changePassw:string;
 | 
				
			||||||
 | 
					  public confirmPassword:string;
 | 
				
			||||||
 | 
					  public createby:string;
 | 
				
			||||||
 | 
					  public createdate:Date;
 | 
				
			||||||
 | 
					  public customerId:number;
 | 
				
			||||||
 | 
					   public customerNumer:String;
 | 
				
			||||||
 | 
					   public departmentCode:string;
 | 
				
			||||||
 | 
					   public departmentCodeString:string;
 | 
				
			||||||
 | 
					   public email:string;
 | 
				
			||||||
 | 
					   public firstLogin:String;
 | 
				
			||||||
 | 
					   public   fullName:String;
 | 
				
			||||||
 | 
					   public langCode: String;
 | 
				
			||||||
 | 
					   public notification:String;
 | 
				
			||||||
 | 
					   public  password1: String;
 | 
				
			||||||
 | 
					   public  password2: String;
 | 
				
			||||||
 | 
					   public  password3: String;
 | 
				
			||||||
 | 
					   public  password4: String;
 | 
				
			||||||
 | 
					   public positionCodeString:String;
 | 
				
			||||||
 | 
					   public pwdChangedCnt:string;
 | 
				
			||||||
 | 
					   public shortName: string;
 | 
				
			||||||
 | 
					   public status:string;
 | 
				
			||||||
 | 
					   public updateby:string;
 | 
				
			||||||
 | 
					   public updatedate:Date;
 | 
				
			||||||
 | 
					  public username: string;
 | 
				
			||||||
 | 
					  public userPassw: string;
 | 
				
			||||||
 | 
					  public usrGrpId:number;
 | 
				
			||||||
 | 
					  public title: string;
 | 
				
			||||||
 | 
					   public expiryDate: Date;
 | 
				
			||||||
 | 
					 public  lastPwdChangedDate:Date;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					export class userposition{
 | 
				
			||||||
 | 
					  public  positionCode:String;
 | 
				
			||||||
 | 
						public  active:String;
 | 
				
			||||||
 | 
						public  description:String;
 | 
				
			||||||
 | 
						public  createdOn:Date;
 | 
				
			||||||
 | 
						public  createdBy:String;
 | 
				
			||||||
 | 
						public  updatedOn:Date;
 | 
				
			||||||
 | 
						public  updatedBy:String;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					export interface ActiveTechnology {
 | 
				
			||||||
 | 
					  id;
 | 
				
			||||||
 | 
					name;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,13 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class AdhocParam{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public table_allias_name: string;
 | 
				
			||||||
 | 
					  public column_name: string;
 | 
				
			||||||
 | 
					  public column_allias_name: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					export class Audit {
 | 
				
			||||||
 | 
					    public accountId: number;
 | 
				
			||||||
 | 
					    public createdAt: Date;
 | 
				
			||||||
 | 
					    public createdBy: string;
 | 
				
			||||||
 | 
					    public updatedAt: Date;
 | 
				
			||||||
 | 
					    public updatedBy: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					import { Audit } from "./Audit";
 | 
				
			||||||
 | 
					export class Bcf_TechnologyStack extends Audit {
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public tech_stack: string;
 | 
				
			||||||
 | 
					  public tech_stack_key: string;
 | 
				
			||||||
 | 
					  public tags: string;
 | 
				
			||||||
 | 
					  public base_prj_file_name: string;
 | 
				
			||||||
 | 
					  public active: boolean;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					export interface ColumnList {
 | 
				
			||||||
 | 
					  // id: number;
 | 
				
			||||||
 | 
					   table_name: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					export class DateParam{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  public date_id: number;
 | 
				
			||||||
 | 
					  public col_table_alies_name_date: string;
 | 
				
			||||||
 | 
					  public col_date_query: string;
 | 
				
			||||||
 | 
					  public column_alias_date_query: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					export interface FileData {
 | 
				
			||||||
 | 
					    id: number;
 | 
				
			||||||
 | 
					    text: string;
 | 
				
			||||||
 | 
					    /* public id: number;
 | 
				
			||||||
 | 
					    public text: string; */
 | 
				
			||||||
 | 
					    /* constructor(id: number, text: string) {
 | 
				
			||||||
 | 
					        this.id = id;
 | 
				
			||||||
 | 
					        this.text = text;
 | 
				
			||||||
 | 
					    } */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					export interface FileDetails {
 | 
				
			||||||
 | 
					    id: number;
 | 
				
			||||||
 | 
					    text: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					import { Audit } from "./Audit";
 | 
				
			||||||
 | 
					import { ProjectSetup } from "./Project_setup";
 | 
				
			||||||
 | 
					import { Rn_Fb_Header } from "./Rn_Fb_Header";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class ModuleSetup extends Audit {
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public moduleName: string;
 | 
				
			||||||
 | 
					  public description: string;
 | 
				
			||||||
 | 
					  public modulePrefix: string;
 | 
				
			||||||
 | 
					  public copyTo?: string;
 | 
				
			||||||
 | 
					  public technologyStack: string;
 | 
				
			||||||
 | 
					  public project: ProjectSetup;
 | 
				
			||||||
 | 
					  public rn_fb_headers: Rn_Fb_Header[];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,22 @@
 | 
				
			|||||||
 | 
					import { Audit } from "./Audit";
 | 
				
			||||||
 | 
					import { ModuleSetup } from "./Module_Setup";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class ProjectSetup extends Audit {
 | 
				
			||||||
 | 
					    public id: number;
 | 
				
			||||||
 | 
					    public projectName: string;
 | 
				
			||||||
 | 
					    public description: string;
 | 
				
			||||||
 | 
					    public copyTo?: string;
 | 
				
			||||||
 | 
					    public technologyStack: string;
 | 
				
			||||||
 | 
					    public techStackId: number;
 | 
				
			||||||
 | 
					    public projectPrefix: string;
 | 
				
			||||||
 | 
					    public dbName: string;
 | 
				
			||||||
 | 
					    public dbUserName: string;
 | 
				
			||||||
 | 
					    public dbPassword: string;
 | 
				
			||||||
 | 
					    public portNumber: string;
 | 
				
			||||||
 | 
					    public namespace: string;
 | 
				
			||||||
 | 
					    public tags:string;
 | 
				
			||||||
 | 
					    public category:string;
 | 
				
			||||||
 | 
					    public accessibility:boolean;
 | 
				
			||||||
 | 
					    public modules: ModuleSetup[];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					export class RbColumns{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public column_name: string;
 | 
				
			||||||
 | 
					  public functions: string;
 | 
				
			||||||
 | 
					  public column_allias_name: string;
 | 
				
			||||||
 | 
					  public table_allies_name: string;
 | 
				
			||||||
 | 
					  public asc_desc: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,7 @@
 | 
				
			|||||||
 | 
					export class RbTables{
 | 
				
			||||||
 | 
					  public table_id: number;
 | 
				
			||||||
 | 
					  public table_name: string;
 | 
				
			||||||
 | 
					  public table_allias_name: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,8 @@
 | 
				
			|||||||
 | 
					export class ReportBuilder {
 | 
				
			||||||
 | 
					  public report_id: number;
 | 
				
			||||||
 | 
					public report_name:string;
 | 
				
			||||||
 | 
					public description: string;
 | 
				
			||||||
 | 
					public report_tags: string;
 | 
				
			||||||
 | 
					public servicename:string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					export class ReportBuilderQuery {
 | 
				
			||||||
 | 
					  public master_select: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					import { Audit } from "./Audit";
 | 
				
			||||||
 | 
					import { Rn_Cff_ActionBuilder_Line } from "./Rn_Cff_ActionBuilder_Line";
 | 
				
			||||||
 | 
					import { Rn_Fb_Header } from "./Rn_Fb_Header";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Rn_Cff_ActionBuilder_Header extends Audit {
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public rn_fb_header: Rn_Fb_Header;
 | 
				
			||||||
 | 
					  public technologyStack: string;
 | 
				
			||||||
 | 
					  public controllerName: string;
 | 
				
			||||||
 | 
					  public methodName: string;
 | 
				
			||||||
 | 
					  public actionName: string;
 | 
				
			||||||
 | 
					  public fileLocation: string;
 | 
				
			||||||
 | 
					  public actionBuilderLines: Rn_Cff_ActionBuilder_Line[];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					import { Audit } from "./Audit";
 | 
				
			||||||
 | 
					import { Rn_Cff_ActionBuilder_Header } from "./Rn_Cff_ActionBuilder_Header";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Rn_Cff_ActionBuilder_Line extends Audit {
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public actionType1: string;
 | 
				
			||||||
 | 
					  public actionType2: string;
 | 
				
			||||||
 | 
					  public dataType: string;
 | 
				
			||||||
 | 
					  public variableName: string;
 | 
				
			||||||
 | 
					  public assignment: string;
 | 
				
			||||||
 | 
					  public message: string;
 | 
				
			||||||
 | 
					  public conditions: string;
 | 
				
			||||||
 | 
					  public forward: string;
 | 
				
			||||||
 | 
					  public equation: string;
 | 
				
			||||||
 | 
					  public seq: number;
 | 
				
			||||||
 | 
					  public action: string;
 | 
				
			||||||
 | 
					  public rn_cff_actionBuilderHeader: Rn_Cff_ActionBuilder_Header;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,22 @@
 | 
				
			|||||||
 | 
					import { Audit } from "./Audit";
 | 
				
			||||||
 | 
					import { Rn_Fb_Lines } from "./Rn_Fb_Lines";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Rn_Fb_Header extends Audit {
 | 
				
			||||||
 | 
					    public id: number;
 | 
				
			||||||
 | 
						public techStack: string;
 | 
				
			||||||
 | 
						public objectType: string;
 | 
				
			||||||
 | 
						public subObjectType: string;
 | 
				
			||||||
 | 
						public uiName: string;
 | 
				
			||||||
 | 
					    public formType: string;
 | 
				
			||||||
 | 
					    public tableName: string;
 | 
				
			||||||
 | 
					    public lineTableName: string;
 | 
				
			||||||
 | 
					    public multilineTableName: string;
 | 
				
			||||||
 | 
					    public formCode: string;
 | 
				
			||||||
 | 
					    public build: boolean;
 | 
				
			||||||
 | 
					    public updated: boolean;
 | 
				
			||||||
 | 
					    public menuName: string;
 | 
				
			||||||
 | 
					    public headerName: string;
 | 
				
			||||||
 | 
					    public convertedTableName: string;
 | 
				
			||||||
 | 
					    public rn_fb_lines: Rn_Fb_Lines[];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,49 @@
 | 
				
			|||||||
 | 
					import { Audit } from "./Audit";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Rn_Fb_Lines extends Audit {
 | 
				
			||||||
 | 
					    public id: number;
 | 
				
			||||||
 | 
						public fieldName: string;
 | 
				
			||||||
 | 
						public mapping: string;
 | 
				
			||||||
 | 
					    public dataType: string;
 | 
				
			||||||
 | 
					    public formCode: string;
 | 
				
			||||||
 | 
					    public key1: string;
 | 
				
			||||||
 | 
					    public type1: string;
 | 
				
			||||||
 | 
					    public mandatory: boolean;
 | 
				
			||||||
 | 
					    public hidden: boolean;
 | 
				
			||||||
 | 
					    public readonly: boolean;
 | 
				
			||||||
 | 
					    public dependent: boolean;
 | 
				
			||||||
 | 
					    public dependent_on: string;
 | 
				
			||||||
 | 
					    public dependent_sp: string;
 | 
				
			||||||
 | 
					    public dependent_sp_param: string;
 | 
				
			||||||
 | 
					    public validation_1: boolean;
 | 
				
			||||||
 | 
					    public val_type: string;
 | 
				
			||||||
 | 
					    public val_sp: string;
 | 
				
			||||||
 | 
					    public val_sp_param: string;
 | 
				
			||||||
 | 
					    public sequence: boolean;
 | 
				
			||||||
 | 
					    public seq_name: string;
 | 
				
			||||||
 | 
					    public seq_sp: string;
 | 
				
			||||||
 | 
					    public seq_sp_param: string;
 | 
				
			||||||
 | 
					    public default_1: boolean;
 | 
				
			||||||
 | 
					    public default_type: string;
 | 
				
			||||||
 | 
					    public default_value: string;
 | 
				
			||||||
 | 
					    public default_sp: string;
 | 
				
			||||||
 | 
					    public default_sp_param: string;
 | 
				
			||||||
 | 
					    public calculated_field: boolean;
 | 
				
			||||||
 | 
					    public cal_sp: string;
 | 
				
			||||||
 | 
					    public cal_sp_param: string;
 | 
				
			||||||
 | 
					    public add_to_grid: boolean;
 | 
				
			||||||
 | 
					    public sp_for_autocomplete: boolean;
 | 
				
			||||||
 | 
					    public sp_name_for_autocomplete: string;
 | 
				
			||||||
 | 
					    public sp_for_dropdown: boolean;
 | 
				
			||||||
 | 
					    public sp_name_for_dropdown: string;
 | 
				
			||||||
 | 
					    public type_field: string;
 | 
				
			||||||
 | 
					    public methodName: string;
 | 
				
			||||||
 | 
					    public seq: number;
 | 
				
			||||||
 | 
					    public form_type: string;
 | 
				
			||||||
 | 
					    public section_num: number;
 | 
				
			||||||
 | 
					    public button_num: string;
 | 
				
			||||||
 | 
					    public type2: string;
 | 
				
			||||||
 | 
					    public table_name?: string;
 | 
				
			||||||
 | 
					    public line_table_name: string;
 | 
				
			||||||
 | 
					    public line_table_no: number;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,17 @@
 | 
				
			|||||||
 | 
					import { Audit } from "./Audit";
 | 
				
			||||||
 | 
					import { Rn_Sub_Menu } from './Rn_Sub_Menu';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Rn_Main_Menu extends Audit {
 | 
				
			||||||
 | 
						public menuItemId: number;
 | 
				
			||||||
 | 
						public menuItemDesc: string;
 | 
				
			||||||
 | 
						public mainMenuActionName : string;
 | 
				
			||||||
 | 
						public mainMenuIconName: string;
 | 
				
			||||||
 | 
						public menu_type: string;
 | 
				
			||||||
 | 
					  public mcreate:String;
 | 
				
			||||||
 | 
					  public mdelete:String;
 | 
				
			||||||
 | 
					  public medit:String;
 | 
				
			||||||
 | 
					  public menuId:Number;
 | 
				
			||||||
 | 
					  public mquery:String;
 | 
				
			||||||
 | 
					  public mvisible:String;
 | 
				
			||||||
 | 
						public subMenus: Rn_Sub_Menu[];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,16 @@
 | 
				
			|||||||
 | 
					import { Audit } from "./Audit";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Rn_Sub_Menu extends Audit {
 | 
				
			||||||
 | 
					  public menuItemId: number;
 | 
				
			||||||
 | 
						public menuItemDesc: string;
 | 
				
			||||||
 | 
						public mainMenuActionName : string;
 | 
				
			||||||
 | 
						public mainMenuIconName: string;
 | 
				
			||||||
 | 
						public menu_type: string;
 | 
				
			||||||
 | 
					  public mcreate:String;
 | 
				
			||||||
 | 
					  public mdelete:String;
 | 
				
			||||||
 | 
					  public medit:String;
 | 
				
			||||||
 | 
					  public menuId:Number;
 | 
				
			||||||
 | 
					  public mquery:String;
 | 
				
			||||||
 | 
					  public mvisible:String;
 | 
				
			||||||
 | 
						//public menu_icon: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					export class StdParam{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  public std_id: number;
 | 
				
			||||||
 | 
					  public col_table_alies_name_std_para: string;
 | 
				
			||||||
 | 
					  public col_std_para_query: string;
 | 
				
			||||||
 | 
					  public field_type: string;
 | 
				
			||||||
 | 
					  public sp_for_dd: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					export class WhereParam{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  public where_id: number;
 | 
				
			||||||
 | 
					  public explecity: string;
 | 
				
			||||||
 | 
					  public where_coloumn1_tbl_alias_name: string;
 | 
				
			||||||
 | 
					  public where_coloumn: string;
 | 
				
			||||||
 | 
					  public where_condition: string;
 | 
				
			||||||
 | 
					  public switch_control: string;
 | 
				
			||||||
 | 
					  public where_coloumn2_tbl_alias_name:string;
 | 
				
			||||||
 | 
					  public where_coloumn2:string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,29 @@
 | 
				
			|||||||
 | 
					export interface WireFrame {
 | 
				
			||||||
 | 
					  header: Header;
 | 
				
			||||||
 | 
					  line: Line;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					export interface Header {
 | 
				
			||||||
 | 
					section: Section[];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					export interface Line {
 | 
				
			||||||
 | 
					section: Section[];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					export interface Section {
 | 
				
			||||||
 | 
					id: number;
 | 
				
			||||||
 | 
					fieldName: string;
 | 
				
			||||||
 | 
					mapping: string;
 | 
				
			||||||
 | 
					dataType: string;
 | 
				
			||||||
 | 
					type_field: string;
 | 
				
			||||||
 | 
					section_num: number;
 | 
				
			||||||
 | 
					fields: Field[];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export interface Field {
 | 
				
			||||||
 | 
					id: number;
 | 
				
			||||||
 | 
					fieldName: string;
 | 
				
			||||||
 | 
					mapping: string;
 | 
				
			||||||
 | 
					dataType: string;
 | 
				
			||||||
 | 
					type_field: string;
 | 
				
			||||||
 | 
					section_num: number;
 | 
				
			||||||
 | 
					seq: number;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,114 @@
 | 
				
			|||||||
 | 
					export interface WidgetModel {
 | 
				
			||||||
 | 
					  name: string;
 | 
				
			||||||
 | 
					  identifier: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					export interface SubmenuItem {
 | 
				
			||||||
 | 
					  name: string;
 | 
				
			||||||
 | 
					  identifier: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export interface WidgetModel1 {
 | 
				
			||||||
 | 
					  name: string;
 | 
				
			||||||
 | 
					  submenu?: SubmenuItem[];
 | 
				
			||||||
 | 
					  showSubmenu?: boolean; // Optional property to control submenu visibility
 | 
				
			||||||
 | 
					  identifier: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export interface DashboardContentModel {
 | 
				
			||||||
 | 
					  cols: number;
 | 
				
			||||||
 | 
					  rows: number;
 | 
				
			||||||
 | 
					  y: number;
 | 
				
			||||||
 | 
					  x: number;
 | 
				
			||||||
 | 
					  chartid: number;
 | 
				
			||||||
 | 
					  component?: any;
 | 
				
			||||||
 | 
					  name: string;
 | 
				
			||||||
 | 
					  type?:string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export interface DashboardModel {
 | 
				
			||||||
 | 
					  id: number;
 | 
				
			||||||
 | 
					  username: string;
 | 
				
			||||||
 | 
					  dashboard: Array<DashboardContentModel>;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export interface DashboardContentModel2 {
 | 
				
			||||||
 | 
					  cols: number;
 | 
				
			||||||
 | 
					  rows: number;
 | 
				
			||||||
 | 
					  y: number;
 | 
				
			||||||
 | 
					  x: number;
 | 
				
			||||||
 | 
					  chartid: number;
 | 
				
			||||||
 | 
					  charttitle?: string;
 | 
				
			||||||
 | 
					  component?: any;
 | 
				
			||||||
 | 
					  name: string;
 | 
				
			||||||
 | 
					  type?: string;
 | 
				
			||||||
 | 
					  values?:Array<value>;
 | 
				
			||||||
 | 
					  imgoption?:Array<value>;
 | 
				
			||||||
 | 
					  keyValue?:string;
 | 
				
			||||||
 | 
					  fieldtext?:any;
 | 
				
			||||||
 | 
					  dropdown_type?:string;
 | 
				
			||||||
 | 
					  imageURL?:string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export interface DashboardModel2 {
 | 
				
			||||||
 | 
					  id: number;
 | 
				
			||||||
 | 
					  username: string;
 | 
				
			||||||
 | 
					  dashboard: Array<DashboardContentModel2>;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class value{
 | 
				
			||||||
 | 
					  label?:any="";
 | 
				
			||||||
 | 
					  value?:any="";
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					export class value1{
 | 
				
			||||||
 | 
					  label1?:any="";
 | 
				
			||||||
 | 
					  value1?:any="";
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export const WidgetsMock: WidgetModel[] = [
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					      name: 'Radar Chart',
 | 
				
			||||||
 | 
					      identifier: 'radar_chart'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					      name: 'Doughnut Chart',
 | 
				
			||||||
 | 
					      identifier: 'doughnut_chart'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					      name: 'Line Chart',
 | 
				
			||||||
 | 
					      identifier: 'line_chart'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					  name: 'Bar Chart',
 | 
				
			||||||
 | 
					  identifier: 'bar_chart'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					  name: 'Pie Chart',
 | 
				
			||||||
 | 
					  identifier: 'pie_chart'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					  name: 'Polar Area Chart',
 | 
				
			||||||
 | 
					  identifier: 'polar_area_chart'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					  name: 'Bubble Chart',
 | 
				
			||||||
 | 
					  identifier: 'bubble_chart'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					  name: 'Scatter Chart',
 | 
				
			||||||
 | 
					  identifier: 'scatter_chart'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					  name: 'Dynamic Chart',
 | 
				
			||||||
 | 
					  identifier: 'dynamic_chart'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					  name: 'Financial Chart',
 | 
				
			||||||
 | 
					  identifier: 'financial_chart'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					  name: 'To Do',
 | 
				
			||||||
 | 
					  identifier: 'to_do_chart'
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					export class Gitfile {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public  content	:String;
 | 
				
			||||||
 | 
						public  url	:String;
 | 
				
			||||||
 | 
						public  sha:String;
 | 
				
			||||||
 | 
						public  encoding:String;
 | 
				
			||||||
 | 
						public  size:String;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					export class RptBuilder{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public 	id:number;
 | 
				
			||||||
 | 
						public  name;
 | 
				
			||||||
 | 
						public  folder: string;
 | 
				
			||||||
 | 
						public  query: string;
 | 
				
			||||||
 | 
						public  date_param_flag:boolean;
 | 
				
			||||||
 | 
						public  adhoc_param_flag:boolean;
 | 
				
			||||||
 | 
						public  adhoc_param_string: string;
 | 
				
			||||||
 | 
						public  std_param_json: string;
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					export class Suregit {
 | 
				
			||||||
 | 
					  public  path	:String;
 | 
				
			||||||
 | 
						public  sha	:String;
 | 
				
			||||||
 | 
						public  url	:String;
 | 
				
			||||||
 | 
						public  type:Number;
 | 
				
			||||||
 | 
						public  mode:String;
 | 
				
			||||||
 | 
						public  size:String;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					export class Surename {
 | 
				
			||||||
 | 
					  public  id	:number;
 | 
				
			||||||
 | 
						public  message	:String;
 | 
				
			||||||
 | 
						public  name	:String;
 | 
				
			||||||
 | 
						public  timestamp:Number;
 | 
				
			||||||
 | 
						public  email:String;
 | 
				
			||||||
 | 
						public  username:String;
 | 
				
			||||||
 | 
					public sha:any;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					export class Surestar {
 | 
				
			||||||
 | 
					  public  id	:number;
 | 
				
			||||||
 | 
						public  email	:String;
 | 
				
			||||||
 | 
						public  watchers_count	:number;
 | 
				
			||||||
 | 
						public  forks_count:Number;
 | 
				
			||||||
 | 
						public  stars_count:number;
 | 
				
			||||||
 | 
						public  size:String;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,55 @@
 | 
				
			|||||||
 | 
					export interface WidgetModel {
 | 
				
			||||||
 | 
					  name: string;
 | 
				
			||||||
 | 
					  identifier: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export interface DashboardContentModel {
 | 
				
			||||||
 | 
					  cols: number;
 | 
				
			||||||
 | 
					  rows: number;
 | 
				
			||||||
 | 
					  y: number;
 | 
				
			||||||
 | 
					  x: number;
 | 
				
			||||||
 | 
					  chartid: number;
 | 
				
			||||||
 | 
					  component?: any;
 | 
				
			||||||
 | 
					  name: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export interface DashboardModel {
 | 
				
			||||||
 | 
					  id: number;
 | 
				
			||||||
 | 
					  username: string;
 | 
				
			||||||
 | 
					  dashboard: Array<DashboardContentModel>;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export const WidgetsMock: WidgetModel[] = [
 | 
				
			||||||
 | 
					  // {
 | 
				
			||||||
 | 
					  //     name: 'Text field',
 | 
				
			||||||
 | 
					  //     identifier: 'text_field'
 | 
				
			||||||
 | 
					  // },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    name: 'Text area',
 | 
				
			||||||
 | 
					    identifier: 'text_area'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    name: 'Table field',
 | 
				
			||||||
 | 
					    identifier: 'table_field'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  // {
 | 
				
			||||||
 | 
					  //   name: 'Background Color',
 | 
				
			||||||
 | 
					  //   identifier: 'background_color'
 | 
				
			||||||
 | 
					  // },
 | 
				
			||||||
 | 
					  // {
 | 
				
			||||||
 | 
					  //   name: 'Box field',
 | 
				
			||||||
 | 
					  //   identifier: 'box_field'
 | 
				
			||||||
 | 
					  // },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    name: 'Image field',
 | 
				
			||||||
 | 
					    identifier: 'img_field'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    name: 'Line field',
 | 
				
			||||||
 | 
					    identifier: 'line_field'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    name: 'QR code',
 | 
				
			||||||
 | 
					    identifier: 'qr_code'
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					import { Audit } from "../builder/Audit";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Bcf_Exception_Rule_Library extends Audit {
 | 
				
			||||||
 | 
					    id: number;
 | 
				
			||||||
 | 
					    tech_stack: string;
 | 
				
			||||||
 | 
					    object_type: string;
 | 
				
			||||||
 | 
					    sub_object_type: string;
 | 
				
			||||||
 | 
					    object_name_variable: string;
 | 
				
			||||||
 | 
					    object_name_dynamic_string: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,17 @@
 | 
				
			|||||||
 | 
					import { Audit } from "../builder/Audit";
 | 
				
			||||||
 | 
					import { Bcf_Extractor_Params } from "./Bcf_Extractor_Params";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Bcf_Extractor extends Audit {
 | 
				
			||||||
 | 
					     id: number;
 | 
				
			||||||
 | 
					     tech_stack: string;
 | 
				
			||||||
 | 
					     tech_stack_key: string;
 | 
				
			||||||
 | 
					     object_type: string;
 | 
				
			||||||
 | 
					     sub_object_type: string;
 | 
				
			||||||
 | 
					     form_type_name: string;
 | 
				
			||||||
 | 
					     std_wf_name: string;
 | 
				
			||||||
 | 
					     icon_file_name: string;
 | 
				
			||||||
 | 
					     sample_file_name: string;
 | 
				
			||||||
 | 
					     extractor_stage: string;
 | 
				
			||||||
 | 
					     rn_bcf_extractor_Params: Bcf_Extractor_Params[];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -0,0 +1,20 @@
 | 
				
			|||||||
 | 
					import { Audit } from "../builder/Audit";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Bcf_Extractor_Params extends Audit {
 | 
				
			||||||
 | 
					     id: number;
 | 
				
			||||||
 | 
					     tech_stack: string;
 | 
				
			||||||
 | 
					     object_type: string;
 | 
				
			||||||
 | 
					     sub_object_type: string;
 | 
				
			||||||
 | 
					     file_code: any;
 | 
				
			||||||
 | 
					     name_string: string;
 | 
				
			||||||
 | 
					     address_string: string;
 | 
				
			||||||
 | 
					     moved_address_string: string;
 | 
				
			||||||
 | 
					     reference_address_string: string;
 | 
				
			||||||
 | 
					     description: string;
 | 
				
			||||||
 | 
					     file_name_var: string;
 | 
				
			||||||
 | 
					     file_name_dynamic_string: string;
 | 
				
			||||||
 | 
					     is_extraction_enabled: boolean;
 | 
				
			||||||
 | 
					     is_creation_enabled: boolean;
 | 
				
			||||||
 | 
					     total_project_path_dynamic_string:string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -0,0 +1,16 @@
 | 
				
			|||||||
 | 
					import { Audit } from "../builder/Audit";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class Bcf_Rule_Library extends Audit {
 | 
				
			||||||
 | 
					    id: number;
 | 
				
			||||||
 | 
					    group_id: number;
 | 
				
			||||||
 | 
					    rule_name: string;
 | 
				
			||||||
 | 
					    tech_stack: string;
 | 
				
			||||||
 | 
					    object_type: string;
 | 
				
			||||||
 | 
					    sub_object_type: string;
 | 
				
			||||||
 | 
					    file_code: string;
 | 
				
			||||||
 | 
					    rule_type: string;
 | 
				
			||||||
 | 
					    identifier_start_string: string;
 | 
				
			||||||
 | 
					    identifier_end_string: string;
 | 
				
			||||||
 | 
					    replacement_string: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,13 @@
 | 
				
			|||||||
 | 
					import { BiDashLine } from './BiDashLine';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class BiDashHeader{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public header_id: number;
 | 
				
			||||||
 | 
					    public dashboard_name: string;
 | 
				
			||||||
 | 
					    public components: BiDashLine[];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,17 @@
 | 
				
			|||||||
 | 
					export class BiDashLine{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  public section_type: string;
 | 
				
			||||||
 | 
					  public widgets1: string;
 | 
				
			||||||
 | 
					  public widgets2: string;
 | 
				
			||||||
 | 
					  public widgets3: string;
 | 
				
			||||||
 | 
					  public widgets4: string;
 | 
				
			||||||
 | 
					  public widgets5: string;
 | 
				
			||||||
 | 
					  public widgets6: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					export class BiWidget {
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					public widget_name: string;
 | 
				
			||||||
 | 
					public widget_description: string;
 | 
				
			||||||
 | 
					  public chart_type: string;
 | 
				
			||||||
 | 
					  public sql_query:string;
 | 
				
			||||||
 | 
					  public label:string;
 | 
				
			||||||
 | 
					  public color_scheme:string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,37 @@
 | 
				
			|||||||
 | 
					//import { Audit } from "./Audit";
 | 
				
			||||||
 | 
					import { Audit } from "../builder/Audit";
 | 
				
			||||||
 | 
					export class DynamicForm extends Audit {
 | 
				
			||||||
 | 
					    public id: number;
 | 
				
			||||||
 | 
					    public form_id: number;
 | 
				
			||||||
 | 
					    public form_version: number;
 | 
				
			||||||
 | 
					    public comp1: string;
 | 
				
			||||||
 | 
					    public comp2: string;
 | 
				
			||||||
 | 
					    public comp3: string;
 | 
				
			||||||
 | 
					    public comp4: string;
 | 
				
			||||||
 | 
					    public comp5: string;
 | 
				
			||||||
 | 
					    public comp6: string;
 | 
				
			||||||
 | 
					    public comp7: string;
 | 
				
			||||||
 | 
					    public comp8: string;
 | 
				
			||||||
 | 
					    public comp9: string;
 | 
				
			||||||
 | 
					    public comp10: string;
 | 
				
			||||||
 | 
					    public comp11: string;
 | 
				
			||||||
 | 
					    public comp12: string;
 | 
				
			||||||
 | 
					    public comp13: string;
 | 
				
			||||||
 | 
					    public comp14: string;
 | 
				
			||||||
 | 
					    public comp15: string;
 | 
				
			||||||
 | 
					    public comp16: string;
 | 
				
			||||||
 | 
					    public comp17: string;
 | 
				
			||||||
 | 
					    public comp18: string;
 | 
				
			||||||
 | 
					    public comp19: string;
 | 
				
			||||||
 | 
					    public comp20: string;
 | 
				
			||||||
 | 
					    public comp21: string;
 | 
				
			||||||
 | 
					    public comp22: string;
 | 
				
			||||||
 | 
					    public comp23: string;
 | 
				
			||||||
 | 
					    public comp24: string;
 | 
				
			||||||
 | 
					    public comp25: string;
 | 
				
			||||||
 | 
					    public comp_l26: string;
 | 
				
			||||||
 | 
					    public comp_l27: string;
 | 
				
			||||||
 | 
					    public comp_l28: string;
 | 
				
			||||||
 | 
					    public comp_l29: string;
 | 
				
			||||||
 | 
					    public comp_l30: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,47 @@
 | 
				
			|||||||
 | 
					import { Audit } from "../builder/Audit";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class ExtensionField extends Audit {
 | 
				
			||||||
 | 
					    public id: number;
 | 
				
			||||||
 | 
					    public field_name: string;
 | 
				
			||||||
 | 
					    public mapping: string;
 | 
				
			||||||
 | 
					    public data_type: string;
 | 
				
			||||||
 | 
					    public form_code: string;
 | 
				
			||||||
 | 
					    public type: string;
 | 
				
			||||||
 | 
					    public isActive: boolean;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /* public mandatory: string;
 | 
				
			||||||
 | 
					    public hidden: string;
 | 
				
			||||||
 | 
					    public readonly: string;
 | 
				
			||||||
 | 
					    public dependent: string;
 | 
				
			||||||
 | 
					    public dependent_on: string;
 | 
				
			||||||
 | 
					    public dependent_sp: string;
 | 
				
			||||||
 | 
					    public dependent_sp_param: string;
 | 
				
			||||||
 | 
					    public validation_1: string;
 | 
				
			||||||
 | 
					    public val_type: string;
 | 
				
			||||||
 | 
					    public val_sp: string;
 | 
				
			||||||
 | 
					    public val_sp_param: string;
 | 
				
			||||||
 | 
					    public sequence: string;
 | 
				
			||||||
 | 
					    public seq_name: string;
 | 
				
			||||||
 | 
					    public seq_sp: string;
 | 
				
			||||||
 | 
					    public seq_sp_param: string;
 | 
				
			||||||
 | 
					    public default1: string;
 | 
				
			||||||
 | 
					    public default_type: string;
 | 
				
			||||||
 | 
					    public default_value: string;
 | 
				
			||||||
 | 
					    public default_sp: string;
 | 
				
			||||||
 | 
					    public default_sp_param: string;
 | 
				
			||||||
 | 
					    public calculated_field: string;
 | 
				
			||||||
 | 
					    public cal_sp: string;
 | 
				
			||||||
 | 
					    public cal_sp_param: string;
 | 
				
			||||||
 | 
					    public add_to_grid: string;
 | 
				
			||||||
 | 
					    public attr1: string;
 | 
				
			||||||
 | 
					    public attr2: string;
 | 
				
			||||||
 | 
					    public attr3: string;
 | 
				
			||||||
 | 
					    public drop_value: string;
 | 
				
			||||||
 | 
					    public dropdown: string;
 | 
				
			||||||
 | 
					    public sp_name: string;
 | 
				
			||||||
 | 
					    public ext_dd_id: string;
 | 
				
			||||||
 | 
					    public sp_name_forautocomplete: string;
 | 
				
			||||||
 | 
					    public ext_dependent_id: string;
 | 
				
			||||||
 | 
					    public radio: string;
 | 
				
			||||||
 | 
					    public radio_option: string; */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					export interface Mapping {
 | 
				
			||||||
 | 
					  label: string;
 | 
				
			||||||
 | 
					  value: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					import { Audit } from "../builder/Audit";
 | 
				
			||||||
 | 
					export class Rn_Forms_Component_Setup extends Audit {
 | 
				
			||||||
 | 
					    public component_id: number;
 | 
				
			||||||
 | 
					    public label: string;
 | 
				
			||||||
 | 
					    public type: string;
 | 
				
			||||||
 | 
					    public mapping: string;
 | 
				
			||||||
 | 
					    public mandatory: string;
 | 
				
			||||||
 | 
					    public readonly: string;
 | 
				
			||||||
 | 
					    public drop_values: string;
 | 
				
			||||||
 | 
					    public sp: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					import { Rn_Forms_Component_Setup } from "./Rn_Forms_Component_Setup";
 | 
				
			||||||
 | 
					import { Audit } from "../builder/Audit";
 | 
				
			||||||
 | 
					export class Rn_Forms_Setup extends Audit {
 | 
				
			||||||
 | 
					  public form_id: number;
 | 
				
			||||||
 | 
					  public form_name: string;
 | 
				
			||||||
 | 
					  public form_desc: string;
 | 
				
			||||||
 | 
					  public related_to: string;
 | 
				
			||||||
 | 
					  public page_event: string;
 | 
				
			||||||
 | 
					  public button_caption: string;
 | 
				
			||||||
 | 
					  public components: Rn_Forms_Component_Setup[];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,20 @@
 | 
				
			|||||||
 | 
					export class RuleCopy {
 | 
				
			||||||
 | 
					  public from_tech_stack: string;
 | 
				
			||||||
 | 
					public from_object_type: string;
 | 
				
			||||||
 | 
					public from_sub_object_type: string;
 | 
				
			||||||
 | 
					public to_tech_stack: string;
 | 
				
			||||||
 | 
					public to_object_type: string;
 | 
				
			||||||
 | 
					public to_sub_object_type: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export interface Rule {
 | 
				
			||||||
 | 
					  tech_stack: string;
 | 
				
			||||||
 | 
					  object_type: string;
 | 
				
			||||||
 | 
					  sub_object_type: string;
 | 
				
			||||||
 | 
					  version: string;
 | 
				
			||||||
 | 
					  replacement_string: string;
 | 
				
			||||||
 | 
					  keyword: string;
 | 
				
			||||||
 | 
					  priority: number;
 | 
				
			||||||
 | 
					  service: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class student  {
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public wf_id:number;
 | 
				
			||||||
 | 
					  public current_json: string;
 | 
				
			||||||
 | 
					  public status: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					export interface TableList {
 | 
				
			||||||
 | 
					  // id: number;
 | 
				
			||||||
 | 
					 table_name: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					export class ValidationError {
 | 
				
			||||||
 | 
					  field: any;
 | 
				
			||||||
 | 
					  message: any;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					export class ApiRegisteryLine {
 | 
				
			||||||
 | 
					    public id: number;
 | 
				
			||||||
 | 
					    public url: string;
 | 
				
			||||||
 | 
					    public method: string;
 | 
				
			||||||
 | 
					    public header_id: number;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					export class book  {
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public booktype: string;
 | 
				
			||||||
 | 
					  public bookname: string;
 | 
				
			||||||
 | 
					  public price: number;
 | 
				
			||||||
 | 
					  public writer: string;
 | 
				
			||||||
 | 
					  public code:number;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					export class Department {
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public department_code: string;
 | 
				
			||||||
 | 
					  public description: string;
 | 
				
			||||||
 | 
					  public active: string;
 | 
				
			||||||
 | 
					 public created_by:string;
 | 
				
			||||||
 | 
					 public created_on:string;
 | 
				
			||||||
 | 
					 public updated_by:string;
 | 
				
			||||||
 | 
					 public updated_on:string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					export class HealthCheckup {
 | 
				
			||||||
 | 
					    public id: number;
 | 
				
			||||||
 | 
					    public ip: string;
 | 
				
			||||||
 | 
					    public port: number;
 | 
				
			||||||
 | 
					    public serviceName: string;
 | 
				
			||||||
 | 
					    public createProject: boolean;
 | 
				
			||||||
 | 
					    public buildProject: boolean;
 | 
				
			||||||
 | 
					    public createDeployment: boolean;
 | 
				
			||||||
 | 
					    public deployApp: boolean;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					export class College {
 | 
				
			||||||
 | 
					  public studentid: number;
 | 
				
			||||||
 | 
					  public wf_instance_id:number;
 | 
				
			||||||
 | 
					  public studentname: string;
 | 
				
			||||||
 | 
					  public department: string;
 | 
				
			||||||
 | 
					  public joiningDate: string;
 | 
				
			||||||
 | 
					  public phone: number;
 | 
				
			||||||
 | 
					 public emailId:string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					export interface TableList {
 | 
				
			||||||
 | 
					  // id: number;
 | 
				
			||||||
 | 
					 table_name: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					import {book} from '../../models/fnd/book';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class university  {
 | 
				
			||||||
 | 
					  public id: number;
 | 
				
			||||||
 | 
					  public name: string;
 | 
				
			||||||
 | 
					  public email: string;
 | 
				
			||||||
 | 
					  public subject: string;
 | 
				
			||||||
 | 
					  public phone: number;
 | 
				
			||||||
 | 
					  public books: book[];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,45 @@
 | 
				
			|||||||
 | 
					.clr-input {
 | 
				
			||||||
 | 
					  color: #212529;
 | 
				
			||||||
 | 
					  padding: 0.75rem 0.75rem;
 | 
				
			||||||
 | 
					  margin-top: 10px;
 | 
				
			||||||
 | 
					  margin-bottom: 10px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					input[type=text], [type=password], [type=number], [type=email], [type=date], textarea {
 | 
				
			||||||
 | 
					  width: 80%;
 | 
				
			||||||
 | 
					  padding: 15px 15px;
 | 
				
			||||||
 | 
					  background-color: rgb(255, 255, 255);
 | 
				
			||||||
 | 
					  display: inline-block;
 | 
				
			||||||
 | 
					  border: 1px solid #ccc;
 | 
				
			||||||
 | 
					  border-radius: 4px;
 | 
				
			||||||
 | 
					  box-sizing: border-box;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.eye {
 | 
				
			||||||
 | 
					  position: absolute;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#hide1 {
 | 
				
			||||||
 | 
					  display: none;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.container {
 | 
				
			||||||
 | 
					  align-content: center;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.center {
 | 
				
			||||||
 | 
					  width: auto;
 | 
				
			||||||
 | 
					  margin: 0 auto;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.required-field, .error_mess {
 | 
				
			||||||
 | 
					  color: red;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					select {
 | 
				
			||||||
 | 
					  margin: 15px 0px;
 | 
				
			||||||
 | 
					  width: 80%;
 | 
				
			||||||
 | 
					  padding: 5px 5px;
 | 
				
			||||||
 | 
					  border: 1px solid #ccc;
 | 
				
			||||||
 | 
					  border-radius: 4px;
 | 
				
			||||||
 | 
					}/*# sourceMappingURL=about-work.component.css.map */
 | 
				
			||||||
@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					{"version":3,"sources":["about-work.component.scss","about-work.component.css"],"names":[],"mappings":"AAAA;EACE,cAAA;EAGA,wBAAA;EACA,gBAAA;EACA,mBAAA;ACDF;;ADGA;EACE,UAAA;EACA,kBAAA;EACA,oCAAA;EAEA,qBAAA;EACA,sBAAA;EACA,kBAAA;EACA,sBAAA;ACDF;;ADGA;EACE,kBAAA;ACAF;;ADGA;EACE,aAAA;ACAF;;ADGA;EACE,qBAAA;ACAF;;ADGA;EACE,WAAA;EACA,cAAA;ACAF;;ADGA;EACE,UAAA;ACAF;;ADGA;EACE,gBAAA;EACA,UAAA;EACA,gBAAA;EACA,sBAAA;EACA,kBAAA;ACAF","file":"about-work.component.css"}
 | 
				
			||||||
@ -0,0 +1,261 @@
 | 
				
			|||||||
 | 
					<!-- <div *ngIf="data1 else showThis"> -->
 | 
				
			||||||
 | 
					  <!-- <div *ngIf="editMode === 'data1';then basic_property"> -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <div class="container center">
 | 
				
			||||||
 | 
					      <h2 class="text-center"><b>Welcome to <strong>cloudnsure!</strong></b></h2>
 | 
				
			||||||
 | 
					      <h5 *ngIf="!companyForm" class="text-center" style="margin-top: 10px;">Tell Us More About You <img src="../../../../assets/images/icon/handshakeicon.png" ></h5>
 | 
				
			||||||
 | 
					      <h5 *ngIf="companyForm" class="text-center" style="margin-top: 10px;">Tell Us About Your Work!</h5>
 | 
				
			||||||
 | 
					      <!-- <h5 class="text-center">You're signing up as <strong style="font-size: 20px;">{{ email }}</strong></h5> -->
 | 
				
			||||||
 | 
					      <div class="display_msg">
 | 
				
			||||||
 | 
					      <form [formGroup]="custentryForm" class="form" style="text-align: center;" *ngIf="!companyForm">
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>First Name</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					          <input class="form__field" type="text" formControlName="first_name"  placeholder="First Name" >
 | 
				
			||||||
 | 
					          <div *ngIf="custsubmitted && custentryForm.controls.first_name.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="custsubmitted && custentryForm.controls.first_name.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>Last Name</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					          <input class="form__field" type="text" id="name" formControlName="last_name"  placeholder="Last Name" >
 | 
				
			||||||
 | 
					          <div *ngIf="custsubmitted && custentryForm.controls.last_name.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="custsubmitted && custentryForm.controls.last_name.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>Mobile</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					          <input formControlName="mob_no" class="form__field" type="number"  placeholder="Mobile Number"  ng2TelInput/>
 | 
				
			||||||
 | 
					          <div *ngIf="custsubmitted && custentryForm.controls.mob_no.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="custsubmitted && custentryForm.controls.mob_no.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					            <div *ngIf="custsubmitted && custentryForm.controls.mob_no.errors.minlength" class="error_mess">*Number must be 10 digit.</div>
 | 
				
			||||||
 | 
					            <div *ngIf="custsubmitted && custentryForm.controls.mob_no.errors.pattern" class="error_mess">*Invalid mobile number</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>Date Of Birth</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					          <input class="form__field"  type="date" formControlName="date_of_birth" >
 | 
				
			||||||
 | 
					          <div *ngIf="custsubmitted && custentryForm.controls.date_of_birth.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="custsubmitted && custentryForm.controls.date_of_birth.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>Gender</strong><span class="required-field">*</span></label><br> -->
 | 
				
			||||||
 | 
					          <select formControlName="gender" class="form__field">
 | 
				
			||||||
 | 
					              <option [value]="null">Choose Gender</option>
 | 
				
			||||||
 | 
					              <option>Male</option>
 | 
				
			||||||
 | 
					              <option>Female</option>
 | 
				
			||||||
 | 
					              <option>Other</option>
 | 
				
			||||||
 | 
					          </select>
 | 
				
			||||||
 | 
					          <div *ngIf="custsubmitted && custentryForm.controls.gender.errors" class="error_mess">
 | 
				
			||||||
 | 
					              <div *ngIf="custsubmitted && custentryForm.controls.gender.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>Password</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					         <input [type]="newpHide ? 'password': 'text'" class="form__field" placeholder="Password" formControlName="new_password" minlenght="6" maxlength="40" style="width: 89%;" [autocomplete]="true">
 | 
				
			||||||
 | 
					            <clr-icon [attr.shape]="newIcon" (click)="newShapeChanger()"></clr-icon>
 | 
				
			||||||
 | 
					          <div *ngIf="custsubmitted && custentryForm.controls.new_password.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="custsubmitted && custentryForm.controls.new_password.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					            <div *ngIf="custsubmitted && custentryForm.controls.new_password.errors.minlength" class="error_mess">*Password must be 6 characters or longer.</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>Re-enter Password</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					           <input type="password" class="form__field" formControlName="confirm_password" placeholder="Re-enter Password">
 | 
				
			||||||
 | 
					          <div *ngIf="custsubmitted && custentryForm.controls.confirm_password.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="custsubmitted && custentryForm.controls.confirm_password.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					            <div *ngIf="custentryForm.controls.confirm_password.errors.confirmedValidator" class="error_mess">* Password and Confirm Password must be match.</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center text-center">
 | 
				
			||||||
 | 
					          <button type="submit"  class="btn btn--primary uppercase" (click)="oncustSubmit()">Submit</button>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					      </form>
 | 
				
			||||||
 | 
					         <p *ngIf="!companyForm"> Wrong account? <a routerLink="/login">Log in</a> instead.</p>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div class="display_msg">
 | 
				
			||||||
 | 
					      <form [formGroup]="entryForm" class="form" style="text-align: center;" *ngIf="companyForm" >
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					        <!-- <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>Name</strong><span class="required-field">*</span></label><br/>
 | 
				
			||||||
 | 
					          <input class="clr-input" type="text" id="name" formControlName="name"  placeholder="Enter Name" >
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.name.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.name.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div> -->
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>Company Name</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					          <input class="form__field" type="text" id="name" formControlName="companyName"  placeholder="Company Name" >
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.companyName.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.companyName.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>Workspace</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					          <input class="form__field" type="text" placeholder="Workspace" formControlName="workspace" >
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.workspace.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.workspace.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>GST Number</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					          <input class="form__field" type="text" placeholder="GST Number" formControlName="gstNumber"
 | 
				
			||||||
 | 
					          [(ngModel)]="entryForm.value.gstNumber" (ngModelChange)="entryForm.value.gstNumber = $event?.toUpperCase()">
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.gstNumber.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.gstNumber.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					        <!-- <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>Password</strong><span class="required-field">*</span></label><br/>
 | 
				
			||||||
 | 
					          <input class="clr-input" type="password" id="password" formControlName="password">
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.password.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.password.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.password.errors.minlength" class="error_mess">*Password must be 8 characters or longer.</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br/>
 | 
				
			||||||
 | 
					        <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>Re-enter Password</strong><span class="required-field">*</span></label><br/>
 | 
				
			||||||
 | 
					          <input class="clr-input" type="password" id="confirm_password" formControlName="confirm_password">
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.confirm_password.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.confirm_password.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					            <div *ngIf="entryForm.controls.confirm_password.errors.confirmedValidator" class="error_mess">* Password and Confirm Password must be match.</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div> -->
 | 
				
			||||||
 | 
					        <!-- <br>
 | 
				
			||||||
 | 
					        <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>Mobile</strong><span class="required-field">*</span></label><br/>
 | 
				
			||||||
 | 
					          <input formControlName="mobile" class="clr-input" type="number"  placeholder="Enter Mobile No"  ng2TelInput/>
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.mobile.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.mobile.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.mobile.errors.minlength" class="error_mess">*Number must be 10 digit.</div>
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.mobile.errors.pattern" class="error_mess">*Invalid mobile number</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div> -->
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					        <!-- <br>
 | 
				
			||||||
 | 
					        <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>Email</strong><span class="required-field">*</span></label><br/>
 | 
				
			||||||
 | 
					          <input class="clr-input" type="text" id="email" name="email" formControlName="email"  placeholder="Enter Email"  required pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$">
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.email.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.email.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.email.errors.pattern" class="error_mess">*Email must be a valid email address</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div> -->
 | 
				
			||||||
 | 
					  <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="controllerName"><strong>Pancard</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					          <input class="form__field" type="text" placeholder="Pancard Number" formControlName="pancard"  [(ngModel)]="entryForm.value.pancard" (ngModelChange)="entryForm.value.pancard = $event?.toUpperCase()">
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.pancard.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.pancard.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="country"><strong>Country</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					          <input class="form__field" type="text" id="country" formControlName="country"  placeholder="Country Name" >
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.country.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.country.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="state"><strong>State/Province</strong><span class="required-field">*</span></label><br/> -->
 | 
				
			||||||
 | 
					          <input class="form__field" type="text" id="state" formControlName="state"  placeholder="State/Province Name" >
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.state.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.state.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="city"><strong>City</strong></label><br/> -->
 | 
				
			||||||
 | 
					          <input class="form__field" type="text" id="city" formControlName="city"  placeholder="City Name" >
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.city.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.city.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="street_address"><strong>Street Address</strong></label><br/> -->
 | 
				
			||||||
 | 
					          <textarea col="10" row="2" id="street_address"  class="form__field" formControlName="street_address" placeholder="Address" [autocomplete]="true"></textarea>
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.street_address.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.street_address.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center">
 | 
				
			||||||
 | 
					          <!-- <label for="street_address2"><strong>Street Address 2</strong></label><br/> -->
 | 
				
			||||||
 | 
					          <textarea col="10" row="2" id="street_address2"  class="form__field" formControlName="street_address2" placeholder="Address 2" [autocomplete]="true"></textarea>
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.street_address2.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.street_address2.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					        <!-- <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>Working</strong><span class="required-field">*</span></label><br/>
 | 
				
			||||||
 | 
					          <input class="clr-input" type="text" placeholder="Enter Working" formControlName="working" >
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && entryForm.controls.working.errors" class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && entryForm.controls.working.errors.required" class="error_mess">*This field is Required</div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br> -->
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center text-center">
 | 
				
			||||||
 | 
					          <button type="submit"  class="btn btn--primary uppercase" (click)="onSubmit()" >continue</button>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					      </form>
 | 
				
			||||||
 | 
					      <p *ngIf="companyForm"> Wrong account? <a routerLink="/login">Log in</a> instead.</p>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					      <!-- <h4>Wrong account? <a href="">Log in</a> instead.</h4> -->
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  <!-- </div> -->
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  <!-- <div *ngIf="data1==false">
 | 
				
			||||||
 | 
					    <h2>error page</h2>
 | 
				
			||||||
 | 
					  </div> -->
 | 
				
			||||||
 | 
					  <!-- <ng-template #showThis>
 | 
				
			||||||
 | 
					    <h2 style="text-align: center; color: red;"><strong><b>This is error page</b></strong></h2> -->
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  <!-- <a routerLink="/error-page"></a> -->
 | 
				
			||||||
 | 
					  <!-- <a [routerLink]="['/error-page']"> -->
 | 
				
			||||||
 | 
					  <!-- link to user component -->
 | 
				
			||||||
 | 
					  <!-- </a> -->
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  <!-- <button (click)="back()"></button> -->
 | 
				
			||||||
 | 
					  <!--
 | 
				
			||||||
 | 
					  </ng-template> -->
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  <!-- <ng-template #showThis>
 | 
				
			||||||
 | 
					    <h2 style="text-align: center; color: red;"><strong><b>This is error page</b></strong></h2>
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  </ng-template> -->
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  <!-- <ng-template #basic_property>
 | 
				
			||||||
 | 
					    hjshfj
 | 
				
			||||||
 | 
					  </ng-template> -->
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
@ -0,0 +1,122 @@
 | 
				
			|||||||
 | 
					// .clr-input {
 | 
				
			||||||
 | 
					//   color: #212529;
 | 
				
			||||||
 | 
					//   //  border: 1px solid #ced4da;
 | 
				
			||||||
 | 
					//   //   border-radius: 0.25rem;
 | 
				
			||||||
 | 
					//   padding: 0.75rem 0.75rem;
 | 
				
			||||||
 | 
					//   margin-top: 10px;
 | 
				
			||||||
 | 
					//   margin-bottom: 10px;
 | 
				
			||||||
 | 
					// }
 | 
				
			||||||
 | 
					// input[type=text],[type=password],[type=number],[type=email],[type=date],textarea {
 | 
				
			||||||
 | 
					//   width: 80%;
 | 
				
			||||||
 | 
					//   padding: 15px 15px;
 | 
				
			||||||
 | 
					//   background-color:rgb(255, 255, 255);
 | 
				
			||||||
 | 
					//  // margin: 8px 0;
 | 
				
			||||||
 | 
					//   display: inline-block;
 | 
				
			||||||
 | 
					//   border: 1px solid #ccc;
 | 
				
			||||||
 | 
					//   border-radius: 4px;
 | 
				
			||||||
 | 
					//   box-sizing: border-box;
 | 
				
			||||||
 | 
					// }
 | 
				
			||||||
 | 
					// .eye {
 | 
				
			||||||
 | 
					//   position: absolute;
 | 
				
			||||||
 | 
					// }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// #hide1 {
 | 
				
			||||||
 | 
					//   display: none;
 | 
				
			||||||
 | 
					// }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// .container {
 | 
				
			||||||
 | 
					//   align-content: center;
 | 
				
			||||||
 | 
					// }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// .center {
 | 
				
			||||||
 | 
					//   width: auto;
 | 
				
			||||||
 | 
					//   margin: 0 auto;
 | 
				
			||||||
 | 
					// }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.required-field,.error_mess{
 | 
				
			||||||
 | 
						color:indianred;
 | 
				
			||||||
 | 
						 font-weight: bold;
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					   // select{
 | 
				
			||||||
 | 
					   //   margin:15px 0px;
 | 
				
			||||||
 | 
					   //   width: 80%;
 | 
				
			||||||
 | 
					   //   padding: 5px 5px;
 | 
				
			||||||
 | 
					   //   border: 1px solid #ccc;
 | 
				
			||||||
 | 
					   //   border-radius: 4px;
 | 
				
			||||||
 | 
					   // }
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   $background: #f5f6fa;
 | 
				
			||||||
 | 
					   $text: #9c9c9c;
 | 
				
			||||||
 | 
					   $input-bg-color: #fff;
 | 
				
			||||||
 | 
					   $input-text-color: #a3a3a3;
 | 
				
			||||||
 | 
					   $button-bg-color: #7f8ff4;
 | 
				
			||||||
 | 
					   $button-text-color: #fff;
 | 
				
			||||||
 | 
					   $google-button-bg-color: #7f8ff4;
 | 
				
			||||||
 | 
					   $linkedin-button-bg-color: #4b76eb;
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   :root {
 | 
				
			||||||
 | 
						   background: $background;
 | 
				
			||||||
 | 
						   color: $text;
 | 
				
			||||||
 | 
						   font: 1rem "PT Sans", sans-serif;
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   //** helper
 | 
				
			||||||
 | 
					   .display_msg {
 | 
				
			||||||
 | 
						   display: flex;
 | 
				
			||||||
 | 
						   flex-direction: column;
 | 
				
			||||||
 | 
						   align-items: center;
 | 
				
			||||||
 | 
						   justify-content: center;
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   .form {
 | 
				
			||||||
 | 
							&__field {
 | 
				
			||||||
 | 
						 width: 360px;
 | 
				
			||||||
 | 
						 padding: 7px 9px;
 | 
				
			||||||
 | 
						margin: 0 12px;
 | 
				
			||||||
 | 
						background-color:rgb(255, 255, 255);
 | 
				
			||||||
 | 
						 display: inline-block;
 | 
				
			||||||
 | 
						 border: 1px solid #ccc;
 | 
				
			||||||
 | 
						 border-radius: 4px;
 | 
				
			||||||
 | 
						 box-sizing: border-box;
 | 
				
			||||||
 | 
						   }
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					   .btn {
 | 
				
			||||||
 | 
						   display: inline-block;
 | 
				
			||||||
 | 
						   background: transparent;
 | 
				
			||||||
 | 
						   color: inherit;
 | 
				
			||||||
 | 
						   font: inherit;
 | 
				
			||||||
 | 
						   border: 0;
 | 
				
			||||||
 | 
						   outline: 0;
 | 
				
			||||||
 | 
						   padding: 0;
 | 
				
			||||||
 | 
						   transition: all 200ms ease-in;
 | 
				
			||||||
 | 
						   cursor: pointer;
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
						   &--primary {
 | 
				
			||||||
 | 
							   background: $button-bg-color;
 | 
				
			||||||
 | 
							   color: $button-text-color;
 | 
				
			||||||
 | 
							   box-shadow: 0 0 10px 2px rgba(0, 0, 0, .1);
 | 
				
			||||||
 | 
							   border-radius: 2px;
 | 
				
			||||||
 | 
							   width: 100%;
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
							   &:hover {
 | 
				
			||||||
 | 
								   background: darken($button-bg-color, 4%);
 | 
				
			||||||
 | 
							   }
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
							   &:active {
 | 
				
			||||||
 | 
								   background: $button-bg-color;
 | 
				
			||||||
 | 
								   box-shadow: inset 0 0 10px 2px rgba(0, 0, 0, .2);
 | 
				
			||||||
 | 
							   }
 | 
				
			||||||
 | 
						   }
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					   // form {
 | 
				
			||||||
 | 
					   //   margin-left: 8%;
 | 
				
			||||||
 | 
					   // }
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
@ -0,0 +1,25 @@
 | 
				
			|||||||
 | 
					import { ComponentFixture, TestBed } from '@angular/core/testing';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { AboutWorkComponent } from './about-work.component';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					describe('AboutWorkComponent', () => {
 | 
				
			||||||
 | 
					  let component: AboutWorkComponent;
 | 
				
			||||||
 | 
					  let fixture: ComponentFixture<AboutWorkComponent>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(async () => {
 | 
				
			||||||
 | 
					    await TestBed.configureTestingModule({
 | 
				
			||||||
 | 
					      declarations: [ AboutWorkComponent ]
 | 
				
			||||||
 | 
					    })
 | 
				
			||||||
 | 
					    .compileComponents();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(() => {
 | 
				
			||||||
 | 
					    fixture = TestBed.createComponent(AboutWorkComponent);
 | 
				
			||||||
 | 
					    component = fixture.componentInstance;
 | 
				
			||||||
 | 
					    fixture.detectChanges();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it('should create', () => {
 | 
				
			||||||
 | 
					    expect(component).toBeTruthy();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
@ -0,0 +1,301 @@
 | 
				
			|||||||
 | 
					import {Component, OnInit} from '@angular/core';
 | 
				
			||||||
 | 
					import {AbstractControl, FormBuilder, FormControl, FormGroup, ValidationErrors, Validators} from '@angular/forms';
 | 
				
			||||||
 | 
					import {ActivatedRoute, Router} from '@angular/router';
 | 
				
			||||||
 | 
					import { UserProfileService } from 'src/app/services/admin/user-profile.service';
 | 
				
			||||||
 | 
					import { UserRegistrationService } from 'src/app/services/admin/user-registration.service';
 | 
				
			||||||
 | 
					import { environment } from 'src/environments/environment';
 | 
				
			||||||
 | 
					import { CustomerService } from './customer.service';
 | 
				
			||||||
 | 
					import { ToastrService } from 'ngx-toastr';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Component({
 | 
				
			||||||
 | 
					  selector: 'app-about-work',
 | 
				
			||||||
 | 
					  templateUrl: './about-work.component.html',
 | 
				
			||||||
 | 
					  styleUrls: ['./about-work.component.scss']
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export class AboutWorkComponent implements OnInit {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // LoginUrl = environment.portalurl;
 | 
				
			||||||
 | 
					  public entryForm: FormGroup;
 | 
				
			||||||
 | 
					  public custentryForm: FormGroup; // user
 | 
				
			||||||
 | 
					  public customerentryForm: FormGroup;
 | 
				
			||||||
 | 
					  aboutdata;
 | 
				
			||||||
 | 
					  id: number;
 | 
				
			||||||
 | 
					  checknumberId: number;
 | 
				
			||||||
 | 
					  data1: boolean;
 | 
				
			||||||
 | 
					  name:string;
 | 
				
			||||||
 | 
					  email: string;
 | 
				
			||||||
 | 
					  submitted = false;
 | 
				
			||||||
 | 
					  custsubmitted = false;
 | 
				
			||||||
 | 
					  constructor(
 | 
				
			||||||
 | 
					    private router: Router,
 | 
				
			||||||
 | 
					    private route: ActivatedRoute,
 | 
				
			||||||
 | 
					    private userRegistration: UserRegistrationService,
 | 
				
			||||||
 | 
					    private _fb: FormBuilder,
 | 
				
			||||||
 | 
					    private userprofile: UserProfileService,
 | 
				
			||||||
 | 
					    private customerservice: CustomerService,
 | 
				
			||||||
 | 
					    private toastr: ToastrService
 | 
				
			||||||
 | 
					  ) {
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  companyid = 1;
 | 
				
			||||||
 | 
					  ngOnInit(): void {
 | 
				
			||||||
 | 
					    this.route.queryParams.subscribe(params => {
 | 
				
			||||||
 | 
					      this.email = params['email'];
 | 
				
			||||||
 | 
					      console.log(this.email)
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					    this.id = this.route.snapshot.params['id'];
 | 
				
			||||||
 | 
					    this.checknumberId = this.route.snapshot.params['checknumberId'];
 | 
				
			||||||
 | 
					    this.name = this.userRegistration.getStoredName();
 | 
				
			||||||
 | 
					    console.log(this.id, this.checknumberId);
 | 
				
			||||||
 | 
					    this.userRegistration.removeStoredName();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // this.data1 = this.route.snapshot.data['data1'];
 | 
				
			||||||
 | 
					    // if (this.id >= 0) {
 | 
				
			||||||
 | 
					    //   this.onCheck();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // }
 | 
				
			||||||
 | 
					    // else {
 | 
				
			||||||
 | 
					    //   this.router.navigate(['../about-work']);
 | 
				
			||||||
 | 
					    // }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    this.onCheck();
 | 
				
			||||||
 | 
					    // this.email = this.userRegistration.getStoredEmail();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    this.custentryForm = this._fb.group({
 | 
				
			||||||
 | 
					      first_name: [null, [Validators.required]],
 | 
				
			||||||
 | 
					      last_name:[null,  [Validators.required]],
 | 
				
			||||||
 | 
					      mob_no:[null,[Validators.required,Validators.pattern('^[0-9]{10}$')]],
 | 
				
			||||||
 | 
					      email:[this.email],
 | 
				
			||||||
 | 
					      usrGrpId:[41],
 | 
				
			||||||
 | 
					      new_password: [null, [Validators.required,Validators.minLength(6),Validators.maxLength(40)]],
 | 
				
			||||||
 | 
					      confirm_password: [null, [Validators.required]],
 | 
				
			||||||
 | 
					      account_id:[this.companyid],
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      date_of_birth:[null, [Validators.required]],
 | 
				
			||||||
 | 
					      gender:[null,Validators.required]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }, {
 | 
				
			||||||
 | 
					       validator: ConfirmedValidator('new_password', 'confirm_password')
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    this.entryForm = this._fb.group({
 | 
				
			||||||
 | 
					      companyName:[null,  [Validators.required]],
 | 
				
			||||||
 | 
					      pancard:[null,[Validators.required]],
 | 
				
			||||||
 | 
					      workspace:[null,[Validators.required]],
 | 
				
			||||||
 | 
					      email: [this.email,[Validators.required,Validators.email]],
 | 
				
			||||||
 | 
					      gstNumber:[null,[Validators.required]],
 | 
				
			||||||
 | 
					      mobile: [this.custentryForm.value.mob_no, [Validators.pattern('^[0-9]{10}$')]],
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      country:[null,[Validators.required]],
 | 
				
			||||||
 | 
					      state:[null,[Validators.required]],
 | 
				
			||||||
 | 
					      city:[null],
 | 
				
			||||||
 | 
					      street_address:[null],
 | 
				
			||||||
 | 
					      street_address2:[null],
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }, {
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    this.customerentryForm = this._fb.group({
 | 
				
			||||||
 | 
					      first_name: [null],
 | 
				
			||||||
 | 
					      last_name:[null],
 | 
				
			||||||
 | 
					      date_of_birth:[null],
 | 
				
			||||||
 | 
					      gender:[null],
 | 
				
			||||||
 | 
					      companyId:[null],
 | 
				
			||||||
 | 
					      time_zone:[null,],
 | 
				
			||||||
 | 
					      gst_state:[null],
 | 
				
			||||||
 | 
					      email:[null],
 | 
				
			||||||
 | 
					      entity_name:[this.companyid],
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  companyForm:boolean = false;
 | 
				
			||||||
 | 
					  oncustSubmit(){
 | 
				
			||||||
 | 
					    console.log(this.custentryForm.value);
 | 
				
			||||||
 | 
					    // this.custentryForm.value.entity_name = this.companyid;
 | 
				
			||||||
 | 
					    if (this.custentryForm.invalid) {
 | 
				
			||||||
 | 
					      this.custsubmitted = true;
 | 
				
			||||||
 | 
					      return;
 | 
				
			||||||
 | 
					    }else{
 | 
				
			||||||
 | 
					      // this.companyForm = true;
 | 
				
			||||||
 | 
					      // this.oncustContinue();
 | 
				
			||||||
 | 
					      this.onContinue();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  selectedFile;
 | 
				
			||||||
 | 
					    oncustContinue() {
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					     
 | 
				
			||||||
 | 
					      
 | 
				
			||||||
 | 
					      console.log(this.custentryForm.value);
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					      this.customerservice.saveCustomer(this.custentryForm.value, this.selectedFile).subscribe((data => {
 | 
				
			||||||
 | 
					        console.log(data);
 | 
				
			||||||
 | 
					        console.log(data.id, "User id");
 | 
				
			||||||
 | 
					        console.log("Roles", data.role);
 | 
				
			||||||
 | 
					        console.log(data.checknumberId, "checknumber");
 | 
				
			||||||
 | 
					        this.aboutdata = data;
 | 
				
			||||||
 | 
					        if (data.role == "USER") {
 | 
				
			||||||
 | 
					          this.router.navigate(["../login/"]);
 | 
				
			||||||
 | 
					          // window.location.href = `${this.LoginUrl}/#/login`;
 | 
				
			||||||
 | 
					        } else {
 | 
				
			||||||
 | 
					          this.router.navigate(["../pricing/" + data.id]);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					      }))
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					userId;
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					onSubmit(){
 | 
				
			||||||
 | 
					  this.entryForm.value.email = this.email
 | 
				
			||||||
 | 
					  if (this.entryForm.invalid) {
 | 
				
			||||||
 | 
					    this.submitted = true;
 | 
				
			||||||
 | 
					    return;
 | 
				
			||||||
 | 
					  }else{
 | 
				
			||||||
 | 
					    this.onContinue();
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					  onContinue() {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					    // this.entryForm.value.mobile =  this.custentryForm.value.mob_no;
 | 
				
			||||||
 | 
					    console.log(this.custentryForm.value);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // this.userprofile.addUserinSignUP(this.entryForm.value).subscribe(data => {
 | 
				
			||||||
 | 
					    //   console.log(data);
 | 
				
			||||||
 | 
					    //   this.companyid = data.account_id;
 | 
				
			||||||
 | 
					    //   console.log(this.companyid, "company id");
 | 
				
			||||||
 | 
					    //   this.aboutdata = data;
 | 
				
			||||||
 | 
					    //   this.custentryForm.value.account_id = data?.account_id
 | 
				
			||||||
 | 
					    //   // this.custentryForm.value.new_password = 
 | 
				
			||||||
 | 
					    //   console.log(this.custentryForm.value);
 | 
				
			||||||
 | 
					      this.userprofile.adduserData(this.custentryForm.value).subscribe(cdata => {
 | 
				
			||||||
 | 
					        console.log(cdata);
 | 
				
			||||||
 | 
					        this.userId = cdata.userId;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      if (cdata) {
 | 
				
			||||||
 | 
					        this.toastr.success("Registrated Successfully");
 | 
				
			||||||
 | 
					        this.router.navigate(["../login/"]);
 | 
				
			||||||
 | 
					      } else {
 | 
				
			||||||
 | 
					        this.router.navigate(["../login/"]);
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					      // this.customerentryForm.get('companyId').setValue(this.companyid);
 | 
				
			||||||
 | 
					      // this.customerentryForm.get('gst_state').setValue(this.entryForm.value.state);
 | 
				
			||||||
 | 
					      // this.customerentryForm.get('entity_name').setValue(this.entryForm.value.companyName);
 | 
				
			||||||
 | 
					      // this.customerentryForm.get('first_name').setValue(this.custentryForm.value.first_name);
 | 
				
			||||||
 | 
					      // this.customerentryForm.get('last_name').setValue(this.custentryForm.value.last_name);
 | 
				
			||||||
 | 
					      // this.customerentryForm.get('date_of_birth').setValue(this.custentryForm.value.date_of_birth);
 | 
				
			||||||
 | 
					      // this.customerentryForm.get('gender').setValue(this.custentryForm.value.gender);
 | 
				
			||||||
 | 
					      // this.customerentryForm.get('email').setValue(this.email);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      // this.customerservice.saveCustomer(this.customerentryForm.value, this.selectedFile).subscribe(data => {
 | 
				
			||||||
 | 
					      //   console.log(data);
 | 
				
			||||||
 | 
					      //   console.log(data.id, "User id");
 | 
				
			||||||
 | 
					      //   this.aboutdata = data;
 | 
				
			||||||
 | 
					      //   if (data.status >= 200 && data.status <= 299) {
 | 
				
			||||||
 | 
					      //     console.log(data?.body)
 | 
				
			||||||
 | 
					      //     this.router.navigate(["../pricing/" + this.companyid +"/" +this.userId]);
 | 
				
			||||||
 | 
					      //   }
 | 
				
			||||||
 | 
					      // })
 | 
				
			||||||
 | 
					    },(error)=>{
 | 
				
			||||||
 | 
					      console.log(error);
 | 
				
			||||||
 | 
					      this.toastr.error(error?.error.message);
 | 
				
			||||||
 | 
					    })
 | 
				
			||||||
 | 
					    // })
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  onCheck() {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    this.userprofile.getUser(this.id, this.checknumberId).subscribe((data => {
 | 
				
			||||||
 | 
					      // console.log(data.userId, "User id");
 | 
				
			||||||
 | 
					      console.log("data", data.email);
 | 
				
			||||||
 | 
					      console.log(data);
 | 
				
			||||||
 | 
					      this.data1 = data;
 | 
				
			||||||
 | 
					      this.email = data.email;
 | 
				
			||||||
 | 
					      this.name=data.fullName;
 | 
				
			||||||
 | 
					      (<FormControl>this.entryForm.controls['email']).setValue(data.email);
 | 
				
			||||||
 | 
					      (<FormControl>this.entryForm.controls['name']).setValue(data.fullName);
 | 
				
			||||||
 | 
					      console.log(this.name)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  onCountryChange(event) {
 | 
				
			||||||
 | 
					    console.log(event.dialCode);
 | 
				
			||||||
 | 
					    console.log(event.name);
 | 
				
			||||||
 | 
					    console.log(event.iso2);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  back() {
 | 
				
			||||||
 | 
					    this.router.navigate(["../../all"], {relativeTo: this.route});
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  newpHide: boolean = true;
 | 
				
			||||||
 | 
					  newIcon: string = "eye";
 | 
				
			||||||
 | 
					  newShapeChanger() {
 | 
				
			||||||
 | 
					    this.newpHide = !this.newpHide;
 | 
				
			||||||
 | 
					    if(this.newpHide){
 | 
				
			||||||
 | 
					      this.newIcon = 'eye'
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
 | 
					      this.newIcon = 'eye-hide'
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  cnewpHide: boolean = true;
 | 
				
			||||||
 | 
					  cnewIcon: string = "eye";
 | 
				
			||||||
 | 
					  cnewShapeChanger() {
 | 
				
			||||||
 | 
					    this.cnewpHide = !this.cnewpHide;
 | 
				
			||||||
 | 
					    if(this.cnewpHide){
 | 
				
			||||||
 | 
					      this.cnewIcon = 'eye'
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
 | 
					      this.cnewIcon = 'eye-hide'
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					// export function passwordMatchValidator(control: AbstractControl): ValidationErrors | null {
 | 
				
			||||||
 | 
					//   const password = control.get('password');
 | 
				
			||||||
 | 
					//   const confirmPassword = control.get('confirmPassword');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//   if (password.value !== confirmPassword.value) {
 | 
				
			||||||
 | 
					//     return { passwordMismatch: true };
 | 
				
			||||||
 | 
					//   }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//   return null;
 | 
				
			||||||
 | 
					// }
 | 
				
			||||||
 | 
					export function ConfirmedValidator(controlName: string, matchingControlName: string){
 | 
				
			||||||
 | 
					  return (formGroup: FormGroup) => {
 | 
				
			||||||
 | 
					      const control = formGroup.controls[controlName];
 | 
				
			||||||
 | 
					      const matchingControl = formGroup.controls[matchingControlName];
 | 
				
			||||||
 | 
					      if (matchingControl.errors && !matchingControl.errors.confirmedValidator) {
 | 
				
			||||||
 | 
					          return;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					      if (control.value !== matchingControl.value) {
 | 
				
			||||||
 | 
					          matchingControl.setErrors({ confirmedValidator: true });
 | 
				
			||||||
 | 
					      } else {
 | 
				
			||||||
 | 
					          matchingControl.setErrors(null);
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,152 @@
 | 
				
			|||||||
 | 
					import { Injectable } from '@angular/core';
 | 
				
			||||||
 | 
					import { Observable } from 'rxjs';
 | 
				
			||||||
 | 
					import { ApiRequestService } from 'src/app/services/api/api-request.service';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Injectable({
 | 
				
			||||||
 | 
					  providedIn: 'root'
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					export class CustomerService {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  constructor(private apiRequest: ApiRequestService) { }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  saveCustomer(data: any, file?: any): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `token/Customer_master/Customer_master`;
 | 
				
			||||||
 | 
					    const formData = new FormData();
 | 
				
			||||||
 | 
					    formData.append('body', JSON.stringify(data));
 | 
				
			||||||
 | 
					    formData.append('file', file);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    return this.apiRequest.postFormData(url, formData);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  updateCustomer(data: any, file: any,id: number): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `token/Customer_master/Customer_master/${id}`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    const formData = new FormData();
 | 
				
			||||||
 | 
					    formData.append('body', JSON.stringify(data));
 | 
				
			||||||
 | 
					    formData.append('file', file);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    return this.apiRequest.postFormData(url, formData);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  getAllCustomers(): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `token/Customer_master/Customer_master`;
 | 
				
			||||||
 | 
					    return this.apiRequest.get(url);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  getCustomerById(id: number): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `token/Customer_master/Customer_master/${id}`;
 | 
				
			||||||
 | 
					    return this.apiRequest.get(url);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  deleteCustomerById(id: number): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `token/Customer_master/Customer_master/${id}`;
 | 
				
			||||||
 | 
					    return this.apiRequest.delete(url);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ////////site
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // saveCustomersite(data: any, file: any): Observable<any> {
 | 
				
			||||||
 | 
					  //   const url = `Sites/Sites`;
 | 
				
			||||||
 | 
					  //   const formData = new FormData();
 | 
				
			||||||
 | 
					  //   formData.append('body', JSON.stringify(data));
 | 
				
			||||||
 | 
					  //   formData.append('file', file);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  //   return this.apiRequest.postFormData(url, formData);
 | 
				
			||||||
 | 
					  // }
 | 
				
			||||||
 | 
					  saveCustomersite(data: any): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `Sites/Sites`;
 | 
				
			||||||
 | 
					    return this.apiRequest.postFormData(url, data);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // updateCustomersite(data: any, file: any,id: number): Observable<any> {
 | 
				
			||||||
 | 
					  //   const url = `Sites/Sites/${id}`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  //   const formData = new FormData();
 | 
				
			||||||
 | 
					  //   formData.append('body', JSON.stringify(data));
 | 
				
			||||||
 | 
					  //   formData.append('file', file);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  //   return this.apiRequest.postFormData(url, formData);
 | 
				
			||||||
 | 
					  // }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  updateCustomersite(data: any,id: number): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `Sites/Sites/${id}`;
 | 
				
			||||||
 | 
					    return this.apiRequest.put(url, data);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  getAllCustomerssite(): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `Sites/Sites`;
 | 
				
			||||||
 | 
					    return this.apiRequest.get(url);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  getCustomersiteById(id: number): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `Sites/Sites/${id}`;
 | 
				
			||||||
 | 
					    return this.apiRequest.get(url);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  deleteCustomersiteById(id: number): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `Sites/Sites/${id}`;
 | 
				
			||||||
 | 
					    return this.apiRequest.delete(url);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  getsiteBycustId(id: number): Observable<any> {
 | 
				
			||||||
 | 
					    const url = `Sites/getSitesByCustomer/${id}`;
 | 
				
			||||||
 | 
					    return this.apiRequest.get(url);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ////// custom package
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public savecustompkgeData(data: any): Observable<any> {
 | 
				
			||||||
 | 
					      return this.apiRequest.post(`Billing/CustomPackage/CustomPackage`, data);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					    public getcustompkgDetails(): Observable<any> {
 | 
				
			||||||
 | 
					      return this.apiRequest.get(`Billing/CustomPackage/CustomPackage`);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					    public getcustompkgDetailsById(id: number): Observable<any> {
 | 
				
			||||||
 | 
					      return this.apiRequest.get(`Billing/CustomPackage/CustomPackage/${id}`);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					    public deletecustompkgById(id: number): Observable<any> {
 | 
				
			||||||
 | 
					      return this.apiRequest.delete(`Billing/CustomPackage/CustomPackage/${id}`);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					    public updatecustompkgData(data: any, id: number): Observable<any> {
 | 
				
			||||||
 | 
					      return this.apiRequest.put(`Billing/CustomPackage/CustomPackage/${id}`, data);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ///biiling total
 | 
				
			||||||
 | 
					    public billingTotal(invoiceId: number, creditNoteId:number,paymentId): Observable<any> {
 | 
				
			||||||
 | 
					      return this.apiRequest.get(`Billing/Payments/alltotall/${invoiceId}/${creditNoteId}/${paymentId}`);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public getdatabycustID(customerId: any): Observable<any> {
 | 
				
			||||||
 | 
					      return this.apiRequest.get(`token/Customer_master/getReceiptApplication/${customerId}`);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ////// list  of  items
 | 
				
			||||||
 | 
					    //generate
 | 
				
			||||||
 | 
					     getServicesBycustId(customerId: any): Observable<any> {
 | 
				
			||||||
 | 
					      return this.apiRequest.get(`token/Customer_master/getAllservices/${customerId}`);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    //generate 2
 | 
				
			||||||
 | 
					    getServices2BycustId(customerId: any): Observable<any> {
 | 
				
			||||||
 | 
					      return this.apiRequest.get(`token/Customer_master/getAllservicesWithDisc/${customerId}`);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    //discount and charges
 | 
				
			||||||
 | 
					        //generate
 | 
				
			||||||
 | 
					        getdiscountchargesBycustId(customerId: any): Observable<any> {
 | 
				
			||||||
 | 
					          return this.apiRequest.get(`token/Customer_master/getAllservicesWithDiscOrderlevel/${customerId}`);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,137 @@
 | 
				
			|||||||
 | 
					<clr-main-container>
 | 
				
			||||||
 | 
					  <clr-header class="header-5">
 | 
				
			||||||
 | 
					    <div class="branding">
 | 
				
			||||||
 | 
					      <a href="javascript://" class="nav-link">
 | 
				
			||||||
 | 
					        <a href="#" class="logo">
 | 
				
			||||||
 | 
					          <img class="img" src="assets/images/icon/micrologo.png" alt="" height="50" width="50">
 | 
				
			||||||
 | 
					        </a>
 | 
				
			||||||
 | 
					        <div style="width:40px;margin-right:10px;">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <span class="title">cloudnSure</span>
 | 
				
			||||||
 | 
					      </a>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					  </clr-header>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <!-- <div *ngIf="editMode === 'data1';then basic_property"> -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <!-- <div class="container">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      <h2 class="text-center"><b>Welcome to <strong>cloudnsure!</strong></b></h2>
 | 
				
			||||||
 | 
					      <h5 class="text-center">You're signing up as <strong style="font-size: 20px;">here is email</strong></h5>
 | 
				
			||||||
 | 
					      <br>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      <form [formGroup]="form" (ngSubmit)="onContinue()" class="pop" style="text-align: center;">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>What's your full name?</strong></label><br/>
 | 
				
			||||||
 | 
					          <input class="clr-input" type="text" id="name" formControlName="name"  value="name"
 | 
				
			||||||
 | 
					          >
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>Password</strong></label><br/>
 | 
				
			||||||
 | 
					          <input class="clr-input" type="password" id="password" formControlName="password"
 | 
				
			||||||
 | 
					          >
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br/>
 | 
				
			||||||
 | 
					        <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>Re-enter Password</strong></label><br/>
 | 
				
			||||||
 | 
					          <input class="clr-input" type="password" id="cpass" formControlName="">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>Mobile</strong></label><br/>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          <input formControlName="mobile" class="clr-input" type="number" ng2TelInpu
 | 
				
			||||||
 | 
					          />
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="clr-col-md-4 clr-col-sm-12 center">
 | 
				
			||||||
 | 
					          <label for="controllerName"><strong>Email</strong></label><br/>
 | 
				
			||||||
 | 
					          <input class="clr-input" type="text" id="email" name="email" formControlName="email"
 | 
				
			||||||
 | 
					          >
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <div class="center text-center">
 | 
				
			||||||
 | 
					          <button type="submit" class="btn btn-primary">continue</button>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      </form>
 | 
				
			||||||
 | 
					      <br/>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      <h4>Wrong account? <a href="">Log in</a> instead.</h4>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    </div> -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <div class="container">
 | 
				
			||||||
 | 
					    <div class="display_msg">
 | 
				
			||||||
 | 
					      <h2 class="text-center"><b>Welcome to <strong>cloudnsure!</strong></b></h2>
 | 
				
			||||||
 | 
					      <h5 class="text-center" *ngIf="email">You're signing up as <strong style="font-size: 20px;">{{email}}</strong>
 | 
				
			||||||
 | 
					      </h5>
 | 
				
			||||||
 | 
					      <br>
 | 
				
			||||||
 | 
					      <form class="form" [formGroup]="form">
 | 
				
			||||||
 | 
					        <label><b>First Name</b></label><br>
 | 
				
			||||||
 | 
					        <input type="text" class="form__field" placeholder="Enter First Name" formControlName="first_name">
 | 
				
			||||||
 | 
					        <div *ngIf="f.first_name.invalid && (f.first_name.dirty || f.first_name.touched)"
 | 
				
			||||||
 | 
					          style="color:indianred; font-weight: bold">
 | 
				
			||||||
 | 
					          <div *ngIf="f.first_name.errors.required">First Name is required</div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <label><b>Last Name</b></label><br>
 | 
				
			||||||
 | 
					        <input type="text" class="form__field" placeholder="Enter Last Name" formControlName="last_name">
 | 
				
			||||||
 | 
					        <div *ngIf="f.last_name.invalid && (f.last_name.dirty || f.last_name.touched)"
 | 
				
			||||||
 | 
					          style="color:indianred; font-weight: bold">
 | 
				
			||||||
 | 
					          <div *ngIf="f.last_name.errors.required">Last Name is required</div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <label><b>Mobile Number</b></label><br>
 | 
				
			||||||
 | 
					        <input type="text" class="form__field" placeholder="Enter Mobile Number" formControlName="mob_no">
 | 
				
			||||||
 | 
					        <div *ngIf="f.mob_no.invalid && (f.mob_no.dirty || f.mob_no.touched)"
 | 
				
			||||||
 | 
					          style="color:indianred; font-weight: bold">
 | 
				
			||||||
 | 
					          <div *ngIf="f.mob_no.errors.required">Mobile Number is required</div>
 | 
				
			||||||
 | 
					          <div *ngIf="f.mob_no.errors.minlength">Mobile Number is 10 numbers</div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <label><b>New Password</b></label><br>
 | 
				
			||||||
 | 
					        <input class="form__field" type="password" [type]="newpHide ? 'password': 'text'"
 | 
				
			||||||
 | 
					          placeholder="Enter New Password" formControlName="password" />
 | 
				
			||||||
 | 
					        <clr-icon [attr.shape]="newIcon" (click)="newShapeChanger()"></clr-icon>
 | 
				
			||||||
 | 
					        <div *ngIf="f.password.invalid && (f.password.dirty || f.password.touched)"
 | 
				
			||||||
 | 
					          style="color:indianred; font-weight: bold">
 | 
				
			||||||
 | 
					          <div *ngIf="f.password.errors.required">password is required</div>
 | 
				
			||||||
 | 
					          <div *ngIf="f.password.errors.minlength">Password must be Minimum 6 Characters</div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					        <br>
 | 
				
			||||||
 | 
					        <label><b>Re-Enter New Password</b></label><br>
 | 
				
			||||||
 | 
					        <input class="form__field" type="password" [type]="cpHide ? 'password': 'text'"
 | 
				
			||||||
 | 
					          placeholder="Re-Enter  New Password" formControlName="confirm_password" />
 | 
				
			||||||
 | 
					        <clr-icon [attr.shape]="conIcon" (click)="comfShapeChanger()"></clr-icon>
 | 
				
			||||||
 | 
					        <div *ngIf="f.confirm_password.invalid && (f.confirm_password.dirty || f.confirm_password.touched)"
 | 
				
			||||||
 | 
					          style="color:indianred; font-weight: bold">
 | 
				
			||||||
 | 
					          <div *ngIf="f.confirm_password.errors.required">Password is required.</div>
 | 
				
			||||||
 | 
					          <div *ngIf="f.confirm_password.errors.confirmedValidator">Password and Confirm Password must be match.</div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <button type="submit" class="btn btn--primary uppercase" (click)="onsubmit()">continue</button>
 | 
				
			||||||
 | 
					      </form>
 | 
				
			||||||
 | 
					      <br>
 | 
				
			||||||
 | 
					      <p style="color: red;" *ngIf="passchange"><clr-icon shape="check"></clr-icon> User Info Is Added Please Login </p>
 | 
				
			||||||
 | 
					      <p> Wrong account? <a routerLink="/login">Log in</a> instead.</p>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
@ -0,0 +1,86 @@
 | 
				
			|||||||
 | 
					//@import '../../../../../styles1.scss';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//** variables
 | 
				
			||||||
 | 
					$background: #f5f6fa;
 | 
				
			||||||
 | 
					$text: #9c9c9c;
 | 
				
			||||||
 | 
					$input-bg-color: #fff;
 | 
				
			||||||
 | 
					$input-text-color: #a3a3a3;
 | 
				
			||||||
 | 
					$button-bg-color: #7f8ff4;
 | 
				
			||||||
 | 
					$button-text-color: #fff;
 | 
				
			||||||
 | 
					$google-button-bg-color: #7f8ff4;
 | 
				
			||||||
 | 
					$linkedin-button-bg-color: #4b76eb;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//** root
 | 
				
			||||||
 | 
					:root {
 | 
				
			||||||
 | 
						background: $background;
 | 
				
			||||||
 | 
						color: $text;
 | 
				
			||||||
 | 
						font: 1rem "PT Sans", sans-serif;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//** helper
 | 
				
			||||||
 | 
					.display_msg {
 | 
				
			||||||
 | 
						display: flex;
 | 
				
			||||||
 | 
						flex-direction: column;
 | 
				
			||||||
 | 
						align-items: center;
 | 
				
			||||||
 | 
						justify-content: center;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.form {
 | 
				
			||||||
 | 
						/* margin-left: auto;
 | 
				
			||||||
 | 
						margin-right: auto; */
 | 
				
			||||||
 | 
						 &__field {
 | 
				
			||||||
 | 
						// 	width: 360px;
 | 
				
			||||||
 | 
						// 	//background: #fff;
 | 
				
			||||||
 | 
						// 	color: $input-text-color;
 | 
				
			||||||
 | 
						// 	font: inherit;
 | 
				
			||||||
 | 
						// 	//box-shadow: 0 6px 10px 0 rgba(0, 0, 0 , .1);
 | 
				
			||||||
 | 
						// 	border: 1 solid rgb(235, 230, 230);
 | 
				
			||||||
 | 
					  //   background-color:rgb(255, 255, 255);
 | 
				
			||||||
 | 
					  // display: inline-block;
 | 
				
			||||||
 | 
					  //   border-radius: 4px;
 | 
				
			||||||
 | 
					  // box-sizing: border-box;
 | 
				
			||||||
 | 
						// 	//outline: 0;
 | 
				
			||||||
 | 
						// 	padding: 6px 9px;
 | 
				
			||||||
 | 
					  width: 360px;
 | 
				
			||||||
 | 
					  padding: 7px 9px;
 | 
				
			||||||
 | 
					 // margin: 3px 0;
 | 
				
			||||||
 | 
					 background-color:rgb(255, 255, 255);
 | 
				
			||||||
 | 
					  display: inline-block;
 | 
				
			||||||
 | 
					  border: 1px solid #ccc;
 | 
				
			||||||
 | 
					  border-radius: 4px;
 | 
				
			||||||
 | 
					  box-sizing: border-box;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.btn {
 | 
				
			||||||
 | 
						display: inline-block;
 | 
				
			||||||
 | 
						background: transparent;
 | 
				
			||||||
 | 
						color: inherit;
 | 
				
			||||||
 | 
						font: inherit;
 | 
				
			||||||
 | 
						border: 0;
 | 
				
			||||||
 | 
						outline: 0;
 | 
				
			||||||
 | 
						padding: 0;
 | 
				
			||||||
 | 
						transition: all 200ms ease-in;
 | 
				
			||||||
 | 
						cursor: pointer;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						&--primary {
 | 
				
			||||||
 | 
							background: $button-bg-color;
 | 
				
			||||||
 | 
							color: $button-text-color;
 | 
				
			||||||
 | 
							box-shadow: 0 0 10px 2px rgba(0, 0, 0, .1);
 | 
				
			||||||
 | 
							border-radius: 2px;
 | 
				
			||||||
 | 
							width: 100%;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							&:hover {
 | 
				
			||||||
 | 
								background: darken($button-bg-color, 4%);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							&:active {
 | 
				
			||||||
 | 
								background: $button-bg-color;
 | 
				
			||||||
 | 
								box-shadow: inset 0 0 10px 2px rgba(0, 0, 0, .2);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					form {
 | 
				
			||||||
 | 
					  margin-left: 8%;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,25 @@
 | 
				
			|||||||
 | 
					import { ComponentFixture, TestBed } from '@angular/core/testing';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { AddguestComponent } from './addguest.component';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					describe('AddguestComponent', () => {
 | 
				
			||||||
 | 
					  let component: AddguestComponent;
 | 
				
			||||||
 | 
					  let fixture: ComponentFixture<AddguestComponent>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(async () => {
 | 
				
			||||||
 | 
					    await TestBed.configureTestingModule({
 | 
				
			||||||
 | 
					      declarations: [ AddguestComponent ]
 | 
				
			||||||
 | 
					    })
 | 
				
			||||||
 | 
					    .compileComponents();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(() => {
 | 
				
			||||||
 | 
					    fixture = TestBed.createComponent(AddguestComponent);
 | 
				
			||||||
 | 
					    component = fixture.componentInstance;
 | 
				
			||||||
 | 
					    fixture.detectChanges();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it('should create', () => {
 | 
				
			||||||
 | 
					    expect(component).toBeTruthy();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
@ -0,0 +1,68 @@
 | 
				
			|||||||
 | 
					import { Component, OnInit } from '@angular/core';
 | 
				
			||||||
 | 
					import { FormBuilder, FormGroup, Validators } from '@angular/forms';
 | 
				
			||||||
 | 
					import { ActivatedRoute } from '@angular/router';
 | 
				
			||||||
 | 
					import { MyworkspaceService } from 'src/app/services/admin/myworkspace.service';
 | 
				
			||||||
 | 
					@Component({
 | 
				
			||||||
 | 
					  selector: 'app-addguest',
 | 
				
			||||||
 | 
					  templateUrl: './addguest.component.html',
 | 
				
			||||||
 | 
					  styleUrls: ['./addguest.component.scss']
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					export class AddguestComponent implements OnInit {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  public  form: FormGroup;
 | 
				
			||||||
 | 
					  submitted = false;
 | 
				
			||||||
 | 
					  passchange;
 | 
				
			||||||
 | 
					  newpHide: boolean = true;
 | 
				
			||||||
 | 
					  newIcon: string = "eye";
 | 
				
			||||||
 | 
					  newShapeChanger() {
 | 
				
			||||||
 | 
					    this.newpHide = !this.newpHide;
 | 
				
			||||||
 | 
					    if(this.newpHide){
 | 
				
			||||||
 | 
					      this.newIcon = 'eye'
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
 | 
					      this.newIcon = 'eye-hide'
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  cpHide: boolean = true;
 | 
				
			||||||
 | 
					  conIcon: string = "eye";
 | 
				
			||||||
 | 
					  comfShapeChanger() {
 | 
				
			||||||
 | 
					    this.cpHide = !this.cpHide;
 | 
				
			||||||
 | 
					    if(this.cpHide){
 | 
				
			||||||
 | 
					      this.conIcon = 'eye'
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
 | 
					      this.conIcon = 'eye-hide'
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  get f() { return this.form.controls; }
 | 
				
			||||||
 | 
					  email: string;
 | 
				
			||||||
 | 
					  token;
 | 
				
			||||||
 | 
					  constructor(private _fb: FormBuilder,
 | 
				
			||||||
 | 
					    private route: ActivatedRoute,
 | 
				
			||||||
 | 
					    private mywork:MyworkspaceService) { }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ngOnInit(): void {
 | 
				
			||||||
 | 
					    this.email = this.mywork.getStoredEmail();
 | 
				
			||||||
 | 
					    console.log(this.email)
 | 
				
			||||||
 | 
					    this.token = this.route.snapshot.params["id"];
 | 
				
			||||||
 | 
					    console.log("token is ", this.token);
 | 
				
			||||||
 | 
					    //form validation
 | 
				
			||||||
 | 
					    this.form = this._fb.group(
 | 
				
			||||||
 | 
					      {
 | 
				
			||||||
 | 
					        first_name: ['', Validators.required],
 | 
				
			||||||
 | 
					        last_name: ['', Validators.required],
 | 
				
			||||||
 | 
					        mob_no: ['', [Validators.required,Validators.minLength(10)]],
 | 
				
			||||||
 | 
					        password: ['',[ Validators.required, Validators.minLength(6), Validators.maxLength(40)]],
 | 
				
			||||||
 | 
					        confirm_password: ['', Validators.required],
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      }, );
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  onsubmit(){
 | 
				
			||||||
 | 
					this.mywork.addguestdetails(this.form.value,this.token).subscribe((data)=>{
 | 
				
			||||||
 | 
					  console.log(data);
 | 
				
			||||||
 | 
					  this.passchange=data;
 | 
				
			||||||
 | 
					        console.log('success ', data);
 | 
				
			||||||
 | 
					                },(err) => {
 | 
				
			||||||
 | 
					          console.log('failure ', err);
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,95 @@
 | 
				
			|||||||
 | 
					.header-6 {
 | 
				
			||||||
 | 
					  background-color: #0072a3;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					:root {
 | 
				
			||||||
 | 
					  background: #f5f6fa;
 | 
				
			||||||
 | 
					  color: #9c9c9c;
 | 
				
			||||||
 | 
					  font: 1rem "PT Sans", sans-serif;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					html,
 | 
				
			||||||
 | 
					body,
 | 
				
			||||||
 | 
					.container {
 | 
				
			||||||
 | 
					  height: 100%;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					a {
 | 
				
			||||||
 | 
					  color: inherit;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					a:hover {
 | 
				
			||||||
 | 
					  color: #7f8ff4;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.email_check {
 | 
				
			||||||
 | 
					  display: flex;
 | 
				
			||||||
 | 
					  flex-direction: column;
 | 
				
			||||||
 | 
					  align-items: center;
 | 
				
			||||||
 | 
					  justify-content: center;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.uppercase {
 | 
				
			||||||
 | 
					  text-transform: uppercase;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.new {
 | 
				
			||||||
 | 
					  display: inline-block;
 | 
				
			||||||
 | 
					  background: transparent;
 | 
				
			||||||
 | 
					  color: inherit;
 | 
				
			||||||
 | 
					  font: inherit;
 | 
				
			||||||
 | 
					  border: 0;
 | 
				
			||||||
 | 
					  outline: 0;
 | 
				
			||||||
 | 
					  padding: 0;
 | 
				
			||||||
 | 
					  transition: all 200ms ease-in;
 | 
				
			||||||
 | 
					  cursor: pointer;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.new--newprimary {
 | 
				
			||||||
 | 
					  background: #7f8ff4;
 | 
				
			||||||
 | 
					  color: #fff;
 | 
				
			||||||
 | 
					  box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.1);
 | 
				
			||||||
 | 
					  border-radius: 2px;
 | 
				
			||||||
 | 
					  width: 100%;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.new--newprimary:hover {
 | 
				
			||||||
 | 
					  background: #6c7ff2;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.new--newprimary:active {
 | 
				
			||||||
 | 
					  background: #7f8ff4;
 | 
				
			||||||
 | 
					  box-shadow: inset 0 0 10px 2px rgba(0, 0, 0, 0.2);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.new--primary1 {
 | 
				
			||||||
 | 
					  background: #4CAF50;
 | 
				
			||||||
 | 
					  color: #fff;
 | 
				
			||||||
 | 
					  box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.1);
 | 
				
			||||||
 | 
					  border-radius: 2px;
 | 
				
			||||||
 | 
					  width: 100%;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.new--primary1:hover {
 | 
				
			||||||
 | 
					  background: #6c7ff2;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.new--primary1:active {
 | 
				
			||||||
 | 
					  background: #7f8ff4;
 | 
				
			||||||
 | 
					  box-shadow: inset 0 0 10px 2px rgba(0, 0, 0, 0.2);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* &--inside {
 | 
				
			||||||
 | 
						margin-left: -96px;
 | 
				
			||||||
 | 
					} */
 | 
				
			||||||
 | 
					.form {
 | 
				
			||||||
 | 
					  /* margin-left: auto;
 | 
				
			||||||
 | 
					  margin-right: auto; */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					.form__field {
 | 
				
			||||||
 | 
					  width: 360px;
 | 
				
			||||||
 | 
					  background: #fff;
 | 
				
			||||||
 | 
					  color: #626161;
 | 
				
			||||||
 | 
					  font: inherit;
 | 
				
			||||||
 | 
					  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.1);
 | 
				
			||||||
 | 
					  border: 0;
 | 
				
			||||||
 | 
					  outline: 0;
 | 
				
			||||||
 | 
					  padding: 10px 18px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.form__field {
 | 
				
			||||||
 | 
					  border: 2px solid #7f8ff4;
 | 
				
			||||||
 | 
					}/*# sourceMappingURL=emailverification.component.css.map */
 | 
				
			||||||
@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					{"version":3,"sources":["emailverification.component.scss","emailverification.component.css"],"names":[],"mappings":"AAAA;EACE,yBAAA;ACCF;;ADUA;EACC,mBATY;EAUZ,cATM;EAUN,gCAAA;ACPD;;ADUA;;;EAGC,YAAA;ACPD;;ADUA;EACC,cAAA;ACPD;ADSC;EACC,cApBgB;ACalB;;ADYA;EACC,aAAA;EACA,sBAAA;EACA,mBAAA;EACA,uBAAA;ACTD;;ADYA;EACC,yBAAA;ACTD;;ADaA;EACC,qBAAA;EACA,uBAAA;EACA,cAAA;EACA,aAAA;EACA,SAAA;EACA,UAAA;EACA,UAAA;EACA,6BAAA;EACA,eAAA;ACVD;ADYC;EACC,mBAjDgB;EAkDhB,WAjDkB;EAkDlB,2CAAA;EACA,kBAAA;EAGA,WAAA;ACZF;ADeE;EACC,mBAAA;ACbH;ADgBE;EACC,mBA/De;EAgEf,iDAAA;ACdH;ADiBC;EACC,mBAAA;EACA,WApEkB;EAqElB,2CAAA;EACA,kBAAA;EAGA,WAAA;ACjBF;ADoBE;EACC,mBAAA;AClBH;ADqBE;EACC,mBAlFe;EAmFf,iDAAA;ACnBH;;ADwBC;;GAAA;AAMD;EACC;uBAAA;ACvBD;ADyBC;EACC,YAAA;EAEA,gBAAA;EACA,cAtGiB;EAuGjB,aAAA;EACA,2CAAA;EACA,SAAA;EACA,UAAA;EACA,kBAAA;ACxBF;;AD2BA;EACE,yBAAA;ACxBF","file":"emailverification.component.css"}
 | 
				
			||||||
@ -0,0 +1,123 @@
 | 
				
			|||||||
 | 
					<!-- <div class="s-login-pg"> -->
 | 
				
			||||||
 | 
					<!--   <div class="s-login-pg-head">
 | 
				
			||||||
 | 
					      <div style="width:100px;"><s-logo></s-logo></div>
 | 
				
			||||||
 | 
					      <p style="text-align: center"> Sample app done with SpringBoot backend and Angular frontend </p>
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					  <form class="s-login-pg-form" name="form" (ngSubmit)="login()" #f="ngForm" novalidate>
 | 
				
			||||||
 | 
					      <input type="text"     placeholder="Username (demo)" name="username" [(ngModel)]="model.username" #username="ngModel" required/>
 | 
				
			||||||
 | 
					      <input type="password" placeholder="Password (demo)" name="password" [(ngModel)]="model.password" #password="ngModel" required/>
 | 
				
			||||||
 | 
					      <button type="submit" class="btn btn-primary">LOG IN</button>
 | 
				
			||||||
 | 
					  </form>
 | 
				
			||||||
 | 
					  <div class="s-login-pg-foot">
 | 
				
			||||||
 | 
					      <div *ngIf="errMsg" style="color:indianred; font-weight: bold">{{errMsg}}</div>
 | 
				
			||||||
 | 
					  </div> -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<header class="header-6">
 | 
				
			||||||
 | 
					  <div class="branding">
 | 
				
			||||||
 | 
					    <a href="javascript://" class="nav-link">
 | 
				
			||||||
 | 
					      <a href="#" class="logo">
 | 
				
			||||||
 | 
					        <img class="img" src="assets/images/icon/micrologo.png" alt="" height="50" width="50">
 | 
				
			||||||
 | 
					      </a>
 | 
				
			||||||
 | 
					      <div style="width:40px;margin-right:10px;">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <span class="title">{{ loginEnvironment.loginHeading2 | sanitize}}</span>
 | 
				
			||||||
 | 
					    </a>
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					</header>
 | 
				
			||||||
 | 
					<div class="container">
 | 
				
			||||||
 | 
					  <div class="email_check">
 | 
				
			||||||
 | 
					    <h2><b>Try {{ loginEnvironment.loginHeading2 | sanitize}} For Free</b></h2>
 | 
				
			||||||
 | 
					    <p style="font-size:15px;">Email Verification</p><br>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <form class="form" [formGroup]="emailCheckForm" style="text-align: center;">
 | 
				
			||||||
 | 
					      <input class="form__field" type="email" formControlName="email" placeholder="example@gmail.com"
 | 
				
			||||||
 | 
					        [readOnly]="otpshow" [style.background-color]="otpshow === true ? '#f6f6f6' : 'white'" />
 | 
				
			||||||
 | 
					      <div *ngIf="submitted && emailCheckForm.controls.email.errors" class="error_mess">
 | 
				
			||||||
 | 
					        <div *ngIf="submitted && emailCheckForm.controls.email.errors.required" class="error_mess">*This field is
 | 
				
			||||||
 | 
					          Required</div>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <div *ngIf="emailErrMsg" style="color:indianred; font-weight: bold">{{emailErrMsg}}</div>
 | 
				
			||||||
 | 
					      <br>
 | 
				
			||||||
 | 
					      <div style="padding: 10px 10px 0px 30px;" *ngIf="!otpshow">
 | 
				
			||||||
 | 
					        <clr-checkbox-container style="width: 360px;">
 | 
				
			||||||
 | 
					          <clr-checkbox-wrapper>
 | 
				
			||||||
 | 
					            <input type="checkbox" clrCheckbox name="condition1" [(ngModel)]="conditions.condition1"
 | 
				
			||||||
 | 
					              [ngModelOptions]="{standalone: true}" />
 | 
				
			||||||
 | 
					            <label>I agree to <a>Terms</a> and <a>Conditions</a>.</label>
 | 
				
			||||||
 | 
					          </clr-checkbox-wrapper>
 | 
				
			||||||
 | 
					          <clr-checkbox-wrapper>
 | 
				
			||||||
 | 
					            <input type="checkbox" clrCheckbox name="condition2" [(ngModel)]="conditions.condition2"
 | 
				
			||||||
 | 
					              [ngModelOptions]="{standalone: true}" />
 | 
				
			||||||
 | 
					            <label>I agree to <a>Privacy Policy</a>.</label>
 | 
				
			||||||
 | 
					          </clr-checkbox-wrapper>
 | 
				
			||||||
 | 
					          <clr-checkbox-wrapper>
 | 
				
			||||||
 | 
					            <input type="checkbox" clrCheckbox name="condition3" [(ngModel)]="conditions.condition3"
 | 
				
			||||||
 | 
					              [ngModelOptions]="{standalone: true}" />
 | 
				
			||||||
 | 
					            <label>I agree to End User Policy Agreement.</label>
 | 
				
			||||||
 | 
					          </clr-checkbox-wrapper>
 | 
				
			||||||
 | 
					        </clr-checkbox-container>
 | 
				
			||||||
 | 
					        <!-- Commenting out captcha -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <!-- <ngx-recaptcha2 #captchaElem style="width: 100%;" [siteKey]="siteKey" (success)="handleSuccess($event)"
 | 
				
			||||||
 | 
					          formControlName="recaptcha">
 | 
				
			||||||
 | 
					        </ngx-recaptcha2> -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div class="clr-col-sm-12 recaptcha-container">
 | 
				
			||||||
 | 
					          <div class="recaptcha-box">
 | 
				
			||||||
 | 
					            <b>{{ fieldnameCode }}</b>
 | 
				
			||||||
 | 
					            <button class="btn btn-icon btn-primary btn-sm" (click)="generatefieldname()">
 | 
				
			||||||
 | 
					              <clr-icon shape="refresh"></clr-icon>
 | 
				
			||||||
 | 
					            </button>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          <input type="text" formControlName="recaptcha" class="form__field" placeholder="Enter CAPTCHA">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && emailCheckForm.controls.recaptcha.errors?.required" class="error_mess">
 | 
				
			||||||
 | 
					            *This field is Required
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          <div *ngIf="submitted && emailCheckForm.get('recaptcha').errors && emailCheckForm.get('recaptcha').dirty"
 | 
				
			||||||
 | 
					            class="error_mess">
 | 
				
			||||||
 | 
					            <div *ngIf="submitted && emailCheckForm.controls['recaptcha'].hasError('fieldnameMismatch')"
 | 
				
			||||||
 | 
					              class="error_mess">
 | 
				
			||||||
 | 
					              Recaptcha not valid.
 | 
				
			||||||
 | 
					            </div>
 | 
				
			||||||
 | 
					          </div>
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					      <!-- <ng-container *ngIf="!otpshow"><br>
 | 
				
			||||||
 | 
					        <button type="submit" class="btn new--newprimary btn--inside uppercase"
 | 
				
			||||||
 | 
					          [disabled]="!emailCheckForm.valid && !verifyButton  || !(conditions.condition1 && conditions.condition2 && conditions.condition3)"
 | 
				
			||||||
 | 
					          (click)="onSubmit()">Verify Email</button>
 | 
				
			||||||
 | 
					      </ng-container> -->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      <ng-container *ngIf="!otpshow"><br>
 | 
				
			||||||
 | 
					        <button type="submit" class="btn new--newprimary btn--inside uppercase"
 | 
				
			||||||
 | 
					          [disabled]="!emailCheckForm.valid && verifyButton || !(conditions.condition1 && conditions.condition2 && conditions.condition3)"
 | 
				
			||||||
 | 
					          (click)="onSubmit()">Verify Email</button>
 | 
				
			||||||
 | 
					      </ng-container>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      <br>
 | 
				
			||||||
 | 
					      <ng-container *ngIf="otpshow">
 | 
				
			||||||
 | 
					        <div style="text-align: center; font-weight: bold;">Enter Your OTP</div>
 | 
				
			||||||
 | 
					        <div> <input class="form__field" type="text" [(ngModel)]="otpfromuser" name="otpfromuser"
 | 
				
			||||||
 | 
					            [ngModelOptions]="{standalone: true}" placeholder="Enter OTP" /> </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <button type="submit" class="btn new--newprimary btn--inside uppercase"
 | 
				
			||||||
 | 
					          [disabled]="otpfromuser === '' || otpfromuser.length !== 6" (click)="verifyOTP()">Submit</button>
 | 
				
			||||||
 | 
					        <div *ngIf="emailotpMsg" style="color:indianred; font-weight: bold">{{emailotpMsg}}</div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div style="color:rgb(82, 80, 80); font-weight: bold; width: 360px;">We have sent OTP to
 | 
				
			||||||
 | 
					          "{{emailCheckForm.value.email}}", please check and enter OTP from your email.</div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <button type="submit" class="btn new--newprimary btn--inside uppercase" (click)="sendOTP()">Resend OTP</button>
 | 
				
			||||||
 | 
					      </ng-container>
 | 
				
			||||||
 | 
					    </form>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
@ -0,0 +1,153 @@
 | 
				
			|||||||
 | 
					.header-6 {
 | 
				
			||||||
 | 
						background-color: #0072a3;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.recaptcha-container {
 | 
				
			||||||
 | 
						display: flex;
 | 
				
			||||||
 | 
						flex-direction: column;
 | 
				
			||||||
 | 
						align-items: center;
 | 
				
			||||||
 | 
						margin-top: 10px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.recaptcha-box {
 | 
				
			||||||
 | 
						display: flex;
 | 
				
			||||||
 | 
						align-items: center;
 | 
				
			||||||
 | 
						gap: 8px;
 | 
				
			||||||
 | 
						margin-bottom: 5px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.recaptcha-input {
 | 
				
			||||||
 | 
						width: 100%;
 | 
				
			||||||
 | 
						max-width: 300px;
 | 
				
			||||||
 | 
						padding: 8px;
 | 
				
			||||||
 | 
						text-align: center;
 | 
				
			||||||
 | 
						border: 1px solid #ccc;
 | 
				
			||||||
 | 
						border-radius: 4px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.error_mess {
 | 
				
			||||||
 | 
						color: red;
 | 
				
			||||||
 | 
						font-size: 12px;
 | 
				
			||||||
 | 
						margin-top: 5px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//** variables
 | 
				
			||||||
 | 
					$background: #f5f6fa;
 | 
				
			||||||
 | 
					$text: #9c9c9c;
 | 
				
			||||||
 | 
					$input-bg-color: #fff;
 | 
				
			||||||
 | 
					$input-text-color: #626161;
 | 
				
			||||||
 | 
					$button-bg-color: #7f8ff4;
 | 
				
			||||||
 | 
					$button-text-color: #fff;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//** root
 | 
				
			||||||
 | 
					:root {
 | 
				
			||||||
 | 
						background: $background;
 | 
				
			||||||
 | 
						color: $text;
 | 
				
			||||||
 | 
						font: 1rem "PT Sans", sans-serif;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					html,
 | 
				
			||||||
 | 
					body,
 | 
				
			||||||
 | 
					.container {
 | 
				
			||||||
 | 
						height: 100%;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					a {
 | 
				
			||||||
 | 
						color: inherit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						&:hover {
 | 
				
			||||||
 | 
							color: $button-bg-color;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//** helper
 | 
				
			||||||
 | 
					.email_check {
 | 
				
			||||||
 | 
						display: flex;
 | 
				
			||||||
 | 
						flex-direction: column;
 | 
				
			||||||
 | 
						align-items: center;
 | 
				
			||||||
 | 
						justify-content: center;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.uppercase {
 | 
				
			||||||
 | 
						text-transform: uppercase;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//** button
 | 
				
			||||||
 | 
					.new {
 | 
				
			||||||
 | 
						display: inline-block;
 | 
				
			||||||
 | 
						background: transparent;
 | 
				
			||||||
 | 
						color: inherit;
 | 
				
			||||||
 | 
						font: inherit;
 | 
				
			||||||
 | 
						border: 0;
 | 
				
			||||||
 | 
						outline: 0;
 | 
				
			||||||
 | 
						padding: 0;
 | 
				
			||||||
 | 
						transition: all 200ms ease-in;
 | 
				
			||||||
 | 
						cursor: pointer;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						&--newprimary {
 | 
				
			||||||
 | 
							background: $button-bg-color;
 | 
				
			||||||
 | 
							color: $button-text-color;
 | 
				
			||||||
 | 
							box-shadow: 0 0 10px 2px rgba(0, 0, 0, .1);
 | 
				
			||||||
 | 
							border-radius: 2px;
 | 
				
			||||||
 | 
							//padding: 12px 36px;
 | 
				
			||||||
 | 
							//padding: 7px 158px;
 | 
				
			||||||
 | 
							width: 100%;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							&:hover {
 | 
				
			||||||
 | 
								background: darken($button-bg-color, 4%);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							&:active {
 | 
				
			||||||
 | 
								background: $button-bg-color;
 | 
				
			||||||
 | 
								box-shadow: inset 0 0 10px 2px rgba(0, 0, 0, .2);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						&--primary1 {
 | 
				
			||||||
 | 
							background: #4CAF50;
 | 
				
			||||||
 | 
							color: $button-text-color;
 | 
				
			||||||
 | 
							box-shadow: 0 0 10px 2px rgba(0, 0, 0, .1);
 | 
				
			||||||
 | 
							border-radius: 2px;
 | 
				
			||||||
 | 
							//padding: 12px 36px;
 | 
				
			||||||
 | 
							//padding: 7px 158px;
 | 
				
			||||||
 | 
							width: 100%;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							&:hover {
 | 
				
			||||||
 | 
								background: darken($button-bg-color, 4%);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							&:active {
 | 
				
			||||||
 | 
								background: $button-bg-color;
 | 
				
			||||||
 | 
								box-shadow: inset 0 0 10px 2px rgba(0, 0, 0, .2);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* &--inside {
 | 
				
			||||||
 | 
							margin-left: -96px;
 | 
				
			||||||
 | 
						} */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//** form
 | 
				
			||||||
 | 
					.form {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/* margin-left: auto;
 | 
				
			||||||
 | 
						margin-right: auto; */
 | 
				
			||||||
 | 
						&__field {
 | 
				
			||||||
 | 
							width: 360px;
 | 
				
			||||||
 | 
							//width: 450px;
 | 
				
			||||||
 | 
							background: #fff;
 | 
				
			||||||
 | 
							color: $input-text-color;
 | 
				
			||||||
 | 
							font: inherit;
 | 
				
			||||||
 | 
							box-shadow: 0 6px 10px 0 rgba(0, 0, 0, .1);
 | 
				
			||||||
 | 
							border: 0;
 | 
				
			||||||
 | 
							outline: 0;
 | 
				
			||||||
 | 
							padding: 10px 18px;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.form__field {
 | 
				
			||||||
 | 
						border: 2px solid #7f8ff4;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,25 @@
 | 
				
			|||||||
 | 
					import { ComponentFixture, TestBed } from '@angular/core/testing';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { EmailverificationComponent } from './emailverification.component';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					describe('EmailverificationComponent', () => {
 | 
				
			||||||
 | 
					  let component: EmailverificationComponent;
 | 
				
			||||||
 | 
					  let fixture: ComponentFixture<EmailverificationComponent>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(async () => {
 | 
				
			||||||
 | 
					    await TestBed.configureTestingModule({
 | 
				
			||||||
 | 
					      declarations: [ EmailverificationComponent ]
 | 
				
			||||||
 | 
					    })
 | 
				
			||||||
 | 
					    .compileComponents();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  beforeEach(() => {
 | 
				
			||||||
 | 
					    fixture = TestBed.createComponent(EmailverificationComponent);
 | 
				
			||||||
 | 
					    component = fixture.componentInstance;
 | 
				
			||||||
 | 
					    fixture.detectChanges();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  it('should create', () => {
 | 
				
			||||||
 | 
					    expect(component).toBeTruthy();
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
@ -0,0 +1,236 @@
 | 
				
			|||||||
 | 
					import { Component, OnInit, ViewEncapsulation } from '@angular/core';
 | 
				
			||||||
 | 
					import { HttpClient, HttpErrorResponse } from "@angular/common/http";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { AbstractControl, FormBuilder, FormGroup, ValidationErrors, Validators } from "@angular/forms";
 | 
				
			||||||
 | 
					import { ActivatedRoute, Router } from "@angular/router";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import { UserRegistrationService } from 'src/app/services/admin/user-registration.service';
 | 
				
			||||||
 | 
					import { environment } from 'src/environments/environment';
 | 
				
			||||||
 | 
					import { ToastrService } from 'ngx-toastr';
 | 
				
			||||||
 | 
					import { LoginEnvironment } from '../login-page/login_environment';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export interface EmailRequest {
 | 
				
			||||||
 | 
					  email: string;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					@Component({
 | 
				
			||||||
 | 
					  selector: 'app-emailverification',
 | 
				
			||||||
 | 
					  templateUrl: './emailverification.component.html',
 | 
				
			||||||
 | 
					  styleUrls: ['./emailverification.component.scss']
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					export class EmailverificationComponent implements OnInit {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  loginEnvironment = LoginEnvironment;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // baseUrl= environment.portalurl;
 | 
				
			||||||
 | 
					  submitted = false;
 | 
				
			||||||
 | 
					  conditions = {
 | 
				
			||||||
 | 
					    condition1: true,
 | 
				
			||||||
 | 
					    condition2: true,
 | 
				
			||||||
 | 
					    condition3: true,
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  siteKey = environment.captchaSiteKey;
 | 
				
			||||||
 | 
					  // siteKey: string = "6Le7ayYpAAAAAL76n79XlVJCg1jbXZGbnzGNJ1rt";
 | 
				
			||||||
 | 
					  constructor(private _fb: FormBuilder,
 | 
				
			||||||
 | 
					    private router: Router,
 | 
				
			||||||
 | 
					    private route: ActivatedRoute,
 | 
				
			||||||
 | 
					    private userRegistrationService: UserRegistrationService,
 | 
				
			||||||
 | 
					    private http: HttpClient,
 | 
				
			||||||
 | 
					    private toastr: ToastrService) {
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ngOnInit(): void {
 | 
				
			||||||
 | 
					    this.generatefieldname();
 | 
				
			||||||
 | 
					    this.userRegistrationService.removeSignedUpUserInfo();
 | 
				
			||||||
 | 
					    this.userRegistrationService.removeStoredEmail();
 | 
				
			||||||
 | 
					    this.emailCheckForm = this._fb.group({
 | 
				
			||||||
 | 
					      email: [null, [Validators.email, Validators.required]],
 | 
				
			||||||
 | 
					      // recaptcha: ['', Validators.required],
 | 
				
			||||||
 | 
					      recaptcha: [null, [Validators.required, this.checkfieldname.bind(this)]],
 | 
				
			||||||
 | 
					      first_name: [null],
 | 
				
			||||||
 | 
					      last_name: [null],
 | 
				
			||||||
 | 
					      mob_no: [null],
 | 
				
			||||||
 | 
					      account_id: [null],
 | 
				
			||||||
 | 
					      usrGrpId: [null],
 | 
				
			||||||
 | 
					      new_password: [null],
 | 
				
			||||||
 | 
					      confirm_password: [null],
 | 
				
			||||||
 | 
					      accesstype: [null],
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  model: any = {};
 | 
				
			||||||
 | 
					  EmailRequest: EmailRequest;
 | 
				
			||||||
 | 
					  emailErrMsg: string = ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  fieldnameCode = '';
 | 
				
			||||||
 | 
					  generatefieldname(): void {
 | 
				
			||||||
 | 
					    const possibleCharacters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
 | 
				
			||||||
 | 
					    const codeLength = 6; // Change to desired length
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    let fieldname = '';
 | 
				
			||||||
 | 
					    for (let i = 0; i < codeLength; i++) {
 | 
				
			||||||
 | 
					      const randomIndex = Math.floor(Math.random() * possibleCharacters.length);
 | 
				
			||||||
 | 
					      fieldname += possibleCharacters.charAt(randomIndex);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    this.fieldnameCode = fieldname;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  checkfieldname(control: AbstractControl): ValidationErrors | null {
 | 
				
			||||||
 | 
					    if (control.value !== this.fieldnameCode) {
 | 
				
			||||||
 | 
					      return { fieldnameMismatch: true };
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    return null;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  fieldnameMismatch = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // checkfieldnameEdit(): void {
 | 
				
			||||||
 | 
					  //   if (this.rowSelected.recaptcha !== this.fieldnameCode) {
 | 
				
			||||||
 | 
					  //     this.fieldnameMismatch = true;
 | 
				
			||||||
 | 
					  //   } else { this.fieldnameMismatch = false; }
 | 
				
			||||||
 | 
					  // }
 | 
				
			||||||
 | 
					  emailExistCheck() {
 | 
				
			||||||
 | 
					    console.log('input email: ', this.model.email);
 | 
				
			||||||
 | 
					    this.userRegistrationService.emailCheck(this.model.email)
 | 
				
			||||||
 | 
					      .subscribe((res) => {
 | 
				
			||||||
 | 
					        console.log('email check Res : ', res);
 | 
				
			||||||
 | 
					      }, (err) => {
 | 
				
			||||||
 | 
					        console.log(err);
 | 
				
			||||||
 | 
					      });
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  emailCheckForm: FormGroup;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  get f() {
 | 
				
			||||||
 | 
					    return this.emailCheckForm.controls;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // onSubmit() {
 | 
				
			||||||
 | 
					  //   console.log('this.emailCheckForm.value : ', this.emailCheckForm.value);
 | 
				
			||||||
 | 
					  //   this.userRegistrationService.emailCheck(this.emailCheckForm.value)
 | 
				
			||||||
 | 
					  //     .subscribe((res) => {
 | 
				
			||||||
 | 
					  //       console.log('success: ', res);
 | 
				
			||||||
 | 
					  //       let email: string = res.message;
 | 
				
			||||||
 | 
					  //       console.log(email);
 | 
				
			||||||
 | 
					  //       this.userRegistrationService.storeEmail(email);
 | 
				
			||||||
 | 
					  //       this.router.navigate(["/selfregistration"]);
 | 
				
			||||||
 | 
					  //     }, (err: HttpErrorResponse) => {
 | 
				
			||||||
 | 
					  //       console.log(err);
 | 
				
			||||||
 | 
					  //       console.log(err.error.message);
 | 
				
			||||||
 | 
					  //       if (err.status === 409) {
 | 
				
			||||||
 | 
					  //         this.emailErrMsg = 'Email Already Exists';
 | 
				
			||||||
 | 
					  //       } else {
 | 
				
			||||||
 | 
					  //         this.emailErrMsg = 'Server error';
 | 
				
			||||||
 | 
					  //       }
 | 
				
			||||||
 | 
					  //     });
 | 
				
			||||||
 | 
					  // }
 | 
				
			||||||
 | 
					  verifyButton = false;
 | 
				
			||||||
 | 
					  handleSuccess(e) {
 | 
				
			||||||
 | 
					    console.log("ReCaptcha", e);
 | 
				
			||||||
 | 
					    console.log(this.emailCheckForm.controls);
 | 
				
			||||||
 | 
					    const data: any = this.emailCheckForm.controls;
 | 
				
			||||||
 | 
					    if (data.recaptcha.status == "VALID") {
 | 
				
			||||||
 | 
					      this.verifyButton = true;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  result: any;
 | 
				
			||||||
 | 
					  otpfromuser: string = '';
 | 
				
			||||||
 | 
					  otpshow = false;
 | 
				
			||||||
 | 
					  onSubmit() {
 | 
				
			||||||
 | 
					    if (this.emailCheckForm.invalid) {
 | 
				
			||||||
 | 
					      this.submitted = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      console.log(`invalid form..`);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      Object.keys(this.emailCheckForm.controls).forEach(field => {
 | 
				
			||||||
 | 
					        const control = this.emailCheckForm.get(field);
 | 
				
			||||||
 | 
					        if (control && control.invalid) {
 | 
				
			||||||
 | 
					          console.log(`Error in field: ${field}`, control.errors);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					      );
 | 
				
			||||||
 | 
					      return;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    let email = this.emailCheckForm.value.email;
 | 
				
			||||||
 | 
					    console.log(this.emailCheckForm.value);
 | 
				
			||||||
 | 
					    delete this.emailCheckForm.value.recaptcha
 | 
				
			||||||
 | 
					    this.userRegistrationService.sendEmail(this.emailCheckForm.value).subscribe((res) => {
 | 
				
			||||||
 | 
					      // this.userService.storeEmail(email);
 | 
				
			||||||
 | 
					      // this.router.navigate(["/verify-account"])
 | 
				
			||||||
 | 
					      console.log(res);
 | 
				
			||||||
 | 
					      this.emailErrMsg = '';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      if (res) {
 | 
				
			||||||
 | 
					        this.otpshow = true;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    }, (err: HttpErrorResponse) => {
 | 
				
			||||||
 | 
					      console.log(err)
 | 
				
			||||||
 | 
					      if (err.status >= 400 && err.status <= 499) {
 | 
				
			||||||
 | 
					        this.emailErrMsg = 'Email Already Exists or Enter Correct Email';
 | 
				
			||||||
 | 
					      } else {
 | 
				
			||||||
 | 
					        this.emailErrMsg = 'Server error';
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    })
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  sendOTP(): void {
 | 
				
			||||||
 | 
					    this.userRegistrationService.sendOTP(this.emailCheckForm.value.email).subscribe(
 | 
				
			||||||
 | 
					      (response) => {
 | 
				
			||||||
 | 
					        const email = this.emailCheckForm.value.email
 | 
				
			||||||
 | 
					        console.log(`"${email}", please check and enter OTP from your email`, response);
 | 
				
			||||||
 | 
					        // this.toastr.success(`"${email}", please check and enter OTP from your email`)
 | 
				
			||||||
 | 
					        // Handle the response as needed
 | 
				
			||||||
 | 
					        this.otpfromuser = ''
 | 
				
			||||||
 | 
					        this.toastr.success(response?.msg.toString());
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      (error) => {
 | 
				
			||||||
 | 
					        console.error('Failed to send OTP:', error);
 | 
				
			||||||
 | 
					        // Handle errors
 | 
				
			||||||
 | 
					        if (error.status >= 400 && error.status <= 499) {
 | 
				
			||||||
 | 
					          this.toastr.error(error?.message.toString());
 | 
				
			||||||
 | 
					        } else if (error.status >= 500 && error.status <= 599) {
 | 
				
			||||||
 | 
					          this.toastr.error("server error");
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    );
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  emailotpMsg: string = "";
 | 
				
			||||||
 | 
					  verifyOTP(): void {
 | 
				
			||||||
 | 
					    this.userRegistrationService.verifyOTP(this.emailCheckForm.value.email, this.otpfromuser).subscribe(
 | 
				
			||||||
 | 
					      (response) => {
 | 
				
			||||||
 | 
					        console.log('OTP verification result:', response);
 | 
				
			||||||
 | 
					        // Handle the verification result as needed
 | 
				
			||||||
 | 
					        this.toastr.success(response?.msg.toString());
 | 
				
			||||||
 | 
					        setTimeout(() => {
 | 
				
			||||||
 | 
					          this.router.navigate(["../about-work"], { relativeTo: this.route, queryParams: { email: this.emailCheckForm.value.email } });
 | 
				
			||||||
 | 
					        }, 500);
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      (error) => {
 | 
				
			||||||
 | 
					        console.error('OTP verification failed:', error);
 | 
				
			||||||
 | 
					        // Handle errors
 | 
				
			||||||
 | 
					        if (error.status >= 400 && error.status <= 499) {
 | 
				
			||||||
 | 
					          // this.toastr.error(error?.error?.msg.toString());
 | 
				
			||||||
 | 
					          this.emailotpMsg = error?.error?.msg;
 | 
				
			||||||
 | 
					        } else if (error.status >= 500 && error.status <= 599) {
 | 
				
			||||||
 | 
					          this.emailotpMsg = 'Server error';
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    );
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  onSignUp() {
 | 
				
			||||||
 | 
					    this.router.navigate(["signup"]);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  goToLogin() {
 | 
				
			||||||
 | 
					    // window.location.href = `${this.baseUrl}/#/login`;
 | 
				
			||||||
 | 
					    this.router.navigate(["login"])
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user