- 29 Mar, 2021 9 commits
-
-
Robert Knight authored
-
Robert Knight authored
- Capitalize acryonyms in variable names except for the first word - Update the description of a stub test
-
Robert Knight authored
Explicitly define the common `Integration` interface which is implemented by both `HTMLIntegration` and `PDFIntegration`. This makes it more obvious what is part of the common interface that `Guest` can depend on and what are additional properties or methods that are specific to a particular implementation.
-
Robert Knight authored
Make the HTML document integration structure consistent with the PDF document integration by: - Extracting the integration implementation into a `HTMLIntegration` class in `src/annotator/integrations/html.js` - Renaming the document metadata extraction class from `DocumentMeta` to `HTMLMetadata` (to match PDFMetadata) and moving it to `src/annotator/integrations/html-metadata.js`
-
Robert Knight authored
Per coding conventions recently agreed in the team, acronyms in symbol names are capitalized unless they are the first word of a camelCased symbol.
-
Robert Knight authored
The name made it unclear what the boolean argument did.
-
Robert Knight authored
Unify the code paths in the `Guest` class that invoke document type/viewer-specific code such as getting the document URI and metadata and anchoring and generating selectors. - Replace `pdfIntegration` and `documentMeta` fields in `Guest` with an `integration` field which provides the interface to document-type specific functionality - Replace the roundabout method of `PDFIntegration` customizing the anchoring logic with `anchor` and `describe` methods which the `Guest` calls as needed - Add documentation and tests for `uri` and `getMetadata` methods in `PDFIntegration`
-
Robert Knight authored
Adjust the capitalization of the fake to match the name of the real class.
-
Robert Knight authored
Create an `integrations` directory within `src/annotator` which will house the `*Integration` classes that encapsulate document type/viewer-specific functionality, and create the first version of the PDF integration by moving/renaming the existing `PDF` class. The supporting `PDFMetadata` class has also been moved. Per recently agreed code conventions [1], the `PDFIntegration` and `PDFMetadata` classes are no longer default exports. [1] https://github.com/hypothesis/frontend-toolkit/blob/master/docs/js-guide.md#default-exports
-
- 26 Mar, 2021 5 commits
-
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
Add shared button components in a temporary "shared/components" directory. The plan is to extract this to the `frontend-shared` package once it has been more further integrated into the client preact app(s) and the kinks are worked out. This will replace `src/sidebar/components/Button` and will be reusable in other apps
-
Lyza Danger Gardner authored
Update project typecheck configuration so that typechecking may be additionally applied to the `dev-server` area of the project. This helps for typechecking usage of components in the "UI Playground" app. * Add `tsconfig.json` for `dev-server` area of project * Add "project references" at root level See https://www.typescriptlang.org/docs/handbook/project-references.html * Update `package.json` `typecheck` script
-
Robert Knight authored
Move the functionality that PdfSidebar implements elsewhere and remove the class. This mainly consists of side-by-side mode, but there is also the logic to get the scrollable document container for use with the bucket bar. The PDF-specific logic has been moved to the `PDF` class in `src/annotator/plugin/pdf.js` and the generic logic has been moved to the `Sidebar` or `Guest` classes. This change is a step towards creating an common interface between the Guest/Sidebar and the document-type/viewer specific functionality. In future the `PDF` class will evolve into the implementation of this interface for PDFs. For HTML documents the logic is currently contained directly in the `Guest` class and this will be extracted out into a class that implements the same interface. - Move the PDF-specific parts of side-by-side mode into `PDF#fitSideBySide` - Move the generic parts of side-by-side mode into the `Sidebar` class. This will allow it to be reused for HTML documents or other document types in future - Move the logic for determining the scrollable container into `PDF#contentContainer` - Change the annotator setup code in `annotator/index.js` to always instantiate the `Sidebar` class, regardless of document type
-
Eduardo Sanz García authored
When the `adder` is hidden reposition the outer container to the top-left corner of the host page.
-
- 25 Mar, 2021 3 commits
-
-
Robert Knight authored
-
Robert Knight authored
Add a PDF document link on the dev server homepage which uses a URL that has a random suffix parameter added on page load and each time the link is clicked. This is useful for testing the behavior of client features (eg. annotation fetch and real time updates) which should show the same content/notifications etc. across copies of the "same" document presented at different URLs. This will aid with testing changes such as https://github.com/hypothesis/h/pull/6542.
-
Eduardo Sanz García authored
-
- 24 Mar, 2021 2 commits
-
-
Kyle Keating authored
This changes the sorting in the notebook to sort by date created rather than last edited date ("updated"). This prevents root threads from resorting to the top after they are edited in the notebook. This also changes the way the sidebar orders root threads when using Newest/Oldest sorting filter in the same manner.
-
Eduardo Sanz García authored
`Notebook` and `Sidebar` components create `<hypothesis-...>` elements that attach shadow DOMs. This PR makes the `Adder` class responsible of creating its own outer element.
-
- 23 Mar, 2021 3 commits
-
-
Eduardo Sanz García authored
While there is no mechanism to sync new annotations in the notebook, we force re-rendering of the iframe on every 'openNotebook' event, so we fetch the new annotations. This is a temporary fix that is intended to be removed.
-
Lyza Danger Gardner authored
Add some pattern structure to the playground app and a placeholder "Menu" demo
-
Eduardo Sanz García authored
Added a11y tests to these components: - NotebookView - FilterSelect - NotebookResultCount - PaginationNavigation To following components I didn't add a11y tests because they are wrappers of one or several components already tested: - PaginatedThreadList (ThreadList + PaginationNavigation) - NotebookFilters (FilterSelect)
-
- 22 Mar, 2021 9 commits
-
-
Robert Knight authored
This ensures that GitHub Actions checks run for PRs submitted from forks, which includes all PRs submitted by people outside the Hypothesis organization. Note that this change which commit the checks run on. See [1] for details. This change also matches how GitHub CI is set up in other projects (eg. lms, h). [1] https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull_request
-
dependabot[bot] authored
Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.863.0 to 2.868.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.863.0...v2.868.0) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [@sentry/browser](https://github.com/getsentry/sentry-javascript) from 6.2.2 to 6.2.3. - [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.2...6.2.3) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [postcss-url](https://github.com/postcss/postcss-url) from 10.1.1 to 10.1.3. - [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/10.1.1...10.1.3) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [terser](https://github.com/terser/terser) from 5.6.0 to 5.6.1. - [Release notes](https://github.com/terser/terser/releases) - [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md) - [Commits](https://github.com/terser/terser/commits) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [commander](https://github.com/tj/commander.js) from 7.1.0 to 7.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/v7.1.0...v7.2.0) Signed-off-by: dependabot[bot] <support@github.com>
-
Robert Knight authored
-
Matthew King authored
-
Robert Knight authored
We have had Google Analytics disabled for the Hypothesis client for over a year and do not plan to re-enable it. We may need analytics for other purposes in future (for example, to help inform product design). In that case we will likely implement a solution that is a better fit for whatever those needs end up being. This commit removes the existing analytics code in the meantime so that we don't spend time maintaining something that is not used. Fixes #3027
-
- 19 Mar, 2021 3 commits
-
-
Robert Knight authored
-
Robert Knight authored
-
Robert Knight authored
Display a visual error message if fetching the client's configuration fails, eg. due to a failure to fetch a grant token in the LMS app.
-
- 18 Mar, 2021 6 commits
-
-
Eduardo Sanz García authored
Notebook class creates the container element and instantiates the preact component NotebookModal. NotebookModal listens to the openNotebook event sent through the eventBus and hides and shows the modal accordingly. The creation of the iframe is a costly operation: it involves several backend calls and the rendering of it in the DOM. Therefore, we delay the creation of the iframe element until the NotebookModal listens for the `openNotebook` event. The useEffect's cleanup of the NotebookModal componente has significant effects because it resets the overflow CSS property of document.body. As pointed by @robertknight, `render(null, container)` destroys the component triggering the useEffect's cleanup function.
-
Lyza Danger Gardner authored
Emit a `ResultSizeError` when encountering too many annotations to load. Update `NotebookView` to display a message when this happens.
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
Add a basic Panel component to be used by `SidebarPanel` and for other basic panel-y needs.
-
Lyza Danger Gardner authored
-