6b309dc3bebb5e6be287237bb6b3f79aeb306e2a
6 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
bc21c64617 |
v10: Cleanup project files (#13111)
* Backport project cleanup from #12907 * Remove empty Directory.Build.props * Fix GenerateAppsettingsSchema target * Re-add empty Directory.Build.props to prevent inheritance * Add NRT to-do comment * Explicitly generate HTTPS development certificate for E2E test |
||
|
|
cd748cd7c8 |
New backoffice: models builder dashboard controller (#13050)
* Add OutOfDateType model * Add ModelsBuilderDashboardControllerBase * Add BuildModelsController.cs * Add StatusModelsBuilderDashboardController * Change to return created and not OK * Remove unused usings * Add GetModelsBuilderDashboardController * Add OpenApi attributes * Fix formatting * Fix up dependency injection for ModelsBuilderSettings * Fix up naming and routing * Fix up OpenApi attributes * Remove ability to send raw HTML in dashboard * Remove obsolete property * Dont include dashboard in the name * Async controllers * Return ActionResults * Fix up OpenApi contract * Fix missing usings * Update src/Umbraco.Cms.ManagementApi/Controllers/ModelsBuilderDashboard/ModelsBuilderControllerBase.cs Co-authored-by: Mole <nikolajlauridsen@protonmail.ch> * use VersionedApiBackOfficeRouteAttribute for routing * Fix up open api spec Co-authored-by: Zeegaan <nge@umbraco.dk> Co-authored-by: Mole <nikolajlauridsen@protonmail.ch> |
||
|
|
72fd393272 |
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> |
||
|
|
87c06f5f98 | Back to 10.2.0-ish | ||
|
|
74c45ee60d |
Merge remote-tracking branch 'origin/v10/dev' into v11/dev
# Conflicts: # src/Umbraco.Core/DependencyInjection/UmbracoBuilder.Configuration.cs # src/Umbraco.Core/Models/Mapping/DictionaryMapDefinition.cs # src/Umbraco.Web.BackOffice/Install/InstallApiController.cs # version.json |
||
|
|
748fb7d1f7 |
Implement new backoffice installer (#12790)
* Add new BackOfficeApi project * Add swagger * Add and route new install controller * Add new install steps * Add Setup endpoint * Add missing RequiresExecution methods * Fix nullability of databasemodel * Move user information to separate model * Remove ping method * Add view models install data * Move mapping folder * Move ViewModels * Add settings endpoint * Remove unused binderprovider * Postfix RequiresExecution with async * Update NewDatabaseUpgradeStep to not depend on install step * Add installstep collection * Move registration into backoffice project * Add InstallService * Use service in controller * Add upgrade to install service and use in controller * Correctly check is database is configured * Reorganize * Reorganize into new core and infrastructure * Rename steps * Rename BackofficeApi to MangementApi * Make install step an interface instead of abstract class * Rename InstallStep to create CreateUserStep * Move restart runtime and sign in user into install steps * Move install service into new core project * Map controllers in composer * Restrict access to installcontroller based on runtime level * Use FireAndForget when logging install * Use actionresult instead of iactionresult * Set new projects as not packable * Link to backoffice in 201 response when installed * Register installations * Add custom backoffice routing template token * Move umbraco path trimming out of application convention * Make it easier to route to backoffice api * Make swagger version aware and move behind backoffice path * Obsolete old install classes * Move maps into single file This is all mappint to/from viewmodels in some manner * Remove usage of InstallSetupResult * Move new projects to the src folder * Remove InstallationType from IInstallStep This upgrade steps should implement their own IUpgradeStep interface * Remove upgrade from service and controller This should be its own service and controller * Add xml docs * Remove internals visible to * Disable package validation for new projects Quite the gotcha here, if the projects are brand new, there is no nuget packages to compare with, this causes the build to fail. * Add ValidateDatabase endpoint * Remove project references to new backoffice We don't actually want to depend on this yet, it's just needed for testing/development * Obsolete installationtype * Add DatabaseSettingsFactory tests * Add InstallServiceTests * Fix InstallServiceTests * Test RequireRuntimeLevelAttribute * Implement new backoffice upgrader (#12818) * Add UpgradeSettingsModel and viewmodel * Add upgrade/settings endpoint * Implement upgrade steps * Add upgrade step collection * Add UpgradeService * Add authorize endpoint to UpgradeController * Fix interface * Add upgrade service tests * Remove runtime check in databaseinstallstep * Move RequireRuntimeLevel to controller * Add a readme to the new backoffice part * BackOffice not Backoffice * Add conditional project references * Fixes based on review * Fix up * Move running of steps into its own method in UpgradeService * Make services transient * More fixup * Log exceptions when running steps |