- 06 Dec, 2019 1 commit
-
-
Robert Knight authored
Remove Hypothesis-Client-Version header from "trivial" API requests
-
- 05 Dec, 2019 7 commits
-
-
Lyza Gardner authored
Update sharing links to open in blank browser window
-
Lyza Danger Gardner authored
Pull out and consolidate local subcomponent `ShareLink` to make sure all sharing links are created equal. Fixes https://github.com/hypothesis/browser-extension/issues/261
-
Lyza Gardner authored
Fix click callback in `ShareLinks` to not track analytics events until clicked
-
Lyza Danger Gardner authored
Faulty construction of a click callback in each `ShareLinks` link was causing analytics tracking of associated events when the component loads, not on click. Fixes https://github.com/hypothesis/client/issues/1566
-
Lyza Gardner authored
Extract `AnnotationLicense` component
-
Lyza Danger Gardner authored
-
Robert Knight authored
Use fragment instead of query to pass config to sidebar app
-
- 04 Dec, 2019 3 commits
-
-
Kyle Keating authored
Pull out tag rendering from annotation.html into its own component
-
Robert Knight authored
Remove the custom headers from the `/api/` and `/api/links` API requests so that we can preload these routes very early in the sidebar app's startup process using `<link rel="preload">`, thus reducing the number of roundtrips required before showing annotations. The original motivations for adding this header (see [1]) don't really apply to these trivial API requests but to ones which result in real work on the backend. For context, see https://hypothes-is.slack.com/archives/C4K6M7P5E/p1575447372326000. [1] See https://github.com/hypothesis/client/pull/930.
-
Robert Knight authored
Use a URL fragment rather than query string to pass configuration from the host page to the sidebar app. Only the client, not h, needs access to this configuration, but passing it in a query string causes this information to act as a cache-buster for what should be a highly-cacheable resource (https://hypothes.is/app.html). The long query string also ends up polluting reports in tools like Google Analytics and h access logs. The content and format of the config string remains the same, only the delivery method has changed. Relevant context: https://hypothes-is.slack.com/archives/C4K6M7P5E/p1575447372326000
-
- 03 Dec, 2019 6 commits
-
-
mkdir-washington-edu authored
-
Lyza Gardner authored
Extract `AnnotationActionBar` Subcomponent from `Annotation`
-
Lyza Danger Gardner authored
Adjust `AnnotationActionButton` props to support this usage
-
Lyza Danger Gardner authored
-
Robert Knight authored
Extract `quote` function from annotation / view-filter
-
Robert Knight authored
Both `components/annotation` and `view-filter` modules had logic and tests for extracting a quote from an annotation object. Extract these into a shared `quote` function in `util/annotation-metadata`. One small change is that `view-filter`'s implementation allowed annotation objects with _no_ `target` property. These should never occur. There is a known issue where creating a Page Note results in an annotation with an _empty_ `target` property until the annotation is saved (see [1]). That case, which is still handled, looks like a mistake, but resolving it is outside the scope of this change. [1] https://github.com/hypothesis/client/issues/1290
-
- 02 Dec, 2019 13 commits
-
-
Robert Knight authored
Fix module load error on pages defining `require`
-
Robert Knight authored
There are two expressions which reference a global `require` function in the Browserify prelude. Both of them need to be rewritten to use `hypothesisRequire` instead. Previously only the first use was rewritten, which worked as long as the page didn't define its own `require` function. On https://qa.hypothes.is/search for example, h's JavaScript bundles do.
-
Robert Knight authored
Refactor `AnnotationBody` and `AnnotationQuote` styles
-
Lyza Gardner authored
Update annotation icons (footer icons) to newer, SVG variants
-
Robert Knight authored
Improve minification of JS bundles
-
Robert Knight authored
Bump autoprefixer from 9.7.2 to 9.7.3
-
dependabot-preview[bot] authored
Bumps [autoprefixer](https://github.com/postcss/autoprefixer) from 9.7.2 to 9.7.3. - [Release notes](https://github.com/postcss/autoprefixer/releases) - [Changelog](https://github.com/postcss/autoprefixer/blob/master/CHANGELOG.md) - [Commits](https://github.com/postcss/autoprefixer/compare/9.7.2...9.7.3) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
-
dependabot-preview[bot] authored
-
dependabot-preview[bot] authored
-
dependabot-preview[bot] authored
Bumps [eslint-plugin-react](https://github.com/yannickcr/eslint-plugin-react) from 7.16.0 to 7.17.0. - [Release notes](https://github.com/yannickcr/eslint-plugin-react/releases) - [Changelog](https://github.com/yannickcr/eslint-plugin-react/blob/master/CHANGELOG.md) - [Commits](https://github.com/yannickcr/eslint-plugin-react/compare/v7.16.0...v7.17.0) 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.578.0 to 2.581.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.578.0...v2.581.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
dependabot-preview[bot] authored
Bumps [eslint](https://github.com/eslint/eslint) from 6.7.1 to 6.7.2. - [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/v6.7.1...v6.7.2) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
-
- 28 Nov, 2019 6 commits
-
-
Robert Knight authored
- Move the styles for these components out of `annotation.scss` and into separate files to follow project conventions. - Refactor style names to use BEM-ish naming conventions There are some exceptions here because annotation body and quote elements have styles that are customized when the annotation is a reply or when the annotation card is hovered. Those customizations are still in annotation.scss because they need to match both the parent and child components.
-
Robert Knight authored
Remove the `hasContent` prop because it can be inferred by looking at the `text` prop instead. If an annotation has been moderated, then the `text` will either be non-empty if the user is a moderator or it will be redacted and thus be empty if the user is not a moderator.
-
Robert Knight authored
Make it easier to test a production build of the client locally by making `env NODE_ENV=production gulp watch` build code with production JS/CSS transforms applied but still load assets from the dev server instead of from https://cdn.hypothes.is. Add a flag to the function that builds the boot script indicating whether we are running the dev server, and take that into account when determining the asset path.
-
Robert Knight authored
When building the bundle, wait for the final stream to finish writing output, rather than the intermediate stream.
-
Robert Knight authored
In order to avoid conflicts with any existing global `require` functions on the host page, JS bundles are configured to export their `require` function as `hypothesisRequire` and bundles loader later are modified to use that function to import modules from earlier bundles. Overriding the name used for importing from earlier bundles was previously done by prepending some code to the start of the bundle. Unfortunately the source map information was not updated so this broke sourcemap locations in the generated bundle. Change the approach instead to modify the "prelude" script that Browserify inserts at the top of the bundle.
-
Robert Knight authored
When minifying code with terser, make sure the existing sourcemaps for the input code are taken into account.
-
- 27 Nov, 2019 1 commit
-
-
Robert Knight authored
Previously only the _contents_ of modules were minified, but not the module infrastructure that Browserify adds around it. Given lots of modules, this adds up. Replace `uglifify` with a small wrapper around terser, the package that actually compresses the code, and use it to minify both the contents of modules and the generated wrapper code. Calling terser directly allows us to a) use the current version of it (uglifyify was stuck on Terser 3.x) and b) upgrade/configure/replace it more directly in future. One other change here is that minifying modules is now done _after_ the transform that replaces `if (process.env.NODE_ENV == ...)` checks with `if (true)` or `if (false)`. This enables dead-code removal to remove the logic entirely. This reduces the minified size of `sidebar.bundle.js` from 368 KB to 311 KB (-15%) and `annotator.bundle.js` from 170 KB to 152 KB (-12.7%). Some vendor bundles are smaller, others are unaffected because they were already fully minified. The total minified size of all bundles is reduced by ~7%.
-
- 26 Nov, 2019 3 commits
-
-
Lyza Gardner authored
Remove unused Angular annotation-share template
-
Lyza Gardner authored
Make simple fix to `AnnotationShareControl` to suppress errors on logout
-
Lyza Danger Gardner authored
-