Fairoj : Amt in words wrap and edit option for sales pd

This commit is contained in:
venbatechnologies@gmail.com 2019-11-27 13:27:41 +05:30
parent 3d1e753539
commit 48569627ca
16 changed files with 173 additions and 236831 deletions

View File

@ -15,6 +15,7 @@ import {AppVersion} from '@ionic-native/app-version'
import { SalesPDlistPage } from '../pages/sales_pd/pages/sales-p-dlist/sales-p-dlist'; import { SalesPDlistPage } from '../pages/sales_pd/pages/sales-p-dlist/sales-p-dlist';
import { HomePage, Section3 } from '../pages/sales_pd/pages/home/home'; import { HomePage, Section3 } from '../pages/sales_pd/pages/home/home';
import { ConstantsProvider } from '../providers/constants/constants'; import { ConstantsProvider } from '../providers/constants/constants';
import { SalesPdProvider } from '../pages/sales_pd/providers/sales-pd/sales-pd';
@Component({ @Component({
templateUrl: 'app.html' templateUrl: 'app.html'
@ -30,7 +31,7 @@ export class MyApp {
pages: Array<{title: string,icon:any, method: any}>; pages: Array<{title: string,icon:any, method: any}>;
protected app_version: string; protected app_version: string;
constructor(public platform: Platform, public statusBar: StatusBar, public splashScreen: SplashScreen,public aws:AwsServiceProvider,public shared:CognitoServiceProvider,public AWS:AwsServiceProvider,public alertCtrl:AlertController,private appVersionProvide:AppVersion,private events:Events,private constant:ConstantsProvider) { constructor(public platform: Platform, public statusBar: StatusBar, public splashScreen: SplashScreen,public aws:AwsServiceProvider,public shared:CognitoServiceProvider,public AWS:AwsServiceProvider,public alertCtrl:AlertController,private appVersionProvide:AppVersion,private events:Events,private constant:ConstantsProvider,private salesPDService:SalesPdProvider) {
this.initializeApp(); this.initializeApp();
this.changeDecision(); this.changeDecision();
@ -158,7 +159,8 @@ export class MyApp {
break; break;
case 2: case 2:
this.AWS.logout().subscribe(()=>{ this.AWS.logout().subscribe(()=>{
this.salesPDService.clearLocalData()
localStorage.removeItem('product_id_salesPD');
this.nav.setRoot(LoginPage); this.nav.setRoot(LoginPage);
}); });
break; break;

View File

@ -236,3 +236,25 @@ ion-content {
} }
} }
//FOR setAlertWithButtons Function
/* FOR ALERT */
.buttoncss{
color:rgb(13, 149, 212);
//background: green
button.alert-button:nth-child(1){
color: red;
border:1px solid red;
border-radius: 10px;
position: relative;
right:20px;
font-size: 14px;
}
button.alert-button:nth-child(2){
color: green;
border:1px solid green;
border-radius: 10px;
}
}

View File

@ -8,12 +8,13 @@
<div *ngIf="parent_ques.get('is_repeatable').value != '1'"> <div *ngIf="parent_ques.get('is_repeatable').value != '1'">
<mat-form-field style="width: 100%" *ngIf="parent_ques.get('type').value == '1'"> <mat-form-field style="width: 100%" *ngIf="parent_ques.get('type').value == '1'" [ngStyle]="{'margin-bottom':parent_ques.get('field_type').value == 'numtoword' ? '5%' : '0' }">
<mat-label>{{parent_ques.get('question').value}}</mat-label> <mat-label>{{parent_ques.get('question').value}}</mat-label>
<input matInput [type]="parent_ques.get('field_type').value == 'num' || parent_ques.get('field_type').value == 'numtoword' ? 'number' : parent_ques.get('field_type').value == 'string' ? 'text' : parent_ques.get('field_type').value" formControlName="answer_value" <input matInput [type]="parent_ques.get('field_type').value == 'num' || parent_ques.get('field_type').value == 'numtoword' ? 'number' : parent_ques.get('field_type').value == 'string' ? 'text' : parent_ques.get('field_type').value" formControlName="answer_value"
[placeholder]="parent_ques.get('field_type').value == 'num' || parent_ques.get('field_type').value == 'numtoword' ? 'Entert the Number' : 'Enter the Text'" [placeholder]="parent_ques.get('field_type').value == 'num' || parent_ques.get('field_type').value == 'numtoword' ? 'Entert the Number' : 'Enter the Text'"
autocomplete="off" (change)="onChangeProperty($event,parent_ques,p_i)"> autocomplete="off" (change)="onChangeProperty($event,parent_ques,'','',p_i)"
>
<mat-hint *ngIf="parent_ques.get('answer_value').value != '' && parent_ques.get('field_type').value == 'numtoword'" align="end" style="font-size: 12px;">{{"&#8377;"}}{{parent_ques.get('answer_value').value | numToWords}}</mat-hint> <mat-hint *ngIf="parent_ques.get('answer_value').value != '' && parent_ques.get('field_type').value == 'numtoword'" align="end" style="font-size: 12px;">{{"&#8377;"}}{{parent_ques.get('answer_value').value | numToWords}}</mat-hint>
<!-- <mat-hint align="end" style="font-size: 11.5px;color: gray;" *ngIf="parent_ques.get('is_amt_in_words').value == true">One Lack</mat-hint> --> <!-- <mat-hint align="end" style="font-size: 11.5px;color: gray;" *ngIf="parent_ques.get('is_amt_in_words').value == true">One Lack</mat-hint> -->
<ng-container *ngFor="let validation of parent_ques.get('validations').value;" ngProjectAs="mat-error"> <ng-container *ngFor="let validation of parent_ques.get('validations').value;" ngProjectAs="mat-error">
@ -23,7 +24,7 @@
<!-- <mat-form-field> --> <!-- <mat-form-field> -->
<div class="radio-gap" *ngIf="parent_ques.get('type').value == '2'"> <div class="radio-gap" *ngIf="parent_ques.get('type').value == '2'">
<mat-label>{{parent_ques.get('question').value}}</mat-label><br/> <mat-label>{{parent_ques.get('question').value}}</mat-label><br/>
<mat-radio-group aria-label="Select an option" formControlName="answer_value" (change)="onChangeProperty($event,parent_ques)"> <mat-radio-group aria-label="Select an option" formControlName="answer_value" (change)="onChangeProperty($event,parent_ques,'','',p_i)">
<mat-radio-button class="radio-btn-gap" *ngFor="let val of parent_ques.get('answers').value" [value]="val.hasOwnProperty('answer_id') ? val.answer_id : val.answer">{{val.answer}}</mat-radio-button><br /> <mat-radio-button class="radio-btn-gap" *ngFor="let val of parent_ques.get('answers').value" [value]="val.hasOwnProperty('answer_id') ? val.answer_id : val.answer">{{val.answer}}</mat-radio-button><br />
</mat-radio-group> </mat-radio-group>
<ng-container *ngFor="let validation of parent_ques.get('validations').value;" ngProjectAs="mat-error"> <ng-container *ngFor="let validation of parent_ques.get('validations').value;" ngProjectAs="mat-error">
@ -33,7 +34,7 @@
<mat-form-field style="width: 100%" *ngIf="parent_ques.get('type').value == '3'"> <mat-form-field style="width: 100%" *ngIf="parent_ques.get('type').value == '3'">
<mat-label>{{parent_ques.get('question').value}}</mat-label> <mat-label>{{parent_ques.get('question').value}}</mat-label>
<mat-select formControlName="answer_value" (selectionChange)="onChangeProperty($event,parent_ques,p_i)"> <mat-select formControlName="answer_value" (selectionChange)="onChangeProperty($event,parent_ques,'','',p_i)">
<mat-option *ngFor="let val of parent_ques.get('answers').value" [value]="val.hasOwnProperty('answer_id') ? val.answer_id : val.answer">{{val.answer}}</mat-option> <mat-option *ngFor="let val of parent_ques.get('answers').value" [value]="val.hasOwnProperty('answer_id') ? val.answer_id : val.answer">{{val.answer}}</mat-option>
</mat-select> </mat-select>
<!-- <mat-error align="end" style="font-style: italic;margin-right: 5px;">Field is Required</mat-error> --> <!-- <mat-error align="end" style="font-style: italic;margin-right: 5px;">Field is Required</mat-error> -->
@ -94,7 +95,7 @@
<mat-form-field style="width: 100%" *ngIf="parent_ques.get('type').value == '8'"> <mat-form-field style="width: 100%" *ngIf="parent_ques.get('type').value == '8'">
<mat-label>{{parent_ques.get('question').value}}</mat-label> <mat-label>{{parent_ques.get('question').value}}</mat-label>
<mat-select formControlName="answer_value" (selectionChange)="onChangeProperty($event,parent_ques,p_i)"> <mat-select formControlName="answer_value" (selectionChange)="onChangeProperty($event,parent_ques,'','',p_i)">
<mat-option> <mat-option>
<ngx-mat-select-search formControlName="select_search" <ngx-mat-select-search formControlName="select_search"
[placeholderLabel]="'Search'" [placeholderLabel]="'Search'"
@ -145,7 +146,7 @@
*ngFor="let single_ques of group_ques.controls.questions['controls'];let s_i=index;let s_l=last" *ngFor="let single_ques of group_ques.controls.questions['controls'];let s_i=index;let s_l=last"
[formGroupName]="s_i"> [formGroupName]="s_i">
<mat-form-field style="width: 100%" *ngIf="single_ques.get('type').value == '1'"> <mat-form-field style="width: 100%" *ngIf="single_ques.get('type').value == '1'" [ngStyle]="{'margin-bottom':single_ques.get('field_type').value == 'numtoword' ? '5%' : '0' }">
<mat-label>{{single_ques.get('question').value}}</mat-label> <mat-label>{{single_ques.get('question').value}}</mat-label>
<input matInput [type]="single_ques.get('field_type').value == 'num' || single_ques.get('field_type').value == 'numtoword' ? 'number' : single_ques.get('field_type').value == 'string' ? 'text' : single_ques.get('field_type').value" formControlName="answer_value" <input matInput [type]="single_ques.get('field_type').value == 'num' || single_ques.get('field_type').value == 'numtoword' ? 'number' : single_ques.get('field_type').value == 'string' ? 'text' : single_ques.get('field_type').value" formControlName="answer_value"
[placeholder]="single_ques.get('field_type').value == 'num' || single_ques.get('field_type').value == 'numtoword' ? 'Enter the Number' : 'Enter the Text'" [placeholder]="single_ques.get('field_type').value == 'num' || single_ques.get('field_type').value == 'numtoword' ? 'Enter the Number' : 'Enter the Text'"
@ -159,7 +160,7 @@
<div class="radio-gap" *ngIf="single_ques.get('type').value == '2'"> <div class="radio-gap" *ngIf="single_ques.get('type').value == '2'">
<mat-label>{{single_ques.get('question').value}}</mat-label><br/> <mat-label>{{single_ques.get('question').value}}</mat-label><br/>
<mat-radio-group aria-label="Select an option" formControlName="answer_value" (change)="onChangeProperty($event,single_ques,group_ques,2)"> <mat-radio-group aria-label="Select an option" formControlName="answer_value" (change)="onChangeProperty($event,single_ques,group_ques,2,s_i)">
<mat-radio-button class="radio-btn-gap" *ngFor="let val of single_ques.get('answers').value" [value]="val.hasOwnProperty('answer_id') ? val.answer_id : val.answer">{{val.answer}}</mat-radio-button><br /> <mat-radio-button class="radio-btn-gap" *ngFor="let val of single_ques.get('answers').value" [value]="val.hasOwnProperty('answer_id') ? val.answer_id : val.answer">{{val.answer}}</mat-radio-button><br />
</mat-radio-group> </mat-radio-group>
<ng-container *ngFor="let validation of single_ques.get('validations').value;" ngProjectAs="mat-error"> <ng-container *ngFor="let validation of single_ques.get('validations').value;" ngProjectAs="mat-error">
@ -169,7 +170,7 @@
<mat-form-field style="width: 100%" *ngIf="single_ques.get('type').value == '3'"> <mat-form-field style="width: 100%" *ngIf="single_ques.get('type').value == '3'">
<mat-label>{{single_ques.get('question').value}}</mat-label> <mat-label>{{single_ques.get('question').value}}</mat-label>
<mat-select formControlName="answer_value" (selectionChange)="onChangeProperty($event,single_ques,group_ques,2)"> <mat-select formControlName="answer_value" (selectionChange)="onChangeProperty($event,single_ques,group_ques,2,s_i)">
<mat-option *ngFor="let val of single_ques.get('answers').value" [value]="val.hasOwnProperty('answer_id') ? val.answer_id : val.answer">{{val.answer}}</mat-option> <mat-option *ngFor="let val of single_ques.get('answers').value" [value]="val.hasOwnProperty('answer_id') ? val.answer_id : val.answer">{{val.answer}}</mat-option>
</mat-select> </mat-select>
<!-- <mat-error align="end" style="font-style: italic;margin-right: 5px;">Field is Required</mat-error> --> <!-- <mat-error align="end" style="font-style: italic;margin-right: 5px;">Field is Required</mat-error> -->

View File

@ -35,6 +35,7 @@ export class QuesTemplateComponent {
fileredSearchValue: any=[]; fileredSearchValue: any=[];
protected _onDestroy=new Subject<void>(); protected _onDestroy=new Subject<void>();
submit_btn: boolean=false; submit_btn: boolean=false;
original_result_data: any;
constructor(private _fb:FormBuilder,private questionService:QuesServiceProvider,private salesPDProvider:SalesPdProvider,private camera:Camera,private cameraProvider:CameraProvider,private constantProvider:ConstantsProvider,private toastProvider:ToastProvider,private loadingProvider:LoadingProvider) { constructor(private _fb:FormBuilder,private questionService:QuesServiceProvider,private salesPDProvider:SalesPdProvider,private camera:Camera,private cameraProvider:CameraProvider,private constantProvider:ConstantsProvider,private toastProvider:ToastProvider,private loadingProvider:LoadingProvider) {
console.log('Hello QuesTemplateComponent Component'); console.log('Hello QuesTemplateComponent Component');
this.text = 'Hello World'; this.text = 'Hello World';
@ -58,8 +59,48 @@ export class QuesTemplateComponent {
this.quesAnsForm=this.questionService.assignFormControl_array(this.quesAnsForm,this.local_ques_JSON.questions) this.quesAnsForm=this.questionService.assignFormControl_array(this.quesAnsForm,this.local_ques_JSON.questions)
console.log(this.quesAnsForm); console.log(this.quesAnsForm);
this.salesPDProvider.getData_fromLocal('sec'+this.local_ques_JSON.section_id).then(resultData=>{
this.original_result_data=resultData
if(resultData){
this.checkGroupandPatchValues()
}
})
} }
} }
}
checkGroupandPatchValues(){
let modified=this.original_result_data
let group_ques=modified.questions.map(val=>{
if(val.hasOwnProperty('questions_group'))
{
return val.questions_group
}
});
console.log("grou",group_ques);
group_ques=group_ques.filter(val=>val != undefined)
if(group_ques.length > 0){
// group_ques=group_ques[0]
// // let group_ques2=group_ques.splice(1,0)
// let group_ques2=group_ques
// // group_ques2= group_ques2.splice(1,1);
group_ques.forEach((group_ques2,p_index)=>{
console.log("after shift",group_ques2);
if(group_ques2.length > 0){
group_ques2.forEach((res,index)=>
{
console.log(res,index);
if(index != 0){
let parent_control=this.quesAnsForm.get('questions')['controls'][p_index] as FormArray
console.log(parent_control);
this.addData(index-1,parent_control,res.questions,'','')
}
})
}
})
}
console.log("rr",this.original_result_data.questions)
this.quesAnsForm.get('questions').patchValue(this.original_result_data.questions);
} }
setStep(index: number) { setStep(index: number) {
this.step = index; this.step = index;
@ -114,7 +155,9 @@ export class QuesTemplateComponent {
} }
else { else {
let control: any = parent_index['controls'].questions_group as FormArray let control: any = parent_index['controls'].questions_group as FormArray
if(event!= ''){
event.stopPropagation() event.stopPropagation()
}
this.step = control.length this.step = control.length
control.push(this._fb.group({ 'questions': this._fb.array([]) })) control.push(this._fb.group({ 'questions': this._fb.array([]) }))
let sub_childControl: any = control.controls[group_index + 1].get('questions') as FormArray let sub_childControl: any = control.controls[group_index + 1].get('questions') as FormArray
@ -362,7 +405,7 @@ export class QuesTemplateComponent {
proceedValidationSet(validation_obj,group_ques,sec_index,validator_single?){ proceedValidationSet(validation_obj,group_ques,sec_index,validator_single?){
let ques_control; let ques_control;
if(validation_obj.validation_to == null){ if(validation_obj.validation_to == null){
console.log("entered"); console.log("entered",group_ques,sec_index);
ques_control=group_ques.controls.questions['controls'][sec_index] ques_control=group_ques.controls.questions['controls'][sec_index]
console.log('im* im',validation_obj,validator_single); console.log('im* im',validation_obj,validator_single);

View File

@ -23,7 +23,7 @@ import { LoadingProvider } from '../../../../providers/common-provider/loading';
export class HomePage{ export class HomePage{
productList: any; productList: any;
product:string=''; product:string='';
constructor(public navCtrl: NavController, public navParams: NavParams,private toastProvider:ToastProvider,private pdTriggerProvider:PdtriggerProvider){ constructor(public navCtrl: NavController, public navParams: NavParams,private toastProvider:ToastProvider,private pdTriggerProvider:PdtriggerProvider,private salesPDService:SalesPdProvider){
this.getProducts() this.getProducts()
} }
getProducts(){ getProducts(){
@ -32,9 +32,32 @@ export class HomePage{
this.pdTriggerProvider.getEntityPreferences(users.fk_entity_id).subscribe(result=>{ this.pdTriggerProvider.getEntityPreferences(users.fk_entity_id).subscribe(result=>{
if(result['dataStatus']){ if(result['dataStatus']){
this.productList=result['records'].products; this.productList=result['records'].products;
let old_product_id=localStorage.getItem('product_id_salesPD')
this.product=old_product_id
} }
}) })
} }
getProductForAlert(event){
let old_product_id=localStorage.getItem('product_id_salesPD')
console.log(event.value,old_product_id)
if(old_product_id && old_product_id != event.value){
let btns={button1:'Cancel',button2:'Ok'}
let alert = this.toastProvider.setAlertWithButtons("<small>Data will be Lost<small>", "Your existing data will be lost if you change the Product",btns)
alert.present();
alert.onDidDismiss((data) => {
if (data == false) {
this.product=old_product_id
}
else {
// let product= localStorage.getItem('product_id_salesPD')
// this.navCtrl.push(Section1,{product_id:product})
localStorage.removeItem('product_id_salesPD');
this.salesPDService.clearLocalData()
}
})
}
}
sendProduct(){ sendProduct(){
if(this.product != ''){ if(this.product != ''){
localStorage.setItem('product_id_salesPD',this.product) localStorage.setItem('product_id_salesPD',this.product)
@ -395,6 +418,8 @@ export class Section7 {
this.toastProvider.lenderappmessage("Saved Successfully..!"); this.toastProvider.lenderappmessage("Saved Successfully..!");
this.SalesPDService.clearLocalData()
localStorage.removeItem('product_id_salesPD')
setTimeout(()=>{ setTimeout(()=>{
this.navCtrl.setRoot(SalesPDlistPage) this.navCtrl.setRoot(SalesPDlistPage)
},2000) },2000)
@ -454,6 +479,8 @@ export class Section8 {
this.toastProvider.lenderappmessage("Saved Successfully..!"); this.toastProvider.lenderappmessage("Saved Successfully..!");
this.SalesPDService.clearLocalData()
localStorage.removeItem('product_id_salesPD')
setTimeout(()=>{ setTimeout(()=>{
this.navCtrl.setRoot(SalesPDlistPage) this.navCtrl.setRoot(SalesPDlistPage)
},2000) },2000)
@ -518,6 +545,8 @@ export class Section9 {
this.SalesPDService.clearLocalData() this.SalesPDService.clearLocalData()
this.toastProvider.lenderappmessage("Saved Successfully..!"); this.toastProvider.lenderappmessage("Saved Successfully..!");
this.SalesPDService.clearLocalData()
localStorage.removeItem('product_id_salesPD')
setTimeout(()=>{ setTimeout(()=>{
this.navCtrl.setRoot(SalesPDlistPage) this.navCtrl.setRoot(SalesPDlistPage)
},2000) },2000)

View File

@ -30,7 +30,7 @@
padding: 10px; padding: 10px;
margin: 5px; margin: 5px;
white-space: pre-line; white-space: pre-line;
border-radius: 10px;" *ngFor="let val of productList" [value]="val.product_id" ><span>{{val.product_abbr}}</span></mat-radio-button> border-radius: 10px;" *ngFor="let val of productList" [value]="val.product_id" (change)="getProductForAlert($event)"><span>{{val.product_abbr}}</span></mat-radio-button>
</mat-radio-group><br/> </mat-radio-group><br/>
<!-- </mat-form-field> --> <!-- </mat-form-field> -->
<ion-buttons end> <ion-buttons end>

View File

@ -1,7 +1,8 @@
import { Component } from '@angular/core'; import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular'; import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { SalesPdProvider } from '../../providers/sales-pd/sales-pd'; import { SalesPdProvider } from '../../providers/sales-pd/sales-pd';
import { HomePage } from '../home/home'; import { HomePage, Section1 } from '../home/home';
import { ToastProvider } from '../../../../providers/common-provider/toast';
/** /**
* Generated class for the SalesPDlistPage page. * Generated class for the SalesPDlistPage page.
@ -18,13 +19,13 @@ import { HomePage } from '../home/home';
export class SalesPDlistPage { export class SalesPDlistPage {
sales_displayValue: any=[]; sales_displayValue: any=[];
constructor(public navCtrl: NavController, public navParams: NavParams,private salesPDService:SalesPdProvider) { constructor(public navCtrl: NavController, public navParams: NavParams,private salesPDService:SalesPdProvider,private toastProvider:ToastProvider) {
} }
ionViewDidLoad() { ionViewDidLoad() {
console.log('ionViewDidLoad SalesPDlistPage'); console.log('ionViewDidLoad SalesPDlistPage');
this.getListofPD() this.getListofPD()
this.salesPDService.clearLocalData(); // this.salesPDService.clearLocalData();
} }
getListofPD(){ getListofPD(){
this.salesPDService.getSalesPDList().subscribe(res=>{ this.salesPDService.getSalesPDList().subscribe(res=>{
@ -35,7 +36,34 @@ export class SalesPDlistPage {
}) })
} }
newForm(){ newForm(){
console.log("chec") this.salesPDService.getData_fromLocal('sec1').then(result=>{
console.log("image",result);
if(result){
this.alertDecision()
}
else{
this.navCtrl.push(HomePage) this.navCtrl.push(HomePage)
} }
});
}
alertDecision(){
let btns={button1:'FreshPD',button2:'Continue'}
let alert = this.toastProvider.setAlertWithButtons("<small>You have one Incomplete PD<small>", "<strong>Are You Continue with that or Start with Fresh PD<br/><small>Note:Starting Fresh PD will Delete the existing one.</small></strong>",btns)
alert.present();
alert.onDidDismiss((data) => {
if (data == false) {
this.salesPDService.clearLocalData()
localStorage.removeItem('product_id_salesPD')
this.navCtrl.push(HomePage)
console.log(data)
}
else {
let product= localStorage.getItem('product_id_salesPD')
this.navCtrl.push(Section1,{product_id:product})
}
})
}
} }

View File

@ -174,7 +174,7 @@ apiurl:any;
getlocale(){ getlocale(){
let session:any = this.shared.getToken() || null; let session:any = this.shared.getToken() || null;
let userid let userid=''
if(session != null){ if(session != null){
userid= session.idToken.payload.locale; userid= session.idToken.payload.locale;
} }

View File

@ -33,5 +33,34 @@ export class ToastProvider {
}); });
alert.present(); alert.present();
}
setAlertWithButtons(title_name,msg,buttons){
let alert=this.alertCtrl.create({
title:title_name,
message:msg,
cssClass:'buttoncss',
enableBackdropDismiss:false,
buttons:[{
text:buttons.button1,
cssClass:'btnNo',
handler:()=>{
alert.dismiss(false)
return false
}
},{
text:buttons.button2,
cssClass:'btnYes',
handler:()=>{
alert.dismiss('s')
return false
}
},
]
});
//alert.present()
return alert
} }
} }

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
null

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,9 +1,6 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en" dir="ltr"> <html lang="en" dir="ltr">
<head> <head>
<script data-ionic="inject">
(function(w){var i=w.Ionic=w.Ionic||{};i.version='3.9.2';i.angular='5.0.3';i.staticDir='build/';})(window);
</script>
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>Ionic App</title> <title>Ionic App</title>
<meta name="viewport" content="viewport-fit=cover, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"> <meta name="viewport" content="viewport-fit=cover, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">