It's been two years so I have no idea what's going on
This commit is contained in:
parent
099728c760
commit
ed2f6af9c8
23 changed files with 112 additions and 473 deletions
6
FizzBuzz.playground/timeline.xctimeline
Normal file
6
FizzBuzz.playground/timeline.xctimeline
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<Timeline
|
||||||
|
version = "3.0">
|
||||||
|
<TimelineItems>
|
||||||
|
</TimelineItems>
|
||||||
|
</Timeline>
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<Timeline
|
||||||
|
version = "3.0">
|
||||||
|
<TimelineItems>
|
||||||
|
</TimelineItems>
|
||||||
|
</Timeline>
|
||||||
|
|
@ -1,98 +0,0 @@
|
||||||
{
|
|
||||||
"images" : [
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "20x20"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "3x",
|
|
||||||
"size" : "20x20"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "29x29"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "3x",
|
|
||||||
"size" : "29x29"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "40x40"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "3x",
|
|
||||||
"size" : "40x40"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "60x60"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "iphone",
|
|
||||||
"scale" : "3x",
|
|
||||||
"size" : "60x60"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ipad",
|
|
||||||
"scale" : "1x",
|
|
||||||
"size" : "20x20"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ipad",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "20x20"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ipad",
|
|
||||||
"scale" : "1x",
|
|
||||||
"size" : "29x29"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ipad",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "29x29"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ipad",
|
|
||||||
"scale" : "1x",
|
|
||||||
"size" : "40x40"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ipad",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "40x40"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ipad",
|
|
||||||
"scale" : "1x",
|
|
||||||
"size" : "76x76"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ipad",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "76x76"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ipad",
|
|
||||||
"scale" : "2x",
|
|
||||||
"size" : "83.5x83.5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "ios-marketing",
|
|
||||||
"scale" : "1x",
|
|
||||||
"size" : "1024x1024"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"info" : {
|
|
||||||
"author" : "xcode",
|
|
||||||
"version" : 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,21 +0,0 @@
|
||||||
{
|
|
||||||
"images" : [
|
|
||||||
{
|
|
||||||
"filename" : "aiden.moore.states.jpg",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "1x"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "2x"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "3x"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"info" : {
|
|
||||||
"author" : "xcode",
|
|
||||||
"version" : 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 18 KiB |
|
|
@ -1,21 +0,0 @@
|
||||||
{
|
|
||||||
"images" : [
|
|
||||||
{
|
|
||||||
"filename" : "caleb.bost.duo.heic",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "1x"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "2x"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "3x"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"info" : {
|
|
||||||
"author" : "xcode",
|
|
||||||
"version" : 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Binary file not shown.
|
|
@ -1,21 +0,0 @@
|
||||||
{
|
|
||||||
"images" : [
|
|
||||||
{
|
|
||||||
"filename" : "isaac.greene.clouds.heic",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "1x"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "2x"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "3x"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"info" : {
|
|
||||||
"author" : "xcode",
|
|
||||||
"version" : 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Binary file not shown.
|
|
@ -1,21 +0,0 @@
|
||||||
{
|
|
||||||
"images" : [
|
|
||||||
{
|
|
||||||
"filename" : "jake.zimmerman.group.jpg",
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "1x"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "2x"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"idiom" : "universal",
|
|
||||||
"scale" : "3x"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"info" : {
|
|
||||||
"author" : "xcode",
|
|
||||||
"version" : 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 17 KiB |
|
|
@ -0,0 +1,38 @@
|
||||||
|
{
|
||||||
|
"colors" : [
|
||||||
|
{
|
||||||
|
"color" : {
|
||||||
|
"color-space" : "srgb",
|
||||||
|
"components" : {
|
||||||
|
"alpha" : "1.000",
|
||||||
|
"blue" : "1.000",
|
||||||
|
"green" : "1.000",
|
||||||
|
"red" : "1.000"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"idiom" : "universal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"appearances" : [
|
||||||
|
{
|
||||||
|
"appearance" : "luminosity",
|
||||||
|
"value" : "dark"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"color" : {
|
||||||
|
"color-space" : "srgb",
|
||||||
|
"components" : {
|
||||||
|
"alpha" : "1.000",
|
||||||
|
"blue" : "0.000",
|
||||||
|
"green" : "0.000",
|
||||||
|
"red" : "0.000"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"idiom" : "universal"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
22
Splits/Assets.xcassets/launchScreenImage.imageset/Contents.json
vendored
Normal file
22
Splits/Assets.xcassets/launchScreenImage.imageset/Contents.json
vendored
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"filename" : "launch screen dark.svg",
|
||||||
|
"idiom" : "universal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"appearances" : [
|
||||||
|
{
|
||||||
|
"appearance" : "luminosity",
|
||||||
|
"value" : "dark"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"filename" : "launch screen light.svg",
|
||||||
|
"idiom" : "universal"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
||||||
1
Splits/Assets.xcassets/launchScreenImage.imageset/launch screen dark.svg
vendored
Normal file
1
Splits/Assets.xcassets/launchScreenImage.imageset/launch screen dark.svg
vendored
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 1039 649" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"><g transform="matrix(390.216,0,0,390.216,1054.42,366.742)"></g><text x="-30.105px" y="366.742px" style="font-family:'ArialMT', 'Arial', sans-serif;font-size:390.216px;fill:#fff;">Paces</text><g transform="matrix(1,0,0,1,1.13687e-13,-64.5689)"><text x="38.874px" y="533.801px" style="font-family:'ArialMT', 'Arial', sans-serif;font-size:50px;fill:#fff;">A<tspan x="69.465px 83.357px " y="533.801px 533.801px "> r</tspan>evolutionary new app from Isaac Greene</text><text x="134.724px" y="585.437px" style="font-family:'ArialMT', 'Arial', sans-serif;font-size:50px;fill:#fff;">representing thousands of years of</text><g transform="matrix(50,0,0,50,997.773,637.073)"></g><text x="41.597px" y="637.073px" style="font-family:'ArialMT', 'Arial', sans-serif;font-size:50px;fill:#fff;">development brought to you free of charge.</text></g></svg>
|
||||||
|
After Width: | Height: | Size: 1.3 KiB |
1
Splits/Assets.xcassets/launchScreenImage.imageset/launch screen light.svg
vendored
Normal file
1
Splits/Assets.xcassets/launchScreenImage.imageset/launch screen light.svg
vendored
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 1039 649" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"><g transform="matrix(390.216,0,0,390.216,1054.42,366.742)"></g><text x="-30.105px" y="366.742px" style="font-family:'ArialMT', 'Arial', sans-serif;font-size:390.216px;">Paces</text><g transform="matrix(1,0,0,1,1.13687e-13,-64.5689)"><text x="38.874px" y="533.801px" style="font-family:'ArialMT', 'Arial', sans-serif;font-size:50px;">A<tspan x="69.465px 83.357px " y="533.801px 533.801px "> r</tspan>evolutionary new app from Isaac Greene</text><text x="134.724px" y="585.437px" style="font-family:'ArialMT', 'Arial', sans-serif;font-size:50px;">representing thousands of years of</text><g transform="matrix(50,0,0,50,997.773,637.073)"></g><text x="41.597px" y="637.073px" style="font-family:'ArialMT', 'Arial', sans-serif;font-size:50px;">development brought to you free of charge.</text></g></svg>
|
||||||
|
After Width: | Height: | Size: 1.2 KiB |
|
|
@ -10,6 +10,19 @@ import SwiftUI
|
||||||
struct June2023: View {
|
struct June2023: View {
|
||||||
var body: some View {
|
var body: some View {
|
||||||
ScrollView {
|
ScrollView {
|
||||||
|
//2023-06-06
|
||||||
|
HStack {
|
||||||
|
VStack (alignment: .leading) {
|
||||||
|
Text("2023-06-06")
|
||||||
|
.font(.title2)
|
||||||
|
Text("Version Prerelease Build LVSXT11x\n")
|
||||||
|
.font(.footnote)
|
||||||
|
Text("\u{2022} Started working on custom launch screen but now it's not working")
|
||||||
|
}
|
||||||
|
Spacer()
|
||||||
|
}
|
||||||
|
.padding(30)
|
||||||
|
|
||||||
//2023-06-05
|
//2023-06-05
|
||||||
HStack {
|
HStack {
|
||||||
VStack (alignment: .leading) {
|
VStack (alignment: .leading) {
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,6 @@
|
||||||
//
|
//
|
||||||
|
|
||||||
import SwiftUI
|
import SwiftUI
|
||||||
import iosMath
|
|
||||||
import UIKit
|
import UIKit
|
||||||
|
|
||||||
struct ComingSoonView: View {
|
struct ComingSoonView: View {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
# ``Splits``
|
# Splits
|
||||||
|
|
||||||
Splits is a revolutionary new app to calculate paces.
|
Splits is a revolutionary new app to calculate paces.
|
||||||
It takes a value, in kilometers or miles, and converts
|
It takes a value, in kilometers or miles, and converts
|
||||||
|
|
@ -11,4 +11,4 @@ It takes a value, in kilometers or miles, and converts
|
||||||
|
|
||||||
### Getting Started
|
### Getting Started
|
||||||
|
|
||||||
- <!--@START_MENU_TOKEN@-->``Symbol``<!--@END_MENU_TOKEN@-->
|
|
||||||
|
|
|
||||||
|
|
@ -26,8 +26,8 @@ struct HelpView: View {
|
||||||
self.mathSheet.toggle()
|
self.mathSheet.toggle()
|
||||||
})
|
})
|
||||||
.frame(width: 130, height: 40, alignment: .center)
|
.frame(width: 130, height: 40, alignment: .center)
|
||||||
.background(.tertiary)
|
.background(Color.blue)
|
||||||
.foregroundColor(.primary)
|
.foregroundColor(.white)
|
||||||
.cornerRadius(12)
|
.cornerRadius(12)
|
||||||
.padding(30)
|
.padding(30)
|
||||||
.sheet(isPresented: self.$mathSheet, content: {
|
.sheet(isPresented: self.$mathSheet, content: {
|
||||||
|
|
@ -76,3 +76,9 @@ struct mathView: View {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct HelpView_Previews: PreviewProvider {
|
||||||
|
static var previews: some View {
|
||||||
|
HelpView()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
||||||
13
Splits/Info.plist
Normal file
13
Splits/Info.plist
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>UILaunchScreen</key>
|
||||||
|
<dict>
|
||||||
|
<key>UIColorName</key>
|
||||||
|
<string>launchScreenBackground</string>
|
||||||
|
<key>UIImageRespectsSafeAreaInsets</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
||||||
|
|
@ -5,6 +5,7 @@
|
||||||
// Created by Isaac Greene on 2023-01-16.
|
// Created by Isaac Greene on 2023-01-16.
|
||||||
//
|
//
|
||||||
|
|
||||||
|
|
||||||
import SwiftUI
|
import SwiftUI
|
||||||
import UIKit
|
import UIKit
|
||||||
import iosMath
|
import iosMath
|
||||||
|
|
@ -30,3 +31,4 @@ struct MathView: UIViewRepresentable {
|
||||||
return colorScheme == .dark ? .white : .black
|
return colorScheme == .dark ? .white : .black
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,102 +0,0 @@
|
||||||
//
|
|
||||||
// ModalView.swift
|
|
||||||
// Splits
|
|
||||||
//
|
|
||||||
// Created by Isaac Greene on 4/3/22.
|
|
||||||
//
|
|
||||||
|
|
||||||
import SwiftUI
|
|
||||||
import RichTextView
|
|
||||||
|
|
||||||
struct HelpView: View {
|
|
||||||
@State var mathSheet = false
|
|
||||||
@State var problemSheet = false
|
|
||||||
|
|
||||||
var body: some View {
|
|
||||||
VStack {
|
|
||||||
Text("Help")
|
|
||||||
.font(.largeTitle)
|
|
||||||
.bold()
|
|
||||||
.padding(.top, 40)
|
|
||||||
|
|
||||||
Text("Due to limitations in the system, you can only use kilometers and miles at this time. \nSmaller units like meters and feet are not supported. \nYou can, however, use decimals, such as .2km or .8mi.\n\nI apologize for any inconvenience. In the future, I hope to make our app easier to use.\n\nI'm currently looking to add help articles about running to this page and it'll have loads of stuff about running and pace and all that stuff to actually help you with running. If I do, the purpose of this app might change.")
|
|
||||||
.padding()
|
|
||||||
|
|
||||||
Button("See our math", action: {
|
|
||||||
self.mathSheet.toggle()
|
|
||||||
})
|
|
||||||
.padding(30)
|
|
||||||
.sheet(isPresented: self.$mathSheet, content: {
|
|
||||||
algorithmView()
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
struct algorithmView: View {
|
|
||||||
|
|
||||||
var body: some View {
|
|
||||||
Text("The Algorithm")
|
|
||||||
.font(.largeTitle)
|
|
||||||
.bold()
|
|
||||||
VStack(alignment: .leading, spacing: 0) {
|
|
||||||
Text("Calculating pace is fairly straightforward, and does not change with increased complexity. The standard formula is simply this:\n")
|
|
||||||
mathView()
|
|
||||||
Text("\nWhere:\n")
|
|
||||||
HStack {
|
|
||||||
Text("\"t\"")
|
|
||||||
.font(.custom("Charter", size: 18))
|
|
||||||
Text("is total time")
|
|
||||||
}
|
|
||||||
HStack{
|
|
||||||
Text("\"d\"")
|
|
||||||
.font(.custom("Charter", size: 18))
|
|
||||||
Text("is distance")
|
|
||||||
}
|
|
||||||
HStack {
|
|
||||||
Text("\"p\"")
|
|
||||||
.font(.custom("Charter", size: 18))
|
|
||||||
Text("is the resulting pace")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.padding()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
struct mathView: View {
|
|
||||||
@State var mathString:String = "[math] \\frac{t}{d} &= p [/math]"
|
|
||||||
|
|
||||||
var body: some View {
|
|
||||||
mathLaTeX_inator(mathString: $mathString)
|
|
||||||
.padding(30)
|
|
||||||
.frame(maxHeight: 300)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
struct mathLaTeX_inator: UIViewRepresentable {
|
|
||||||
@Environment(\.colorScheme) var colorScheme
|
|
||||||
@Binding var mathString:String
|
|
||||||
|
|
||||||
func makeUIView(context: Context) -> RichTextView {
|
|
||||||
let richTextView = RichTextView(
|
|
||||||
input: mathString,
|
|
||||||
latexParser: LatexParser(),
|
|
||||||
font: UIFont.systemFont(ofSize: UIFont.systemFontSize),
|
|
||||||
textColor: (colorScheme == .dark ? UIColor.white : UIColor.black),
|
|
||||||
frame: CGRect.zero,
|
|
||||||
completion: nil
|
|
||||||
)
|
|
||||||
return richTextView
|
|
||||||
}
|
|
||||||
|
|
||||||
func updateUIView(_ uiView: RichTextView, context: Context) {
|
|
||||||
uiView.update(
|
|
||||||
input: mathString,
|
|
||||||
latexParser: LatexParser(),
|
|
||||||
font: UIFont.systemFont(ofSize: UIFont.systemFontSize),
|
|
||||||
textColor: (colorScheme == .dark ? UIColor.white : UIColor.black),
|
|
||||||
completion: nil
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,184 +0,0 @@
|
||||||
//
|
|
||||||
// SecretView.swift
|
|
||||||
// Splits
|
|
||||||
//
|
|
||||||
// Created by Isaac Greene on 2022-06-09.
|
|
||||||
//
|
|
||||||
|
|
||||||
import SwiftUI
|
|
||||||
|
|
||||||
struct SecretView: View {
|
|
||||||
var body: some View {
|
|
||||||
ScrollView {
|
|
||||||
VStack {
|
|
||||||
VStack {
|
|
||||||
Image("jake.zimmerman.group")
|
|
||||||
.resizable()
|
|
||||||
.interpolation(.high)
|
|
||||||
.frame(width: 75, height: 75)
|
|
||||||
.clipShape(Circle())
|
|
||||||
Text("Zim")
|
|
||||||
.font(.title2)
|
|
||||||
VStack (alignment: .leading) {
|
|
||||||
Text("""
|
|
||||||
Name: Jake Zimmerman
|
|
||||||
Email: jzimmerman@lakeviewspartans.org
|
|
||||||
""")
|
|
||||||
HStack {
|
|
||||||
Text("Phone:")
|
|
||||||
Link("(269) 753-5620", destination: URL(string: "tel:2697535620")!)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.frame(minWidth: 350, minHeight: 175)
|
|
||||||
.border(.primary)
|
|
||||||
VStack {
|
|
||||||
Image("caleb.bost.duo")
|
|
||||||
.resizable()
|
|
||||||
.interpolation(.high)
|
|
||||||
.frame(width: 75, height: 75)
|
|
||||||
.clipShape(Circle())
|
|
||||||
Text("Caleb")
|
|
||||||
.font(.title2)
|
|
||||||
VStack (alignment: .leading) {
|
|
||||||
Text("""
|
|
||||||
Name: Caleb Bost
|
|
||||||
Email: bostc@students.lakeviewspartans.org
|
|
||||||
""")
|
|
||||||
HStack {
|
|
||||||
Text("Phone:")
|
|
||||||
Link("(269) 578-6148", destination: URL(string: "tel:2695786148")!)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.frame(minWidth: 350, minHeight: 175)
|
|
||||||
.border(.primary)
|
|
||||||
VStack {
|
|
||||||
Image("aiden.moore.states")
|
|
||||||
.resizable()
|
|
||||||
.interpolation(.high)
|
|
||||||
.frame(width: 75, height: 75)
|
|
||||||
.clipShape(Circle())
|
|
||||||
Text("Aiden")
|
|
||||||
.font(.title2)
|
|
||||||
VStack (alignment: .leading) {
|
|
||||||
Text("""
|
|
||||||
Name: Aiden Moore
|
|
||||||
Email: moorea8@students.lakeviewspartans.org
|
|
||||||
""")
|
|
||||||
HStack {
|
|
||||||
Text("Phone:")
|
|
||||||
Link("(269) 579-3882", destination: URL(string: "tel:2695793882")!)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.frame(minWidth: 350, minHeight: 175)
|
|
||||||
.border(.primary)
|
|
||||||
VStack {
|
|
||||||
Image("isaac.greene.clouds")
|
|
||||||
.resizable()
|
|
||||||
.interpolation(.high)
|
|
||||||
.frame(width: 75, height: 75)
|
|
||||||
.clipShape(Circle())
|
|
||||||
Text("Isaac")
|
|
||||||
.font(.title2)
|
|
||||||
VStack (alignment: .leading) {
|
|
||||||
Text("""
|
|
||||||
Name: Isaac Greene
|
|
||||||
Email: greenei@students.lakeviewspartans.org
|
|
||||||
""")
|
|
||||||
HStack {
|
|
||||||
Text("Phone:")
|
|
||||||
Link("(269) 282-2280", destination: URL(string: "tel:2692822280")!)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.frame(minWidth: 350, minHeight: 175)
|
|
||||||
.border(.primary)
|
|
||||||
VStack {
|
|
||||||
Image(systemName: "person.crop.circle.fill")
|
|
||||||
.resizable()
|
|
||||||
.aspectRatio(contentMode: .fit)
|
|
||||||
.frame(width: 75, height: 75)
|
|
||||||
Text("Pryor")
|
|
||||||
.font(.title2)
|
|
||||||
VStack (alignment: .leading) {
|
|
||||||
Text("""
|
|
||||||
Name: Becky Pryor
|
|
||||||
Email: bpryor@lakeviewspartans.org
|
|
||||||
""")
|
|
||||||
HStack {
|
|
||||||
Text("Phone:")
|
|
||||||
Link("(269) 209-9906", destination: URL(string: "tel:2692099906")!)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.frame(minWidth: 350, minHeight: 175)
|
|
||||||
.border(.primary)
|
|
||||||
VStack {
|
|
||||||
Image(systemName: "person.crop.circle.fill")
|
|
||||||
.resizable()
|
|
||||||
.aspectRatio(contentMode: .fit)
|
|
||||||
.frame(width: 75, height: 75)
|
|
||||||
Text("Paige")
|
|
||||||
.font(.title2)
|
|
||||||
VStack (alignment: .leading) {
|
|
||||||
Text("""
|
|
||||||
Name: Paige Ratliff
|
|
||||||
Email: ratliffp@students.lakeviewspartans.org
|
|
||||||
""")
|
|
||||||
HStack {
|
|
||||||
Text("Phone:")
|
|
||||||
Link("(269) 753-8569", destination: URL(string: "tel:2697538569")!)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.frame(minWidth: 350, minHeight: 175)
|
|
||||||
.border(.primary)
|
|
||||||
VStack {
|
|
||||||
Image(systemName: "person.crop.circle.fill")
|
|
||||||
.resizable()
|
|
||||||
.aspectRatio(contentMode: .fit)
|
|
||||||
.frame(width: 75, height: 75)
|
|
||||||
Text("Emma")
|
|
||||||
.font(.title2)
|
|
||||||
VStack (alignment: .leading) {
|
|
||||||
Text("""
|
|
||||||
Name: Emma Kerschbaum
|
|
||||||
Email: kerschbaume@students.lakeviewspartans.org
|
|
||||||
""")
|
|
||||||
HStack {
|
|
||||||
Text("Phone:")
|
|
||||||
Link("(269) 419-7880", destination: URL(string: "tel:2694197880")!)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.frame(minWidth: 350, minHeight: 175)
|
|
||||||
.border(.primary)
|
|
||||||
VStack {
|
|
||||||
Image(systemName: "person.crop.circle.fill")
|
|
||||||
.resizable()
|
|
||||||
.aspectRatio(contentMode: .fit)
|
|
||||||
.frame(width: 75, height: 75)
|
|
||||||
Text("Alyssa")
|
|
||||||
.font(.title2)
|
|
||||||
VStack (alignment: .leading) {
|
|
||||||
Text("""
|
|
||||||
Name: Alyssa Hinton
|
|
||||||
Email: hintona2@students.lakeviewspartans.org
|
|
||||||
""")
|
|
||||||
HStack {
|
|
||||||
Text("Phone:")
|
|
||||||
Link("(269) 589-7609", destination: URL(string: "tel:2695897609")!)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.frame(minWidth: 350, minHeight: 175)
|
|
||||||
.border(.primary)
|
|
||||||
|
|
||||||
}
|
|
||||||
.frame(maxWidth: .infinity)
|
|
||||||
.navigationTitle("Contacts")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue