Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ 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(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"),
Expand Down
33 changes: 33 additions & 0 deletions Sources/Showcase/DatePickerPlayground.swift
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,20 @@ import SwiftUI
struct DatePickerPlayground: View {
@State var selectedDate = Date.now

// Date range: next 30 days from now
var dateRange: ClosedRange<Date> {
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<Date> {
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) {
Expand All @@ -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)
Expand Down
12 changes: 12 additions & 0 deletions Sources/Showcase/Resources/Localizable.xcstrings
Original file line number Diff line number Diff line change
Expand Up @@ -1172,6 +1172,9 @@
},
"Date only" : {

},
"Date Range Examples" : {

},
"DatePicker" : {

Expand Down Expand Up @@ -2073,6 +2076,9 @@
},
"New Key" : {

},
"Next 30 days" : {

},
"Next notification in %lld s" : {

Expand Down Expand Up @@ -2218,6 +2224,9 @@
},
"Password" : {

},
"Past week only" : {

},
"Pasteboard" : {

Expand Down Expand Up @@ -3556,6 +3565,9 @@
},
"Viewbuilder init" : {

},
"ViewBuilder with range" : {

},
"ViewThatFits" : {

Expand Down
Loading