- How Authentication Works
- Adding the Auth Page
- Switching Between Auth Modes
- Handling Form Input
- Preparing the Backend
- Preparing the Signup Request
- Sending the Signup Request
- Adding a Loading Spinner & Error Handling Logic
- Improving Error Handling
- Sending Login Requests
- Login Error Handling
- Creating & Storing the User Data
- Reflecting the Auth State in the UI
- Adding the Token to Outgoing Requests
- Attaching the Token with an Interceptor
- Adding Logout
- Adding Auto-Login
- Adding Auto-Logout
- Adding an Auth Guard
Module 7: Working with NgRx
- What is Application State?
- What is NgRx?
- Getting Started with Reducers
- Adding Logic to the Reducer
- Understanding & Adding Actions
- Setting Up the NgRx Store
- Selecting State
- Dispatching Actions
- Multiple Actions
- Preparing Update & Delete Actions
- Updating & Deleting Ingredients
Module 8: Angular Animations
- Setting up the Starting Project
- Animations Triggers and State
- Switching between States
- Transitions
- Advanced Transitions
- Transition Phases
- The "void" State
- Using Keyframes for Animations
- Grouping Transitions
- Using Animation Callbacks
Day 3:
Module 9: Adding Offline Capabilities with Service Workers
- Adding Service Workers
- Caching Assets for Offline Use
- Caching Dynamic Assets & URLs
Module 10: Angular Material
- Environment Setup
- Autocomplete
- Bottom Sheet
- Cards
- Widgets
- Layouts
- Inputs
- Icons
- Grids
- SideNav
- Fab Speed Dial
- Swipe
- Switches
- Themes
- Toasts
Module 11: Angular Internationalization (i18n) ทำเว็บหลายภาษาด้วย Angular
- Introduction to Angular Internationalization (i18n)
- Understanding Angular i18n Unique Identifiers
- Angular i18n Pluralization Support
- Angular i18n Alternative Expressions Support
- Running a Translated Angular Application using the Angular CLI