Skip to content

Commit 9827530

Browse files
committed
Рефактор
- Сделал отдельный Swift package (Utils) для основных расширений - Обновил некоторые превью
1 parent 99f564a commit 9827530

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+165
-41
lines changed

SwiftUI-WorkoutApp.xcodeproj/project.pbxproj

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@
3232
6747575928128603002F0A24 /* SportsGroundDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6747575828128603002F0A24 /* SportsGroundDetailView.swift */; };
3333
674AC7EE2834297900DA30CB /* ProfileImageRectangle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 674AC7ED2834297900DA30CB /* ProfileImageRectangle.swift */; };
3434
674B37AC282B9332001A5B66 /* FormatterService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 674B37AB282B9332001A5B66 /* FormatterService.swift */; };
35-
674B37AE282B9758001A5B66 /* String+.swift in Sources */ = {isa = PBXBuildFile; fileRef = 674B37AD282B9758001A5B66 /* String+.swift */; };
3635
674B37B0282B9BE2001A5B66 /* CommentViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 674B37AF282B9BE2001A5B66 /* CommentViewCell.swift */; };
3736
674B37B2282B9E51001A5B66 /* CacheImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 674B37B1282B9E51001A5B66 /* CacheImageView.swift */; };
3837
674D061B28280A63007E75C6 /* FriendRequestsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 674D061A28280A63007E75C6 /* FriendRequestsView.swift */; };
@@ -50,10 +49,9 @@
5049
6758B932281DB1F7001D83D8 /* LoginResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6758B931281DB1F7001D83D8 /* LoginResponse.swift */; };
5150
6758B934281DC198001D83D8 /* UserResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6758B933281DC198001D83D8 /* UserResponse.swift */; };
5251
6758B936281E5EA9001D83D8 /* APIService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6758B935281E5EA9001D83D8 /* APIService.swift */; };
53-
6758B93C281E74F2001D83D8 /* Date+.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6758B93B281E74F2001D83D8 /* Date+.swift */; };
54-
6758B93E281E7695001D83D8 /* Optional+.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6758B93D281E7695001D83D8 /* Optional+.swift */; };
5552
6758B946281ED194001D83D8 /* ErrorResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6758B945281ED194001D83D8 /* ErrorResponse.swift */; };
5653
675A370328547ACA00DAE071 /* Localizable.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = 675A370528547ACA00DAE071 /* Localizable.stringsdict */; };
54+
675A370A2854810B00DAE071 /* Utils in Frameworks */ = {isa = PBXBuildFile; productRef = 675A37092854810B00DAE071 /* Utils */; };
5755
675EC649281289FB00C2E229 /* SportsGroundSize.swift in Sources */ = {isa = PBXBuildFile; fileRef = 675EC648281289FB00C2E229 /* SportsGroundSize.swift */; };
5856
675EC64B28128B7E00C2E229 /* SportsGroundGrade.swift in Sources */ = {isa = PBXBuildFile; fileRef = 675EC64A28128B7E00C2E229 /* SportsGroundGrade.swift */; };
5957
675EC64F2814126800C2E229 /* TextEntryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 675EC64E2814126800C2E229 /* TextEntryView.swift */; };
@@ -102,13 +100,11 @@
102100
6798AA7E280BF13100DB76F1 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6798AA80280BF13100DB76F1 /* Localizable.strings */; };
103101
6798AA84280C0F7D00DB76F1 /* AccountInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6798AA83280C0F7D00DB76F1 /* AccountInfoView.swift */; };
104102
6798AA86280C135E00DB76F1 /* Country.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6798AA85280C135E00DB76F1 /* Country.swift */; };
105-
6798AA88280C14B800DB76F1 /* Bundle+.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6798AA87280C14B800DB76F1 /* Bundle+.swift */; };
106103
6798AA8C280C390F00DB76F1 /* CountriesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6798AA8B280C390F00DB76F1 /* CountriesView.swift */; };
107104
6798AA8E280C3CCB00DB76F1 /* CitiesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6798AA8D280C3CCB00DB76F1 /* CitiesView.swift */; };
108105
67A9C90528427D06005D6A36 /* SportsGroundFilter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67A9C90428427D06005D6A36 /* SportsGroundFilter.swift */; };
109106
67A9C90828427DEA005D6A36 /* SportsGroundFilterView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67A9C90728427DEA005D6A36 /* SportsGroundFilterView.swift */; };
110107
67A9C90A2842833F005D6A36 /* HeaderForSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67A9C9092842833F005D6A36 /* HeaderForSheet.swift */; };
111-
67B1B6DA283121CB00BED514 /* Data+.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67B1B6D9283121CB00BED514 /* Data+.swift */; };
112108
67B78710281D6110008B104F /* LoginViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67B7870F281D6110008B104F /* LoginViewModel.swift */; };
113109
67B78712281D654C008B104F /* DefaultsService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67B78711281D654C008B104F /* DefaultsService.swift */; };
114110
67B78714281D74F3008B104F /* AccountInfoViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67B78713281D74F3008B104F /* AccountInfoViewModel.swift */; };
@@ -169,7 +165,6 @@
169165
6747575828128603002F0A24 /* SportsGroundDetailView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SportsGroundDetailView.swift; sourceTree = "<group>"; };
170166
674AC7ED2834297900DA30CB /* ProfileImageRectangle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProfileImageRectangle.swift; sourceTree = "<group>"; };
171167
674B37AB282B9332001A5B66 /* FormatterService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormatterService.swift; sourceTree = "<group>"; };
172-
674B37AD282B9758001A5B66 /* String+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "String+.swift"; sourceTree = "<group>"; };
173168
674B37AF282B9BE2001A5B66 /* CommentViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CommentViewCell.swift; sourceTree = "<group>"; };
174169
674B37B1282B9E51001A5B66 /* CacheImageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CacheImageView.swift; sourceTree = "<group>"; };
175170
674D061A28280A63007E75C6 /* FriendRequestsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FriendRequestsView.swift; sourceTree = "<group>"; };
@@ -187,10 +182,9 @@
187182
6758B931281DB1F7001D83D8 /* LoginResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginResponse.swift; sourceTree = "<group>"; };
188183
6758B933281DC198001D83D8 /* UserResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserResponse.swift; sourceTree = "<group>"; };
189184
6758B935281E5EA9001D83D8 /* APIService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIService.swift; sourceTree = "<group>"; };
190-
6758B93B281E74F2001D83D8 /* Date+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Date+.swift"; sourceTree = "<group>"; };
191-
6758B93D281E7695001D83D8 /* Optional+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Optional+.swift"; sourceTree = "<group>"; };
192185
6758B945281ED194001D83D8 /* ErrorResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ErrorResponse.swift; sourceTree = "<group>"; };
193186
675A370628547ACD00DAE071 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ru; path = ru.lproj/Localizable.stringsdict; sourceTree = "<group>"; };
187+
675A3707285480E600DAE071 /* Utils */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = Utils; path = "SwiftUI-WorkoutApp/Utils"; sourceTree = "<group>"; };
194188
675EC648281289FB00C2E229 /* SportsGroundSize.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SportsGroundSize.swift; sourceTree = "<group>"; };
195189
675EC64A28128B7E00C2E229 /* SportsGroundGrade.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SportsGroundGrade.swift; sourceTree = "<group>"; };
196190
675EC64E2814126800C2E229 /* TextEntryView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextEntryView.swift; sourceTree = "<group>"; };
@@ -242,13 +236,11 @@
242236
6798AA81280BF14500DB76F1 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = "<group>"; };
243237
6798AA83280C0F7D00DB76F1 /* AccountInfoView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountInfoView.swift; sourceTree = "<group>"; };
244238
6798AA85280C135E00DB76F1 /* Country.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Country.swift; sourceTree = "<group>"; };
245-
6798AA87280C14B800DB76F1 /* Bundle+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Bundle+.swift"; sourceTree = "<group>"; };
246239
6798AA8B280C390F00DB76F1 /* CountriesView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CountriesView.swift; sourceTree = "<group>"; };
247240
6798AA8D280C3CCB00DB76F1 /* CitiesView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CitiesView.swift; sourceTree = "<group>"; };
248241
67A9C90428427D06005D6A36 /* SportsGroundFilter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SportsGroundFilter.swift; sourceTree = "<group>"; };
249242
67A9C90728427DEA005D6A36 /* SportsGroundFilterView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SportsGroundFilterView.swift; sourceTree = "<group>"; };
250243
67A9C9092842833F005D6A36 /* HeaderForSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HeaderForSheet.swift; sourceTree = "<group>"; };
251-
67B1B6D9283121CB00BED514 /* Data+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Data+.swift"; sourceTree = "<group>"; };
252244
67B7870F281D6110008B104F /* LoginViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginViewModel.swift; sourceTree = "<group>"; };
253245
67B78711281D654C008B104F /* DefaultsService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DefaultsService.swift; sourceTree = "<group>"; };
254246
67B78713281D74F3008B104F /* AccountInfoViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountInfoViewModel.swift; sourceTree = "<group>"; };
@@ -288,6 +280,7 @@
288280
isa = PBXFrameworksBuildPhase;
289281
buildActionMask = 2147483647;
290282
files = (
283+
675A370A2854810B00DAE071 /* Utils in Frameworks */,
291284
);
292285
runOnlyForDeploymentPostprocessing = 0;
293286
};
@@ -406,18 +399,20 @@
406399
6758B93A281E74DF001D83D8 /* Extensions */ = {
407400
isa = PBXGroup;
408401
children = (
409-
6798AA87280C14B800DB76F1 /* Bundle+.swift */,
410-
6758B93B281E74F2001D83D8 /* Date+.swift */,
411-
6758B93D281E7695001D83D8 /* Optional+.swift */,
412402
671D7DEE282112140068E728 /* Text+.swift */,
413-
674B37AD282B9758001A5B66 /* String+.swift */,
414-
67B1B6D9283121CB00BED514 /* Data+.swift */,
415403
6705E7EB283B5DCF00DABCC8 /* View+.swift */,
416404
67C87FD228435E8600D6377D /* EnvironmentValues+.swift */,
417405
);
418406
path = Extensions;
419407
sourceTree = "<group>";
420408
};
409+
675A37082854810B00DAE071 /* Frameworks */ = {
410+
isa = PBXGroup;
411+
children = (
412+
);
413+
name = Frameworks;
414+
sourceTree = "<group>";
415+
};
421416
6762774E283A3A3B009C203F /* JournalsList */ = {
422417
isa = PBXGroup;
423418
children = (
@@ -510,8 +505,10 @@
510505
6798AA31280AEDC900DB76F1 = {
511506
isa = PBXGroup;
512507
children = (
508+
675A3707285480E600DAE071 /* Utils */,
513509
6798AA3C280AEDC900DB76F1 /* SwiftUI-WorkoutApp */,
514510
6798AA3B280AEDC900DB76F1 /* Products */,
511+
675A37082854810B00DAE071 /* Frameworks */,
515512
);
516513
sourceTree = "<group>";
517514
};
@@ -772,6 +769,9 @@
772769
dependencies = (
773770
);
774771
name = "SwiftUI-WorkoutApp";
772+
packageProductDependencies = (
773+
675A37092854810B00DAE071 /* Utils */,
774+
);
775775
productName = "SwiftUI-WorkoutApp";
776776
productReference = 6798AA3A280AEDC900DB76F1 /* WorkoutApp.app */;
777777
productType = "com.apple.product-type.application";
@@ -876,20 +876,16 @@
876876
67627759283A6149009C203F /* JournalEntryResponse.swift in Sources */,
877877
67B7871C281D8A49008B104F /* UserDetailsViewModel.swift in Sources */,
878878
6705E7EE283B703400DABCC8 /* JournalSettingsView.swift in Sources */,
879-
6798AA88280C14B800DB76F1 /* Bundle+.swift in Sources */,
880-
6758B93E281E7695001D83D8 /* Optional+.swift in Sources */,
881879
672BE768281FD60F00579183 /* City.swift in Sources */,
882880
6798AA40280AEDC900DB76F1 /* RootView.swift in Sources */,
883881
675EC64F2814126800C2E229 /* TextEntryView.swift in Sources */,
884882
674D0623282A9896007E75C6 /* SearchUsersView.swift in Sources */,
885883
6798AA8C280C390F00DB76F1 /* CountriesView.swift in Sources */,
886884
67A9C90A2842833F005D6A36 /* HeaderForSheet.swift in Sources */,
887-
6758B93C281E74F2001D83D8 /* Date+.swift in Sources */,
888885
67C87FD828438F1600D6377D /* PhotoContainer.swift in Sources */,
889886
67515696283FE9E100501346 /* ImagePicker.swift in Sources */,
890887
675EC64B28128B7E00C2E229 /* SportsGroundGrade.swift in Sources */,
891888
6747575628113419002F0A24 /* ChangePasswordView.swift in Sources */,
892-
67B1B6DA283121CB00BED514 /* Data+.swift in Sources */,
893889
67515699283FEC3100501346 /* PickedImagesList.swift in Sources */,
894890
67C87FD328435E8600D6377D /* EnvironmentValues+.swift in Sources */,
895891
6758B932281DB1F7001D83D8 /* LoginResponse.swift in Sources */,
@@ -900,7 +896,6 @@
900896
67891E36283E945100B10802 /* SportsGroundFormViewModel.swift in Sources */,
901897
67FBF64F28338A2E008A7968 /* EventDetailsView.swift in Sources */,
902898
67891E3A283EB15300B10802 /* SportsGroundResult.swift in Sources */,
903-
674B37AE282B9758001A5B66 /* String+.swift in Sources */,
904899
6758B934281DC198001D83D8 /* UserResponse.swift in Sources */,
905900
6766A038284604B40033F1E8 /* Tab.swift in Sources */,
906901
6766A036284603CA0033F1E8 /* TabViewModel.swift in Sources */,
@@ -1189,6 +1184,13 @@
11891184
defaultConfigurationName = Release;
11901185
};
11911186
/* End XCConfigurationList section */
1187+
1188+
/* Begin XCSwiftPackageProductDependency section */
1189+
675A37092854810B00DAE071 /* Utils */ = {
1190+
isa = XCSwiftPackageProductDependency;
1191+
productName = Utils;
1192+
};
1193+
/* End XCSwiftPackageProductDependency section */
11921194
};
11931195
rootObject = 6798AA32280AEDC900DB76F1 /* Project object */;
11941196
}

SwiftUI-WorkoutApp/Constants.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import Foundation
2+
import Utils
23
import UIKit.UIDevice
34

45
enum Constants {

SwiftUI-WorkoutApp/Extensions/Text+.swift

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,10 @@ extension Text {
88
}
99
}
1010

11-
struct BlueMediumWeightText: View {
12-
var body: some View {
13-
Text("Hello, World!")
14-
.blueMediumWeight()
15-
}
16-
}
17-
1811
struct BlueMediumWeightText_Previews: PreviewProvider {
1912
static var previews: some View {
20-
BlueMediumWeightText()
13+
Text("Hello, World!")
14+
.blueMediumWeight()
15+
.previewLayout(.sizeThatFits)
2116
}
2217
}

SwiftUI-WorkoutApp/Models/DialogResponse.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import Foundation
2+
import Utils
23

34
/// Модель с информацией о диалоге
45
struct DialogResponse: Codable, Identifiable {

SwiftUI-WorkoutApp/Models/ErrorResponse.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import Foundation
2+
import Utils
23

34
struct ErrorResponse: Codable {
45
let errors: [String]?

SwiftUI-WorkoutApp/Models/EventForm.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import Foundation
2+
import Utils
23

34
/// Форма для отправки создании/изменении мероприятия
45
struct EventForm: Codable {

SwiftUI-WorkoutApp/Models/EventResponse.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import Foundation
2+
import Utils
23

34
/// Модель со всей информацией о мероприятии
45
struct EventResponse: Codable, Identifiable {

SwiftUI-WorkoutApp/Models/JournalEntryResponse.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import Foundation
2+
import Utils
23

34
/// Модель с информацией о записи в дневнике
45
struct JournalEntryResponse: Codable, Identifiable {

SwiftUI-WorkoutApp/Models/JournalResponse.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import Foundation
2+
import Utils
23

34
/// Модель с информацией о дневнике
45
struct JournalResponse: Codable, Identifiable, Equatable {

SwiftUI-WorkoutApp/Models/MainUserForm.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import Foundation
2+
import Utils
23

34
/// Форма для отправки при регистрации или изменении данных профиля
45
struct MainUserForm: Codable, Equatable {

0 commit comments

Comments
 (0)