| @@ -6,7 +6,8 @@ import { TabsComponent } from './tabs/tabs.component'; | |||
| const routes: Routes = [ | |||
| { path: '', pathMatch: 'full', redirectTo: 'welcome' }, | |||
| { component: WelcomeComponent, path: 'welcome' }, | |||
| { component: TabsComponent, path: 'tabs' } | |||
| { component: TabsComponent, path: 'tabs' }, | |||
| { component: TabsComponent, path: 'tabs/:subpage' } | |||
| ]; | |||
| @NgModule({ | |||
| @@ -1,6 +1,7 @@ | |||
| import { BrowserModule } from '@angular/platform-browser'; | |||
| import { NgModule } from '@angular/core'; | |||
| import { AngularSvgIconModule } from 'angular-svg-icon'; | |||
| import { HttpClientModule } from '@angular/common/http'; | |||
| import { AppRoutingModule } from './app-routing.module'; | |||
| import { AppComponent } from './app.component'; | |||
| @@ -24,6 +25,7 @@ import { MoreComponent } from './tabs/more/more.component'; | |||
| imports: [ | |||
| BrowserModule, | |||
| AppRoutingModule, | |||
| HttpClientModule, | |||
| AngularSvgIconModule.forRoot() | |||
| ], | |||
| providers: [], | |||
| @@ -1,2 +1,21 @@ | |||
| <p>tabs works!</p> | |||
| <app-home></app-home> | |||
| <section class="tabs"> | |||
| <button> | |||
| <svg-icon [applyClass]="true" class="icon" src="assets/custom-icons/home.svg"></svg-icon> | |||
| <span> Home </span> | |||
| </button> | |||
| <button> | |||
| <svg-icon [applyClass]="true" class="icon" src="assets/custom-icons/mortarboard.svg"></svg-icon> | |||
| <span> Courses </span> | |||
| </button> | |||
| <button class="mid-button"> | |||
| <svg-icon [applyClass]="true" class="icon" src="assets/custom-icons/book.svg"></svg-icon> | |||
| </button> | |||
| <button> | |||
| <svg-icon [applyClass]="true" class="icon" src="assets/custom-icons/newspaper.svg"></svg-icon> | |||
| <span> Reports </span> | |||
| </button> | |||
| <button> | |||
| <svg-icon [applyClass]="true" class="icon" src="assets/custom-icons/more.svg"></svg-icon> | |||
| <span> More </span> | |||
| </button> | |||
| </section> | |||
| @@ -0,0 +1,53 @@ | |||
| .tabs { | |||
| display: flex; | |||
| width: 100%; | |||
| height: 60px; | |||
| align-items: stretch; | |||
| background-color: var(--black); | |||
| position: fixed; | |||
| left: 0; | |||
| bottom: 0; | |||
| z-index: 1; | |||
| padding: 0 5%; | |||
| border-top-left-radius: 20px; | |||
| border-top-right-radius: 20px; | |||
| button { | |||
| border: 0px; | |||
| width: calc(90vw / 5); | |||
| display: block; | |||
| background-color: transparent; | |||
| display: block; | |||
| text-align: center; | |||
| &.mid-button { | |||
| height: calc(90vw / 5); | |||
| background-color: white; | |||
| border-radius: 50%; | |||
| position: relative; | |||
| transform: translateY(calc(-90vw / 13))scale(0.9); | |||
| box-shadow: 0px 0px 5px var(--black); | |||
| .icon { | |||
| fill: var(--teal); | |||
| width: 25px; | |||
| height: 25px; | |||
| } | |||
| } | |||
| span { | |||
| display: block; | |||
| margin-top: 5px; | |||
| color: white; | |||
| font-size: 10px; | |||
| } | |||
| } | |||
| .icon { | |||
| margin: 0 auto; | |||
| display: block; | |||
| width: 15px; | |||
| height: 15px; | |||
| fill: white; | |||
| } | |||
| } | |||
| @@ -1 +1 @@ | |||
| <svg height="512pt" viewBox="0 0 512 512" width="512pt" xmlns="http://www.w3.org/2000/svg"><path d="m498.195312 222.695312c-.011718-.011718-.023437-.023437-.035156-.035156l-208.855468-208.847656c-8.902344-8.90625-20.738282-13.8125-33.328126-13.8125-12.589843 0-24.425781 4.902344-33.332031 13.808594l-208.746093 208.742187c-.070313.070313-.140626.144531-.210938.214844-18.28125 18.386719-18.25 48.21875.089844 66.558594 8.378906 8.382812 19.445312 13.238281 31.277344 13.746093.480468.046876.964843.070313 1.453124.070313h8.324219v153.699219c0 30.414062 24.746094 55.160156 55.167969 55.160156h81.710938c8.28125 0 15-6.714844 15-15v-120.5c0-13.878906 11.289062-25.167969 25.167968-25.167969h48.195313c13.878906 0 25.167969 11.289063 25.167969 25.167969v120.5c0 8.285156 6.714843 15 15 15h81.710937c30.421875 0 55.167969-24.746094 55.167969-55.160156v-153.699219h7.71875c12.585937 0 24.421875-4.902344 33.332031-13.808594 18.359375-18.371093 18.367187-48.253906.023437-66.636719zm0 0"/></svg> | |||
| <svg height="512pt" viewBox="0 0 512 512" width="512pt" xmlns="http://www.w3.org/2000/svg"><path d="m498.195312 222.695312c-.011718-.011718-.023437-.023437-.035156-.035156l-208.855468-208.847656c-8.902344-8.90625-20.738282-13.8125-33.328126-13.8125-12.589843 0-24.425781 4.902344-33.332031 13.808594l-208.746093 208.742187c-.070313.070313-.140626.144531-.210938.214844-18.28125 18.386719-18.25 48.21875.089844 66.558594 8.378906 8.382812 19.445312 13.238281 31.277344 13.746093.480468.046876.964843.070313 1.453124.070313h8.324219v153.699219c0 30.414062 24.746094 55.160156 55.167969 55.160156h81.710938c8.28125 0 15-6.714844 15-15v-120.5c0-13.878906 11.289062-25.167969 25.167968-25.167969h48.195313c13.878906 0 25.167969 11.289063 25.167969 25.167969v120.5c0 8.285156 6.714843 15 15 15h81.710937c30.421875 0 55.167969-24.746094 55.167969-55.160156v-153.699219h7.71875c12.585937 0 24.421875-4.902344 33.332031-13.808594 18.359375-18.371093 18.367187-48.253906.023437-66.636719zm0 0"/></svg> | |||
| @@ -0,0 +1,50 @@ | |||
| <?xml version="1.0" encoding="iso-8859-1"?> | |||
| <!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> | |||
| <svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" | |||
| viewBox="0 0 426.667 426.667" style="enable-background:new 0 0 426.667 426.667;" xml:space="preserve"> | |||
| <g> | |||
| <g> | |||
| <circle cx="42.667" cy="213.333" r="42.667"/> | |||
| </g> | |||
| </g> | |||
| <g> | |||
| <g> | |||
| <circle cx="213.333" cy="213.333" r="42.667"/> | |||
| </g> | |||
| </g> | |||
| <g> | |||
| <g> | |||
| <circle cx="384" cy="213.333" r="42.667"/> | |||
| </g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| <g> | |||
| </g> | |||
| </svg> | |||