1. 10 Apr, 2020 4 commits
  2. 09 Apr, 2020 1 commit
  3. 08 Apr, 2020 6 commits
    • Robert Knight's avatar
      Update Preact · 46063eb9
      Robert Knight authored
      This fixes an issue where an uncaught error thrown inside an `act` callback would
      stop any `useEffect` effects from running for the rest of the test
      session, which was pretty confusing to debug.
      
      See https://github.com/preactjs/preact/releases/tag/10.4.0
      46063eb9
    • Robert Knight's avatar
      Merge pull request #2011 from hypothesis/replace-angular-run · 2e287c68
      Robert Knight authored
      Use `Injector` to initialize services
      2e287c68
    • Robert Knight's avatar
      Merge pull request #2012 from hypothesis/remove-direct-session-state-access · 6e0e57d3
      Robert Knight authored
      Refactor profile data access in the store
      6e0e57d3
    • Robert Knight's avatar
      Refactor profile data access in the store · 2ec09cad
      Robert Knight authored
      This PR refactors accessing and updating of profile data from
      `/api/profile` in the store:
      
       - Always access the profile data fetched from `/api/profile` via the
         `store.profile()` selector rather than using
         `store.getState().session...`.
      
       - Move the profile data from the top level of `state.session` into a
         `profile` field (`state.session.profile`)
      
       - Rename `store.updateSession()` to `store.updateProfile()` for
         consistency with the `profile()` selector. The previous name is a
         holdover from when "session" meant "the user's cookie session".
      
      These changes make this store module follow our agreed best practices to
      avoid accessing state directly, rather than via a selector, and will also
      make it easier to add additional session-related state in future which
      is not fetched from `/api/profile`.
      
      One subtle but intended change is that `state.session.profile` is now
      always _replaced_ when the profile is udpated, rather than it being the
      result of merging the previous and current state. The previous behavior
      could introduce subtle bugs where state from a previous login remained
      after switching the user.
      2ec09cad
    • Robert Knight's avatar
      Use `Injector` to run initialization functions · 4d210869
      Robert Knight authored
      Replace Angular's `run` function which is used to run initialization
      logic once all services are constructed with a new `Injector#run`
      method.
      
      This allows us to remove the dependency on Angular for running app
      initialization logic which requires access to service instances. As a
      result, services that are not used by remaining Angular components no
      longer need to be registered with Angular at all.
      4d210869
    • Robert Knight's avatar
      Merge pull request #1996 from hypothesis/improve-nested-highlight-readability · b53d31d7
      Robert Knight authored
      Improve readability of nested highlights in PDFs
      b53d31d7
  4. 07 Apr, 2020 1 commit
    • Kyle Keating's avatar
      Fix press `Tab` to add a tag · d8157154
      Kyle Keating authored
      - Tab will add the first suggestion in the autocomplete list if the list is not empty and `Tab` is pressed without any suggestion being selected.
      - Tab can act as `Enter` or `,` and add a selected tag from a list when pressed.
      d8157154
  5. 06 Apr, 2020 21 commits
  6. 04 Apr, 2020 1 commit
    • Robert Knight's avatar
      Move annotation deletion/flagging to `annotations` service · 13f562b0
      Robert Knight authored
      Replace `annotationMapper.{deleteAnnotation, flagAnnotation}` with
      `annotationsService.{delete, flag}`.
      
      This is another step towards consolidating the logic for making
      annotation-related API calls and updating the store into the annotations
      service and removing the legacy annotationMapper service.
      13f562b0
  7. 03 Apr, 2020 6 commits