create all templates .... started to fill one out
This commit is contained in:
44
Shared/Models/SharingTemplates/AllMoodsTotalTemplate.swift
Normal file
44
Shared/Models/SharingTemplates/AllMoodsTotalTemplate.swift
Normal file
@@ -0,0 +1,44 @@
|
||||
//
|
||||
// AllMoods.swift
|
||||
// Feels (iOS)
|
||||
//
|
||||
// Created by Trey Tartt on 2/6/22.
|
||||
//
|
||||
|
||||
import SwiftUI
|
||||
|
||||
struct AllMoodsTotalTemplate: View, SharingTemplate {
|
||||
static var description: String {
|
||||
"AllMoodsSharingTemplate"
|
||||
}
|
||||
|
||||
var isPreview: Bool
|
||||
|
||||
var startDate: Date
|
||||
var endDate: Date
|
||||
|
||||
var preview: some View {
|
||||
Rectangle()
|
||||
.frame(width: 150, height: 50, alignment: .leading)
|
||||
}
|
||||
|
||||
var mainView: some View {
|
||||
Text("AllMoodsSharingTemplate body")
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
if isPreview {
|
||||
preview
|
||||
} else {
|
||||
mainView
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct AllMoodsSharingTemplate_Previews: PreviewProvider {
|
||||
static var previews: some View {
|
||||
AllMoodsTotalTemplate(isPreview: true, startDate: Date(), endDate: Date())
|
||||
|
||||
AllMoodsTotalTemplate(isPreview: false, startDate: Date(), endDate: Date())
|
||||
}
|
||||
}
|
||||
44
Shared/Models/SharingTemplates/CurrentStreakTemplate.swift
Normal file
44
Shared/Models/SharingTemplates/CurrentStreakTemplate.swift
Normal file
@@ -0,0 +1,44 @@
|
||||
//
|
||||
// CurrentStreakTemplate.swift
|
||||
// Feels (iOS)
|
||||
//
|
||||
// Created by Trey Tartt on 2/9/22.
|
||||
//
|
||||
|
||||
import SwiftUI
|
||||
|
||||
struct CurrentStreakTemplate: View, SharingTemplate {
|
||||
static var description: String {
|
||||
"CurrentStreakTemplate"
|
||||
}
|
||||
|
||||
var isPreview: Bool
|
||||
|
||||
var startDate: Date
|
||||
var endDate: Date
|
||||
|
||||
var preview: some View {
|
||||
Rectangle()
|
||||
.frame(width: 150, height: 50, alignment: .leading)
|
||||
}
|
||||
|
||||
var mainView: some View {
|
||||
Text("CurrentStreakTemplate body")
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
if isPreview {
|
||||
preview
|
||||
} else {
|
||||
mainView
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct CurrentStreakTemplate_Previews: PreviewProvider {
|
||||
static var previews: some View {
|
||||
CurrentStreakTemplate(isPreview: true, startDate: Date(), endDate: Date())
|
||||
|
||||
CurrentStreakTemplate(isPreview: false, startDate: Date(), endDate: Date())
|
||||
}
|
||||
}
|
||||
127
Shared/Models/SharingTemplates/LongestStreakTemplate.swift
Normal file
127
Shared/Models/SharingTemplates/LongestStreakTemplate.swift
Normal file
@@ -0,0 +1,127 @@
|
||||
//
|
||||
// AllMoods.swift
|
||||
// Feels (iOS)
|
||||
//
|
||||
// Created by Trey Tartt on 2/6/22.
|
||||
//
|
||||
|
||||
import SwiftUI
|
||||
|
||||
struct LongestStreakTemplate: View, SharingTemplate {
|
||||
static var description: String {
|
||||
"Share your longest streak!!!!"
|
||||
}
|
||||
|
||||
@State private var showSharingTemplate = false
|
||||
|
||||
var isPreview: Bool
|
||||
var startDate: Date
|
||||
var endDate: Date
|
||||
|
||||
var entries: [MoodEntry]
|
||||
|
||||
init(isPreview: Bool, startDate: Date, endDate: Date) {
|
||||
self.isPreview = isPreview
|
||||
self.startDate = startDate
|
||||
self.endDate = endDate
|
||||
|
||||
/*
|
||||
get all
|
||||
Split on missing entries
|
||||
Longest subarray
|
||||
*/
|
||||
|
||||
entries = PersistenceController.shared.randomEntries(count: 10)
|
||||
}
|
||||
|
||||
var image: UIImage {
|
||||
let image = shit.snapshot()
|
||||
return image
|
||||
}
|
||||
|
||||
var preview: some View {
|
||||
ZStack {
|
||||
VStack {
|
||||
HStack {
|
||||
Text("Longest Streak")
|
||||
Spacer()
|
||||
Text(String(entries.count))
|
||||
}
|
||||
Text("From")
|
||||
HStack {
|
||||
Text(String(entries.first?.forDate?.description ?? ""))
|
||||
Text("-")
|
||||
Text(String(entries.last?.forDate?.description ?? ""))
|
||||
}
|
||||
}
|
||||
}
|
||||
.background(
|
||||
Color.red
|
||||
)
|
||||
}
|
||||
|
||||
var shit: some View {
|
||||
ZStack {
|
||||
VStack {
|
||||
HStack {
|
||||
Text("Longest Streak")
|
||||
Spacer()
|
||||
Text(String(entries.count))
|
||||
}
|
||||
Text("From")
|
||||
HStack {
|
||||
Text(String(entries.first?.forDate?.description ?? ""))
|
||||
Text("-")
|
||||
Text(String(entries.last?.forDate?.description ?? ""))
|
||||
}
|
||||
}
|
||||
}
|
||||
.background(
|
||||
Color.red
|
||||
)
|
||||
}
|
||||
|
||||
var mainView: some View {
|
||||
ZStack {
|
||||
shit
|
||||
|
||||
VStack {
|
||||
Spacer()
|
||||
|
||||
HStack {
|
||||
Spacer()
|
||||
|
||||
Button(action: {
|
||||
showSharingTemplate = true
|
||||
}, label: {
|
||||
Image(systemName: "square.and.arrow.up")
|
||||
.foregroundColor(.black)
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
.sheet(isPresented: $showSharingTemplate) {
|
||||
ActivityViewController(activityItems: [self.image])
|
||||
}
|
||||
.padding()
|
||||
.background(
|
||||
Color.red
|
||||
)
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
if isPreview {
|
||||
preview
|
||||
} else {
|
||||
mainView
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct CurrentStreakSharingTemplate_Previews: PreviewProvider {
|
||||
static var previews: some View {
|
||||
LongestStreakTemplate(isPreview: false, startDate: Date(), endDate: Date())
|
||||
|
||||
LongestStreakTemplate(isPreview: true, startDate: Date(), endDate: Date())
|
||||
}
|
||||
}
|
||||
44
Shared/Models/SharingTemplates/MonthTotalTemplate.swift
Normal file
44
Shared/Models/SharingTemplates/MonthTotalTemplate.swift
Normal file
@@ -0,0 +1,44 @@
|
||||
//
|
||||
// MonthTotalTemplate.swift
|
||||
// Feels (iOS)
|
||||
//
|
||||
// Created by Trey Tartt on 2/9/22.
|
||||
//
|
||||
|
||||
import SwiftUI
|
||||
|
||||
struct MonthTotalTemplate: View, SharingTemplate {
|
||||
static var description: String {
|
||||
"MonthTotalTemplate"
|
||||
}
|
||||
|
||||
var isPreview: Bool
|
||||
|
||||
var startDate: Date
|
||||
var endDate: Date
|
||||
|
||||
var preview: some View {
|
||||
Rectangle()
|
||||
.frame(width: 150, height: 50, alignment: .leading)
|
||||
}
|
||||
|
||||
var mainView: some View {
|
||||
Text("MonthTotalTemplate body")
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
if isPreview {
|
||||
preview
|
||||
} else {
|
||||
mainView
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct MonthTotalTemplate_Previews: PreviewProvider {
|
||||
static var previews: some View {
|
||||
MonthTotalTemplate(isPreview: true, startDate: Date(), endDate: Date())
|
||||
|
||||
MonthTotalTemplate(isPreview: false, startDate: Date(), endDate: Date())
|
||||
}
|
||||
}
|
||||
44
Shared/Models/SharingTemplates/WeekTotalTemplate.swift
Normal file
44
Shared/Models/SharingTemplates/WeekTotalTemplate.swift
Normal file
@@ -0,0 +1,44 @@
|
||||
//
|
||||
// WeekTotalTemplate.swift
|
||||
// Feels (iOS)
|
||||
//
|
||||
// Created by Trey Tartt on 2/9/22.
|
||||
//
|
||||
|
||||
import SwiftUI
|
||||
|
||||
struct WeekTotalTemplate: View, SharingTemplate {
|
||||
static var description: String {
|
||||
"WeekTotalTemplate"
|
||||
}
|
||||
|
||||
var isPreview: Bool
|
||||
|
||||
var startDate: Date
|
||||
var endDate: Date
|
||||
|
||||
var preview: some View {
|
||||
Rectangle()
|
||||
.frame(width: 150, height: 50, alignment: .leading)
|
||||
}
|
||||
|
||||
var mainView: some View {
|
||||
Text("WeekTotalTemplate body")
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
if isPreview {
|
||||
preview
|
||||
} else {
|
||||
mainView
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct WeekTotalTemplate_Previews: PreviewProvider {
|
||||
static var previews: some View {
|
||||
WeekTotalTemplate(isPreview: true, startDate: Date(), endDate: Date())
|
||||
|
||||
WeekTotalTemplate(isPreview: false, startDate: Date(), endDate: Date())
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user