- 09 Mar, 2021 7 commits
-
-
Eduardo Sanz García authored
This was never an issue because the parent elements are destroyed, however for completeness is better to add it. In addition, I modified the test so that all the elements created are added to a single parent container who is deleted after each test.
-
Robert Knight authored
-
Robert Knight authored
When no `contentContainer` has been specified in Sidebar's config, avoid setting it when calling the `BucketBar` constructor. This leaves the responsibility of determining how to observe whole-document scrolling up to the BucketBar.
-
Robert Knight authored
During code review it was suggested that "content container" might be confused to mean the content of the bucket bar.
-
Robert Knight authored
In current usage of the `BucketBar` we only ever have a single scrollable container to observe. Simplify the `BucketBar` API to pass in this element directly rather than a selector and add associated tests.
-
Robert Knight authored
Prop-types checks are now globally disabled because we're using JSDoc + TS instead.
-
dependabot[bot] authored
Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.3 to 6.5.4. - [Release notes](https://github.com/indutny/elliptic/releases) - [Commits](https://github.com/indutny/elliptic/compare/v6.5.3...v6.5.4) Signed-off-by: dependabot[bot] <support@github.com>
-
- 08 Mar, 2021 22 commits
-
-
Robert Knight authored
Components no longer have a `propTypes` property.
-
Robert Knight authored
We no longer set `propTypes` on components.
-
Robert Knight authored
This enables checking by TypeScript
-
Robert Knight authored
Prop-types checking has been replaced by JSDoc + TypeScript.
-
Robert Knight authored
Prop-types checking has been replaced by static checking done by TypeScript.
-
Robert Knight authored
Detecting a Preact/React functional component that does not use `propTypes` is impossible to do with 100% accuracy. `function Foo() { return 'Hello' }` is a perfectly valid component with no obvious Preact/React features. Fortunately because of the way this helper is used, we can make do with an imperfect check. If `mockImportedComponents` mocks something which is not really a component, that mock will be overridden with a real mock later.
-
dependabot[bot] authored
Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.854.0 to 2.858.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.854.0...v2.858.0) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [postcss](https://github.com/postcss/postcss) from 8.2.6 to 8.2.7. - [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.6...8.2.7) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [exorcist](https://github.com/thlorenz/exorcist) from 1.0.1 to 2.0.0. - [Release notes](https://github.com/thlorenz/exorcist/releases) - [Commits](https://github.com/thlorenz/exorcist/compare/v1.0.1...v2.0.0) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [autoprefixer](https://github.com/postcss/autoprefixer) from 10.2.4 to 10.2.5. - [Release notes](https://github.com/postcss/autoprefixer/releases) - [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md) - [Commits](https://github.com/postcss/autoprefixer/compare/10.2.4...10.2.5) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.3.1 to 18.3.4. - [Release notes](https://github.com/octokit/rest.js/releases) - [Commits](https://github.com/octokit/rest.js/compare/v18.3.1...v18.3.4) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.2.2 to 4.2.3. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v4.2.2...v4.2.3) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [eslint-plugin-mocha](https://github.com/lo1tuma/eslint-plugin-mocha) from 8.0.0 to 8.1.0. - [Release notes](https://github.com/lo1tuma/eslint-plugin-mocha/releases) - [Changelog](https://github.com/lo1tuma/eslint-plugin-mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/lo1tuma/eslint-plugin-mocha/compare/8.0.0...8.1.0) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [axe-core](https://github.com/dequelabs/axe-core) from 4.1.2 to 4.1.3. - [Release notes](https://github.com/dequelabs/axe-core/releases) - [Changelog](https://github.com/dequelabs/axe-core/blob/develop/CHANGELOG.md) - [Commits](https://github.com/dequelabs/axe-core/compare/v4.1.2...v4.1.3) Signed-off-by: dependabot[bot] <support@github.com>
-
dependabot[bot] authored
Bumps [mocha](https://github.com/mochajs/mocha) from 8.3.0 to 8.3.1. - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v8.3.0...v8.3.1) Signed-off-by: dependabot[bot] <support@github.com>
-
Eduardo Sanz García authored
The @hypothesis/frontend-shared lives now in another repo. The recommended way to test the package in the context of the client is using yalc. Therefore, it is better to ignores yalc related files so they are not committed by mistake.
-
dependabot[bot] authored
Bumps [chai](https://github.com/chaijs/chai) from 4.3.1 to 4.3.3. - [Release notes](https://github.com/chaijs/chai/releases) - [Changelog](https://github.com/chaijs/chai/blob/main/History.md) - [Commits](https://github.com/chaijs/chai/compare/4.3.1...4.3.3) Signed-off-by: dependabot[bot] <support@github.com>
-
Robert Knight authored
Check that non-empty tags are assigned when expected.
-
Robert Knight authored
`createAnnotation` used to accept a partially filled-out annotation object with arbitrary properties. However the argument was only ever used to set the `$highlight` flag. Therefore we can simplify the interface by making the method accept just a `highlight` flag instead. - Simplify `createAnnotation` argument - Add tests for handling of `highlight` option to `createAnnotation` - Remove the `createHighlight` method in guest as it was just a trivial wrapper around `createAnnotation({ highlight: true })`
-
Robert Knight authored
Add missing tests for this critical property of new annotations. In the process revise some variable names in `createAnnotation` that were misleading.
-
Robert Knight authored
Add tests for the main code paths in `Guest` that call `createAnnotation`.
-
Robert Knight authored
Convert the `createAnnotation` method of `Guest` to use async/await instead of manual chaining of Promise operations. This makes it easier to follow the logic and see that document metadata is assigned to the annotation before it is broadcast to other parts of the annotator in the `beforeAnnotationCreated` event. It also makes it easier to external code (eg. the tests) to determine when `createAnnotation` is "done" and has finished updating the annotation. - Convert `Guest#createAnnotation` to use async/await - Update tests for `createAnnotation` to await the returned Promise instead of a fixed timeout - Add a missing check in `createAnnotation` tests for the argument passed to the `beforeAnnotationCreated` event
-
- 05 Mar, 2021 9 commits
-
-
Lyza Danger Gardner authored
-
Lyza Danger Gardner authored
Open links to documents in a new tab. This is important in the Notebook view at present to "escape" the Notebook's frame, but makes sense in all contexts as it more closely adheres to our pattern of opening links to external properties in new windows.
-
Lyza Danger Gardner authored
Make sure document titles that are not linked don't look like links.
-
Lyza Danger Gardner authored
Make `AnnotationTimestamps` align with changes to `ShowDocumentInfo`; it is now a dumb component. Centralize logic in `AnnotationHeader`.
-
Lyza Danger Gardner authored
- Refactor `ShowDocumentInfo`: don't link to documents for third-party annotations. This is a possibly-temporary measure to prevent linking to documents that are not directly accessible, e.g. in an LMS context. - Remove unnecessary forwarding of `showDocumentInfo` through several components. - Centralize some logic in `AnnotationHeader` and make `ShowDocumentInfo` a dumb component.
-
Eduardo Sanz García authored
These changes enforce that the bucket-bar is destroyed and allows multiple creations of the bucket bar, if needed.
-
Robert Knight authored
The sidebar is not the only other frame that may be interested in new annotations. The notebook is too.
-
Robert Knight authored
- Extract the repeated logic for checking the data passed to the event's callback into a `createCallback` helper - Add separate tests for HTML and PDF documents - Add test for the error path when getting the URL of a PDF fails
-
Robert Knight authored
Replace the "plugin" functionality in the Guest that indirectly instantiates the `DocumentMeta`, `PDF` and `CrossFrame` classes with direct instantiation of those classes. The annotator part of the Hypothesis client is no longer a pluggable toolbox which can be arbitrarily extended by user-provided plugins. Removing the "plugins" logic and replacing it with direct construction of the necessary classes removes a lot of indirection that made the code harder to follow and also makes it easier for TypeScript to statically check the code. It will also enable the `config` object that is passed to `Guest` to be paired down to just the fields that are actually needed and properly typed. In future we will need some kind of plugin/integration facility to support different document viewers. For we will build a more specific document type integration facility when the time comes. - Remove `this.plugins` field from `Guest` class and `pluginClasses` config and replace with direct construction of `PDFIntegration`, `DocumentMeta` and `CrossFrame` classes - Update the `AnchoringImpl` typedef to correctly reflect that some anchoring implementations (HTML) have a synchronous `describe` method - Remove unnecessary `config` argument to `PDF` constructor - Replace the `PDF: {}` content in the guest config with `documentType: 'pdf'` as a more obvious way for the annotator entry point to configure which document viewer integration is loaded. In future we can generalize this to support different types of viewer integration.
-
- 03 Mar, 2021 2 commits
-
-
Eduardo Sanz García authored
-
Eduardo Sanz García authored
This PR prevents scrolling of the body of the host when the notebook is opened. Reported [here](https://github.com/hypothesis/client/pull/3024#pullrequestreview-592240569). This solution doesn't work for iOS < 13.
-