Skip to content

Commit

Permalink
Merge pull request #124 from Gwamegis/PlayListViewRestore
Browse files Browse the repository at this point in the history
[Feat] #123 플레이리스트
  • Loading branch information
Anti9uA authored Jun 30, 2023
2 parents 1d5c6ce + 0a6603d commit 69924ae
Show file tree
Hide file tree
Showing 17 changed files with 588 additions and 144 deletions.
50 changes: 43 additions & 7 deletions Halmap.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
87F6ECF1291677AC004533C4 /* Halmap+UIApplication.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87F6ECF0291677AC004533C4 /* Halmap+UIApplication.swift */; };
87F6ECF52916B331004533C4 /* Halmap+UINavigationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87F6ECF42916B331004533C4 /* Halmap+UINavigationController.swift */; };
87F6ECF72916BB44004533C4 /* Halmap+UIView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87F6ECF62916BB44004533C4 /* Halmap+UIView.swift */; };
A813C77429C779C400CF73FE /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = A813C77329C779C400CF73FE /* GoogleService-Info.plist */; };
A81FFC7A28F15D9900B0FC7C /* HalmapApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = A81FFC7928F15D9900B0FC7C /* HalmapApp.swift */; };
A81FFC7C28F15D9900B0FC7C /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A81FFC7B28F15D9900B0FC7C /* ContentView.swift */; };
A81FFC7E28F15D9C00B0FC7C /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A81FFC7D28F15D9C00B0FC7C /* Assets.xcassets */; };
Expand All @@ -30,6 +29,9 @@
A81FFC9F28F180B200B0FC7C /* SongContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A81FFC9E28F180B200B0FC7C /* SongContentView.swift */; };
A81FFCA528F1B84000B0FC7C /* Halmap+Font.swift in Sources */ = {isa = PBXBuildFile; fileRef = A81FFCA428F1B84000B0FC7C /* Halmap+Font.swift */; };
A81FFCA728F1B84A00B0FC7C /* Halmap+Color.swift in Sources */ = {isa = PBXBuildFile; fileRef = A81FFCA628F1B84A00B0FC7C /* Halmap+Color.swift */; };
A852F0282A46EDDA00078B47 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = A852F0272A46EDDA00078B47 /* GoogleService-Info.plist */; };
A8A8260D2A4CE2D400F470DF /* PlayListRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8A8260C2A4CE2D400F470DF /* PlayListRow.swift */; };
A8A8260F2A4CE37200F470DF /* PlayListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8A8260E2A4CE37200F470DF /* PlayListView.swift */; };
A8D1E92229169DAD00BF242C /* test-song.m4a in Resources */ = {isa = PBXBuildFile; fileRef = A8D1E92129169DAD00BF242C /* test-song.m4a */; };
A8F8BA9929C8CE5B00FCB229 /* AudioManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8F8BA9829C8CE5B00FCB229 /* AudioManager.swift */; };
B2699E0D28F1CB7E00267A4F /* Pretendard-Bold.otf in Resources */ = {isa = PBXBuildFile; fileRef = B2699E0C28F1CB7E00267A4F /* Pretendard-Bold.otf */; };
Expand All @@ -43,6 +45,7 @@
F939EBBC29D5920F005ED8CA /* OffsetModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = F939EBBB29D5920F005ED8CA /* OffsetModifier.swift */; };
F949284F28F2AFB800901F27 /* Music.json in Resources */ = {isa = PBXBuildFile; fileRef = F949284E28F2AFB800901F27 /* Music.json */; };
F95CE98B2917A8EF00FFE213 /* Settings.bundle in Resources */ = {isa = PBXBuildFile; fileRef = F95CE98A2917A8EF00FFE213 /* Settings.bundle */; };
F95EF67C2A40695C00C6C3E7 /* HalfModalPresentationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F95EF67B2A40695C00C6C3E7 /* HalfModalPresentationController.swift */; };
F98F622929B4C9BD0025F50E /* Themes.swift in Sources */ = {isa = PBXBuildFile; fileRef = F98F622829B4C9BD0025F50E /* Themes.swift */; };
F98F622B29B4CB450025F50E /* ThemeManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = F98F622A29B4CB450025F50E /* ThemeManager.swift */; };
F98F623129B59CE60025F50E /* TeamName.swift in Sources */ = {isa = PBXBuildFile; fileRef = F98F623029B59CE60025F50E /* TeamName.swift */; };
Expand All @@ -63,7 +66,6 @@
87F6ECF0291677AC004533C4 /* Halmap+UIApplication.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Halmap+UIApplication.swift"; sourceTree = "<group>"; };
87F6ECF42916B331004533C4 /* Halmap+UINavigationController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Halmap+UINavigationController.swift"; sourceTree = "<group>"; };
87F6ECF62916BB44004533C4 /* Halmap+UIView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Halmap+UIView.swift"; sourceTree = "<group>"; };
A813C77329C779C400CF73FE /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
A81FFC7628F15D9900B0FC7C /* Halmap.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Halmap.app; sourceTree = BUILT_PRODUCTS_DIR; };
A81FFC7928F15D9900B0FC7C /* HalmapApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HalmapApp.swift; sourceTree = "<group>"; };
A81FFC7B28F15D9900B0FC7C /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
Expand All @@ -79,6 +81,9 @@
A81FFC9E28F180B200B0FC7C /* SongContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SongContentView.swift; sourceTree = "<group>"; };
A81FFCA428F1B84000B0FC7C /* Halmap+Font.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Halmap+Font.swift"; sourceTree = "<group>"; };
A81FFCA628F1B84A00B0FC7C /* Halmap+Color.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Halmap+Color.swift"; sourceTree = "<group>"; };
A852F0272A46EDDA00078B47 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = "<group>"; };
A8A8260C2A4CE2D400F470DF /* PlayListRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayListRow.swift; sourceTree = "<group>"; };
A8A8260E2A4CE37200F470DF /* PlayListView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PlayListView.swift; sourceTree = "<group>"; };
A8D1E92129169DAD00BF242C /* test-song.m4a */ = {isa = PBXFileReference; lastKnownFileType = file; path = "test-song.m4a"; sourceTree = "<group>"; };
A8F8BA9829C8CE5B00FCB229 /* AudioManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioManager.swift; sourceTree = "<group>"; };
B2699E0B28F1CB5100267A4F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
Expand All @@ -93,6 +98,7 @@
F939EBBB29D5920F005ED8CA /* OffsetModifier.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OffsetModifier.swift; sourceTree = "<group>"; };
F949284E28F2AFB800901F27 /* Music.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Music.json; sourceTree = "<group>"; };
F95CE98A2917A8EF00FFE213 /* Settings.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = Settings.bundle; sourceTree = "<group>"; };
F95EF67B2A40695C00C6C3E7 /* HalfModalPresentationController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HalfModalPresentationController.swift; sourceTree = "<group>"; };
F98F622829B4C9BD0025F50E /* Themes.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Themes.swift; sourceTree = "<group>"; };
F98F622A29B4CB450025F50E /* ThemeManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThemeManager.swift; sourceTree = "<group>"; };
F98F623029B59CE60025F50E /* TeamName.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TeamName.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -126,7 +132,7 @@
A81FFC6D28F15D9900B0FC7C = {
isa = PBXGroup;
children = (
A813C77329C779C400CF73FE /* GoogleService-Info.plist */,
A852F0272A46EDDA00078B47 /* GoogleService-Info.plist */,
B2699E0E28F1CB8800267A4F /* Font */,
A81FFC7828F15D9900B0FC7C /* Halmap */,
A81FFC7728F15D9900B0FC7C /* Products */,
Expand All @@ -145,6 +151,7 @@
A81FFC7828F15D9900B0FC7C /* Halmap */ = {
isa = PBXGroup;
children = (
A852F01A2A462F9300078B47 /* Utills */,
A81FFC8E28F1770500B0FC7C /* View */,
B2699E0B28F1CB5100267A4F /* Info.plist */,
F98F622729B4C9A80025F50E /* Theme */,
Expand Down Expand Up @@ -203,8 +210,9 @@
A81FFC9B28F1808700B0FC7C /* SongInformation */ = {
isa = PBXGroup;
children = (
A8A826102A4CE5D900F470DF /* Lyric */,
A8A8260B2A4CE2C300F470DF /* PlayList */,
A81FFC9C28F180A000B0FC7C /* SongPlayerView.swift */,
A81FFC9E28F180B200B0FC7C /* SongContentView.swift */,
F9B3B7B629B842DD00232BB8 /* SongDetailView.swift */,
);
path = SongInformation;
Expand All @@ -222,6 +230,31 @@
path = Extensions;
sourceTree = "<group>";
};
A852F01A2A462F9300078B47 /* Utills */ = {
isa = PBXGroup;
children = (
F95EF67B2A40695C00C6C3E7 /* HalfModalPresentationController.swift */,
);
path = Utills;
sourceTree = "<group>";
};
A8A8260B2A4CE2C300F470DF /* PlayList */ = {
isa = PBXGroup;
children = (
A8A8260E2A4CE37200F470DF /* PlayListView.swift */,
A8A8260C2A4CE2D400F470DF /* PlayListRow.swift */,
);
path = PlayList;
sourceTree = "<group>";
};
A8A826102A4CE5D900F470DF /* Lyric */ = {
isa = PBXGroup;
children = (
A81FFC9E28F180B200B0FC7C /* SongContentView.swift */,
);
path = Lyric;
sourceTree = "<group>";
};
B2699E0E28F1CB8800267A4F /* Font */ = {
isa = PBXGroup;
children = (
Expand Down Expand Up @@ -342,11 +375,11 @@
files = (
F95CE98B2917A8EF00FFE213 /* Settings.bundle in Resources */,
F9A2DAA62A07DE9A008B84A9 /* Preview Assets.xcassets in Resources */,
A813C77429C779C400CF73FE /* GoogleService-Info.plist in Resources */,
A81FFC8128F15D9C00B0FC7C /* Preview Assets.xcassets in Resources */,
B2699E0D28F1CB7E00267A4F /* Pretendard-Bold.otf in Resources */,
A81FFC7E28F15D9C00B0FC7C /* Assets.xcassets in Resources */,
B2699E1028F1CB9700267A4F /* Pretendard-Medium.otf in Resources */,
A852F0282A46EDDA00078B47 /* GoogleService-Info.plist in Resources */,
F949284F28F2AFB800901F27 /* Music.json in Resources */,
A8D1E92229169DAD00BF242C /* test-song.m4a in Resources */,
);
Expand All @@ -368,10 +401,13 @@
F939EBBC29D5920F005ED8CA /* OffsetModifier.swift in Sources */,
F9A178222A1BF5CB003E8E4C /* HalfSheetView.swift in Sources */,
87F6ECF52916B331004533C4 /* Halmap+UINavigationController.swift in Sources */,
A8A8260D2A4CE2D400F470DF /* PlayListRow.swift in Sources */,
A8A8260F2A4CE37200F470DF /* PlayListView.swift in Sources */,
A81FFCA528F1B84000B0FC7C /* Halmap+Font.swift in Sources */,
F98F8D5D29D85B0C00F9C956 /* RequestSongView.swift in Sources */,
A81FFC7C28F15D9900B0FC7C /* ContentView.swift in Sources */,
A81FFC9D28F180A000B0FC7C /* SongPlayerView.swift in Sources */,
F95EF67C2A40695C00C6C3E7 /* HalfModalPresentationController.swift in Sources */,
A81FFC8628F15D9C00B0FC7C /* Halmap.xcdatamodeld in Sources */,
87F6ECF72916BB44004533C4 /* Halmap+UIView.swift in Sources */,
F91BE5FB29B18AF800F7E488 /* MainTabView.swift in Sources */,
Expand Down Expand Up @@ -524,7 +560,7 @@
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 5;
DEVELOPMENT_ASSET_PATHS = "\"Halmap/Preview Content\"";
DEVELOPMENT_TEAM = Y6P5ZFWBM8;
DEVELOPMENT_TEAM = 22A6RK2943;
ENABLE_PREVIEWS = YES;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = Halmap/Info.plist;
Expand Down Expand Up @@ -559,7 +595,7 @@
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 5;
DEVELOPMENT_ASSET_PATHS = "\"Halmap/Preview Content\"";
DEVELOPMENT_TEAM = Y6P5ZFWBM8;
DEVELOPMENT_TEAM = 22A6RK2943;
ENABLE_PREVIEWS = YES;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = Halmap/Info.plist;
Expand Down
21 changes: 0 additions & 21 deletions Halmap/Assets.xcassets/Image/2023/NC23.imageset/Contents.json

This file was deleted.

Binary file not shown.

This file was deleted.

Binary file not shown.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"images" : [
{
"filename" : "NcAlbum.png",
"filename" : "NCAlbum.png",
"idiom" : "universal",
"scale" : "1x"
},
Expand Down
2 changes: 2 additions & 0 deletions Halmap/Data/DataManager.swift
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ class DataManager: ObservableObject {
@Published var playerSongs: [Song] = []
@Published var teamSongs: [Song] = []
@Published var favoriteSongs = PersistenceController.shared.fetchFavoriteSong()
// 추가
@Published var PlayListSongs = PersistenceController.shared.fetchPlayListSong()

@Published var playerSongsAll = [[Song]](repeating: [], count: 10)
@Published var teamSongsAll = [[Song]](repeating: [], count: 10)
Expand Down
3 changes: 2 additions & 1 deletion Halmap/Halmap.xcdatamodeld/Halmap.xcdatamodel/contents
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<model type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="21513" systemVersion="22D68" minimumToolsVersion="Automatic" sourceLanguage="Swift" userDefinedModelVersionIdentifier="">
<model type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="21754" systemVersion="22F66" minimumToolsVersion="Automatic" sourceLanguage="Swift" userDefinedModelVersionIdentifier="">
<entity name="CollectedSong" representedClassName="CollectedSong" syncable="YES" codeGenerationType="class">
<attribute name="date" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
<attribute name="id" optional="YES" attributeType="String"/>
<attribute name="info" optional="YES" attributeType="String"/>
<attribute name="lyrics" optional="YES" attributeType="String"/>
<attribute name="order" optional="YES" attributeType="Integer 64" defaultValueString="0" usesScalarValueType="YES"/>
<attribute name="playListTitle" optional="YES" attributeType="String"/>
<attribute name="team" optional="YES" attributeType="String"/>
<attribute name="title" optional="YES" attributeType="String"/>
Expand Down
Loading

0 comments on commit 69924ae

Please sign in to comment.