✨ 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
4.4 KiB
4.4 KiB
Version 4.0.0 (2018-01-28)
- Added: Support for ES2018. The only change needed was recognizing the
sregex flag. - Changed: All tokens returned by the
matchToTokenfunction now have aclosedproperty. It is set toundefinedfor the tokens where “closed” doesn’t make sense. This means that all tokens objects have the same shape, which might improve performance.
These are the breaking changes:
'/a/s'.match(jsTokens)no longer returns['/', 'a', '/', 's'], but['/a/s']. (There are of course other variations of this.)- Code that rely on some token objects not having the
closedproperty could now behave differently.
Version 3.0.2 (2017-06-28)
- No code changes. Just updates to the readme.
Version 3.0.1 (2017-01-30)
- Fixed: ES2015 unicode escapes with more than 6 hex digits are now matched correctly.
Version 3.0.0 (2017-01-11)
This release contains one breaking change, that should improve performance in V8:
So how can you, as a JavaScript developer, ensure that your RegExps are fast? If you are not interested in hooking into RegExp internals, make sure that neither the RegExp instance, nor its prototype is modified in order to get the best performance:
var re = /./g; re.exec(''); // Fast path. re.new_property = 'slow';
This module used to export a single regex, with .matchToToken bolted
on, just like in the above example. This release changes the exports of
the module to avoid this issue.
Before:
import jsTokens from "js-tokens"
// or:
var jsTokens = require("js-tokens")
var matchToToken = jsTokens.matchToToken
After:
import jsTokens, {matchToToken} from "js-tokens"
// or:
var jsTokens = require("js-tokens").default
var matchToToken = require("js-tokens").matchToToken
Version 2.0.0 (2016-06-19)
- Added: Support for ES2016. In other words, support for the
**exponentiation operator.
These are the breaking changes:
'**'.match(jsTokens)no longer returns['*', '*'], but['**'].'**='.match(jsTokens)no longer returns['*', '*='], but['**='].
Version 1.0.3 (2016-03-27)
- Improved: Made the regex ever so slightly smaller.
- Updated: The readme.
Version 1.0.2 (2015-10-18)
- Improved: Limited npm package contents for a smaller download. Thanks to @zertosh!
Version 1.0.1 (2015-06-20)
- Fixed: Declared an undeclared variable.
Version 1.0.0 (2015-02-26)
- Changed: Merged the 'operator' and 'punctuation' types into 'punctuator'. That type is now equivalent to the Punctuator token in the ECMAScript specification. (Backwards-incompatible change.)
- Fixed: A
-followed by a number is now correctly matched as a punctuator followed by a number. It used to be matched as just a number, but there is no such thing as negative number literals. (Possibly backwards-incompatible change.)
Version 0.4.1 (2015-02-21)
- Added: Support for the regex
uflag.
Version 0.4.0 (2015-02-21)
- Improved:
jsTokens.matchToTokenperformance. - Added: Support for octal and binary number literals.
- Added: Support for template strings.
Version 0.3.1 (2015-01-06)
- Fixed: Support for unicode spaces. They used to be allowed in names (which is very confusing), and some unicode newlines were wrongly allowed in strings and regexes.
Version 0.3.0 (2014-12-19)
- Changed: The
jsTokens.namesarray has been replaced with thejsTokens.matchToTokenfunction. The capturing groups ofjsTokensare no longer part of the public API; instead use said function. See this gist for an example. (Backwards-incompatible change.) - Changed: The empty string is now considered an “invalid” token, instead an “empty” token (its own group). (Backwards-incompatible change.)
- Removed: component support. (Backwards-incompatible change.)
Version 0.2.0 (2014-06-19)
- Changed: Match ES6 function arrows (
=>) as an operator, instead of its own category (“functionArrow”), for simplicity. (Backwards-incompatible change.) - Added: ES6 splats (
...) are now matched as an operator (instead of three punctuations). (Backwards-incompatible change.)
Version 0.1.0 (2014-03-08)
- Initial release.