@applemusic-like-lyrics/react-full 0.3.1 → 0.4.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.
@@ -1,13 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  //#region \0rolldown/runtime.js
3
- globalThis.jotaiAtomCache = globalThis.jotaiAtomCache || {
4
- cache: /* @__PURE__ */ new Map(),
5
- get(name, inst) {
6
- if (this.cache.has(name)) return this.cache.get(name);
7
- this.cache.set(name, inst);
8
- return inst;
9
- }
10
- };
11
3
  var __create = Object.create;
12
4
  var __defProp = Object.defineProperty;
13
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -2060,12 +2052,12 @@ const ToggleIconButton = (0, react.memo)((t0) => {
2060
2052
  return t3;
2061
2053
  });
2062
2054
  const PREBUILT_ICONS_MAP = {
2063
- [PrebuiltToggleIconButtonType.Lyrics]: [ForwardRef$20, ForwardRef$19],
2064
- [PrebuiltToggleIconButtonType.Playlist]: [ForwardRef$18, ForwardRef$17],
2065
- [PrebuiltToggleIconButtonType.Repeat]: [ForwardRef$16, ForwardRef$15],
2066
- [PrebuiltToggleIconButtonType.Shuffle]: [ForwardRef$14, ForwardRef$13],
2067
- [PrebuiltToggleIconButtonType.Star]: [ForwardRef$12, ForwardRef$11],
2068
- [PrebuiltToggleIconButtonType.AirPlay]: [ForwardRef$21, ForwardRef$21]
2055
+ ["lyrics"]: [ForwardRef$20, ForwardRef$19],
2056
+ ["playlist"]: [ForwardRef$18, ForwardRef$17],
2057
+ ["repeat"]: [ForwardRef$16, ForwardRef$15],
2058
+ ["shuffle"]: [ForwardRef$14, ForwardRef$13],
2059
+ ["star"]: [ForwardRef$12, ForwardRef$11],
2060
+ ["airplay"]: [ForwardRef$21, ForwardRef$21]
2069
2061
  };
2070
2062
  const PrebuiltToggleIconButton = (0, react.memo)((t0) => {
2071
2063
  const $ = (0, react_compiler_runtime.c)(15);
@@ -2548,7 +2540,6 @@ let VerticalCoverLayout = /* @__PURE__ */ function(VerticalCoverLayout) {
2548
2540
  */
2549
2541
  let LyricPlayerImplementation = /* @__PURE__ */ function(LyricPlayerImplementation) {
2550
2542
  LyricPlayerImplementation["Dom"] = "dom";
2551
- LyricPlayerImplementation["DomSlim"] = "dom-slim";
2552
2543
  return LyricPlayerImplementation;
2553
2544
  }({});
2554
2545
  /**
@@ -2566,7 +2557,6 @@ let LyricSizePreset = /* @__PURE__ */ function(LyricSizePreset) {
2566
2557
  }({});
2567
2558
  const getInitialPlayerImplementation = () => {
2568
2559
  switch (localStorage.getItem("amll-react-full.lyricPlayerImplementation")) {
2569
- case LyricPlayerImplementation.DomSlim: return { lyricPlayer: _applemusic_like_lyrics_core.DomSlimLyricPlayer };
2570
2560
  default: return { lyricPlayer: _applemusic_like_lyrics_core.DomLyricPlayer };
2571
2561
  }
2572
2562
  };
@@ -2665,12 +2655,12 @@ const lyricLetterSpacingAtom = globalThis.jotaiAtomCache.get("/home/runner/work/
2665
2655
  * @default LyricSizePreset.Medium
2666
2656
  */
2667
2657
  lyricLetterSpacingAtom.debugLabel = "lyricLetterSpacingAtom";
2668
- const lyricSizePresetAtom = globalThis.jotaiAtomCache.get("/home/runner/work/applemusic-like-lyrics/applemusic-like-lyrics/packages/react-full/src/states/configAtoms.ts/lyricSizePresetAtom", (0, jotai_utils.atomWithStorage)("amll-react-full.lyricSizePreset", LyricSizePreset.Medium));
2658
+ const lyricSizePresetAtom = globalThis.jotaiAtomCache.get("/home/runner/work/applemusic-like-lyrics/applemusic-like-lyrics/packages/react-full/src/states/configAtoms.ts/lyricSizePresetAtom", (0, jotai_utils.atomWithStorage)("amll-react-full.lyricSizePreset", "medium"));
2669
2659
  /**
2670
2660
  * 播放控制组件的显示类型,即歌曲信息下方的组件
2671
2661
  */
2672
2662
  lyricSizePresetAtom.debugLabel = "lyricSizePresetAtom";
2673
- const playerControlsTypeAtom = globalThis.jotaiAtomCache.get("/home/runner/work/applemusic-like-lyrics/applemusic-like-lyrics/packages/react-full/src/states/configAtoms.ts/playerControlsTypeAtom", (0, jotai_utils.atomWithStorage)("amll-react-full.playerControlsType", PlayerControlsType.Controls));
2663
+ const playerControlsTypeAtom = globalThis.jotaiAtomCache.get("/home/runner/work/applemusic-like-lyrics/applemusic-like-lyrics/packages/react-full/src/states/configAtoms.ts/playerControlsTypeAtom", (0, jotai_utils.atomWithStorage)("amll-react-full.playerControlsType", "controls"));
2674
2664
  /**
2675
2665
  * 是否显示歌曲名称
2676
2666
  * @default true
@@ -2682,7 +2672,7 @@ const showMusicNameAtom = globalThis.jotaiAtomCache.get("/home/runner/work/apple
2682
2672
  * @default VerticalCoverLayout.Auto
2683
2673
  */
2684
2674
  showMusicNameAtom.debugLabel = "showMusicNameAtom";
2685
- const verticalCoverLayoutAtom = globalThis.jotaiAtomCache.get("/home/runner/work/applemusic-like-lyrics/applemusic-like-lyrics/packages/react-full/src/states/configAtoms.ts/verticalCoverLayoutAtom", (0, jotai_utils.atomWithStorage)("amll-react-full.verticalCoverLayout", VerticalCoverLayout.Auto));
2675
+ const verticalCoverLayoutAtom = globalThis.jotaiAtomCache.get("/home/runner/work/applemusic-like-lyrics/applemusic-like-lyrics/packages/react-full/src/states/configAtoms.ts/verticalCoverLayoutAtom", (0, jotai_utils.atomWithStorage)("amll-react-full.verticalCoverLayout", "auto"));
2686
2676
  /**
2687
2677
  * 是否显示歌曲作者
2688
2678
  * @default true
@@ -2808,7 +2798,7 @@ const isShuffleActiveAtom = globalThis.jotaiAtomCache.get("/home/runner/work/app
2808
2798
  * 当前的重复播放模式
2809
2799
  */
2810
2800
  isShuffleActiveAtom.debugLabel = "isShuffleActiveAtom";
2811
- const repeatModeAtom = globalThis.jotaiAtomCache.get("/home/runner/work/applemusic-like-lyrics/applemusic-like-lyrics/packages/react-full/src/states/controlsAtoms.ts/repeatModeAtom", (0, jotai.atom)(RepeatMode.Off));
2801
+ const repeatModeAtom = globalThis.jotaiAtomCache.get("/home/runner/work/applemusic-like-lyrics/applemusic-like-lyrics/packages/react-full/src/states/controlsAtoms.ts/repeatModeAtom", (0, jotai.atom)("off"));
2812
2802
  /**
2813
2803
  * 随机按钮是否可用
2814
2804
  */
@@ -2919,7 +2909,7 @@ const musicLyricLinesAtom = globalThis.jotaiAtomCache.get("/home/runner/work/app
2919
2909
  */
2920
2910
  musicLyricLinesAtom.debugLabel = "musicLyricLinesAtom";
2921
2911
  const musicQualityAtom = globalThis.jotaiAtomCache.get("/home/runner/work/applemusic-like-lyrics/applemusic-like-lyrics/packages/react-full/src/states/dataAtoms.ts/musicQualityAtom", (0, jotai.atom)({
2922
- type: AudioQualityType.None,
2912
+ type: "none",
2923
2913
  codec: "unknown",
2924
2914
  channels: 2,
2925
2915
  sampleRate: 44100,
@@ -2963,10 +2953,6 @@ var index_module_default = {
2963
2953
  };
2964
2954
  //#endregion
2965
2955
  //#region src/components/PrebuiltLyricPlayer/index.tsx
2966
- /**
2967
- * @fileoverview
2968
- * 已经部署好所有组件的歌词播放器组件,在正确设置所有的 Jotai 状态后可以开箱即用
2969
- */
2970
2956
  globalThis.jotaiAtomCache = globalThis.jotaiAtomCache || {
2971
2957
  cache: /* @__PURE__ */ new Map(),
2972
2958
  get(name, inst) {
@@ -3059,11 +3045,11 @@ const PrebuiltMediaButtons = (t0) => {
3059
3045
  if ($[1] !== currentRepeatMode) {
3060
3046
  t2 = () => {
3061
3047
  switch (currentRepeatMode) {
3062
- case RepeatMode.One: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ForwardRef$2, {
3048
+ case "one": return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ForwardRef$2, {
3063
3049
  color: "#ffffffff",
3064
3050
  style: iconStyle
3065
3051
  });
3066
- case RepeatMode.All: return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ForwardRef$3, {
3052
+ case "all": return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ForwardRef$3, {
3067
3053
  color: "#ffffffff",
3068
3054
  style: iconStyle
3069
3055
  });
@@ -3368,18 +3354,18 @@ const PrebuiltProgressBar = react.default.memo(() => {
3368
3354
  });
3369
3355
  function getLyricFontSizeFromPreset(preset) {
3370
3356
  switch (preset) {
3371
- case LyricSizePreset.Tiny: return "max(max(2.5vh, 1.25vw), 10px)";
3372
- case LyricSizePreset.ExtraSmall: return "max(max(3vh, 1.5vw), 10px)";
3373
- case LyricSizePreset.Small: return "max(max(4vh, 2vw), 12px)";
3374
- case LyricSizePreset.Large: return "max(max(6vh, 3vw), 16px)";
3375
- case LyricSizePreset.ExtraLarge: return "max(max(7vh, 3.5vw), 18px)";
3376
- case LyricSizePreset.Huge: return "max(max(8vh, 4vw), 20px)";
3357
+ case "tiny": return "max(max(2.5vh, 1.25vw), 10px)";
3358
+ case "extra-small": return "max(max(3vh, 1.5vw), 10px)";
3359
+ case "small": return "max(max(4vh, 2vw), 12px)";
3360
+ case "large": return "max(max(6vh, 3vw), 16px)";
3361
+ case "extra-large": return "max(max(7vh, 3.5vw), 18px)";
3362
+ case "huge": return "max(max(8vh, 4vw), 20px)";
3377
3363
  default: return "max(max(5vh, 2.5vw), 14px)";
3378
3364
  }
3379
3365
  }
3380
3366
  const PrebuiltCoreLyricPlayer = (t0) => {
3381
- const $ = (0, react_compiler_runtime.c)(35);
3382
- const { alignPosition, alignAnchor, bottomLine } = t0;
3367
+ const $ = (0, react_compiler_runtime.c)(36);
3368
+ const { alignPosition, alignAnchor, bottomLine, optimizeOptions } = t0;
3383
3369
  const amllPlayerRef = (0, react.useRef)(null);
3384
3370
  const musicIsPlaying = (0, jotai.useAtomValue)(musicPlayingAtom);
3385
3371
  const lyricLines = (0, jotai.useAtomValue)(musicLyricLinesAtom);
@@ -3476,7 +3462,7 @@ const PrebuiltCoreLyricPlayer = (t0) => {
3476
3462
  $[18] = t11;
3477
3463
  } else t11 = $[18];
3478
3464
  let t12;
3479
- if ($[19] !== alignAnchor || $[20] !== alignPosition || $[21] !== bottomLine || $[22] !== enableLyricLineBlurEffect || $[23] !== enableLyricLineScaleEffect || $[24] !== enableLyricLineSpringAnimation || $[25] !== lyricPlayerImplementation || $[26] !== lyricWordFadeWidth || $[27] !== musicIsPlaying || $[28] !== musicPlayingPosition || $[29] !== processedLyricLines || $[30] !== t10 || $[31] !== t11 || $[32] !== t8 || $[33] !== t9) {
3465
+ if ($[19] !== alignAnchor || $[20] !== alignPosition || $[21] !== bottomLine || $[22] !== enableLyricLineBlurEffect || $[23] !== enableLyricLineScaleEffect || $[24] !== enableLyricLineSpringAnimation || $[25] !== lyricPlayerImplementation || $[26] !== lyricWordFadeWidth || $[27] !== musicIsPlaying || $[28] !== musicPlayingPosition || $[29] !== optimizeOptions || $[30] !== processedLyricLines || $[31] !== t10 || $[32] !== t11 || $[33] !== t8 || $[34] !== t9) {
3480
3466
  t12 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_applemusic_like_lyrics_react.LyricPlayer, {
3481
3467
  style: t8,
3482
3468
  ref: amllPlayerRef,
@@ -3486,6 +3472,7 @@ const PrebuiltCoreLyricPlayer = (t0) => {
3486
3472
  alignAnchor,
3487
3473
  currentTime: musicPlayingPosition,
3488
3474
  lyricLines: processedLyricLines,
3475
+ optimizeOptions,
3489
3476
  enableBlur: enableLyricLineBlurEffect,
3490
3477
  enableScale: enableLyricLineScaleEffect,
3491
3478
  enableSpring: enableLyricLineSpringAnimation,
@@ -3505,13 +3492,14 @@ const PrebuiltCoreLyricPlayer = (t0) => {
3505
3492
  $[26] = lyricWordFadeWidth;
3506
3493
  $[27] = musicIsPlaying;
3507
3494
  $[28] = musicPlayingPosition;
3508
- $[29] = processedLyricLines;
3509
- $[30] = t10;
3510
- $[31] = t11;
3511
- $[32] = t8;
3512
- $[33] = t9;
3513
- $[34] = t12;
3514
- } else t12 = $[34];
3495
+ $[29] = optimizeOptions;
3496
+ $[30] = processedLyricLines;
3497
+ $[31] = t10;
3498
+ $[32] = t11;
3499
+ $[33] = t8;
3500
+ $[34] = t9;
3501
+ $[35] = t12;
3502
+ } else t12 = $[35];
3515
3503
  return t12;
3516
3504
  };
3517
3505
  const PrebuiltVolumeControl = (t0) => {
@@ -3566,14 +3554,14 @@ const PrebuiltMusicControls = (t0) => {
3566
3554
  } else t1 = $[5];
3567
3555
  let t2;
3568
3556
  if ($[6] !== playerControlsType || $[7] !== showOtherButtons) {
3569
- t2 = playerControlsType === PlayerControlsType.Controls && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltMediaButtons, { showOtherButtons });
3557
+ t2 = playerControlsType === "controls" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltMediaButtons, { showOtherButtons });
3570
3558
  $[6] = playerControlsType;
3571
3559
  $[7] = showOtherButtons;
3572
3560
  $[8] = t2;
3573
3561
  } else t2 = $[8];
3574
3562
  let t3;
3575
3563
  if ($[9] !== fftData || $[10] !== playerControlsType) {
3576
- t3 = playerControlsType === PlayerControlsType.FFT && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AudioFFTVisualizer, {
3564
+ t3 = playerControlsType === "fft" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AudioFFTVisualizer, {
3577
3565
  style: {
3578
3566
  width: "100%",
3579
3567
  height: "8vh"
@@ -3603,20 +3591,23 @@ const PrebuiltMusicControls = (t0) => {
3603
3591
  * 已经部署好所有组件的歌词播放器组件,在正确设置所有的 Jotai 状态后可以开箱即用
3604
3592
  */
3605
3593
  const PrebuiltLyricPlayer = (t0) => {
3606
- const $ = (0, react_compiler_runtime.c)(65);
3594
+ const $ = (0, react_compiler_runtime.c)(67);
3607
3595
  let bottomLineSlot;
3608
3596
  let className;
3597
+ let optimizeOptions;
3609
3598
  let rest;
3610
3599
  if ($[0] !== t0) {
3611
- ({className, bottomLineSlot, ...rest} = t0);
3600
+ ({className, bottomLineSlot, optimizeOptions, ...rest} = t0);
3612
3601
  $[0] = t0;
3613
3602
  $[1] = bottomLineSlot;
3614
3603
  $[2] = className;
3615
- $[3] = rest;
3604
+ $[3] = optimizeOptions;
3605
+ $[4] = rest;
3616
3606
  } else {
3617
3607
  bottomLineSlot = $[1];
3618
3608
  className = $[2];
3619
- rest = $[3];
3609
+ optimizeOptions = $[3];
3610
+ rest = $[4];
3620
3611
  }
3621
3612
  const [hideLyricView, setHideLyricView] = (0, jotai.useAtom)(hideLyricViewAtom);
3622
3613
  const musicCover = (0, jotai.useAtomValue)(musicCoverAtom);
@@ -3639,7 +3630,7 @@ const PrebuiltLyricPlayer = (t0) => {
3639
3630
  const cssBackgroundProperty = (0, jotai.useAtomValue)(cssBackgroundPropertyAtom);
3640
3631
  let t1;
3641
3632
  let t2;
3642
- if ($[4] !== isVertical || $[5] !== layoutEl) {
3633
+ if ($[5] !== isVertical || $[6] !== layoutEl) {
3643
3634
  t1 = () => {
3644
3635
  if (!isVertical && coverElRef.current && layoutEl) {
3645
3636
  const obz = new ResizeObserver(() => {
@@ -3659,57 +3650,57 @@ const PrebuiltLyricPlayer = (t0) => {
3659
3650
  }
3660
3651
  };
3661
3652
  t2 = [isVertical, layoutEl];
3662
- $[4] = isVertical;
3663
- $[5] = layoutEl;
3664
- $[6] = t1;
3665
- $[7] = t2;
3653
+ $[5] = isVertical;
3654
+ $[6] = layoutEl;
3655
+ $[7] = t1;
3656
+ $[8] = t2;
3666
3657
  } else {
3667
- t1 = $[6];
3668
- t2 = $[7];
3658
+ t1 = $[7];
3659
+ t2 = $[8];
3669
3660
  }
3670
3661
  (0, react.useLayoutEffect)(t1, t2);
3671
- const verticalImmerseCover = hideLyricView && (verticalCoverLayout === VerticalCoverLayout.Auto ? musicCoverIsVideo && isVertical : verticalCoverLayout === VerticalCoverLayout.ForceImmersive);
3662
+ const verticalImmerseCover = hideLyricView && (verticalCoverLayout === "auto" ? musicCoverIsVideo && isVertical : verticalCoverLayout === "force-immersive");
3672
3663
  let t3;
3673
- if ($[8] !== className) {
3664
+ if ($[9] !== className) {
3674
3665
  t3 = (0, classnames.default)(index_module_default.autoLyricLayout, className);
3675
- $[8] = className;
3676
- $[9] = t3;
3677
- } else t3 = $[9];
3666
+ $[9] = className;
3667
+ $[10] = t3;
3668
+ } else t3 = $[10];
3678
3669
  const t4 = !musicIsPlaying && !musicCoverIsVideo && verticalImmerseCover;
3679
3670
  let t5;
3680
- if ($[10] !== musicCover || $[11] !== musicCoverIsVideo || $[12] !== t4) {
3671
+ if ($[11] !== musicCover || $[12] !== musicCoverIsVideo || $[13] !== t4) {
3681
3672
  t5 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Cover, {
3682
3673
  coverUrl: musicCover,
3683
3674
  coverIsVideo: musicCoverIsVideo,
3684
3675
  ref: coverElRef,
3685
3676
  musicPaused: t4
3686
3677
  });
3687
- $[10] = musicCover;
3688
- $[11] = musicCoverIsVideo;
3689
- $[12] = t4;
3690
- $[13] = t5;
3691
- } else t5 = $[13];
3678
+ $[11] = musicCover;
3679
+ $[12] = musicCoverIsVideo;
3680
+ $[13] = t4;
3681
+ $[14] = t5;
3682
+ } else t5 = $[14];
3692
3683
  let t6;
3693
- if ($[14] !== onClickControlThumb) {
3684
+ if ($[15] !== onClickControlThumb) {
3694
3685
  t6 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ControlThumb, { onClick: onClickControlThumb });
3695
- $[14] = onClickControlThumb;
3696
- $[15] = t6;
3697
- } else t6 = $[15];
3686
+ $[15] = onClickControlThumb;
3687
+ $[16] = t6;
3688
+ } else t6 = $[16];
3698
3689
  const t7 = hideLyricView && index_module_default.hideLyric;
3699
3690
  let t8;
3700
- if ($[16] !== t7) {
3691
+ if ($[17] !== t7) {
3701
3692
  t8 = (0, classnames.default)(index_module_default.smallMusicInfo, t7);
3702
- $[16] = t7;
3703
- $[17] = t8;
3704
- } else t8 = $[17];
3693
+ $[17] = t7;
3694
+ $[18] = t8;
3695
+ } else t8 = $[18];
3705
3696
  let t9;
3706
- if ($[18] !== t8) {
3697
+ if ($[19] !== t8) {
3707
3698
  t9 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltMusicInfo, { className: t8 });
3708
- $[18] = t8;
3709
- $[19] = t9;
3710
- } else t9 = $[19];
3699
+ $[19] = t8;
3700
+ $[20] = t9;
3701
+ } else t9 = $[20];
3711
3702
  let t10;
3712
- if ($[20] !== backgroundRenderer.renderer || $[21] !== cssBackgroundProperty || $[22] !== isLyricPageOpened || $[23] !== lowFreqVolume || $[24] !== lyricBackgroundFPS || $[25] !== lyricBackgroundRenderScale || $[26] !== lyricBackgroundStaticMode || $[27] !== musicCover || $[28] !== musicCoverIsVideo) {
3703
+ if ($[21] !== backgroundRenderer.renderer || $[22] !== cssBackgroundProperty || $[23] !== isLyricPageOpened || $[24] !== lowFreqVolume || $[25] !== lyricBackgroundFPS || $[26] !== lyricBackgroundRenderScale || $[27] !== lyricBackgroundStaticMode || $[28] !== musicCover || $[29] !== musicCoverIsVideo) {
3713
3704
  t10 = typeof backgroundRenderer.renderer === "string" && backgroundRenderer.renderer === "css-bg" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", { style: {
3714
3705
  zIndex: -1,
3715
3706
  width: "100%",
@@ -3728,43 +3719,43 @@ const PrebuiltLyricPlayer = (t0) => {
3728
3719
  staticMode: lyricBackgroundStaticMode || !isLyricPageOpened,
3729
3720
  style: { zIndex: -1 }
3730
3721
  });
3731
- $[20] = backgroundRenderer.renderer;
3732
- $[21] = cssBackgroundProperty;
3733
- $[22] = isLyricPageOpened;
3734
- $[23] = lowFreqVolume;
3735
- $[24] = lyricBackgroundFPS;
3736
- $[25] = lyricBackgroundRenderScale;
3737
- $[26] = lyricBackgroundStaticMode;
3738
- $[27] = musicCover;
3739
- $[28] = musicCoverIsVideo;
3740
- $[29] = t10;
3741
- } else t10 = $[29];
3722
+ $[21] = backgroundRenderer.renderer;
3723
+ $[22] = cssBackgroundProperty;
3724
+ $[23] = isLyricPageOpened;
3725
+ $[24] = lowFreqVolume;
3726
+ $[25] = lyricBackgroundFPS;
3727
+ $[26] = lyricBackgroundRenderScale;
3728
+ $[27] = lyricBackgroundStaticMode;
3729
+ $[28] = musicCover;
3730
+ $[29] = musicCoverIsVideo;
3731
+ $[30] = t10;
3732
+ } else t10 = $[30];
3742
3733
  const t11 = hideLyricView && index_module_default.hideLyric;
3743
3734
  let t12;
3744
- if ($[30] !== t11) {
3735
+ if ($[31] !== t11) {
3745
3736
  t12 = (0, classnames.default)(index_module_default.bigMusicInfo, t11);
3746
- $[30] = t11;
3747
- $[31] = t12;
3748
- } else t12 = $[31];
3737
+ $[31] = t11;
3738
+ $[32] = t12;
3739
+ } else t12 = $[32];
3749
3740
  let t13;
3750
- if ($[32] !== t12) {
3741
+ if ($[33] !== t12) {
3751
3742
  t13 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltMusicInfo, { className: t12 });
3752
- $[32] = t12;
3753
- $[33] = t13;
3754
- } else t13 = $[33];
3743
+ $[33] = t12;
3744
+ $[34] = t13;
3745
+ } else t13 = $[34];
3755
3746
  let t14;
3756
3747
  let t15;
3757
- if ($[34] === Symbol.for("react.memo_cache_sentinel")) {
3748
+ if ($[35] === Symbol.for("react.memo_cache_sentinel")) {
3758
3749
  t14 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltProgressBar, {});
3759
3750
  t15 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltMusicControls, { className: index_module_default.bigControls });
3760
- $[34] = t14;
3761
- $[35] = t15;
3751
+ $[35] = t14;
3752
+ $[36] = t15;
3762
3753
  } else {
3763
- t14 = $[34];
3764
- t15 = $[35];
3754
+ t14 = $[35];
3755
+ t15 = $[36];
3765
3756
  }
3766
3757
  let t16;
3767
- if ($[36] !== hideLyricView || $[37] !== setHideLyricView || $[38] !== showBottomControl) {
3758
+ if ($[37] !== hideLyricView || $[38] !== setHideLyricView || $[39] !== showBottomControl) {
3768
3759
  t16 = showBottomControl && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
3769
3760
  style: {
3770
3761
  display: "flex",
@@ -3772,26 +3763,26 @@ const PrebuiltLyricPlayer = (t0) => {
3772
3763
  },
3773
3764
  children: [
3774
3765
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltToggleIconButton, {
3775
- type: PrebuiltToggleIconButtonType.Lyrics,
3766
+ type: "lyrics",
3776
3767
  checked: !hideLyricView,
3777
3768
  onClick: () => setHideLyricView(!hideLyricView)
3778
3769
  }),
3779
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltToggleIconButton, { type: PrebuiltToggleIconButtonType.AirPlay }),
3780
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltToggleIconButton, { type: PrebuiltToggleIconButtonType.Playlist })
3770
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltToggleIconButton, { type: "airplay" }),
3771
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltToggleIconButton, { type: "playlist" })
3781
3772
  ]
3782
3773
  });
3783
- $[36] = hideLyricView;
3784
- $[37] = setHideLyricView;
3785
- $[38] = showBottomControl;
3786
- $[39] = t16;
3787
- } else t16 = $[39];
3774
+ $[37] = hideLyricView;
3775
+ $[38] = setHideLyricView;
3776
+ $[39] = showBottomControl;
3777
+ $[40] = t16;
3778
+ } else t16 = $[40];
3788
3779
  let t17;
3789
- if ($[40] === Symbol.for("react.memo_cache_sentinel")) {
3780
+ if ($[41] === Symbol.for("react.memo_cache_sentinel")) {
3790
3781
  t17 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltVolumeControl, { className: index_module_default.bigVolumeControl });
3791
- $[40] = t17;
3792
- } else t17 = $[40];
3782
+ $[41] = t17;
3783
+ } else t17 = $[41];
3793
3784
  let t18;
3794
- if ($[41] !== t13 || $[42] !== t16) {
3785
+ if ($[42] !== t13 || $[43] !== t16) {
3795
3786
  t18 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
3796
3787
  t13,
3797
3788
  t14,
@@ -3799,12 +3790,12 @@ const PrebuiltLyricPlayer = (t0) => {
3799
3790
  t16,
3800
3791
  t17
3801
3792
  ] });
3802
- $[41] = t13;
3803
- $[42] = t16;
3804
- $[43] = t18;
3805
- } else t18 = $[43];
3793
+ $[42] = t13;
3794
+ $[43] = t16;
3795
+ $[44] = t18;
3796
+ } else t18 = $[44];
3806
3797
  let t19;
3807
- if ($[44] === Symbol.for("react.memo_cache_sentinel")) {
3798
+ if ($[45] === Symbol.for("react.memo_cache_sentinel")) {
3808
3799
  t19 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
3809
3800
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltMusicInfo, { className: index_module_default.horizontalControls }),
3810
3801
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltProgressBar, {}),
@@ -3814,39 +3805,41 @@ const PrebuiltLyricPlayer = (t0) => {
3814
3805
  }),
3815
3806
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltVolumeControl, {})
3816
3807
  ] });
3817
- $[44] = t19;
3818
- } else t19 = $[44];
3808
+ $[45] = t19;
3809
+ } else t19 = $[45];
3819
3810
  let t20;
3820
- if ($[45] !== hideLyricView || $[46] !== setHideLyricView || $[47] !== showBottomControl) {
3811
+ if ($[46] !== hideLyricView || $[47] !== setHideLyricView || $[48] !== showBottomControl) {
3821
3812
  t20 = showBottomControl && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
3822
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltToggleIconButton, { type: PrebuiltToggleIconButtonType.Playlist }),
3813
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltToggleIconButton, { type: "playlist" }),
3823
3814
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltToggleIconButton, {
3824
- type: PrebuiltToggleIconButtonType.Lyrics,
3815
+ type: "lyrics",
3825
3816
  checked: !hideLyricView,
3826
3817
  onClick: () => setHideLyricView(!hideLyricView)
3827
3818
  }),
3828
3819
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", { style: { flex: "1" } }),
3829
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltToggleIconButton, { type: PrebuiltToggleIconButtonType.AirPlay })
3820
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltToggleIconButton, { type: "airplay" })
3830
3821
  ] });
3831
- $[45] = hideLyricView;
3832
- $[46] = setHideLyricView;
3833
- $[47] = showBottomControl;
3834
- $[48] = t20;
3835
- } else t20 = $[48];
3822
+ $[46] = hideLyricView;
3823
+ $[47] = setHideLyricView;
3824
+ $[48] = showBottomControl;
3825
+ $[49] = t20;
3826
+ } else t20 = $[49];
3836
3827
  let t21;
3837
- if ($[49] !== alignAnchor || $[50] !== alignPosition || $[51] !== bottomLineSlot) {
3828
+ if ($[50] !== alignAnchor || $[51] !== alignPosition || $[52] !== bottomLineSlot || $[53] !== optimizeOptions) {
3838
3829
  t21 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PrebuiltCoreLyricPlayer, {
3839
3830
  alignPosition,
3840
3831
  alignAnchor,
3841
- bottomLine: bottomLineSlot
3832
+ bottomLine: bottomLineSlot,
3833
+ optimizeOptions
3842
3834
  });
3843
- $[49] = alignAnchor;
3844
- $[50] = alignPosition;
3845
- $[51] = bottomLineSlot;
3846
- $[52] = t21;
3847
- } else t21 = $[52];
3835
+ $[50] = alignAnchor;
3836
+ $[51] = alignPosition;
3837
+ $[52] = bottomLineSlot;
3838
+ $[53] = optimizeOptions;
3839
+ $[54] = t21;
3840
+ } else t21 = $[54];
3848
3841
  let t22;
3849
- if ($[53] !== hideLyricView || $[54] !== rest || $[55] !== t10 || $[56] !== t18 || $[57] !== t20 || $[58] !== t21 || $[59] !== t3 || $[60] !== t5 || $[61] !== t6 || $[62] !== t9 || $[63] !== verticalImmerseCover) {
3842
+ if ($[55] !== hideLyricView || $[56] !== rest || $[57] !== t10 || $[58] !== t18 || $[59] !== t20 || $[60] !== t21 || $[61] !== t3 || $[62] !== t5 || $[63] !== t6 || $[64] !== t9 || $[65] !== verticalImmerseCover) {
3850
3843
  t22 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(framer_motion.LayoutGroup, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AutoLyricLayout, {
3851
3844
  onElementMounted: setLayoutEl,
3852
3845
  className: t3,
@@ -3863,19 +3856,19 @@ const PrebuiltLyricPlayer = (t0) => {
3863
3856
  hideLyric: hideLyricView,
3864
3857
  ...rest
3865
3858
  }) });
3866
- $[53] = hideLyricView;
3867
- $[54] = rest;
3868
- $[55] = t10;
3869
- $[56] = t18;
3870
- $[57] = t20;
3871
- $[58] = t21;
3872
- $[59] = t3;
3873
- $[60] = t5;
3874
- $[61] = t6;
3875
- $[62] = t9;
3876
- $[63] = verticalImmerseCover;
3877
- $[64] = t22;
3878
- } else t22 = $[64];
3859
+ $[55] = hideLyricView;
3860
+ $[56] = rest;
3861
+ $[57] = t10;
3862
+ $[58] = t18;
3863
+ $[59] = t20;
3864
+ $[60] = t21;
3865
+ $[61] = t3;
3866
+ $[62] = t5;
3867
+ $[63] = t6;
3868
+ $[64] = t9;
3869
+ $[65] = verticalImmerseCover;
3870
+ $[66] = t22;
3871
+ } else t22 = $[66];
3879
3872
  return t22;
3880
3873
  };
3881
3874
  function _temp(v) {