- 10 Nov, 2022 2 commits
-
-
Robert Knight authored
Note that the existing tests cover this after removing the null-check for the `document_` argument when `err` is null.
-
Robert Knight authored
Fix a bug in `onDocumentReady` where the callback would fire continuously with an error after the frame either navigated to a cross-origin URL, or was removed from its parent frame. Also emit a more appropriate error message in the case where the frame is disconnected. In the VitalSource integration this issue manifested in an `onDocumentReady` callback firing continuously for the previous chapter's iframe when it was removed from the document. This didn't cause an error because the callback registered by the VS integration does nothing in that case, but it wasted resources.
-
- 08 Nov, 2022 5 commits
-
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
Note that customization was needed on the "clear results" button: The cancel icon SVG (used by `CancelIcon`) is problematic — not a new issue — because it doesn't fill its viewbox and has to be manually sized. This prevents us from using the `icon` prop of the `Button` component for now. Tracked in https://github.com/hypothesis/frontend-shared/issues/675
-
Lyza Danger Gardner authored
Instead of drilling a single `AuthState` object cobbled together by `HypothesisApp` down through a number of components — each of which make use of different properties on the object in different ways — get what's needed in each component using store selectors Resolve related, potentially-confusing duplicate or misleading type names in `version-data`.
-
dependabot[bot] authored
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.41.0 to 5.42.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.42.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
-
Robert Knight authored
When clicking an annotation in the sidebar that corresponds to a different chapter of a VitalSource book than the one that is currently loaded, navigate the book to the chapter associated with the annotation. - Add `goToCfi` and `goToURL` to the set of `<mosaic-book>` APIs that the client uses, and implementations of these in the VitalSource EPUB demo. - Add optional `navigateToSegment` method for integrations, which triggers a navigation to the segment (eg. EPUB chapter) of a document that matches an annotation's selectors. - Add new `navigateToSegment` sidebar => guest RPC call, which forwards to the integration's `navigateToSegment` implementation. - Change `FrameSyncService.scrollToAnnotation` to accept an annotation rather than just a tag, so the service can conveniently match the annotation against the EPUB chapter information for the guest - Add logic in `FrameSyncService.scrollToAnnotation` to invoke the `navigateToSegment` RPC method instead of `scrollToAnnotation` if the annotation is in a different segment of the document than is currently loaded. Once the navigation to the new segment has completed, the document still needs to be scrolled to the annotation. FrameSyncService service handles this by recording the ID of the annotation in a `_pendingScrollToId` field, and then performing the scroll once the annotation anchors.
-
- 07 Nov, 2022 13 commits
-
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
Robert Knight authored
Recent updates to Puppeteer created issues with caching locally and GitHub Actions. See https://github.com/hypothesis/client/pull/4887#issuecomment-1295051454. Rather than work around this, we've decided to try and simplify our tech stack by removing this dependency and using the system's version of Chrome to run tests. This does introduce a risk of issues due to behavior differences between Chrome on one system and another, but it is mature and well-tested software, and such issues have been rare in practice. We also had this mismatch for years when running CI on Jenkins, which used an Alpine-packaged version of Chrome. See also Slack discussion at https://hypothes-is.slack.com/archives/C1M8NH76X/p1667826360220049.
-
dependabot[bot] authored
Bumps [@rollup/plugin-replace](https://github.com/rollup/plugins/tree/HEAD/packages/replace) from 5.0.0 to 5.0.1. - [Release notes](https://github.com/rollup/plugins/releases) - [Changelog](https://github.com/rollup/plugins/blob/master/packages/replace/CHANGELOG.md) - [Commits](https://github.com/rollup/plugins/commits/url-v5.0.1/packages/replace) --- updated-dependencies: - dependency-name: "@rollup/plugin-replace" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [axe-core](https://github.com/dequelabs/axe-core) from 4.5.0 to 4.5.1. - [Release notes](https://github.com/dequelabs/axe-core/releases) - [Changelog](https://github.com/dequelabs/axe-core/blob/v4.5.1/CHANGELOG.md) - [Commits](https://github.com/dequelabs/axe-core/compare/v4.5.0...v4.5.1) --- updated-dependencies: - dependency-name: axe-core dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [reselect](https://github.com/reduxjs/reselect) from 4.1.6 to 4.1.7. - [Release notes](https://github.com/reduxjs/reselect/releases) - [Changelog](https://github.com/reduxjs/reselect/blob/master/CHANGELOG.md) - [Commits](https://github.com/reduxjs/reselect/compare/v4.1.6...v4.1.7) --- updated-dependencies: - dependency-name: reselect dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [sass](https://github.com/sass/dart-sass) from 1.55.0 to 1.56.0. - [Release notes](https://github.com/sass/dart-sass/releases) - [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md) - [Commits](https://github.com/sass/dart-sass/compare/1.55.0...1.56.0) --- updated-dependencies: - dependency-name: sass dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [@sentry/browser](https://github.com/getsentry/sentry-javascript) from 7.17.2 to 7.17.4. - [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/7.17.2...7.17.4) --- updated-dependencies: - dependency-name: "@sentry/browser" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [@sentry/cli](https://github.com/getsentry/sentry-cli) from 2.8.0 to 2.8.1. - [Release notes](https://github.com/getsentry/sentry-cli/releases) - [Changelog](https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md) - [Commits](https://github.com/getsentry/sentry-cli/compare/2.8.0...2.8.1) --- updated-dependencies: - dependency-name: "@sentry/cli" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss) from 3.2.1 to 3.2.2. - [Release notes](https://github.com/tailwindlabs/tailwindcss/releases) - [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/master/CHANGELOG.md) - [Commits](https://github.com/tailwindlabs/tailwindcss/compare/v3.2.1...v3.2.2) --- updated-dependencies: - dependency-name: tailwindcss dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
- 04 Nov, 2022 9 commits
-
-
Robert Knight authored
-
Robert Knight authored
-
Robert Knight authored
When new annotations are loaded in the store, compare their segment information (ie. which EPUB chapter they were made in) against that of the guest frames. If there is no match, skip sending the annotation to the frame. This prevents annotations made on chapters other than the current one from mis-anchoring or being incorrectly marked as orphans. Currently these "skipped" annotations will appear only in the sidebar after a short delay. This is because logic elsewhere in the application expects all loaded annotations to be marked as anchored or not and doesn't display them until the anchoring status is set, or a 500ms timeout is reached. For these skipped annotations, they don't appear until after the 500ms timeout expires. This will be addressed separately.
-
Robert Knight authored
Add a utility for comparing the document segment information captured in an annotation against the segment info provided by a frame. This will be used to send annotations on EPUBs to the guest frame only when the corresponding chapter is loaded.
-
Lyza Danger Gardner authored
Collapse the cluster toolbar on initial render and allow user to toggle it open and closed. Fixes #4926
-
Lyza Danger Gardner authored
Allow an integration to declare whether or not it supports clustered highlights. At this time, only HTML documents support the feature. Fixes #4925
-
Lyza Danger Gardner authored
Add a simple controller and component for initializing and updating styles associated with highlight clusters.
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
- 03 Nov, 2022 2 commits
-
-
Robert Knight authored
-
Robert Knight authored
Enable the sidebar to know which segment of a document (eg. which chapter in an EPUB) is loaded in a guest frame. The sidebar will then be able to use this to know which annotations associated with the document it should send to the guest, as well as whether to trigger a segment/chapter navigation when scrolling to an annotation.
-
- 02 Nov, 2022 6 commits
-
-
Lyza Danger Gardner authored
Refactor `highlights.scss` to configure highlight style and subsequently apply styles. Add CSS variables for use for dynamic styling of highlight clusters. Update some comment wording in `gulpfile` for clarity.
-
Robert Knight authored
These address a couple of issues raised in code review.
-
Robert Knight authored
For annotations on EPUBs, text position selectors can only be validly compared when they come from annotations made on the same EPUB Content Document. For annotations that come from different content documents, it is necessary to first compare the ordering of the content documents using CFIs, and then compare text positions. The use of `Number.POSITIVE_INFINITY` with replaced with `Number.MAX_SAFE_INTEGER` when handling annotations without positions, as `Math.sign(MAX_SAFE_INTEGER - MAX_SAFE_INTEGER)` is 0 (ie. treat two annotations with missing positions as having the same position), but `Math.sign(POSITIVE_INFINITY - POSITIVE_INFINITY)` is NaN.
-
Robert Knight authored
CFI steps that cannot be parsed as base-10 integers are invalid, but we try to fail gracefully in `compareCFIs` by using a string comparison. This introduces a problem when one step is an integer and another is a string. Handle this by arbitrarily deciding that numbers sort before strings. We could have chosen other approaches as well.
-
Robert Knight authored
Per https://idpf.org/epub/linking/cfi/#sec-path-res, a CFI refers to a location within an EPUB's Package Document starting from the root `<package>` element, not the `<spine>`.
-
Robert Knight authored
When sorting EPUB annotations by document location, we will need to consider both the chapter/page and the text position within the chapter/page. Add utilities for comparing CFIs that will be useful for this purpose. The full sorting rules are specified by https://idpf.org/epub/linking/cfi/#sec-sorting. These utilities currently only implement the steps needed to compare simple CFIs which identify a location in the book's spine (eg. "/2/4/6"), rather than a "full" CFI which also contains a step indrection ("!") followed by the location of the selected content in the chapter.
-
- 01 Nov, 2022 1 commit
-
-
Lyza Danger Gardner authored
This property is set when an annotation object is initialized in: * annotator: In `guest`, when a user creates a new annotation or highlight via the adder controls * sidebar: In the `annotations` store module when annotation objects are initialized before being added to the store This property is communicated between the sidebar and the annotator when exchanging annotation data. In the annotator, the value of this property is used to set an additional CSS class on drawn anchor highlights (`<hypothesis-highlight>` `span`s). The presence of this CSS class will allow subsequent differentiated styling for highlight clusters.
-
- 31 Oct, 2022 2 commits
-
-
dependabot[bot] authored
Bumps [chance](https://github.com/chancejs/chancejs) from 1.1.8 to 1.1.9. - [Release notes](https://github.com/chancejs/chancejs/releases) - [Commits](https://github.com/chancejs/chancejs/commits/1.1.9) --- updated-dependencies: - dependency-name: chance dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [@rollup/plugin-node-resolve](https://github.com/rollup/plugins/tree/HEAD/packages/node-resolve) from 15.0.0 to 15.0.1. - [Release notes](https://github.com/rollup/plugins/releases) - [Changelog](https://github.com/rollup/plugins/blob/master/packages/node-resolve/CHANGELOG.md) - [Commits](https://github.com/rollup/plugins/commits/node-resolve-v15.0.1/packages/node-resolve) --- updated-dependencies: - dependency-name: "@rollup/plugin-node-resolve" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
-