diff options
Diffstat (limited to 'app/assets/javascripts/helpers/help_page_helper.js')
-rw-r--r-- | app/assets/javascripts/helpers/help_page_helper.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/app/assets/javascripts/helpers/help_page_helper.js b/app/assets/javascripts/helpers/help_page_helper.js new file mode 100644 index 00000000000..0e824548646 --- /dev/null +++ b/app/assets/javascripts/helpers/help_page_helper.js @@ -0,0 +1,21 @@ +import { joinPaths, setUrlFragment } from '~/lib/utils/url_utility'; + +const HELP_PAGE_URL_ROOT = '/help/'; + +/** + * Generate link to a GitLab documentation page. + * + * This is designed to mirror the Ruby `help_page_path` helper function, so that + * the two can be used interchangeably. + * @param {String} path - Path to doc file relative to the doc/ directory in the GitLab repository. + * Optionally, including `.md` or `.html` prefix + * @param {String} options.anchor - Name of the anchor to scroll to on the documentation page. + */ +export const helpPagePath = (path, { anchor = '' } = {}) => { + let helpPath = joinPaths(gon.relative_url_root || '/', HELP_PAGE_URL_ROOT, path); + if (anchor) { + helpPath = setUrlFragment(helpPath, anchor); + } + + return helpPath; +}; |