Commit Graph

42944 Commits

Author SHA1 Message Date
kjac
eb0ec7bee8 Initial implementation for extension manifests 2023-02-13 19:03:58 +01:00
Jacob Overgaard
233be8dc8f update git submodule 2023-02-13 10:07:25 +01:00
Jacob Overgaard
66118e556a update git submodule 2023-02-13 09:06:15 +01:00
Kenn Jacobsen
50f19549b6 Add move/copy operations to datatype API (#13791)
* Add move/copy operations to datatype API

* Add compat suppressions for new interface methods

* Regenerate OpenAPI JSON

* Update OpenApi.json

* Ensure we can copy a datatype to root + make the target key nullable (explicit) for move and copy operation models

* Handle parent not found status

* Update the OpenAPI spec to reflect new nullability

* Cleanup

---------

Co-authored-by: Elitsa Marinovska <elm@umbraco.dk>
2023-02-10 15:11:49 +01:00
Jacob Overgaard
525d73d205 update git submodule 2023-02-10 11:25:37 +01:00
Kenn Jacobsen
36dc35f8aa Add "move" to dictionary API (#13810)
* Sanitize dictionary overview and export actions

* Amend dictionary services with async and attempt pattern + isolate temporary file handling in its own service.

* Update OpenAPI schema to match new dictionary bulk actions

* Implement move API for dictionary items.

* Add unit tests for dictionary item move

* Fix merge

* Update OpenAPI json after merge
2023-02-10 08:32:24 +01:00
Jacob Overgaard
42f8cde259 update to backoffice directory 2023-02-09 13:32:20 +01:00
Bjarke Berg
9b7bf81ad1 Serialization and deserialziation with polymorphism (#13762)
* Support polymophism when sending or receiving interfaces

* Handle attempts to deserialize interfaces nicer

* updated OpenApi.json

* Update src/Umbraco.Cms.Api.Common/Json/NamedSystemTextJsonInputFormatter.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Cms.Api.Management/ManagementApiComposer.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Cms.Api.Management/OpenApi/ConfigureUmbracoSwaggerGenOptions.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Infrastructure/Serialization/UmbracoJsonTypeInfoResolver.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Infrastructure/Serialization/UmbracoJsonTypeInfoResolver.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Infrastructure/Serialization/UmbracoJsonTypeInfoResolver.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Infrastructure/Serialization/UmbracoJsonTypeInfoResolver.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Infrastructure/Serialization/UmbracoJsonTypeInfoResolver.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Infrastructure/Serialization/UmbracoJsonTypeInfoResolver.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Infrastructure/Serialization/UmbracoJsonTypeInfoResolver.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Infrastructure/Serialization/UmbracoJsonTypeInfoResolver.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Invert to avoid nesting

* Updated OpenApi.json

* Update schema

---------

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
2023-02-08 18:29:30 +01:00
Elitsa Marinovska
20534b7a97 New Backoffice: Health check controller refactor (#13763)
* Refactor AllHealthCheckGroupController to return just the names of the groups + changes in the HealthCheckFactory

* Introduce a new "get by name without results" endpoint

* Create a "check" endpoint

* View models changes

* Factory renaming changes

* Remove Task.FromResult

* Update OpenApi.json

* Minor updates

* Inject HealthCheckCollection directly into the factory
2023-02-08 14:16:21 +01:00
Kenn Jacobsen
fdf416550a Refactor dictionary bulk action APIs (#13786)
* Sanitize dictionary overview and export actions

* Amend dictionary services with async and attempt pattern + isolate temporary file handling in its own service.

* Update OpenAPI schema to match new dictionary bulk actions

* Update src/Umbraco.Cms.Api.Management/Services/DictionaryItemImportService.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Cms.Api.Management/Services/DictionaryItemImportService.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Cms.Api.Management/Services/TemporaryFileService.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Update src/Umbraco.Cms.Api.Management/ViewModels/Dictionary/DictionaryImportModel.cs

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Refactor - split dictionary import handling into smaller methods

* Rename view model due to name clash in new SwaggerGen + update OpenAPI JSON file

---------

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
2023-02-08 13:18:08 +01:00
Bjarke Berg
b582bfa39b Merge remote-tracking branch 'origin/v13/dev' into v13/dev 2023-02-08 12:55:31 +01:00
Bjarke Berg
e5609592cd Merge remote-tracking branch 'origin/v12/dev' into v13/dev
# Conflicts:
#	src/Umbraco.Core/Models/ContentEditing/Language.cs
#	src/Umbraco.Core/Models/DictionaryItem.cs
#	src/Umbraco.Core/Models/DictionaryItemExtensions.cs
#	src/Umbraco.Core/Models/DictionaryTranslation.cs
#	src/Umbraco.Core/Models/IDictionaryTranslation.cs
#	src/Umbraco.Core/Models/Language.cs
#	src/Umbraco.Core/Models/Membership/ReadOnlyUserGroup.cs
#	src/Umbraco.Core/Models/Membership/UserGroupExtensions.cs
#	src/Umbraco.Core/Services/DataTypeService.cs
#	tests/Umbraco.Tests.Common/Builders/LanguageBuilder.cs
#	tests/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Editors/UserEditorAuthorizationHelperTests.cs
2023-02-08 12:38:43 +01:00
Kenn Jacobsen
59448aeaac Add "Model" postfix for all models in the Swagger output (#13806) 2023-02-08 12:34:11 +01:00
Bjarke Berg
317891e8cf Merge remote-tracking branch 'origin/v11/dev' into v12/dev 2023-02-08 12:28:32 +01:00
Bjarke Berg
da4e9487e2 Merge remote-tracking branch 'origin/v10/dev' into v11/dev 2023-02-08 12:28:03 +01:00
Jacob Overgaard
f3bcfcd5d9 v11: npm updates for february (#13803)
* update ace-builds from 1.14.0 to 1.15.0

* update eslint from 8.32.0 to 8.33.0

* update jsdom from 21.0.0 to 21.1.0

* update nouislider from 15.6.1 to 15.7.0
2023-02-08 09:58:40 +01:00
Nathan Woulfe
b5e87a82f2 Merge branch 'v13/dev' of https://github.com/umbraco/umbraco-cms into v13/dev 2023-02-08 09:47:02 +10:00
Nathan Woulfe
41a03f4b8b uses correct constant for dictionary icon (needs to be added to uui icon registry) 2023-02-08 09:46:58 +10:00
Nikolaj Geisle
3d47cac9ac V10: fix content version cleanup dto migration (#13788)
* Add DoesPrimaryKeyExist method

* Add primary key name to dto

* Add extension method PrimaryKeyExists

* Dont use sql_master table

* Implement DoesPrimaryKeyExists

* Rename without plural s

* Refactor to get proper primary key name and not column name

* Use primary key name and not column name

* Dont filter tables in memory

* Remove .Where

* Don't select all, select only sql

* throw NotImplementedException by default

* USe virtual instead of abstract to avoid breaking change

* Reinstert primary key attribute

---------

Co-authored-by: Zeegaan <nge@umbraco.dk>
2023-02-07 13:48:36 +01:00
Nikolaj Geisle
b83c88e9f1 V10: fix content version cleanup dto migration (#13788)
* Add DoesPrimaryKeyExist method

* Add primary key name to dto

* Add extension method PrimaryKeyExists

* Dont use sql_master table

* Implement DoesPrimaryKeyExists

* Rename without plural s

* Refactor to get proper primary key name and not column name

* Use primary key name and not column name

* Dont filter tables in memory

* Remove .Where

* Don't select all, select only sql

* throw NotImplementedException by default

* USe virtual instead of abstract to avoid breaking change

* Reinstert primary key attribute

---------

Co-authored-by: Zeegaan <nge@umbraco.dk>
2023-02-07 13:46:14 +01:00
Mole
6808a63e73 New backoffice: Add GUIDS to user groups (#13672)
* Add key to UserGroupDto

* Fix renaming table in sqlite

The SqliteSyntaxProvider needed an overload to use the correct query

* Start work on user group GUID migration

* Add key index to UserGroupDto

* Copy over data when migrating sqlite

* Make sqlite column migration work

* Remove PostMigrations

These should be replaced with Notification usage

* Remove outer scope from Upgrader

* Remove unececary null check

* Add marker base class for migrations

* Enable scopeless migrations

* Remove unnecessary state check

The final state of the migration is no longer necessarily the final state of the plan.

* Extend ExecutedMigrationPlan

* Ensure that MigrationPlanExecutor.Execute always returns a result.

* Always save final state, regardless of errors

* Remove obsolete Execute

* Add Umbraco specific migration notification

* Publish notification after umbraco migration

* Throw the exception that failed a migration after publishing notification

* Handle notification publishing in DatabaseBuilder

* Fix tests

* Remember to complete scope

* Clean up MigrationPlanExecutor

* Run each package migration in a separate scope

* Add PartialMigrationsTests

* Add unhappy path test

* Fix bug shown by test

* Move PartialMigrationsTests into the correct folder

* Comment out refresh cache in data type migration

Need to add this back again as a notification handler or something.

* Start working on a notification test

* Allow migrations to request a cache rebuild

* Set RebuildCache from MigrateDataTypeConfigurations

* Clean MigrationPlanExecutor

* Add comment explaining the need to partial migration success

* Fix tests

* Allow overriding DefinePlan of UmbracoPlan

This is needed to test the DatabaseBuilder

* Fix notification test

* Don't throw exception to be immediately re-caught

* Assert that scopes notification are always published

* Ensure that scopes are created when requested

* Make test classes internal.

It doesn't really matter, but this way it doesn't show up in intellisense

* Add notification handler for clearing cookies

* Add CompatibilitySuppressions

* Use unscoped migration for adding GUID to user group

* Make sqlite migration work

It's really not pretty, square peg, round hole.

* Don't re-enable foreign keys

This will happen automatically next time a connection is started.

* Scope database when using SQLServer

* Don't call complete transaction

* Tidy up a couple of comment

* Only allow scoping the database from UnscopedMigrationBase

* Fix comment

* Remove remark in UnscopedMigrationBase as it's no longer true

* Add keys when creating default user groups

* Map database value from DTO to entity

* Fix migration

Rename also renamed the foreign keys, making it not work

* Make migration idempotent

* Fix unit test

* Update CompatibilitySuppressions.xml

* Add UniqueId to AppendGroupBy

Otherwise MSSQL grenades

* Cleanup

* Update CompatibilitySuppressions

* Rename UniqueId to Key

* Cleanup

---------

Co-authored-by: Elitsa Marinovska <elm@umbraco.dk>
2023-02-07 08:30:33 +01:00
Bjarke Berg
e3135bd97e Updated nuget dependencies (#13787) 2023-02-06 14:58:48 +01:00
Jacob Overgaard
80112d88f4 V11: Fix for media library type dialog (#13780)
* let the server determine the type rather than assuming it is an image

this is especially useful for SVGs that would otherwise be uploaded as images instead of the more appropriate Vector Graphics default type

* do not start processing of the queue if a dialog is shown

return early if the dialog is shown (if _requestChooseMediaTypeDialog() does not immediately return false) because that means the user will pick the media type

* clean up of the scope for performance

remove 'handleFile' since it is not being used and make the other callbacks one-way bound since we are not changing them

* add jsdoc to improve understanding of the dropzone directive
2023-02-06 14:39:57 +01:00
Sebastiaan Janssen
74e2e58935 Merge branch 'contrib' into v11/dev 2023-02-06 14:35:47 +01:00
Mole
66f483e88c New backoffice: Obsolete ReadOnlyUserGroup constructor. (#13676)
* Obsolete old ReadOnlyUserGroup constructor

* Update src/Umbraco.Core/Models/Membership/ReadOnlyUserGroup.cs

Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>

---------

Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
2023-02-06 14:32:27 +01:00
Sebastiaan Janssen
75f16b79fb Merge branch 'v11/dev' into contrib 2023-02-06 14:29:48 +01:00
Dhanesh Kumar Mj
2f5726384d Mini-list view search by id,name & key is fixed. (#13735)
* Mini-list view search by id,name & key is fixed.
Added  multiple conditions in the query to consider id or name or key from the filter param(search bar from minilistview)

* make it more simple ,now using || instead of clause conditions.

---------

Co-authored-by: Dhanesh Kumar <dhanesh.kumar@phases.dk>
Co-authored-by: Michael <michael@crossingpaths.be>
2023-02-06 12:57:36 +01:00
Erik-Jan Westendorp
371679b2e5 Remove special characters in avatar (#13766)
* Remove special characters

* Remove some chars not all
2023-02-06 12:40:28 +01:00
Bjarke Berg
6d7b619d94 post merge 2023-02-06 10:18:15 +01:00
Bjarke Berg
fe2d071fd5 Merge remote-tracking branch 'origin/v10/dev' into v11/dev 2023-02-06 10:16:49 +01:00
Bjarke Berg
884793f729 Added fix to maintenance page so it is shown before the content cache is created. (#13767) 2023-02-05 16:47:09 +01:00
Jacob Overgaard
c90a0ecfdc add check for editorState.getCurrent to find the current editor (relevant in infinite editors), and throw a warning if an editor completely misses the current node context (#13778)
disable drag&drop entirely if the property editor did not get a node through bindings or editorState
2023-02-03 10:24:27 +01:00
Jacob Overgaard
36cbcc36de add check for editorState.getCurrent to find the current editor (relevant in infinite editors), and throw a warning if an editor completely misses the current node context (#13778)
disable drag&drop entirely if the property editor did not get a node through bindings or editorState
2023-02-03 10:20:23 +01:00
Andreas Zerbst
fdd059fb2b Updated the ID of the locator in the test 'can set a minimum of required blocks in content with a block list editor' to match the correct ID. (#13769) 2023-02-01 15:21:33 +01:00
Andreas Zerbst
46742d125a Updated the ID of the locator in the test 'can set a minimum of required blocks in content with a block list editor' to match the correct ID. (#13769) 2023-02-01 15:19:23 +01:00
Andreas Zerbst
eaf7994dca Updated the ID of the locator in the test 'can set a minimum of required blocks in content with a block list editor' to match the correct ID. (#13769) 2023-02-01 15:17:28 +01:00
Andreas Zerbst
8a5e553986 Updated the ID of the locator in the test 'can set a minimum of required blocks in content with a block list editor' to match the correct ID. (#13769) 2023-02-01 15:16:00 +01:00
Andreas Zerbst
b538318b5c V11/feature/block grid editor datatype tests (#13666)
* Added tests for the BlockGridEditorDataType

* Bumped versions

* Split the file into two, so we now have a file with the Blocks and one with the Configuration of the datatype

* Changed function variables to class variables.
Changed tests to use the ConstantHelpers
Changed naming
2023-02-01 15:11:18 +01:00
Sebastiaan Janssen
5e03f9bb4e Revert "IScopeProvider" is used from Umbraco.Cms.Infrastructure.Scoping"
This reverts commit 0907255931.
2023-02-01 14:01:29 +01:00
Andreas Zerbst
5871fd2097 Updated the ID of the locator in the test 'can set a minimum of required blocks in content with a block list editor' to match the correct ID. (#13769) 2023-02-01 13:52:39 +01:00
Andreas Zerbst
fca689b140 V11/feature/block grid editor document test (#13667)
* Added tests for BlockGridEditorInDocument

* Bumped version

* Updated naming
Removed unnecessary reload
2023-02-01 13:32:01 +01:00
Elitsa Marinovska
70aa626991 Fix sln file for the new backoffice (#13765)
* Fix sln file and add README commands to get started

* expand the docs a bit

---------

Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
2023-02-01 10:37:21 +01:00
Kenn Jacobsen
4453459f06 Obsolete language ID related properties and methods for V13 (#13753) 2023-02-01 09:37:43 +01:00
Kenn Jacobsen
8caee5297b Use ISO codes instead of language IDs for fallback languages and translations (#13751)
* Use language ISO code for language fallback instead of language ID

* Remove language and language ID from dictionary item and dictionary item translation

* ADd unit test for dictionary item translation value extension

* Make the internal service implementations sealed

* Rename translation ISO code to be more explicit in its origin (Language)

* Add breaking changes suppression

* Handle save of invalid fallback iso code

* Fixed test

* Only allow non-UserCustomCulture's

* Fixed and added tests

* Rename ISO code validation method

* Fix language telemetry test (create Swedish with the correct ISO code)

---------

Co-authored-by: Bjarke Berg <mail@bergmania.dk>
2023-02-01 09:37:37 +01:00
Kenn Jacobsen
641cae7fb5 Align the data type API (#13760)
* Make data type CRUD operations async using Attempt pattern

* Refactor data type container management to its own service + add unit tests for it

* Add compatability suppression for new interface methods and unit test changes
2023-02-01 08:38:36 +01:00
Jeroen Breuer
ff3d8c1c6c Make methods virtual so they can be redefined in derived classes. 2023-01-31 19:43:24 +01:00
Yari Mariën
8616f01bf6 Added youtube shorts url pattern. 2023-01-31 18:25:15 +01:00
dKumarmj
0907255931 IScopeProvider" is used from Umbraco.Cms.Infrastructure.Scoping 2023-01-31 18:13:54 +01:00
Bjarke Berg
e79198c990 Merge remote-tracking branch 'origin/v11/dev' into v11/dev 2023-01-31 12:58:48 +01:00
Bjarke Berg
11d393e419 Updated version number 2023-01-31 12:58:33 +01:00