Skip to content

Commit 475d618

Browse files
committed
refactor: optimize interface
1 parent fdd19a7 commit 475d618

File tree

4 files changed

+91
-75
lines changed

4 files changed

+91
-75
lines changed

README.md

Lines changed: 26 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -112,25 +112,25 @@ interface TrackMetadata {
112112
id: string; // Track ID
113113

114114
// audio header
115-
duration?: number; // Duration in seconds
116-
bitrate?: number; // Bitrate in kbps
117-
sampleRate?: number; // Sample rate in Hz
118-
channels?: number; // Number of channels
119-
format?: string; // Audio format
115+
duration: number; // Duration in seconds
116+
bitrate: number; // Bitrate in kbps
117+
sampleRate: number; // Sample rate in Hz
118+
channels: number; // Number of channels
119+
format: string; // Audio format
120120

121121
// tag info
122-
title?: string; // Track title
123-
artist?: string; // Artist name
124-
album?: string; // Album name
125-
year?: number; // Release year
126-
genre?: string; // Music genre
127-
track?: number; // Track number
128-
disc?: number; // Disc number
129-
composer?: string; // Composer
130-
lyricist?: string; // Lyricist
131-
lyrics?: string; // Lyrics content
132-
albumArtist?: string; // Album artist
133-
comment?: string; // Comment
122+
title: string; // Track title
123+
artist: string; // Artist name
124+
album: string; // Album name
125+
year: number; // Release year
126+
genre: string; // Music genre
127+
track: number; // Track number
128+
disc: number; // Disc number
129+
composer: string; // Composer
130+
lyricist: string; // Lyricist
131+
lyrics: string; // Lyrics content
132+
albumArtist: string; // Album artist
133+
comment: string; // Comment
134134
}
135135
```
136136

@@ -152,16 +152,15 @@ console.log('Additional metadata:', metadata.additionalMetadata);
152152
```typescript
153153
interface Track {
154154
id: string;
155-
title: string; // Track title
156-
artist?: string; // Artist name
157-
artwork?: string; // Artwork file URI
158-
album?: string; // Album name
159-
lyrics?: string // Lyrics
160-
duration: number; // Duration in seconds
161-
url: string; // File URL or path
162-
createdAt?: number; // Date added (Unix timestamp)
163-
modifiedAt?: number; // Date modified (Unix timestamp)
164-
fileSize?: number; // File size in bytes
155+
title: string; // Track title
156+
artist: string; // Artist name
157+
artwork: string; // Artwork file URI
158+
album: string; // Album name
159+
duration: number; // Duration in seconds
160+
url: string; // File URL or path
161+
createdAt: number; // Date added (Unix timestamp)
162+
modifiedAt: number; // Date modified (Unix timestamp)
163+
fileSize: number; // File size in bytes
165164
}
166165
```
167166

README_ZH.md

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -112,25 +112,25 @@ interface TrackMetadata {
112112
id: string; // 曲目 ID
113113

114114
// audio header
115-
duration?: number; // 持续时间(秒)
116-
bitrate?: number; // 比特率(kbps)
117-
sampleRate?: number; // 采样率(Hz)
118-
channels?: number; // 通道数
119-
format?: string; // 音频格式
115+
duration: number; // 持续时间(秒)
116+
bitrate: number; // 比特率(kbps)
117+
sampleRate: number; // 采样率(Hz)
118+
channels: number; // 通道数
119+
format: string; // 音频格式
120120

121121
// tag info
122-
title?: string; // 曲目标题
123-
artist?: string; // 艺术家名称
124-
album?: string; // 专辑名称
125-
year?: number; // 发行年份
126-
genre?: string; // 音乐流派
127-
track?: number; // 曲目编号
128-
disc?: number; // 碟片编号
129-
composer?: string; // 作曲家
130-
lyricist?: string; // 作词家
131-
lyrics?: string; // 歌词内容
132-
albumArtist?: string; // 专辑艺术家
133-
comment?: string; // 注释
122+
title: string; // 曲目标题
123+
artist: string; // 艺术家名称
124+
album: string; // 专辑名称
125+
year: number; // 发行年份
126+
genre: string; // 音乐流派
127+
track: number; // 曲目编号
128+
disc: number; // 碟片编号
129+
composer: string; // 作曲家
130+
lyricist: string; // 作词家
131+
lyrics: string; // 歌词内容
132+
albumArtist: string; // 专辑艺术家
133+
comment: string; // 注释
134134
}
135135
```
136136

@@ -152,15 +152,15 @@ console.log('额外元数据:', metadata.additionalMetadata);
152152
```typescript
153153
interface Track {
154154
id: string;
155-
title: string; // 曲目标题
156-
artist?: string; // 艺术家名称
157-
artwork?: string; // 专辑封面 URI
158-
album?: string; // 专辑名称
159-
duration: number; // 持续时间(秒)
160-
url: string; // 文件 URL 或路径
161-
createdAt?: number; // 添加日期(Unix 时间戳)
162-
modifiedAt?: number; // 修改日期(Unix 时间戳)
163-
fileSize?: number; // 文件大小(字节)
155+
title: string; // 曲目标题
156+
artist: string; // 艺术家名称
157+
artwork: string; // 专辑封面 URI
158+
album: string; // 专辑名称
159+
duration: number; // 持续时间(秒)
160+
url: string; // 文件 URL 或路径
161+
createdAt: number; // 添加日期(Unix 时间戳)
162+
modifiedAt: number; // 修改日期(Unix 时间戳)
163+
fileSize: number; // 文件大小(字节)
164164
}
165165
```
166166

src/NativeMusicLibrary.ts

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -101,13 +101,13 @@ export interface Track {
101101
title: string;
102102

103103
/** Artist name */
104-
artist?: string;
104+
artist: string;
105105

106106
/** Track artwork (file URI) */
107-
artwork?: string;
107+
artwork: string;
108108

109109
/** Album name */
110-
album?: string;
110+
album: string;
111111

112112
/** Duration in seconds */
113113
duration: number;
@@ -116,10 +116,10 @@ export interface Track {
116116
url: string;
117117

118118
/** Date added to library (Unix timestamp, optional) */
119-
createdAt?: number;
119+
createdAt: number;
120120

121121
/** Date modified (Unix timestamp, optional) */
122-
modifiedAt?: number;
122+
modifiedAt: number;
123123

124124
/** File size in bytes */
125125
fileSize: number;
@@ -130,25 +130,25 @@ export interface TrackMetadata {
130130
id: string;
131131

132132
/** Audio header */
133-
duration?: number;
134-
bitrate?: number;
135-
sampleRate?: number;
136-
channels?: number;
137-
format?: string;
133+
duration: number; // in seconds
134+
bitrate: number; // in kbps
135+
sampleRate: number; // in Hz
136+
channels: number;
137+
format: string;
138138

139139
/** Tag info */
140-
title?: string;
141-
artist?: string;
142-
album?: string;
143-
year?: number;
144-
genre?: string;
145-
track?: number;
146-
disc?: number;
147-
composer?: string;
148-
lyricist?: string;
149-
lyrics?: string;
150-
albumArtist?: string;
151-
comment?: string;
140+
title: string;
141+
artist: string;
142+
album: string;
143+
year: number;
144+
genre: string;
145+
track: number;
146+
disc: number;
147+
composer: string;
148+
lyricist: string;
149+
lyrics: string;
150+
albumArtist: string;
151+
comment: string;
152152
}
153153

154154
export interface Album {

src/NativeMusicLibrary.web.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,23 @@ const MusicLibrary: Spec = {
6262
showWebWarning();
6363
return {
6464
id: trackId,
65+
duration: 0,
66+
bitrate: 0,
67+
sampleRate: 0,
68+
channels: 0,
69+
format: '',
70+
title: '',
71+
artist: '',
72+
album: '',
73+
year: 0,
74+
genre: '',
75+
track: 0,
76+
disc: 0,
77+
composer: '',
78+
lyricist: '',
79+
lyrics: '',
80+
albumArtist: '',
81+
comment: '',
6582
};
6683
},
6784
};

0 commit comments

Comments
 (0)