Settings and Persistence he - msupino/NavigationApp GitHub Wiki
🇬🇧 English
NavAid שומר מצב דפדפן במפתחות navaid.*: המסלול הפעיל והתצוגה, בחירות UI,
שכבות, פרטי פרופיל וספריית מסלולים. בחירה/חלון זמניים נשמרים ב־sessionStorage.
המדיניות הנאכפת נמצאת ב־tests/settings-sync-allowlist.spec.js: כל מפתח חייב
להיכלל ברשימת הסנכרון ל־Drive או לקבל סיבה מפורשת לכך שהוא מקומי למכשיר. ראו
LocalStorage Schema.
הסנכרון הוא אופציונלי. מסלולים שמורים מסונכרנים בקובץ app-data נפרד. כאשר Sync settings too פעיל, snapshot של הגדרות מורשות מסונכרן עם tombstones, טיפול בקונפליקטים, חותמות זמן מונוטוניות ו־baseline מקומי. מפתחות API, מיקום חלונות, המסלול הפעיל והגדרות שקובעות לאן מידע נשלח (למשל יעד הגשת תכנית טיסה) נשארים במכשיר.
רוב העריכה מקומית. תוכן מסלול/פרופיל יוצא מהמכשיר רק כאשר המשתמש מפעיל Drive,
שולח בקשה לספק AI או מגיש תכנית טיסה. בנוסף מתבצעות בקשות רגילות למפות, לנכסי
אפליקציה ולנתוני מזג אוויר/תעופה שנבחרו. בזמן הפעלה נטען אוטומטית קובץ הגדרות
tuning קטן מ־GitHub Gist, אלא אם הכתובת כוללת ?nogist או ?gist=0; בקשה זו
אינה שולחת מסלול או פרופיל.
ברירות המחדל שנשלחות עם הקוד כוללות כיום את התצורה הפרוסה, ולכן הבקשה הזו אינה משנה
דבר בטעינה רגילה — היא קיימת כדי שאפשר יהיה לשנות ערך בלי גרסה חדשה. התצורה האחרונה
שנראתה נשמרת ב־navaid.gistCache ומוחלת לפני הציור הראשון, וזה מה שהפסיק את
"קפיצת" הצבעים והגדלים רגע אחרי כל טעינה; הבקשה עדיין גוברת כשהיא חוזרת, ו־?nogist
מתעלם גם מהמטמון וגם מהבקשה.