✨ MAJOR FEATURES: • Auto-zoom intelligence với smart bounds fitting • Enhanced 3D GPS markers với pulsing effects • Professional route display với 6-layer rendering • Status-based parking icons với availability indicators • Production-ready build optimizations 🗺️ AUTO-ZOOM FEATURES: • Smart bounds fitting cho GPS + selected parking • Adaptive padding (50px) cho visual balance • Max zoom control (level 16) để tránh quá gần • Dynamic centering khi không có selection 🎨 ENHANCED VISUALS: • 3D GPS marker với multi-layer pulse effects • Advanced parking icons với status colors • Selection highlighting với animation • Dimming system cho non-selected items 🛣️ ROUTE SYSTEM: • OpenRouteService API integration • Multi-layer route rendering (glow, shadow, main, animated) • Real-time distance & duration calculation • Visual route info trong popup 📱 PRODUCTION READY: • SSR safe với dynamic imports • Build errors resolved • Global deployment via Vercel • Optimized performance 🌍 DEPLOYMENT: • Vercel: https://whatever-ctk2auuxr-phong12hexdockworks-projects.vercel.app • Bundle size: 22.8 kB optimized • Global CDN distribution • HTTPS enabled 💾 VERSION CONTROL: • MapView-v2.0.tsx backup created • MAPVIEW_VERSIONS.md documentation • Full version history tracking
73 lines
1.9 KiB
Markdown
73 lines
1.9 KiB
Markdown
<a href="https://react-hot-toast.com/"><img alt="react-hot-toast - Try it out" src="https://github.com/timolins/react-hot-toast/raw/main/assets/header.svg"/></a>
|
|
|
|
<div align="center">
|
|
<img src="https://badgen.net/npm/v/react-hot-toast" alt="NPM Version" />
|
|
<img src="https://badgen.net/bundlephobia/minzip/react-hot-toast" alt="minzipped size"/>
|
|
<img src="https://github.com/timolins/react-hot-toast/workflows/CI/badge.svg" alt="Build Status" />
|
|
</a>
|
|
</div>
|
|
<br />
|
|
<div align="center"><strong>Smoking hot Notifications for React.</strong></div>
|
|
<div align="center"> Lightweight, customizable and beautiful by default.</div>
|
|
<br />
|
|
<div align="center">
|
|
<a href="https://react-hot-toast.com/">Website</a>
|
|
<span> · </span>
|
|
<a href="https://react-hot-toast.com/docs">Documentation</a>
|
|
<span> · </span>
|
|
<a href="https://twitter.com/timolins">Twitter</a>
|
|
</div>
|
|
|
|
<br />
|
|
<div align="center">
|
|
<sub>Cooked by <a href="https://twitter.com/timolins">Timo Lins</a> 👨🍳</sub>
|
|
</div>
|
|
|
|
<br />
|
|
|
|
## Features
|
|
|
|
- 🔥 **Hot by default**
|
|
- 🔩 **Easily Customizable**
|
|
- ⏳ **Promise API** - _Automatic loader from a promise_
|
|
- 🕊 **Lightweight** - _less than 5kb including styles_
|
|
- ✅ **Accessible**
|
|
- 🤯 **Headless Hooks** - _Create your own with [`useToaster()`](https://react-hot-toast.com/docs/use-toaster)_
|
|
|
|
## Installation
|
|
|
|
#### With pnpm
|
|
|
|
```sh
|
|
pnpm add react-hot-toast
|
|
```
|
|
|
|
#### With NPM
|
|
|
|
```sh
|
|
npm install react-hot-toast
|
|
```
|
|
|
|
## Getting Started
|
|
|
|
Add the Toaster to your app first. It will take care of rendering all notifications emitted. Now you can trigger `toast()` from anywhere!
|
|
|
|
```jsx
|
|
import toast, { Toaster } from 'react-hot-toast';
|
|
|
|
const notify = () => toast('Here is your toast.');
|
|
|
|
const App = () => {
|
|
return (
|
|
<div>
|
|
<button onClick={notify}>Make me a toast</button>
|
|
<Toaster />
|
|
</div>
|
|
);
|
|
};
|
|
```
|
|
|
|
## Documentation
|
|
|
|
Find the full API reference on [official documentation](https://react-hot-toast.com/docs).
|