- 20 Mar, 2018 3 commits
-
-
Robert Knight authored
Move sidebar services to src/sidebar/services/
-
Robert Knight authored
Following the plan outlined in #687, move services into a `services/` directory. The definition of "services" in that plan (a possibly stateful module that handles interaction with an external party) is slightly more narrow than what constitutes an Angular service (a stateful singleton that has dependencies on injectable services/values). However as a first approximation most Angular services are services as defined in #687, so I've simply moved them all to the `services/` directory.
-
Robert Knight authored
Rename src/sidebar/{store => services/api}
-
- 19 Mar, 2018 1 commit
-
-
Robert Knight authored
Give the service which provides a client for the Hypothesis API a more obvious name and place it in a `services/` dir in accordance with the plan outlined in #687. The previous name of "store" was particularly confusing because of the existence of another kind of unrelated store (the Redux one) in the application. The service was previously registered with the `factory` method but has the same structure as all the other services which are registered with `service`, so I changed that for consistency.
-
- 16 Mar, 2018 2 commits
-
-
Sheetal Umesh Kumar authored
-
Sheetal Umesh Kumar authored
-
- 12 Mar, 2018 2 commits
-
-
Robert Knight authored
Show the world icon only for open groups in the groups dropdown.
-
Robert Knight authored
ADR: Sidebar application architecture
-
- 08 Mar, 2018 5 commits
-
-
Sheetal Umesh Kumar authored
private group icon otherwise. Fixes https://github.com/hypothesis/product-backlog/issues/513
-
Robert Knight authored
-
Robert Knight authored
-
Robert Knight authored
Default to notes tab when only notes present
-
Robert Knight authored
`selectedTab` is set to "note" rather than "page" if only page notes are present.
-
- 07 Mar, 2018 3 commits
-
-
Hannah Stepanek authored
This adds two tests that verify the annotations tab is selected when there are annotations present and the page notes tab is selected when only page notes are present.
-
Hannah Stepanek authored
Change the default tab to focus on page notes when there are no annotations and only page notes in a group. This way it directs the user where they need to go. Less clicking == yay! If there are no annotations at all, the annotations tab should be selected.
-
Robert Knight authored
-
- 01 Mar, 2018 1 commit
-
-
Robert Knight authored
Allow multiple state modules to handle the same action
-
- 26 Feb, 2018 1 commit
-
-
Robert Knight authored
In some cases multiple state modules may need to handle the same action. For example, when annotations are loaded or unloaded we may want to update both the set of loaded annotations and also the current selection. This commit changes the `createReducer` helper and the code that uses it in `reducers/index.js` so that multiple state modules can define update functions that handle the same action. Note that all update functions get the same, _previous_ state as input and there is no guarantee on precedence if they return conflicting updates. See also: https://redux.js.org/faq/actions#is-there-always-a-one-to-one-mapping-between-reducers-and-actions
-
- 21 Feb, 2018 4 commits
-
-
Robert Knight authored
-
Robert Knight authored
-
Robert Knight authored
Remove activity page links for third-party open groups
-
Robert Knight authored
Activity pages are currently only supported for open groups belonging to the h service's first party authority. The team has agreed that the best way to resolve this would be to only include the "activity page" link in the `/api/groups` response for groups where that is supported. However to give us more time to hammer out the API details, we are committing a small change to the client in the interim.
-
- 20 Feb, 2018 3 commits
-
-
Robert Knight authored
-
Robert Knight authored
-
Robert Knight authored
Specify npm package version to publish to S3
-
- 19 Feb, 2018 8 commits
-
-
Robert Knight authored
Sometimes the "Publish" step has ended up publishing version N-1 to the CDN when building the tag for version N. I believe this happens due to npm's package publishing API not guaranteeing immediate visiblity of the latest version when it returns. If the publish task runs before the update has propagated inside their network, then the publish step re-uploads the previous version to the CDN. This commit attempts to resolve the issue by specifying a package version explicitly. We might find that this is not enough and that the publish step either has to wait until the update has propagated or we have to use a locally-built tarball. Fixes #602
-
Robert Knight authored
-
Robert Knight authored
-
Robert Knight authored
Pass "authority" query param when fetching groups list
-
Robert Knight authored
Without this argument, the "h" service does not know which authority's groups should be returned if the user is not logged in.
-
Robert Knight authored
-
Robert Knight authored
-
Robert Knight authored
Show a list of groups for logged out users.
-
- 18 Feb, 2018 1 commit
-
-
Sheetal Umesh Kumar authored
At the moment we only show one group i.e Public for logged out users. we should also show those groups to logged out users. See https://github.com/hypothesis/product-backlog/issues/417
-
- 16 Feb, 2018 6 commits
-
-
Robert Knight authored
-
Robert Knight authored
-
Sheetal Umesh Kumar authored
Only wait for document URI before fetching groups in sidebar
-
Robert Knight authored
Fixes a regression after 36c46608 where the stream and single annotation page views failed to load. 36c46608 made the groups service wait for the host page's document URI to be determined before making a call to the `/api/groups` endpoint passing that URI as a parameter. In the stream (`/stream`) and single annotation page routes, there is no host page and so the promise returned by `getDocumentUriForGroupSearch` never resolved. Avoid waiting for this URI in that case and avoid passing the `document_uri` parameter to the `/api/groups` endpoint. This commit introduces a new `isSidebar` test rather than using `annotationUI.isSidebar` because that piece of app state is not yet initialized at the point when `groups.load()` is called in the route's `resolve` function in src/sidebar/index.js.
-
Robert Knight authored
-
Robert Knight authored
-