6 Commits

Author SHA1 Message Date
Huffle
2bcc2c9585 change app name
Some checks failed
Backend Build and Test / build (push) Has been cancelled
2025-05-28 10:25:39 +02:00
Huffle
ef1dcce2e7 add app logo
All checks were successful
Backend Build and Test / build (push) Successful in 2m52s
2025-05-28 10:18:21 +02:00
Huffle
720ef83c2e change font size and move add and delete button in edit screens (#128)
All checks were successful
Backend Deploy / build (push) Successful in 18s
Backend Build and Test / build (push) Successful in 2m35s
closes #118
closes #119

Reviewed-on: #128
2025-05-28 10:00:18 +02:00
Huffle
5b1d107cac make done button bigger (#127)
All checks were successful
Backend Deploy / build (push) Successful in 20s
Backend Build and Test / build (push) Successful in 2m39s
closes #122

Reviewed-on: #127
2025-05-28 09:31:07 +02:00
Huffle
662257ebc5 fix statusbar (#126)
All checks were successful
Backend Deploy / build (push) Successful in 24s
Backend Build and Test / build (push) Successful in 2m59s
closes #123

Reviewed-on: #126
2025-05-28 09:18:29 +02:00
Huffle
ad48882bca icon (#115)
All checks were successful
Backend Build and Test / build (push) Successful in 3m16s
Backend Deploy / build (push) Successful in 22s
Reviewed-on: #115
2025-05-27 19:13:23 +02:00
45 changed files with 3537 additions and 42 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.0 KiB

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 119 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -1,5 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android"> <adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@color/ic_launcher_background"/> <background>
<foreground android:drawable="@mipmap/ic_launcher_foreground"/> <inset android:drawable="@mipmap/ic_launcher_background" android:inset="16.7%" />
</background>
<foreground>
<inset android:drawable="@mipmap/ic_launcher_foreground" android:inset="16.7%" />
</foreground>
</adaptive-icon> </adaptive-icon>

View File

@@ -1,5 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android"> <adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@color/ic_launcher_background"/> <background>
<foreground android:drawable="@mipmap/ic_launcher_foreground"/> <inset android:drawable="@mipmap/ic_launcher_background" android:inset="16.7%" />
</background>
<foreground>
<inset android:drawable="@mipmap/ic_launcher_foreground" android:inset="16.7%" />
</foreground>
</adaptive-icon> </adaptive-icon>

Binary file not shown.

After

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 408 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1006 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -1,7 +1,7 @@
<?xml version='1.0' encoding='utf-8'?> <?xml version='1.0' encoding='utf-8'?>
<resources> <resources>
<string name="app_name">allowance-planner-v2</string> <string name="app_name">Allowance Planner V2</string>
<string name="title_activity_main">allowance-planner-v2</string> <string name="title_activity_main">Allowance Planner V2</string>
<string name="package_name">io.ionic.starter</string> <string name="package_name">io.ionic.starter</string>
<string name="custom_url_scheme">io.ionic.starter</string> <string name="custom_url_scheme">io.ionic.starter</string>
</resources> </resources>

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

View File

@@ -2,7 +2,7 @@ import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = { const config: CapacitorConfig = {
appId: 'io.ionic.starter', appId: 'io.ionic.starter',
appName: 'allowance-planner-v2', appName: 'Allowance Planner V2',
webDir: 'www' webDir: 'www'
}; };

File diff suppressed because it is too large Load Diff

View File

@@ -47,6 +47,7 @@
"@angular/cli": "^19.0.0", "@angular/cli": "^19.0.0",
"@angular/compiler-cli": "^19.0.0", "@angular/compiler-cli": "^19.0.0",
"@angular/language-service": "^19.0.0", "@angular/language-service": "^19.0.0",
"@capacitor/assets": "^3.0.5",
"@capacitor/cli": "7.2.0", "@capacitor/cli": "7.2.0",
"@ionic/angular-toolkit": "^12.0.0", "@ionic/angular-toolkit": "^12.0.0",
"@types/jasmine": "~5.1.0", "@types/jasmine": "~5.1.0",

View File

@@ -30,8 +30,7 @@ button {
color: white; color: white;
padding: 10px; padding: 10px;
width: 250px; width: 250px;
margin-top: auto; margin-top: 100px;
margin-bottom: 50px;
} }
button:disabled, button:disabled,

View File

@@ -36,7 +36,7 @@ export class AllowancePage implements ViewWillEnter {
allowance[0].name = 'Main Allowance'; allowance[0].name = 'Main Allowance';
this.allowance$.next(allowance); this.allowance$.next(allowance);
}) })
}, 50); }, 100);
} }
canFinishGoal(allowance: Allowance): boolean { canFinishGoal(allowance: Allowance): boolean {

View File

@@ -7,11 +7,6 @@
<ion-title *ngIf="isAddMode">Create Goal</ion-title> <ion-title *ngIf="isAddMode">Create Goal</ion-title>
<ion-title *ngIf="!isAddMode && goalId != 0">Edit Goal</ion-title> <ion-title *ngIf="!isAddMode && goalId != 0">Edit Goal</ion-title>
<ion-title *ngIf="!isAddMode && goalId == 0">Edit Allowance</ion-title> <ion-title *ngIf="!isAddMode && goalId == 0">Edit Allowance</ion-title>
<button
*ngIf="!isAddMode && goalId !=0"
class="remove-button"
(click)="deleteAllowance()"
>Delete Goal</button>
</div> </div>
</ion-toolbar> </ion-toolbar>
</ion-header> </ion-header>
@@ -43,5 +38,10 @@
<span *ngIf="!isAddMode && goalId != 0">Update Goal</span> <span *ngIf="!isAddMode && goalId != 0">Update Goal</span>
<span *ngIf="!isAddMode && goalId == 0">Update Allowance</span> <span *ngIf="!isAddMode && goalId == 0">Update Allowance</span>
</button> </button>
<button
*ngIf="!isAddMode && goalId !=0"
class="remove-button"
(click)="deleteAllowance()"
>Delete Goal</button>
</form> </form>
</ion-content> </ion-content>

View File

@@ -4,10 +4,8 @@
} }
.remove-button { .remove-button {
background-color: var(--ion-color-primary); margin-top: 10px;
margin-right: 15px; background-color: var(--negative-amount-color);
width: 100px;
margin-bottom: 0;
} }
form { form {
@@ -47,8 +45,7 @@ button {
color: white; color: white;
padding: 10px; padding: 10px;
width: 250px; width: 250px;
margin-top: auto; margin-top: 100px;
margin-bottom: 50px;
} }
button:disabled, button:disabled,

View File

@@ -6,11 +6,6 @@
</div> </div>
<ion-title *ngIf="isAddMode">Create Task</ion-title> <ion-title *ngIf="isAddMode">Create Task</ion-title>
<ion-title *ngIf="!isAddMode">Edit Task</ion-title> <ion-title *ngIf="!isAddMode">Edit Task</ion-title>
<button
*ngIf="!isAddMode"
class="remove-button"
(click)="deleteTask()"
>Delete task</button>
</div> </div>
</ion-toolbar> </ion-toolbar>
</ion-header> </ion-header>
@@ -32,5 +27,10 @@
<span *ngIf="isAddMode">Add Task</span> <span *ngIf="isAddMode">Add Task</span>
<span *ngIf="!isAddMode">Update Task</span> <span *ngIf="!isAddMode">Update Task</span>
</button> </button>
<button
*ngIf="!isAddMode"
class="remove-button"
(click)="deleteTask()"
>Delete task</button>
</form> </form>
</ion-content> </ion-content>

View File

@@ -4,10 +4,8 @@
} }
.remove-button { .remove-button {
background-color: var(--ion-color-primary); margin-top: 10px;
margin-right: 15px; background-color: var(--negative-amount-color);
width: 95px;
margin-bottom: 0;
} }
form { form {
@@ -36,8 +34,7 @@ button {
color: white; color: white;
padding: 10px; padding: 10px;
width: 250px; width: 250px;
margin-top: auto; margin-top: 100px;
margin-bottom: 50px;
} }
button:disabled, button:disabled,

View File

@@ -8,6 +8,7 @@
.left { .left {
width: 70%; width: 70%;
font-size: 18px;
} }
.date { .date {

View File

@@ -18,8 +18,12 @@
<div class="task" *ngFor="let task of tasks$ | async"> <div class="task" *ngFor="let task of tasks$ | async">
<button (click)="completeTask(task.id)">Done</button> <button (click)="completeTask(task.id)">Done</button>
<div (click)="updateTask(task.id)" class="item"> <div (click)="updateTask(task.id)" class="item">
<div class="name">{{ task.name }}</div> <div class="text">
<div class="assigned">{{ usernames[task.assigned ? task.assigned : 0] }}</div> <div class="name">
{{ task.name }}
<span class="assigned">{{ usernames[task.assigned ? task.assigned : 0] }}</span>
</div>
</div>
<div <div
class="reward" class="reward"
[ngClass]="{ 'negative': task.reward < 0 }" [ngClass]="{ 'negative': task.reward < 0 }"

View File

@@ -31,6 +31,8 @@ mat-icon {
align-items: center; align-items: center;
border-bottom: 1px solid var(--line-color); border-bottom: 1px solid var(--line-color);
padding: 5px; padding: 5px;
padding-block: 10px;
font-size: 18px;
} }
.item { .item {
@@ -41,7 +43,6 @@ mat-icon {
} }
.name { .name {
margin-left: 10px;
color: var(--font-color); color: var(--font-color);
} }
@@ -49,6 +50,7 @@ mat-icon {
margin-left: auto; margin-left: auto;
margin-right: 15px; margin-right: 15px;
color: var(--positive-amount-color); color: var(--positive-amount-color);
font-size: 22px;
} }
.negative { .negative {
@@ -56,21 +58,28 @@ mat-icon {
} }
button { button {
width: 57px; height: 45px;
height: 30px;
border-radius: 10px; border-radius: 10px;
color: white; color: white;
background: var(--confirm-button-color); background: var(--confirm-button-color);
padding-inline: 15px;
} }
.add-button { .add-button {
background-color: var(--ion-color-primary); background-color: var(--ion-color-primary);
margin-right: 15px; margin-right: 15px;
width: 75px; height: 30px;
} }
.assigned { .assigned {
color: var(--line-color); color: var(--line-color);
margin-left: 3px; margin-left: 3px;
font-size: 12px; font-size: 15px;
}
.text {
display: flex;
align-items: center;
width: 60%;
margin-left: 10px;
} }

View File

@@ -33,7 +33,7 @@ export class TasksPage implements ViewWillEnter {
this.taskService.getTaskList().subscribe(tasks => { this.taskService.getTaskList().subscribe(tasks => {
this.tasks$.next(tasks); this.tasks$.next(tasks);
}); });
}, 50); }, 100);
} }
createTask() { createTask() {

View File

@@ -38,6 +38,7 @@
ion-title { ion-title {
color: var(--ion-color-primary); color: var(--ion-color-primary);
font-size: 24px;
} }
ion-header { ion-header {
@@ -47,3 +48,14 @@ ion-header {
button { button {
font-size: 16px; font-size: 16px;
} }
ion-header.md {
ion-toolbar:first-child {
--padding-top: 27px;
height: 66px;
}
}
label {
font-size: 18px;
}