File tree Expand file tree Collapse file tree 3 files changed +91
-0
lines changed
Expand file tree Collapse file tree 3 files changed +91
-0
lines changed Original file line number Diff line number Diff line change 1+ const toggleModeEl = document . getElementById ( "toggle-mode" ) ;
2+ const mapEl = document . querySelector ( "arcgis-map" ) ;
3+ const darkModeCss = document . getElementById ( "jsapi-mode-dark" ) ;
4+ const lightModeCss = document . getElementById ( "jsapi-mode-light" ) ;
5+ const liveRegion = document . getElementById ( "liveRegion" ) ;
6+ const searchEl = document . getElementById ( "search-el" ) ;
7+ const expandEl = document . getElementById ( "expand-el" ) ;
8+
9+ let mode = "light" ;
10+
11+ toggleModeEl . addEventListener ( "click" , handleModeChange ) ;
12+
13+
14+ function handleModeChange ( ) {
15+ mode = mode === "dark" ? "light" : "dark" ;
16+ const isDarkMode = mode === "dark" ;
17+ darkModeCss . disabled = ! isDarkMode ;
18+ lightModeCss . disabled = isDarkMode ;
19+ toggleModeEl . icon = isDarkMode ? "moon" : "brightness" ;
20+ document . body . className = isDarkMode ? "calcite-mode-dark" : "" ;
21+ mapEl . basemap = isDarkMode ? "dark-grey" : "grey" ;
22+
23+ document . querySelectorAll ( `.calcite-mode-${ isDarkMode ? "light" : "dark" } ` ) . forEach ( node =>
24+ node . classList . replace ( `calcite-mode-${ isDarkMode ? "light" : "dark" } ` , `calcite-mode-${ mode } ` )
25+ ) ;
26+ }
Original file line number Diff line number Diff line change 1+ < html lang ="en ">
2+
3+ < head >
4+ < meta charset ="utf-8 " />
5+ < meta name ="viewport " />
6+ < title > 2025 Esri Developer & Technology Summit - High contrast</ title >
7+
8+ <!-- Calcite imports -->
9+ < script type ="module " src ="https://js.arcgis.com/calcite-components/3.0.3/calcite.esm.js "> </ script >
10+
11+
12+ <!-- ArcGIS Maps SDK for JavaScript imports -->
13+ < script src ="https://js.arcgis.com/4.32/ "> </ script >
14+ < link id ="jsapi-mode-light " rel ="stylesheet " href ="https://js.arcgis.com/4.32/esri/themes/light/main.css " />
15+ < link disabled id ="jsapi-mode-dark " rel ="stylesheet " href ="https://js.arcgis.com/4.32/esri/themes/dark/main.css " />
16+ < script type ="module " src ="https://js.arcgis.com/map-components/4.32/arcgis-map-components.esm.js "> </ script >
17+
18+ <!-- Demo imports -->
19+ < script src ="./app.js " defer > </ script >
20+ < link rel ="stylesheet " href ="./style.css " />
21+ </ head >
22+
23+ < body >
24+ < calcite-shell content-behind >
25+ < calcite-navigation slot ="header " id ="nav ">
26+ < calcite-navigation-logo href ="# " icon ="accessibility " alt ="Application logo " slot ="logo "
27+ heading ="High contrast "
28+ description ="Esri Developer & Technology Summit 2025 "> </ calcite-navigation-logo >
29+ < calcite-action-pad layout ="horizontal " expand-disabled slot ="content-end ">
30+ < calcite-action id ="toggle-mode " text ="Toggle mode " icon ="brightness "> </ calcite-action >
31+ </ calcite-action-pad >
32+
33+ < calcite-tooltip placement ="bottom " reference-element ="toggle-mode " slot ="content-end "> Toggle
34+ mode</ calcite-tooltip >
35+ </ calcite-navigation >
36+ < arcgis-map item-id ="05e015c5f0314db9a487a9b46cb37eca "> </ arcgis-map >
37+ </ calcite-shell >
38+
39+ </ body >
40+
41+ </ html >
Original file line number Diff line number Diff line change 1+ /* Esri Developer & Technology Summit Demo Template */
2+ /* Demo template theming example */
3+
4+ body calcite-navigation-logo {
5+ --calcite-color-text-2 : # 737373 ;
6+ }
7+ body .calcite-mode-dark calcite-navigation-logo {
8+ --calcite-icon-color : # 8FD0FF ;
9+ --calcite-color-text-2 : # C7C7C7 ;
10+ }
11+
12+
13+ html ,
14+ body ,
15+ arcgis-map {
16+ padding : 0 ;
17+ margin : 0 ;
18+ height : 100% ;
19+ width : 100% ;
20+ }
21+
22+ calcite-shell-panel [slot = "panel-start" ] calcite-panel {
23+ border-top : 0 ;
24+ }
You can’t perform that action at this time.
0 commit comments