react-modern-audio-player 1.4.0-rc.2 → 2.0.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.
Files changed (120) hide show
  1. package/README.md +294 -100
  2. package/dist/index.css +1 -1
  3. package/dist/index.es.js +1915 -7976
  4. package/dist/types/api/index.d.ts +6 -0
  5. package/dist/types/api/useAudioPlayer.d.ts +27 -0
  6. package/dist/types/api/useAudioPlayerElement.d.ts +6 -0
  7. package/dist/types/api/useAudioPlayerPlayback.d.ts +9 -0
  8. package/dist/types/api/useAudioPlayerTime.d.ts +6 -0
  9. package/dist/types/api/useAudioPlayerTrack.d.ts +11 -0
  10. package/dist/types/api/useAudioPlayerVolume.d.ts +7 -0
  11. package/dist/types/components/AudioPlayer/Audio/index.d.ts +2 -2
  12. package/dist/types/components/AudioPlayer/Audio/useAudio.d.ts +1 -1
  13. package/dist/types/components/AudioPlayer/Container/AudioPlayerContainer.d.ts +5 -0
  14. package/dist/types/components/AudioPlayer/Container/index.d.ts +1 -0
  15. package/dist/types/components/AudioPlayer/Context/AudioAttrsContext.d.ts +15 -0
  16. package/dist/types/components/AudioPlayer/Context/PlaybackContext.d.ts +10 -0
  17. package/dist/types/components/AudioPlayer/Context/ResourceContext.d.ts +7 -0
  18. package/dist/types/components/AudioPlayer/Context/StateContext/audio.d.ts +18 -8
  19. package/dist/types/components/AudioPlayer/Context/StateContext/element.d.ts +8 -13
  20. package/dist/types/components/AudioPlayer/Context/StateContext/index.d.ts +9 -8
  21. package/dist/types/components/AudioPlayer/Context/StateContext/placement.d.ts +9 -9
  22. package/dist/types/components/AudioPlayer/Context/TimeContext.d.ts +6 -0
  23. package/dist/types/components/AudioPlayer/Context/TrackContext.d.ts +7 -0
  24. package/dist/types/components/AudioPlayer/Context/UIContext.d.ts +11 -0
  25. package/dist/types/components/AudioPlayer/Context/dispatchContext.d.ts +11 -7
  26. package/dist/types/components/AudioPlayer/Context/index.d.ts +10 -3
  27. package/dist/types/components/AudioPlayer/Context/providerProps.d.ts +14 -0
  28. package/dist/types/components/AudioPlayer/Context/reducer.d.ts +2 -2
  29. package/dist/types/components/AudioPlayer/Interface/Controller/Button/NextBtn.d.ts +6 -0
  30. package/dist/types/components/AudioPlayer/Interface/Controller/Button/PlayBtn.d.ts +1 -1
  31. package/dist/types/components/AudioPlayer/Interface/Controller/Button/PrevBtn.d.ts +6 -0
  32. package/dist/types/components/AudioPlayer/Interface/Controller/Button/RepeatTypeBtn.d.ts +1 -1
  33. package/dist/types/components/AudioPlayer/Interface/Controller/Button/VolumeTriggerBtn.d.ts +1 -1
  34. package/dist/types/components/AudioPlayer/Interface/Controller/Button/index.d.ts +5 -5
  35. package/dist/types/components/AudioPlayer/Interface/Controller/Drawer/SortablePlayList/Content/PlayListItem.d.ts +3 -3
  36. package/dist/types/components/AudioPlayer/Interface/Controller/Drawer/SortablePlayList/Content/index.d.ts +2 -6
  37. package/dist/types/components/AudioPlayer/Interface/Controller/Drawer/SortablePlayList/Content/usePlayList.d.ts +3 -4
  38. package/dist/types/components/AudioPlayer/Interface/Controller/Drawer/SortablePlayList/PlayListIcon.d.ts +2 -0
  39. package/dist/types/components/AudioPlayer/Interface/Controller/Drawer/SortablePlayList/index.d.ts +1 -1
  40. package/dist/types/components/AudioPlayer/Interface/Controller/Drawer/index.d.ts +1 -1
  41. package/dist/types/components/AudioPlayer/Interface/Controller/Icon.d.ts +3 -3
  42. package/dist/types/components/AudioPlayer/Interface/Controller/Input/Progress/BarProgress.d.ts +2 -4
  43. package/dist/types/components/AudioPlayer/Interface/Controller/Input/Progress/WaveformProgress.d.ts +1 -1
  44. package/dist/types/components/AudioPlayer/Interface/Controller/Input/Progress/index.d.ts +1 -1
  45. package/dist/types/components/AudioPlayer/Interface/Controller/Input/Progress/useProgress.d.ts +1 -1
  46. package/dist/types/components/AudioPlayer/Interface/Controller/Input/Progress/useProgressKeyDown.d.ts +2 -0
  47. package/dist/types/components/AudioPlayer/Interface/Controller/Input/index.d.ts +1 -1
  48. package/dist/types/components/AudioPlayer/Interface/Controller/Tooltip/Volume/Content.d.ts +2 -2
  49. package/dist/types/components/AudioPlayer/Interface/Controller/Tooltip/Volume/index.d.ts +1 -1
  50. package/dist/types/components/AudioPlayer/Interface/Controller/Tooltip/Volume/useVolume.d.ts +2 -2
  51. package/dist/types/components/AudioPlayer/Interface/Controller/Tooltip/index.d.ts +1 -1
  52. package/dist/types/components/AudioPlayer/Interface/Controller/index.d.ts +1 -1
  53. package/dist/types/components/AudioPlayer/Interface/CustomComponent/index.d.ts +2 -2
  54. package/dist/types/components/AudioPlayer/Interface/Information/Artwork.d.ts +1 -1
  55. package/dist/types/components/AudioPlayer/Interface/Information/TrackInfo.d.ts +1 -1
  56. package/dist/types/components/AudioPlayer/Interface/Information/TrackTime/Current.d.ts +2 -2
  57. package/dist/types/components/AudioPlayer/Interface/Information/TrackTime/Duration.d.ts +2 -2
  58. package/dist/types/components/AudioPlayer/Interface/Information/TrackTime/TrackTimeContainer.d.ts +6 -0
  59. package/dist/types/components/AudioPlayer/Interface/Information/TrackTime/Types.d.ts +1 -1
  60. package/dist/types/components/AudioPlayer/Interface/Information/TrackTime/index.d.ts +1 -1
  61. package/dist/types/components/AudioPlayer/Interface/Information/index.d.ts +1 -1
  62. package/dist/types/components/AudioPlayer/Interface/index.d.ts +1 -1
  63. package/dist/types/components/AudioPlayer/Player/index.d.ts +9 -14
  64. package/dist/types/components/AudioPlayer/Player/usePropsStateEffect.d.ts +1 -1
  65. package/dist/types/components/AudioPlayer/Provider/AudioPlayerStateProvider.d.ts +7 -0
  66. package/dist/types/components/AudioPlayer/Provider/index.d.ts +1 -0
  67. package/dist/types/components/AudioPlayer/index.d.ts +10 -11
  68. package/dist/types/components/Drawer/Drawer.d.ts +5 -6
  69. package/dist/types/components/Drawer/DrawerContent.d.ts +4 -3
  70. package/dist/types/components/Drawer/DrawerContext.d.ts +2 -1
  71. package/dist/types/components/Drawer/DrawerTrigger.d.ts +7 -2
  72. package/dist/types/components/Drawer/index.d.ts +2 -2
  73. package/dist/types/components/Dropdown/Dropdown.d.ts +6 -6
  74. package/dist/types/components/Dropdown/DropdownContent.d.ts +3 -3
  75. package/dist/types/components/Dropdown/DropdownContext.d.ts +2 -1
  76. package/dist/types/components/Dropdown/DropdownTrigger.d.ts +2 -2
  77. package/dist/types/components/Dropdown/index.d.ts +2 -2
  78. package/dist/types/components/Dropdown/useDropdown.d.ts +3 -3
  79. package/dist/types/components/Dropdown/useDropdownPlacementStyle.d.ts +3 -0
  80. package/dist/types/components/Grid/Grid.d.ts +12 -8
  81. package/dist/types/components/Grid/Item.d.ts +8 -5
  82. package/dist/types/components/Grid/index.d.ts +8 -1
  83. package/dist/types/components/SortableList/SortableList.d.ts +4 -4
  84. package/dist/types/components/SortableList/SortableListItem.d.ts +5 -5
  85. package/dist/types/components/SortableList/index.d.ts +5 -5
  86. package/dist/types/components/SortableList/useSortableListItem.d.ts +1 -1
  87. package/dist/types/components/icons/index.d.ts +16 -0
  88. package/dist/types/hooks/context/index.d.ts +7 -0
  89. package/dist/types/hooks/context/useAudioAttrsContext.d.ts +2 -0
  90. package/dist/types/hooks/{useNonNullableContext.d.ts → context/useNonNullableContext.d.ts} +1 -1
  91. package/dist/types/hooks/context/usePlaybackContext.d.ts +2 -0
  92. package/dist/types/hooks/context/useResourceContext.d.ts +2 -0
  93. package/dist/types/hooks/context/useTimeContext.d.ts +2 -0
  94. package/dist/types/hooks/context/useTrackContext.d.ts +2 -0
  95. package/dist/types/hooks/context/useUIContext.d.ts +1 -0
  96. package/dist/types/hooks/index.d.ts +5 -4
  97. package/dist/types/hooks/useClickOutside.d.ts +1 -1
  98. package/dist/types/hooks/useDidUpdateEffect.d.ts +16 -0
  99. package/dist/types/hooks/useRefsDispatch.d.ts +1 -1
  100. package/dist/types/hooks/useVariableColor.d.ts +2 -2
  101. package/dist/types/index.d.ts +7 -5
  102. package/dist/types/test/setup.d.ts +0 -0
  103. package/dist/types/{components → ui}/CssTransition.d.ts +1 -3
  104. package/dist/types/ui/StyledBtn.d.ts +1 -0
  105. package/dist/types/utils/clampVolume.d.ts +5 -0
  106. package/dist/types/utils/generateUnionNumType.d.ts +2 -2
  107. package/dist/types/utils/refs.d.ts +1 -0
  108. package/dist/types/utils/safeRatio.d.ts +5 -0
  109. package/dist/types/utils/ssr.d.ts +5 -0
  110. package/dist/wavesurfer-_j5aw4gZ.mjs +4471 -0
  111. package/package.json +32 -22
  112. package/dist/types/components/AudioPlayer/Interface/Controller/Button/PlayListTriggerBtn.d.ts +0 -5
  113. package/dist/types/components/AudioPlayer/Interface/Controller/Button/PrevNnextBtn.d.ts +0 -7
  114. package/dist/types/components/AudioPlayer/Interface/Controller/Button/StyledBtn.d.ts +0 -1
  115. package/dist/types/components/AudioPlayer/Interface/Information/TrackTime/Styles.d.ts +0 -6
  116. package/dist/types/components/Provider/AudioPlayerProvider.d.ts +0 -3
  117. package/dist/types/components/Provider/SpectrumProvider.d.ts +0 -7
  118. package/dist/types/components/Provider/index.d.ts +0 -2
  119. package/dist/types/styles/GlobalStyle.d.ts +0 -1
  120. package/dist/types/utils/resetAudioValues.d.ts +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-modern-audio-player",
3
- "version": "1.4.0-rc.2",
3
+ "version": "2.0.0",
4
4
  "author": {
5
5
  "name": "LYH",
6
6
  "email": "slash9494@naver.com",
@@ -21,35 +21,45 @@
21
21
  },
22
22
  "scripts": {
23
23
  "dev": "vite --host",
24
- "build": "rm -rf dist && tsc && vite build",
24
+ "build": "rm -rf dist && tsc -p tsconfig.json && vite build",
25
25
  "preview": "vite preview",
26
- "typeCheck": "tsc --project ./tsconfig.json --noEmit"
26
+ "typeCheck": "tsc --project ./tsconfig.json --noEmit",
27
+ "test": "vitest run",
28
+ "test:unit": "vitest run src",
29
+ "test:integration": "vitest run ../test/integration",
30
+ "test:integration:core": "vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx",
31
+ "test:watch": "vitest",
32
+ "test:coverage": "vitest run --coverage"
27
33
  },
34
+ "sideEffects": [
35
+ "*.css"
36
+ ],
28
37
  "peerDependencies": {
29
- "react": ">=16.8.0",
30
- "react-dom": ">=16.8.0"
38
+ "react": ">=18.0.0",
39
+ "react-dom": ">=18.0.0"
31
40
  },
32
41
  "dependencies": {
33
- "@react-spectrum/layout": "^3.3.1",
34
- "@react-spectrum/provider": "^3.4.1",
35
- "@react-spectrum/theme-default": "^3.3.1",
36
- "@react-spectrum/view": "^3.2.1",
37
- "classnames": "^2.3.1",
38
- "react-icons": "^4.4.0",
39
- "styled-components": "^5.3.5",
40
- "wavesurfer.js": "^6.2.0"
42
+ "wavesurfer.js": "^6.6.4"
41
43
  },
42
44
  "devDependencies": {
43
- "@types/node": "^17.0.25",
44
- "@types/react": "^18.0.1",
45
- "@types/react-dom": "^18.0.0",
46
- "@types/styled-components": "^5.1.26",
45
+ "@testing-library/jest-dom": "^6.9.1",
46
+ "@testing-library/react": "^16.3.2",
47
+ "@testing-library/user-event": "^14.6.1",
48
+ "@types/jsdom": "^28",
49
+ "@types/node": "^22.0.0",
50
+ "@types/react": "^18.3.0",
51
+ "@types/react-dom": "^18.3.0",
47
52
  "@types/wavesurfer.js": "^6.0.3",
48
- "@vitejs/plugin-react": "^1.0.7",
49
- "typescript": "^4.6.3",
50
- "vite": "^2.9.0",
51
- "vite-plugin-dts": "^1.1.0",
52
- "vite-plugin-libcss": "^1.0.5"
53
+ "@vitejs/plugin-react": "^4.3.4",
54
+ "@vitest/coverage-v8": "^2.1.0",
55
+ "agentation": "^3.0.2",
56
+ "jsdom": "^25.0.0",
57
+ "typescript": "^5.7.2",
58
+ "vite": "^5.4.14",
59
+ "vite-plugin-dts": "^4.5.0",
60
+ "vite-plugin-libcss": "^1.1.1",
61
+ "vitest": "^2.1.0",
62
+ "vitest-axe": "^0.1.0"
53
63
  },
54
64
  "keywords": [
55
65
  "audio",
@@ -1,5 +0,0 @@
1
- import { FC } from "react";
2
- export interface PlayListTriggerBtnProps {
3
- isOpen: boolean;
4
- }
5
- export declare const PlayListTriggerBtn: FC<PlayListTriggerBtnProps>;
@@ -1,7 +0,0 @@
1
- import { FC } from "react";
2
- interface PrevNnextBtnProps {
3
- type: "prev" | "next";
4
- visible: boolean;
5
- }
6
- export declare const PrevNnextBtn: FC<PrevNnextBtnProps>;
7
- export {};
@@ -1 +0,0 @@
1
- export declare const StyledBtn: import("styled-components").StyledComponent<"button", any, {}, never>;
@@ -1,6 +0,0 @@
1
- import { TrackTimePosition } from "./Types";
2
- export interface TrackTimeContainerProps {
3
- position: TrackTimePosition;
4
- childrenClassName: string;
5
- }
6
- export declare const TrackTimeContainer: import("styled-components").StyledComponent<"div", any, TrackTimeContainerProps, never>;
@@ -1,3 +0,0 @@
1
- import { PropsWithChildren } from "react";
2
- import { AudioPlayerProps } from "../AudioPlayer/Player";
3
- export declare const AudioPlayerProvider: <TInterfacePlacementLength extends number = 10>({ children, ...props }: PropsWithChildren<AudioPlayerProps<TInterfacePlacementLength>>) => JSX.Element;
@@ -1,7 +0,0 @@
1
- import { FC, PropsWithChildren } from "react";
2
- import { DOMRefValue } from "@react-types/shared";
3
- import { ProviderProps } from "@react-types/provider";
4
- export interface SpectrumProviderProps {
5
- rootContainerProps?: Omit<ProviderProps & React.RefAttributes<DOMRefValue<HTMLDivElement>>, "children">;
6
- }
7
- export declare const SpectrumProvider: FC<PropsWithChildren<SpectrumProviderProps>>;
@@ -1,2 +0,0 @@
1
- export * from "./SpectrumProvider";
2
- export * from "./AudioPlayerProvider";
@@ -1 +0,0 @@
1
- export declare const GlobalStyle: import("styled-components").GlobalStyleComponent<{}, import("styled-components").DefaultTheme>;
@@ -1,2 +0,0 @@
1
- import { ElementRefs } from '../components/AudioPlayer/Context/StateContext';
2
- export declare const resetAudioValues: (elementRefs?: ElementRefs, duration?: number, restart?: boolean) => void;