base page scaffolding and expense service
This commit is contained in:
parent
e77c2b576d
commit
bd18fecdff
14 changed files with 101 additions and 9 deletions
|
|
@ -1,5 +1,14 @@
|
||||||
<main>
|
<div class="app-container">
|
||||||
<h1>Hello, {{ title() }}</h1>
|
<header class="app-header">
|
||||||
</main>
|
<h1>Common Cents</h1>
|
||||||
|
<h2>The common sense expense tracker.</h2>
|
||||||
|
</header>
|
||||||
|
|
||||||
<router-outlet />
|
<main class="app-content">
|
||||||
|
<router-outlet />
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="app-footer">
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,14 @@
|
||||||
import { Routes } from '@angular/router';
|
import { Routes } from '@angular/router';
|
||||||
|
import { Expenses } from './pages/expenses/expenses';
|
||||||
|
import { Home } from './pages/home/home';
|
||||||
|
|
||||||
export const routes: Routes = [];
|
export const routes: Routes = [
|
||||||
|
{
|
||||||
|
path: '',
|
||||||
|
component: Home
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: 'expenses',
|
||||||
|
component: Expenses
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
|
||||||
|
|
@ -6,3 +6,12 @@ h1 {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-family: sans-serif;
|
font-family: sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 1.2rem;
|
||||||
|
line-height: 100%;
|
||||||
|
font-weight: 500;
|
||||||
|
margin: 0;
|
||||||
|
font-family: sans-serif;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import { Component, signal } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
import { RouterOutlet } from '@angular/router';
|
import { RouterOutlet } from '@angular/router';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
|
@ -7,6 +7,4 @@ import { RouterOutlet } from '@angular/router';
|
||||||
templateUrl: './app.html',
|
templateUrl: './app.html',
|
||||||
styleUrl: './app.scss'
|
styleUrl: './app.scss'
|
||||||
})
|
})
|
||||||
export class App {
|
export class App { }
|
||||||
protected readonly title = signal('common-cents');
|
|
||||||
}
|
|
||||||
|
|
|
||||||
3
src/app/components/expense-list/expense-list.html
Normal file
3
src/app/components/expense-list/expense-list.html
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
<div class="expense-list-container">
|
||||||
|
<p>expense-list works!</p>
|
||||||
|
</div>
|
||||||
0
src/app/components/expense-list/expense-list.scss
Normal file
0
src/app/components/expense-list/expense-list.scss
Normal file
16
src/app/components/expense-list/expense-list.ts
Normal file
16
src/app/components/expense-list/expense-list.ts
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
import { Component, OnInit } from '@angular/core';
|
||||||
|
import { Expenses } from '../../services/expenses';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-expense-list',
|
||||||
|
imports: [],
|
||||||
|
templateUrl: './expense-list.html',
|
||||||
|
styleUrl: './expense-list.scss',
|
||||||
|
})
|
||||||
|
export class ExpenseList implements OnInit {
|
||||||
|
public constructor(private readonly expenses: Expenses) { }
|
||||||
|
|
||||||
|
public ngOnInit() {
|
||||||
|
void this.expenses.getExpenses();
|
||||||
|
}
|
||||||
|
}
|
||||||
3
src/app/pages/expenses/expenses.html
Normal file
3
src/app/pages/expenses/expenses.html
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
<div class="expenses-container">
|
||||||
|
<app-expense-list />
|
||||||
|
</div>
|
||||||
0
src/app/pages/expenses/expenses.scss
Normal file
0
src/app/pages/expenses/expenses.scss
Normal file
12
src/app/pages/expenses/expenses.ts
Normal file
12
src/app/pages/expenses/expenses.ts
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ExpenseList } from '../../components/expense-list/expense-list';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-expenses',
|
||||||
|
imports: [
|
||||||
|
ExpenseList
|
||||||
|
],
|
||||||
|
templateUrl: './expenses.html',
|
||||||
|
styleUrl: './expenses.scss'
|
||||||
|
})
|
||||||
|
export class Expenses { }
|
||||||
7
src/app/pages/home/home.html
Normal file
7
src/app/pages/home/home.html
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
<div class="home-container">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a routerLink="expenses">Expenses</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
0
src/app/pages/home/home.scss
Normal file
0
src/app/pages/home/home.scss
Normal file
12
src/app/pages/home/home.ts
Normal file
12
src/app/pages/home/home.ts
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { RouterLink } from '@angular/router';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-home',
|
||||||
|
imports: [
|
||||||
|
RouterLink
|
||||||
|
],
|
||||||
|
templateUrl: './home.html',
|
||||||
|
styleUrl: './home.scss',
|
||||||
|
})
|
||||||
|
export class Home { }
|
||||||
12
src/app/services/expenses.ts
Normal file
12
src/app/services/expenses.ts
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
import { Injectable } from '@angular/core';
|
||||||
|
|
||||||
|
@Injectable({
|
||||||
|
providedIn: 'root',
|
||||||
|
})
|
||||||
|
export class Expenses {
|
||||||
|
public static readonly BASE_URL = 'http://localhost:3000/common-cents/expenses';
|
||||||
|
|
||||||
|
public async getExpenses(): Promise<void> {
|
||||||
|
console.log('getExpenses called');
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue