- 12 Apr, 2021 5 commits
-
-
Robert Knight authored
In issue discussions, tests and various parts of the code there are mentions of side-by-side mode being active or not. The `Guest` class didn't store this state directly but instead had a `closeSidebarOnDocumentClick` state which is always the inverse of "is side-by-side active?". Make the code easier to follow by storing the "is side-by-side active?" state directly. This will also avoid a misnamed variable if in future the state has other effects besides changing whether clicking on the document closes the sidebar. - Replace `closeSidebarOnDocumentClick` with a private `_sideBySideActive` property, exposed via a read-only `sideBySideActive` getter - Refactor tests to only use the public API of Guest (calling `Guest#fitSideBySide` or reading `sideBySideActive`)
-
Robert Knight authored
Remove the fallback logic that uses `location.href` and `document.title` as the document URL and metadata if using the integration-specific code (HTML or PDF) to get the document URL and metadata fails. Instead just let the async exception propagate. Currently this will result in no annotation/highlight being created and a console error. In future we should improve this by showing an error notification to the user. Recording the wrong document metadata with an annotation is worse than not creating an annotation at all: The user will be unaware that there is a problem yet the annotation will likely fail to show up in future or be displayed with completely wrong metadata in the Notebook. Therefore we want the failure here to be obvious so that the user notifies us of the problem and doesn't create a bunch of annotations which later "disappear". Fixes #3204
-
Robert Knight authored
Add test to check that anchors not associated with the removed annotation are preserved.
-
Robert Knight authored
-
Robert Knight authored
Rewrite the `Guest#anchor` method to simplify the control flow and generally make it easier to understand and change. There are no functional changes for annotations with zero or one entry in the `target` field (all existing Hypothesis annotations). There is a functional change to handling of annotations with multiple targets. Previously `anchor` would try to be smart about only re-anchoring targets which were not already anchored. In the new implementation all targets for an annotation are re-anchored. This will have no effect in practice because the Hypothesis client only supports creating annotations with a single target and the h backend can only store a single target per annotation. However the Hypothesis API does allow for multiple targets per annotation, in line with the W3C Web Annotations specs in which a single annotation can refer to multiple parts of a document. - Convert `anchor` method to async and replace Promise chains with async/await - Replace the logic that removes existing anchors and highlights for an annotation with a call to the `detach` method. This required adding an internal parameter to `detach` to control whether `anchorsChanged` is emitted, so that `anchor` only emits `anchorsChanged` once. - Add an explicit error to `Promise.reject` calls in tests so that the tests are easier to debug if they fail
-
- 09 Apr, 2021 10 commits
-
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
Devise a way to "extend" a common base playground app with local-app routes and patterns
-
Lyza Danger Gardner authored
In the soon-future, we'll want to extract the common bits of the UI Playground app to the `frontend-shared` repository. This is step 1.
-
Lyza Danger Gardner authored
Only `@forward` specific mixins and create a function to retrieve color settings out of the `_config` partial
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
Robert Knight authored
If opening the login popup window using `window.open` fails or succeeds but fails to return a `Window` reference to the caller then show a more helpful error message. There are various rare scenarios (browser bugs, browser extensions) which might cause this to happen. There is not a whole lot we can do to recover, but at least we can show a better error message.
-
- 08 Apr, 2021 2 commits
-
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
- 07 Apr, 2021 7 commits
-
-
Lyza Danger Gardner authored
Use `IconButton` in `ShareAnnotationsPanel` and `AnnotationShareControl`, with custom styling to make the buttons pair well with a text input. It would be ideal to create a design pattern from the combo of the input + button in the future.
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
Replace uses of `Button` in the Thread component and adjust styling for stronger alignment in both desktop and touch interfaces.
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
Robert Knight authored
Add a full novel as a test document for testing performance and behaviors related to long PDF documents, such as re-anchoring when pages are rendered and un-rendered while scrolling through the document. We try to keep example PDFs small to avoid bloating the git repository, but this one is on the larger side (~700KB) due to its length. This PDF was produced by downloading the EPUB version of the novel [1] from Project Gutenberg and then converting it to a PDF using Calibre [2] [1] https://www.gutenberg.org/ebooks/64317 [2] https://calibre-ebook.com
-
- 06 Apr, 2021 7 commits
-
-
Eduardo Sanz García authored
The types for `SortBy` and `SortOrder` were swapped.
-
Robert Knight authored
This matches how Prettier formats self-closing JSX tags and makes expressions such as `<Widget expanded />` more readable.
-
Robert Knight authored
- Indent children by two spaces - Handle boolean props closer to how we normally set them in JSX by omitting them if false and including them without explicit values if true. This assumes that boolean props default to false. If there is a scenario in future where this is not the case, this behavior may need to be configurable. - Handle `bigint` numeric values. We have no use case for this, but TypeScript pointed out that it wasn't handled. - Add JSDoc comments
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
* Break out most private mixins into `_base` * Provide `IconButton`, `LabeledButton`, `LinkButton` as public mixins * Establish colors for all variants in `_config` * Extend mixins to support sizes and more variants * Update `TopBar` and `SearchInput`, as custom styling no longer necessary; remove those custom styles
-
Lyza Danger Gardner authored
-
dependabot[bot] authored
Bumps [@sentry/browser](https://github.com/getsentry/sentry-javascript) from 6.2.3 to 6.2.5. - [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/6.2.3...6.2.5) Signed-off-by: dependabot[bot] <support@github.com>
-
- 05 Apr, 2021 9 commits
-
-
dependabot[bot] authored
Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.874.0 to 2.880.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.874.0...v2.880.0) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [postcss](https://github.com/postcss/postcss) from 8.2.8 to 8.2.9. - [Release notes](https://github.com/postcss/postcss/releases) - [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md) - [Commits](https://github.com/postcss/postcss/compare/8.2.8...8.2.9) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.9.1 to 3.10.0. - [Release notes](https://github.com/zloirock/core-js/releases) - [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md) - [Commits](https://github.com/zloirock/core-js/commits/v3.10.0/packages/core-js) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [classnames](https://github.com/JedWatson/classnames) from 2.2.6 to 2.3.1. - [Release notes](https://github.com/JedWatson/classnames/releases) - [Changelog](https://github.com/JedWatson/classnames/blob/master/HISTORY.md) - [Commits](https://github.com/JedWatson/classnames/commits) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [sinon](https://github.com/sinonjs/sinon) from 9.2.4 to 10.0.0. - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md) - [Commits](https://github.com/sinonjs/sinon/compare/v9.2.4...v10.0.0) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.874.0 to 2.879.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.874.0...v2.879.0) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [axe-core](https://github.com/dequelabs/axe-core) from 4.1.3 to 4.1.4. - [Release notes](https://github.com/dequelabs/axe-core/releases) - [Changelog](https://github.com/dequelabs/axe-core/blob/v4.1.4/CHANGELOG.md) - [Commits](https://github.com/dequelabs/axe-core/compare/v4.1.3...v4.1.4) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.13.13 to 7.13.14. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.13.14/packages/babel-core) Signed-off-by: dependabot[bot] <support@github.com>
-
Kyle Keating authored
Karam expects the config to be of type `Config`. This can be done by calling the karma.config.parseConfig method which creates a Config object that can be passed to karma.Server()
-