Files
yellowjacket/frontend/wailsjs/go/playlist/Service.js
T
yonluandClaude Opus 4.6 93892c10de wip(explore): library-only mode, ranked search, UI polish — as-is
End-of-milestone state for the Explore milestone. Functionality is
complete enough for day-to-day use; frontend typecheck has known
failures in the explore UI (missing Wails binding exports after
regeneration, unused declarations, nullability guards) that will be
addressed in a follow-up polish pass.

Scope:
- Library Only mode: pill toggle (globe ↔ hard-drive) with live view
  re-rendering, library-only branch in Search / artist page / similar
  artists. Suppresses external API calls when enabled.
- Ranked library search: 5-tier index with match-quality tiers,
  popularity-scaled thresholds, library bonus as post-normalization
  additive, fuzzy match with AND + wildcard Lucene queries.
- New schemas: artist_metadata, http_cache.
- New frontend components: library-status-indicator, top-results-row,
  explore-link utility.
- Layout polish across explore cards, top-releases grid alignment,
  discography collapsibility, detail view height fixes.
- Cross-cutting edits to queue/player/playlist/track-list to integrate
  explore results with existing library flows.

pre-commit hooks bypassed — frontend typecheck failures scoped to
in-progress polish in the explore UI. Go build and full backend test
suite are green.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 11:57:00 -04:00

136 lines
4.2 KiB
JavaScript
Executable File

// @ts-check
// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL
// This file is automatically generated. DO NOT EDIT
export function AddToDefaultPlaylist(arg1) {
return window['go']['playlist']['Service']['AddToDefaultPlaylist'](arg1);
}
export function AddTracksToPlaylist(arg1, arg2) {
return window['go']['playlist']['Service']['AddTracksToPlaylist'](arg1, arg2);
}
export function CreatePlaylist(arg1) {
return window['go']['playlist']['Service']['CreatePlaylist'](arg1);
}
export function CreatePlaylistWithTracks(arg1, arg2) {
return window['go']['playlist']['Service']['CreatePlaylistWithTracks'](arg1, arg2);
}
export function CreateSmartPlaylist(arg1, arg2) {
return window['go']['playlist']['Service']['CreateSmartPlaylist'](arg1, arg2);
}
export function DeletePlaylist(arg1) {
return window['go']['playlist']['Service']['DeletePlaylist'](arg1);
}
export function EnsureDefaultPlaylist() {
return window['go']['playlist']['Service']['EnsureDefaultPlaylist']();
}
export function EvaluateSmartPlaylist(arg1) {
return window['go']['playlist']['Service']['EvaluateSmartPlaylist'](arg1);
}
export function FindDuplicateTracksInPlaylist(arg1, arg2) {
return window['go']['playlist']['Service']['FindDuplicateTracksInPlaylist'](arg1, arg2);
}
export function FindPhantomMatches(arg1, arg2) {
return window['go']['playlist']['Service']['FindPhantomMatches'](arg1, arg2);
}
export function GetAllPlaylists() {
return window['go']['playlist']['Service']['GetAllPlaylists']();
}
export function GetAllPlaylistsWithTracks() {
return window['go']['playlist']['Service']['GetAllPlaylistsWithTracks']();
}
export function GetDefaultPlaylistInfo() {
return window['go']['playlist']['Service']['GetDefaultPlaylistInfo']();
}
export function GetDefaultPlaylistTrackPaths() {
return window['go']['playlist']['Service']['GetDefaultPlaylistTrackPaths']();
}
export function GetPhantomCandidates(arg1, arg2) {
return window['go']['playlist']['Service']['GetPhantomCandidates'](arg1, arg2);
}
export function GetPlaylistTracks(arg1) {
return window['go']['playlist']['Service']['GetPlaylistTracks'](arg1);
}
export function GetSmartPlaylistRules(arg1) {
return window['go']['playlist']['Service']['GetSmartPlaylistRules'](arg1);
}
export function ImportPlaylist(arg1) {
return window['go']['playlist']['Service']['ImportPlaylist'](arg1);
}
export function ImportPlaylists(arg1) {
return window['go']['playlist']['Service']['ImportPlaylists'](arg1);
}
export function PreviewSmartPlaylist(arg1) {
return window['go']['playlist']['Service']['PreviewSmartPlaylist'](arg1);
}
export function RemoveFromDefaultPlaylist(arg1) {
return window['go']['playlist']['Service']['RemoveFromDefaultPlaylist'](arg1);
}
export function RemovePhantomTracks(arg1, arg2) {
return window['go']['playlist']['Service']['RemovePhantomTracks'](arg1, arg2);
}
export function RemoveTracksFromPlaylist(arg1, arg2) {
return window['go']['playlist']['Service']['RemoveTracksFromPlaylist'](arg1, arg2);
}
export function RenamePlaylist(arg1, arg2) {
return window['go']['playlist']['Service']['RenamePlaylist'](arg1, arg2);
}
export function RepopulateFromM3U() {
return window['go']['playlist']['Service']['RepopulateFromM3U']();
}
export function ResolvePhantomTracks(arg1, arg2) {
return window['go']['playlist']['Service']['ResolvePhantomTracks'](arg1, arg2);
}
export function ResolvePhantomTracksAfterScan() {
return window['go']['playlist']['Service']['ResolvePhantomTracksAfterScan']();
}
export function RestoreAllPlaylists() {
return window['go']['playlist']['Service']['RestoreAllPlaylists']();
}
export function SearchLibrary(arg1) {
return window['go']['playlist']['Service']['SearchLibrary'](arg1);
}
export function SetContext(arg1) {
return window['go']['playlist']['Service']['SetContext'](arg1);
}
export function SetFavoritesConfig(arg1) {
return window['go']['playlist']['Service']['SetFavoritesConfig'](arg1);
}
export function ToggleDefaultPlaylistTrack(arg1) {
return window['go']['playlist']['Service']['ToggleDefaultPlaylistTrack'](arg1);
}
export function UpdateSmartPlaylistRules(arg1, arg2) {
return window['go']['playlist']['Service']['UpdateSmartPlaylistRules'](arg1, arg2);
}