Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 33 additions & 2 deletions .github/workflows/publish-documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,11 @@ jobs:
docfx metadata assembly-metadata.json
mv temp ${{ env.friendly-version }}

- name: 'Snapshot guide for v${{ env.friendly-version }}'
shell: bash
run: |
cp -r api-reference/guide api-reference/${{ env.friendly-version }}/guide

- name: 'Discover all versions'
id: discover-versions
shell: bash
Expand All @@ -116,7 +121,10 @@ jobs:
cp api-reference/api-reference.json /tmp/api-reference.json
for ver in $(echo "${{ steps.discover-versions.outputs.versions }}" | tr ',' ' '); do
jq --arg ver "$ver" --arg group "v${ver}" \
'.build.content += [{"dest": "", "files": ["*.yml"], "group": $group, "src": $ver, "rootTocPath": "~/toc.html"}] |
'.build.content += [
{"dest": "", "files": ["*.yml"], "group": $group, "src": $ver, "rootTocPath": "~/toc.html"},
{"dest": "guide", "files": ["*.{md,yml}"], "group": $group, "src": ($ver + "/guide"), "rootTocPath": "~/toc.html"}
] |
.build.groups = (.build.groups // {}) |
.build.groups[$group] = {"dest": $ver}' \
/tmp/api-reference.json > /tmp/api-reference-new.json
Expand All @@ -131,7 +139,7 @@ jobs:
{
echo "### YamlMime:TableOfContent"
echo "- name: Guide"
echo " href: guide/"
echo " href: ${latest}/guide/introduction.html"
echo "- name: Reference"
echo " dropdown: true"
echo " items:"
Expand All @@ -145,6 +153,29 @@ jobs:
done
} > api-reference/toc.yml

- name: 'Inject latest version and released versions table into index.md'
shell: bash
run: |
latest="${{ steps.discover-versions.outputs.latest }}"
{
echo "## Released Versions"
echo ""
echo "| Version | Guide | API Reference |"
echo "|---------|-------|---------------|"
for ver in $(echo "${{ steps.discover-versions.outputs.versions }}" | tr ',' '\n' | sort -Vr); do
if [ "$ver" = "$latest" ]; then
label="v${ver} (latest)"
else
label="v${ver}"
fi
echo "| ${label} | [Guide](${ver}/guide/introduction.html) | [API Reference](${ver}/PolylineAlgorithm.html) |"
done
} > /tmp/versions_section.md
awk '/{versions_section}/{while((getline line < "/tmp/versions_section.md") > 0) print line; close("/tmp/versions_section.md"); next} {print}' \
api-reference/index.md > /tmp/index.md
mv /tmp/index.md api-reference/index.md
sed -i "s|{version}|${latest}|g" api-reference/index.md

- name: 'Build documentation'
shell: bash
run: docfx build api-reference/api-reference.json
Expand Down
3 changes: 1 addition & 2 deletions api-reference/api-reference.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@
{
"files": [
"index.md",
"toc.yml",
"guide/*.{md,yml}"
"toc.yml"
],
"exclude": [
"_docs/**"
Expand Down
3 changes: 2 additions & 1 deletion api-reference/docs-versioning/public/version-switcher.js
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,8 @@
'/' + targetVersion + '/'
);
} else {
newPathname = window.location.pathname.replace(/\/$/, '') + '/' + targetVersion + '/';
var siteRootPath = new URL(getSiteRoot(), window.location.href).pathname.replace(/\/$/, '');
newPathname = siteRootPath + '/' + targetVersion + '/PolylineAlgorithm.html';
}

window.location.pathname = newPathname;
Expand Down
20 changes: 11 additions & 9 deletions api-reference/index.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
# PolylineAlgorithm API Reference

Welcome! This documentation provides guides, configuration options, examples, and FAQs for the PolylineAlgorithm library.
For detailed class and method docs, see the [auto-generated API documentation](https://petesramek.github.io/polyline-algorithm-csharp/).
For detailed class and method docs, see the versioned [API Reference]({version}/PolylineAlgorithm.html).

## Contents

- [Quick Start Guide](./guide.md)
- [Configuration Options](./configuration.md)
- [Advanced Usage](./advanced.md)
- [Examples](./examples.md)
- [FAQ](./faq.md)
- [Introduction]({version}/guide/introduction.html)
- [Getting Started]({version}/guide/getting-started.html)
- [Configuration Options]({version}/guide/configuration.html)
- [Advanced Scenarios]({version}/guide/advanced-scenarios.html)
- [Samples]({version}/guide/sample.html)
- [FAQ]({version}/guide/faq.html)

{versions_section}

## Links

- [API Reference Site](https://petesramek.github.io/polyline-algorithm-csharp/)
- [Contributing Guidelines](../CONTRIBUTING.md)
- [Changelog](./changelog.md) (if provided)
- [API Reference]({version}/PolylineAlgorithm.html)
- [Contributing Guidelines](https://github.com/petesramek/polyline-algorithm-csharp/blob/main/CONTRIBUTING.md)
Loading