rekordbox-connect 1.2.4 → 1.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/db.d.ts CHANGED
@@ -8,8 +8,23 @@ export declare class RekordboxDb {
8
8
  open(): void;
9
9
  close(): void;
10
10
  loadTracks(maxRows?: number): RekordboxTracksPayload | undefined;
11
+ private loadNameLookup;
11
12
  loadPlaylists(): Playlist[] | undefined;
12
13
  loadPlaylistTracks(playlistId: string): PlaylistTrack[] | undefined;
14
+ /**
15
+ * Single-query equivalent of calling {@link loadPlaylistTracks} for every
16
+ * playlist. Returns a Map keyed by `PlaylistID` containing tracks in
17
+ * `TrackNo ASC` order.
18
+ *
19
+ * Performance note (verified 2026-05-06): doing the same JOIN shape as
20
+ * {@link loadPlaylistTracks} but without the WHERE clause is *slower*
21
+ * than calling per-playlist for a 1.5k-playlist library (7.4s vs 6.1s) —
22
+ * the planner's per-PlaylistID index seek beats a full scan with 5 LEFT
23
+ * JOINs. So this method runs a slim 3-column SELECT (no metadata joins)
24
+ * and joins against `loadTracks()` in JS. Caller passes the rows from
25
+ * the `tracks` event so we don't run two SELECTs.
26
+ */
27
+ loadAllPlaylistTracks(contentRows: Iterable<Record<string, unknown>>): Map<string, PlaylistTrack[]> | undefined;
13
28
  private createPlaylistEntry;
14
29
  createPlaylist(name: string, parentId?: string): Playlist | undefined;
15
30
  createFolder(name: string, parentId?: string): Playlist | undefined;
package/dist/db.js CHANGED
@@ -56,44 +56,89 @@ class RekordboxDb {
56
56
  if (!this.db)
57
57
  return;
58
58
  const limit = maxRows ?? DEFAULT_MAX_ROWS;
59
- // Query djmdContent with joined metadata (same structure as history query)
60
- const query = `
59
+ // Performance note (verified 2026-05-06 on a 115k-track library): the
60
+ // 6-LEFT-JOIN form was ~1.6s. Replacing it with a slim djmdContent
61
+ // SELECT + small lookup-table SELECTs + a JS-side join brings the
62
+ // whole stage to ~0.1s. The JOINs were forcing 6 index lookups per
63
+ // row (690k total) when the lookup tables fit easily in memory.
64
+ const contentSql = `
61
65
  SELECT
62
- c.ID AS id,
63
- c.FolderPath AS filePath,
64
- c.Title AS title,
65
- c.Subtitle AS subTitle,
66
- a.Name AS artist,
67
- c.ImagePath AS imagePath,
68
- c.BPM AS bpm,
69
- c.Rating AS rating,
70
- c.ReleaseDate AS releaseDate,
71
- c.Length AS length,
72
- c.ColorID AS colorId,
73
- c.Commnt AS comment,
74
- c.ISRC AS isrc,
75
- al.Name AS album,
76
- la.Name AS label,
77
- ge.Name AS genre,
78
- k.ScaleName AS key,
79
- rmx.Name AS remixer
80
- FROM ${CONTENT_TABLE} AS c
81
- LEFT JOIN djmdArtist AS a ON c.ArtistID = a.ID
82
- LEFT JOIN djmdArtist AS rmx ON c.RemixerID = rmx.ID
83
- LEFT JOIN djmdAlbum AS al ON c.AlbumID = al.ID
84
- LEFT JOIN djmdLabel AS la ON c.LabelID = la.ID
85
- LEFT JOIN djmdGenre AS ge ON c.GenreID = ge.ID
86
- LEFT JOIN djmdKey AS k ON c.KeyID = k.ID
66
+ ID AS id,
67
+ FolderPath AS filePath,
68
+ Title AS title,
69
+ Subtitle AS subTitle,
70
+ ArtistID AS artistId,
71
+ RemixerID AS remixerId,
72
+ AlbumID AS albumId,
73
+ LabelID AS labelId,
74
+ GenreID AS genreId,
75
+ KeyID AS keyId,
76
+ ImagePath AS imagePath,
77
+ BPM AS bpm,
78
+ Rating AS rating,
79
+ ReleaseDate AS releaseDate,
80
+ Length AS length,
81
+ ColorID AS colorId,
82
+ Commnt AS comment,
83
+ ISRC AS isrc
84
+ FROM ${CONTENT_TABLE}
87
85
  LIMIT @limit
88
86
  `;
89
87
  try {
90
- const rows = this.db.prepare(query).all({ limit });
88
+ const contentRows = this.db.prepare(contentSql).all({ limit });
89
+ const artists = this.loadNameLookup('djmdArtist', 'Name');
90
+ const albums = this.loadNameLookup('djmdAlbum', 'Name');
91
+ const labels = this.loadNameLookup('djmdLabel', 'Name');
92
+ const genres = this.loadNameLookup('djmdGenre', 'Name');
93
+ const keys = this.loadNameLookup('djmdKey', 'ScaleName');
94
+ const rows = new Array(contentRows.length);
95
+ for (let i = 0; i < contentRows.length; i++) {
96
+ const r = contentRows[i];
97
+ rows[i] = {
98
+ id: r.id,
99
+ filePath: r.filePath,
100
+ title: r.title,
101
+ subTitle: r.subTitle,
102
+ artist: r.artistId ? artists.get(r.artistId) ?? null : null,
103
+ imagePath: r.imagePath,
104
+ bpm: r.bpm,
105
+ rating: r.rating,
106
+ releaseDate: r.releaseDate,
107
+ length: r.length,
108
+ colorId: r.colorId,
109
+ comment: r.comment,
110
+ isrc: r.isrc,
111
+ album: r.albumId ? albums.get(r.albumId) ?? null : null,
112
+ label: r.labelId ? labels.get(r.labelId) ?? null : null,
113
+ genre: r.genreId ? genres.get(r.genreId) ?? null : null,
114
+ key: r.keyId ? keys.get(r.keyId) ?? null : null,
115
+ remixer: r.remixerId ? artists.get(r.remixerId) ?? null : null,
116
+ };
117
+ }
91
118
  return { dbPath: this.dbPath, count: rows.length, rows };
92
119
  }
93
120
  catch {
94
121
  return { dbPath: this.dbPath, count: 0, rows: [] };
95
122
  }
96
123
  }
124
+ loadNameLookup(table, nameCol) {
125
+ const map = new Map();
126
+ if (!this.db)
127
+ return map;
128
+ try {
129
+ const rows = this.db
130
+ .prepare(`SELECT ID, ${nameCol} AS name FROM ${table}`)
131
+ .all();
132
+ for (const r of rows) {
133
+ if (typeof r.name === 'string')
134
+ map.set(r.ID, r.name);
135
+ }
136
+ }
137
+ catch {
138
+ /* table missing or query failed — return whatever we have */
139
+ }
140
+ return map;
141
+ }
97
142
  loadPlaylists() {
98
143
  if (!this.db)
99
144
  return undefined;
@@ -152,6 +197,59 @@ class RekordboxDb {
152
197
  return [];
153
198
  }
154
199
  }
200
+ /**
201
+ * Single-query equivalent of calling {@link loadPlaylistTracks} for every
202
+ * playlist. Returns a Map keyed by `PlaylistID` containing tracks in
203
+ * `TrackNo ASC` order.
204
+ *
205
+ * Performance note (verified 2026-05-06): doing the same JOIN shape as
206
+ * {@link loadPlaylistTracks} but without the WHERE clause is *slower*
207
+ * than calling per-playlist for a 1.5k-playlist library (7.4s vs 6.1s) —
208
+ * the planner's per-PlaylistID index seek beats a full scan with 5 LEFT
209
+ * JOINs. So this method runs a slim 3-column SELECT (no metadata joins)
210
+ * and joins against `loadTracks()` in JS. Caller passes the rows from
211
+ * the `tracks` event so we don't run two SELECTs.
212
+ */
213
+ loadAllPlaylistTracks(contentRows) {
214
+ if (!this.db)
215
+ return undefined;
216
+ // Index the content metadata by ID once.
217
+ const byId = new Map();
218
+ for (const r of contentRows) {
219
+ const id = r.id;
220
+ if (typeof id === 'string' || typeof id === 'number') {
221
+ byId.set(String(id), r);
222
+ }
223
+ }
224
+ const query = `
225
+ SELECT
226
+ PlaylistID AS playlistId,
227
+ ContentID AS contentId,
228
+ TrackNo AS trackNo
229
+ FROM ${SONG_PLAYLIST_TABLE}
230
+ ORDER BY PlaylistID, TrackNo ASC
231
+ `;
232
+ try {
233
+ const rows = this.db.prepare(query).all();
234
+ const map = new Map();
235
+ for (const r of rows) {
236
+ const meta = byId.get(String(r.contentId));
237
+ if (!meta)
238
+ continue; // orphaned reference (rare)
239
+ const track = { ...meta, trackNo: r.trackNo };
240
+ let bucket = map.get(r.playlistId);
241
+ if (!bucket) {
242
+ bucket = [];
243
+ map.set(r.playlistId, bucket);
244
+ }
245
+ bucket.push(track);
246
+ }
247
+ return map;
248
+ }
249
+ catch {
250
+ return new Map();
251
+ }
252
+ }
155
253
  createPlaylistEntry(name, attribute, parentId) {
156
254
  if (!this.db || this.isReadonly)
157
255
  return undefined;
package/dist/db.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":";;;;;;AACA,sGAAkE;AAClE,6CAAyC;AACzC,sDAAyB;AAGzB,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAC9B,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAEjC,gCAAgC;AAChC,MAAM,aAAa,GAAG,iBAAiB,CAAC;AACxC,MAAM,aAAa,GAAG,aAAa,CAAC;AACpC,MAAM,cAAc,GAAG,cAAc,CAAC;AACtC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAE/C,MAAa,WAAW;IAItB,YACmB,MAAc,EACd,QAAgB,EACjC,WAAoB,IAAI;QAFP,WAAM,GAAN,MAAM,CAAQ;QACd,aAAQ,GAAR,QAAQ,CAAQ;QAGjC,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED,IAAI;QACF,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,IAAI,CAAC,iBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,CAAC,EAAE,GAAG,IAAI,yCAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAE9E,sBAAsB;QACtB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC3B,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAEzC,uEAAuE;QACvE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAExC,sBAAsB;QACtB,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,yDAAyD,CAC1D,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO;QACrB,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,sBAAsB;QACxB,CAAC;QACD,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;IACtB,CAAC;IAED,UAAU,CAAC,OAAgB;QACzB,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO;QAErB,MAAM,KAAK,GAAG,OAAO,IAAI,gBAAgB,CAAC;QAE1C,sEAAsE;QACtE,mEAAmE;QACnE,kEAAkE;QAClE,mEAAmE;QACnE,gEAAgE;QAChE,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;aAoBV,aAAa;;KAErB,CAAC;QAuBF,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAiB,CAAC;YAC/E,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACxD,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAEzD,MAAM,IAAI,GAA8B,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACtE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5C,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAE,CAAC;gBAC1B,IAAI,CAAC,CAAC,CAAC,GAAG;oBACR,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;oBAC3D,SAAS,EAAE,CAAC,CAAC,SAAS;oBACtB,GAAG,EAAE,CAAC,CAAC,GAAG;oBACV,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;oBACvD,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;oBACvD,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;oBACvD,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;oBAC/C,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;iBAC/D,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;QAC3D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACrD,CAAC;IACH,CAAC;IAEO,cAAc,CAAC,KAAa,EAAE,OAAe;QACnD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,GAAG,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE;iBACjB,OAAO,CAAC,cAAc,OAAO,iBAAiB,KAAK,EAAE,CAAC;iBACtD,GAAG,EAA2C,CAAC;YAClD,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;oBAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,6DAA6D;QAC/D,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,SAAS,CAAC;QAE/B,MAAM,KAAK,GAAG;;;aAGL,cAAc;;KAEtB,CAAC;QAEF,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,EAAgB,CAAC;QACpD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,UAAkB;QACnC,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,SAAS,CAAC;QAE/B,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;aAqBL,mBAAmB;aACnB,aAAa;;;;;;;;;KASrB,CAAC;QAEF,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,CAAoB,CAAC;QACvE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,qBAAqB,CACnB,WAA8C;QAE9C,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,SAAS,CAAC;QAE/B,yCAAyC;QACzC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAmC,CAAC;QACxD,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;YAChB,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;gBACrD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAG;;;;;aAKL,mBAAmB;;KAE3B,CAAC;QAEF,IAAI,CAAC;YAEH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,EAAW,CAAC;YACnD,MAAM,GAAG,GAAG,IAAI,GAAG,EAA2B,CAAC;YAC/C,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;gBAC3C,IAAI,CAAC,IAAI;oBAAE,SAAS,CAAC,4BAA4B;gBACjD,MAAM,KAAK,GAAG,EAAE,GAAI,IAAiC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;gBAC5E,IAAI,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;gBACnC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,MAAM,GAAG,EAAE,CAAC;oBACZ,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;gBAChC,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,GAAG,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,IAAY,EAAE,SAAiB,EAAE,QAAiB;QAC5E,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAElD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC5B,kCAAkC,cAAc,EAAE,CACnD,CAAC,GAAG,EAA2C,CAAC;YAEjD,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAC1C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxE,MAAM,EAAE,GAAG,IAAA,wBAAU,GAAE,CAAC;YAExB,MAAM,QAAQ,GAAa;gBACzB,EAAE,EAAE,EAAE;gBACN,GAAG,EAAE,OAAO;gBACZ,IAAI,EAAE,IAAI;gBACV,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,SAAS;gBACpB,QAAQ,EAAE,QAAQ,IAAI,IAAI;gBAC1B,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,GAAG;gBACf,UAAU,EAAE,GAAG;aAChB,CAAC;YAEF,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;sBACA,cAAc;;;;;;;;OAQ7B,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAElC,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,cAAc,CAAC,IAAY,EAAE,QAAiB;QAC5C,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED,YAAY,CAAC,IAAY,EAAE,QAAiB;QAC1C,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED,cAAc,CAAC,UAAkB;QAC/B,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAE9C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACzB,yBAAyB,cAAc,yBAAyB,CACjE,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,CAAsC,CAAC;YAE3D,IAAI,CAAC,GAAG;gBAAE,OAAO,KAAK,CAAC;YAEvB,uCAAuC;YACvC,IAAI,GAAG,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC9B,kBAAkB,cAAc,+BAA+B,CAChE,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,CAAqB,CAAC;gBAE1C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,KAAK,CAAC;YACxC,CAAC;YAED,oDAAoD;YACpD,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,eAAe,mBAAmB,iCAAiC,CACpE,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;YAEtB,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,eAAe,cAAc,yBAAyB,CACvD,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;YAEtB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,cAAc,CAAC,UAAkB,EAAE,IAAY;QAC7C,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAE9C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxE,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC5B,UAAU,cAAc,6DAA6D,CACtF,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;YAEjC,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,UAAkB,EAAE,SAAiB;QACtD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAElD,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAChC,0CAA0C,mBAAmB,iCAAiC,CAC/F,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,CAA8C,CAAC;YAEnE,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACtD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxE,MAAM,EAAE,GAAG,IAAA,wBAAU,GAAE,CAAC;YAExB,MAAM,MAAM,GAAuB;gBACjC,EAAE,EAAE,EAAE;gBACN,UAAU,EAAE,UAAU;gBACtB,SAAS,EAAE,SAAS;gBACpB,OAAO,EAAE,WAAW;gBACpB,IAAI,EAAE,EAAE;gBACR,cAAc,EAAE,CAAC;gBACjB,oBAAoB,EAAE,CAAC;gBACvB,gBAAgB,EAAE,CAAC;gBACnB,eAAe,EAAE,CAAC;gBAClB,GAAG,EAAE,CAAC;gBACN,YAAY,EAAE,CAAC;gBACf,UAAU,EAAE,GAAG;gBACf,UAAU,EAAE,GAAG;aAChB,CAAC;YAEF,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;sBACA,mBAAmB;;;;;;;;;OASlC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAEf,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,uBAAuB,CAAC,UAAkB,EAAE,SAAiB;QAC3D,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAE9C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;gBACtC,MAAM,MAAM,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAC7B,eAAe,mBAAmB,4DAA4D,CAC/F,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;gBAEjC,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC;oBAAE,OAAO,KAAK,CAAC;gBAEvC,8DAA8D;gBAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAChC,kBAAkB,mBAAmB,sDAAsD,CAC5F,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,CAAqB,CAAC;gBAE1C,MAAM,UAAU,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CACjC,UAAU,mBAAmB,wCAAwC,CACtE,CAAC;gBAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC1C,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC1D,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,OAAO,MAAM,EAAE,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,oBAAoB,CAAC,UAAkB,EAAE,SAAiB,EAAE,UAAkB;QAC5E,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAE9C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;gBACvC,kCAAkC;gBAClC,MAAM,MAAM,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAC7B,kBAAkB,mBAAmB,4DAA4D,CAClG,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAA+B,CAAC;gBAE/D,IAAI,CAAC,MAAM;oBAAE,OAAO,KAAK,CAAC;gBAE1B,gCAAgC;gBAChC,MAAM,MAAM,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAC7B,kBAAkB,mBAAmB,oEAAoE,CAC1G,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAqB,CAAC;gBAEzD,uDAAuD;gBACvD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;gBACvE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;gBAEpC,kBAAkB;gBAClB,MAAM,UAAU,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CACjC,UAAU,mBAAmB,wCAAwC,CACtE,CAAC;gBAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACvC,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACvD,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,OAAO,OAAO,EAAE,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,SAAS,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,sCAAsC,aAAa,EAAE,CAAC,CAAC,GAAG,EAAuC,CAAC;YAC9H,OAAO,GAAG,EAAE,QAAQ,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,cAAc,CAAC,UAA8B,EAAE,OAAgB;QAC7D,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,SAAS,CAAC;QAE/B,MAAM,KAAK,GAAG,OAAO,IAAI,oBAAoB,CAAC;QAE9C,wDAAwD;QACxD,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;aAsBL,aAAa;aACb,aAAa;;;;;;;;;;KAUrB,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE;iBACjB,OAAO,CAAC,KAAK,CAAC;iBACd,GAAG,CAAC,EAAE,KAAK,EAAE,UAAU,IAAI,CAAC,EAAE,KAAK,EAAE,CAA8B,CAAC;YAEvE,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAS,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;YAEtF,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACtE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;QAC5E,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAElD,IAAI,CAAC;YACH,qCAAqC;YACrC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;eAgBX,aAAa;;;OAGrB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,EAAmC,CAAC;YACnF,IAAI,CAAC,MAAM;gBAAE,OAAO,SAAS,CAAC;YAE9B,mBAAmB;YACnB,MAAM,WAAW,GAAG,eAAe,aAAa,uBAAuB,CAAC;YACxE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAE1D,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAC,MAAyB;QACnC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAE9C,IAAI,CAAC;YACH,MAAM,WAAW,GAAG;sBACJ,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+B5B,CAAC;YAEF,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzC,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF;AA1oBD,kCA0oBC"}
@@ -33,6 +33,15 @@ export declare class RekordboxConnect extends RekordboxConnect_base {
33
33
  pushHistory(record: SongHistoryRecord): boolean;
34
34
  loadPlaylists(): Playlist[] | undefined;
35
35
  loadPlaylistTracks(playlistId: string): PlaylistTrack[] | undefined;
36
+ /**
37
+ * Single-query equivalent of calling {@link loadPlaylistTracks} for every
38
+ * playlist. Returns a Map keyed by `PlaylistID`. See db-layer docstring.
39
+ *
40
+ * Caller must pass the `rows` from the most recent `tracks` event — they
41
+ * provide the metadata (title/artist/etc.) that the slim SQL query
42
+ * deliberately omits.
43
+ */
44
+ loadAllPlaylistTracks(contentRows: Iterable<Record<string, unknown>>): Map<string, PlaylistTrack[]> | undefined;
36
45
  createPlaylist(name: string, parentId?: string): Playlist | undefined;
37
46
  createFolder(name: string, parentId?: string): Playlist | undefined;
38
47
  deletePlaylist(playlistId: string): boolean;
@@ -31,6 +31,9 @@ class RekordboxConnect extends node_events_1.default {
31
31
  this.lastHistoryRowId = this.db.seedHistoryCursor();
32
32
  this.logger.info("Connected to database: %s", this.dbPath);
33
33
  this.emit("ready", { dbPath: this.dbPath });
34
+ const tracks = this.db.loadTracks(Number.MAX_SAFE_INTEGER);
35
+ if (tracks)
36
+ this.emit("tracks", tracks);
34
37
  this.timer = setInterval(() => this.pollOnce(), this.pollIntervalMs);
35
38
  }
36
39
  catch (err) {
@@ -112,6 +115,19 @@ class RekordboxConnect extends node_events_1.default {
112
115
  return undefined;
113
116
  return this.db.loadPlaylistTracks(playlistId);
114
117
  }
118
+ /**
119
+ * Single-query equivalent of calling {@link loadPlaylistTracks} for every
120
+ * playlist. Returns a Map keyed by `PlaylistID`. See db-layer docstring.
121
+ *
122
+ * Caller must pass the `rows` from the most recent `tracks` event — they
123
+ * provide the metadata (title/artist/etc.) that the slim SQL query
124
+ * deliberately omits.
125
+ */
126
+ loadAllPlaylistTracks(contentRows) {
127
+ if (!this.db)
128
+ return undefined;
129
+ return this.db.loadAllPlaylistTracks(contentRows);
130
+ }
115
131
  createPlaylist(name, parentId) {
116
132
  if (!this.db || !this.dangerouslyModifyDatabase)
117
133
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"rekordboxConnect.js","sourceRoot":"","sources":["../src/rekordboxConnect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rekordboxConnect.js","sourceRoot":"","sources":["../src/rekordboxConnect.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"root":["../src/db.ts","../src/detectDb.ts","../src/index.ts","../src/rekordboxConnect.ts","../src/types.ts","../src/types/logger.ts"],"version":"5.9.3"}
1
+ {"root":["../src/db.ts","../src/detectdb.ts","../src/index.ts","../src/rekordboxconnect.ts","../src/types.ts","../src/types/logger.ts"],"version":"5.9.3"}
package/package.json CHANGED
@@ -1,8 +1,16 @@
1
1
  {
2
2
  "name": "rekordbox-connect",
3
- "version": "1.2.4",
3
+ "version": "1.2.6",
4
4
  "description": "Library to read the Rekordbox database and emit change events",
5
5
  "license": "MIT",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/chrisle/rekordbox-connect.git"
9
+ },
10
+ "homepage": "https://github.com/chrisle/rekordbox-connect",
11
+ "bugs": {
12
+ "url": "https://github.com/chrisle/rekordbox-connect/issues"
13
+ },
6
14
  "private": false,
7
15
  "type": "commonjs",
8
16
  "main": "dist/index.js",