From 7508ddd608d276da541389b96c42443d8dc002ed Mon Sep 17 00:00:00 2001 From: fhasse95 <49185957+fhasse95@users.noreply.github.com> Date: Thu, 12 Mar 2026 20:13:05 +0100 Subject: [PATCH 1/2] Added support for Date Picker Ranges in Skip Lite --- Package.swift | 3 +- Sources/Showcase/DatePickerPlayground.swift | 33 +++++++++++++++++++ .../Showcase/Resources/Localizable.xcstrings | 12 +++++++ 3 files changed, 47 insertions(+), 1 deletion(-) diff --git a/Package.swift b/Package.swift index bc4fc7c..38128e4 100644 --- a/Package.swift +++ b/Package.swift @@ -10,7 +10,8 @@ let package = Package( ], dependencies: [ .package(url: "https://source.skip.tools/skip.git", from: "1.7.4"), - .package(url: "https://source.skip.tools/skip-ui.git", from: "1.50.0"), + .package(path: "/Users/fabian/Desktop/Develop/Contributions/skip-ui"), + //.package(url: "https://github.com/fhasse95/skip-ui.git", branch: "Date-Picker-Range-Skip-Lite"), .package(url: "https://source.skip.tools/skip-av.git", "0.6.2"..<"2.0.0"), .package(url: "https://source.skip.tools/skip-kit.git", "0.6.1"..<"2.0.0"), .package(url: "https://source.skip.tools/skip-sql.git", "0.14.0"..<"2.0.0"), diff --git a/Sources/Showcase/DatePickerPlayground.swift b/Sources/Showcase/DatePickerPlayground.swift index 9c0e460..06bbe79 100644 --- a/Sources/Showcase/DatePickerPlayground.swift +++ b/Sources/Showcase/DatePickerPlayground.swift @@ -4,6 +4,20 @@ import SwiftUI struct DatePickerPlayground: View { @State var selectedDate = Date.now + // Date range: next 30 days from now + var dateRange: ClosedRange { + let now = Date.now + let thirtyDaysLater = Calendar.current.date(byAdding: .day, value: 30, to: now)! + return now...thirtyDaysLater + } + + // Date range: past week + var pastWeekRange: ClosedRange { + let now = Date.now + let oneWeekAgo = Calendar.current.date(byAdding: .day, value: -7, to: now)! + return oneWeekAgo...now + } + var body: some View { ScrollView { VStack(spacing: 16) { @@ -16,6 +30,25 @@ struct DatePickerPlayground: View { DatePicker("Label", selection: $selectedDate) } .labelsHidden() + + Divider() + + // Date range examples + Text("Date Range Examples").font(.headline) + + DatePicker("Next 30 days", selection: $selectedDate, in: dateRange) + + DatePicker("Past week only", selection: $selectedDate, in: pastWeekRange, displayedComponents: .date) + + DatePicker(selection: $selectedDate, in: dateRange) { + HStack { + Image(systemName: "calendar") + Text("ViewBuilder with range") + } + } + + Divider() + DatePicker(".buttonStyle(.plain)", selection: $selectedDate) .buttonStyle(.plain) DatePicker(".disabled(true)", selection: $selectedDate) diff --git a/Sources/Showcase/Resources/Localizable.xcstrings b/Sources/Showcase/Resources/Localizable.xcstrings index 8e42cc9..9aa9db2 100644 --- a/Sources/Showcase/Resources/Localizable.xcstrings +++ b/Sources/Showcase/Resources/Localizable.xcstrings @@ -1172,6 +1172,9 @@ }, "Date only" : { + }, + "Date Range Examples" : { + }, "DatePicker" : { @@ -2073,6 +2076,9 @@ }, "New Key" : { + }, + "Next 30 days" : { + }, "Next notification in %lld s" : { @@ -2218,6 +2224,9 @@ }, "Password" : { + }, + "Past week only" : { + }, "Pasteboard" : { @@ -3556,6 +3565,9 @@ }, "Viewbuilder init" : { + }, + "ViewBuilder with range" : { + }, "ViewThatFits" : { From be36261f7d9f962541f98c37f20a17e6d172107b Mon Sep 17 00:00:00 2001 From: fhasse95 <49185957+fhasse95@users.noreply.github.com> Date: Thu, 12 Mar 2026 21:58:21 +0100 Subject: [PATCH 2/2] Update Package.swift --- Package.swift | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Package.swift b/Package.swift index 38128e4..34a8fbe 100644 --- a/Package.swift +++ b/Package.swift @@ -10,8 +10,7 @@ let package = Package( ], dependencies: [ .package(url: "https://source.skip.tools/skip.git", from: "1.7.4"), - .package(path: "/Users/fabian/Desktop/Develop/Contributions/skip-ui"), - //.package(url: "https://github.com/fhasse95/skip-ui.git", branch: "Date-Picker-Range-Skip-Lite"), + .package(url: "https://github.com/fhasse95/skip-ui.git", branch: "Date-Picker-Range-Skip-Lite"), .package(url: "https://source.skip.tools/skip-av.git", "0.6.2"..<"2.0.0"), .package(url: "https://source.skip.tools/skip-kit.git", "0.6.1"..<"2.0.0"), .package(url: "https://source.skip.tools/skip-sql.git", "0.14.0"..<"2.0.0"),