app update
@@ -6,3 +6,7 @@ node_modules
|
||||
.angular/cache/*
|
||||
ios
|
||||
andriod
|
||||
www
|
||||
www/*
|
||||
.angular/cache
|
||||
.angular/cache/14.2.0/*
|
||||
|
||||
@@ -1,2 +1,5 @@
|
||||
npm install @capacitor/assets --save-dev
|
||||
npx capacitor-assets generate
|
||||
npx capacitor-assets generate
|
||||
|
||||
|
||||
ionic generate page familylogin
|
||||
|
Before Width: | Height: | Size: 172 KiB After Width: | Height: | Size: 196 KiB |
|
Before Width: | Height: | Size: 291 KiB After Width: | Height: | Size: 105 KiB |
@@ -130,6 +130,10 @@ const routes: Routes = [
|
||||
path: 'receipt',
|
||||
loadChildren: () => import('./pages/receipt/receipt.module').then(m => m.ReceiptPageModule)
|
||||
},
|
||||
{
|
||||
path: 'familylogin',
|
||||
loadChildren: () => import('./pages/familylogin/familylogin.module').then(m => m.FamilyloginPageModule)
|
||||
},
|
||||
|
||||
];
|
||||
@NgModule({
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { Routes, RouterModule } from '@angular/router';
|
||||
|
||||
import { FamilyloginPage } from './familylogin.page';
|
||||
|
||||
const routes: Routes = [
|
||||
{
|
||||
path: '',
|
||||
component: FamilyloginPage
|
||||
}
|
||||
];
|
||||
|
||||
@NgModule({
|
||||
imports: [RouterModule.forChild(routes)],
|
||||
exports: [RouterModule],
|
||||
})
|
||||
export class FamilyloginPageRoutingModule {}
|
||||
@@ -0,0 +1,20 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { FormsModule } from '@angular/forms';
|
||||
|
||||
import { IonicModule } from '@ionic/angular';
|
||||
|
||||
import { FamilyloginPageRoutingModule } from './familylogin-routing.module';
|
||||
|
||||
import { FamilyloginPage } from './familylogin.page';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
FormsModule,
|
||||
IonicModule,
|
||||
FamilyloginPageRoutingModule
|
||||
],
|
||||
declarations: [FamilyloginPage]
|
||||
})
|
||||
export class FamilyloginPageModule {}
|
||||
@@ -0,0 +1,68 @@
|
||||
<ion-content class="ion-padding">
|
||||
<div class="ion-padding space">
|
||||
<div>
|
||||
|
||||
<ion-label class="simp_lbl">Family Login</ion-label>
|
||||
|
||||
<!-- <ion-grid>-->
|
||||
<!-- <ion-row>-->
|
||||
<!-- <ion-col>-->
|
||||
<!-- <ion-button expand="block" fill="outline" >Login</ion-button>-->
|
||||
<!-- </ion-col>-->
|
||||
<!-- <ion-col>-->
|
||||
<!-- <ion-button expand="block" class="login-type" (click)="familyLogin()">-->
|
||||
<!-- <ion-icon slot="start" name="star"></ion-icon>-->
|
||||
<!-- Family</ion-button>-->
|
||||
<!-- </ion-col>-->
|
||||
|
||||
<!-- </ion-row>-->
|
||||
<!-- </ion-grid>-->
|
||||
|
||||
<ion-item lines="none">
|
||||
<ion-icon slot="start" name="mail-outline"></ion-icon>
|
||||
<ion-input type="email" placeholder="Username" [(ngModel)]='username'></ion-input>
|
||||
</ion-item>
|
||||
|
||||
<ion-item lines="none">
|
||||
<ion-icon slot="start" name="lock-closed-outline"></ion-icon>
|
||||
<ion-input type="password" placeholder="PIN" [(ngModel)]='password'></ion-input>
|
||||
</ion-item>
|
||||
|
||||
<div class="check">
|
||||
<ion-checkbox mode="md" checked></ion-checkbox>
|
||||
<ion-label>Remember me</ion-label>
|
||||
</div>
|
||||
|
||||
<ion-button expand="block" (click)="startLogin()">
|
||||
Login
|
||||
</ion-button>
|
||||
|
||||
<!-- <ion-label class="forgot_lbl" (click)="onForgot()">Forgot your password ?</ion-label>-->
|
||||
|
||||
<ion-label class="or">Or return to general accounts</ion-label>
|
||||
|
||||
<!-- <div class="button">-->
|
||||
<!-- <ion-buttons>-->
|
||||
<!-- <ion-button>-->
|
||||
<!-- <ion-icon name="logo-facebook"></ion-icon>-->
|
||||
<!-- </ion-button>-->
|
||||
<!-- </ion-buttons>-->
|
||||
|
||||
<!-- <ion-buttons>-->
|
||||
<!-- <ion-button>-->
|
||||
<!-- <ion-icon name="logo-google"></ion-icon>-->
|
||||
<!-- </ion-button>-->
|
||||
<!-- </ion-buttons>-->
|
||||
|
||||
<!-- <ion-buttons>-->
|
||||
<!-- <ion-button>-->
|
||||
<!-- <ion-icon name="logo-twitter"></ion-icon>-->
|
||||
<!-- </ion-button>-->
|
||||
<!-- </ion-buttons>-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
<div class="bottom">
|
||||
<ion-label class="last_lbl">Have an account? <span (click)="userLogin()">login</span></ion-label>
|
||||
</div>
|
||||
</div>
|
||||
</ion-content>
|
||||
@@ -0,0 +1,94 @@
|
||||
ion-content {
|
||||
.simp_lbl {
|
||||
margin-top: 20px;
|
||||
font-size: 30px;
|
||||
letter-spacing: 1.2;
|
||||
margin-bottom: 30px;
|
||||
font-family: 'semi-bold';
|
||||
}
|
||||
.login-type{
|
||||
background-color: #3dc2ff;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
ion-item {
|
||||
--background: #f7f7f7;
|
||||
border-radius: 10px;
|
||||
margin-bottom: 24px;
|
||||
|
||||
ion-input {
|
||||
--padding-start: 10px;
|
||||
font-family: "regular";
|
||||
height: 50px;
|
||||
}
|
||||
|
||||
ion-icon {
|
||||
font-size: 22px;
|
||||
}
|
||||
}
|
||||
|
||||
.check {
|
||||
margin-top: 2rem;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
ion-label {
|
||||
font-size: 14px;
|
||||
margin-left: 10px;
|
||||
color: var(--ion-color-primary);
|
||||
}
|
||||
}
|
||||
|
||||
ion-button {
|
||||
--border-radius: 10px;
|
||||
margin-top: 1.5rem;
|
||||
height: 50px;
|
||||
}
|
||||
|
||||
.forgot_lbl {
|
||||
text-align: center;
|
||||
margin-top: 10px;
|
||||
font-size: 14px;
|
||||
color: var(--ion-color-primary);
|
||||
}
|
||||
|
||||
.or {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
margin-top: 10px;
|
||||
color: grey;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.button {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
text-align: center;
|
||||
justify-content: center;
|
||||
margin-top: 1rem;
|
||||
margin-bottom: 1rem;
|
||||
|
||||
ion-buttons {
|
||||
margin: 0 10px;
|
||||
|
||||
ion-button {
|
||||
box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.3);
|
||||
border-radius: 10px;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.last_lbl {
|
||||
text-align: center;
|
||||
margin-top: 16px;
|
||||
font-size: 16px;
|
||||
color: #c2c2cb;
|
||||
|
||||
span {
|
||||
color: var(--ion-color-primary);
|
||||
font-family: "bold";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||
import { IonicModule } from '@ionic/angular';
|
||||
|
||||
import { FamilyloginPage } from './familylogin.page';
|
||||
|
||||
describe('FamilyloginPage', () => {
|
||||
let component: FamilyloginPage;
|
||||
let fixture: ComponentFixture<FamilyloginPage>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ FamilyloginPage ],
|
||||
imports: [IonicModule.forRoot()]
|
||||
}).compileComponents();
|
||||
|
||||
fixture = TestBed.createComponent(FamilyloginPage);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
}));
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,19 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import {Router} from "@angular/router";
|
||||
|
||||
@Component({
|
||||
selector: 'app-familylogin',
|
||||
templateUrl: './familylogin.page.html',
|
||||
styleUrls: ['./familylogin.page.scss'],
|
||||
})
|
||||
export class FamilyloginPage implements OnInit {
|
||||
|
||||
constructor( private router: Router) { }
|
||||
|
||||
ngOnInit() {
|
||||
}
|
||||
|
||||
userLogin(){
|
||||
this.router.navigate(['login']);
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,20 @@
|
||||
|
||||
<ion-label class="simp_lbl">Login to continue</ion-label>
|
||||
|
||||
<ion-grid>
|
||||
<ion-row>
|
||||
<ion-col>
|
||||
<!-- <ion-button expand="block" fill="outline" >Login</ion-button>-->
|
||||
</ion-col>
|
||||
<ion-col>
|
||||
<ion-button expand="block" class="login-type" (click)="familyLogin()">
|
||||
<ion-icon slot="start" name="star"></ion-icon>
|
||||
Family</ion-button>
|
||||
</ion-col>
|
||||
|
||||
</ion-row>
|
||||
</ion-grid>
|
||||
|
||||
<ion-item lines="none">
|
||||
<ion-icon slot="start" name="mail-outline"></ion-icon>
|
||||
<ion-input type="email" placeholder="Email" [(ngModel)]='username'></ion-input>
|
||||
|
||||
@@ -6,6 +6,10 @@ ion-content {
|
||||
margin-bottom: 30px;
|
||||
font-family: 'semi-bold';
|
||||
}
|
||||
.login-type{
|
||||
background-color: #3dc2ff;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
ion-item {
|
||||
--background: #f7f7f7;
|
||||
|
||||
@@ -86,5 +86,7 @@ getBlogData(){
|
||||
alert.present();*/
|
||||
alert(amessage);
|
||||
}
|
||||
|
||||
familyLogin(){
|
||||
this.router.navigate(['familylogin']);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<ion-icon name="eye-outline" color="dark"></ion-icon>
|
||||
<ion-label>Dark Theme</ion-label>
|
||||
<ion-toggle slot="end" name="grape" color="tertiary"></ion-toggle>
|
||||
</ion-item> -->
|
||||
</ion-item> ii -->
|
||||
|
||||
|
||||
<ion-item lines="none" (click)="onPrivacy()">
|
||||
|
||||
|
After Width: | Height: | Size: 84 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 713 B |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 15 KiB |
@@ -1,7 +1,7 @@
|
||||
export const environment = {
|
||||
production: false,
|
||||
apiKey: '', // <-- Enter your own key here!'
|
||||
baseUrl: 'https://apigate.lotus.g1.wrenchboard.com/svs/user',
|
||||
images: 'https://apigate.lotus.g1.wrenchboard.com/svs/user',
|
||||
baseUrl: 'https://apigate.lotus.g1.wrenchboard.com/en/wrench/api/v1',
|
||||
images: 'https://apigate.lotus.g1.wrenchboard.com/en/wrench/api/v1/',
|
||||
};
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
<preference name="SplashScreenDelay" value="3000" />
|
||||
<preference name="orientation" value="portrait" />
|
||||
|
||||
<link rel="icon" type="image/png" href="assets/icon/favicon.png" />
|
||||
<link rel="icon" type="image/png" href="/assets/icon/favicon-32x32.png" />
|
||||
|
||||
<!-- add to homescreen for ios -->
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
|
||||