1. 18 Mar, 2019 2 commits
  2. 15 Mar, 2019 3 commits
  3. 14 Mar, 2019 9 commits
  4. 13 Mar, 2019 7 commits
  5. 12 Mar, 2019 5 commits
  6. 11 Mar, 2019 8 commits
  7. 07 Mar, 2019 5 commits
    • Hannah Stepanek's avatar
      Merge pull request #986 from hypothesis/add-showSection-logic · 6f29d1f8
      Hannah Stepanek authored
      Add show section logic
      6f29d1f8
    • Robert Knight's avatar
      Replace Angular $http service with `window.fetch` in OAuthClient · 11ac0e25
      Robert Knight authored
      As part of the migration away from AngularJS, replace `$http` with
      `fetch` in the OAuthClient class which handles interactions with h's
      OAuth endpoints.
      
      For testing use the fetch-mock library that is already used in h's
      frontend tests. The current version (v7) has dependencies that are
      written in ES6 and not transpiled, and so don't work in PhantomJS [1]. As a
      workaround, use v6 of the library for the time being.
      
      This is part of #974.
      
      [1] We _do_ transpile our own code from ES6 -> ES5 but that transform is
          not applied to dependencies.
      11ac0e25
    • Robert Knight's avatar
      Add `window.fetch` polyfill for older browsers · cdc6a27f
      Robert Knight authored
      Also improve the documentation on how to add a new polyfill in future.
      cdc6a27f
    • Robert Knight's avatar
      Remove angulartics dependency · 75d0cbbc
      Robert Knight authored
      As part of the migration away from AngularJS, replace Angulartics with
      direct usage of the Google Analytics client.
      
      Since we only use a single analytics provider (Google Analytics) and
      only basic event tracking functionality in a single-route application,
      its easiest just to replace the code with direct calls to the
      analytics.js API.
      
      See https://developers.google.com/analytics/devguides/collection/analyticsjs/events
      
      Fixes #976
      75d0cbbc
    • Robert Knight's avatar
      Replace angular-sanitize with DOMPurify · 05db13ea
      Robert Knight authored
      In preparation for the move away from AngularJS, replace
      angular-sanitize with the DOMPurify library, which is a modern and
      widely used HTML sanitization library with no framework dependency.
      
      The sanitization logic is now encapsulated fully within the
      `render-markdown` module which no longer takes a sanitization function
      as an argument. That argument used to be necessary because
      the angular-sanitize function had to be obtained via Angular's
      dependency injection. DOMPurify can just be required as a module inside
      render-markdown.js.
      
      One improvement that is possible with DOMPurify but not done here is to
      generate sanitized DOM nodes directly instead of having showdown
      generate HTML, which is then parsed to DOM and sanitized, then converted
      back to HTML and finally converted back to DOM by Angular.
      
      Fixes #975
      05db13ea
  8. 05 Mar, 2019 1 commit