···33## Next
44- Add drag-and-drop, selection and context menus in queue panel
55- Add warning when adding duplicate songs to a playlist
66+- Rewritten iTunes import, should be much more reliabile
77+- iTunes import no longer overwrites the existing library
68- Scroll sidebar to opened playlist
79- Improve queue panel performance
810- Don't clear selection unnecessarily
+8-1
ferrum-addon/addon.d.ts
···1818 tracksCount: number
1919 playlistsCount: number
2020}
2121-export function import_itunes(path: string, tracksDir: string): Promise<ImportStatus>
2221export function copyFile(from: string, to: string): void
2322export function atomicFileSave(filePath: string, content: string): void
2323+export const enum Version {
2424+ V1 = 1
2525+}
2426export interface Track {
2527 size: number
2628 duration: number
···169171export function set_image_data(index: number, bytes: JsArrayBuffer, mimeType: string): void
170172export function remove_image(index: number): void
171173export function update_track_info(trackId: string, info: TrackMd): void
174174+export class ItunesImport {
175175+ static new(): ItunesImport
176176+ start(path: string, tracksDir: string): Promise<ImportStatus>
177177+ finish(): void
178178+}
+4-1
src-native/data.rs
···6161 }
6262 pub fn load(is_dev: bool) -> UniResult<Data> {
6363 let paths = if is_dev {
6464- let appdata_dir = env::current_dir().unwrap().join("appdata");
6464+ let appdata_dir = env::current_dir()
6565+ .unwrap()
6666+ .join("src-native")
6767+ .join("appdata");
6568 let library_dir = appdata_dir.join("Library");
6669 Paths {
6770 library_dir: library_dir.clone(),