diff --git a/Directory.Packages.props b/Directory.Packages.props
index dc6591d..169506e 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -1,33 +1,34 @@
-
- true
- false
- true
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ true
+ false
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Kentico.Xperience.UMT.sln b/Kentico.Xperience.UMT.sln
index b824018..19f54e4 100644
--- a/Kentico.Xperience.UMT.sln
+++ b/Kentico.Xperience.UMT.sln
@@ -2,17 +2,17 @@
Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kentico.Xperience.UMT", "src\Kentico.Xperience.UMT\Kentico.Xperience.UMT.csproj", "{F499DE79-C15E-4ABA-9E42-E0A243E0F598}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kentico.Xperience.UMT.Example.Console", "Examples\Kentico.Xperience.UMT.Example.Console\Kentico.Xperience.UMT.Example.Console.csproj", "{B34D5B62-F958-48E4-84A3-35343529FCF7}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kentico.Xperience.UMT.Example.Console", "examples\Kentico.Xperience.UMT.Example.Console\Kentico.Xperience.UMT.Example.Console.csproj", "{B34D5B62-F958-48E4-84A3-35343529FCF7}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Examples", "Examples", "{A22B7345-BFCB-4BB2-85DA-A32BE7024061}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kentico.Xperience.UMT.Example.AdminApp", "Examples\Kentico.Xperience.UMT.Example.AdminApp\Kentico.Xperience.UMT.Example.AdminApp.csproj", "{4ABF76B5-3ED7-44CF-9FFA-39F299BD947C}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kentico.Xperience.UMT.Example.AdminApp", "examples\Kentico.Xperience.UMT.Example.AdminApp\Kentico.Xperience.UMT.Example.AdminApp.csproj", "{4ABF76B5-3ED7-44CF-9FFA-39F299BD947C}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kentico.Xperience.UMT.Examples", "Examples\Kentico.Xperience.UMT.Examples\Kentico.Xperience.UMT.Examples.csproj", "{85138B06-9F3F-40A6-8465-479F591D2845}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kentico.Xperience.UMT.Examples", "examples\Kentico.Xperience.UMT.Examples\Kentico.Xperience.UMT.Examples.csproj", "{85138B06-9F3F-40A6-8465-479F591D2845}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Utils", "Utils", "{66C1E923-BA9C-4674-8534-F456FE27592A}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kentico.Xperience.UMT.DocUtils", "Utils\Kentico.Xperience.UMT.DocUtils\Kentico.Xperience.UMT.DocUtils.csproj", "{71299533-CB05-4068-B5C3-9BCE76413E26}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kentico.Xperience.UMT.DocUtils", "utils\Kentico.Xperience.UMT.DocUtils\Kentico.Xperience.UMT.DocUtils.csproj", "{71299533-CB05-4068-B5C3-9BCE76413E26}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/Docs/Class/IImportService.md b/docs/Class/IImportService.md
similarity index 100%
rename from Docs/Class/IImportService.md
rename to docs/Class/IImportService.md
diff --git a/Docs/Class/ImportStateObserver.md b/docs/Class/ImportStateObserver.md
similarity index 100%
rename from Docs/Class/ImportStateObserver.md
rename to docs/Class/ImportStateObserver.md
diff --git a/Docs/Enums/ColumnType.md b/docs/Enums/ColumnType.md
similarity index 100%
rename from Docs/Enums/ColumnType.md
rename to docs/Enums/ColumnType.md
diff --git a/Docs/Enums/FormComponents.md b/docs/Enums/FormComponents.md
similarity index 100%
rename from Docs/Enums/FormComponents.md
rename to docs/Enums/FormComponents.md
diff --git a/Docs/Model/ChannelModel.md b/docs/Model/ChannelModel.md
similarity index 100%
rename from Docs/Model/ChannelModel.md
rename to docs/Model/ChannelModel.md
diff --git a/Docs/Model/ContentItemCommonDataModel.md b/docs/Model/ContentItemCommonDataModel.md
similarity index 100%
rename from Docs/Model/ContentItemCommonDataModel.md
rename to docs/Model/ContentItemCommonDataModel.md
diff --git a/Docs/Model/ContentItemDataModel.md b/docs/Model/ContentItemDataModel.md
similarity index 100%
rename from Docs/Model/ContentItemDataModel.md
rename to docs/Model/ContentItemDataModel.md
diff --git a/Docs/Model/ContentItemLanguageMetadataModel.md b/docs/Model/ContentItemLanguageMetadataModel.md
similarity index 100%
rename from Docs/Model/ContentItemLanguageMetadataModel.md
rename to docs/Model/ContentItemLanguageMetadataModel.md
diff --git a/Docs/Model/ContentItemModel.md b/docs/Model/ContentItemModel.md
similarity index 100%
rename from Docs/Model/ContentItemModel.md
rename to docs/Model/ContentItemModel.md
diff --git a/Docs/Model/ContentItemReferenceModel.md b/docs/Model/ContentItemReferenceModel.md
similarity index 95%
rename from Docs/Model/ContentItemReferenceModel.md
rename to docs/Model/ContentItemReferenceModel.md
index 330ce2d..e59f00b 100644
--- a/Docs/Model/ContentItemReferenceModel.md
+++ b/docs/Model/ContentItemReferenceModel.md
@@ -7,7 +7,7 @@ Model [discriminator](../UmtModel.md#discriminator): `ContentItemReference`
|ContentItemReferenceGUID\*||System.Guid?|[UniqueId](../UmtModel.md#UniqueId)|
|ContentItemReferenceSourceCommonDataGuid\*||System.Guid?|Reference to [ContentItemCommonDataInfo](../References.md#ContentItemCommonDataInfo) on property ContentItemReferenceSourceCommonDataID **required**|
|ContentItemReferenceTargetItemGuid\*||System.Guid?|Reference to [ContentItemInfo](../References.md#ContentItemInfo) on property ContentItemReferenceTargetItemID **required**|
-|ContentItemReferenceGroupGUID\*||System.Guid?|[UniqueId](../UmtModel.md#UniqueId)|
+|ContentItemReferenceGroupGUID\*||System.Guid?||
|[customPropertyName]|custom property defined by created [DataClass](./DataClassModel.md)|.NET type defined by data class field||
*) value is required
diff --git a/Docs/Model/ContentLanguageModel.md b/docs/Model/ContentLanguageModel.md
similarity index 100%
rename from Docs/Model/ContentLanguageModel.md
rename to docs/Model/ContentLanguageModel.md
diff --git a/Docs/Model/ContentTypeChannelModel.md b/docs/Model/ContentTypeChannelModel.md
similarity index 100%
rename from Docs/Model/ContentTypeChannelModel.md
rename to docs/Model/ContentTypeChannelModel.md
diff --git a/Docs/Model/DataClassModel.md b/docs/Model/DataClassModel.md
similarity index 96%
rename from Docs/Model/DataClassModel.md
rename to docs/Model/DataClassModel.md
index dbfdee2..a6f006d 100644
--- a/Docs/Model/DataClassModel.md
+++ b/docs/Model/DataClassModel.md
@@ -34,12 +34,13 @@ This sample describes how to create class inside XbyK to hold Article data
"ClassDisplayName": "This is Article example",
"ClassName": "UMT.Article",
"ClassTableName": "UMT_Article",
- "ClassLastModified": "2023-12-08T23:29:12.7097663\u002B01:00",
+ "ClassLastModified": "2023-12-12T23:24:07.834174\u002B01:00",
"ClassGUID": "06540294-3b56-4cf7-8773-088bb766ac23",
"ClassResourceGuid": "0e4beef1-989c-4687-80ca-ae21fec09734",
"ClassHasUnmanagedDbSchema": false,
"ClassType": "Content",
"ClassContentTypeType": "Website",
+ "ClassWebPageHasUrl": true,
"Fields": [
{
"AllowEmpty": true,
@@ -121,8 +122,8 @@ This sample describes how to create class inside XbyK to hold Article data
"ClassDisplayName": "Event",
"ClassName": "UMT.Event",
"ClassTableName": "UMT_Event",
- "ClassLastModified": "2023-12-08T23:29:12.7326949\u002B01:00",
- "ClassGUID": "8d907871-5a82-4945-a533-1c4024829b64",
+ "ClassLastModified": "2023-12-12T23:24:07.8659387\u002B01:00",
+ "ClassGUID": "2aa8f44a-8839-42a1-ba61-963e2b01ecaf",
"ClassResourceGuid": "ff8285c1-9d1a-49b3-8c9d-7502e1e533f7",
"ClassHasUnmanagedDbSchema": false,
"ClassType": "Content",
@@ -200,7 +201,7 @@ This sample describes how to create class inside XbyK to hold Article data
"ClassDisplayName": "Faq",
"ClassName": "UMT.Faq",
"ClassTableName": "UMT_Faq",
- "ClassLastModified": "2023-12-08T23:29:12.7333315\u002B01:00",
+ "ClassLastModified": "2023-12-12T23:24:07.8669817\u002B01:00",
"ClassGUID": "7ed6604e-613b-4ce0-8c21-acfb372c416a",
"ClassHasUnmanagedDbSchema": false,
"ClassType": "Content",
diff --git a/Docs/Model/EmailChannelModel.md b/docs/Model/EmailChannelModel.md
similarity index 100%
rename from Docs/Model/EmailChannelModel.md
rename to docs/Model/EmailChannelModel.md
diff --git a/Docs/Model/MediaFileModel.md b/docs/Model/MediaFileModel.md
similarity index 98%
rename from Docs/Model/MediaFileModel.md
rename to docs/Model/MediaFileModel.md
index ac32631..d0137ec 100644
--- a/Docs/Model/MediaFileModel.md
+++ b/docs/Model/MediaFileModel.md
@@ -19,7 +19,6 @@ Model [discriminator](../UmtModel.md#discriminator): `Media_File`
|FileImageHeight||int?||
|FileCreatedWhen||System.DateTime?||
|FileModifiedWhen||System.DateTime?||
-|FileCustomData||string?||
|[customPropertyName]|custom property defined by created [DataClass](./DataClassModel.md)|.NET type defined by data class field||
*) value is required
diff --git a/Docs/Model/MediaLibraryModel.md b/docs/Model/MediaLibraryModel.md
similarity index 97%
rename from Docs/Model/MediaLibraryModel.md
rename to docs/Model/MediaLibraryModel.md
index 9359a77..e5ffe94 100644
--- a/Docs/Model/MediaLibraryModel.md
+++ b/docs/Model/MediaLibraryModel.md
@@ -8,7 +8,6 @@ Model [discriminator](../UmtModel.md#discriminator): `Media_Library`
|LibraryDisplayName\*||string?||
|LibraryDescription||string?||
|LibraryFolder\*||string?||
-|LibraryAccess||int?||
|LibraryGUID\*||System.Guid?|[UniqueId](../UmtModel.md#UniqueId)|
|LibraryLastModified||System.DateTime?||
|[customPropertyName]|custom property defined by created [DataClass](./DataClassModel.md)|.NET type defined by data class field||
diff --git a/Docs/Model/UMT.schema.json b/docs/Model/UMT.schema.json
similarity index 99%
rename from Docs/Model/UMT.schema.json
rename to docs/Model/UMT.schema.json
index 146526c..e5ccd01 100644
--- a/Docs/Model/UMT.schema.json
+++ b/docs/Model/UMT.schema.json
@@ -811,12 +811,6 @@
"string"
],
"format": "date-time"
- },
- "FileCustomData": {
- "type": [
- "null",
- "string"
- ]
}
}
}
@@ -862,13 +856,6 @@
"type": "string",
"minLength": 1
},
- "LibraryAccess": {
- "type": [
- "integer",
- "null"
- ],
- "format": "int32"
- },
"LibraryGUID": {
"type": "string",
"format": "guid",
diff --git a/Docs/Model/UserInfoModel.md b/docs/Model/UserInfoModel.md
similarity index 100%
rename from Docs/Model/UserInfoModel.md
rename to docs/Model/UserInfoModel.md
diff --git a/Docs/Model/WebPageItemModel.md b/docs/Model/WebPageItemModel.md
similarity index 100%
rename from Docs/Model/WebPageItemModel.md
rename to docs/Model/WebPageItemModel.md
diff --git a/Docs/Model/WebPageUrlPathModel.md b/docs/Model/WebPageUrlPathModel.md
similarity index 100%
rename from Docs/Model/WebPageUrlPathModel.md
rename to docs/Model/WebPageUrlPathModel.md
diff --git a/Docs/Model/WebsiteChannelModel.md b/docs/Model/WebsiteChannelModel.md
similarity index 100%
rename from Docs/Model/WebsiteChannelModel.md
rename to docs/Model/WebsiteChannelModel.md
diff --git a/Docs/README.md b/docs/README.md
similarity index 100%
rename from Docs/README.md
rename to docs/README.md
diff --git a/Docs/References.md b/docs/References.md
similarity index 100%
rename from Docs/References.md
rename to docs/References.md
diff --git a/Docs/Samples/basic.json b/docs/Samples/basic.json
similarity index 93%
rename from Docs/Samples/basic.json
rename to docs/Samples/basic.json
index 6c345c0..bb20843 100644
--- a/Docs/Samples/basic.json
+++ b/docs/Samples/basic.json
@@ -74,7 +74,7 @@
"ClassName": "UMT.Article",
"ClassTableName": "UMT_Article",
"ClassShowTemplateSelection": null,
- "ClassLastModified": "2023-12-08T23:29:13.0056045\u002B01:00",
+ "ClassLastModified": "2023-12-12T23:24:08.1076311\u002B01:00",
"ClassGUID": "06540294-3b56-4cf7-8773-088bb766ac23",
"ClassContactMapping": null,
"ClassContactOverwriteEnabled": null,
@@ -85,7 +85,7 @@
"ClassHasUnmanagedDbSchema": false,
"ClassType": "Content",
"ClassContentTypeType": "Website",
- "ClassWebPageHasUrl": null,
+ "ClassWebPageHasUrl": true,
"Fields": [
{
"AllowEmpty": true,
@@ -168,7 +168,7 @@
"ClassName": "UMT.Faq",
"ClassTableName": "UMT_Faq",
"ClassShowTemplateSelection": null,
- "ClassLastModified": "2023-12-08T23:29:13.0056294\u002B01:00",
+ "ClassLastModified": "2023-12-12T23:24:08.1076747\u002B01:00",
"ClassGUID": "7ed6604e-613b-4ce0-8c21-acfb372c416a",
"ClassContactMapping": null,
"ClassContactOverwriteEnabled": null,
@@ -228,9 +228,9 @@
"ContentItemLanguageMetadataContentItemGuid": "c354427d-3d02-4876-8ed4-4de817fae929",
"ContentItemLanguageMetadataDisplayName": "Language Metadata Example",
"ContentItemLanguageMetadataLatestVersionStatus": 0,
- "ContentItemLanguageMetadataCreatedWhen": "2023-12-06T23:29:13.0060435\u002B01:00",
+ "ContentItemLanguageMetadataCreatedWhen": "2023-12-10T23:24:08.1082307\u002B01:00",
"ContentItemLanguageMetadataCreatedByUserGuid": "95f42fd4-6a14-4e88-b214-4e136479f788",
- "ContentItemLanguageMetadataModifiedWhen": "2023-12-08T23:29:13.0060512\u002B01:00",
+ "ContentItemLanguageMetadataModifiedWhen": "2023-12-12T23:24:08.1082408\u002B01:00",
"ContentItemLanguageMetadataModifiedByUserGuid": "95f42fd4-6a14-4e88-b214-4e136479f788",
"ContentItemLanguageMetadataHasImageAsset": false,
"ContentItemLanguageMetadataContentLanguageGuid": "f454e93b-5fe9-42a9-b1af-b572234ed9c4"
@@ -241,9 +241,9 @@
"ContentItemLanguageMetadataContentItemGuid": "c354427d-3d02-4876-8ed4-4de817fae929",
"ContentItemLanguageMetadataDisplayName": "Basic Language Metadata Example",
"ContentItemLanguageMetadataLatestVersionStatus": 0,
- "ContentItemLanguageMetadataCreatedWhen": "2023-12-06T23:29:13.0062866\u002B01:00",
+ "ContentItemLanguageMetadataCreatedWhen": "2023-12-10T23:24:08.108501\u002B01:00",
"ContentItemLanguageMetadataCreatedByUserGuid": null,
- "ContentItemLanguageMetadataModifiedWhen": "2023-12-08T23:29:13.0062944\u002B01:00",
+ "ContentItemLanguageMetadataModifiedWhen": "2023-12-12T23:24:08.1085354\u002B01:00",
"ContentItemLanguageMetadataModifiedByUserGuid": null,
"ContentItemLanguageMetadataHasImageAsset": false,
"ContentItemLanguageMetadataContentLanguageGuid": "f454e93b-5fe9-42a9-b1af-b572234ed9c4"
@@ -264,7 +264,6 @@
"LibraryDisplayName": "LibraryDisplayedName",
"LibraryDescription": "TestLibrary",
"LibraryFolder": "TestFolder",
- "LibraryAccess": null,
"LibraryGUID": "e3a9c50c-2b76-4ba8-ac19-2f0aa64c47d5",
"LibraryLastModified": null
},
@@ -284,8 +283,7 @@
"FileImageWidth": null,
"FileImageHeight": null,
"FileCreatedWhen": null,
- "FileModifiedWhen": null,
- "FileCustomData": null
+ "FileModifiedWhen": null
},
{
"$type": "ContentItem",
@@ -362,6 +360,28 @@
"ContentItemLanguageMetadataHasImageAsset": false,
"ContentItemLanguageMetadataContentLanguageGuid": "a6c0a558-8b33-47b6-87a8-491b437c9923"
},
+ {
+ "$type": "WebPageUrlPath",
+ "WebPageUrlPathGUID": "2bda2458-e262-4825-b51b-5a7b345ed7bd",
+ "WebPageUrlPath": "en-US/creation-of-umt-model",
+ "WebPageUrlPathHash": null,
+ "WebPageUrlPathWebPageItemGuid": "6e995319-77e7-475e-9ebb-607bdbf5af9a",
+ "WebPageUrlPathWebsiteChannelGuid": "a6ba6fcb-9d05-4abe-afb4-74b153c90db7",
+ "WebPageUrlPathContentLanguageGuid": "f454e93b-5fe9-42a9-b1af-b572234ed9c4",
+ "WebPageUrlPathIsLatest": true,
+ "WebPageUrlPathIsDraft": false
+ },
+ {
+ "$type": "WebPageUrlPath",
+ "WebPageUrlPathGUID": "8083fa41-03fe-49c3-87fb-4f7c530b14cf",
+ "WebPageUrlPath": "en-GB/creation-of-umt-model",
+ "WebPageUrlPathHash": null,
+ "WebPageUrlPathWebPageItemGuid": "6e995319-77e7-475e-9ebb-607bdbf5af9a",
+ "WebPageUrlPathWebsiteChannelGuid": "a6ba6fcb-9d05-4abe-afb4-74b153c90db7",
+ "WebPageUrlPathContentLanguageGuid": "a6c0a558-8b33-47b6-87a8-491b437c9923",
+ "WebPageUrlPathIsLatest": true,
+ "WebPageUrlPathIsDraft": false
+ },
{
"$type": "WebPageItem",
"WebPageItemGUID": "6e995319-77e7-475e-9ebb-607bdbf5af9a",
diff --git a/Docs/UmtModel.md b/docs/UmtModel.md
similarity index 100%
rename from Docs/UmtModel.md
rename to docs/UmtModel.md
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/.gitignore b/examples/Kentico.Xperience.UMT.Example.AdminApp/.gitignore
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/.gitignore
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/.gitignore
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/.images/content-types-sample.png b/examples/Kentico.Xperience.UMT.Example.AdminApp/.images/content-types-sample.png
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/.images/content-types-sample.png
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/.images/content-types-sample.png
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/.images/expected-result.png b/examples/Kentico.Xperience.UMT.Example.AdminApp/.images/expected-result.png
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/.images/expected-result.png
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/.images/expected-result.png
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/.images/pick-file.png b/examples/Kentico.Xperience.UMT.Example.AdminApp/.images/pick-file.png
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/.images/pick-file.png
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/.images/pick-file.png
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/.images/sample-apps.png b/examples/Kentico.Xperience.UMT.Example.AdminApp/.images/sample-apps.png
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/.images/sample-apps.png
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/.images/sample-apps.png
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Auxiliary/AsynchronousStream.cs b/examples/Kentico.Xperience.UMT.Example.AdminApp/Auxiliary/AsynchronousStream.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Auxiliary/AsynchronousStream.cs
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Auxiliary/AsynchronousStream.cs
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/babel.config.json b/examples/Kentico.Xperience.UMT.Example.AdminApp/Client/babel.config.json
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/babel.config.json
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Client/babel.config.json
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/dist/entry.kxh.6714030b658dd64c29c5.js b/examples/Kentico.Xperience.UMT.Example.AdminApp/Client/dist/entry.kxh.6714030b658dd64c29c5.js
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/dist/entry.kxh.6714030b658dd64c29c5.js
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Client/dist/entry.kxh.6714030b658dd64c29c5.js
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/package-lock.json b/examples/Kentico.Xperience.UMT.Example.AdminApp/Client/package-lock.json
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/package-lock.json
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Client/package-lock.json
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/package.json b/examples/Kentico.Xperience.UMT.Example.AdminApp/Client/package.json
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/package.json
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Client/package.json
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/src/custom-layout/CustomLayoutTemplate.tsx b/examples/Kentico.Xperience.UMT.Example.AdminApp/Client/src/custom-layout/CustomLayoutTemplate.tsx
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/src/custom-layout/CustomLayoutTemplate.tsx
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Client/src/custom-layout/CustomLayoutTemplate.tsx
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/src/entry.tsx b/examples/Kentico.Xperience.UMT.Example.AdminApp/Client/src/entry.tsx
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/src/entry.tsx
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Client/src/entry.tsx
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/tsconfig.json b/examples/Kentico.Xperience.UMT.Example.AdminApp/Client/tsconfig.json
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/tsconfig.json
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Client/tsconfig.json
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/webpack.config.js b/examples/Kentico.Xperience.UMT.Example.AdminApp/Client/webpack.config.js
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Client/webpack.config.js
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Client/webpack.config.js
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Data/Samples.json b/examples/Kentico.Xperience.UMT.Example.AdminApp/Data/Samples.json
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Data/Samples.json
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Data/Samples.json
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Kentico.Xperience.UMT.Example.AdminApp.csproj b/examples/Kentico.Xperience.UMT.Example.AdminApp/Kentico.Xperience.UMT.Example.AdminApp.csproj
similarity index 97%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/Kentico.Xperience.UMT.Example.AdminApp.csproj
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/Kentico.Xperience.UMT.Example.AdminApp.csproj
index a30eff7..f5d9268 100644
--- a/Examples/Kentico.Xperience.UMT.Example.AdminApp/Kentico.Xperience.UMT.Example.AdminApp.csproj
+++ b/examples/Kentico.Xperience.UMT.Example.AdminApp/Kentico.Xperience.UMT.Example.AdminApp.csproj
@@ -19,7 +19,7 @@
-
+
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/README.md b/examples/Kentico.Xperience.UMT.Example.AdminApp/README.md
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/README.md
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/README.md
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/ServiceCollectionExtensions.cs b/examples/Kentico.Xperience.UMT.Example.AdminApp/ServiceCollectionExtensions.cs
similarity index 97%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/ServiceCollectionExtensions.cs
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/ServiceCollectionExtensions.cs
index f4fcda5..08935a1 100644
--- a/Examples/Kentico.Xperience.UMT.Example.AdminApp/ServiceCollectionExtensions.cs
+++ b/examples/Kentico.Xperience.UMT.Example.AdminApp/ServiceCollectionExtensions.cs
@@ -17,10 +17,10 @@ public static class ServiceCollectionExtensions
{
private const string SOURCE = "UMT.Example";
- public static void AddUmtSample(this IServiceCollection services) => services.AddUniversalMigrationToolkit();
+ public static IServiceCollection AddUmtSample(this IServiceCollection services) => services.AddUniversalMigrationToolkit();
- public static void UseUmtSample(this IApplicationBuilder app)
+ public static IApplicationBuilder UseUmtSample(this IApplicationBuilder app)
{
app.UseWebSockets();
@@ -47,6 +47,8 @@ public static void UseUmtSample(this IApplicationBuilder app)
await next(context);
}
});
+
+ return app;
}
private sealed record Message(string Type, HeaderPayload? Payload);
@@ -64,7 +66,7 @@ async Task SendProgressReport(string message)
await webSocket.SendAsync(new ArraySegment(payload, 0, payload.Length), WebSocketMessageType.Text, true, CancellationToken.None);
}
}
-
+
async Task SendStats(IDictionary stats)
{
if (webSocket.State == WebSocketState.Open)
@@ -116,7 +118,7 @@ async Task SendConfirmHeader()
var observer = new ImportStateObserver();
var stats = new ConcurrentDictionary();
-
+
observer = await importService.StartImportAsync(data!, observer);
observer.ImportedInfo += async (model, info) =>
{
@@ -164,9 +166,9 @@ async Task SendConfirmHeader()
if (buffer[0] == 0x2D && buffer.Take(5).All(x => x.Equals(0X2D)))
{
ms.Flush();
- break;
+ break;
}
-
+
ms.Write(data.Array!, data.Offset, receiveResult.Count);
ms.Flush();
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/UIPages/CustomTemplate/UniversalMigrationTemplate.cs b/examples/Kentico.Xperience.UMT.Example.AdminApp/UIPages/CustomTemplate/UniversalMigrationTemplate.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/UIPages/CustomTemplate/UniversalMigrationTemplate.cs
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/UIPages/CustomTemplate/UniversalMigrationTemplate.cs
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/UmtWebAdminModule.cs b/examples/Kentico.Xperience.UMT.Example.AdminApp/UmtWebAdminModule.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/UmtWebAdminModule.cs
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/UmtWebAdminModule.cs
diff --git a/Examples/Kentico.Xperience.UMT.Example.AdminApp/packages.lock.json b/examples/Kentico.Xperience.UMT.Example.AdminApp/packages.lock.json
similarity index 99%
rename from Examples/Kentico.Xperience.UMT.Example.AdminApp/packages.lock.json
rename to examples/Kentico.Xperience.UMT.Example.AdminApp/packages.lock.json
index 163f6d2..5ce7188 100644
--- a/Examples/Kentico.Xperience.UMT.Example.AdminApp/packages.lock.json
+++ b/examples/Kentico.Xperience.UMT.Example.AdminApp/packages.lock.json
@@ -647,7 +647,7 @@
},
"Microsoft.Extensions.Logging.Abstractions": {
"type": "CentralTransitive",
- "requested": "[7.0.1, )",
+ "requested": "[8.0.0, )",
"resolved": "6.0.4",
"contentHash": "K14wYgwOfKVELrUh5eBqlC8Wvo9vvhS3ZhIvcswV2uS/ubkTRPSQsN557EZiYUSSoZNxizG+alN4wjtdyLdcyw=="
}
diff --git a/Examples/Kentico.Xperience.UMT.Example.Console/.gitignore b/examples/Kentico.Xperience.UMT.Example.Console/.gitignore
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.Console/.gitignore
rename to examples/Kentico.Xperience.UMT.Example.Console/.gitignore
diff --git a/Examples/Kentico.Xperience.UMT.Example.Console/Kentico.Xperience.UMT.Example.Console.csproj b/examples/Kentico.Xperience.UMT.Example.Console/Kentico.Xperience.UMT.Example.Console.csproj
similarity index 90%
rename from Examples/Kentico.Xperience.UMT.Example.Console/Kentico.Xperience.UMT.Example.Console.csproj
rename to examples/Kentico.Xperience.UMT.Example.Console/Kentico.Xperience.UMT.Example.Console.csproj
index 77c83d0..e1eec6a 100644
--- a/Examples/Kentico.Xperience.UMT.Example.Console/Kentico.Xperience.UMT.Example.Console.csproj
+++ b/examples/Kentico.Xperience.UMT.Example.Console/Kentico.Xperience.UMT.Example.Console.csproj
@@ -6,13 +6,14 @@
-
+
+
diff --git a/Examples/Kentico.Xperience.UMT.Example.Console/Program.cs b/examples/Kentico.Xperience.UMT.Example.Console/Program.cs
similarity index 96%
rename from Examples/Kentico.Xperience.UMT.Example.Console/Program.cs
rename to examples/Kentico.Xperience.UMT.Example.Console/Program.cs
index c39e55e..11bb302 100644
--- a/Examples/Kentico.Xperience.UMT.Example.Console/Program.cs
+++ b/examples/Kentico.Xperience.UMT.Example.Console/Program.cs
@@ -25,7 +25,7 @@
CMSApplication.Init();
var services = new ServiceCollection();
-services.AddLogging(b => b.AddDebug());
+services.AddLogging(b => b.AddDebug().AddSimpleConsole(options => options.SingleLine = true).AddConfiguration(root.GetSection("Logging")));
services.AddUniversalMigrationToolkit();
var serviceProvider = services.BuildServiceProvider();
diff --git a/Examples/Kentico.Xperience.UMT.Example.Console/README.md b/examples/Kentico.Xperience.UMT.Example.Console/README.md
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.Console/README.md
rename to examples/Kentico.Xperience.UMT.Example.Console/README.md
diff --git a/Examples/Kentico.Xperience.UMT.Example.Console/SampleJson.cs b/examples/Kentico.Xperience.UMT.Example.Console/SampleJson.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.Console/SampleJson.cs
rename to examples/Kentico.Xperience.UMT.Example.Console/SampleJson.cs
diff --git a/Examples/Kentico.Xperience.UMT.Example.Console/appsettings.json b/examples/Kentico.Xperience.UMT.Example.Console/appsettings.json
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.Console/appsettings.json
rename to examples/Kentico.Xperience.UMT.Example.Console/appsettings.json
diff --git a/Examples/Kentico.Xperience.UMT.Example.Console/packages.lock.json b/examples/Kentico.Xperience.UMT.Example.Console/packages.lock.json
similarity index 78%
rename from Examples/Kentico.Xperience.UMT.Example.Console/packages.lock.json
rename to examples/Kentico.Xperience.UMT.Example.Console/packages.lock.json
index 6081d44..cf360d9 100644
--- a/Examples/Kentico.Xperience.UMT.Example.Console/packages.lock.json
+++ b/examples/Kentico.Xperience.UMT.Example.Console/packages.lock.json
@@ -4,32 +4,49 @@
"net8.0": {
"Microsoft.Extensions.Configuration.Json": {
"type": "Direct",
- "requested": "[7.0.0, )",
- "resolved": "7.0.0",
- "contentHash": "LDNYe3uw76W35Jci+be4LDf2lkQZe0A7EEYQVChFbc509CpZ4Iupod8li4PUXPBhEUOFI/rlQNf5xkzJRQGvtA==",
+ "requested": "[8.0.0, )",
+ "resolved": "8.0.0",
+ "contentHash": "C2wqUoh9OmRL1akaCcKSTmRU8z0kckfImG7zLNI8uyi47Lp+zd5LWAD17waPQEqCz3ioWOCrFUo+JJuoeZLOBw==",
"dependencies": {
- "Microsoft.Extensions.Configuration": "7.0.0",
- "Microsoft.Extensions.Configuration.Abstractions": "7.0.0",
- "Microsoft.Extensions.Configuration.FileExtensions": "7.0.0",
- "Microsoft.Extensions.FileProviders.Abstractions": "7.0.0",
- "System.Text.Json": "7.0.0"
+ "Microsoft.Extensions.Configuration": "8.0.0",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Configuration.FileExtensions": "8.0.0",
+ "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0",
+ "System.Text.Json": "8.0.0"
}
},
"Microsoft.Extensions.Logging.Abstractions": {
"type": "Direct",
- "requested": "[7.0.1, )",
- "resolved": "7.0.1",
- "contentHash": "pkeBFx0vqMW/A3aUVHh7MPu3WkBhaVlezhSZeb1c9XD0vUReYH1TLFSy5MxJgZfmz5LZzYoErMorlYZiwpOoNA=="
+ "requested": "[8.0.0, )",
+ "resolved": "8.0.0",
+ "contentHash": "arDBqTgFCyS0EvRV7O3MZturChstm50OJ0y9bDJvAcmEPJm0FFpFyjU/JLYyStNGGey081DvnQYlncNX5SJJGA==",
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Logging.Console": {
+ "type": "Direct",
+ "requested": "[8.0.0, )",
+ "resolved": "8.0.0",
+ "contentHash": "e+48o7DztoYog+PY430lPxrM4mm3PbA6qucvQtUDDwVo4MO+ejMw7YGc/o2rnxbxj4isPxdfKFzTxvXMwAz83A==",
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Logging": "8.0.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Logging.Configuration": "8.0.0",
+ "Microsoft.Extensions.Options": "8.0.0",
+ "System.Text.Json": "8.0.0"
+ }
},
"Microsoft.Extensions.Logging.Debug": {
"type": "Direct",
- "requested": "[7.0.0, )",
- "resolved": "7.0.0",
- "contentHash": "tFGGyPDpJ8ZdQdeckCArP7nZuoY3am9zJWuvp4OD1bHq65S0epW9BNHzAWeaIO4eYwWnGm1jRNt3vRciH8H6MA==",
+ "requested": "[8.0.0, )",
+ "resolved": "8.0.0",
+ "contentHash": "dt0x21qBdudHLW/bjMJpkixv858RRr8eSomgVbU8qljOyfrfDGi1JQvpF9w8S7ziRPtRKisuWaOwFxJM82GxeA==",
"dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
- "Microsoft.Extensions.Logging": "7.0.0",
- "Microsoft.Extensions.Logging.Abstractions": "7.0.0"
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Logging": "8.0.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.0"
}
},
"SonarAnalyzer.CSharp": {
@@ -140,76 +157,76 @@
},
"Microsoft.Extensions.Configuration": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "tldQUBWt/xeH2K7/hMPPo5g8zuLc3Ro9I5d4o/XrxvxOCA2EZBtW7bCHHTc49fcBtvB8tLAb/Qsmfrq+2SJ4vA==",
+ "resolved": "8.0.0",
+ "contentHash": "0J/9YNXTMWSZP2p2+nvl8p71zpSwokZXZuJW+VjdErkegAnFdO1XlqtA62SJtgVYHdKu3uPxJHcMR/r35HwFBA==",
"dependencies": {
- "Microsoft.Extensions.Configuration.Abstractions": "7.0.0",
- "Microsoft.Extensions.Primitives": "7.0.0"
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.Configuration.Abstractions": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "f34u2eaqIjNO9YLHBz8rozVZ+TcFiFs0F3r7nUJd7FRkVSxk8u4OpoK226mi49MwexHOR2ibP9MFvRUaLilcQQ==",
+ "resolved": "8.0.0",
+ "contentHash": "3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==",
"dependencies": {
- "Microsoft.Extensions.Primitives": "7.0.0"
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.Configuration.Binder": {
"type": "Transitive",
- "resolved": "6.0.0",
- "contentHash": "b3ErKzND8LIC7o08QAVlKfaEIYEvLJbtmVbFZVBRXeu9YkKfSSzLZfR1SUfQPBIy9mKLhEtJgGYImkcMNaKE0A==",
+ "resolved": "8.0.0",
+ "contentHash": "mBMoXLsr5s1y2zOHWmKsE9veDcx8h1x/c3rz4baEdQKTeDcmQAPNbB54Pi/lhFO3K431eEq6PFbMgLaa6PHFfA==",
"dependencies": {
- "Microsoft.Extensions.Configuration.Abstractions": "6.0.0"
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
}
},
"Microsoft.Extensions.Configuration.FileExtensions": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "xk2lRJ1RDuqe57BmgvRPyCt6zyePKUmvT6iuXqiHR+/OIIgWVR8Ff5k2p6DwmqY8a17hx/OnrekEhziEIeQP6Q==",
+ "resolved": "8.0.0",
+ "contentHash": "McP+Lz/EKwvtCv48z0YImw+L1gi1gy5rHhNaNIY2CrjloV+XY8gydT8DjMR6zWeL13AFK+DioVpppwAuO1Gi1w==",
"dependencies": {
- "Microsoft.Extensions.Configuration": "7.0.0",
- "Microsoft.Extensions.Configuration.Abstractions": "7.0.0",
- "Microsoft.Extensions.FileProviders.Abstractions": "7.0.0",
- "Microsoft.Extensions.FileProviders.Physical": "7.0.0",
- "Microsoft.Extensions.Primitives": "7.0.0"
+ "Microsoft.Extensions.Configuration": "8.0.0",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0",
+ "Microsoft.Extensions.FileProviders.Physical": "8.0.0",
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.DependencyInjection": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "elNeOmkeX3eDVG6pYVeV82p29hr+UKDaBhrZyWvWLw/EVZSYEkZlQdkp0V39k/Xehs2Qa0mvoCvkVj3eQxNQ1Q==",
+ "resolved": "8.0.0",
+ "contentHash": "V8S3bsm50ig6JSyrbcJJ8bW2b9QLGouz+G1miK3UTaOWmMtFwNNNzUf4AleyDWUmTrWMLNnFSLEQtxmxgNQnNQ==",
"dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0"
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0"
}
},
"Microsoft.Extensions.DependencyInjection.Abstractions": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "h3j/QfmFN4S0w4C2A6X7arXij/M/OVw3uQHSOFxnND4DyAzO1F9eMX7Eti7lU/OkSthEE0WzRsfT/Dmx86jzCw=="
+ "resolved": "8.0.0",
+ "contentHash": "cjWrLkJXK0rs4zofsK4bSdg+jhDLTaxrkXu4gS6Y7MAlCvRyNNgwY/lJi5RDlQOnSZweHqoyvgvbdvQsRIW+hg=="
},
"Microsoft.Extensions.FileProviders.Abstractions": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "NyawiW9ZT/liQb34k9YqBSNPLuuPkrjMgQZ24Y/xXX1RoiBkLUdPMaQTmxhZ5TYu8ZKZ9qayzil75JX95vGQUg==",
+ "resolved": "8.0.0",
+ "contentHash": "ZbaMlhJlpisjuWbvXr4LdAst/1XxH3vZ6A0BsgTphZ2L4PGuxRLz7Jr/S7mkAAnOn78Vu0fKhEgNF5JO3zfjqQ==",
"dependencies": {
- "Microsoft.Extensions.Primitives": "7.0.0"
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.FileProviders.Physical": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "K8D2MTR+EtzkbZ8z80LrG7Ur64R7ZZdRLt1J5cgpc/pUWl0C6IkAUapPuK28oionHueCPELUqq0oYEvZfalNdg==",
+ "resolved": "8.0.0",
+ "contentHash": "UboiXxpPUpwulHvIAVE36Knq0VSHaAmfrFkegLyBZeaADuKezJ/AIXYAW8F5GBlGk/VaibN2k/Zn1ca8YAfVdA==",
"dependencies": {
- "Microsoft.Extensions.FileProviders.Abstractions": "7.0.0",
- "Microsoft.Extensions.FileSystemGlobbing": "7.0.0",
- "Microsoft.Extensions.Primitives": "7.0.0"
+ "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0",
+ "Microsoft.Extensions.FileSystemGlobbing": "8.0.0",
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.FileSystemGlobbing": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "2jONjKHiF+E92ynz2ZFcr9OvxIw+rTGMPEH+UZGeHTEComVav93jQUWGkso8yWwVBcEJGcNcZAaqY01FFJcj7w=="
+ "resolved": "8.0.0",
+ "contentHash": "OK+670i7esqlQrPjdIKRbsyMCe9g5kSLpRRQGSr4Q58AOYEe/hCnfLZprh7viNisSUUQZmMrbbuDaIrP+V1ebQ=="
},
"Microsoft.Extensions.Hosting.Abstractions": {
"type": "Transitive",
@@ -239,40 +256,39 @@
},
"Microsoft.Extensions.Logging": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "Nw2muoNrOG5U5qa2ZekXwudUn2BJcD41e65zwmDHb1fQegTX66UokLWZkJRpqSSHXDOWZ5V0iqhbxOEky91atA==",
+ "resolved": "8.0.0",
+ "contentHash": "tvRkov9tAJ3xP51LCv3FJ2zINmv1P8Hi8lhhtcKGqM+ImiTCC84uOPEI4z8Cdq2C3o9e+Aa0Gw0rmrsJD77W+w==",
"dependencies": {
- "Microsoft.Extensions.DependencyInjection": "7.0.0",
- "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
- "Microsoft.Extensions.Logging.Abstractions": "7.0.0",
- "Microsoft.Extensions.Options": "7.0.0"
+ "Microsoft.Extensions.DependencyInjection": "8.0.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Options": "8.0.0"
}
},
"Microsoft.Extensions.Options": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "lP1yBnTTU42cKpMozuafbvNtQ7QcBjr/CcK3bYOGEMH55Fjt+iecXjT6chR7vbgCMqy3PG3aNQSZgo/EuY/9qQ==",
+ "resolved": "8.0.0",
+ "contentHash": "JOVOfqpnqlVLUzINQ2fox8evY2SKLYJ3BV8QDe/Jyp21u1T7r45x/R/5QdteURMR5r01GxeJSBBUOCOyaNXA3g==",
"dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
- "Microsoft.Extensions.Primitives": "7.0.0"
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.Options.ConfigurationExtensions": {
"type": "Transitive",
- "resolved": "6.0.0",
- "contentHash": "bXWINbTn0vC0FYc9GaQTISbxhQLAMrvtbuvD9N6JelEaIS/Pr62wUCinrq5bf1WRBGczt1v4wDhxFtVFNcMdUQ==",
+ "resolved": "8.0.0",
+ "contentHash": "0f4DMRqEd50zQh+UyJc+/HiBsZ3vhAQALgdkcQEalSH1L2isdC7Yj54M3cyo5e+BeO5fcBQ7Dxly8XiBBcvRgw==",
"dependencies": {
- "Microsoft.Extensions.Configuration.Abstractions": "6.0.0",
- "Microsoft.Extensions.Configuration.Binder": "6.0.0",
- "Microsoft.Extensions.DependencyInjection.Abstractions": "6.0.0",
- "Microsoft.Extensions.Options": "6.0.0",
- "Microsoft.Extensions.Primitives": "6.0.0"
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Configuration.Binder": "8.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Options": "8.0.0",
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.Primitives": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "um1KU5kxcRp3CNuI8o/GrZtD4AIOXDk+RLsytjZ9QPok3ttLUelLKpilVPuaFT3TFjOhSibUAso0odbOaCDj3Q=="
+ "resolved": "8.0.0",
+ "contentHash": "bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g=="
},
"Microsoft.Identity.Client": {
"type": "Transitive",
@@ -530,15 +546,15 @@
},
"System.Text.Encodings.Web": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "OP6umVGxc0Z0MvZQBVigj4/U31Pw72ITihDWP9WiWDm+q5aoe0GaJivsfYGq53o6dxH7DcXWiCTl7+0o2CGdmg=="
+ "resolved": "8.0.0",
+ "contentHash": "yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ=="
},
"System.Text.Json": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "DaGSsVqKsn/ia6RG8frjwmJonfos0srquhw09TlT8KRw5I43E+4gs+/bZj4K0vShJ5H9imCuXupb4RmS+dBy3w==",
+ "resolved": "8.0.0",
+ "contentHash": "OdrZO2WjkiEG6ajEFRABTRCi/wuXQPxeV6g8xvUJqdxMvvuCCEk86zPla8UiIQJz3durtUEbNyY/3lIhS0yZvQ==",
"dependencies": {
- "System.Text.Encodings.Web": "7.0.0"
+ "System.Text.Encodings.Web": "8.0.0"
}
},
"System.Threading.Tasks.Extensions": {
@@ -595,6 +611,22 @@
"requested": "[7.0.0, )",
"resolved": "7.0.0",
"contentHash": "3aeMZ1N0lJoSyzqiP03hqemtb1BijhsJADdobn/4nsMJ8V1H+CrpuduUe4hlRdx+ikBQju1VGjMD1GJ3Sk05Eg=="
+ },
+ "Microsoft.Extensions.Logging.Configuration": {
+ "type": "CentralTransitive",
+ "requested": "[8.0.0, )",
+ "resolved": "8.0.0",
+ "contentHash": "ixXXV0G/12g6MXK65TLngYN9V5hQQRuV+fZi882WIoVJT7h5JvoYoxTEwCgdqwLjSneqh1O+66gM8sMr9z/rsQ==",
+ "dependencies": {
+ "Microsoft.Extensions.Configuration": "8.0.0",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Configuration.Binder": "8.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Logging": "8.0.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Options": "8.0.0",
+ "Microsoft.Extensions.Options.ConfigurationExtensions": "8.0.0"
+ }
}
}
}
diff --git a/Examples/Kentico.Xperience.UMT.Example.Console/sample.png b/examples/Kentico.Xperience.UMT.Example.Console/sample.png
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Example.Console/sample.png
rename to examples/Kentico.Xperience.UMT.Example.Console/sample.png
diff --git a/Examples/Kentico.Xperience.UMT.Examples/AssetSamples.cs b/examples/Kentico.Xperience.UMT.Examples/AssetSamples.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Examples/AssetSamples.cs
rename to examples/Kentico.Xperience.UMT.Examples/AssetSamples.cs
diff --git a/Examples/Kentico.Xperience.UMT.Examples/ChannelSamples.cs b/examples/Kentico.Xperience.UMT.Examples/ChannelSamples.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Examples/ChannelSamples.cs
rename to examples/Kentico.Xperience.UMT.Examples/ChannelSamples.cs
diff --git a/Examples/Kentico.Xperience.UMT.Examples/ContentItemLanguageMetadataSamples.cs b/examples/Kentico.Xperience.UMT.Examples/ContentItemLanguageMetadataSamples.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Examples/ContentItemLanguageMetadataSamples.cs
rename to examples/Kentico.Xperience.UMT.Examples/ContentItemLanguageMetadataSamples.cs
diff --git a/Examples/Kentico.Xperience.UMT.Examples/ContentItemSamples.cs b/examples/Kentico.Xperience.UMT.Examples/ContentItemSamples.cs
similarity index 94%
rename from Examples/Kentico.Xperience.UMT.Examples/ContentItemSamples.cs
rename to examples/Kentico.Xperience.UMT.Examples/ContentItemSamples.cs
index 698dff6..ba83088 100644
--- a/Examples/Kentico.Xperience.UMT.Examples/ContentItemSamples.cs
+++ b/examples/Kentico.Xperience.UMT.Examples/ContentItemSamples.cs
@@ -81,6 +81,19 @@ public static class ContentItemSamples
ContentItemLanguageMetadataLatestVersionStatus = VersionStatus.Published,
};
+ [Sample("webpageitem.urlpath.sample.article.enus", "", "Page url path sample")]
+ public static WebPageUrlPathModel SampleArticleWebPathUrlPathModelEnUs => new()
+ {
+ WebPageUrlPathGUID = new Guid("2BDA2458-E262-4825-B51B-5A7B345ED7BD"),
+ WebPageUrlPath = "en-US/creation-of-umt-model",
+ WebPageUrlPathHash = null,
+ WebPageUrlPathWebPageItemGuid = SampleArticleWebPageItem.WebPageItemGUID,
+ WebPageUrlPathWebsiteChannelGuid = WebSiteChannelSamples.WebsiteChannelGuid,
+ WebPageUrlPathContentLanguageGuid = ContentLanguageSamples.CONTENT_LANGUAGE_ENUS_SAMPLE_GUID,
+ WebPageUrlPathIsLatest = true,
+ WebPageUrlPathIsDraft = false
+ };
+
#endregion
#region "EnGb version"
@@ -125,6 +138,19 @@ public static class ContentItemSamples
ContentItemLanguageMetadataModifiedByUserGuid = UserSamples.SampleAdminGuid,
ContentItemLanguageMetadataLatestVersionStatus = VersionStatus.Published,
};
+
+ [Sample("webpageitem.urlpath.sample.article.engb", "", "Page url path sample")]
+ public static WebPageUrlPathModel SampleArticleWebPathUrlPathModelEnGb => new()
+ {
+ WebPageUrlPathGUID = new Guid("8083FA41-03FE-49C3-87FB-4F7C530B14CF"),
+ WebPageUrlPath = "en-GB/creation-of-umt-model",
+ WebPageUrlPathHash = null,
+ WebPageUrlPathWebPageItemGuid = SampleArticleWebPageItem.WebPageItemGUID,
+ WebPageUrlPathWebsiteChannelGuid = WebSiteChannelSamples.WebsiteChannelGuid,
+ WebPageUrlPathContentLanguageGuid = ContentLanguageSamples.CONTENT_LANGUAGE_ENGB_SAMPLE_GUID,
+ WebPageUrlPathIsLatest = true,
+ WebPageUrlPathIsDraft = false
+ };
#endregion
@@ -138,6 +164,8 @@ public static class ContentItemSamples
WebPageItemTreePath = "/creation-of-umt-model",
WebPageItemWebsiteChannelGuid = WebSiteChannelSamples.WebsiteChannelGuid
};
+
+
#endregion
diff --git a/Examples/Kentico.Xperience.UMT.Examples/ContentLanguageSamples.cs b/examples/Kentico.Xperience.UMT.Examples/ContentLanguageSamples.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Examples/ContentLanguageSamples.cs
rename to examples/Kentico.Xperience.UMT.Examples/ContentLanguageSamples.cs
diff --git a/Examples/Kentico.Xperience.UMT.Examples/DataClassSamples.cs b/examples/Kentico.Xperience.UMT.Examples/DataClassSamples.cs
similarity index 99%
rename from Examples/Kentico.Xperience.UMT.Examples/DataClassSamples.cs
rename to examples/Kentico.Xperience.UMT.Examples/DataClassSamples.cs
index cea93e7..06e4fbe 100644
--- a/Examples/Kentico.Xperience.UMT.Examples/DataClassSamples.cs
+++ b/examples/Kentico.Xperience.UMT.Examples/DataClassSamples.cs
@@ -24,6 +24,7 @@ public static class DataClassSamples
ClassDisplayName = "This is Article example",
ClassTableName = "UMT_Article",
ClassHasUnmanagedDbSchema = false,
+ ClassWebPageHasUrl = true,
Fields =
[
new()
diff --git a/Examples/Kentico.Xperience.UMT.Examples/EmailChannelSamples.cs b/examples/Kentico.Xperience.UMT.Examples/EmailChannelSamples.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Examples/EmailChannelSamples.cs
rename to examples/Kentico.Xperience.UMT.Examples/EmailChannelSamples.cs
diff --git a/Examples/Kentico.Xperience.UMT.Examples/Kentico.Xperience.UMT.Examples.csproj b/examples/Kentico.Xperience.UMT.Examples/Kentico.Xperience.UMT.Examples.csproj
similarity index 87%
rename from Examples/Kentico.Xperience.UMT.Examples/Kentico.Xperience.UMT.Examples.csproj
rename to examples/Kentico.Xperience.UMT.Examples/Kentico.Xperience.UMT.Examples.csproj
index 6618c2c..8dda8f9 100644
--- a/Examples/Kentico.Xperience.UMT.Examples/Kentico.Xperience.UMT.Examples.csproj
+++ b/examples/Kentico.Xperience.UMT.Examples/Kentico.Xperience.UMT.Examples.csproj
@@ -5,7 +5,7 @@
-
+
diff --git a/Examples/Kentico.Xperience.UMT.Examples/SampleAttribute.cs b/examples/Kentico.Xperience.UMT.Examples/SampleAttribute.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Examples/SampleAttribute.cs
rename to examples/Kentico.Xperience.UMT.Examples/SampleAttribute.cs
diff --git a/Examples/Kentico.Xperience.UMT.Examples/SampleProvider.cs b/examples/Kentico.Xperience.UMT.Examples/SampleProvider.cs
similarity index 97%
rename from Examples/Kentico.Xperience.UMT.Examples/SampleProvider.cs
rename to examples/Kentico.Xperience.UMT.Examples/SampleProvider.cs
index 9857b83..02b0108 100644
--- a/Examples/Kentico.Xperience.UMT.Examples/SampleProvider.cs
+++ b/examples/Kentico.Xperience.UMT.Examples/SampleProvider.cs
@@ -77,6 +77,8 @@ public static List GetFullSample()
ContentItemSamples.SampleArticleContentItemLanguageMetadataEnUs,
ContentItemSamples.SampleArticleContentItemLanguageMetadataEnGb,
+ ContentItemSamples.SampleArticleWebPathUrlPathModelEnUs,
+ ContentItemSamples.SampleArticleWebPathUrlPathModelEnGb,
ContentItemSamples.SampleArticleWebPageItem,
});
diff --git a/Examples/Kentico.Xperience.UMT.Examples/UserSamples.cs b/examples/Kentico.Xperience.UMT.Examples/UserSamples.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Examples/UserSamples.cs
rename to examples/Kentico.Xperience.UMT.Examples/UserSamples.cs
diff --git a/Examples/Kentico.Xperience.UMT.Examples/WebPageContentItemSamples.cs b/examples/Kentico.Xperience.UMT.Examples/WebPageContentItemSamples.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Examples/WebPageContentItemSamples.cs
rename to examples/Kentico.Xperience.UMT.Examples/WebPageContentItemSamples.cs
diff --git a/Examples/Kentico.Xperience.UMT.Examples/WebSiteChannelSamples.cs b/examples/Kentico.Xperience.UMT.Examples/WebSiteChannelSamples.cs
similarity index 100%
rename from Examples/Kentico.Xperience.UMT.Examples/WebSiteChannelSamples.cs
rename to examples/Kentico.Xperience.UMT.Examples/WebSiteChannelSamples.cs
diff --git a/Examples/Kentico.Xperience.UMT.Examples/packages.lock.json b/examples/Kentico.Xperience.UMT.Examples/packages.lock.json
similarity index 99%
rename from Examples/Kentico.Xperience.UMT.Examples/packages.lock.json
rename to examples/Kentico.Xperience.UMT.Examples/packages.lock.json
index 25b0edd..b1f52dc 100644
--- a/Examples/Kentico.Xperience.UMT.Examples/packages.lock.json
+++ b/examples/Kentico.Xperience.UMT.Examples/packages.lock.json
@@ -543,7 +543,7 @@
},
"Microsoft.Extensions.Logging.Abstractions": {
"type": "CentralTransitive",
- "requested": "[7.0.1, )",
+ "requested": "[8.0.0, )",
"resolved": "6.0.4",
"contentHash": "K14wYgwOfKVELrUh5eBqlC8Wvo9vvhS3ZhIvcswV2uS/ubkTRPSQsN557EZiYUSSoZNxizG+alN4wjtdyLdcyw=="
}
diff --git a/src/Kentico.Xperience.UMT/InfoAdapter/AdapterFactory.cs b/src/Kentico.Xperience.UMT/InfoAdapter/AdapterFactory.cs
index 1157334..fe22484 100644
--- a/src/Kentico.Xperience.UMT/InfoAdapter/AdapterFactory.cs
+++ b/src/Kentico.Xperience.UMT/InfoAdapter/AdapterFactory.cs
@@ -29,7 +29,7 @@ public AdapterFactory(ILoggerFactory loggerFactory, UmtModelService modelService
internal IInfoAdapter? CreateAdapter(IUmtModel umtModel, IProviderProxyContext providerProxyContext) =>
umtModel switch
{
- UserInfoModel => new GenericInfoAdapter(loggerFactory.CreateLogger>(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
+ UserInfoModel => new UserAdapter(loggerFactory.CreateLogger(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
MediaFileModel => new MediaFileAdapter(loggerFactory.CreateLogger(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
MediaLibraryModel => new GenericInfoAdapter(loggerFactory.CreateLogger>(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
ContentItemLanguageMetadataModel => new GenericInfoAdapter(loggerFactory.CreateLogger>(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
@@ -41,7 +41,7 @@ public AdapterFactory(ILoggerFactory loggerFactory, UmtModelService modelService
ContentLanguageModel => new GenericInfoAdapter(loggerFactory.CreateLogger>(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
ContentItemModel => new GenericInfoAdapter(loggerFactory.CreateLogger>(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
WebPageItemModel => new GenericInfoAdapter(loggerFactory.CreateLogger>(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
- WebPageUrlPathModel => new GenericInfoAdapter(loggerFactory.CreateLogger>(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
+ WebPageUrlPathModel => new WebPageUrlPathAdapter(loggerFactory.CreateLogger(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
DataClassModel => new DataClassAdapter(loggerFactory.CreateLogger(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
ContentTypeChannelModel => new GenericInfoAdapter(loggerFactory.CreateLogger>(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
ContentItemReferenceModel => new GenericInfoAdapter(loggerFactory.CreateLogger>(), modelService, providerProxyFactory.CreateProviderProxy(providerProxyContext), providerProxyFactory),
diff --git a/src/Kentico.Xperience.UMT/InfoAdapter/GenericAdapter.cs b/src/Kentico.Xperience.UMT/InfoAdapter/GenericAdapter.cs
index c1ce4da..c634561 100644
--- a/src/Kentico.Xperience.UMT/InfoAdapter/GenericAdapter.cs
+++ b/src/Kentico.Xperience.UMT/InfoAdapter/GenericAdapter.cs
@@ -3,6 +3,7 @@
using System.Runtime.CompilerServices;
using System.Text.Json;
using CMS.DataEngine;
+using CMS.Membership;
using Kentico.Xperience.UMT.Attributes;
using Kentico.Xperience.UMT.Model;
using Kentico.Xperience.UMT.ProviderProxy;
diff --git a/src/Kentico.Xperience.UMT/InfoAdapter/MediaFileAdapter.cs b/src/Kentico.Xperience.UMT/InfoAdapter/MediaFileAdapter.cs
index 33aad0d..a01bd24 100644
--- a/src/Kentico.Xperience.UMT/InfoAdapter/MediaFileAdapter.cs
+++ b/src/Kentico.Xperience.UMT/InfoAdapter/MediaFileAdapter.cs
@@ -62,7 +62,6 @@ protected override MediaFileInfo MapProperties(IUmtModel umtModel, MediaFileInfo
FileImageWidth = mediaModel.FileImageWidth ?? current.FileImageWidth,
FileCreatedWhen = mediaModel.FileCreatedWhen ?? current.FileCreatedWhen,
FileModifiedWhen = mediaModel.FileModifiedWhen ?? current.FileModifiedWhen,
- FileCustomData = mediaModel.FileDescription ?? ""
};
current = base.MapProperties(model, current);
diff --git a/src/Kentico.Xperience.UMT/InfoAdapter/UserAdapter.cs b/src/Kentico.Xperience.UMT/InfoAdapter/UserAdapter.cs
new file mode 100644
index 0000000..578511b
--- /dev/null
+++ b/src/Kentico.Xperience.UMT/InfoAdapter/UserAdapter.cs
@@ -0,0 +1,25 @@
+using CMS.Membership;
+using Kentico.Xperience.UMT.ProviderProxy;
+using Kentico.Xperience.UMT.Services.Model;
+using Microsoft.Extensions.Logging;
+
+namespace Kentico.Xperience.UMT.InfoAdapter;
+
+internal class UserAdapter: GenericInfoAdapter
+{
+ internal UserAdapter(ILogger logger, UmtModelService modelService, IProviderProxy providerProxy, IProviderProxyFactory providerProxyFactory) : base(logger, modelService, providerProxy, providerProxyFactory)
+ {
+ }
+
+ protected override void SetValue(UserInfo current, string propertyName, object? value)
+ {
+ if (propertyName == "UserPassword")
+ {
+ current.SetValue("UserPassword", value);
+ }
+ else
+ {
+ base.SetValue(current, propertyName, value);
+ }
+ }
+}
diff --git a/src/Kentico.Xperience.UMT/InfoAdapter/WebPageUrlPathAdapter.cs b/src/Kentico.Xperience.UMT/InfoAdapter/WebPageUrlPathAdapter.cs
new file mode 100644
index 0000000..35f84cb
--- /dev/null
+++ b/src/Kentico.Xperience.UMT/InfoAdapter/WebPageUrlPathAdapter.cs
@@ -0,0 +1,43 @@
+using CMS.DataEngine;
+using CMS.Websites.Internal;
+using Kentico.Xperience.UMT.Model;
+using Kentico.Xperience.UMT.ProviderProxy;
+using Kentico.Xperience.UMT.Services.Model;
+using Microsoft.Data.SqlClient;
+using Microsoft.Extensions.Logging;
+
+namespace Kentico.Xperience.UMT.InfoAdapter;
+
+internal class WebPageUrlPathAdapter: GenericInfoAdapter
+{
+ internal WebPageUrlPathAdapter(ILogger logger, UmtModelService modelService, IProviderProxy providerProxy, IProviderProxyFactory providerProxyFactory) : base(logger, modelService, providerProxy, providerProxyFactory)
+ {
+ }
+
+ public override WebPageUrlPathInfo Adapt(IUmtModel input)
+ {
+ var adapted = base.Adapt(input);
+
+ if (string.IsNullOrWhiteSpace(adapted.WebPageUrlPathHash))
+ {
+ try
+ {
+ using var conn = new SqlConnection(ConnectionHelper.ConnectionString);
+ conn.Open();
+ using var cmd = conn.CreateCommand();
+ cmd.CommandText = $"SELECT CONVERT(VARCHAR(64), HASHBYTES('SHA2_256', LOWER(@path)), 2)";
+ cmd.Parameters.AddWithValue("path", adapted.WebPageUrlPath);
+ if (cmd.ExecuteScalar() is string result)
+ {
+ adapted.WebPageUrlPathHash = result;
+ }
+ }
+ catch (Exception ex)
+ {
+ Logger.LogError(ex, "Failed to create SHA256 hash for PageUrlPath: {PageUrlPath}", input.PrintMe());
+ }
+ }
+
+ return adapted;
+ }
+}
diff --git a/src/Kentico.Xperience.UMT/Model/ContentItemReferenceModel.cs b/src/Kentico.Xperience.UMT/Model/ContentItemReferenceModel.cs
index 163dc38..f0acaa5 100644
--- a/src/Kentico.Xperience.UMT/Model/ContentItemReferenceModel.cs
+++ b/src/Kentico.Xperience.UMT/Model/ContentItemReferenceModel.cs
@@ -31,7 +31,6 @@ public class ContentItemReferenceModel : UmtModel
[Map]
[Required]
- [UniqueIdProperty]
public Guid? ContentItemReferenceGroupGUID { get; set; }
protected override (Guid? uniqueId, string? name, string? displayName) GetPrintArgs() => (ContentItemReferenceGUID, NOT_AVAILABLE, NOT_AVAILABLE);
diff --git a/src/Kentico.Xperience.UMT/Model/MediaFileModel.cs b/src/Kentico.Xperience.UMT/Model/MediaFileModel.cs
index 9cda52f..e444727 100644
--- a/src/Kentico.Xperience.UMT/Model/MediaFileModel.cs
+++ b/src/Kentico.Xperience.UMT/Model/MediaFileModel.cs
@@ -63,8 +63,5 @@ public class MediaFileModel : UmtModel
[Map]
public DateTime? FileModifiedWhen { get; set; }
- [Map]
- public string? FileCustomData { get; set; }
-
protected override (Guid? uniqueId, string? name, string? displayName) GetPrintArgs() => (FileGUID, FileName, FileTitle);
}
diff --git a/src/Kentico.Xperience.UMT/Model/MediaLibraryModel.cs b/src/Kentico.Xperience.UMT/Model/MediaLibraryModel.cs
index 2d2d046..a9348ab 100644
--- a/src/Kentico.Xperience.UMT/Model/MediaLibraryModel.cs
+++ b/src/Kentico.Xperience.UMT/Model/MediaLibraryModel.cs
@@ -24,9 +24,6 @@ public class MediaLibraryModel : UmtModel
[Required]
public string? LibraryFolder { get; set; }
- [Map]
- public int? LibraryAccess { get; set; }
-
[Map]
[Required]
[UniqueIdProperty]
diff --git a/src/Kentico.Xperience.UMT/ServiceCollectionExtensions.cs b/src/Kentico.Xperience.UMT/ServiceCollectionExtensions.cs
index 307f5a5..42ef02d 100644
--- a/src/Kentico.Xperience.UMT/ServiceCollectionExtensions.cs
+++ b/src/Kentico.Xperience.UMT/ServiceCollectionExtensions.cs
@@ -15,14 +15,17 @@ public static class ServiceCollectionExtensions
///
///
///
- public static void AddUniversalMigrationToolkit(this IServiceCollection services) => RegisterServices(services);
+ public static IServiceCollection AddUniversalMigrationToolkit(this IServiceCollection services) =>
+ RegisterServices(services);
- private static void RegisterServices(IServiceCollection services)
+ private static IServiceCollection RegisterServices(IServiceCollection services)
{
services.AddTransient();
services.AddTransient();
services.AddSingleton();
services.AddSingleton();
services.AddSingleton(_ => new UmtModelService(new[] { typeof(ServiceCollectionExtensions).Assembly }));
+
+ return services;
}
}
diff --git a/src/Kentico.Xperience.UMT/Services/Model/UmtModelService.cs b/src/Kentico.Xperience.UMT/Services/Model/UmtModelService.cs
index 0e8d7bd..93e76bc 100644
--- a/src/Kentico.Xperience.UMT/Services/Model/UmtModelService.cs
+++ b/src/Kentico.Xperience.UMT/Services/Model/UmtModelService.cs
@@ -88,6 +88,10 @@ public IEnumerable InitModelInfo()
var uniqueIdProperty = propertyInfo.GetCustomAttribute();
if (uniqueIdProperty != null)
{
+ if (objectGuidProperty != null)
+ {
+ throw new InvalidOperationException("Model cannot have multiple unique id columns");
+ }
objectGuidProperty = propertyInfo;
}
diff --git a/src/Kentico.Xperience.UMT/packages.lock.json b/src/Kentico.Xperience.UMT/packages.lock.json
index 5636e24..3804dca 100644
--- a/src/Kentico.Xperience.UMT/packages.lock.json
+++ b/src/Kentico.Xperience.UMT/packages.lock.json
@@ -536,7 +536,7 @@
},
"Microsoft.Extensions.Logging.Abstractions": {
"type": "CentralTransitive",
- "requested": "[7.0.1, )",
+ "requested": "[8.0.0, )",
"resolved": "6.0.4",
"contentHash": "K14wYgwOfKVELrUh5eBqlC8Wvo9vvhS3ZhIvcswV2uS/ubkTRPSQsN557EZiYUSSoZNxizG+alN4wjtdyLdcyw=="
}
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Helpers/SymbolFormatter.cs b/utils/Kentico.Xperience.UMT.DocUtils/Helpers/SymbolFormatter.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Helpers/SymbolFormatter.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Helpers/SymbolFormatter.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Helpers/SymbolXmlDocsWrapper.cs b/utils/Kentico.Xperience.UMT.DocUtils/Helpers/SymbolXmlDocsWrapper.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Helpers/SymbolXmlDocsWrapper.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Helpers/SymbolXmlDocsWrapper.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Initializer.cs b/utils/Kentico.Xperience.UMT.DocUtils/Initializer.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Initializer.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Initializer.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Kentico.Xperience.UMT.DocUtils.csproj b/utils/Kentico.Xperience.UMT.DocUtils/Kentico.Xperience.UMT.DocUtils.csproj
similarity index 93%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Kentico.Xperience.UMT.DocUtils.csproj
rename to utils/Kentico.Xperience.UMT.DocUtils/Kentico.Xperience.UMT.DocUtils.csproj
index 7f9b8f9..382e732 100644
--- a/Utils/Kentico.Xperience.UMT.DocUtils/Kentico.Xperience.UMT.DocUtils.csproj
+++ b/utils/Kentico.Xperience.UMT.DocUtils/Kentico.Xperience.UMT.DocUtils.csproj
@@ -32,8 +32,8 @@
-
-
+
+
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/MdHelper.cs b/utils/Kentico.Xperience.UMT.DocUtils/MdHelper.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/MdHelper.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/MdHelper.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Program.cs b/utils/Kentico.Xperience.UMT.DocUtils/Program.cs
similarity index 99%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Program.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Program.cs
index 5016e11..2d034cb 100644
--- a/Utils/Kentico.Xperience.UMT.DocUtils/Program.cs
+++ b/utils/Kentico.Xperience.UMT.DocUtils/Program.cs
@@ -1,7 +1,6 @@
// See https://aka.ms/new-console-template for more information
using System.Collections.Concurrent;
-using Kentico.Xperience.UMT;
using Kentico.Xperience.UMT.DocUtils;
using Kentico.Xperience.UMT.DocUtils.Templates;
using Kentico.Xperience.UMT.DocUtils.Walkers;
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/ClassDocs.cshtml b/utils/Kentico.Xperience.UMT.DocUtils/Templates/ClassDocs.cshtml
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/ClassDocs.cshtml
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/ClassDocs.cshtml
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/ClassDocsViewModel.cs b/utils/Kentico.Xperience.UMT.DocUtils/Templates/ClassDocsViewModel.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/ClassDocsViewModel.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/ClassDocsViewModel.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/FormComponents.cshtml b/utils/Kentico.Xperience.UMT.DocUtils/Templates/FormComponents.cshtml
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/FormComponents.cshtml
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/FormComponents.cshtml
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/FormComponentsViewModel.cs b/utils/Kentico.Xperience.UMT.DocUtils/Templates/FormComponentsViewModel.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/FormComponentsViewModel.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/FormComponentsViewModel.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/Model.cs b/utils/Kentico.Xperience.UMT.DocUtils/Templates/Model.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/Model.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/Model.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/SampleJson.cshtml b/utils/Kentico.Xperience.UMT.DocUtils/Templates/SampleJson.cshtml
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/SampleJson.cshtml
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/SampleJson.cshtml
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/SampleJsonViewModel.cs b/utils/Kentico.Xperience.UMT.DocUtils/Templates/SampleJsonViewModel.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/SampleJsonViewModel.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/SampleJsonViewModel.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/UMT.schema.json.cshtml b/utils/Kentico.Xperience.UMT.DocUtils/Templates/UMT.schema.json.cshtml
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/UMT.schema.json.cshtml
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/UMT.schema.json.cshtml
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtModel.cshtml b/utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtModel.cshtml
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtModel.cshtml
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtModel.cshtml
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtModelViewModel.cs b/utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtModelViewModel.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtModelViewModel.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtModelViewModel.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtSchemaJsonViewModel.cs b/utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtSchemaJsonViewModel.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtSchemaJsonViewModel.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Templates/UmtSchemaJsonViewModel.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Walkers/ClassDocsVisitor.cs b/utils/Kentico.Xperience.UMT.DocUtils/Walkers/ClassDocsVisitor.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Walkers/ClassDocsVisitor.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Walkers/ClassDocsVisitor.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Walkers/Extensions.cs b/utils/Kentico.Xperience.UMT.DocUtils/Walkers/Extensions.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Walkers/Extensions.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Walkers/Extensions.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Walkers/UmtModelVisitor.cs b/utils/Kentico.Xperience.UMT.DocUtils/Walkers/UmtModelVisitor.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Walkers/UmtModelVisitor.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Walkers/UmtModelVisitor.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/Walkers/UmtModelWalker.cs b/utils/Kentico.Xperience.UMT.DocUtils/Walkers/UmtModelWalker.cs
similarity index 100%
rename from Utils/Kentico.Xperience.UMT.DocUtils/Walkers/UmtModelWalker.cs
rename to utils/Kentico.Xperience.UMT.DocUtils/Walkers/UmtModelWalker.cs
diff --git a/Utils/Kentico.Xperience.UMT.DocUtils/packages.lock.json b/utils/Kentico.Xperience.UMT.DocUtils/packages.lock.json
similarity index 91%
rename from Utils/Kentico.Xperience.UMT.DocUtils/packages.lock.json
rename to utils/Kentico.Xperience.UMT.DocUtils/packages.lock.json
index 4695325..e9be54a 100644
--- a/Utils/Kentico.Xperience.UMT.DocUtils/packages.lock.json
+++ b/utils/Kentico.Xperience.UMT.DocUtils/packages.lock.json
@@ -38,35 +38,38 @@
},
"Microsoft.Extensions.Logging.Abstractions": {
"type": "Direct",
- "requested": "[7.0.1, )",
- "resolved": "7.0.1",
- "contentHash": "pkeBFx0vqMW/A3aUVHh7MPu3WkBhaVlezhSZeb1c9XD0vUReYH1TLFSy5MxJgZfmz5LZzYoErMorlYZiwpOoNA=="
+ "requested": "[8.0.0, )",
+ "resolved": "8.0.0",
+ "contentHash": "arDBqTgFCyS0EvRV7O3MZturChstm50OJ0y9bDJvAcmEPJm0FFpFyjU/JLYyStNGGey081DvnQYlncNX5SJJGA==",
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0"
+ }
},
"Microsoft.Extensions.Logging.Configuration": {
"type": "Direct",
- "requested": "[7.0.0, )",
- "resolved": "7.0.0",
- "contentHash": "FLDA0HcffKA8ycoDQLJuCNGIE42cLWPxgdQGRBaSzZrYTkMBjnf9zrr8pGT06psLq9Q+RKWmmZczQ9bCrXEBcA==",
+ "requested": "[8.0.0, )",
+ "resolved": "8.0.0",
+ "contentHash": "ixXXV0G/12g6MXK65TLngYN9V5hQQRuV+fZi882WIoVJT7h5JvoYoxTEwCgdqwLjSneqh1O+66gM8sMr9z/rsQ==",
"dependencies": {
- "Microsoft.Extensions.Configuration": "7.0.0",
- "Microsoft.Extensions.Configuration.Abstractions": "7.0.0",
- "Microsoft.Extensions.Configuration.Binder": "7.0.0",
- "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
- "Microsoft.Extensions.Logging": "7.0.0",
- "Microsoft.Extensions.Logging.Abstractions": "7.0.0",
- "Microsoft.Extensions.Options": "7.0.0",
- "Microsoft.Extensions.Options.ConfigurationExtensions": "7.0.0"
+ "Microsoft.Extensions.Configuration": "8.0.0",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Configuration.Binder": "8.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Logging": "8.0.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Options": "8.0.0",
+ "Microsoft.Extensions.Options.ConfigurationExtensions": "8.0.0"
}
},
"Microsoft.Extensions.Logging.Debug": {
"type": "Direct",
- "requested": "[7.0.0, )",
- "resolved": "7.0.0",
- "contentHash": "tFGGyPDpJ8ZdQdeckCArP7nZuoY3am9zJWuvp4OD1bHq65S0epW9BNHzAWeaIO4eYwWnGm1jRNt3vRciH8H6MA==",
+ "requested": "[8.0.0, )",
+ "resolved": "8.0.0",
+ "contentHash": "dt0x21qBdudHLW/bjMJpkixv858RRr8eSomgVbU8qljOyfrfDGi1JQvpF9w8S7ziRPtRKisuWaOwFxJM82GxeA==",
"dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
- "Microsoft.Extensions.Logging": "7.0.0",
- "Microsoft.Extensions.Logging.Abstractions": "7.0.0"
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Logging": "8.0.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.0"
}
},
"NJsonSchema": {
@@ -307,41 +310,41 @@
},
"Microsoft.Extensions.Configuration": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "tldQUBWt/xeH2K7/hMPPo5g8zuLc3Ro9I5d4o/XrxvxOCA2EZBtW7bCHHTc49fcBtvB8tLAb/Qsmfrq+2SJ4vA==",
+ "resolved": "8.0.0",
+ "contentHash": "0J/9YNXTMWSZP2p2+nvl8p71zpSwokZXZuJW+VjdErkegAnFdO1XlqtA62SJtgVYHdKu3uPxJHcMR/r35HwFBA==",
"dependencies": {
- "Microsoft.Extensions.Configuration.Abstractions": "7.0.0",
- "Microsoft.Extensions.Primitives": "7.0.0"
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.Configuration.Abstractions": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "f34u2eaqIjNO9YLHBz8rozVZ+TcFiFs0F3r7nUJd7FRkVSxk8u4OpoK226mi49MwexHOR2ibP9MFvRUaLilcQQ==",
+ "resolved": "8.0.0",
+ "contentHash": "3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==",
"dependencies": {
- "Microsoft.Extensions.Primitives": "7.0.0"
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.Configuration.Binder": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "tgU4u7bZsoS9MKVRiotVMAwHtbREHr5/5zSEV+JPhg46+ox47Au84E3D2IacAaB0bk5ePNaNieTlPrfjbbRJkg==",
+ "resolved": "8.0.0",
+ "contentHash": "mBMoXLsr5s1y2zOHWmKsE9veDcx8h1x/c3rz4baEdQKTeDcmQAPNbB54Pi/lhFO3K431eEq6PFbMgLaa6PHFfA==",
"dependencies": {
- "Microsoft.Extensions.Configuration.Abstractions": "7.0.0"
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
}
},
"Microsoft.Extensions.DependencyInjection": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "elNeOmkeX3eDVG6pYVeV82p29hr+UKDaBhrZyWvWLw/EVZSYEkZlQdkp0V39k/Xehs2Qa0mvoCvkVj3eQxNQ1Q==",
+ "resolved": "8.0.0",
+ "contentHash": "V8S3bsm50ig6JSyrbcJJ8bW2b9QLGouz+G1miK3UTaOWmMtFwNNNzUf4AleyDWUmTrWMLNnFSLEQtxmxgNQnNQ==",
"dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0"
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0"
}
},
"Microsoft.Extensions.DependencyInjection.Abstractions": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "h3j/QfmFN4S0w4C2A6X7arXij/M/OVw3uQHSOFxnND4DyAzO1F9eMX7Eti7lU/OkSthEE0WzRsfT/Dmx86jzCw=="
+ "resolved": "8.0.0",
+ "contentHash": "cjWrLkJXK0rs4zofsK4bSdg+jhDLTaxrkXu4gS6Y7MAlCvRyNNgwY/lJi5RDlQOnSZweHqoyvgvbdvQsRIW+hg=="
},
"Microsoft.Extensions.DependencyModel": {
"type": "Transitive",
@@ -406,40 +409,39 @@
},
"Microsoft.Extensions.Logging": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "Nw2muoNrOG5U5qa2ZekXwudUn2BJcD41e65zwmDHb1fQegTX66UokLWZkJRpqSSHXDOWZ5V0iqhbxOEky91atA==",
+ "resolved": "8.0.0",
+ "contentHash": "tvRkov9tAJ3xP51LCv3FJ2zINmv1P8Hi8lhhtcKGqM+ImiTCC84uOPEI4z8Cdq2C3o9e+Aa0Gw0rmrsJD77W+w==",
"dependencies": {
- "Microsoft.Extensions.DependencyInjection": "7.0.0",
- "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
- "Microsoft.Extensions.Logging.Abstractions": "7.0.0",
- "Microsoft.Extensions.Options": "7.0.0"
+ "Microsoft.Extensions.DependencyInjection": "8.0.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Options": "8.0.0"
}
},
"Microsoft.Extensions.Options": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "lP1yBnTTU42cKpMozuafbvNtQ7QcBjr/CcK3bYOGEMH55Fjt+iecXjT6chR7vbgCMqy3PG3aNQSZgo/EuY/9qQ==",
+ "resolved": "8.0.0",
+ "contentHash": "JOVOfqpnqlVLUzINQ2fox8evY2SKLYJ3BV8QDe/Jyp21u1T7r45x/R/5QdteURMR5r01GxeJSBBUOCOyaNXA3g==",
"dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
- "Microsoft.Extensions.Primitives": "7.0.0"
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.Options.ConfigurationExtensions": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "95UnxZkkFdXxF6vSrtJsMHCzkDeSMuUWGs2hDT54cX+U5eVajrCJ3qLyQRW+CtpTt5OJ8bmTvpQVHu1DLhH+cA==",
+ "resolved": "8.0.0",
+ "contentHash": "0f4DMRqEd50zQh+UyJc+/HiBsZ3vhAQALgdkcQEalSH1L2isdC7Yj54M3cyo5e+BeO5fcBQ7Dxly8XiBBcvRgw==",
"dependencies": {
- "Microsoft.Extensions.Configuration.Abstractions": "7.0.0",
- "Microsoft.Extensions.Configuration.Binder": "7.0.0",
- "Microsoft.Extensions.DependencyInjection.Abstractions": "7.0.0",
- "Microsoft.Extensions.Options": "7.0.0",
- "Microsoft.Extensions.Primitives": "7.0.0"
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Configuration.Binder": "8.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Options": "8.0.0",
+ "Microsoft.Extensions.Primitives": "8.0.0"
}
},
"Microsoft.Extensions.Primitives": {
"type": "Transitive",
- "resolved": "7.0.0",
- "contentHash": "um1KU5kxcRp3CNuI8o/GrZtD4AIOXDk+RLsytjZ9QPok3ttLUelLKpilVPuaFT3TFjOhSibUAso0odbOaCDj3Q=="
+ "resolved": "8.0.0",
+ "contentHash": "bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g=="
},
"Microsoft.Identity.Client": {
"type": "Transitive",