diff --git a/Resell/Resources/Assets.xcassets/Active.imageset/Contents.json b/Resell/Resources/Assets.xcassets/Active.imageset/Contents.json new file mode 100644 index 0000000..067b2fe --- /dev/null +++ b/Resell/Resources/Assets.xcassets/Active.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "Soccer Ball Alt - Iconly Pro.svg", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Resell/Resources/Assets.xcassets/Active.imageset/Soccer Ball Alt - Iconly Pro.svg b/Resell/Resources/Assets.xcassets/Active.imageset/Soccer Ball Alt - Iconly Pro.svg new file mode 100644 index 0000000..cc82536 --- /dev/null +++ b/Resell/Resources/Assets.xcassets/Active.imageset/Soccer Ball Alt - Iconly Pro.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Resell/Resources/Assets.xcassets/Books.imageset/Open Book - Iconly Pro.svg b/Resell/Resources/Assets.xcassets/Books.imageset/Open Book - Iconly Pro.svg new file mode 100644 index 0000000..af22444 --- /dev/null +++ b/Resell/Resources/Assets.xcassets/Books.imageset/Open Book - Iconly Pro.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Resell/Resources/Assets.xcassets/Books.imageset/stack of books2.png b/Resell/Resources/Assets.xcassets/Books.imageset/stack of books2.png deleted file mode 100644 index 825d90a..0000000 Binary files a/Resell/Resources/Assets.xcassets/Books.imageset/stack of books2.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Books.imageset/stack of books3.png b/Resell/Resources/Assets.xcassets/Books.imageset/stack of books3.png deleted file mode 100644 index 09fcea1..0000000 Binary files a/Resell/Resources/Assets.xcassets/Books.imageset/stack of books3.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Clothing.imageset/pink sneakers floating2.png b/Resell/Resources/Assets.xcassets/Clothing.imageset/pink sneakers floating2.png deleted file mode 100644 index d63c92a..0000000 Binary files a/Resell/Resources/Assets.xcassets/Clothing.imageset/pink sneakers floating2.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Clothing.imageset/pink sneakers floating3.png b/Resell/Resources/Assets.xcassets/Clothing.imageset/pink sneakers floating3.png deleted file mode 100644 index 3760c30..0000000 Binary files a/Resell/Resources/Assets.xcassets/Clothing.imageset/pink sneakers floating3.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Electronics.imageset/Old TV Basic - Iconly Pro.svg b/Resell/Resources/Assets.xcassets/Electronics.imageset/Old TV Basic - Iconly Pro.svg new file mode 100644 index 0000000..90f170e --- /dev/null +++ b/Resell/Resources/Assets.xcassets/Electronics.imageset/Old TV Basic - Iconly Pro.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Resell/Resources/Assets.xcassets/Electronics.imageset/airpods max pink2.png b/Resell/Resources/Assets.xcassets/Electronics.imageset/airpods max pink2.png deleted file mode 100644 index 7ffbc3e..0000000 Binary files a/Resell/Resources/Assets.xcassets/Electronics.imageset/airpods max pink2.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Electronics.imageset/airpods max pink3.png b/Resell/Resources/Assets.xcassets/Electronics.imageset/airpods max pink3.png deleted file mode 100644 index 1c1315e..0000000 Binary files a/Resell/Resources/Assets.xcassets/Electronics.imageset/airpods max pink3.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Handmade.imageset/Wall Picture Frame - Iconly Pro.svg b/Resell/Resources/Assets.xcassets/Handmade.imageset/Wall Picture Frame - Iconly Pro.svg new file mode 100644 index 0000000..979e8c6 --- /dev/null +++ b/Resell/Resources/Assets.xcassets/Handmade.imageset/Wall Picture Frame - Iconly Pro.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Resell/Resources/Assets.xcassets/Handmade.imageset/color palette and brush2.png b/Resell/Resources/Assets.xcassets/Handmade.imageset/color palette and brush2.png deleted file mode 100644 index 2aa373f..0000000 Binary files a/Resell/Resources/Assets.xcassets/Handmade.imageset/color palette and brush2.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Handmade.imageset/color palette and brush3.png b/Resell/Resources/Assets.xcassets/Handmade.imageset/color palette and brush3.png deleted file mode 100644 index 1061fc7..0000000 Binary files a/Resell/Resources/Assets.xcassets/Handmade.imageset/color palette and brush3.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Household.imageset/Contents.json b/Resell/Resources/Assets.xcassets/Household.imageset/Contents.json new file mode 100644 index 0000000..4e50e73 --- /dev/null +++ b/Resell/Resources/Assets.xcassets/Household.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "Gas Stove - Iconly Pro.svg", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Resell/Resources/Assets.xcassets/Household.imageset/Gas Stove - Iconly Pro.svg b/Resell/Resources/Assets.xcassets/Household.imageset/Gas Stove - Iconly Pro.svg new file mode 100644 index 0000000..e6ec389 --- /dev/null +++ b/Resell/Resources/Assets.xcassets/Household.imageset/Gas Stove - Iconly Pro.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Resell/Resources/Assets.xcassets/Other.imageset/Air Humidifier - Iconly Pro.svg b/Resell/Resources/Assets.xcassets/Other.imageset/Air Humidifier - Iconly Pro.svg new file mode 100644 index 0000000..e983904 --- /dev/null +++ b/Resell/Resources/Assets.xcassets/Other.imageset/Air Humidifier - Iconly Pro.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Resell/Resources/Assets.xcassets/Other.imageset/Contents.json b/Resell/Resources/Assets.xcassets/Other.imageset/Contents.json index aad8597..ba10c27 100644 --- a/Resell/Resources/Assets.xcassets/Other.imageset/Contents.json +++ b/Resell/Resources/Assets.xcassets/Other.imageset/Contents.json @@ -1,23 +1,12 @@ { - "images": [ + "images" : [ { - "filename": "orange gift box on ground.png", - "idiom": "universal", - "scale": "1x" - }, - { - "filename": "orange gift box on ground 1.png", - "idiom": "universal", - "scale": "2x" - }, - { - "filename": "orange gift box on ground 2.png", - "idiom": "universal", - "scale": "3x" + "filename" : "Air Humidifier - Iconly Pro.svg", + "idiom" : "universal" } ], - "info": { - "author": "xcode", - "version": 1 + "info" : { + "author" : "xcode", + "version" : 1 } -} \ No newline at end of file +} diff --git a/Resell/Resources/Assets.xcassets/Other.imageset/orange gift box on ground 1.png b/Resell/Resources/Assets.xcassets/Other.imageset/orange gift box on ground 1.png deleted file mode 100644 index edac4a0..0000000 Binary files a/Resell/Resources/Assets.xcassets/Other.imageset/orange gift box on ground 1.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Other.imageset/orange gift box on ground 2.png b/Resell/Resources/Assets.xcassets/Other.imageset/orange gift box on ground 2.png deleted file mode 100644 index edac4a0..0000000 Binary files a/Resell/Resources/Assets.xcassets/Other.imageset/orange gift box on ground 2.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Other.imageset/orange gift box on ground.png b/Resell/Resources/Assets.xcassets/Other.imageset/orange gift box on ground.png deleted file mode 100644 index edac4a0..0000000 Binary files a/Resell/Resources/Assets.xcassets/Other.imageset/orange gift box on ground.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/School.imageset/School Backpack - Iconly Pro.svg b/Resell/Resources/Assets.xcassets/School.imageset/School Backpack - Iconly Pro.svg new file mode 100644 index 0000000..894e9d0 --- /dev/null +++ b/Resell/Resources/Assets.xcassets/School.imageset/School Backpack - Iconly Pro.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Resell/Resources/Assets.xcassets/School.imageset/pencil case2.png b/Resell/Resources/Assets.xcassets/School.imageset/pencil case2.png deleted file mode 100644 index 4174784..0000000 Binary files a/Resell/Resources/Assets.xcassets/School.imageset/pencil case2.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/School.imageset/pencil case3.png b/Resell/Resources/Assets.xcassets/School.imageset/pencil case3.png deleted file mode 100644 index 64ee413..0000000 Binary files a/Resell/Resources/Assets.xcassets/School.imageset/pencil case3.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/Contents 2.json b/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/Contents 2.json deleted file mode 100644 index fdeb570..0000000 --- a/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/Contents 2.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "rugby ball.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "rugby ball2.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "rugby ball3.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/Contents.json b/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/Contents.json deleted file mode 100644 index 18f8494..0000000 --- a/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images": [ - { - "filename": "rugby ball.png", - "idiom": "universal", - "scale": "1x" - }, - { - "filename": "rugby ball2.png", - "idiom": "universal", - "scale": "2x" - }, - { - "filename": "rugby ball3.png", - "idiom": "universal", - "scale": "3x" - } - ], - "info": { - "author": "xcode", - "version": 1 - } -} \ No newline at end of file diff --git a/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/rugby ball.png b/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/rugby ball.png deleted file mode 100644 index 785294e..0000000 Binary files a/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/rugby ball.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/rugby ball2.png b/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/rugby ball2.png deleted file mode 100644 index 70848cc..0000000 Binary files a/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/rugby ball2.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/rugby ball3.png b/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/rugby ball3.png deleted file mode 100644 index bb9fc07..0000000 Binary files a/Resell/Resources/Assets.xcassets/Sports & Outdoors.imageset/rugby ball3.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/books.imageset/Contents.json b/Resell/Resources/Assets.xcassets/books.imageset/Contents.json index 82c89b9..4ce4da5 100644 --- a/Resell/Resources/Assets.xcassets/books.imageset/Contents.json +++ b/Resell/Resources/Assets.xcassets/books.imageset/Contents.json @@ -1,23 +1,12 @@ { - "images": [ + "images" : [ { - "filename": "stack of books.png", - "idiom": "universal", - "scale": "1x" - }, - { - "filename": "stack of books2.png", - "idiom": "universal", - "scale": "2x" - }, - { - "filename": "stack of books3.png", - "idiom": "universal", - "scale": "3x" + "filename" : "Open Book - Iconly Pro.svg", + "idiom" : "universal" } ], - "info": { - "author": "xcode", - "version": 1 + "info" : { + "author" : "xcode", + "version" : 1 } -} \ No newline at end of file +} diff --git a/Resell/Resources/Assets.xcassets/books.imageset/stack of books.png b/Resell/Resources/Assets.xcassets/books.imageset/stack of books.png deleted file mode 100644 index 02fd7df..0000000 Binary files a/Resell/Resources/Assets.xcassets/books.imageset/stack of books.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/clothing.imageset/Beige Jacket - Iconly Pro.svg b/Resell/Resources/Assets.xcassets/clothing.imageset/Beige Jacket - Iconly Pro.svg new file mode 100644 index 0000000..da2dec7 --- /dev/null +++ b/Resell/Resources/Assets.xcassets/clothing.imageset/Beige Jacket - Iconly Pro.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Resell/Resources/Assets.xcassets/clothing.imageset/Contents.json b/Resell/Resources/Assets.xcassets/clothing.imageset/Contents.json index fd2d473..5a70a05 100644 --- a/Resell/Resources/Assets.xcassets/clothing.imageset/Contents.json +++ b/Resell/Resources/Assets.xcassets/clothing.imageset/Contents.json @@ -1,23 +1,12 @@ { - "images": [ + "images" : [ { - "filename": "pink sneakers floating.png", - "idiom": "universal", - "scale": "1x" - }, - { - "filename": "pink sneakers floating2.png", - "idiom": "universal", - "scale": "2x" - }, - { - "filename": "pink sneakers floating3.png", - "idiom": "universal", - "scale": "3x" + "filename" : "Beige Jacket - Iconly Pro.svg", + "idiom" : "universal" } ], - "info": { - "author": "xcode", - "version": 1 + "info" : { + "author" : "xcode", + "version" : 1 } -} \ No newline at end of file +} diff --git a/Resell/Resources/Assets.xcassets/clothing.imageset/pink sneakers floating.png b/Resell/Resources/Assets.xcassets/clothing.imageset/pink sneakers floating.png deleted file mode 100644 index c4f7f2d..0000000 Binary files a/Resell/Resources/Assets.xcassets/clothing.imageset/pink sneakers floating.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/electronics.imageset/Contents.json b/Resell/Resources/Assets.xcassets/electronics.imageset/Contents.json index 16fef31..575ede0 100644 --- a/Resell/Resources/Assets.xcassets/electronics.imageset/Contents.json +++ b/Resell/Resources/Assets.xcassets/electronics.imageset/Contents.json @@ -1,23 +1,12 @@ { - "images": [ + "images" : [ { - "filename": "airpods max pink.png", - "idiom": "universal", - "scale": "1x" - }, - { - "filename": "airpods max pink2.png", - "idiom": "universal", - "scale": "2x" - }, - { - "filename": "airpods max pink3.png", - "idiom": "universal", - "scale": "3x" + "filename" : "Old TV Basic - Iconly Pro.svg", + "idiom" : "universal" } ], - "info": { - "author": "xcode", - "version": 1 + "info" : { + "author" : "xcode", + "version" : 1 } -} \ No newline at end of file +} diff --git a/Resell/Resources/Assets.xcassets/electronics.imageset/airpods max pink.png b/Resell/Resources/Assets.xcassets/electronics.imageset/airpods max pink.png deleted file mode 100644 index 081a87d..0000000 Binary files a/Resell/Resources/Assets.xcassets/electronics.imageset/airpods max pink.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/filters.imageset/Contents.json b/Resell/Resources/Assets.xcassets/filters.imageset/Contents.json index 2e0045a..dfe075b 100644 --- a/Resell/Resources/Assets.xcassets/filters.imageset/Contents.json +++ b/Resell/Resources/Assets.xcassets/filters.imageset/Contents.json @@ -1,19 +1,8 @@ { "images" : [ { - "filename" : "rivet-icons_filter 1.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "Group 66.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "rivet.png", - "idiom" : "universal", - "scale" : "3x" + "filename" : "Icons List Filter.svg", + "idiom" : "universal" } ], "info" : { diff --git a/Resell/Resources/Assets.xcassets/filters.imageset/Group 66.png b/Resell/Resources/Assets.xcassets/filters.imageset/Group 66.png deleted file mode 100644 index 5626098..0000000 Binary files a/Resell/Resources/Assets.xcassets/filters.imageset/Group 66.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/filters.imageset/Icons List Filter.svg b/Resell/Resources/Assets.xcassets/filters.imageset/Icons List Filter.svg new file mode 100644 index 0000000..5a79675 --- /dev/null +++ b/Resell/Resources/Assets.xcassets/filters.imageset/Icons List Filter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Resell/Resources/Assets.xcassets/filters.imageset/rivet-icons_filter 1.png b/Resell/Resources/Assets.xcassets/filters.imageset/rivet-icons_filter 1.png deleted file mode 100644 index 350e202..0000000 Binary files a/Resell/Resources/Assets.xcassets/filters.imageset/rivet-icons_filter 1.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/filters.imageset/rivet.png b/Resell/Resources/Assets.xcassets/filters.imageset/rivet.png deleted file mode 100644 index b65f9c0..0000000 Binary files a/Resell/Resources/Assets.xcassets/filters.imageset/rivet.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/handmade.imageset/Contents.json b/Resell/Resources/Assets.xcassets/handmade.imageset/Contents.json index 2c96044..a480804 100644 --- a/Resell/Resources/Assets.xcassets/handmade.imageset/Contents.json +++ b/Resell/Resources/Assets.xcassets/handmade.imageset/Contents.json @@ -1,23 +1,12 @@ { - "images": [ + "images" : [ { - "filename": "color palette and brush.png", - "idiom": "universal", - "scale": "1x" - }, - { - "filename": "color palette and brush2.png", - "idiom": "universal", - "scale": "2x" - }, - { - "filename": "color palette and brush3.png", - "idiom": "universal", - "scale": "3x" + "filename" : "Wall Picture Frame - Iconly Pro.svg", + "idiom" : "universal" } ], - "info": { - "author": "xcode", - "version": 1 + "info" : { + "author" : "xcode", + "version" : 1 } -} \ No newline at end of file +} diff --git a/Resell/Resources/Assets.xcassets/handmade.imageset/color palette and brush.png b/Resell/Resources/Assets.xcassets/handmade.imageset/color palette and brush.png deleted file mode 100644 index 3c011fd..0000000 Binary files a/Resell/Resources/Assets.xcassets/handmade.imageset/color palette and brush.png and /dev/null differ diff --git a/Resell/Resources/Assets.xcassets/school.imageset/Contents.json b/Resell/Resources/Assets.xcassets/school.imageset/Contents.json index 2087e8f..d20eabb 100644 --- a/Resell/Resources/Assets.xcassets/school.imageset/Contents.json +++ b/Resell/Resources/Assets.xcassets/school.imageset/Contents.json @@ -1,23 +1,12 @@ { - "images": [ + "images" : [ { - "filename": "pencil case.png", - "idiom": "universal", - "scale": "1x" - }, - { - "filename": "pencil case2.png", - "idiom": "universal", - "scale": "2x" - }, - { - "filename": "pencil case3.png", - "idiom": "universal", - "scale": "3x" + "filename" : "School Backpack - Iconly Pro.svg", + "idiom" : "universal" } ], - "info": { - "author": "xcode", - "version": 1 + "info" : { + "author" : "xcode", + "version" : 1 } -} \ No newline at end of file +} diff --git a/Resell/Resources/Assets.xcassets/school.imageset/pencil case.png b/Resell/Resources/Assets.xcassets/school.imageset/pencil case.png deleted file mode 100644 index 71825cf..0000000 Binary files a/Resell/Resources/Assets.xcassets/school.imageset/pencil case.png and /dev/null differ diff --git a/Resell/Utils/Constants.swift b/Resell/Utils/Constants.swift index 022f2a9..58365e6 100644 --- a/Resell/Utils/Constants.swift +++ b/Resell/Utils/Constants.swift @@ -18,6 +18,7 @@ struct Constants { static let inactiveGray = Color(red: 190/255, green: 190/255, blue: 190/255) static let purpleWash = Color(red: 250/255, green: 247/255, blue: 255/255) static let resellPurple = Color(red: 158/255, green: 112/255, blue: 246/255) + static let tertiaryGray = Color(red: 45/255, green: 45/255, blue: 45/255) static let secondaryGray = Color(red: 77/255, green: 77/255, blue: 77/255) static let stroke = Color(red: 214/255, green: 214/255, blue: 214/255) static let tint = Color(red: 0/255, green: 0/255, blue: 0/255, opacity: 20/100) @@ -122,10 +123,10 @@ struct Constants { FilterCategory(id: 2, title: "Books", color: Constants.Colors.filterGreen) , FilterCategory(id: 3, title: "School", color: Constants.Colors.filterLightGreen), FilterCategory(id: 4, title: "Electronics", color: Constants.Colors.filterPink), - FilterCategory(id: 5, title: "Household"), + FilterCategory(id: 5, title: "Household", color: Constants.Colors.purpleWash), FilterCategory(id: 6, title: "Handmade", color: Constants.Colors.filterYellow), - FilterCategory(id: 7, title: "Sports & Outdoors", color: Constants.Colors.filterBlue), - FilterCategory(id: 8, title: "Other") + FilterCategory(id: 7, title: "Active", color: Constants.Colors.filterBlue), + FilterCategory(id: 8, title: "Other", color: Constants.Colors.filterGray) ] static let notificationFilters = [ diff --git a/Resell/Views/Components/FilterButton.swift b/Resell/Views/Components/FilterButton.swift index c7dfb7b..05e6495 100644 --- a/Resell/Views/Components/FilterButton.swift +++ b/Resell/Views/Components/FilterButton.swift @@ -58,16 +58,10 @@ struct CircularFilterButton: View { var body: some View { Button(action: action, label: { - ZStack{ - Circle() - .frame(width: 80, height: 80) - .foregroundStyle((filter.color?.opacity(0.5)) ?? Constants.Colors.filterGray) - - Image(filter.title) - .resizable() - .scaledToFit() - .frame(width: 56, height: 56) - } + Image(filter.title) + .resizable() + .scaledToFit() + .frame(width: 72, height: 72) }) } } diff --git a/Resell/Views/Components/RangeSlider.swift b/Resell/Views/Components/RangeSlider.swift index 8f9be38..cc90bc7 100644 --- a/Resell/Views/Components/RangeSlider.swift +++ b/Resell/Views/Components/RangeSlider.swift @@ -23,7 +23,24 @@ struct RangeSlider: View { .fill(Constants.Colors.resellPurple.opacity(0.2)) .frame(width: trackWidth, height: 4) .cornerRadius(4) - + + // Active range between the two handles. + let lowX = position(for: lowValue) + handleDiameter / 2 + let highX = position(for: highValue) + handleDiameter / 2 + Rectangle() + .fill( + LinearGradient( + colors: [ + Constants.Colors.resellPurple.opacity(0.5), + Constants.Colors.resellPurple + ], + startPoint: .leading, + endPoint: .trailing + ) + ) + .frame(width: max(0, highX - lowX), height: 4) + .offset(x: lowX) + Circle() .fill(Color.white) .frame(width: handleDiameter, height: handleDiameter) diff --git a/Resell/Views/Home/FilterView.swift b/Resell/Views/Home/FilterView.swift index c75c846..9f8f089 100644 --- a/Resell/Views/Home/FilterView.swift +++ b/Resell/Views/Home/FilterView.swift @@ -14,7 +14,9 @@ struct FilterView: View { @State var presentPopup = false @EnvironmentObject var filtersVM: FiltersViewModel - private var categories : [String] = ["Clothing", "Books", "School", "Electronics", "Handmade", "Sports & Outdoors", "Other"] + /// Browsable categories, in `Constants.filters` order. A `nil` color marks a + /// pseudo-category (e.g. "Recent") that is not a real listing category. + private let categories: [String] = Constants.filters.compactMap { $0.color == nil ? nil : $0.title } private var conditions : [String] = ["Gently Used", "Worn", "Never Used"] let home : Bool @@ -132,21 +134,11 @@ struct FilterView: View { filtersVM.categoryFilters.insert(category) } } label: { - if filtersVM.categoryFilters.contains(category) { - HStack { - Text(category) - .font(.custom("Rubik-Medium", size: 14)) - .foregroundStyle(Constants.Colors.resellPurple) - - Image(systemName: "xmark") - .font(.custom("Rubik-Medium", size: 14)) - .foregroundStyle(Constants.Colors.resellPurple) - } - } else { - Text(category) - .font(.custom("Rubik-Medium", size: 14)) - .foregroundStyle(Color.black) - } + let isSelected = filtersVM.categoryFilters.contains(category) + Text(category) + .font(.custom("Rubik-Medium", size: 14)) + .foregroundStyle(isSelected ? Constants.Colors.resellPurple : Color.black) + .animation(.spring(response: 0.3, dampingFraction: 0.6), value: isSelected) } .padding(.horizontal, 14) .padding(.vertical, 8) @@ -184,21 +176,11 @@ struct FilterView: View { filtersVM.conditionFilters.insert(condition) } } label: { - if filtersVM.conditionFilters.contains(condition) { - HStack { - Text(condition) - .font(.custom("Rubik-Medium", size: 14)) - .foregroundStyle(Constants.Colors.resellPurple) - - Image(systemName: "xmark") - .font(.custom("Rubik-Medium", size: 14)) - .foregroundStyle(Constants.Colors.resellPurple) - } - } else { - Text(condition) - .font(.custom("Rubik-Medium", size: 14)) - .foregroundStyle(Color.black) - } + let isSelected = filtersVM.conditionFilters.contains(condition) + Text(condition) + .font(.custom("Rubik-Medium", size: 14)) + .foregroundStyle(isSelected ? Constants.Colors.resellPurple : Color.black) + .animation(.spring(response: 0.3, dampingFraction: 0.6), value: isSelected) } .padding(.horizontal, 14) .padding(.vertical, 8) diff --git a/Resell/Views/Home/sfsfs.swift b/Resell/Views/Home/sfsfs.swift deleted file mode 100644 index 8e7fb6c..0000000 --- a/Resell/Views/Home/sfsfs.swift +++ /dev/null @@ -1,7 +0,0 @@ -// -// sfsfs.swift -// Resell -// -// Created by Charles Liggins on 2/24/25. -// -