* Reorder templates to save master templates first, and use new ITemplateService
* Add obsoletion
* Fix if statement
* Refactor async calls into async method to avoid multiple get awaiters
* Update interface
* Avoid breaking changes
---------
Co-authored-by: Sven Geusens <sge@umbraco.dk>
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* Updated search services to start searching from a guid based key.
* Solved api breaking changes with new minor version
* Ordering and formatting
* Changed interface default implementation to the new method...
* Consolidated version
* PR review cleanup and renaming
* Added a custom RichTextRequiredValidator, to check that the empty richtext object (still with json) can be required or not. We are now testing the markdown needs to have a value
* Fixed namespaced and moved back wrong class
* Cleanup
* Add delivery api toggle
* Add Dockerfile
* add docker compose template
* Ensure no duplicate database containers
* Remove wwwroot/umbraco permission check
We don't need write access to this folder
* Provide environment variables from dokcer-compose
* Build as debug from compose
The compose file is intended to be used for local dev
* Don't store password in docker files
Still not great to store it in .env but it's fine for dev
* Add additional template files
* Add docker ignore file
* Enable delivery API in settings too
* Enable models builder mode toggle
* Add WIP for umbraco release option
* Add starterkit option
* Add option to chose LTS or latest
* Add development mode option
* Add descriptions
* Add display names
* Add backoffice development at explicit default
* Rearrange DevelopmentMode before ModelsBuilderMode
* Allow specifying a port for the compose file
* Add some notes
* Move starterkits into its own template
* Don't update version
* Remove test configuration from Dockerfile
* Add default modelsbuilder option
* Update descriptions
* overwrite default values in IDE development
* Remove obsolete runtime minification
* Try and fix healthcheck
* Don't use post action for starterkit
otherwise it won't work with Rider, also make the version 13.0.0 if LTS is chosen
* Move UmbracoVersion above FinalVersion
Otherwise, rider will use UmbracoVersion for some weird reason
* Fix healthcheck
* Use else instead of second if for modelsbuilder
* Obsolete UmbracoVersion
* Remove custom release option
* Use forward slashes for volumes
* Add MSSQL_SA_PASSWORD env variable
* Temporarily limit acceptance tests so it works
* Try again
* Disable SQLServer integration tests
* Set UseHttps to false in appsettings.Development.json
You still want to be able to use non-https when developing locally
* Fix LTS version
LTS still needs installer endpoints added
* Update permissions of wwwroot/umbraco for v13 sites
* Fix conditional in Program.cs
* Undo pipeline shenanigans
* Find the constraint name based on table,column,type name instead of hardcoding it
* removed unnecesary using
* Check constraint rename seperatly from column rename
* Added Element <-> Document type switch validation
* Apply HasElementconfigured to block grid and block list
Fix smalle bug + optimization
* Moved some of the logic into warnings trough notifcationhandlers and eventmessages
* Cleanup
* Update openApi spec (merge changes)
* Add IsElement check between parent and child on creation
* Typos
* Transformed HasElementConfigured into HasElementConfigured
* Typo
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* IsElement Validation refactor
Moved validation logic regarding doctype IsElement switch into its own service as it will be consumed by more things down the line
* commit missing services...
* Naming improvements
* Bugfix
* First batch of integration tests for ElementSwitchValidator
* More integration tests!
* Little reformatting
* Changed the default values of block based configuration to match expected values.
---------
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Remove auditlogging from media service
* Refactor to use backofficeSecurityaccessor to get backoffice user
* Fix constructor error
* Reinstate media service move
* Go back to audit type delete
---------
Co-authored-by: Elitsa <elm@umbraco.dk>
* Improve migration performance
* Fix PR review comments
* Revert tags migration for sql lite as the optimized sql doesn't work properly and sqlLite datasets should not be large anyway
* Removed type attribute from processed local links
improved code readabilty by using multi return type to private class
* Removed type attribute from processed locallinks in delivery api
* Removed type attribute from expected output regarding locallink parsing
* Added type atttribute removal in deliveryapi for local image link and invalid local links
Test rename for clarity and
* Make block editor base classes public
* Update BlockEditorValues.cs
Change to trigger a new build for #16774
---------
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Removed type attribute from processed local links
improved code readabilty by using multi return type to private class
* Removed type attribute from processed locallinks in delivery api
* Removed type attribute from expected output regarding locallink parsing
* Cleanup
* Fixed spacing bug
* Added 2 more edge test cases
---------
Co-authored-by: Elitsa <elm@umbraco.dk>
* Support new localLink format in core link parsing
* Updated devliery api to work with the new locallinks format
Added tests for old and new format handling.
* Fix error regarding type attribute not always being present (for example old format or non local links)
* Do not execute query if no macros found
* Request cache the permission lookup
* Unbreak change by adding obsolete ctor
* Clean up
* Wrap indexing for delivery API in a scope
* Do not ask options every time for the timeout, instead listen for updates
* Lookup content types once instead of one by one
* Use TryGetValue instead
* Do a distinct on user ids before building index, to avoid issue with more than 2100 parameters
* Don't map ContentDto (it's unused)
* Introduce request bound block editor element cache
---------
Co-authored-by: kjac <kja@umbraco.dk>
* Include umbraco-package.json manifests in package telemetry and add ID
* Add package ID to ManifestResponseModel
* Use async service method and HTTP client factory
* Avoid breaking changes
* Made previewhubupdater work with full cache refreshes
* Make signout_Async available on coreSignInManager
* Allow Migrations to signout the logged in user
* Adding a guid to a user requires resignin
* Added a token revoke mechanism during migrations
* Revert "Make signout_Async available on coreSignInManager"
This reverts commit b103cf119a505e61de659dc206f6c85c2a27f2d5.
* Revert add allRefreshed on preview hub
Clarified with a comment
* Updated failing test setups
---------
Co-authored-by: Sven Geusens <sge@umbraco.dk>
* Updates JSON schema for Umbraco 10 with latest references for Forms and Deploy (#15918)
* Ported over #15928 changes for 13.3 RC (#16023)
* Ported over #15928 changes for 13.3 RC
* Use GetOrAdd()
* Lock dictionary initialization
---------
Co-authored-by: Jason Elkin <jasonelkin86@gmail.com>
* Make the API content response builder extendable (#16056)
* Make the API content response builder extendable
* DeliveryApiJsonTypeResolver needs to be extendable too
* bump rc to regular
* Bump to next minor
* Add blocks in RTE telemetry (#16104)
* Add blocks telemetry
* Use constants and update tests
* V13: Add property type information to telemetry (#16109)
* Add property type counts to telemetry
* Use constants and fix tests
* Update description
* V10: Fix for fallback file upload (#14892) (#15868)
* Fix for fallback file upload (#14892)
* Added check for file type
* Removed unneeded null checks and fixed tabs
* Cleaning
* Cleanups, cleanups, and removal of unneeded null checks
* Reverted removal of relationshipservice
* Revert null check removals (too risky)
---------
Co-authored-by: Ambert van Unen <AvanUnen@ilionx.com>
Co-authored-by: Laura Neto <12862535+lauraneto@users.noreply.github.com>
(cherry picked from commit 0b5d1f8aa6)
* Fix up formatting
---------
Co-authored-by: Ambert van Unen <ambertvu@gmail.com>
* Implementors using Umbraco.Tests.Integration won't have to override GetLocalizedTextService
(cherry picked from commit b0016687eb)
(cherry picked from commit 2bb56f1b81)
* Fix logic for retrieving lastKnownElement
(cherry picked from commit cae106bfe8)
* bump version
* Bump version
* Bump version
* Since v13 properties can sometimes be of type IRichTextEditorIntermediateValue - this was unexpected in the XPath navigator code (#16121)
* Webhook log improvements (#16200)
* fix: include all headers in webhook log
* feat: return webhook log status from server
* feat: make webhook logs deep linkable
* feat: add webhook log pagination
* feat: improve webhook request/response body preview
* V13: Optimize custom MVC routing (#16218)
* Introduce EagerMatcherPolicy to conditionally bypass content routing
* Ensure that the candidate we disable dynamic routing for is valid
* Skip Umbraco endpoints
* Simplify logic a bit
* Move install logic to matcher
* Ensure that dynamic routing is still skipped when in upgrade state
* Fixup comments
* Reduce nesting a bit
* Don't show maintenance page when statically routed controllers are hít
* Remove excess check, since installer requests are statically routed
* V13: Optimize custom MVC routing (#16218)
* Introduce EagerMatcherPolicy to conditionally bypass content routing
* Ensure that the candidate we disable dynamic routing for is valid
* Skip Umbraco endpoints
* Simplify logic a bit
* Move install logic to matcher
* Ensure that dynamic routing is still skipped when in upgrade state
* Fixup comments
* Reduce nesting a bit
* Don't show maintenance page when statically routed controllers are hít
* Remove excess check, since installer requests are statically routed
(cherry picked from commit ba9ddd11da)
* Property source level variation should only be applied when configured (#16270)
* Property source level variation should only be applied when configured (#16270)
(cherry picked from commit ab32bac5d9)
* Merge pull request from GHSA-j74q-mv2c-rxmp
* Merge pull request from GHSA-j74q-mv2c-rxmp
* Merge pull request from GHSA-j74q-mv2c-rxmp
* Fix up after merge
* Remove obselete test
---------
Co-authored-by: Andy Butland <abutland73@gmail.com>
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
Co-authored-by: Jason Elkin <jasonelkin86@gmail.com>
Co-authored-by: Sven Geusens <sge@umbraco.dk>
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
Co-authored-by: Ambert van Unen <ambertvu@gmail.com>
Co-authored-by: Lars-Erik <lars-erik@aabech.no>
Co-authored-by: Joshua Daniel Pratt Nielsen <jdpnielsen@gmail.com>
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
Co-authored-by: Sebastiaan Janssen <sebastiaan@umbraco.com>
Co-authored-by: Rasmus John Pedersen <mail@rjp.dk>
* Working import/export media/document types
* WIP
* Refactoring of import doctype/media types
- added analyze endpoint to extract relevant data without fully processing the file
- split up import endpoints into POST & PUT
- removed availableAtAction as the new endpoint allows clients to call the POST/PUT endpoints with confidence
- Added a new service that is responsible for turning temp files into Import compatible XML and being able to extracty partial information from it
* Wrap persistance access in scopes
* Typos, formatting, clean-up
* PR feedback
* update openapi spec
* Changed deleteFile flag to _temporaryFileService.EnlistDeleteIfScopeCompletes
* Itty bitty typo
* Moved magic cleanup into its own method so orchestration can decide when.
---------
Co-authored-by: Sven Geusens <sge@umbraco.dk>
Co-authored-by: kjac <kja@umbraco.dk>
* Sends GUID instead of the numeric ID for SignalR Preview Hub
* Add possibility to set cookies as HttpOnly
* Set UMB_PREVIEW cookie as HttpOnly
* fixup! Add possibility to set cookies as HttpOnly
* Refactor ContentFinderByIdPath to more readable
* Create ContentFinderByKeyPath reusing logic from ContentFinderByIdPath
* Add a comment to DisableFindContentByIdPath setting
* Append new content finder
* Change ordering of content finders registrations
* Refactor with a base class
* Update/refactor and add tests regarding ContentFindersByIdentifier
* Fix comment
* Avoiding breaking change
* Make usages use non-obsolete implementation
* Fixed todo in config instead of use the one old legacy name even more. Also obsoleted the ContentFinderByIdPath
* add `preview` as an allowed backoffice client route
---------
Co-authored-by: Sven Geusens <sge@umbraco.dk>
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* Improve getting and initializing new block value layouts
* Remove unnecessary generic type constraints
* Add and use new block value/layout item constructors in tests
* Removed GetLayouts that did not make sense
* Added constructor to BlockItemData to simplify explicit usages
---------
Co-authored-by: kjac <kja@umbraco.dk>
* Allow FileUpload and Imagecropper to upload files in the same way
* Fixed issue with backward compatibility
* Exclude from converter
* Bugfix if editorvalue is not a string
* Fix file upload value editor + clean up + throw explicitly if editor value is invalid
* Revert changes to FileUploadPropertyEditor - the stored property data format remains the file path
* Actually revert all changes to FileUploadPropertyEditor
* Also revert JsonValueConverter
* Cleanup remove unused equality methods
---------
Co-authored-by: kjac <kja@umbraco.dk>
* fix: include all headers in webhook log
* feat: return webhook log status from server
* feat: make webhook logs deep linkable
* feat: add webhook log pagination
* feat: improve webhook request/response body preview