Elitsa Marinovska f7d719af06 V15: Utilizing content type filtering for navigation data instead of .OfType<T>() (#17639)
* Implement GetContentTypeAliasForType which will replace the need for .OfType<T>();

* Refactor EnumerateAncestorsOrSelfInternal to be generic and extracting checks

* Add types to implementation referencing the old non-generic method

* Using

* Replace Ancestors.OfType<T> implementation

* Refactor EnumerateDescendantsOrSelfInternal to be generic

* Fixing references by adding IPublishedContent type param

* Cleanup + removing unused method

* Replace Descendants.OfType<T> implementation

* Remove unnecessary enumeration

* Updating Children.OfType<T>() implementation

* Adding correct types

* Fixing SiblingsAndSelf implementation

* Refactor TryYieldSelfOfType

* Remove nested checks

* Add comments and retrieval of content type alias from T in the private helper methods

* Simplify implementation based on review comments

* Add case when you get all root keys without a type

* Refactoring

* Renaming + review comments

* Rewrite SiblingsAndSelf

---------

Co-authored-by: kjac <kja@umbraco.dk>
2024-11-28 17:18:18 +01:00
2024-11-13 16:37:46 +01:00
2024-11-26 12:07:26 +01:00
2024-11-27 16:20:18 +01:00
2024-11-27 16:20:18 +01:00
2022-09-27 14:22:34 +02:00
2024-11-11 13:02:33 +01:00
2024-10-01 15:03:02 +02:00
2024-11-26 12:24:31 +01:00

Umbraco CMS

GitHub license PRs Welcome Mastodon Follow Chat about Umbraco on Discord Read what's going on in the Umbraco Discord chat now Build status

Umbraco is a free and open source .NET content management system. Our mission is to help you deliver delightful digital experiences by making Umbraco friendly, simpler and social.

Learn more at umbraco.com

Umbraco Logo

Looking to install Umbraco?

You can get started using the following commands on Windows, Linux and MacOS (after installing the .NET Runtime and SDK):

dotnet new install Umbraco.Templates
dotnet new umbraco --name MyProject
cd MyProject
dotnet run

Documentation

Our comprehensive documentation takes you from the fundamentals on how to start with Umbraco to deploying it to production.

Some important documentation links to get you started:

Get help

If you need a bit of feedback while building your Umbraco projects, we are chatty on Discord. Our Discord server serves both a social space but also has channels for questions and answers. Feel free to lurk or join in with your own questions. Or just post your daily Wordle score, up to you!

Looking to contribute back to Umbraco?

You came to the right place! Our GitHub repository is available for all kinds of contributions:

Umbraco is contribution-focused and community-driven. If you want to contribute back to the Umbraco source code, please check out our guide to contributing.

Tip: You should not run Umbraco from source code found here. Umbraco is extremely extensible and can do whatever you need. Instead, install Umbraco as noted above and then extend it any way you want to.

Description
Umbraco is a free and open source .NET content management system helping you deliver delightful digital experiences.
Readme 448 MiB
Languages
C# 59.5%
TypeScript 39.9%
JavaScript 0.3%
HTML 0.2%