- 09 Nov, 2020 3 commits
-
-
dependabot-preview[bot] authored
Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.783.0 to 2.787.0. - [Release notes](https://github.com/aws/aws-sdk-js/releases) - [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md) - [Commits](https://github.com/aws/aws-sdk-js/compare/v2.783.0...v2.787.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [dompurify](https://github.com/cure53/DOMPurify) from 2.2.0 to 2.2.2. - [Release notes](https://github.com/cure53/DOMPurify/releases) - [Commits](https://github.com/cure53/DOMPurify/compare/2.2.0...2.2.2) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.0.8 to 18.0.9. - [Release notes](https://github.com/octokit/rest.js/releases) - [Commits](https://github.com/octokit/rest.js/compare/v18.0.8...v18.0.9) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
- 06 Nov, 2020 2 commits
-
-
Robert Knight authored
Rewrite the selection change observer in `src/annotator/selections` to make it easier to understand how this functionality works and change it in future. The major change is to remove the dependency on the `Observable` class provided by `zen-observable`, which adds cognitive overhead here, isn't used elsewhere and is stuck on an old version due to subtle breaking changes in newer releases. Replace it instead with a `SelectionObserver` class which is modeled after DOM APIs like `MutationObserver`. It takes a callback in the constructor that is invoked with the selected `Range` or `null` when the selection changes and provides a `disconnect` method which stops watching for future changes. The implementation only uses DOM APIs.
-
dependabot-preview[bot] authored
Bumps [sinon](https://github.com/sinonjs/sinon) from 9.2.0 to 9.2.1. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md) - [Commits](https://github.com/sinonjs/sinon/commits) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
- 05 Nov, 2020 3 commits
-
-
Robert Knight authored
All of the browsers we currently support, as specified by the `browserslist` key in package.json, fully support ES 2015 and ES 2016. The only exception I'm aware of is that Edge Legacy v17 and v18 do not support using string regex search/match methods with custom (non-regex) types via `Symbol.{match, search, replace}`. That's not something we've ever used AFAIK.
-
Robert Knight authored
`make build` is a more obvious name for a command that creates a production build of the client. It also resolves an issue that `make build/manifest.json` did nothing if `node_modules/` was up to date but other dependencies had changed.
-
Robert Knight authored
`make dev` would unnecessarily create a production build before starting the development server if `package.json` or `yarn.lock` had been touched since the previous run of `make dev`. This was happening because `make dev` had a dependency on `build/manifest.json`, which triggers a production build, rather than `node_modules/.uptodate`, which just runs `yarn install`. I can't remember the historical reason why it was this way, but it doesn't make sense any more. Fix this by changing `make dev` to only depend on `node_modules/` being up to date before starting the dev server.
-
- 04 Nov, 2020 1 commit
-
-
Robert Knight authored
It is confusing to have a Babel plugin with an Angular-related name and Angular-sounding annotations (`@ngInject`) in the code, even though we're not using AngularJS. Although we're not using AngularJS any more, we still have services that are instantiated by a dependency injection container. The container reads dependency names from a `$inject` property on service functions/classes. This `$inject` property is added by `babel-plugin-angularjs-annotate`. This commit replaces the `angularjs-annotate` Babel plugin with one maintained by us [1]. The new plugin provides only the functionality that we need (eg. only processes explicitly annotated functions) and uses a more generic `@inject` annotation. [1] https://github.com/hypothesis/babel-plugin-inject-args
-
- 03 Nov, 2020 3 commits
-
-
Robert Knight authored
This catches a few minor errors which the previous configuration did not. See https://www.typescriptlang.org/tsconfig#strict. `noImplicitAny` is turned off because we still have a lot of un-annotated variables/parameters in the code.
-
Robert Knight authored
-
Robert Knight authored
Move the list of supported browsers from `.babelrc` to the `browserslist` key in `package.json`. This enables other browserslist-enabled tools such as autoprefixer to adapt their output to the target browsers. This reduces the size of the production CSS bundles slightly by reducing the number of unnecessary vendor prefixed rules that are generated. See https://github.com/postcss/autoprefixer#browsers, https://github.com/browserslist/browserslist#queries and https://babeljs.io/docs/en/babel-preset-env#browserslist-integration.
-
- 02 Nov, 2020 6 commits
-
-
Lyza Danger Gardner authored
Previously, the `AnnotationHeader` component checked the equivalency of `annotation.created` and `annotation.updated` to determine if an annotation had been updated subsequent to its creation. This is problematic if an annotation has a very small difference between its `created` and `updated` dates. `created` and `updated` are returned by the API as ISO-8601 date strings with microsecond resolution. These days, annotations created by the `h` service will have exactly equivalent `created` and `updated` timestamps (assuming they haven't actually been edited subsequently, of course). In the past, however, annotations often had negligible (sub-second) differences in their `created` and `updated` dates. This resulted in an edited timestamp misleadingly appearing in the UI for older annotations. These changes add a `hasBeenEdited` function to the `annotation-metadata` util module that considers an annotation edited only if `created` and `updated` differ by at least 2 seconds. Tests for `annotation-metadata` have also been modernized somewhat here. Fixes #2684
-
dependabot-preview[bot] authored
Bumps [@sentry/browser](https://github.com/getsentry/sentry-javascript) from 5.27.1 to 5.27.2. - [Release notes](https://github.com/getsentry/sentry-javascript/releases) - [Changelog](https://github.com/getsentry/sentry-javascript/blob/master/CHANGELOG.md) - [Commits](https://github.com/getsentry/sentry-javascript/compare/5.27.1...5.27.2) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [sass](https://github.com/sass/dart-sass) from 1.27.0 to 1.28.0. - [Release notes](https://github.com/sass/dart-sass/releases) - [Changelog](https://github.com/sass/dart-sass/blob/master/CHANGELOG.md) - [Commits](https://github.com/sass/dart-sass/compare/1.27.0...1.28.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 5.4.0 to 5.4.1. - [Release notes](https://github.com/puppeteer/puppeteer/releases) - [Changelog](https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md) - [Commits](https://github.com/puppeteer/puppeteer/compare/v5.4.0...v5.4.1) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.779.0 to 2.783.0. - [Release notes](https://github.com/aws/aws-sdk-js/releases) - [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md) - [Commits](https://github.com/aws/aws-sdk-js/compare/v2.779.0...v2.783.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.0.6 to 18.0.8. - [Release notes](https://github.com/octokit/rest.js/releases) - [Commits](https://github.com/octokit/rest.js/compare/v18.0.6...v18.0.8) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
- 30 Oct, 2020 5 commits
-
-
Robert Knight authored
Fix a false negative in the test for whether the current browser is supported if the Hypothesis boot script is included in the `<head>` of the page (before the `<body>`). In this case `document.body` is `null`.
-
Lyza Danger Gardner authored
Refactor `BucketBar` to render preact `Buckets` component. Lightly refactor `anchorBuckets` utility function to return above and below buckets as separate properties. Use SASS mixin for indicator button styling.
-
Lyza Danger Gardner authored
Extract styling for indicator buttons in bucket bar, organize and comment it
-
Lyza Danger Gardner authored
Create a preact component `Buckets`, and sub-components `BucketButton` and `NavigationBucketButton`. This refactors buckets to add some HTML semantics and accessibility.
-
Lyza Danger Gardner authored
Apply clean-theme class to "root" elements of sidebar and annotator. Remove clean-theme logic from sidebar components, and instead use selector in SASS modules to apply relevant styles. Fixes https://github.com/hypothesis/client/issues/2617
-
- 29 Oct, 2020 2 commits
-
-
dependabot-preview[bot] authored
Bumps [postcss-url](https://github.com/postcss/postcss-url) from 8.0.0 to 10.0.0. - [Release notes](https://github.com/postcss/postcss-url/releases) - [Changelog](https://github.com/postcss/postcss-url/blob/master/CHANGELOG.md) - [Commits](https://github.com/postcss/postcss-url/compare/8.0.0...10.0.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
Robert Knight authored
Add a test for the `Element.prepend()` method so that startup fails more gracefully in older, unsupported versions of Edge Legacy (<= 16). This API was chosen as a representative test because it's Chrome/Edge Legacy support closely matches our minimum versions. The same change was made for the LMS app in https://github.com/hypothesis/lms/pull/2209.
-
- 27 Oct, 2020 9 commits
-
-
dependabot-preview[bot] authored
Bumps [commander](https://github.com/tj/commander.js) from 6.1.0 to 6.2.0. - [Release notes](https://github.com/tj/commander.js/releases) - [Changelog](https://github.com/tj/commander.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/tj/commander.js/compare/v6.1.0...v6.2.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 5.3.1 to 5.4.0. - [Release notes](https://github.com/puppeteer/puppeteer/releases) - [Commits](https://github.com/puppeteer/puppeteer/compare/v5.3.1...v5.4.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [terser](https://github.com/terser/terser) from 5.3.7 to 5.3.8. - [Release notes](https://github.com/terser/terser/releases) - [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md) - [Commits](https://github.com/terser/terser/compare/v5.3.7...v5.3.8) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [postcss](https://github.com/postcss/postcss) from 8.1.2 to 8.1.4. - [Release notes](https://github.com/postcss/postcss/releases) - [Changelog](https://github.com/postcss/postcss/blob/master/CHANGELOG.md) - [Commits](https://github.com/postcss/postcss/compare/8.1.2...8.1.4) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [eslint-plugin-jsx-a11y](https://github.com/evcohen/eslint-plugin-jsx-a11y) from 6.3.1 to 6.4.1. - [Release notes](https://github.com/evcohen/eslint-plugin-jsx-a11y/releases) - [Changelog](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/master/CHANGELOG.md) - [Commits](https://github.com/evcohen/eslint-plugin-jsx-a11y/compare/v6.3.1...v6.4.1) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [@sentry/browser](https://github.com/getsentry/sentry-javascript) from 5.27.0 to 5.27.1. - [Release notes](https://github.com/getsentry/sentry-javascript/releases) - [Changelog](https://github.com/getsentry/sentry-javascript/blob/master/CHANGELOG.md) - [Commits](https://github.com/getsentry/sentry-javascript/compare/5.27.0...5.27.1) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.0.3 to 4.0.5. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v4.0.3...v4.0.5) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.776.0 to 2.779.0. - [Release notes](https://github.com/aws/aws-sdk-js/releases) - [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md) - [Commits](https://github.com/aws/aws-sdk-js/compare/v2.776.0...v2.779.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [eslint](https://github.com/eslint/eslint) from 7.11.0 to 7.12.1. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.11.0...v7.12.1) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
- 23 Oct, 2020 3 commits
-
-
Robert Knight authored
Attempt to fix a prod deployment failure when initial build step happens in a different workspace directory than the prod deploy step. This typically happens when two or more builds are in progress concurrently and then all of the earlier builds finish before the last one is deployed. In this scenario the initial build step happens in a directory such as `master@2` whereas the prod deploy step will happen in a directory named `master`. The prod deploy step assumed that the workspace was still `master@2` and git commands would fail because the directory no longer existed.
-
Robert Knight authored
Remove polyfills for features that are supported by all of our target browsers: - `fetch` (https://caniuse.com/fetch) - The `URL` constructor (https://caniuse.com/url) - `String.prototype.normalize` (https://caniuse.com/mdn-javascript_builtins_string_normalize)
-
Robert Knight authored
The transform-async-to-promises Babel plugin has been replaced by native async/await support in most of the code, except for the boot script.
-
- 22 Oct, 2020 3 commits
-
-
Robert Knight authored
This resolves errors building some indirect dependencies in the most recent versions of Node.
-
Robert Knight authored
This fixes an error in production builds of the client in Safari 10: ``` SyntaxError: Cannot declare a let variable twice: 't'. ``` Fixes #2664
-
Robert Knight authored
- Remove `seamless` attribute which has not been supported by major browsers for years [1] - Remove the `name="hyp_sidebar_frame"` attribute which is not referenced anywhere else in the code. I did find a couple of references to it in Google, but only in scripts written by Hypothesis team members which are not run regularly. [1] https://caniuse.com/iframe-seamless
-