From d33ede11fd935b51ef691caf934764d333f8428c Mon Sep 17 00:00:00 2001 From: Bibi-urssu Date: Tue, 16 Jan 2024 03:35:33 +0900 Subject: [PATCH] [#250] OptionalIntOptionView --- .../Storybook/OptionView/Base/Option.swift | 6 +++--- ...ionView.swift => OptionalIntOptionView.swift} | 16 ++++++++-------- .../SwiftUI/Storybook/StorybookPageView.swift | 6 +++--- YDS.xcodeproj/project.pbxproj | 8 ++++---- 4 files changed, 18 insertions(+), 18 deletions(-) rename YDS-Storybook/SwiftUI/Storybook/OptionView/{IntOptionView.swift => OptionalIntOptionView.swift} (78%) diff --git a/YDS-Storybook/SwiftUI/Storybook/OptionView/Base/Option.swift b/YDS-Storybook/SwiftUI/Storybook/OptionView/Base/Option.swift index 8aa97ad3..cccae0af 100644 --- a/YDS-Storybook/SwiftUI/Storybook/OptionView/Base/Option.swift +++ b/YDS-Storybook/SwiftUI/Storybook/OptionView/Base/Option.swift @@ -10,7 +10,7 @@ import SwiftUI enum Option: View { case bool(description: String?, isOn: Binding) case `enum`(description: String?, cases: [Any], selectedIndex: Binding) - case int(description: String?, value: Binding) + case optionalInt(description: String?, value: Binding) case optionalString(description: String?, text: Binding) case optionalIcon(description: String?, icons: [SwiftUIIcon], selectedIcon: Binding) case optionalImage(description: String?, images: [SwiftUIImage], selectedImage: Binding) @@ -22,8 +22,8 @@ enum Option: View { BoolOptionView(description: description, isOn: isOn) case .enum(let description, let cases, let selectedIndex): EnumOptionView(description: description, cases: cases, selectedIndex: selectedIndex) - case .int(let description, let value): - IntOptionView(description: description, value: value) + case .optionalInt(let description, let value): + OptionalIntOptionView(description: description, value: value) case .optionalString(let description, let text): OptionalStringOptionView(description: description, text: text) case .optionalIcon(let description, let icons, let selectedIcon): diff --git a/YDS-Storybook/SwiftUI/Storybook/OptionView/IntOptionView.swift b/YDS-Storybook/SwiftUI/Storybook/OptionView/OptionalIntOptionView.swift similarity index 78% rename from YDS-Storybook/SwiftUI/Storybook/OptionView/IntOptionView.swift rename to YDS-Storybook/SwiftUI/Storybook/OptionView/OptionalIntOptionView.swift index 34221f15..8c1e1070 100644 --- a/YDS-Storybook/SwiftUI/Storybook/OptionView/IntOptionView.swift +++ b/YDS-Storybook/SwiftUI/Storybook/OptionView/OptionalIntOptionView.swift @@ -1,14 +1,14 @@ // -// IntOptionView.swift +// OptionalIntOptionView.swift // YDS-Storybook // -// Created by 정지혁 on 2023/08/19. +// Created by 박지윤 on 1/16/24. // import SwiftUI import YDS_SwiftUI -struct IntOptionView: View { +struct OptionalIntOptionView: View { private enum Dimension { enum Spacing { static let vstack: CGFloat = 8 @@ -24,11 +24,11 @@ struct IntOptionView: View { } } - @Binding private var value: Int + @Binding private var value: Int? private let description: String? - init(description: String?, value: Binding) { + init(description: String?, value: Binding) { self.description = description self._value = value } @@ -40,7 +40,7 @@ struct IntOptionView: View { Text(description) .font(YDSFont.subtitle2) } - Text("Int") + Text("Optional") .font(YDSFont.body2) } @@ -56,8 +56,8 @@ struct IntOptionView: View { } } -struct IntOptionView_Previews: PreviewProvider { +struct OptionalIntOptionView_Previews: PreviewProvider { static var previews: some View { - IntOptionView(description: "numberOfLines", value: .constant(1)) + OptionalIntOptionView(description: "lineLimit", value: .constant(1)) } } diff --git a/YDS-Storybook/SwiftUI/Storybook/StorybookPageView.swift b/YDS-Storybook/SwiftUI/Storybook/StorybookPageView.swift index a3cf37c2..0f87b74f 100644 --- a/YDS-Storybook/SwiftUI/Storybook/StorybookPageView.swift +++ b/YDS-Storybook/SwiftUI/Storybook/StorybookPageView.swift @@ -86,7 +86,7 @@ struct StorybookPageView_Previews: PreviewProvider { @State var text: String? = "BoxButton" @State var isDisabled = false - @State var numberOfLines = 1 + @State var lineLimit: Int? = 1 @State var selectedBoxButtonType = 0 @State var icon: SwiftUIIcon? @@ -98,14 +98,14 @@ struct StorybookPageView_Previews: PreviewProvider { icon } Text(text ?? "") - .lineLimit(numberOfLines) + .lineLimit(lineLimit) } } .disabled(isDisabled) }, options: [ Option.bool(description: "isDisabled", isOn: $isDisabled), - Option.int(description: "numberOfLines", value: $numberOfLines), + Option.optionalInt(description: "lineLimit", value: $lineLimit), Option.enum(description: "buttonType", cases: BoxButtonType.allCases, selectedIndex: $selectedBoxButtonType), Option.optionalString(description: "text", text: $text), Option.optionalIcon(description: "icon", icons: icons, selectedIcon: $icon) diff --git a/YDS.xcodeproj/project.pbxproj b/YDS.xcodeproj/project.pbxproj index b9835813..bcee7bcc 100644 --- a/YDS.xcodeproj/project.pbxproj +++ b/YDS.xcodeproj/project.pbxproj @@ -127,6 +127,7 @@ 954C48392B036D5D002F9FAC /* BottomBarControllerPageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 954C48382B036D5D002F9FAC /* BottomBarControllerPageView.swift */; }; 956C40172A949B640098BB8F /* SwiftUIYDSTypoArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 956C40162A949B640098BB8F /* SwiftUIYDSTypoArray.swift */; }; 956C40192A949BAE0098BB8F /* TypoPageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 956C40182A949BAE0098BB8F /* TypoPageView.swift */; }; + 95CC861E2B55A81F0088E44E /* OptionalIntOptionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95CC861D2B55A81F0088E44E /* OptionalIntOptionView.swift */; }; 95E535C72AB482E200FA2492 /* LabelPageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95E535C62AB482E200FA2492 /* LabelPageView.swift */; }; AF1E6F002AB88DEB0071C963 /* YDSToast.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF1E6EFF2AB88DEB0071C963 /* YDSToast.swift */; }; AF23ED812AEE9BF600F3D5E2 /* YDSSimpleTextField.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF23ED802AEE9BF600F3D5E2 /* YDSSimpleTextField.swift */; }; @@ -146,7 +147,6 @@ B9E4E8C82A90BDB90076473C /* StorybookPageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9E4E8C72A90BDB90076473C /* StorybookPageView.swift */; }; B9E4E8CE2A90BF500076473C /* BoolOptionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9E4E8CD2A90BF500076473C /* BoolOptionView.swift */; }; B9E4E8D02A90BF7E0076473C /* EnumOptionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9E4E8CF2A90BF7E0076473C /* EnumOptionView.swift */; }; - B9E4E8D22A90BF870076473C /* IntOptionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9E4E8D12A90BF870076473C /* IntOptionView.swift */; }; B9E4E8D42A90BFA10076473C /* OptionalStringOptionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9E4E8D32A90BFA10076473C /* OptionalStringOptionView.swift */; }; B9E4E8D62A90BFB60076473C /* OptionalIconOptionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9E4E8D52A90BFB60076473C /* OptionalIconOptionView.swift */; }; B9E4E8E22A93B1AF0076473C /* Option.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9E4E8E12A93B1AF0076473C /* Option.swift */; }; @@ -361,6 +361,7 @@ 954C48382B036D5D002F9FAC /* BottomBarControllerPageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottomBarControllerPageView.swift; sourceTree = ""; }; 956C40162A949B640098BB8F /* SwiftUIYDSTypoArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftUIYDSTypoArray.swift; sourceTree = ""; }; 956C40182A949BAE0098BB8F /* TypoPageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypoPageView.swift; sourceTree = ""; }; + 95CC861D2B55A81F0088E44E /* OptionalIntOptionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OptionalIntOptionView.swift; sourceTree = ""; }; 95E535C62AB482E200FA2492 /* LabelPageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LabelPageView.swift; sourceTree = ""; }; AF1E6EFF2AB88DEB0071C963 /* YDSToast.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YDSToast.swift; sourceTree = ""; }; AF23ED802AEE9BF600F3D5E2 /* YDSSimpleTextField.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YDSSimpleTextField.swift; sourceTree = ""; }; @@ -380,7 +381,6 @@ B9E4E8C72A90BDB90076473C /* StorybookPageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StorybookPageView.swift; sourceTree = ""; }; B9E4E8CD2A90BF500076473C /* BoolOptionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BoolOptionView.swift; sourceTree = ""; }; B9E4E8CF2A90BF7E0076473C /* EnumOptionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumOptionView.swift; sourceTree = ""; }; - B9E4E8D12A90BF870076473C /* IntOptionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IntOptionView.swift; sourceTree = ""; }; B9E4E8D32A90BFA10076473C /* OptionalStringOptionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OptionalStringOptionView.swift; sourceTree = ""; }; B9E4E8D52A90BFB60076473C /* OptionalIconOptionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OptionalIconOptionView.swift; sourceTree = ""; }; B9E4E8E12A93B1AF0076473C /* Option.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Option.swift; sourceTree = ""; }; @@ -930,7 +930,7 @@ B9E4E8CA2A90BF180076473C /* Base */, B9E4E8CD2A90BF500076473C /* BoolOptionView.swift */, B9E4E8CF2A90BF7E0076473C /* EnumOptionView.swift */, - B9E4E8D12A90BF870076473C /* IntOptionView.swift */, + 95CC861D2B55A81F0088E44E /* OptionalIntOptionView.swift */, B9E4E8D32A90BFA10076473C /* OptionalStringOptionView.swift */, B9E4E8D52A90BFB60076473C /* OptionalIconOptionView.swift */, AF7528232AA5F637001174E7 /* OptionalImageOptionView.swift */, @@ -1508,6 +1508,7 @@ 533A27B926A5351E009FD90A /* PageListTableViewCell.swift in Sources */, 956C40172A949B640098BB8F /* SwiftUIYDSTypoArray.swift in Sources */, 539110B426C049BD0094FD08 /* SingleTitleTopBarPageViewController.swift in Sources */, + 95CC861E2B55A81F0088E44E /* OptionalIntOptionView.swift in Sources */, 6FFDB97D2A7183F7003A9519 /* PickerControllerView.swift in Sources */, 5337939026AF0A0600BE5860 /* OptionalStringControllerView.swift in Sources */, 5337938E26AF09BF00BE5860 /* ControllerView.swift in Sources */, @@ -1524,7 +1525,6 @@ 533A27B326A52E56009FD90A /* PageListViewController.swift in Sources */, 532DBFD226EC7323008C2354 /* UITableView+Generic.swift in Sources */, 5359A5C526BED19900FCCECC /* DoubleTitleTopBarPageViewController.swift in Sources */, - B9E4E8D22A90BF870076473C /* IntOptionView.swift in Sources */, 538ACCB426EB40A60044A437 /* ColorsListTableViewController.swift in Sources */, AF7528222AA5F0A1001174E7 /* ProfileImagePageView.swift in Sources */, 53441B0426AF287600CB6BC9 /* BoolControllerView.swift in Sources */,