All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add Locale Switcher dialog to allow users to change the app's language.
- Add Locale Suggestion component to prompt users to switch to their browser's language if it matches a supported locale.
- Upgraded
@wayback/coreto improve performance when finding versions with local changes. - Upgraded
@arcgis/coreto version 5 and migrated from deprecated ArcGIS widgets to the new ArcGIS map components. - Removed the
calcite-components-reactwrapper and migrated to usingcalcite-componentsweb components directly in React. - Updated Updates Layer query logic to user predicable and deterministic timestamps for filtering instead of relying on 'CURRENT_TIMESTAMP' in the feature service, which can lead to unexpected results.
- Disable the Layers List while loading versions with local changes to prevent user from interacting with the layer list before the local changes are fully loaded, which could lead to confusion.
- Enhanced the Export Tile Package Tool:
- Improved metadata inclusion (Item Description, License, Attribution, Tags, and Thumbnail) for hosted tiled layer items.
- Disabled the Extent Selection Tool for unauthenticated users and added a sign-in prompt.
- Fixes for the Updates mode: fixed the date filter logic for the World Imagery updates layer to improve the accuracy of pending updates.
- Map Scale Indicator Update: updated the component to display the actual scale and resolution based on the map center's latitude.
- Added a screenshot capture tool.
- Added the Scale, Zoom Level, and Pixel Size indicator to the map.
- Added end-to-end tests for multiple features using Playwright.
- Added Dishui Lake, Shanghai to interesting places list.
- Enhanced the Export Tile Package mode:
- Added support to save the wayback tile package as a hosted imagery layer in ArcGIS Online.
- Added an extent selection tool to the map, allowing users to specify the area for tile package export.
- Added a support to track the progress of tile package export jobs and display the status in the UI.
- Replaced the dialog with a dedicated panel for export controls, offering greater flexibility and a better user experience.
- Added a preview window showing example tile images at a given zoom level.
- Improved status tracking logic to provide more accurate and granular updates for export jobs, giving users clearer feedback on progress.
- Saved export job history to IndexedDB and displayed it in the panel, allowing users to track jobs and easily access exported tile packages.
- Enhanced the Save as a Web Map mode:
- Added a list of selected versions in the Save as Web Map panel, allowing users to review and manage versions before saving.
- Moved the Save as Web Map controls to a dedicated panel for a better user experience, also allowing users to adjust the web map extent using the map.
- Enhanced the Updates mode:
- Combined the Status and Publication Date filters into a single filter with multiple options, making it easier to filter updates by different criteria.
- Updated the Region filter to display normalized region names based on country and region codes, replacing inconsistent labels from the feature service.
- Updated the style of the Updates layer to improve visibility in certain parts of the world.
- Reorganized the mode control buttons in the gutter for a cleaner, more consistent experience across different modes.
- Updated the About this App dialog.
- Moved strings from React components to i18next translation files for better internationalization support.
- Slightly increased the size of the wayback preview window for better visibility.
- Removed the Settings dialog and related code.
- Updated TypeScript to version 5.9.3 and updated its configuration.
- Updated
@arcgis/coreto version 4.34 and adjusted the CSS import path. - Improved webpack configuration to better handle loading of environment variables and other app-specific settings; moved webpack-related code into a dedicated
webpackdirectory for better organization.
- Enhanced the animation controls by adding the download and copy link buttons to the animation controls.
- Show reference layer in animation mode if it is turned on.
- Integrated the reference layer screenshot into output animation MP4 video.
- Updated the animation mode behavior to not automatically start playing when entering animation mode.
- Added a User Profile dialog that allows signed-in users to view and manage their account details.
- Introduced an IndexedDBLogger to store log messages in IndexedDB for improved debugging and error tracking.
- Updated the App UI to always display the left-side gutter with action buttons, allowing users to easily switch modes and access the User Profile dialog.
- Optimized Updates Mode performance through improved data fetching and caching strategies.
- Enhanced the sign-in experience by providing sign-in links instead of automatically prompting users to sign in.
- Improved configuration management by loading settings from the
.envfile instead of hardcoding them in the source code. - Migrated
wayback-coreto use the new@esri/wayback-corepackage, replacing the deprecated@vannizhang/wayback-core. - Enhanced accessibility with ARIA labels, keyboard navigation support, and more semantic HTML elements.
- Introduced Updates Mode to explore World Imagery updates from the past 12 months and view pending updates for the next 12 months.
- Added internationalization support using i18next.
- Default app location now selects a random entry from the list of interesting places.
- Migrated to
calcite-components-reactand upgraded tocalcite-componentsv3.1.0. - Updated React components to use typed Calcite components from
calcite-components-react. - Refined side panel layout and styles.
- Simplified the app configuration file by removing unnecessary settings.
- Introduced a Locale Switch component for changing the Reference Layer's language.
- Added a notification message to inform users when a Reference Layer is available in their selected locale.
- animation mode should be turned on when
animationSpeed=0is in the URL hash params.
- upgrade
calcite-componentsto version 2.13
- upgrade
wayback-coreto version 1.0.8. - update
getWaybackLayerto use sub domains to speed up tile retrieval.