Přehled
GitHub:
https://github.com/brianmcleer/time-machine-widget
Time Machine je vlastní widget pro ArcGIS Experience Builder Developer Edition 1.19 a novější (testováno na 1.21). Umístí na mapu jeden posuvník data a všechny vrstvy s datem se jím řídí. Přetáhněte na datum a mapa ukáže, co tam bylo v daný den.
Nepotřebuje časově povolené služby. Widget čte pole každé vrstvy, vybere pole s datem a aplikuje filtr navíc k již existujícímu filtru vrstvy. Vrstvy prvků jsou filtrovány ve zobrazení vrstvy v prohlížeči. Mapové obrazové vrstvy s datovanými podvrstvami jsou filtrovány pomocí definice výrazu a po každé změně se požaduje nový obrázek.
Vyvinuli jsme ho pro naši historii anexe, která sahá až do roku 1882 a je uložena v mapové službě s jednou podvrstvou za rok nebo desetiletí. Funguje také na jedné vrstvě prvků s jedním datovým polem.
(Omlouváme se za screenshot, nová Esri Community nepřijímá video soubory)
Co dělá
- Režimy As of, Range a Compare. Compare zobrazuje dvě data vedle sebe za dělicí čarou, kterou lze přetahovat.
- Kroky po dnech, měsících nebo letech, nebo každý N-tý z nich z pokročilé volby. Přehrávání rychlosti, smyčka, Reset a Dnes, plus Předchozí změna a Další změna pro skok mezi daty, kdy se něco stalo.
- Rozsah posuvníku vychází z dat: odpovídá nejstaršímu a nejnovějšímu datu vrstev, které jsou zapnuté, a přizpůsobuje se při zapínání nebo vypínání vrstev v mapě.
- Graf aktivity s počtem prvků za rok nebo měsíc na obou osách.
- Seznam vrstev ukazující, které vrstvy sledují posuvník, jaké datové pole každá používá a proč byla některá vrstva přeskočena.
- Prezentacní režim: velký banner s datem na mapě s přehráváním, kapitolami, mřížkou kapitol s náhledy, zvýrazněním, kreslením na mapě, černobílou obrazovkou, čtením nahlas, oknem prezentujícího s poznámkami a hodinami, klávesovými zkratkami, odkazy pro kiosky a tlačítkem rychlosti. Kapitoly mohou nastavit vrstvy, základní mapu, místo, let nebo střih, popup prvku a dobu zdržení. Barvy, písmo a logo banneru se nastavují v builderu.
- Příběhové kapitoly vytvářené za běhu z aktuálního pohledu nebo generované z nejrušnějších let v datech s exportem do webové prezentace, WebM videa nebo XML pro builder.
- Nastavení builderu s výběrem vrstev načteným z mapy (skupinové vrstvy jako nadpisy), pravidly pro vrstvy neviditelné výběru, sadami let pro skupiny ročních snímků, sekcemi výkonu, prezentace a brandingu a importem/exportem celé konfigurace v XML.
- Nápověda přímo ve widgetu, nápověda při prvním spuštění, přístup přes klávesnici a oznámení pro čtečky obrazovky po celou dobu.
Požadavky
- Experience Builder Developer Edition 1.19 nebo novější, React 19. Testováno na 1.21 s Maps SDK 5.x.
- Žádné závislosti třetích stran. Vše pochází z Experience Builder.
Instalace
- Stáhněte zip z posledního vydání na GitHubu (přiložen také zde).
- Zkopírujte složku
time-machine do client\your-extensions\widgets\ tak aby manifest.json byl přímo uvnitř složky widgets\time-machine\. Nevkládejte ji hlouběji do podsložek. - Spusťte
pnpm install (verze 1.21 a novější) nebo npm install (verze 1.20 a starší) ve složce client a restartujte klienta. - Přidejte Time Machine do experience a vyberte mapový widget, kterým bude řízen.
Zip obsahuje pouze widget. Visual Studio editor shims v repozitáři jsou úmyslně vynechány, protože jejich ambientní deklarace modulů by ovlivnily všechny ostatní widgety ve vaší složce your-extensions. Pokud místo toho klonujete repozitář, před sestavením tyto soubory smažte; README je vyjmenovává.
Známá omezení
- Vrstev dlaždic a snímků se řídí pouze sadami let (skupinové vrstvy s potomky pojmenovanými podle roku).
- Mapová služba vykresluje jeden obrázek na změnu, takže u pomalých služeb Přehrávání ukazuje méně obrázků než kroků. Datum si drží tempo a mapa ukazuje nejnovější dostupné datum.
- Režim na straně klienta čte až do limitu builderu počtu prvků na vrstvu (výchozí 50 000). Větší vrstvy používají serverovou statistiku pro rozsah.
- Čtení nahlas využívá hlasy prohlížeče a vyžaduje první kliknutí na stránce. Export videa je ve formátu WebM.
Zpětná vazba
Problémy a pull requesty jsou vítány na GitHubu. Pokud je vrstva přeskočena nebo rozsah vypadá špatně, seznam vrstev ve widgetu vysvětluje proč a konzole prohlížeče obsahuje řádek začínající [time-machine], který poskytuje další informace.
Změny
- 25. září 2026: 1.0.0. První veřejné vydání na GitHubu s release zipem.