* Initial refactor (pending more tests)
* Fix structural querying across changing publish states + add tests accordingly
* Add tests to validate ancestor and descendant order
* Remove axis querying from published status filtering
---------
Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
* Ported changes from Umbraco 13 around not throwing exceptions with identity IDs that can't be parsed to an integer or GUID.
* Revert async changes (better done systemically in a separate update).
* Introduce publishNotifications method on IMembershipMemberService.cs
* Fix test
* Add PublishNotificationSaveOptions
* Fix up according to comments
* Use numeric values for flag enum
* Update src/Umbraco.Core/Services/MemberService.cs
Co-authored-by: Andy Butland <abutland73@gmail.com>
* Update src/Umbraco.Core/Services/MemberService.cs
Co-authored-by: Andy Butland <abutland73@gmail.com>
---------
Co-authored-by: Andy Butland <abutland73@gmail.com>
* Backport use of thread delay over sleep and handle dispose in FileSystemMainDomLock (from PRs #18119 and #18147)
* Applied suggestion from code review.
* Model, service, test and migration updates to add name and description to webhook.
* Update typed client models.
* Fixed migration.
* Front-end rendering and update of name and description.
* Updated OpenApi.json
* Reworked integration tests to avoid breaking change.
* add name and description to editor header
* remove name and description properties
* render name as first column in the table
* remove focus from url
* remove required from name
* add parentheses to align UX
* add webhook paths
* use edit path const in collection
* add paths for root
* remove unused
* remove unused state
---------
Co-authored-by: Mads Rasmussen <madsr@hey.com>
* Add CacheNullValues option to RepositoryCachePolicy
* Cache null values in DictionaryByKeyRepository
* Fixed issue with nullable reference.
* Updated logic for caching of null values.
* Update src/Umbraco.Infrastructure/Cache/DefaultRepositoryCachePolicy.cs
Co-authored-by: Sven Geusens <geusens@gmail.com>
* Made the NullValueRepresentation overwritable in a generic manner
* Improve generic NullValueCachePolicyResolver
* Revert Commits and clarify logic with comment
This reverts commit 8befb437921cb6e3b87725cefb92a6afbf3d28fb "Improve generic NullValueCachePolicyResolver"
Also reverts 8adf0a2 - Made the NullValueRepresentation overwritable in a generic manner
And 8adf0a2 - Made the NullValueRepresentation overwritable in a generic manner
* Update src/Umbraco.Infrastructure/Cache/DefaultRepositoryCachePolicy.cs
---------
Co-authored-by: Andy Butland <abutland73@gmail.com>
Co-authored-by: Sven Geusens <geusens@gmail.com>
Co-authored-by: Sven Geusens <sge@umbraco.dk>
* Added deliveries workspace view to the webhook details workspace.
* Front-end linting fixes.
* rename to unique
* update filter value
* make delivery feature folder
* move delivery workspace view for delivery feature folder
* correct details workspace view label and pathname to match name
* remove unused alias
* use singular form to align naming
* remove pagination as the default collection kind already includes this
* show icon
* remove double registration
* add observables for webhook data, add get methods + add jsdocs
* align UX with languages
* remove hardcoded fake name + make url the link
* remove redundant url in table
* render status code as tag
* use tags for enabled/disabled webhook state to align with users
* make the name more explicit
* move webhook root to a feature folder
* export consts
* fix webhook collection pagination
* move menu item manifests into root folder
* move webhook delivery filering responsibility from repo to workspace view
* reorganize
* move workspace
* fix import
* move entity actions
* export delivery consts
* dot not export const
* rename folder
* update name
* make event feature folder
* export consts
* move repository files
* more clean up
* split types
* add deprecation warning for a temp method
* bring back url to deliveries table
---------
Co-authored-by: Mads Rasmussen <madsr@hey.com>
* Avoid doing multiple lookups in dictionaries, avoid doing string interpolation & adding single char strings to a StringBuilder, made some private/internal classes & some private methods static when possible, use FrozenSet for InvalidFileNameChars
* Avoid some array + list allocations & async methods and made some private methods static
* Avoid double lookup of XML attribute (and double null check) & avoid an unneeded lookup before writing to a dictionary
* Avoid some double lookups
# Conflicts:
# src/Umbraco.Core/Services/LocalizedTextService.cs
* Avoid double lookups
# Conflicts:
# src/Umbraco.Core/Services/LocalizedTextService.cs
* Avoid double lookups
* List AsSpan, also to trigger a new build that hopefully goes through
* Avoid concatting strings when using writer & more static
* Updated CollectionBenchmarks to show that ToArray isn't always the fastest & Lists can be iterated nearly as fast as arrays (and that ToList is nearly as fast as ToArray on IReadOnlyLists in .NET 8)
* Fix rebase
* Use explicit types ❤️ (I thought it was the other way round...)
# Conflicts:
# src/Umbraco.Core/Services/LocalizedTextService.cs
* Reduce number of lines in HtmlStringUtilities.Truncate to pass code quality analysis
* Avoid double lookups & allocating empty arrays
* Use native List Find instead of LINQ
* add option to interface
* pass config to picker
* add option to interface
* force type
* add request args to type
* pass allowed content types as request args
* add comments
* allow for passing type
* more type safety
* use correct types
* use correct types
* add js docs
* remove debugger + map to only pass id to server
* add js docs
* align naming
* add null check
* align types
* implement allowedContentTypes for member search
* fix imports
* add types for media search
* add and use const
* align picker interfaces
* align models
* add entity type
* filter for null value
* explicit naming
* rename field
* use query params
* Implement content type scoped search in item search controllers
* Fix bad naming
* generate server models
* wire up backend
* generate server models
* add selectable filter to member picker
* Update member-picker-modal.element.ts
* Fix indexed search for specific member and media types
* export consts
---------
Co-authored-by: kjac <kja@umbraco.dk>
* Fix various routing and preview issues for the Delivery API in V15
* Fix breaking change in ctor
* Fix ambigious constructors
---------
Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
* Remove old values from checkboxlist
* Add validator for MultipleValueEditor
* chore: adds mocked "published" handler
* chore(mock): adds multiple dropdown
* chore(mock): adds dropdown multiple to 'all properties'
* adds localization
* feat: adds support to show invalid/legacy options
* feat: show invalid/legacy options to let the user decide what to do
* Add validator for radio buttons
---------
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* Expose schedule date for on document get endpoint
* typo fix
* stupid stuff
* Enable content scheduling features in the publishing service
* Replace obsoleted non async calls
* Add content scheduling test
* Publush and schedule combination test
* More invariantCulture notation allignment and more tests
* Link up api with updated document scheduling
* More invariant culture notation allignment
* Fix breaking change
* Return expected status codes.
* Fix constructor
* Forward Default implementation to actual core implementation
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* Forward default implementation to core implementation
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* Make content with scheduling retrieval scope safe
---------
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* Use data type configuration to determine default value for empty toggle property values.
* Added/updated unit tests.
* Fixed failing integration tests.
* Applied similar default value display for the slider property editor and aligned implementation of true/false with this.
* Fixed unit tests.
* Removed "duplicate" JsonPropertyName attributes and added a custom TypeInfoResolver for data type configuration so we can re-use the existing ConfigurationField attributes.
* Minor cleanup
---------
Co-authored-by: nikolajlauridsen <nikolajlauridsen@protonmail.ch>