UI:
Adds Refresh icon to view title
Adds "Load more" entry at the end of the list for paging
API:
Restructures api around cursors
Renames TimelineCursor to generic TimelineOptions for more flexibility
Adds paging object to Timeline for clearer paging usage
Changes cursors to be strings, and explicit before and after cursors
Allows limit to take a cursor, so we can reload current data set
Clarifies id and fallback to timestamp
Adds reset flag to TimelineChangeEvent for providers to reset caching
Git provider:
Orders and returns commit date as the timestamp
Supports limit of a cursor (using rev-list --count)
Stops returning working/index changes when paging
Forcably resets cached data when changes are detected (naive for now)
Adds contributable commands to timeline items
Adds right-aligned timestamp to timeline items
Adds Open Changes to Git timeline items
Adds Copy Commit ID to Git timeline items
Adds Copy Commit Message to Git timeline items
When using the git extension, the intent is clear when clicking on "+ Create new branch..." and immediately being prompted "Please provide a branch name". But, when clicking on "+ Create a new branch from..." the intent is ambiguous, since the statement "Please provide a branch name" could refer to the branch from which you wish to base the new branch on or the name of the new branch, the latter being what actually happens.
By specifying "Please provide a *new* branch name...", the intent is clear: the prompt is asking for the name you wish to call the new branch.
**Problem**
All of our extensions currently are built using the dom typings. This can lead to runtime errors if you mistakenly use `window` or similar
**Fix**
Exclude the dom typings from compile. Then explicitly import the node types for `URL` and `TextEncoder`