react-audio-wavekit 0.2.1 → 0.2.4
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/README.md
CHANGED
|
@@ -101,6 +101,8 @@ Headless hook to manage recording state. Use with recorder components below.
|
|
|
101
101
|
|
|
102
102
|

|
|
103
103
|
|
|
104
|
+
_This is an example image. The component includes only the waveform._
|
|
105
|
+
|
|
104
106
|
Scrolling timeline waveform (Voice Memos style). Canvas grows horizontally as recording continues.
|
|
105
107
|
|
|
106
108
|
[▶ Demo](https://react-audio-wavekit.netlify.app/?path=/story/recorder-livestreamingrecorder--default)
|
|
@@ -136,6 +138,8 @@ Scrolling timeline waveform (Voice Memos style). Canvas grows horizontally as re
|
|
|
136
138
|
|
|
137
139
|

|
|
138
140
|
|
|
141
|
+
_This is an example image. The component includes only the waveform._
|
|
142
|
+
|
|
139
143
|
Fixed-width waveform where bars compress as recording grows.
|
|
140
144
|
|
|
141
145
|
[▶ Demo](https://react-audio-wavekit.netlify.app/?path=/story/recorder-livestreamingstackrecorder--default)
|
|
@@ -161,6 +165,8 @@ Fixed-width waveform where bars compress as recording grows.
|
|
|
161
165
|
|
|
162
166
|

|
|
163
167
|
|
|
168
|
+
_This is an example image. The component includes only the waveform._
|
|
169
|
+
|
|
164
170
|
Real-time frequency bars visualization.
|
|
165
171
|
|
|
166
172
|
[▶ Demo](https://react-audio-wavekit.netlify.app/?path=/story/recorder-liverecorder--default)
|
|
@@ -44,7 +44,7 @@ async function decodeAudioBlob(blob, sampleCount) {
|
|
|
44
44
|
return extractPeaksFromChannelData(channelData, sampleCount);
|
|
45
45
|
} catch {
|
|
46
46
|
throw new Error(
|
|
47
|
-
`Unable to decode audio data (type: ${blob.type}, size: ${blob.size} bytes). Both native Web Audio API and WASM decoder failed.
|
|
47
|
+
`Unable to decode audio data (type: ${blob.type}, size: ${blob.size} bytes). Both native Web Audio API and WASM decoder failed. Consider providing pre-decoded 'peaks' to the AudioWaveform component to bypass decoding.`
|
|
48
48
|
);
|
|
49
49
|
}
|
|
50
50
|
}
|
|
@@ -42,7 +42,7 @@ async function decodeAudioBlob(blob, sampleCount) {
|
|
|
42
42
|
return extractPeaksFromChannelData(channelData, sampleCount);
|
|
43
43
|
} catch {
|
|
44
44
|
throw new Error(
|
|
45
|
-
`Unable to decode audio data (type: ${blob.type}, size: ${blob.size} bytes). Both native Web Audio API and WASM decoder failed.
|
|
45
|
+
`Unable to decode audio data (type: ${blob.type}, size: ${blob.size} bytes). Both native Web Audio API and WASM decoder failed. Consider providing pre-decoded 'peaks' to the AudioWaveform component to bypass decoding.`
|
|
46
46
|
);
|
|
47
47
|
}
|
|
48
48
|
}
|
package/package.json
CHANGED
|
@@ -1,14 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-audio-wavekit",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.4",
|
|
4
|
+
"description": "React component library for audio waveform visualization and live recording",
|
|
4
5
|
"license": "CC0-1.0",
|
|
6
|
+
"author": "semanticist21",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "git+https://github.com/semanticist21/react-audio-waveform.git"
|
|
10
|
+
},
|
|
11
|
+
"homepage": "https://react-audio-wavekit.netlify.app",
|
|
12
|
+
"bugs": {
|
|
13
|
+
"url": "https://github.com/semanticist21/react-audio-waveform/issues"
|
|
14
|
+
},
|
|
15
|
+
"keywords": [
|
|
16
|
+
"react",
|
|
17
|
+
"audio",
|
|
18
|
+
"waveform",
|
|
19
|
+
"visualization",
|
|
20
|
+
"recorder",
|
|
21
|
+
"recording",
|
|
22
|
+
"canvas",
|
|
23
|
+
"audio-player",
|
|
24
|
+
"audio-recorder",
|
|
25
|
+
"web-audio"
|
|
26
|
+
],
|
|
5
27
|
"type": "module",
|
|
6
28
|
"main": "dist/index.cjs",
|
|
7
29
|
"module": "dist/index.js",
|
|
8
30
|
"types": "dist/index.d.ts",
|
|
9
|
-
"sideEffects":
|
|
10
|
-
"**/*.css"
|
|
11
|
-
],
|
|
31
|
+
"sideEffects": false,
|
|
12
32
|
"exports": {
|
|
13
33
|
".": {
|
|
14
34
|
"import": {
|
|
@@ -43,8 +63,8 @@
|
|
|
43
63
|
"peerDependencies": {
|
|
44
64
|
"react": ">=18.0.0",
|
|
45
65
|
"react-dom": ">=18.0.0",
|
|
46
|
-
"overlayscrollbars": "^2.
|
|
47
|
-
"overlayscrollbars-react": "^0.5.
|
|
66
|
+
"overlayscrollbars": "^2.13.0",
|
|
67
|
+
"overlayscrollbars-react": "^0.5.6"
|
|
48
68
|
},
|
|
49
69
|
"devDependencies": {
|
|
50
70
|
"@biomejs/biome": "2.3.8",
|
|
@@ -58,7 +78,7 @@
|
|
|
58
78
|
"@types/react-dom": "19.2.3",
|
|
59
79
|
"@typescript/native-preview": "7.0.0-dev.20251205.1",
|
|
60
80
|
"@vitejs/plugin-react": "5.1.1",
|
|
61
|
-
"jsdom": "^27.
|
|
81
|
+
"jsdom": "^27.3.0",
|
|
62
82
|
"lucide-react": "0.555.0",
|
|
63
83
|
"react": "19.2.1",
|
|
64
84
|
"react-dom": "19.2.1",
|