Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Home - adding the contextual help #3950

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

Andrea-Guevara
Copy link
Contributor

@Andrea-Guevara Andrea-Guevara commented Feb 4, 2025

References

Description

Adding the contextual help feature via the “*dsContextHelp” directive to the “top-level-community-list” and “recent-item-list” components that form part of the home page.

Instructions for Reviewers

List of changes in this PR:

  • Following the example of other components where contextual help has been implemented; The “*dsContextHelp” directive has been imported into ts and used in the html of the “top-level-community-list” and “recent-item-list” components.
  • New translation keys have been created.

Include guidance for how to test or review your PR.

  1. Click on the contextual help button to the right of the language selection in the header.
  2. Read the contextual help text that will appear in the headings.

Checklist

This checklist provides a reminder of what we are going to look for when reviewing your PR. You do not need to complete this checklist prior creating your PR (draft PRs are always welcome).
However, reviewers may request that you complete any actions in this list if you have not done so. If you are unsure about an item in the checklist, don't hesitate to ask. We're here to help!

  • My PR is created against the main branch of code (unless it is a backport or is fixing an issue specific to an older branch).
  • My PR is small in size (e.g. less than 1,000 lines of code, not including comments & specs/tests), or I have provided reasons as to why that's not possible.
  • My PR passes ESLint validation using npm run lint
  • My PR doesn't introduce circular dependencies (verified via npm run check-circ-deps)
  • My PR includes TypeDoc comments for all new (or modified) public methods and classes. It also includes TypeDoc for large or complex private methods.
  • My PR passes all specs/tests and includes new/updated specs or tests based on the Code Testing Guide.
  • My PR aligns with Accessibility guidelines if it makes changes to the user interface.
  • My PR uses i18n (internationalization) keys instead of hardcoded English text, to allow for translations.
  • My PR includes details on how to test it. I've provided clear instructions to reviewers on how to successfully test this fix or feature.
  • If my PR includes new libraries/dependencies (in package.json), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
  • If my PR includes new features or configurations, I've provided basic technical documentation in the PR itself.
  • If my PR fixes an issue ticket, I've linked them together.

@tdonohue tdonohue added bug accessibility 1 APPROVAL pull request only requires a single approval to merge port to dspace-7_x This PR needs to be ported to `dspace-7_x` branch for next bug-fix release port to dspace-8_x This PR needs to be ported to `dspace-8_x` branch for next bug-fix release labels Feb 4, 2025
@Andrea-Guevara
Copy link
Contributor Author

Good afternoon @tdonohue! I followed the example of implementing contextual help in other components. But there is a flaw regarding the Store usage. Angular couldn't find a provider for the Store dependency within the context of the TopLevelCommunityListComponent component. And in this implementation the TopLevelCommunityListComponent depends on the ContextHelpService service, which in turn depends on the Store service.

I've done some research and, as this is a test, I could mock up the Store. Is that feasible?

@tdonohue
Copy link
Member

tdonohue commented Feb 4, 2025

@Andrea-Guevara : Since the error is in a test/spec, you may be able to simply set the "Store" to an empty value, like some other specs do. See for example: https://github.com/DSpace/dspace-angular/blob/main/src/app/access-control/group-registry/group-form/group-form.component.spec.ts#L258

That should likely work here, because that group-form.componet.ts is another area that contextual help is used, and that appears to be what was needed in group-form.component.spec.ts.

@Andrea-Guevara
Copy link
Contributor Author

Good morning @tdonohue! I analyzed what was different and the only thing missing was the “overrideComponent”. I've already added it and the test passed!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1 APPROVAL pull request only requires a single approval to merge accessibility bug port to dspace-7_x This PR needs to be ported to `dspace-7_x` branch for next bug-fix release port to dspace-8_x This PR needs to be ported to `dspace-8_x` branch for next bug-fix release
Projects
Status: 🙋 Needs Reviewers Assigned
Development

Successfully merging this pull request may close these issues.

2 participants