@uimaxbai/am-lyrics 1.4.0 → 1.5.0
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/src/AmLyrics.d.ts +27 -2
- package/dist/src/AmLyrics.d.ts.map +1 -1
- package/dist/src/am-lyrics.js +967 -354
- package/dist/src/am-lyrics.js.map +1 -1
- package/dist/src/react.js +967 -354
- package/dist/src/react.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/AmLyrics.ts +1134 -438
package/dist/src/AmLyrics.d.ts
CHANGED
|
@@ -48,6 +48,7 @@ export declare class AmLyrics extends LitElement {
|
|
|
48
48
|
private isClickSeeking;
|
|
49
49
|
private clickSeekTimeout?;
|
|
50
50
|
private cachedLyricsLines;
|
|
51
|
+
private cachedLineArray;
|
|
51
52
|
private lineElementCache;
|
|
52
53
|
private gapElementCache;
|
|
53
54
|
private cachedAllGaps;
|
|
@@ -59,11 +60,13 @@ export declare class AmLyrics extends LitElement {
|
|
|
59
60
|
private scrollAnimationState;
|
|
60
61
|
private currentScrollOffset;
|
|
61
62
|
private animatingLines;
|
|
62
|
-
private scrollUnlockTimeout?;
|
|
63
63
|
private scrollAnimationTimeout?;
|
|
64
|
+
private scrollUnlockTimeout?;
|
|
64
65
|
private fetchAbortController?;
|
|
65
66
|
private lastActiveIndex;
|
|
66
67
|
private visibleLineIds;
|
|
68
|
+
private visibilityObserver?;
|
|
69
|
+
private cachedScrollPaddingTop;
|
|
67
70
|
private preActiveLineElements;
|
|
68
71
|
private positionedLineElements;
|
|
69
72
|
private activeGapLineElements;
|
|
@@ -80,6 +83,7 @@ export declare class AmLyrics extends LitElement {
|
|
|
80
83
|
private resolveSongMetadata;
|
|
81
84
|
private static parseQueryMetadata;
|
|
82
85
|
private static searchLyricsPlusCatalog;
|
|
86
|
+
private static fetchLyricsFromBiniLyrics;
|
|
83
87
|
private static fetchLyricsFromYouLyPlus;
|
|
84
88
|
/**
|
|
85
89
|
* Parse LRC subtitle format into LyricsLine[].
|
|
@@ -92,6 +96,7 @@ export declare class AmLyrics extends LitElement {
|
|
|
92
96
|
*/
|
|
93
97
|
private static fetchLyricsFromLrclib;
|
|
94
98
|
private static fetchLyricsFromGenius;
|
|
99
|
+
private static fetchLyricsFromUnison;
|
|
95
100
|
private static calculateLineAlignments;
|
|
96
101
|
private static parseTTML;
|
|
97
102
|
private static convertKPoeLyrics;
|
|
@@ -108,6 +113,10 @@ export declare class AmLyrics extends LitElement {
|
|
|
108
113
|
/**
|
|
109
114
|
* Handle scrolling when active line indices change.
|
|
110
115
|
* Called imperatively from _onTimeChanged instead of from updated().
|
|
116
|
+
*
|
|
117
|
+
* Uses predictive scroll like YouLyPlus: computes a scrollLookAheadMs based
|
|
118
|
+
* on the gap to the next line, finds the primary line at predictiveTime,
|
|
119
|
+
* and scrolls with a duration matching the lookahead.
|
|
111
120
|
*/
|
|
112
121
|
private _handleActiveLineScroll;
|
|
113
122
|
private _textWidthCanvas;
|
|
@@ -125,9 +134,18 @@ export declare class AmLyrics extends LitElement {
|
|
|
125
134
|
private static getGapLoopDelay;
|
|
126
135
|
private clearPreActiveClasses;
|
|
127
136
|
private getPrimaryActiveLineIndex;
|
|
137
|
+
private getPrimaryScrollLineIndex;
|
|
138
|
+
private getOverlapClusterForActiveIndices;
|
|
128
139
|
private focusLine;
|
|
129
140
|
private setUserScrolling;
|
|
130
141
|
private handleUserScroll;
|
|
142
|
+
private clearPastLineHighlights;
|
|
143
|
+
/**
|
|
144
|
+
* Find the first (lowest-index) line whose raw time range contains `timeMs`.
|
|
145
|
+
* Uses a stable forward scan so overlapping ranges always return the same
|
|
146
|
+
* line, preventing primary-target jitter that causes scroll glitches.
|
|
147
|
+
*/
|
|
148
|
+
private getLineIndexAtTime;
|
|
131
149
|
private findActiveLineIndices;
|
|
132
150
|
private findInstrumentalGapAt;
|
|
133
151
|
/**
|
|
@@ -168,9 +186,16 @@ export declare class AmLyrics extends LitElement {
|
|
|
168
186
|
*/
|
|
169
187
|
private static resetSyllable;
|
|
170
188
|
/**
|
|
171
|
-
* Reset all syllables in a line
|
|
189
|
+
* Reset all syllables in a line — batches deferred cleanup into a single rAF
|
|
172
190
|
*/
|
|
173
191
|
private static resetSyllables;
|
|
192
|
+
/**
|
|
193
|
+
* Gentle reset for normal playback: remove highlight/finished classes
|
|
194
|
+
* without forcing inline styles. Lets CSS transition fade syllables
|
|
195
|
+
* back to secondary colour smoothly.
|
|
196
|
+
*/
|
|
197
|
+
private static unfinishSyllables;
|
|
198
|
+
private static finishSyllablesUpToTime;
|
|
174
199
|
/**
|
|
175
200
|
* Update syllables based on current time
|
|
176
201
|
* Uses DOM caching and pre-highlight reset for smooth transitions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AmLyrics.d.ts","sourceRoot":"","sources":["../../src/AmLyrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAO,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"AmLyrics.d.ts","sourceRoot":"","sources":["../../src/AmLyrics.ts"],"names":[],"mappings":"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"}
|