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

[NO MERGE] Testing API Reference #17953

Draft
wants to merge 32 commits into
base: master
Choose a base branch
from

Conversation

timunie
Copy link
Contributor

@timunie timunie commented Jan 11, 2025

What does the pull request do?

What is the current behavior?

What is the updated/expected behavior with this PR?

How was the solution implemented (if it's not obvious)?

Checklist

  • Group TOC by Assembly if possible

  • Filter private API by Xpath

  • Add hints for Unstable, Experimental or NotClientImplementable attributes

  • remove RemoteProtocol package from documentation source

  • bonus: test how md output looks like

Breaking changes

Obsoletions / Deprecations

Fixed issues

@avaloniaui-bot
Copy link

You can test this PR using the following package version. 11.3.999-cibuild0054255-alpha. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

@timunie timunie force-pushed the Housekeeping/API-Ref branch from 4f32220 to 3ac8441 Compare January 19, 2025 21:59
@timunie timunie changed the title Testing API Reference [NO MERGE] Testing API Reference Jan 19, 2025
@timunie timunie force-pushed the Housekeeping/API-Ref branch from 8079057 to 74226f5 Compare January 22, 2025 17:06
- Added own Presentation style
- Filter out by X-Path
@timunie
Copy link
Contributor Author

timunie commented Jan 29, 2025

Adding own Attribute badges at the moment only works if we copy and modify the presentation style. For some reason I had issues to get the correct base-path so hardcoded it for now.

image

https://timunie.github.io/Ava-ApiTests/html/T_Avalonia_Input_Platform_IPlatformDragSource.htm

Long-Term: If we are happy with it, I'll also ask SHFB Team if they are interested in adding this kind of flexibility. I think it could be useful for others as well.

@timunie
Copy link
Contributor Author

timunie commented Jan 29, 2025

Update2: filtering out PrivateAPI was quite simple using X-Path.

…ekeeping/API-Ref

# Conflicts:
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Avalonia.Sandcastle.PresentationStyles.deps.json
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/Configuration/BuildAssembler.config
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/RootWebsiteContent/GeneralError.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/RootWebsiteContent/PageNotFound.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/RootWebsiteContent/SearchHelp.aspx
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/RootWebsiteContent/SearchHelp.inc.php
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/RootWebsiteContent/SearchHelp.php
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/RootWebsiteContent/Web.Config
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/RootWebsiteContent/index.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/RootWebsiteContent/search.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/Templates/CautionAlertTemplate.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/Templates/CodeSnippetNumberedTemplate.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/Templates/CodeSnippetTemplate.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/Templates/LanguageAlertTemplate.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/Templates/NoteAlertTemplate.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/Templates/SecurityAlertTemplate.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/Templates/SyntaxSectionCodeTemplate.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/Templates/ToDoAlertTemplate.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/Templates/TopicTemplate.html
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/css/bulma.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/css/bulma.min.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/css/font-awesome.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/css/font-awesome.min.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/css/ja-JP.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/css/ko-KR.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/css/presentationStyle.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/css/vs.min.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/css/zh-CN.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/css/zh-TW.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/scripts/clipboard.min.js
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/scripts/highlight.min.js
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/scripts/jquery-3.5.1.min.js
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/scripts/presentationStyle.js
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/webfonts/fa-brands-400.ttf
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/webfonts/fa-brands-400.woff2
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/webfonts/fa-regular-400.ttf
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/webfonts/fa-regular-400.woff2
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/webfonts/fa-solid-900.ttf
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/webfonts/fa-solid-900.woff2
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/webfonts/fa-v4compatibility.ttf
#	Documentation/Api-Reference/DeployPresentationStyle/Components/AvaloniaHtml/webfonts/fa-v4compatibility.woff2
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Colorizer/DocumentTemplate.xaml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Colorizer/highlight.css
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Colorizer/highlight.js
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Colorizer/highlight.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Colorizer/highlight.xsl
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Colorizer/highlight_flowDoc.xsl
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Colorizer/highlight_openxml.xsl
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Configuration/xamlSyntax.config
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_de-DE.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_en-US.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_es-ES.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_fr-FR.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_it-IT.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_ja-JP.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_ko-KR.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_pt-BR.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_ru-RU.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_zh-CHS.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/Markdown_zh-CN.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_de-DE.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_en-US.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_es-ES.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_fr-FR.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_it-IT.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_ja-JP.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_ko-KR.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_pt-BR.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_ru-RU.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_zh-CHS.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/OpenXml_zh-CN.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_de-DE.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_en-US.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_es-ES.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_fr-FR.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_it-IT.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_ja-JP.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_ko-KR.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_pt-BR.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_ru-RU.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_zh-CHS.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/SharedContent_zh-CN.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/Content/WebsiteContent.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/SkeletonAPI.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/SkeletonConceptual.xml
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/de-DE.txt
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/en-US.txt
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/es-ES.txt
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/fr-FR.txt
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/it-IT.txt
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/ja-JP.txt
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/ko-KR.txt
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/pt-BR.txt
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/ru-RU.txt
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/zh-CHS.txt
#	Documentation/Api-Reference/DeployPresentationStyle/Components/Shared/StopWordList/zh-CN.txt
#	Documentation/PresentationStyles/AvaloniaHtml/AvaloniaHtmlPresentationStyle.cs
#	Documentation/PresentationStyles/AvaloniaHtml/AvaloniaHtmlTransformation.cs
#	Documentation/PresentationStyles/AvaloniaHtml/Configuration/BuildAssembler.config
#	Documentation/PresentationStyles/AvaloniaHtml/RootWebsiteContent/GeneralError.html
#	Documentation/PresentationStyles/AvaloniaHtml/RootWebsiteContent/PageNotFound.html
#	Documentation/PresentationStyles/AvaloniaHtml/RootWebsiteContent/SearchHelp.aspx
#	Documentation/PresentationStyles/AvaloniaHtml/RootWebsiteContent/SearchHelp.inc.php
#	Documentation/PresentationStyles/AvaloniaHtml/RootWebsiteContent/SearchHelp.php
#	Documentation/PresentationStyles/AvaloniaHtml/RootWebsiteContent/Web.Config
#	Documentation/PresentationStyles/AvaloniaHtml/RootWebsiteContent/index.html
#	Documentation/PresentationStyles/AvaloniaHtml/RootWebsiteContent/search.html
#	Documentation/PresentationStyles/AvaloniaHtml/Templates/CautionAlertTemplate.html
#	Documentation/PresentationStyles/AvaloniaHtml/Templates/CodeSnippetNumberedTemplate.html
#	Documentation/PresentationStyles/AvaloniaHtml/Templates/CodeSnippetTemplate.html
#	Documentation/PresentationStyles/AvaloniaHtml/Templates/LanguageAlertTemplate.html
#	Documentation/PresentationStyles/AvaloniaHtml/Templates/NoteAlertTemplate.html
#	Documentation/PresentationStyles/AvaloniaHtml/Templates/SecurityAlertTemplate.html
#	Documentation/PresentationStyles/AvaloniaHtml/Templates/SyntaxSectionCodeTemplate.html
#	Documentation/PresentationStyles/AvaloniaHtml/Templates/ToDoAlertTemplate.html
#	Documentation/PresentationStyles/AvaloniaHtml/Templates/TopicTemplate.html
#	Documentation/PresentationStyles/AvaloniaHtml/css/bulma.css
#	Documentation/PresentationStyles/AvaloniaHtml/css/bulma.min.css
#	Documentation/PresentationStyles/AvaloniaHtml/css/font-awesome.css
#	Documentation/PresentationStyles/AvaloniaHtml/css/font-awesome.min.css
#	Documentation/PresentationStyles/AvaloniaHtml/css/ja-JP.css
#	Documentation/PresentationStyles/AvaloniaHtml/css/ko-KR.css
#	Documentation/PresentationStyles/AvaloniaHtml/css/presentationStyle.css
#	Documentation/PresentationStyles/AvaloniaHtml/css/vs.min.css
#	Documentation/PresentationStyles/AvaloniaHtml/css/zh-CN.css
#	Documentation/PresentationStyles/AvaloniaHtml/css/zh-TW.css
#	Documentation/PresentationStyles/AvaloniaHtml/scripts/clipboard.min.js
#	Documentation/PresentationStyles/AvaloniaHtml/scripts/highlight.min.js
#	Documentation/PresentationStyles/AvaloniaHtml/scripts/jquery-3.5.1.min.js
#	Documentation/PresentationStyles/AvaloniaHtml/scripts/presentationStyle.js
#	Documentation/PresentationStyles/AvaloniaHtml/webfonts/fa-brands-400.ttf
#	Documentation/PresentationStyles/AvaloniaHtml/webfonts/fa-brands-400.woff2
#	Documentation/PresentationStyles/AvaloniaHtml/webfonts/fa-regular-400.ttf
#	Documentation/PresentationStyles/AvaloniaHtml/webfonts/fa-regular-400.woff2
#	Documentation/PresentationStyles/AvaloniaHtml/webfonts/fa-solid-900.ttf
#	Documentation/PresentationStyles/AvaloniaHtml/webfonts/fa-solid-900.woff2
#	Documentation/PresentationStyles/AvaloniaHtml/webfonts/fa-v4compatibility.ttf
#	Documentation/PresentationStyles/AvaloniaHtml/webfonts/fa-v4compatibility.woff2
#	Documentation/PresentationStyles/Colorizer/DocumentTemplate.xaml
#	Documentation/PresentationStyles/Colorizer/highlight.css
#	Documentation/PresentationStyles/Colorizer/highlight.js
#	Documentation/PresentationStyles/Colorizer/highlight.xml
#	Documentation/PresentationStyles/Colorizer/highlight.xsl
#	Documentation/PresentationStyles/Colorizer/highlight_flowDoc.xsl
#	Documentation/PresentationStyles/Colorizer/highlight_openxml.xsl
#	Documentation/PresentationStyles/GlobalSuppressions.cs
#	Documentation/PresentationStyles/PresentationStyles.csproj
#	Documentation/PresentationStyles/Properties/AssemblyInfo.cs
#	Documentation/PresentationStyles/Shared/Configuration/xamlSyntax.config
#	Documentation/PresentationStyles/Shared/Content/Markdown_de-DE.xml
#	Documentation/PresentationStyles/Shared/Content/Markdown_en-US.xml
#	Documentation/PresentationStyles/Shared/Content/Markdown_es-ES.xml
#	Documentation/PresentationStyles/Shared/Content/Markdown_fr-FR.xml
#	Documentation/PresentationStyles/Shared/Content/Markdown_it-IT.xml
#	Documentation/PresentationStyles/Shared/Content/Markdown_ja-JP.xml
#	Documentation/PresentationStyles/Shared/Content/Markdown_ko-KR.xml
#	Documentation/PresentationStyles/Shared/Content/Markdown_pt-BR.xml
#	Documentation/PresentationStyles/Shared/Content/Markdown_ru-RU.xml
#	Documentation/PresentationStyles/Shared/Content/Markdown_zh-CHS.xml
#	Documentation/PresentationStyles/Shared/Content/Markdown_zh-CN.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_de-DE.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_en-US.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_es-ES.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_fr-FR.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_it-IT.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_ja-JP.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_ko-KR.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_pt-BR.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_ru-RU.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_zh-CHS.xml
#	Documentation/PresentationStyles/Shared/Content/OpenXml_zh-CN.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_de-DE.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_en-US.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_es-ES.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_fr-FR.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_it-IT.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_ja-JP.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_ko-KR.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_pt-BR.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_ru-RU.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_zh-CHS.xml
#	Documentation/PresentationStyles/Shared/Content/SharedContent_zh-CN.xml
#	Documentation/PresentationStyles/Shared/Content/WebsiteContent.xml
#	Documentation/PresentationStyles/Shared/SkeletonAPI.xml
#	Documentation/PresentationStyles/Shared/SkeletonConceptual.xml
#	Documentation/PresentationStyles/Shared/StopWordList/de-DE.txt
#	Documentation/PresentationStyles/Shared/StopWordList/en-US.txt
#	Documentation/PresentationStyles/Shared/StopWordList/es-ES.txt
#	Documentation/PresentationStyles/Shared/StopWordList/fr-FR.txt
#	Documentation/PresentationStyles/Shared/StopWordList/it-IT.txt
#	Documentation/PresentationStyles/Shared/StopWordList/ja-JP.txt
#	Documentation/PresentationStyles/Shared/StopWordList/ko-KR.txt
#	Documentation/PresentationStyles/Shared/StopWordList/pt-BR.txt
#	Documentation/PresentationStyles/Shared/StopWordList/ru-RU.txt
#	Documentation/PresentationStyles/Shared/StopWordList/zh-CHS.txt
#	Documentation/PresentationStyles/Shared/StopWordList/zh-CN.txt
@timunie
Copy link
Contributor Author

timunie commented Jan 30, 2025

Upd 3: Grouping the TOC by Assembly may be possible but no straight forward way found as of now. I gave up on this for now.

Upd 4: Added an icon for namespace groups because it is confusing otherwise imo.

@timunie
Copy link
Contributor Author

timunie commented Jan 31, 2025

Okay md files are not that great imo:
image

I prefer to stick to html output if team agrees. A MD plugin could be written if we had much more time / capacity to do so. But it needs to be docusaurus compatible and the curent one isn't.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants