* build(github): check that the "close" job only runs when the appropriate label is applied
it follows that the "build" job would only have built an environment when the label was applied
* build(github): check that the action is run directly on the repository and not from a fork
this alleviates the problem that the deploymentToken for Azure only exists within the repository
* feat: resolve TODO by removing quiet option
* feat: exclude ./src/mocks from production build
* feat: load only msw when running through vite
* feat: optimise load order
* feat: handles mocked logos with virtual path
* feat: loads mocked service worker from virtual path
* feat: loads assets from virtual path
* feat: forces MSW=on for the static build
* build: adds storybook workflow copied over from the old backoffice repository
* build: limits where the build runs
* build: adds workflow to build a static version of the backoffice upon request
* build: excludes the `/umbraco/backoffice/assets` folder from navigation fallback just in case
* build: triggers run when the workflow file itself changes
* build: triggers run when package.json changes
* build: marks the 'contrib' branch as production
* build: activates static builds on preview/* labels
* build: bumps github checkout version
* build: updates key for backoffice web app
* build: updates key for storybook
* build: disables build for release branches to preseve on preview environments
* build(deps-dev): update storybook from 8.4.7 to 8.5.6
* build(deps): update tiptap from 2.11.2 to 2.11.5
* build(deps-dev): update eslint stuff to latest
* build(deps): update element-internals-polyfill from 1.3.12 to 1.3.13
* build(deps): update marked from 15.0.6 to 15.0.7
* build(deps-dev): update vite from 5.4.14 to 6.1.0
* build(deps-dev): update globals to 15.15.0 (eslint dependency)
* build(deps): update icon libraries to latest
* build(deps-dev): update prettier from 3.4.2 to 3.5.1
* chore: generate consts
* build(deps-dev): update test-related libraries
* feat: copy over code from the tiny base64-js library because it is not exported as esm and has not been updated in 4 years
* build(deps-dev): remove dependency from base64-js
* build(deps-dev): upgrade rollup dependencies
* test: disable tests for tinyce
* build(deps-dev): update @babel/core to 7.26.9
* build(deps): update storybook to latest
* build(deps-dev): update types
* build(deps-dev): update typedoc from 0.27.6 to 0.27.7
* build(deps-dev): update @rollup/plugin-commonjs to latest
* build(deps): import tiny as default and re-export as module and default to make everyone happy (and avoid commonjs pitfalls)
* build: remove dependency on commonjs to build externals
* build(deps-dev): uninstall @rollup/plugin-commonjs as it is no longer needed
* test: reenable tinymce tests
* fix: sets a default label
this mistake was highlighted by the test runner
* test: reenable tinymce tests
* build: ignores autogenerated test file
* build: adds github error logging to icon generator
* build: log as error
* build: adds tests for generate:* scripts
* build: optimises icons with svgo to remove useless things like comments
this also ensures that icons are unchanged when we upgrade icon library packages as they would normally include things like versions as comments in the files
* feat: adds script to run madge in a CI environment
* build: adds check for circular dependencies
* build: move actions higher up
* build: only print annotation once
* build: make script not fail CI until dependencies are fixed
* run codeql without building the solution
* restore dotnet
* Revert "restore dotnet"
This reverts commit 3e22bc1a760a350366bed0a335ced6116e7c2c28.
* Revert "run codeql without building the solution"
This reverts commit 9ceaea778124a73e0d7ff0c29ab192cf4700ae60.
* use global.json for codeql
* do not build solution
* Update to .net 8 preview 1
* Update npoco to 5.7.0
* Update pipeline to use .net 8
* Revert "Update npoco to 5.7.0"
This reverts commit f7795afa77a41ef2719f639405f73d9c21e4b12e.
* Fix tests and updated OpenApi.json
* use dotnet 8 in linux container
* Updated templates and docker image to dotnet 8
* Bugfix
* R
Updated docker images to 8.0 preview 1
* linux docker images updated
* Force use c# 11, in hope of the acceptance tests will pass
* Do not use C# 8 :)
* Update to preview 2
* CompatibilitySuppressions
* updated templates
* Disable package validation
* Update to .net8 preview 4
* change EnableStrictModeForCompatibleFrameworksInPackage to false
* Package validation
* Added CompatibilitySuppressions.xml
* Fix up IP networks
* Updated to preview 5
* Update docker images
* Post merge fixes
* Try to update dotnet version of codeql
* Delete empty suppression files
* Remove dependency
* Cleanup
---------
Co-authored-by: Elitsa <elm@umbraco.dk>
* Added a new executeable to new backoffice
* add new backoffice client as submodule
* add new backoffice client as project
* add bootstrap of backoffice client
* experimentally allow CORS from local vite app running the backoffice
* fix base path
* move new backoffice projects to NewBackoffice folder
* add support for redirect urls to login page (temporary)
* update references to v13
* override databaseinstall/index.cshtml
* copy ignore lines from normal project
* remove redirect to AuthorizeUpgrade
* codeql: checkout submodules
* Section catch-all route
* fixed tests
* remove starter-kit file
* remove grid views
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* New backoffice/add system text json configuration attribute (#12998)
* Add SystemTextJsonConfigurationAttribute
* Fix up formatting
* Rename classes for clearer purpose
Co-authored-by: Zeegaan <nge@umbraco.dk>
* UmbracoPath should no longer be configurable (#13032)
* UmbracoPath should no longer be configurable
* Remove UmbracoPath configuration from all tests
* Only contain style instead of full layout (#13033)
* Only contain style instead of full layout (#13033)
* Fix CodeQL duplicate "permissions" node and reformat
* add an extra check to ensure the pips exist before adding a class to them
* improve pip classList add/remove with no intermediary variable
* Only contain style instead of full layout (#13033)
* Ensure consistent margin on headings in tree root (#12992)
* Ensure consistent margin on headings in tree root (#12992)
(cherry picked from commit 88bfef9e0d)
* Bump version to 10.2.1
* Translate "User permissions for languages" feature to dutch (#12971)
* Translate 'sectionsHelp' to Dutch
* Translate 'selectLanguages' to Dutch
* Transkate 'allowAccessToAllLanguages' to Dutch
* Translate "User permissions for languages" feature to español (#12975)
* Translate 'selectLanguages' to Español
* Translate 'languagesHelp' to español
* Translate 'allowAccessToAllLanguages' to spanish
* Updated project references for Forms and Deploy in the JsonSchema project. (#13047)
* Updated project references for Forms and Deploy in the JsonSchema project. (#13047)
* UmbracoPath has been removed from the official schema store, remove temporary workaround from our schema generator as well (#13043)
* add an extra check to ensure the pips exist before adding a class to them
* improve pip classList add/remove with no intermediary variable
* pass in parameters needed to member service (#13020)
* Missing methods from IMemberService (#13022)
* Add back methods to interface
* Add default implementations to avoid breaking changes
Co-authored-by: Zeegaan <nge@umbraco.dk>
* New endpoint for web profiling dashboard (#13038)
* Endpoint for web profiling dashboard
* Add profiling API contract
* New Backoffice: Published cache controller (#13034)
* Add published cache controller (endpoints for the Published Status dashboard)
* Update OpenAPI contract for published cache endpoints
* Fix OpenApi spec
Co-authored-by: Zeegaan <nge@umbraco.dk>
* Bug fix for datepicker with offset time (#12847)
* https://github.com/umbraco/Umbraco-CMS/issues/12844
* remove "X" from ng-attr
Doing the test I killed the ng-if attr. But forgot it was there doing the commit
Co-authored-by: Lucas Bach Bisgaard <lom@novicell.dk>
* Make sure swagger tags and operations are sorted alphabetically (#13055)
* Add spellcheck false to password inputs (#13059)
* Add null check for variants in Grid Layout (#13060)
This fixes a regression from 10.2.0 where the `variants` property was removed.
* Add null check for variants in Grid Layout (#13060)
This fixes a regression from 10.2.0 where the `variants` property was removed.
* Fixes#12972 for validating legacy member passwords (#12973)
* Fixes#12972 for validating legacy member passwords
* Removed unused variable
* removed unused variable
* Fix issue toggling boolean between true/false after Save without refreshing
* New backoffice: examine management controller (#12981)
* Add ExamineManagementControllerBase
* Add ExamineIndexModelFactory
* Add IndexesExamineManagementController
* Add proper attributes
* Implement ExamineIndexViewModel.cs
* formatting
* Add comment about it working in .NET 7
* Add SearchersExamineManagementController.cs
* Update comments about why it might throw errors
* Add SearchResultViewModel
* Add SearchExamineManagementController
* Add ExamineSearcherValidationService
* Rename ExamineSearcherValidationService.cs to ExamineSearcherFinderService.cs
* Rename interface aswell
* Add SearchExamineManagementController
* Refactor ExamineSearcherFinderService
* Add HasIndexRebuiltExamineManagementController.cs
* Fix up formatting
* Async actions
* Add RebuildIndexExamineManagementController.cs
* Rename IExamineIndexModelFactory to IExamineIndexViewModelFactory
* Refactor HasIndexRebuilt endpoint to Index endpoint
* Remove unused usings
* Fix up DetailsExplanation
* Create dedicated SearchersViewModel
* Rename action
* Rename RebuildIndex to Rebuild
* Dont have changes in ExamineIndexModel
* Make values strongly typed instead of generic lists of strings
* Rename to non-plural
* Rename to non-plural
* Rename controller
* Introduce ITemporaryIndexingService
* Introduce ITemporaryIndexingService
* Add SearcherName to view model
* Move to new ExamineManagementControllerBase.cs
* Refactor ExamineManagerService
* Use init instead of setters
* Make properties explicitly on models
* Add DI
* Apply suggestions from code review
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Rename to IndexExamineManagementController
* Return ViewModel instead of exception
* Make view models non-nullable
* Add examine management extension point
* Rename to IndexingRebuilderService
* Move rebuild logic to service
* Fix up usages in IIndexingRebuilderService
* Fix up DI
* Fix OpenApi contract
* Implement CanRebuild on IIndexingRebuilderService.cs
Co-authored-by: Zeegaan <nge@umbraco.dk>
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Update build script
* Add BuildProjectReferences=false to dotnet pack
* Internalize Umbraco.Cms.ManagementApi references
* Make Searchers endpoint return ActionResult (#13068)
* New backoffice - trees design (#12963)
* Refactor: Add default versioned back office route attribute
* Tree controller bases and first draft implementations for document, media and doctype
* Move tree item view models to appropriate location
* Fix missing parent
* Refactor user entity access for testability
* A bit of clean-up + handle user start nodes for items endpoint
* Implement foldersOnly for folder tree
* Items endpoint for document type tree
* Strongly typed action results
* Content + media recycle bin
* Correct return type for swagger
* Member type tree
* Rename user start node handling to make a little more sense
* Revert to faked admin start nodes in document tree
* Media type tree
* Data type tree
* Relation type tree
* Remove unused dependency from member type tree
* Correct documentation for member type tree endpoint response types
* Use icon constants
* Add templates tree
* Member group tree
* Document blueprint tree
* Partial views, scripts and stylesheets trees
* Static files tree
* Clarify "folders only" state
* Comments and improved readability
* Rename TreeControllerBase and TreeItemViewModel
* Move recycle bin controller base to its own namespace
* Moved tree base controllers to their own namespace
* Common base class for tree view models
* Remove ProblemDetails response type declaration from all actions
* Add OpenApiTag
* Various review comments
* Dictionary item tree
* Renamed all tree controllers to follow action/feature naming convention
* Handle client culture state for document tree
* Support "ignore user start nodes" for content and media + refactor how tree states work to make things more explicit
* Fix or postpone a few TODOs
* Make entity service able to paginate trashed children
* Handle sorting explicitly
* Re-apply VersionedApiBackOfficeRoute to install and upgrade controllers after merge
* Use PagedViewModel instead of PagedResult for all trees
* Explain the usage of UmbracoObjectTypes.Unknown
* Introduce and apply GetMany pattern for dictionary items
* Add a note about relation type caching
* Fix broken test build + add unit tests for new localization service methods
* Use new management API controller base
* Entity repository should build document entities for document blueprints when getting paged entities (same as it does when getting specific entities)
* Use Media type for Media recycle bin
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
* Move shared relation service to concrete implementations
* Use inclusive language
* Add 401 response type documentation to applicable trees
* Refactor entity load for folder tree controller base + ensure that folders are only included in the first result page
* Add (in-memory) pagination to dictionary tree
* Make file system controller honor paging parameters
* Support pagination in relation type tree
* Clarify method name a bit for detecting tree root path requests
* Update Open API schema to match new trees
* Move from page number and page size to skip/take (with temporary workaround for lack of property skip/take pagination in current DB implementation)
* Update OpenAPI schema to match skip/take
* Update OpenAPI schema
* Don't return paginated view models from "items" endpoints
* Update OpenApi schema
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
* Use pattern matching to check if items is not `JArray`
* Bump Smidge up to v4.1.1
* Removing X-XSS-Protection healthcheck
* Redirect to a return URL if one is present on the querystring when logging into the back office
* Fix issue 13023 - Cannot read properties of undefined (reading 'allowedActions')
* Implement playwright acceptance tests instead of cypress (#13069)
* fix up dependencies in package.json
* Change configs to playwright
* update types
* remove cypress
* add playwright
* Fix up imports
* Move up test files
* Fix up scripts
* Update user import
* Remove allowEditInvariantFromNonDefault=True.spec.ts
* Update docker container
* Run playwright on pipelines
* Install playwright
* change urls
* change to run playwright
* Update reporter
* create .env file when installing
* update pipelines
* Remove @in yml
* Update Yaml script to use New-Item
* Pipe object to Value
* Update yaml to use "" not {}
* Update localhost to proper port
* Push package-lock.json
* include dotenv in package.json
* Add back umbraco.config.ts
* Dont change launchSettings.json
* Fix up pipelines
* Change working directory
* Add logging
* Actually name the file
* Remove .env from path
* Add working directory
* Add working directory to script
* check env content
* Update more working dir
* Try making newline in YAML
* add quotes
* Try multiline infront of script
* Move top statement
* use https
* Update to localhost 44331
* ignore https in config
* Change linux to https
* add timeouts for tests
* Fix up url for linux
* Update docker to use port 44331 -> 5000
* increase timeout
* Update yaml
* Remove Cypress references and fix URL/port mapping
* Update umbraco-linux.docker
* Generate ASP.NET HTTPS development certificate
* Enable HTTPS development certificate in Docker
* Dont run failing tests
* Update HTTPS development certificate generation
* Copy nuget.config to correct location in Docker file
* do not run flaky test
* update outputdir
* Remove flaky tests
* Update to dot reporter
* Update to json-models-builders package
* Check if results folder exists
* Remove logging
* Use bash to find folder
* Dont use junit to report
* only publish if folder exists
* Add 5 retries for CI
* search correct folder
* Remove unused json file
* Use line reporter
* Remove umbraco.config.ts
* Remove more flaky test
* Add waits so we dont bombard SQLite
* Add page as parameter
* add page as parameter
* Remove flaky macro test
Co-authored-by: Zeegaan <nge@umbraco.dk>
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Fix comment of view property in `ConfigurationFieldAttribute` (#13077)
* Fix comment of view property in `ConfigurationFieldAttribute`
* Update description of key property as well
* Use char instead of string for DetectJson (#13019)
* Use char instead of string for DetectJson
* Use faster method
* Change DetectIsJon method
* Update acceptance test readme & scripts (#13078)
* Update readme to reflect the change to playwright
* Update test scripts
* update README
* update pipelines to run new script
* update package.json scripts
* dont include demo test in package.json
* Add creation of blueprint test
* Implement create test script
Co-authored-by: Zeegaan <nge@umbraco.dk>
* Refactor event handler away from keyup to ng-change
* Don't use legacy icon for action delete
* Added nullability attribute to IsNullOrWhitespace
* Fixes umbraco/Umbraco-CMS.Accessibility.Issues #63 and #61
* Revert "Removing X-XSS-Protection healthcheck" (#13096)
This reverts commit 696475ebf2.
Co-authored-by: Zeegaan <nge@umbraco.dk>
* New backoffice: New Api controllers (#12983)
* Create migrate Language controller to Umbraco.Cms:ManagementApi
* Add proper language mapping
* Update mapping to handle if language name is null
* Uncomment code
* Add new language view model
* Add LanguageViewModelMapping
* Add mapper registration
* Fix up AddMappers extension method
* Implement mapping IEnumerable of languages
* Change action signatures to ViewModel instead of model
* Seperate logic from controller into service
* Move LanguageService.cs
* Register service
* Fix up mapping
* Add null check to mapping instead of controller
* Map to ILanguage instead of implementation
* Fix up null check
* Implement ProblemDetailsBuilder.cs
* Rename duplicate method
* Use builder in actions
* Implement new Paged models
* Create language controller base
* Use pagedModel for GetAllLanguages
* Create GetAllLanguagesPaged method
* Split language controller into single APIs
* Fix up controllers with API versions
* Map Total property
* Fix up route and naming for GetLanguageController.cs
* Fix up naming for language controllers
* New folder structure
* Add culture controllers
* Map CultureInfos to paged CultureViewModel
* Remove wierd include in csproj
* Refactor controller to return pagedViewModel instead of dictionary
* Fix up mapping to map single and enumerable
* Register mapping
* Add apiversion to controller
* Add inheritdoc
* Create DictionaryControllerBase.cs
* Add delete controller
* Only use HttpDelete for deletes
* Check also if language exists in service
* Split Save action into Create & Update actions
* Update Http attributes on Create and update controllers
* Proper routing for delete controller
* Add api version
* Make action async
* Implement CreateDictionaryController
* Create DictionaryViewModel.cs
* Use viewmodel instead of values
* Create get by int DictionaryController
* Add view models
* Rename controller
* Rename DictionaryViewModel to DictionaryItemViewModel
* use created instead of ID
* Apply DataContract/Datamember to view model
* change to guid instead of Guid
* Use proper responses instead of return models when creating/updating
* Implement new IDictionaryService
* Implement new MoveController
* Use new service in mapper
* Remove unused method
* Add DictionaryViewModelMapDefinition
* Create MoveOrCopyViewModel
* Proper Http action
* Create UpdateDictionary controller
* Map IDictionaryItem to DictionaryViewModel
* Add JsonPatching
* Add UpdateDictionaryController.cs
* Map DictionaryTranslationsDisplays properly
* ParentId should be nullable
* Add new DictionaryTranslationViewModel.cs
* Remove translationViewModel
* Add Id and Key to DictionaryTranslationDisplay.cs
* Implement IDictionaryFactory.cs
* Create DictionaryViewModels and do not use IEntity
* Map to new view models instead of displays
* Register the factiories in the service container
* Remove newtonsoft
* Add serializing to and from PatchDocs
* Use JsonPatchViewModel instead of object type
* Add JsonPatch.Net to csproj
* Implement JsonPatchService.cs
* Register JsonPatchService
* Make model non-nullable
* Update controllers to use new attributes
* Rename MoveViewModel.cs
* Remove NameIsDirty as that is legacy from how we used to handle updating
* Add GetAllDictionaryController
* Add todo to DictionaryControllerBase
* Add ExportDictionaryController
* Add ImportDictionaryController
* Remove unused umbraco mapper
* Add upload dictionary controller
* Create Dictionary import view models
* Update UploadDictionaryController with view models
* Remove unused using
* Implement pagedviewmodel for GetAllDictionaryController.cs
* Add dictionary overview viewmodels
* Add mapping for DictionaryOverViewModel
* Update Dictionary controller to use new viewmodel
* Fix up attributes for UploadDictionaryController
* Make actions async
* Make controller bases abstract
* Fix after merge
* New backoffice: Analytics controller (#12957)
* Add AnalyticsControllerBase
* Add AnalyticsViewModel
* Add GetAnalyticsController
* Update ViewModel to use System.Text.Json
* Add SetAnalyticsController
* Add AnalyticsLevelViewModel
* Add GetAllAnalyticsController
* Add viewmodel factory
* Register factory for DI
* Use factory for creation of ViewModel
* Fix up AnalyticsLevelViewModel.cs
* Use analyticsLevelViewModel
* Add Enum validation to controller
* Add OpenApi attributes
* Add routing to GetAllAnalyticsController
* Rename IPagedViewModelFactory
* use new renamed PagedViewModelFactory
* Make actions async
* Make controller base abstract
* Fix up after merge
Co-authored-by: Zeegaan <nge@umbraco.dk>
* New backoffice: Help controller (#12958)
* Add HelpControllerBase
* Add HelpPageViewModel
* Add GetHelpController
* Add viewmodel factory
* Register factory for DI
* Use PagedViewModelFactory for controller
* Update baseurl to be nullable
* Rename IPagedViewModelFactory
* Use new renamed IPagedViewModelFactory
* Dont use httpclient as field
Co-authored-by: Zeegaan <nge@umbraco.dk>
* New backoffice: Relation controller (#12961)
* Add relation controller base
* Add commen about auth
* Add GetRelationController
* Use mapping to viewmodel
* Add RelationViewModel
* Add RelationViewModelsMapDefinition.cs
* Add viewmodel factory
* Register factory for DI
* Rename IPagedViewModelFactory
* Add RelationViewModelFactory
* Remove unused service
* Add GetByChildRelationController
* Add relationViewModelFactory to DI
* Add MappingBuilderExtensions
* Add relationViewModelsMapDefinition to DI
* Use PagedViewModel for child relations
* Add CreateMultiple
* Update GetRelationController to use factory instead of direct mapping
* Update GetByChildRelationController to use relationViewModelFactory
* Fix up after merge
Co-authored-by: Zeegaan <nge@umbraco.dk>
* New backoffice: Tracked references controller (#12966)
* Add TrackedReferencesControllerBase.cs
* Add GetTrackedReferencesController
* Add relation model
* Add ITrackedReferencesRepository.cs
* Rename relation to RelationModel
* Add RelationMapDefinition.cs
* Add TrackedReferencesSkipTakeRepository
* Rename RelationModelMapDefinition
* Add new services to DI
* Rename RelationModel to RelationItemModel
* Implement TrackedReferencesSkipTakeService
* Formatting
* Add RelationItemViewModel.cs
* Add mapdefition
* Update TrackedReferencesController to use new PagedViewModel
* Add service to DI
* imlement proper routing
* Add async to GetTrackedReferencesController.cs
* Rename action to get
* Add DescendantTrackedReferencesController
* make filterMustBeIsDependency nullable
* Use count instead of capacity
* Rename controller
* Add MultipleTrackedReferencesController.cs
* Refactor TrackedReferencesService to not return pagedViewModel
* Remove TODO untill consensus on convention
* Formatting
* Delete old duplicate controller
* Fix up naming
* Fix up naming and fixed todo
* Fix up mapdefinition registrations
* Rename controllers
* Fix naming
* Fix nullable tree
* Fix up relation controller & action names
* Fix naming
* Fix up multiple to not be post
* Apply suggestions from code review
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
* Remove [ApiVersion] from each individual controller and added to base instead
* Added missing semi-colon
* Update all "non-async async" endpoints to return Task.FromResult
* Fixed up LanguageViewModels namespace
* Return proper status code
* Update xml documentation
* Rename GetAllCultureController
* Change return type attribute to proper Model
* Change return type attribute to correct model
* Add clarifying comment
* Change return type attribute to proper model
* Rename ById to by key
* Update DictionaryOverviewViewModel to use Key instead of ID
* Implement factory method to create viewModel instead of using services in mapper
* Fix up DictionaryItemViewModel to use Parent GUID instead of ID
* Update return type attribute to correct model
* Update key to actual GUID instead of string
* Update route to not include "delete"
* Remove redundant IActionResult specification
* Update responseType attribute to correct models
* Update OpenApiTag for DictionaryControllerBase
* Update ResponseType attribute to correct models
* update variable name to not be "XD"
* Update ResponseType attribute to correct model
* Update route to not include "update" as it is redundant
* Update produces responsetype attributes to correct models
* Use IJsonSerializer abstraction instead of JsonConvert directly
* Remove unused field
* Change ResponseType attribute to correct model
* change TrackedReferencesSkipTakeService to return pagedModels directly
* Remove duplicate DI
* change to better variable names
* Move RelationItemModel to core
* Remove empty folder
* Remove ITrackedReferencesSkipTakeService and add it to TrackedReferencesService
* remove TrackedReferencesSkipTakeRepository and add to TrackedReferencesRepository.cs
* Fix up TrackedReferencesService to not use SkipTake repository
* Remove AddRepositories from ManagementApiComposer
* Transition to ManagementApiBaseController
* Fixes ResponseType attribute to correct model
* Add loading files to service instead of having logic in controller
* Add todo comment
* Fix up routing for delete language
* Use problem details builder
* Add SystemTextJsonSerializer
* Add SystemTextJsonSerializer
* Remove unused usings
* Remove obsolete MoveDictionaryController
* Remove CreateDate and UpdateDate from DictionaryViewModel
* Change response type to correct model
* Remove PagedViewModelFactory.cs
* Add obsolete message
* Fix installer view models
A setter is required for the modelbinder to be able to do its work
* Update src/Umbraco.Cms.ManagementApi/Controllers/Analytics/SetAnalyticsController.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
* Update ResponseType to correct Model
* Update comment
* Add FileUploadService
* Add DictionaryFactory.cs to handle creation of viewmodel
* Remove unused DI
* Rename actions & controllers to reflect eachother
* Update OpenApi.json
* Add dictionary to openapi
* Update in proper alphabetical order
* Add trackedReferences to openapi
* Fix open api doc
Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
Co-authored-by: Zeegaan <nge@umbraco.dk>
* Backport project cleanup from #12907
* Remove empty Directory.Build.props
* Fix GenerateAppsettingsSchema target
* Re-add empty Directory.Build.props to prevent inheritance
* Re-add missing JsonPatch.Net dependency
* Fix merge issues (redundant TargetFramework property and appsettings-schema.json generation)
* Fix and improve OpenAPI test assertion
Co-authored-by: Sebastiaan Janssen <sebastiaan@umbraco.com>
Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
Co-authored-by: Zeegaan <nge@umbraco.dk>
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
Co-authored-by: Mads Rasmussen <madsr@hey.com>
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
Co-authored-by: Bjarne Fyrstenborg <bjarne_fyrstenborg@hotmail.com>
Co-authored-by: Erik-Jan Westendorp <erikjanwestendorp@outlook.com>
Co-authored-by: Andy Butland <abutland73@gmail.com>
Co-authored-by: Sean <29239704+Bakersbakebread@users.noreply.github.com>
Co-authored-by: Lucas Bach Bisgaard <rammi@rammi.dk>
Co-authored-by: Lucas Bach Bisgaard <lom@novicell.dk>
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
Co-authored-by: Busra Sengul <aysebusrasengul@gmail.com>
Co-authored-by: Justin Neville <justin@nevitech.co.uk>
Co-authored-by: Jeavon Leopold <jeavon@crumpled-dog.com>
Co-authored-by: Austin Gilbert <AGilbert@rbaconsulting.com>
Co-authored-by: patrickdemooij9 <patrickdemooij98@hotmail.com>
Co-authored-by: bakersbakebread <hello@seanthorne.co.uk>
Co-authored-by: Karl Butler <kbutler@carbonsix.digital>