options.ResourceManifests.Add(_manifest);
diff --git a/Lombiq.UIKit/Views/Showcase/Showcase.cshtml b/Lombiq.UIKit/Views/Showcase/Showcase.cshtml
index bb78284..33ca8c2 100644
--- a/Lombiq.UIKit/Views/Showcase/Showcase.cshtml
+++ b/Lombiq.UIKit/Views/Showcase/Showcase.cshtml
@@ -258,4 +258,27 @@
dropdown-classes="bootstrapSplitButtonSample__dropdown" />
+
+
@T["Slick carousel:"]
+
+ @{
+ var carouselItems = new[]
+ {
+ await New.Message(Message: "Item 1", Type: "Information"),
+ await New.Message(Message: "Item 2", Type: "Information"),
+ await New.Message(Message: "Item 3", Type: "Information"),
+ await New.Message(Message: "Item 4", Type: "Information"),
+ await New.Message(Message: "Item 5", Type: "Information"),
+ await New.Message(Message: "Item 6", Type: "Information"),
+ };
+
+ var carouselSettings = @"{ slidesToShow: 4 }";
+ }
+
+
+
+
diff --git a/Lombiq.UIKit/Views/SlickCarousel.cshtml b/Lombiq.UIKit/Views/SlickCarousel.cshtml
new file mode 100644
index 0000000..1ccb115
--- /dev/null
+++ b/Lombiq.UIKit/Views/SlickCarousel.cshtml
@@ -0,0 +1,64 @@
+@using OrchardCore.ContentManagement.Display
+@using OrchardCore.DisplayManagement.ModelBinding
+@using OrchardCore.ResourceManagement.TagHelpers
+@using Microsoft.Extensions.Configuration
+@using OrchardCore.ContentManagement
+
+@inject IContentItemDisplayManager ContentItemDisplayManager
+@inject IUpdateModelAccessor UpdateModelAccessor
+@inject IConfiguration Configuration
+
+
+
+
+@{
+ var shapes = Model.Shapes as IEnumerable;
+ if (shapes?.Any() != true) { return; }
+
+ var carouselId = $"carousel-{Guid.NewGuid():N}";
+ var additionalClasses = Model.AdditionalClasses?.ToString() ?? string.Empty;
+
+ var mergeSettings = Model.MergeSettings as string;
+}
+
+
+
+ @foreach (var shape in shapes)
+ {
+
+ @await DisplayAsync(shape)
+
+ }
+
+
+
+
+
diff --git a/Lombiq.UIKit/package.json b/Lombiq.UIKit/package.json
index 769024b..21588cb 100644
--- a/Lombiq.UIKit/package.json
+++ b/Lombiq.UIKit/package.json
@@ -4,5 +4,18 @@
"build": "npm explore nodejs-extensions -- pnpm build",
"clean": "npm explore nodejs-extensions -- pnpm clean",
"watch": "npm explore nodejs-extensions -- pnpm watch"
+ },
+ "dependencies": {
+ "slick-carousel": "^1.8.1"
+ },
+ "nodejsExtensions": {
+ "assetsToCopy": [
+ {
+ "sources": [
+ "node_modules/slick-carousel/slick"
+ ],
+ "target": "wwwroot/vendors/slick"
+ }
+ ]
}
}
diff --git a/Lombiq.UIKit/pnpm-lock.yaml b/Lombiq.UIKit/pnpm-lock.yaml
index 2b9f188..4dfa208 100644
--- a/Lombiq.UIKit/pnpm-lock.yaml
+++ b/Lombiq.UIKit/pnpm-lock.yaml
@@ -3,3 +3,22 @@ lockfileVersion: '6.0'
settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
+
+dependencies:
+ slick-carousel:
+ specifier: ^1.8.1
+ version: 1.8.1(jquery@3.7.1)
+
+packages:
+
+ /jquery@3.7.1:
+ resolution: {integrity: sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==}
+ dev: false
+
+ /slick-carousel@1.8.1(jquery@3.7.1):
+ resolution: {integrity: sha512-XB9Ftrf2EEKfzoQXt3Nitrt/IPbT+f1fgqBdoxO3W/+JYvtEOW6EgxnWfr9GH6nmULv7Y2tPmEX3koxThVmebA==}
+ peerDependencies:
+ jquery: '>=1.8.0'
+ dependencies:
+ jquery: 3.7.1
+ dev: false