react-native-audio-api 0.12.0-nightly-0d1a19d-20260120 → 0.12.0-nightly-6993a06-20260122

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 (379) hide show
  1. package/android/src/main/java/com/swmansion/audioapi/AudioAPIModule.kt +16 -2
  2. package/android/src/main/java/com/swmansion/audioapi/system/AudioFocusListener.kt +7 -3
  3. package/android/src/main/java/com/swmansion/audioapi/system/MediaSessionManager.kt +6 -6
  4. package/common/cpp/audioapi/HostObjects/BaseAudioContextHostObject.cpp +52 -49
  5. package/common/cpp/audioapi/HostObjects/sources/AudioBufferQueueSourceNodeHostObject.cpp +18 -0
  6. package/common/cpp/audioapi/HostObjects/sources/AudioBufferQueueSourceNodeHostObject.h +4 -0
  7. package/common/cpp/audioapi/HostObjects/sources/StreamerNodeHostObject.cpp +6 -0
  8. package/common/cpp/audioapi/HostObjects/sources/StreamerNodeHostObject.h +1 -0
  9. package/common/cpp/audioapi/HostObjects/utils/NodeOptions.h +111 -0
  10. package/common/cpp/audioapi/HostObjects/utils/NodeOptionsParser.h +262 -0
  11. package/common/cpp/audioapi/core/AudioNode.cpp +13 -6
  12. package/common/cpp/audioapi/core/AudioNode.h +2 -0
  13. package/common/cpp/audioapi/core/BaseAudioContext.cpp +42 -44
  14. package/common/cpp/audioapi/core/BaseAudioContext.h +32 -21
  15. package/common/cpp/audioapi/core/analysis/AnalyserNode.cpp +8 -6
  16. package/common/cpp/audioapi/core/analysis/AnalyserNode.h +2 -1
  17. package/common/cpp/audioapi/core/effects/BiquadFilterNode.cpp +7 -8
  18. package/common/cpp/audioapi/core/effects/BiquadFilterNode.h +4 -1
  19. package/common/cpp/audioapi/core/effects/ConvolverNode.cpp +5 -9
  20. package/common/cpp/audioapi/core/effects/ConvolverNode.h +2 -2
  21. package/common/cpp/audioapi/core/effects/DelayNode.cpp +5 -4
  22. package/common/cpp/audioapi/core/effects/DelayNode.h +2 -1
  23. package/common/cpp/audioapi/core/effects/GainNode.cpp +4 -3
  24. package/common/cpp/audioapi/core/effects/GainNode.h +2 -1
  25. package/common/cpp/audioapi/core/effects/IIRFilterNode.cpp +6 -6
  26. package/common/cpp/audioapi/core/effects/IIRFilterNode.h +3 -2
  27. package/common/cpp/audioapi/core/effects/StereoPannerNode.cpp +3 -3
  28. package/common/cpp/audioapi/core/effects/StereoPannerNode.h +4 -1
  29. package/common/cpp/audioapi/core/effects/WaveShaperNode.cpp +4 -3
  30. package/common/cpp/audioapi/core/effects/WaveShaperNode.h +4 -1
  31. package/common/cpp/audioapi/core/sources/AudioBuffer.cpp +3 -2
  32. package/common/cpp/audioapi/core/sources/AudioBuffer.h +2 -1
  33. package/common/cpp/audioapi/core/sources/AudioBufferBaseSourceNode.cpp +16 -22
  34. package/common/cpp/audioapi/core/sources/AudioBufferBaseSourceNode.h +2 -1
  35. package/common/cpp/audioapi/core/sources/AudioBufferQueueSourceNode.cpp +38 -20
  36. package/common/cpp/audioapi/core/sources/AudioBufferQueueSourceNode.h +9 -1
  37. package/common/cpp/audioapi/core/sources/AudioBufferSourceNode.cpp +10 -8
  38. package/common/cpp/audioapi/core/sources/AudioBufferSourceNode.h +5 -2
  39. package/common/cpp/audioapi/core/sources/ConstantSourceNode.cpp +5 -8
  40. package/common/cpp/audioapi/core/sources/ConstantSourceNode.h +4 -1
  41. package/common/cpp/audioapi/core/sources/OscillatorNode.cpp +21 -16
  42. package/common/cpp/audioapi/core/sources/OscillatorNode.h +4 -1
  43. package/common/cpp/audioapi/core/sources/StreamerNode.cpp +4 -2
  44. package/common/cpp/audioapi/core/sources/StreamerNode.h +11 -1
  45. package/common/cpp/audioapi/events/AudioEventHandlerRegistry.h +8 -2
  46. package/common/cpp/test/src/ConstantSourceTest.cpp +3 -2
  47. package/common/cpp/test/src/DelayTest.cpp +12 -5
  48. package/common/cpp/test/src/GainTest.cpp +3 -2
  49. package/common/cpp/test/src/IIRFilterTest.cpp +3 -2
  50. package/common/cpp/test/src/OscillatorTest.cpp +2 -1
  51. package/common/cpp/test/src/StereoPannerTest.cpp +3 -2
  52. package/common/cpp/test/src/biquad/BiquadFilterTest.cpp +10 -9
  53. package/common/cpp/test/src/core/effects/WaveShaperNodeTest.cpp +4 -3
  54. package/ios/audioapi/ios/AudioAPIModule.h +2 -2
  55. package/ios/audioapi/ios/AudioAPIModule.mm +3 -3
  56. package/ios/audioapi/ios/system/AudioEngine.mm +3 -1
  57. package/ios/audioapi/ios/system/AudioSessionManager.h +1 -0
  58. package/ios/audioapi/ios/system/{NotificationManager.h → SystemNotificationManager.h} +1 -1
  59. package/ios/audioapi/ios/system/{NotificationManager.mm → SystemNotificationManager.mm} +9 -4
  60. package/lib/commonjs/api.js +11 -3
  61. package/lib/commonjs/api.js.map +1 -1
  62. package/lib/commonjs/api.web.js +4 -10
  63. package/lib/commonjs/api.web.js.map +1 -1
  64. package/lib/commonjs/core/AnalyserNode.js +11 -0
  65. package/lib/commonjs/core/AnalyserNode.js.map +1 -1
  66. package/lib/commonjs/core/AudioBuffer.js +20 -6
  67. package/lib/commonjs/core/AudioBuffer.js.map +1 -1
  68. package/lib/commonjs/core/AudioBufferQueueSourceNode.js +24 -0
  69. package/lib/commonjs/core/AudioBufferQueueSourceNode.js.map +1 -1
  70. package/lib/commonjs/core/AudioBufferSourceNode.js +9 -6
  71. package/lib/commonjs/core/AudioBufferSourceNode.js.map +1 -1
  72. package/lib/commonjs/core/AudioScheduledSourceNode.js.map +1 -1
  73. package/lib/commonjs/core/BaseAudioContext.js +52 -65
  74. package/lib/commonjs/core/BaseAudioContext.js.map +1 -1
  75. package/lib/commonjs/core/BiquadFilterNode.js +7 -1
  76. package/lib/commonjs/core/BiquadFilterNode.js.map +1 -1
  77. package/lib/commonjs/core/ConstantSourceNode.js +7 -1
  78. package/lib/commonjs/core/ConstantSourceNode.js.map +1 -1
  79. package/lib/commonjs/core/ConvolverNode.js +9 -3
  80. package/lib/commonjs/core/ConvolverNode.js.map +1 -1
  81. package/lib/commonjs/core/DelayNode.js +7 -1
  82. package/lib/commonjs/core/DelayNode.js.map +1 -1
  83. package/lib/commonjs/core/GainNode.js +9 -3
  84. package/lib/commonjs/core/GainNode.js.map +1 -1
  85. package/lib/commonjs/core/IIRFilterNode.js +9 -0
  86. package/lib/commonjs/core/IIRFilterNode.js.map +1 -1
  87. package/lib/commonjs/core/OscillatorNode.js +10 -7
  88. package/lib/commonjs/core/OscillatorNode.js.map +1 -1
  89. package/lib/commonjs/core/PeriodicWave.js +30 -2
  90. package/lib/commonjs/core/PeriodicWave.js.map +1 -1
  91. package/lib/commonjs/core/RecorderAdapterNode.js +3 -0
  92. package/lib/commonjs/core/RecorderAdapterNode.js.map +1 -1
  93. package/lib/commonjs/core/StereoPannerNode.js +7 -1
  94. package/lib/commonjs/core/StereoPannerNode.js.map +1 -1
  95. package/lib/commonjs/core/StreamerNode.js +25 -1
  96. package/lib/commonjs/core/StreamerNode.js.map +1 -1
  97. package/lib/commonjs/core/WaveShaperNode.js +12 -0
  98. package/lib/commonjs/core/WaveShaperNode.js.map +1 -1
  99. package/lib/commonjs/core/WorkletNode.js +13 -1
  100. package/lib/commonjs/core/WorkletNode.js.map +1 -1
  101. package/lib/commonjs/core/WorkletProcessingNode.js +14 -1
  102. package/lib/commonjs/core/WorkletProcessingNode.js.map +1 -1
  103. package/lib/commonjs/core/WorkletSourceNode.js +13 -1
  104. package/lib/commonjs/core/WorkletSourceNode.js.map +1 -1
  105. package/lib/commonjs/defaults.js +78 -0
  106. package/lib/commonjs/defaults.js.map +1 -0
  107. package/lib/commonjs/options-validators.js +40 -0
  108. package/lib/commonjs/options-validators.js.map +1 -0
  109. package/lib/commonjs/specs/NativeAudioAPIModule.js.map +1 -1
  110. package/lib/commonjs/specs/NativeAudioAPIModule.web.js.map +1 -1
  111. package/lib/commonjs/system/AudioManager.js +7 -2
  112. package/lib/commonjs/system/AudioManager.js.map +1 -1
  113. package/lib/commonjs/types.js.map +1 -1
  114. package/lib/commonjs/web-core/AnalyserNode.js +2 -1
  115. package/lib/commonjs/web-core/AnalyserNode.js.map +1 -1
  116. package/lib/commonjs/web-core/AudioBuffer.js +14 -6
  117. package/lib/commonjs/web-core/AudioBuffer.js.map +1 -1
  118. package/lib/commonjs/web-core/AudioBufferSourceNode.js +276 -89
  119. package/lib/commonjs/web-core/AudioBufferSourceNode.js.map +1 -1
  120. package/lib/commonjs/web-core/AudioContext.js +33 -32
  121. package/lib/commonjs/web-core/AudioContext.js.map +1 -1
  122. package/lib/commonjs/web-core/AudioNode.js +4 -0
  123. package/lib/commonjs/web-core/AudioNode.js.map +1 -1
  124. package/lib/commonjs/web-core/AudioScheduledSourceNode.js +4 -2
  125. package/lib/commonjs/web-core/AudioScheduledSourceNode.js.map +1 -1
  126. package/lib/commonjs/web-core/BiquadFilterNode.js +2 -1
  127. package/lib/commonjs/web-core/BiquadFilterNode.js.map +1 -1
  128. package/lib/commonjs/web-core/ConstantSourceNode.js +2 -1
  129. package/lib/commonjs/web-core/ConstantSourceNode.js.map +1 -1
  130. package/lib/commonjs/web-core/ConvolverNode.js +3 -5
  131. package/lib/commonjs/web-core/ConvolverNode.js.map +1 -1
  132. package/lib/commonjs/web-core/DelayNode.js +7 -1
  133. package/lib/commonjs/web-core/DelayNode.js.map +1 -1
  134. package/lib/commonjs/web-core/GainNode.js +2 -1
  135. package/lib/commonjs/web-core/GainNode.js.map +1 -1
  136. package/lib/commonjs/web-core/IIRFilterNode.js +12 -0
  137. package/lib/commonjs/web-core/IIRFilterNode.js.map +1 -1
  138. package/lib/commonjs/web-core/OfflineAudioContext.js +33 -32
  139. package/lib/commonjs/web-core/OfflineAudioContext.js.map +1 -1
  140. package/lib/commonjs/web-core/OscillatorNode.js +2 -1
  141. package/lib/commonjs/web-core/OscillatorNode.js.map +1 -1
  142. package/lib/commonjs/web-core/PeriodicWave.js +6 -1
  143. package/lib/commonjs/web-core/PeriodicWave.js.map +1 -1
  144. package/lib/commonjs/web-core/StereoPannerNode.js +2 -1
  145. package/lib/commonjs/web-core/StereoPannerNode.js.map +1 -1
  146. package/lib/module/api.js +2 -1
  147. package/lib/module/api.js.map +1 -1
  148. package/lib/module/api.web.js +2 -1
  149. package/lib/module/api.web.js.map +1 -1
  150. package/lib/module/core/AnalyserNode.js +11 -0
  151. package/lib/module/core/AnalyserNode.js.map +1 -1
  152. package/lib/module/core/AudioBuffer.js +19 -6
  153. package/lib/module/core/AudioBuffer.js.map +1 -1
  154. package/lib/module/core/AudioBufferQueueSourceNode.js +24 -0
  155. package/lib/module/core/AudioBufferQueueSourceNode.js.map +1 -1
  156. package/lib/module/core/AudioBufferSourceNode.js +9 -6
  157. package/lib/module/core/AudioBufferSourceNode.js.map +1 -1
  158. package/lib/module/core/AudioScheduledSourceNode.js.map +1 -1
  159. package/lib/module/core/BaseAudioContext.js +52 -65
  160. package/lib/module/core/BaseAudioContext.js.map +1 -1
  161. package/lib/module/core/BiquadFilterNode.js +7 -1
  162. package/lib/module/core/BiquadFilterNode.js.map +1 -1
  163. package/lib/module/core/ConstantSourceNode.js +7 -1
  164. package/lib/module/core/ConstantSourceNode.js.map +1 -1
  165. package/lib/module/core/ConvolverNode.js +9 -3
  166. package/lib/module/core/ConvolverNode.js.map +1 -1
  167. package/lib/module/core/DelayNode.js +7 -1
  168. package/lib/module/core/DelayNode.js.map +1 -1
  169. package/lib/module/core/GainNode.js +9 -3
  170. package/lib/module/core/GainNode.js.map +1 -1
  171. package/lib/module/core/IIRFilterNode.js +9 -0
  172. package/lib/module/core/IIRFilterNode.js.map +1 -1
  173. package/lib/module/core/OscillatorNode.js +10 -7
  174. package/lib/module/core/OscillatorNode.js.map +1 -1
  175. package/lib/module/core/PeriodicWave.js +29 -2
  176. package/lib/module/core/PeriodicWave.js.map +1 -1
  177. package/lib/module/core/RecorderAdapterNode.js +3 -0
  178. package/lib/module/core/RecorderAdapterNode.js.map +1 -1
  179. package/lib/module/core/StereoPannerNode.js +7 -1
  180. package/lib/module/core/StereoPannerNode.js.map +1 -1
  181. package/lib/module/core/StreamerNode.js +25 -1
  182. package/lib/module/core/StreamerNode.js.map +1 -1
  183. package/lib/module/core/WaveShaperNode.js +12 -0
  184. package/lib/module/core/WaveShaperNode.js.map +1 -1
  185. package/lib/module/core/WorkletNode.js +13 -1
  186. package/lib/module/core/WorkletNode.js.map +1 -1
  187. package/lib/module/core/WorkletProcessingNode.js +14 -1
  188. package/lib/module/core/WorkletProcessingNode.js.map +1 -1
  189. package/lib/module/core/WorkletSourceNode.js +13 -1
  190. package/lib/module/core/WorkletSourceNode.js.map +1 -1
  191. package/lib/module/defaults.js +74 -0
  192. package/lib/module/defaults.js.map +1 -0
  193. package/lib/module/options-validators.js +36 -0
  194. package/lib/module/options-validators.js.map +1 -0
  195. package/lib/module/specs/NativeAudioAPIModule.js.map +1 -1
  196. package/lib/module/specs/NativeAudioAPIModule.web.js.map +1 -1
  197. package/lib/module/system/AudioManager.js +7 -2
  198. package/lib/module/system/AudioManager.js.map +1 -1
  199. package/lib/module/types.js.map +1 -1
  200. package/lib/module/web-core/AnalyserNode.js +2 -1
  201. package/lib/module/web-core/AnalyserNode.js.map +1 -1
  202. package/lib/module/web-core/AudioBuffer.js +13 -6
  203. package/lib/module/web-core/AudioBuffer.js.map +1 -1
  204. package/lib/module/web-core/AudioBufferSourceNode.js +277 -90
  205. package/lib/module/web-core/AudioBufferSourceNode.js.map +1 -1
  206. package/lib/module/web-core/AudioContext.js +33 -32
  207. package/lib/module/web-core/AudioContext.js.map +1 -1
  208. package/lib/module/web-core/AudioNode.js +4 -0
  209. package/lib/module/web-core/AudioNode.js.map +1 -1
  210. package/lib/module/web-core/AudioScheduledSourceNode.js +4 -2
  211. package/lib/module/web-core/AudioScheduledSourceNode.js.map +1 -1
  212. package/lib/module/web-core/BiquadFilterNode.js +2 -1
  213. package/lib/module/web-core/BiquadFilterNode.js.map +1 -1
  214. package/lib/module/web-core/ConstantSourceNode.js +2 -1
  215. package/lib/module/web-core/ConstantSourceNode.js.map +1 -1
  216. package/lib/module/web-core/ConvolverNode.js +3 -5
  217. package/lib/module/web-core/ConvolverNode.js.map +1 -1
  218. package/lib/module/web-core/DelayNode.js +7 -1
  219. package/lib/module/web-core/DelayNode.js.map +1 -1
  220. package/lib/module/web-core/GainNode.js +2 -1
  221. package/lib/module/web-core/GainNode.js.map +1 -1
  222. package/lib/module/web-core/IIRFilterNode.js +12 -0
  223. package/lib/module/web-core/IIRFilterNode.js.map +1 -1
  224. package/lib/module/web-core/OfflineAudioContext.js +33 -32
  225. package/lib/module/web-core/OfflineAudioContext.js.map +1 -1
  226. package/lib/module/web-core/OscillatorNode.js +2 -1
  227. package/lib/module/web-core/OscillatorNode.js.map +1 -1
  228. package/lib/module/web-core/PeriodicWave.js +6 -1
  229. package/lib/module/web-core/PeriodicWave.js.map +1 -1
  230. package/lib/module/web-core/StereoPannerNode.js +2 -1
  231. package/lib/module/web-core/StereoPannerNode.js.map +1 -1
  232. package/lib/typescript/api.d.ts +2 -1
  233. package/lib/typescript/api.d.ts.map +1 -1
  234. package/lib/typescript/api.web.d.ts +2 -1
  235. package/lib/typescript/api.web.d.ts.map +1 -1
  236. package/lib/typescript/core/AnalyserNode.d.ts +3 -1
  237. package/lib/typescript/core/AnalyserNode.d.ts.map +1 -1
  238. package/lib/typescript/core/AudioBuffer.d.ts +3 -0
  239. package/lib/typescript/core/AudioBuffer.d.ts.map +1 -1
  240. package/lib/typescript/core/AudioBufferQueueSourceNode.d.ts +8 -0
  241. package/lib/typescript/core/AudioBufferQueueSourceNode.d.ts.map +1 -1
  242. package/lib/typescript/core/AudioBufferSourceNode.d.ts +3 -2
  243. package/lib/typescript/core/AudioBufferSourceNode.d.ts.map +1 -1
  244. package/lib/typescript/core/AudioScheduledSourceNode.d.ts +3 -3
  245. package/lib/typescript/core/AudioScheduledSourceNode.d.ts.map +1 -1
  246. package/lib/typescript/core/BaseAudioContext.d.ts +10 -6
  247. package/lib/typescript/core/BaseAudioContext.d.ts.map +1 -1
  248. package/lib/typescript/core/BiquadFilterNode.d.ts +2 -3
  249. package/lib/typescript/core/BiquadFilterNode.d.ts.map +1 -1
  250. package/lib/typescript/core/ConstantSourceNode.d.ts +2 -2
  251. package/lib/typescript/core/ConstantSourceNode.d.ts.map +1 -1
  252. package/lib/typescript/core/ConvolverNode.d.ts +2 -2
  253. package/lib/typescript/core/ConvolverNode.d.ts.map +1 -1
  254. package/lib/typescript/core/DelayNode.d.ts +2 -2
  255. package/lib/typescript/core/DelayNode.d.ts.map +1 -1
  256. package/lib/typescript/core/GainNode.d.ts +2 -2
  257. package/lib/typescript/core/GainNode.d.ts.map +1 -1
  258. package/lib/typescript/core/IIRFilterNode.d.ts +3 -0
  259. package/lib/typescript/core/IIRFilterNode.d.ts.map +1 -1
  260. package/lib/typescript/core/OscillatorNode.d.ts +2 -6
  261. package/lib/typescript/core/OscillatorNode.d.ts.map +1 -1
  262. package/lib/typescript/core/PeriodicWave.d.ts +4 -1
  263. package/lib/typescript/core/PeriodicWave.d.ts.map +1 -1
  264. package/lib/typescript/core/RecorderAdapterNode.d.ts +2 -0
  265. package/lib/typescript/core/RecorderAdapterNode.d.ts.map +1 -1
  266. package/lib/typescript/core/StereoPannerNode.d.ts +2 -2
  267. package/lib/typescript/core/StereoPannerNode.d.ts.map +1 -1
  268. package/lib/typescript/core/StreamerNode.d.ts +5 -0
  269. package/lib/typescript/core/StreamerNode.d.ts.map +1 -1
  270. package/lib/typescript/core/WaveShaperNode.d.ts +3 -0
  271. package/lib/typescript/core/WaveShaperNode.d.ts.map +1 -1
  272. package/lib/typescript/core/WorkletNode.d.ts +3 -0
  273. package/lib/typescript/core/WorkletNode.d.ts.map +1 -1
  274. package/lib/typescript/core/WorkletProcessingNode.d.ts +3 -0
  275. package/lib/typescript/core/WorkletProcessingNode.d.ts.map +1 -1
  276. package/lib/typescript/core/WorkletSourceNode.d.ts +3 -0
  277. package/lib/typescript/core/WorkletSourceNode.d.ts.map +1 -1
  278. package/lib/typescript/defaults.d.ts +16 -0
  279. package/lib/typescript/defaults.d.ts.map +1 -0
  280. package/lib/typescript/events/types.d.ts +6 -4
  281. package/lib/typescript/events/types.d.ts.map +1 -1
  282. package/lib/typescript/interfaces.d.ts +17 -15
  283. package/lib/typescript/interfaces.d.ts.map +1 -1
  284. package/lib/typescript/options-validators.d.ts +6 -0
  285. package/lib/typescript/options-validators.d.ts.map +1 -0
  286. package/lib/typescript/specs/NativeAudioAPIModule.d.ts +2 -1
  287. package/lib/typescript/specs/NativeAudioAPIModule.d.ts.map +1 -1
  288. package/lib/typescript/specs/NativeAudioAPIModule.web.d.ts +2 -2
  289. package/lib/typescript/specs/NativeAudioAPIModule.web.d.ts.map +1 -1
  290. package/lib/typescript/system/AudioManager.d.ts +2 -2
  291. package/lib/typescript/system/AudioManager.d.ts.map +1 -1
  292. package/lib/typescript/system/types.d.ts +2 -1
  293. package/lib/typescript/system/types.d.ts.map +1 -1
  294. package/lib/typescript/types.d.ts +80 -11
  295. package/lib/typescript/types.d.ts.map +1 -1
  296. package/lib/typescript/web-core/AnalyserNode.d.ts +2 -2
  297. package/lib/typescript/web-core/AnalyserNode.d.ts.map +1 -1
  298. package/lib/typescript/web-core/AudioBuffer.d.ts +3 -0
  299. package/lib/typescript/web-core/AudioBuffer.d.ts.map +1 -1
  300. package/lib/typescript/web-core/AudioBufferSourceNode.d.ts +24 -15
  301. package/lib/typescript/web-core/AudioBufferSourceNode.d.ts.map +1 -1
  302. package/lib/typescript/web-core/AudioContext.d.ts +5 -6
  303. package/lib/typescript/web-core/AudioContext.d.ts.map +1 -1
  304. package/lib/typescript/web-core/AudioNode.d.ts +2 -2
  305. package/lib/typescript/web-core/AudioNode.d.ts.map +1 -1
  306. package/lib/typescript/web-core/AudioScheduledSourceNode.d.ts +2 -0
  307. package/lib/typescript/web-core/AudioScheduledSourceNode.d.ts.map +1 -1
  308. package/lib/typescript/web-core/BaseAudioContext.d.ts +3 -3
  309. package/lib/typescript/web-core/BaseAudioContext.d.ts.map +1 -1
  310. package/lib/typescript/web-core/BiquadFilterNode.d.ts +2 -2
  311. package/lib/typescript/web-core/BiquadFilterNode.d.ts.map +1 -1
  312. package/lib/typescript/web-core/ConstantSourceNode.d.ts +2 -1
  313. package/lib/typescript/web-core/ConstantSourceNode.d.ts.map +1 -1
  314. package/lib/typescript/web-core/ConvolverNode.d.ts +2 -1
  315. package/lib/typescript/web-core/ConvolverNode.d.ts.map +1 -1
  316. package/lib/typescript/web-core/DelayNode.d.ts +2 -1
  317. package/lib/typescript/web-core/DelayNode.d.ts.map +1 -1
  318. package/lib/typescript/web-core/GainNode.d.ts +2 -1
  319. package/lib/typescript/web-core/GainNode.d.ts.map +1 -1
  320. package/lib/typescript/web-core/IIRFilterNode.d.ts +3 -0
  321. package/lib/typescript/web-core/IIRFilterNode.d.ts.map +1 -1
  322. package/lib/typescript/web-core/OfflineAudioContext.d.ts +5 -6
  323. package/lib/typescript/web-core/OfflineAudioContext.d.ts.map +1 -1
  324. package/lib/typescript/web-core/OscillatorNode.d.ts +2 -2
  325. package/lib/typescript/web-core/OscillatorNode.d.ts.map +1 -1
  326. package/lib/typescript/web-core/PeriodicWave.d.ts +3 -1
  327. package/lib/typescript/web-core/PeriodicWave.d.ts.map +1 -1
  328. package/lib/typescript/web-core/StereoPannerNode.d.ts +2 -1
  329. package/lib/typescript/web-core/StereoPannerNode.d.ts.map +1 -1
  330. package/package.json +1 -1
  331. package/src/api.ts +3 -1
  332. package/src/api.web.ts +1 -2
  333. package/src/core/AnalyserNode.ts +16 -1
  334. package/src/core/AudioBuffer.ts +26 -6
  335. package/src/core/AudioBufferQueueSourceNode.ts +46 -0
  336. package/src/core/AudioBufferSourceNode.ts +12 -10
  337. package/src/core/AudioScheduledSourceNode.ts +4 -4
  338. package/src/core/BaseAudioContext.ts +48 -151
  339. package/src/core/BiquadFilterNode.ts +9 -2
  340. package/src/core/ConstantSourceNode.ts +9 -1
  341. package/src/core/ConvolverNode.ts +11 -3
  342. package/src/core/DelayNode.ts +5 -2
  343. package/src/core/GainNode.ts +10 -3
  344. package/src/core/IIRFilterNode.ts +12 -0
  345. package/src/core/OscillatorNode.ts +13 -13
  346. package/src/core/PeriodicWave.ts +36 -2
  347. package/src/core/RecorderAdapterNode.ts +5 -0
  348. package/src/core/StereoPannerNode.ts +9 -1
  349. package/src/core/StreamerNode.ts +29 -1
  350. package/src/core/WaveShaperNode.ts +17 -0
  351. package/src/core/WorkletNode.ts +30 -1
  352. package/src/core/WorkletProcessingNode.ts +39 -1
  353. package/src/core/WorkletSourceNode.ts +36 -1
  354. package/src/defaults.ts +100 -0
  355. package/src/events/types.ts +6 -4
  356. package/src/interfaces.ts +40 -24
  357. package/src/options-validators.ts +66 -0
  358. package/src/specs/NativeAudioAPIModule.ts +6 -1
  359. package/src/specs/NativeAudioAPIModule.web.ts +6 -2
  360. package/src/system/AudioManager.ts +8 -2
  361. package/src/system/types.ts +7 -1
  362. package/src/types.ts +96 -12
  363. package/src/web-core/AnalyserNode.tsx +15 -6
  364. package/src/web-core/AudioBuffer.tsx +20 -6
  365. package/src/web-core/AudioBufferSourceNode.tsx +393 -148
  366. package/src/web-core/AudioContext.tsx +22 -72
  367. package/src/web-core/AudioNode.tsx +6 -2
  368. package/src/web-core/AudioScheduledSourceNode.tsx +6 -1
  369. package/src/web-core/BaseAudioContext.tsx +3 -7
  370. package/src/web-core/BiquadFilterNode.tsx +6 -2
  371. package/src/web-core/ConstantSourceNode.tsx +3 -1
  372. package/src/web-core/ConvolverNode.tsx +8 -8
  373. package/src/web-core/DelayNode.tsx +5 -1
  374. package/src/web-core/GainNode.tsx +3 -1
  375. package/src/web-core/IIRFilterNode.tsx +15 -0
  376. package/src/web-core/OfflineAudioContext.tsx +19 -67
  377. package/src/web-core/OscillatorNode.tsx +3 -2
  378. package/src/web-core/PeriodicWave.tsx +11 -1
  379. package/src/web-core/StereoPannerNode.tsx +9 -1
@@ -7,9 +7,18 @@ exports.default = void 0;
7
7
  var _AudioScheduledSourceNode = _interopRequireDefault(require("./AudioScheduledSourceNode"));
8
8
  var _AudioParam = _interopRequireDefault(require("./AudioParam"));
9
9
  var _errors = require("../errors");
10
+ var _defaults = require("../defaults");
10
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
12
  class OscillatorNode extends _AudioScheduledSourceNode.default {
12
- constructor(context, node) {
13
+ constructor(context, options) {
14
+ const finalOptions = {
15
+ ..._defaults.OscillatorOptions,
16
+ ...options
17
+ };
18
+ if (finalOptions.periodicWave) {
19
+ finalOptions.type = 'custom';
20
+ }
21
+ const node = context.context.createOscillator(finalOptions);
13
22
  super(context, node);
14
23
  this.frequency = new _AudioParam.default(node.frequency, context);
15
24
  this.detune = new _AudioParam.default(node.detune, context);
@@ -27,12 +36,6 @@ class OscillatorNode extends _AudioScheduledSourceNode.default {
27
36
  setPeriodicWave(wave) {
28
37
  this.node.setPeriodicWave(wave.periodicWave);
29
38
  }
30
- get onEnded() {
31
- return super.onEnded;
32
- }
33
- set onEnded(callback) {
34
- super.onEnded = callback;
35
- }
36
39
  }
37
40
  exports.default = OscillatorNode;
38
41
  //# sourceMappingURL=OscillatorNode.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_AudioScheduledSourceNode","_interopRequireDefault","require","_AudioParam","_errors","e","__esModule","default","OscillatorNode","AudioScheduledSourceNode","constructor","context","node","frequency","AudioParam","detune","type","value","InvalidStateError","setPeriodicWave","wave","periodicWave","onEnded","callback","exports"],"sourceRoot":"../../../src","sources":["core/OscillatorNode.ts"],"mappings":";;;;;;AAEA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAGA,IAAAE,OAAA,GAAAF,OAAA;AAA8C,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAG/B,MAAMG,cAAc,SAASC,iCAAwB,CAAC;EAInEC,WAAWA,CAACC,OAAyB,EAAEC,IAAqB,EAAE;IAC5D,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IACpB,IAAI,CAACC,SAAS,GAAG,IAAIC,mBAAU,CAACF,IAAI,CAACC,SAAS,EAAEF,OAAO,CAAC;IACxD,IAAI,CAACI,MAAM,GAAG,IAAID,mBAAU,CAACF,IAAI,CAACG,MAAM,EAAEJ,OAAO,CAAC;IAClD,IAAI,CAACK,IAAI,GAAGJ,IAAI,CAACI,IAAI;EACvB;EAEA,IAAWA,IAAIA,CAAA,EAAmB;IAChC,OAAQ,IAAI,CAACJ,IAAI,CAAqBI,IAAI;EAC5C;EAEA,IAAWA,IAAIA,CAACC,KAAqB,EAAE;IACrC,IAAIA,KAAK,KAAK,QAAQ,EAAE;MACtB,MAAM,IAAIC,yBAAiB,CACzB,uGACF,CAAC;IACH;IAEC,IAAI,CAACN,IAAI,CAAqBI,IAAI,GAAGC,KAAK;EAC7C;EAEOE,eAAeA,CAACC,IAAkB,EAAQ;IAC9C,IAAI,CAACR,IAAI,CAAqBO,eAAe,CAACC,IAAI,CAACC,YAAY,CAAC;EACnE;EAEA,IAAoBC,OAAOA,CAAA,EAAkD;IAC3E,OAAO,KAAK,CAACA,OAAO;EACtB;EAEA,IAAoBA,OAAOA,CACzBC,QAAkD,EAClD;IACA,KAAK,CAACD,OAAO,GAAGC,QAAQ;EAC1B;AACF;AAACC,OAAA,CAAAjB,OAAA,GAAAC,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["_AudioScheduledSourceNode","_interopRequireDefault","require","_AudioParam","_errors","_defaults","e","__esModule","default","OscillatorNode","AudioScheduledSourceNode","constructor","context","options","finalOptions","OscillatorOptions","periodicWave","type","node","createOscillator","frequency","AudioParam","detune","value","InvalidStateError","setPeriodicWave","wave","exports"],"sourceRoot":"../../../src","sources":["core/OscillatorNode.ts"],"mappings":";;;;;;AACA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAGA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AAAgD,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGjC,MAAMG,cAAc,SAASC,iCAAwB,CAAC;EAInEC,WAAWA,CAACC,OAAyB,EAAEC,OAA4B,EAAE;IACnE,MAAMC,YAAgC,GAAG;MACvC,GAAGC,2BAAiB;MACpB,GAAGF;IACL,CAAC;IAED,IAAIC,YAAY,CAACE,YAAY,EAAE;MAC7BF,YAAY,CAACG,IAAI,GAAG,QAAQ;IAC9B;IAEA,MAAMC,IAAI,GAAGN,OAAO,CAACA,OAAO,CAACO,gBAAgB,CAACL,YAAY,CAAC;IAC3D,KAAK,CAACF,OAAO,EAAEM,IAAI,CAAC;IACpB,IAAI,CAACE,SAAS,GAAG,IAAIC,mBAAU,CAACH,IAAI,CAACE,SAAS,EAAER,OAAO,CAAC;IACxD,IAAI,CAACU,MAAM,GAAG,IAAID,mBAAU,CAACH,IAAI,CAACI,MAAM,EAAEV,OAAO,CAAC;IAClD,IAAI,CAACK,IAAI,GAAGC,IAAI,CAACD,IAAI;EACvB;EAEA,IAAWA,IAAIA,CAAA,EAAmB;IAChC,OAAQ,IAAI,CAACC,IAAI,CAAqBD,IAAI;EAC5C;EAEA,IAAWA,IAAIA,CAACM,KAAqB,EAAE;IACrC,IAAIA,KAAK,KAAK,QAAQ,EAAE;MACtB,MAAM,IAAIC,yBAAiB,CACzB,uGACF,CAAC;IACH;IAEC,IAAI,CAACN,IAAI,CAAqBD,IAAI,GAAGM,KAAK;EAC7C;EAEOE,eAAeA,CAACC,IAAkB,EAAQ;IAC9C,IAAI,CAACR,IAAI,CAAqBO,eAAe,CAACC,IAAI,CAACV,YAAY,CAAC;EACnE;AACF;AAACW,OAAA,CAAAnB,OAAA,GAAAC,cAAA","ignoreList":[]}
@@ -4,11 +4,39 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+ exports.generateRealAndImag = generateRealAndImag;
8
+ var _defaults = require("../defaults");
9
+ var _optionsValidators = require("../options-validators");
10
+ function generateRealAndImag(options) {
11
+ let real;
12
+ let imag;
13
+ if (!options || !options.real && !options.imag) {
14
+ real = new Float32Array(2);
15
+ imag = new Float32Array(2);
16
+ imag[1] = 1;
17
+ } else {
18
+ real = options.real;
19
+ imag = options.imag;
20
+ _optionsValidators.PeriodicWaveOptionsValidator.validate(options);
21
+ if (real && !imag) {
22
+ imag = new Float32Array(real.length);
23
+ } else if (!real && imag) {
24
+ real = new Float32Array(imag.length);
25
+ }
26
+ }
27
+ const norm = options?.disableNormalization ? options.disableNormalization : _defaults.PeriodicWaveConstraints.disableNormalization;
28
+ return {
29
+ real,
30
+ imag,
31
+ disableNormalization: norm
32
+ };
33
+ }
7
34
  class PeriodicWave {
8
35
  /** @internal */
9
36
 
10
- constructor(periodicWave) {
11
- this.periodicWave = periodicWave;
37
+ constructor(context, options) {
38
+ const finalOptions = generateRealAndImag(options);
39
+ this.periodicWave = context.context.createPeriodicWave(finalOptions.real, finalOptions.imag, finalOptions.disableNormalization);
12
40
  }
13
41
  }
14
42
  exports.default = PeriodicWave;
@@ -1 +1 @@
1
- {"version":3,"names":["PeriodicWave","constructor","periodicWave","exports","default"],"sourceRoot":"../../../src","sources":["core/PeriodicWave.ts"],"mappings":";;;;;;AAEe,MAAMA,YAAY,CAAC;EAChC;;EAGAC,WAAWA,CAACC,YAA2B,EAAE;IACvC,IAAI,CAACA,YAAY,GAAGA,YAAY;EAClC;AACF;AAACC,OAAA,CAAAC,OAAA,GAAAJ,YAAA","ignoreList":[]}
1
+ {"version":3,"names":["_defaults","require","_optionsValidators","generateRealAndImag","options","real","imag","Float32Array","PeriodicWaveOptionsValidator","validate","length","norm","disableNormalization","PeriodicWaveConstraints","PeriodicWave","constructor","context","finalOptions","periodicWave","createPeriodicWave","exports","default"],"sourceRoot":"../../../src","sources":["core/PeriodicWave.ts"],"mappings":";;;;;;;AAGA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAD,OAAA;AAEO,SAASE,mBAAmBA,CACjCC,OAA8B,EACR;EACtB,IAAIC,IAA8B;EAClC,IAAIC,IAA8B;EAClC,IAAI,CAACF,OAAO,IAAK,CAACA,OAAO,CAACC,IAAI,IAAI,CAACD,OAAO,CAACE,IAAK,EAAE;IAChDD,IAAI,GAAG,IAAIE,YAAY,CAAC,CAAC,CAAC;IAC1BD,IAAI,GAAG,IAAIC,YAAY,CAAC,CAAC,CAAC;IAC1BD,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;EACb,CAAC,MAAM;IACLD,IAAI,GAAGD,OAAO,CAACC,IAAI;IACnBC,IAAI,GAAGF,OAAO,CAACE,IAAI;IACnBE,+CAA4B,CAACC,QAAQ,CAACL,OAAO,CAAC;IAC9C,IAAIC,IAAI,IAAI,CAACC,IAAI,EAAE;MACjBA,IAAI,GAAG,IAAIC,YAAY,CAACF,IAAI,CAACK,MAAM,CAAC;IACtC,CAAC,MAAM,IAAI,CAACL,IAAI,IAAIC,IAAI,EAAE;MACxBD,IAAI,GAAG,IAAIE,YAAY,CAACD,IAAI,CAACI,MAAM,CAAC;IACtC;EACF;EACA,MAAMC,IAAa,GAAGP,OAAO,EAAEQ,oBAAoB,GAC/CR,OAAO,CAACQ,oBAAoB,GAC5BC,iCAAuB,CAACD,oBAAqB;EACjD,OAAO;IAAEP,IAAI;IAAEC,IAAI;IAAEM,oBAAoB,EAAED;EAAK,CAAC;AACnD;AAEe,MAAMG,YAAY,CAAC;EAChC;;EAGAC,WAAWA,CAACC,OAAyB,EAAEZ,OAA8B,EAAE;IACrE,MAAMa,YAAY,GAAGd,mBAAmB,CAACC,OAAO,CAAC;IACjD,IAAI,CAACc,YAAY,GAAGF,OAAO,CAACA,OAAO,CAACG,kBAAkB,CACpDF,YAAY,CAACZ,IAAI,EACjBY,YAAY,CAACX,IAAI,EACjBW,YAAY,CAACL,oBACf,CAAC;EACH;AACF;AAACQ,OAAA,CAAAC,OAAA,GAAAP,YAAA","ignoreList":[]}
@@ -9,6 +9,9 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
9
9
  class RecorderAdapterNode extends _AudioNode.default {
10
10
  /** @internal */
11
11
  wasConnected = false;
12
+ constructor(context) {
13
+ super(context, context.context.createRecorderAdapter());
14
+ }
12
15
 
13
16
  /** @internal */
14
17
  getNode() {
@@ -1 +1 @@
1
- {"version":3,"names":["_AudioNode","_interopRequireDefault","require","e","__esModule","default","RecorderAdapterNode","AudioNode","wasConnected","getNode","node","exports"],"sourceRoot":"../../../src","sources":["core/RecorderAdapterNode.ts"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAErB,MAAMG,mBAAmB,SAASC,kBAAS,CAAC;EACzD;EACOC,YAAY,GAAY,KAAK;;EAEpC;EACOC,OAAOA,CAAA,EAAyB;IACrC,OAAO,IAAI,CAACC,IAAI;EAClB;AACF;AAACC,OAAA,CAAAN,OAAA,GAAAC,mBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_AudioNode","_interopRequireDefault","require","e","__esModule","default","RecorderAdapterNode","AudioNode","wasConnected","constructor","context","createRecorderAdapter","getNode","node","exports"],"sourceRoot":"../../../src","sources":["core/RecorderAdapterNode.ts"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGrB,MAAMG,mBAAmB,SAASC,kBAAS,CAAC;EACzD;EACOC,YAAY,GAAY,KAAK;EAEpCC,WAAWA,CAACC,OAAyB,EAAE;IACrC,KAAK,CAACA,OAAO,EAAEA,OAAO,CAACA,OAAO,CAACC,qBAAqB,CAAC,CAAC,CAAC;EACzD;;EAEA;EACOC,OAAOA,CAAA,EAAyB;IACrC,OAAO,IAAI,CAACC,IAAI;EAClB;AACF;AAACC,OAAA,CAAAT,OAAA,GAAAC,mBAAA","ignoreList":[]}
@@ -4,11 +4,17 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+ var _defaults = require("../defaults");
7
8
  var _AudioNode = _interopRequireDefault(require("./AudioNode"));
8
9
  var _AudioParam = _interopRequireDefault(require("./AudioParam"));
9
10
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
11
  class StereoPannerNode extends _AudioNode.default {
11
- constructor(context, pan) {
12
+ constructor(context, options) {
13
+ const finalOptions = {
14
+ ..._defaults.SteroPannerOptions,
15
+ ...options
16
+ };
17
+ const pan = context.context.createStereoPanner(finalOptions);
12
18
  super(context, pan);
13
19
  this.pan = new _AudioParam.default(pan.pan, context);
14
20
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_AudioNode","_interopRequireDefault","require","_AudioParam","e","__esModule","default","StereoPannerNode","AudioNode","constructor","context","pan","AudioParam","exports"],"sourceRoot":"../../../src","sources":["core/StereoPannerNode.ts"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAAsC,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGvB,MAAMG,gBAAgB,SAASC,kBAAS,CAAC;EAGtDC,WAAWA,CAACC,OAAyB,EAAEC,GAAsB,EAAE;IAC7D,KAAK,CAACD,OAAO,EAAEC,GAAG,CAAC;IACnB,IAAI,CAACA,GAAG,GAAG,IAAIC,mBAAU,CAACD,GAAG,CAACA,GAAG,EAAED,OAAO,CAAC;EAC7C;AACF;AAACG,OAAA,CAAAP,OAAA,GAAAC,gBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_defaults","require","_AudioNode","_interopRequireDefault","_AudioParam","e","__esModule","default","StereoPannerNode","AudioNode","constructor","context","options","finalOptions","SteroPannerOptions","pan","createStereoPanner","AudioParam","exports"],"sourceRoot":"../../../src","sources":["core/StereoPannerNode.ts"],"mappings":";;;;;;AACA,IAAAA,SAAA,GAAAC,OAAA;AAEA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,WAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAsC,SAAAE,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGvB,MAAMG,gBAAgB,SAASC,kBAAS,CAAC;EAGtDC,WAAWA,CAACC,OAAyB,EAAEC,OAA6B,EAAE;IACpE,MAAMC,YAAiC,GAAG;MACxC,GAAGC,4BAAkB;MACrB,GAAGF;IACL,CAAC;IACD,MAAMG,GAAsB,GAC1BJ,OAAO,CAACA,OAAO,CAACK,kBAAkB,CAACH,YAAY,CAAC;IAClD,KAAK,CAACF,OAAO,EAAEI,GAAG,CAAC;IACnB,IAAI,CAACA,GAAG,GAAG,IAAIE,mBAAU,CAACF,GAAG,CAACA,GAAG,EAAEJ,OAAO,CAAC;EAC7C;AACF;AAACO,OAAA,CAAAX,OAAA,GAAAC,gBAAA","ignoreList":[]}
@@ -5,10 +5,34 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _AudioScheduledSourceNode = _interopRequireDefault(require("./AudioScheduledSourceNode"));
8
+ var _errors = require("../errors");
8
9
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
10
  class StreamerNode extends _AudioScheduledSourceNode.default {
11
+ hasBeenSetup = false;
12
+ constructor(context, options) {
13
+ const node = context.context.createStreamer(options);
14
+ if (!node) {
15
+ throw new _errors.NotSupportedError('StreamerNode requires FFmpeg build');
16
+ }
17
+ super(context, node);
18
+ if (options?.streamPath) {
19
+ if (this.initialize(options.streamPath)) {
20
+ this.hasBeenSetup = true;
21
+ }
22
+ }
23
+ }
10
24
  initialize(streamPath) {
11
- return this.node.initialize(streamPath);
25
+ if (this.hasBeenSetup) {
26
+ throw new _errors.InvalidStateError('Node is already setup');
27
+ }
28
+ const res = this.node.initialize(streamPath);
29
+ if (res) {
30
+ this.hasBeenSetup = true;
31
+ }
32
+ return res;
33
+ }
34
+ get streamPath() {
35
+ return this.node.streamPath;
12
36
  }
13
37
  }
14
38
  exports.default = StreamerNode;
@@ -1 +1 @@
1
- {"version":3,"names":["_AudioScheduledSourceNode","_interopRequireDefault","require","e","__esModule","default","StreamerNode","AudioScheduledSourceNode","initialize","streamPath","node","exports"],"sourceRoot":"../../../src","sources":["core/StreamerNode.ts"],"mappings":";;;;;;AACA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAkE,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnD,MAAMG,YAAY,SAASC,iCAAwB,CAAC;EAC1DC,UAAUA,CAACC,UAAkB,EAAW;IAC7C,OAAQ,IAAI,CAACC,IAAI,CAAmBF,UAAU,CAACC,UAAU,CAAC;EAC5D;AACF;AAACE,OAAA,CAAAN,OAAA,GAAAC,YAAA","ignoreList":[]}
1
+ {"version":3,"names":["_AudioScheduledSourceNode","_interopRequireDefault","require","_errors","e","__esModule","default","StreamerNode","AudioScheduledSourceNode","hasBeenSetup","constructor","context","options","node","createStreamer","NotSupportedError","streamPath","initialize","InvalidStateError","res","exports"],"sourceRoot":"../../../src","sources":["core/StreamerNode.ts"],"mappings":";;;;;;AACA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAAiE,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGlD,MAAMG,YAAY,SAASC,iCAAwB,CAAC;EACzDC,YAAY,GAAY,KAAK;EACrCC,WAAWA,CAACC,OAAyB,EAAEC,OAA0B,EAAE;IACjE,MAAMC,IAAI,GAAGF,OAAO,CAACA,OAAO,CAACG,cAAc,CAACF,OAAO,CAAC;IACpD,IAAI,CAACC,IAAI,EAAE;MACT,MAAM,IAAIE,yBAAiB,CAAC,oCAAoC,CAAC;IACnE;IACA,KAAK,CAACJ,OAAO,EAAEE,IAAI,CAAC;IACpB,IAAID,OAAO,EAAEI,UAAU,EAAE;MACvB,IAAI,IAAI,CAACC,UAAU,CAACL,OAAO,CAACI,UAAU,CAAC,EAAE;QACvC,IAAI,CAACP,YAAY,GAAG,IAAI;MAC1B;IACF;EACF;EAEOQ,UAAUA,CAACD,UAAkB,EAAW;IAC7C,IAAI,IAAI,CAACP,YAAY,EAAE;MACrB,MAAM,IAAIS,yBAAiB,CAAC,uBAAuB,CAAC;IACtD;IACA,MAAMC,GAAG,GAAI,IAAI,CAACN,IAAI,CAAmBI,UAAU,CAACD,UAAU,CAAC;IAC/D,IAAIG,GAAG,EAAE;MACP,IAAI,CAACV,YAAY,GAAG,IAAI;IAC1B;IACA,OAAOU,GAAG;EACZ;EAEA,IAAWH,UAAUA,CAAA,EAAW;IAC9B,OAAQ,IAAI,CAACH,IAAI,CAAmBG,UAAU;EAChD;AACF;AAACI,OAAA,CAAAd,OAAA,GAAAC,YAAA","ignoreList":[]}
@@ -6,9 +6,21 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _AudioNode = _interopRequireDefault(require("./AudioNode"));
8
8
  var _errors = require("../errors");
9
+ var _defaults = require("../defaults");
9
10
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
11
  class WaveShaperNode extends _AudioNode.default {
11
12
  isCurveSet = false;
13
+ constructor(context, options) {
14
+ const finalOptions = {
15
+ ..._defaults.WaveShaperOptions,
16
+ ...options
17
+ };
18
+ const node = context.context.createWaveShaper(finalOptions);
19
+ super(context, node);
20
+ if (finalOptions.curve) {
21
+ this.isCurveSet = true;
22
+ }
23
+ }
12
24
  get curve() {
13
25
  if (!this.isCurveSet) {
14
26
  return null;
@@ -1 +1 @@
1
- {"version":3,"names":["_AudioNode","_interopRequireDefault","require","_errors","e","__esModule","default","WaveShaperNode","AudioNode","isCurveSet","curve","node","oversample","InvalidStateError","length","setCurve","value","exports"],"sourceRoot":"../../../src","sources":["core/WaveShaperNode.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAA8C,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAG/B,MAAMG,cAAc,SAASC,kBAAS,CAAC;EAC5CC,UAAU,GAAY,KAAK;EAEnC,IAAIC,KAAKA,CAAA,EAAwB;IAC/B,IAAI,CAAC,IAAI,CAACD,UAAU,EAAE;MACpB,OAAO,IAAI;IACb;IAEA,OAAQ,IAAI,CAACE,IAAI,CAAqBD,KAAK;EAC7C;EAEA,IAAIE,UAAUA,CAAA,EAAmB;IAC/B,OAAQ,IAAI,CAACD,IAAI,CAAqBC,UAAU;EAClD;EAEA,IAAIF,KAAKA,CAACA,KAA0B,EAAE;IACpC,IAAIA,KAAK,KAAK,IAAI,EAAE;MAClB,IAAI,IAAI,CAACD,UAAU,EAAE;QACnB,MAAM,IAAII,yBAAiB,CACzB,kEACF,CAAC;MACH;MAEA,IAAIH,KAAK,CAACI,MAAM,GAAG,CAAC,EAAE;QACpB,MAAM,IAAID,yBAAiB,CACzB,sDACF,CAAC;MACH;MAEA,IAAI,CAACJ,UAAU,GAAG,IAAI;IACxB;IAEC,IAAI,CAACE,IAAI,CAAqBI,QAAQ,CAACL,KAAK,CAAC;EAChD;EAEA,IAAIE,UAAUA,CAACI,KAAqB,EAAE;IACnC,IAAI,CAACL,IAAI,CAAqBC,UAAU,GAAGI,KAAK;EACnD;AACF;AAACC,OAAA,CAAAX,OAAA,GAAAC,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["_AudioNode","_interopRequireDefault","require","_errors","_defaults","e","__esModule","default","WaveShaperNode","AudioNode","isCurveSet","constructor","context","options","finalOptions","WaveShaperOptions","node","createWaveShaper","curve","oversample","InvalidStateError","length","setCurve","value","exports"],"sourceRoot":"../../../src","sources":["core/WaveShaperNode.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AAAgD,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGjC,MAAMG,cAAc,SAASC,kBAAS,CAAC;EAC5CC,UAAU,GAAY,KAAK;EAEnCC,WAAWA,CAACC,OAAyB,EAAEC,OAA4B,EAAE;IACnE,MAAMC,YAAgC,GAAG;MACvC,GAAGC,2BAAiB;MACpB,GAAGF;IACL,CAAC;IAED,MAAMG,IAAI,GAAGJ,OAAO,CAACA,OAAO,CAACK,gBAAgB,CAACH,YAAY,CAAC;IAC3D,KAAK,CAACF,OAAO,EAAEI,IAAI,CAAC;IAEpB,IAAIF,YAAY,CAACI,KAAK,EAAE;MACtB,IAAI,CAACR,UAAU,GAAG,IAAI;IACxB;EACF;EAEA,IAAIQ,KAAKA,CAAA,EAAwB;IAC/B,IAAI,CAAC,IAAI,CAACR,UAAU,EAAE;MACpB,OAAO,IAAI;IACb;IAEA,OAAQ,IAAI,CAACM,IAAI,CAAqBE,KAAK;EAC7C;EAEA,IAAIC,UAAUA,CAAA,EAAmB;IAC/B,OAAQ,IAAI,CAACH,IAAI,CAAqBG,UAAU;EAClD;EAEA,IAAID,KAAKA,CAACA,KAA0B,EAAE;IACpC,IAAIA,KAAK,KAAK,IAAI,EAAE;MAClB,IAAI,IAAI,CAACR,UAAU,EAAE;QACnB,MAAM,IAAIU,yBAAiB,CACzB,kEACF,CAAC;MACH;MAEA,IAAIF,KAAK,CAACG,MAAM,GAAG,CAAC,EAAE;QACpB,MAAM,IAAID,yBAAiB,CACzB,sDACF,CAAC;MACH;MAEA,IAAI,CAACV,UAAU,GAAG,IAAI;IACxB;IAEC,IAAI,CAACM,IAAI,CAAqBM,QAAQ,CAACJ,KAAK,CAAC;EAChD;EAEA,IAAIC,UAAUA,CAACI,KAAqB,EAAE;IACnC,IAAI,CAACP,IAAI,CAAqBG,UAAU,GAAGI,KAAK;EACnD;AACF;AAACC,OAAA,CAAAjB,OAAA,GAAAC,cAAA","ignoreList":[]}
@@ -5,7 +5,19 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _AudioNode = _interopRequireDefault(require("./AudioNode"));
8
+ var _AudioAPIModule = _interopRequireDefault(require("../AudioAPIModule"));
8
9
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
- class WorkletNode extends _AudioNode.default {}
10
+ class WorkletNode extends _AudioNode.default {
11
+ constructor(context, runtime, callback, bufferLength, inputChannelCount) {
12
+ const shareableWorklet = _AudioAPIModule.default.workletsModule.makeShareableCloneRecursive((audioBuffers, channelCount) => {
13
+ 'worklet';
14
+
15
+ const floatAudioData = audioBuffers.map(buffer => new Float32Array(buffer));
16
+ callback(floatAudioData, channelCount);
17
+ });
18
+ const node = context.context.createWorkletNode(shareableWorklet, runtime === 'UIRuntime', bufferLength, inputChannelCount);
19
+ super(context, node);
20
+ }
21
+ }
10
22
  exports.default = WorkletNode;
11
23
  //# sourceMappingURL=WorkletNode.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_AudioNode","_interopRequireDefault","require","e","__esModule","default","WorkletNode","AudioNode","exports"],"sourceRoot":"../../../src","sources":["core/WorkletNode.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAErB,MAAMG,WAAW,SAASC,kBAAS,CAAC;AAAEC,OAAA,CAAAH,OAAA,GAAAC,WAAA","ignoreList":[]}
1
+ {"version":3,"names":["_AudioNode","_interopRequireDefault","require","_AudioAPIModule","e","__esModule","default","WorkletNode","AudioNode","constructor","context","runtime","callback","bufferLength","inputChannelCount","shareableWorklet","AudioAPIModule","workletsModule","makeShareableCloneRecursive","audioBuffers","channelCount","floatAudioData","map","buffer","Float32Array","node","createWorkletNode","exports"],"sourceRoot":"../../../src","sources":["core/WorkletNode.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,eAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA+C,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEhC,MAAMG,WAAW,SAASC,kBAAS,CAAC;EACjDC,WAAWA,CACTC,OAAyB,EACzBC,OAA4B,EAC5BC,QAAwE,EACxEC,YAAoB,EACpBC,iBAAyB,EACzB;IACA,MAAMC,gBAAgB,GACpBC,uBAAc,CAACC,cAAc,CAAEC,2BAA2B,CACxD,CAACC,YAAgC,EAAEC,YAAoB,KAAK;MAC1D,SAAS;;MACT,MAAMC,cAAmC,GAAGF,YAAY,CAACG,GAAG,CACzDC,MAAM,IAAK,IAAIC,YAAY,CAACD,MAAM,CACrC,CAAC;MACDX,QAAQ,CAACS,cAAc,EAAED,YAAY,CAAC;IACxC,CACF,CAAC;IACH,MAAMK,IAAI,GAAGf,OAAO,CAACA,OAAO,CAACgB,iBAAiB,CAC5CX,gBAAgB,EAChBJ,OAAO,KAAK,WAAW,EACvBE,YAAY,EACZC,iBACF,CAAC;IACD,KAAK,CAACJ,OAAO,EAAEe,IAAI,CAAC;EACtB;AACF;AAACE,OAAA,CAAArB,OAAA,GAAAC,WAAA","ignoreList":[]}
@@ -5,7 +5,20 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _AudioNode = _interopRequireDefault(require("./AudioNode"));
8
+ var _AudioAPIModule = _interopRequireDefault(require("../AudioAPIModule"));
8
9
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
- class WorkletProcessingNode extends _AudioNode.default {}
10
+ class WorkletProcessingNode extends _AudioNode.default {
11
+ constructor(context, runtime, callback) {
12
+ const shareableWorklet = _AudioAPIModule.default.workletsModule.makeShareableCloneRecursive((inputBuffers, outputBuffers, framesToProcess, currentTime) => {
13
+ 'worklet';
14
+
15
+ const inputData = inputBuffers.map(buffer => new Float32Array(buffer, 0, framesToProcess));
16
+ const outputData = outputBuffers.map(buffer => new Float32Array(buffer, 0, framesToProcess));
17
+ callback(inputData, outputData, framesToProcess, currentTime);
18
+ });
19
+ const node = context.context.createWorkletProcessingNode(shareableWorklet, runtime === 'UIRuntime');
20
+ super(context, node);
21
+ }
22
+ }
10
23
  exports.default = WorkletProcessingNode;
11
24
  //# sourceMappingURL=WorkletProcessingNode.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_AudioNode","_interopRequireDefault","require","e","__esModule","default","WorkletProcessingNode","AudioNode","exports"],"sourceRoot":"../../../src","sources":["core/WorkletProcessingNode.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAErB,MAAMG,qBAAqB,SAASC,kBAAS,CAAC;AAAEC,OAAA,CAAAH,OAAA,GAAAC,qBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_AudioNode","_interopRequireDefault","require","_AudioAPIModule","e","__esModule","default","WorkletProcessingNode","AudioNode","constructor","context","runtime","callback","shareableWorklet","AudioAPIModule","workletsModule","makeShareableCloneRecursive","inputBuffers","outputBuffers","framesToProcess","currentTime","inputData","map","buffer","Float32Array","outputData","node","createWorkletProcessingNode","exports"],"sourceRoot":"../../../src","sources":["core/WorkletProcessingNode.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,eAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA+C,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEhC,MAAMG,qBAAqB,SAASC,kBAAS,CAAC;EAC3DC,WAAWA,CACTC,OAAyB,EACzBC,OAA4B,EAC5BC,QAKS,EACT;IACA,MAAMC,gBAAgB,GACpBC,uBAAc,CAACC,cAAc,CAAEC,2BAA2B,CACxD,CACEC,YAAgC,EAChCC,aAAiC,EACjCC,eAAuB,EACvBC,WAAmB,KAChB;MACH,SAAS;;MACT,MAAMC,SAA8B,GAAGJ,YAAY,CAACK,GAAG,CACpDC,MAAM,IAAK,IAAIC,YAAY,CAACD,MAAM,EAAE,CAAC,EAAEJ,eAAe,CACzD,CAAC;MACD,MAAMM,UAA+B,GAAGP,aAAa,CAACI,GAAG,CACtDC,MAAM,IAAK,IAAIC,YAAY,CAACD,MAAM,EAAE,CAAC,EAAEJ,eAAe,CACzD,CAAC;MACDP,QAAQ,CAACS,SAAS,EAAEI,UAAU,EAAEN,eAAe,EAAEC,WAAW,CAAC;IAC/D,CACF,CAAC;IACH,MAAMM,IAAI,GAAGhB,OAAO,CAACA,OAAO,CAACiB,2BAA2B,CACtDd,gBAAgB,EAChBF,OAAO,KAAK,WACd,CAAC;IACD,KAAK,CAACD,OAAO,EAAEgB,IAAI,CAAC;EACtB;AACF;AAACE,OAAA,CAAAtB,OAAA,GAAAC,qBAAA","ignoreList":[]}
@@ -5,7 +5,19 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _AudioScheduledSourceNode = _interopRequireDefault(require("./AudioScheduledSourceNode"));
8
+ var _AudioAPIModule = _interopRequireDefault(require("../AudioAPIModule"));
8
9
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
- class WorkletSourceNode extends _AudioScheduledSourceNode.default {}
10
+ class WorkletSourceNode extends _AudioScheduledSourceNode.default {
11
+ constructor(context, runtime, callback) {
12
+ const shareableWorklet = _AudioAPIModule.default.workletsModule.makeShareableCloneRecursive((audioBuffers, framesToProcess, currentTime, startOffset) => {
13
+ 'worklet';
14
+
15
+ const floatAudioData = audioBuffers.map(buffer => new Float32Array(buffer));
16
+ callback(floatAudioData, framesToProcess, currentTime, startOffset);
17
+ });
18
+ const node = context.context.createWorkletSourceNode(shareableWorklet, runtime === 'UIRuntime');
19
+ super(context, node);
20
+ }
21
+ }
10
22
  exports.default = WorkletSourceNode;
11
23
  //# sourceMappingURL=WorkletSourceNode.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_AudioScheduledSourceNode","_interopRequireDefault","require","e","__esModule","default","WorkletSourceNode","AudioScheduledSourceNode","exports"],"sourceRoot":"../../../src","sources":["core/WorkletSourceNode.ts"],"mappings":";;;;;;AAAA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAkE,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnD,MAAMG,iBAAiB,SAASC,iCAAwB,CAAC;AAAEC,OAAA,CAAAH,OAAA,GAAAC,iBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_AudioScheduledSourceNode","_interopRequireDefault","require","_AudioAPIModule","e","__esModule","default","WorkletSourceNode","AudioScheduledSourceNode","constructor","context","runtime","callback","shareableWorklet","AudioAPIModule","workletsModule","makeShareableCloneRecursive","audioBuffers","framesToProcess","currentTime","startOffset","floatAudioData","map","buffer","Float32Array","node","createWorkletSourceNode","exports"],"sourceRoot":"../../../src","sources":["core/WorkletSourceNode.ts"],"mappings":";;;;;;AAAA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,eAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA+C,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEhC,MAAMG,iBAAiB,SAASC,iCAAwB,CAAC;EACtEC,WAAWA,CACTC,OAAyB,EACzBC,OAA4B,EAC5BC,QAKS,EACT;IACA,MAAMC,gBAAgB,GACpBC,uBAAc,CAACC,cAAc,CAAEC,2BAA2B,CACxD,CACEC,YAAgC,EAChCC,eAAuB,EACvBC,WAAmB,EACnBC,WAAmB,KAChB;MACH,SAAS;;MACT,MAAMC,cAAmC,GAAGJ,YAAY,CAACK,GAAG,CACzDC,MAAM,IAAK,IAAIC,YAAY,CAACD,MAAM,CACrC,CAAC;MACDX,QAAQ,CAACS,cAAc,EAAEH,eAAe,EAAEC,WAAW,EAAEC,WAAW,CAAC;IACrE,CACF,CAAC;IACH,MAAMK,IAAI,GAAGf,OAAO,CAACA,OAAO,CAACgB,uBAAuB,CAClDb,gBAAgB,EAChBF,OAAO,KAAK,WACd,CAAC;IACD,KAAK,CAACD,OAAO,EAAEe,IAAI,CAAC;EACtB;AACF;AAACE,OAAA,CAAArB,OAAA,GAAAC,iBAAA","ignoreList":[]}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.WaveShaperOptions = exports.SteroPannerOptions = exports.PeriodicWaveConstraints = exports.OscillatorOptions = exports.GainOptions = exports.DelayOptions = exports.ConvolverOptions = exports.ConstantSourceOptions = exports.BiquadFilterOptions = exports.BaseAudioBufferSourceOptions = exports.AudioNodeOptions = exports.AudioBufferSourceOptions = exports.AudioBufferOptions = exports.AnalyserOptions = void 0;
7
+ const AudioNodeOptions = exports.AudioNodeOptions = {
8
+ channelCount: 2,
9
+ channelCountMode: 'max',
10
+ channelInterpretation: 'speakers'
11
+ };
12
+ const GainOptions = exports.GainOptions = {
13
+ ...AudioNodeOptions,
14
+ gain: 1
15
+ };
16
+ const SteroPannerOptions = exports.SteroPannerOptions = {
17
+ ...AudioNodeOptions,
18
+ channelCountMode: 'clamped-max',
19
+ pan: 0
20
+ };
21
+ const AnalyserOptions = exports.AnalyserOptions = {
22
+ ...AudioNodeOptions,
23
+ fftSize: 2048,
24
+ minDecibels: -100,
25
+ maxDecibels: -30,
26
+ smoothingTimeConstant: 0.8
27
+ };
28
+ const BiquadFilterOptions = exports.BiquadFilterOptions = {
29
+ ...AudioNodeOptions,
30
+ Q: 1,
31
+ detune: 0,
32
+ frequency: 350,
33
+ gain: 0,
34
+ type: 'lowpass'
35
+ };
36
+ const ConvolverOptions = exports.ConvolverOptions = {
37
+ ...AudioNodeOptions,
38
+ disableNormalization: false
39
+ };
40
+ const ConstantSourceOptions = exports.ConstantSourceOptions = {
41
+ offset: 1
42
+ };
43
+ const PeriodicWaveConstraints = exports.PeriodicWaveConstraints = {
44
+ disableNormalization: false
45
+ };
46
+ const OscillatorOptions = exports.OscillatorOptions = {
47
+ ...AudioNodeOptions,
48
+ type: 'sine',
49
+ frequency: 440,
50
+ detune: 0
51
+ };
52
+ const BaseAudioBufferSourceOptions = exports.BaseAudioBufferSourceOptions = {
53
+ playbackRate: 1,
54
+ detune: 0,
55
+ pitchCorrection: false
56
+ };
57
+ const AudioBufferSourceOptions = exports.AudioBufferSourceOptions = {
58
+ ...BaseAudioBufferSourceOptions,
59
+ loop: false,
60
+ loopStart: 0,
61
+ loopEnd: 0
62
+ };
63
+ const AudioBufferOptions = exports.AudioBufferOptions = {
64
+ numberOfChannels: 1,
65
+ length: 0,
66
+ // always overwritten by provided value, only placeholder
67
+ sampleRate: 44100 // always overwritten by provided value, only placeholder
68
+ };
69
+ const DelayOptions = exports.DelayOptions = {
70
+ ...AudioNodeOptions,
71
+ maxDelayTime: 1.0,
72
+ delayTime: 0.0
73
+ };
74
+ const WaveShaperOptions = exports.WaveShaperOptions = {
75
+ ...AudioNodeOptions,
76
+ oversample: 'none'
77
+ };
78
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AudioNodeOptions","exports","channelCount","channelCountMode","channelInterpretation","GainOptions","gain","SteroPannerOptions","pan","AnalyserOptions","fftSize","minDecibels","maxDecibels","smoothingTimeConstant","BiquadFilterOptions","Q","detune","frequency","type","ConvolverOptions","disableNormalization","ConstantSourceOptions","offset","PeriodicWaveConstraints","OscillatorOptions","BaseAudioBufferSourceOptions","playbackRate","pitchCorrection","AudioBufferSourceOptions","loop","loopStart","loopEnd","AudioBufferOptions","numberOfChannels","length","sampleRate","DelayOptions","maxDelayTime","delayTime","WaveShaperOptions","oversample"],"sourceRoot":"../../src","sources":["defaults.ts"],"mappings":";;;;;;AAiBO,MAAMA,gBAAmC,GAAAC,OAAA,CAAAD,gBAAA,GAAG;EACjDE,YAAY,EAAE,CAAC;EACfC,gBAAgB,EAAE,KAAK;EACvBC,qBAAqB,EAAE;AACzB,CAAC;AAEM,MAAMC,WAAyB,GAAAJ,OAAA,CAAAI,WAAA,GAAG;EACvC,GAAGL,gBAAgB;EACnBM,IAAI,EAAE;AACR,CAAC;AAEM,MAAMC,kBAAuC,GAAAN,OAAA,CAAAM,kBAAA,GAAG;EACrD,GAAGP,gBAAgB;EACnBG,gBAAgB,EAAE,aAAa;EAC/BK,GAAG,EAAE;AACP,CAAC;AAEM,MAAMC,eAAiC,GAAAR,OAAA,CAAAQ,eAAA,GAAG;EAC/C,GAAGT,gBAAgB;EACnBU,OAAO,EAAE,IAAI;EACbC,WAAW,EAAE,CAAC,GAAG;EACjBC,WAAW,EAAE,CAAC,EAAE;EAChBC,qBAAqB,EAAE;AACzB,CAAC;AAEM,MAAMC,mBAAyC,GAAAb,OAAA,CAAAa,mBAAA,GAAG;EACvD,GAAGd,gBAAgB;EACnBe,CAAC,EAAE,CAAC;EACJC,MAAM,EAAE,CAAC;EACTC,SAAS,EAAE,GAAG;EACdX,IAAI,EAAE,CAAC;EACPY,IAAI,EAAE;AACR,CAAC;AAEM,MAAMC,gBAAmC,GAAAlB,OAAA,CAAAkB,gBAAA,GAAG;EACjD,GAAGnB,gBAAgB;EACnBoB,oBAAoB,EAAE;AACxB,CAAC;AAEM,MAAMC,qBAA6C,GAAApB,OAAA,CAAAoB,qBAAA,GAAG;EAC3DC,MAAM,EAAE;AACV,CAAC;AAEM,MAAMC,uBAAiD,GAAAtB,OAAA,CAAAsB,uBAAA,GAAG;EAC/DH,oBAAoB,EAAE;AACxB,CAAC;AAEM,MAAMI,iBAAqC,GAAAvB,OAAA,CAAAuB,iBAAA,GAAG;EACnD,GAAGxB,gBAAgB;EACnBkB,IAAI,EAAE,MAAM;EACZD,SAAS,EAAE,GAAG;EACdD,MAAM,EAAE;AACV,CAAC;AAEM,MAAMS,4BAA2D,GAAAxB,OAAA,CAAAwB,4BAAA,GAAG;EACzEC,YAAY,EAAE,CAAC;EACfV,MAAM,EAAE,CAAC;EACTW,eAAe,EAAE;AACnB,CAAC;AAEM,MAAMC,wBAAmD,GAAA3B,OAAA,CAAA2B,wBAAA,GAAG;EACjE,GAAGH,4BAA4B;EAC/BI,IAAI,EAAE,KAAK;EACXC,SAAS,EAAE,CAAC;EACZC,OAAO,EAAE;AACX,CAAC;AAEM,MAAMC,kBAAuC,GAAA/B,OAAA,CAAA+B,kBAAA,GAAG;EACrDC,gBAAgB,EAAE,CAAC;EACnBC,MAAM,EAAE,CAAC;EAAE;EACXC,UAAU,EAAE,KAAK,CAAE;AACrB,CAAC;AAEM,MAAMC,YAA2B,GAAAnC,OAAA,CAAAmC,YAAA,GAAG;EACzC,GAAGpC,gBAAgB;EACnBqC,YAAY,EAAE,GAAG;EACjBC,SAAS,EAAE;AACb,CAAC;AAEM,MAAMC,iBAAqC,GAAAtC,OAAA,CAAAsC,iBAAA,GAAG;EACnD,GAAGvC,gBAAgB;EACnBwC,UAAU,EAAE;AACd,CAAC","ignoreList":[]}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.PeriodicWaveOptionsValidator = exports.OscillatorOptionsValidator = exports.ConvolverOptionsValidator = exports.AnalyserOptionsValidator = void 0;
7
+ var _errors = require("./errors");
8
+ const AnalyserOptionsValidator = exports.AnalyserOptionsValidator = {
9
+ validate(options) {
10
+ const allowedFFTSize = [32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768];
11
+ if (options.fftSize && !allowedFFTSize.includes(options.fftSize)) {
12
+ throw new _errors.IndexSizeError(`fftSize must be one of the following values: ${allowedFFTSize.join(', ')}`);
13
+ }
14
+ }
15
+ };
16
+ const ConvolverOptionsValidator = exports.ConvolverOptionsValidator = {
17
+ validate(options) {
18
+ if (options.buffer) {
19
+ const numberOfChannels = options.buffer.numberOfChannels;
20
+ if (numberOfChannels !== 1 && numberOfChannels !== 2 && numberOfChannels !== 4) {
21
+ throw new _errors.NotSupportedError(`The number of channels provided (${numberOfChannels}) in impulse response for ConvolverNode buffer must be 1 or 2 or 4.`);
22
+ }
23
+ }
24
+ }
25
+ };
26
+ const OscillatorOptionsValidator = exports.OscillatorOptionsValidator = {
27
+ validate(options) {
28
+ if (options.type === 'custom' && !options.periodicWave) {
29
+ throw new _errors.NotSupportedError("'type' cannot be set to 'custom' without providing a 'periodicWave'.");
30
+ }
31
+ }
32
+ };
33
+ const PeriodicWaveOptionsValidator = exports.PeriodicWaveOptionsValidator = {
34
+ validate(options) {
35
+ if (options.real && options.imag && options.real.length !== options.imag.length) {
36
+ throw new _errors.NotSupportedError("'real' and 'imag' arrays must have the same length");
37
+ }
38
+ }
39
+ };
40
+ //# sourceMappingURL=options-validators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_errors","require","AnalyserOptionsValidator","exports","validate","options","allowedFFTSize","fftSize","includes","IndexSizeError","join","ConvolverOptionsValidator","buffer","numberOfChannels","NotSupportedError","OscillatorOptionsValidator","type","periodicWave","PeriodicWaveOptionsValidator","real","imag","length"],"sourceRoot":"../../src","sources":["options-validators.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AASO,MAAMC,wBAA4D,GAAAC,OAAA,CAAAD,wBAAA,GAAG;EAC1EE,QAAQA,CAACC,OAAyB,EAAQ;IACxC,MAAMC,cAAwB,GAAG,CAC/B,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAC5D;IACD,IAAID,OAAO,CAACE,OAAO,IAAI,CAACD,cAAc,CAACE,QAAQ,CAACH,OAAO,CAACE,OAAO,CAAC,EAAE;MAChE,MAAM,IAAIE,sBAAc,CACtB,gDAAgDH,cAAc,CAACI,IAAI,CACjE,IACF,CAAC,EACH,CAAC;IACH;EACF;AACF,CAAC;AAEM,MAAMC,yBAA8D,GAAAR,OAAA,CAAAQ,yBAAA,GAAG;EAC5EP,QAAQA,CAACC,OAA0B,EAAQ;IACzC,IAAIA,OAAO,CAACO,MAAM,EAAE;MAClB,MAAMC,gBAAgB,GAAGR,OAAO,CAACO,MAAM,CAACC,gBAAgB;MACxD,IACEA,gBAAgB,KAAK,CAAC,IACtBA,gBAAgB,KAAK,CAAC,IACtBA,gBAAgB,KAAK,CAAC,EACtB;QACA,MAAM,IAAIC,yBAAiB,CACzB,oCAAoCD,gBAAgB,qEACtD,CAAC;MACH;IACF;EACF;AACF,CAAC;AAEM,MAAME,0BAAgE,GAAAZ,OAAA,CAAAY,0BAAA,GAC3E;EACEX,QAAQA,CAACC,OAA2B,EAAQ;IAC1C,IAAIA,OAAO,CAACW,IAAI,KAAK,QAAQ,IAAI,CAACX,OAAO,CAACY,YAAY,EAAE;MACtD,MAAM,IAAIH,yBAAiB,CACzB,sEACF,CAAC;IACH;EACF;AACF,CAAC;AAEI,MAAMI,4BAAoE,GAAAf,OAAA,CAAAe,4BAAA,GAC/E;EACEd,QAAQA,CAACC,OAA6B,EAAQ;IAC5C,IACEA,OAAO,CAACc,IAAI,IACZd,OAAO,CAACe,IAAI,IACZf,OAAO,CAACc,IAAI,CAACE,MAAM,KAAKhB,OAAO,CAACe,IAAI,CAACC,MAAM,EAC3C;MACA,MAAM,IAAIP,yBAAiB,CACzB,oDACF,CAAC;IACH;EACF;AACF,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["Object","defineProperty","exports","value","NativeAudioAPIModule","_reactNative","require","TurboModuleRegistry","get"],"sourceRoot":"../../../src","sources":["specs/NativeAudioAPIModule.ts"],"mappings":"AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,oBAAA;AAEb,IAAAC,YAAA,GAAAC,OAAA;AA6CA,MAAMF,oBAAoB,GAAAF,OAAA,CAAAE,oBAAA,GAAGG,gCAAmB,CAACC,GAAG,CAAO,gBAAgB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Object","defineProperty","exports","value","NativeAudioAPIModule","_reactNative","require","TurboModuleRegistry","get"],"sourceRoot":"../../../src","sources":["specs/NativeAudioAPIModule.ts"],"mappings":"AAAA,YAAY;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,oBAAA;AAEb,IAAAC,YAAA,GAAAC,OAAA;AAkDA,MAAMF,oBAAoB,GAAAF,OAAA,CAAAE,oBAAA,GAAGG,gCAAmB,CAACC,GAAG,CAAO,gBAAgB,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["mockAsync","value","Promise","resolve","mockSync","NativeAudioAPIModule","exports","install","getDevicePreferredSampleRate","setAudioSessionActivity","setAudioSessionOptions","disableSessionManagement","observeAudioInterruptions","activelyReclaimSession","observeVolumeChanges","requestRecordingPermissions","checkRecordingPermissions","requestNotificationPermissions","checkNotificationPermissions","getDevicesInfo","availableInputs","availableOutputs","currentInputs","currentOutputs","showNotification","success","hideNotification","isNotificationActive"],"sourceRoot":"../../../src","sources":["specs/NativeAudioAPIModule.web.ts"],"mappings":";;;;;;AAGA;;AA6CA,MAAMA,SAAS,GACTC,KAAQ,IACZ,MACEC,OAAO,CAACC,OAAO,CAACF,KAAK,CAAC;AAC1B,MAAMG,QAAQ,GACRH,KAAQ,IACZ,MACEA,KAAK;AAET,MAAMI,oBAA0B,GAAAC,OAAA,CAAAD,oBAAA,GAAG;EACjCE,OAAO,EAAEH,QAAQ,CAAC,IAAI,CAAC;EACvBI,4BAA4B,EAAEJ,QAAQ,CAAC,CAAC,CAAC;EACzCK,uBAAuB,EAAET,SAAS,CAAC,IAAI,CAAC;EACxCU,sBAAsB,EAAEN,QAAQ,CAAC,CAAC,CAAC,CAAC;EACpCO,wBAAwB,EAAEP,QAAQ,CAAC,CAAC,CAAC,CAAC;EACtCQ,yBAAyB,EAAER,QAAQ,CAAC,CAAC,CAAC,CAAC;EACvCS,sBAAsB,EAAET,QAAQ,CAAC,CAAC,CAAC,CAAC;EACpCU,oBAAoB,EAAEV,QAAQ,CAAC,CAAC,CAAC,CAAC;EAClCW,2BAA2B,EAAEf,SAAS,CAAC,SAA6B,CAAC;EACrEgB,yBAAyB,EAAEhB,SAAS,CAAC,SAA6B,CAAC;EACnEiB,8BAA8B,EAAEjB,SAAS,CAAC,SAA6B,CAAC;EACxEkB,4BAA4B,EAAElB,SAAS,CAAC,SAA6B,CAAC;EACtEmB,cAAc,EAAEnB,SAAS,CAAC;IACxBoB,eAAe,EAAE,EAAE;IACnBC,gBAAgB,EAAE,EAAE;IACpBC,aAAa,EAAE,EAAE;IACjBC,cAAc,EAAE;EAClB,CAAC,CAAC;EACFC,gBAAgB,EAAExB,SAAS,CAAC;IAAEyB,OAAO,EAAE;EAAK,CAAC,CAAC;EAC9CC,gBAAgB,EAAE1B,SAAS,CAAC;IAAEyB,OAAO,EAAE;EAAK,CAAC,CAAC;EAC9CE,oBAAoB,EAAE3B,SAAS,CAAC,KAAK;AACvC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["mockAsync","value","Promise","resolve","mockSync","NativeAudioAPIModule","exports","install","getDevicePreferredSampleRate","setAudioSessionActivity","setAudioSessionOptions","disableSessionManagement","observeAudioInterruptions","activelyReclaimSession","observeVolumeChanges","requestRecordingPermissions","checkRecordingPermissions","requestNotificationPermissions","checkNotificationPermissions","getDevicesInfo","availableInputs","availableOutputs","currentInputs","currentOutputs","showNotification","success","hideNotification","isNotificationActive"],"sourceRoot":"../../../src","sources":["specs/NativeAudioAPIModule.web.ts"],"mappings":";;;;;;AAOA;;AA6CA,MAAMA,SAAS,GACTC,KAAQ,IACZ,MACEC,OAAO,CAACC,OAAO,CAACF,KAAK,CAAC;AAC1B,MAAMG,QAAQ,GACRH,KAAQ,IACZ,MACEA,KAAK;AAET,MAAMI,oBAA0B,GAAAC,OAAA,CAAAD,oBAAA,GAAG;EACjCE,OAAO,EAAEH,QAAQ,CAAC,IAAI,CAAC;EACvBI,4BAA4B,EAAEJ,QAAQ,CAAC,CAAC,CAAC;EACzCK,uBAAuB,EAAET,SAAS,CAAC,IAAI,CAAC;EACxCU,sBAAsB,EAAEN,QAAQ,CAAC,CAAC,CAAC,CAAC;EACpCO,wBAAwB,EAAEP,QAAQ,CAAC,CAAC,CAAC,CAAC;EACtCQ,yBAAyB,EAAER,QAAQ,CAAC,CAAC,CAAC,CAAC;EACvCS,sBAAsB,EAAET,QAAQ,CAAC,CAAC,CAAC,CAAC;EACpCU,oBAAoB,EAAEV,QAAQ,CAAC,CAAC,CAAC,CAAC;EAClCW,2BAA2B,EAAEf,SAAS,CAAC,SAA6B,CAAC;EACrEgB,yBAAyB,EAAEhB,SAAS,CAAC,SAA6B,CAAC;EACnEiB,8BAA8B,EAAEjB,SAAS,CAAC,SAA6B,CAAC;EACxEkB,4BAA4B,EAAElB,SAAS,CAAC,SAA6B,CAAC;EACtEmB,cAAc,EAAEnB,SAAS,CAAC;IACxBoB,eAAe,EAAE,EAAE;IACnBC,gBAAgB,EAAE,EAAE;IACpBC,aAAa,EAAE,EAAE;IACjBC,cAAc,EAAE;EAClB,CAAC,CAAC;EACFC,gBAAgB,EAAExB,SAAS,CAAC;IAAEyB,OAAO,EAAE;EAAK,CAAC,CAAC;EAC9CC,gBAAgB,EAAE1B,SAAS,CAAC;IAAEyB,OAAO,EAAE;EAAK,CAAC,CAAC;EAC9CE,oBAAoB,EAAE3B,SAAS,CAAC,KAAK;AACvC,CAAC","ignoreList":[]}
@@ -28,8 +28,13 @@ class AudioManager {
28
28
  disableSessionManagement() {
29
29
  _specs.NativeAudioAPIModule.disableSessionManagement();
30
30
  }
31
- observeAudioInterruptions(enabled) {
32
- _specs.NativeAudioAPIModule.observeAudioInterruptions(enabled);
31
+ observeAudioInterruptions(param) {
32
+ if (typeof param === 'string') {
33
+ _specs.NativeAudioAPIModule.observeAudioInterruptions(param, true);
34
+ } else {
35
+ // audiofocusgain as default value if not provided
36
+ _specs.NativeAudioAPIModule.observeAudioInterruptions('gain', param === true);
37
+ }
33
38
  }
34
39
 
35
40
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_events","require","_specs","_errors","AudioManager","constructor","audioEventEmitter","AudioEventEmitter","global","getDevicePreferredSampleRate","NativeAudioAPIModule","setAudioSessionActivity","enabled","success","error","parseNativeError","setAudioSessionOptions","options","iosCategory","iosMode","iosOptions","iosAllowHaptics","disableSessionManagement","observeAudioInterruptions","activelyReclaimSession","observeVolumeChanges","addSystemEventListener","name","callback","addAudioEventListener","requestRecordingPermissions","checkRecordingPermissions","requestNotificationPermissions","checkNotificationPermissions","getDevicesInfo","_default","exports","default"],"sourceRoot":"../../../src","sources":["system/AudioManager.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAQA,MAAMG,YAAY,CAA0B;EAE1CC,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACC,iBAAiB,GAAG,IAAIC,yBAAiB,CAACC,MAAM,CAACD,iBAAiB,CAAC;EAC1E;EAEAE,4BAA4BA,CAAA,EAAW;IACrC,OAAOC,2BAAoB,CAACD,4BAA4B,CAAC,CAAC;EAC5D;EAEA,MAAME,uBAAuBA,CAACC,OAAgB,EAAoB;IAChE,IAAI;MACF,MAAMC,OAAO,GACX,MAAMH,2BAAoB,CAACC,uBAAuB,CAACC,OAAO,CAAC;MAE7D,OAAOC,OAAO;IAChB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACd,MAAM,IAAAC,wBAAgB,EAACD,KAAK,CAAC;IAC/B;EACF;EAEAE,sBAAsBA,CAACC,OAAuB,EAAE;IAC9CP,2BAAoB,CAACM,sBAAsB,CACzCC,OAAO,CAACC,WAAW,IAAI,EAAE,EACzBD,OAAO,CAACE,OAAO,IAAI,EAAE,EACrBF,OAAO,CAACG,UAAU,IAAI,EAAE,EACxBH,OAAO,CAACI,eAAe,IAAI,KAC7B,CAAC;EACH;EAEAC,wBAAwBA,CAAA,EAAG;IACzBZ,2BAAoB,CAACY,wBAAwB,CAAC,CAAC;EACjD;EAEAC,yBAAyBA,CAACX,OAAgB,EAAE;IAC1CF,2BAAoB,CAACa,yBAAyB,CAACX,OAAO,CAAC;EACzD;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEY,sBAAsBA,CAACZ,OAAgB,EAAE;IACvCF,2BAAoB,CAACc,sBAAsB,CAACZ,OAAO,CAAC;EACtD;EAEAa,oBAAoBA,CAACb,OAAgB,EAAE;IACrCF,2BAAoB,CAACe,oBAAoB,CAACb,OAAO,CAAC;EACpD;EAEAc,sBAAsBA,CACpBC,IAAU,EACVC,QAAmC,EACX;IACxB,OAAO,IAAI,CAACtB,iBAAiB,CAACuB,qBAAqB,CAACF,IAAI,EAAEC,QAAQ,CAAC;EACrE;EAEA,MAAME,2BAA2BA,CAAA,EAA8B;IAC7D,OAAOpB,2BAAoB,CAACoB,2BAA2B,CAAC,CAAC;EAC3D;EAEA,MAAMC,yBAAyBA,CAAA,EAA8B;IAC3D,OAAOrB,2BAAoB,CAACqB,yBAAyB,CAAC,CAAC;EACzD;EAEA,MAAMC,8BAA8BA,CAAA,EAA8B;IAChE,OAAOtB,2BAAoB,CAACsB,8BAA8B,CAAC,CAAC;EAC9D;EAEA,MAAMC,4BAA4BA,CAAA,EAA8B;IAC9D,OAAOvB,2BAAoB,CAACuB,4BAA4B,CAAC,CAAC;EAC5D;EAEA,MAAMC,cAAcA,CAAA,EAA8B;IAChD,OAAOxB,2BAAoB,CAACwB,cAAc,CAAC,CAAC;EAC9C;AACF;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEc,IAAIjC,YAAY,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_events","require","_specs","_errors","AudioManager","constructor","audioEventEmitter","AudioEventEmitter","global","getDevicePreferredSampleRate","NativeAudioAPIModule","setAudioSessionActivity","enabled","success","error","parseNativeError","setAudioSessionOptions","options","iosCategory","iosMode","iosOptions","iosAllowHaptics","disableSessionManagement","observeAudioInterruptions","param","activelyReclaimSession","observeVolumeChanges","addSystemEventListener","name","callback","addAudioEventListener","requestRecordingPermissions","checkRecordingPermissions","requestNotificationPermissions","checkNotificationPermissions","getDevicesInfo","_default","exports","default"],"sourceRoot":"../../../src","sources":["system/AudioManager.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AASA,MAAMG,YAAY,CAA0B;EAE1CC,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACC,iBAAiB,GAAG,IAAIC,yBAAiB,CAACC,MAAM,CAACD,iBAAiB,CAAC;EAC1E;EAEAE,4BAA4BA,CAAA,EAAW;IACrC,OAAOC,2BAAoB,CAACD,4BAA4B,CAAC,CAAC;EAC5D;EAEA,MAAME,uBAAuBA,CAACC,OAAgB,EAAoB;IAChE,IAAI;MACF,MAAMC,OAAO,GACX,MAAMH,2BAAoB,CAACC,uBAAuB,CAACC,OAAO,CAAC;MAE7D,OAAOC,OAAO;IAChB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACd,MAAM,IAAAC,wBAAgB,EAACD,KAAK,CAAC;IAC/B;EACF;EAEAE,sBAAsBA,CAACC,OAAuB,EAAE;IAC9CP,2BAAoB,CAACM,sBAAsB,CACzCC,OAAO,CAACC,WAAW,IAAI,EAAE,EACzBD,OAAO,CAACE,OAAO,IAAI,EAAE,EACrBF,OAAO,CAACG,UAAU,IAAI,EAAE,EACxBH,OAAO,CAACI,eAAe,IAAI,KAC7B,CAAC;EACH;EAEAC,wBAAwBA,CAAA,EAAG;IACzBZ,2BAAoB,CAACY,wBAAwB,CAAC,CAAC;EACjD;EAEAC,yBAAyBA,CAACC,KAAsC,EAAE;IAChE,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;MAC7Bd,2BAAoB,CAACa,yBAAyB,CAACC,KAAK,EAAE,IAAI,CAAC;IAC7D,CAAC,MAAM;MACL;MACAd,2BAAoB,CAACa,yBAAyB,CAAC,MAAM,EAAEC,KAAK,KAAK,IAAI,CAAC;IACxE;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,sBAAsBA,CAACb,OAAgB,EAAE;IACvCF,2BAAoB,CAACe,sBAAsB,CAACb,OAAO,CAAC;EACtD;EAEAc,oBAAoBA,CAACd,OAAgB,EAAE;IACrCF,2BAAoB,CAACgB,oBAAoB,CAACd,OAAO,CAAC;EACpD;EAEAe,sBAAsBA,CACpBC,IAAU,EACVC,QAAmC,EACX;IACxB,OAAO,IAAI,CAACvB,iBAAiB,CAACwB,qBAAqB,CAACF,IAAI,EAAEC,QAAQ,CAAC;EACrE;EAEA,MAAME,2BAA2BA,CAAA,EAA8B;IAC7D,OAAOrB,2BAAoB,CAACqB,2BAA2B,CAAC,CAAC;EAC3D;EAEA,MAAMC,yBAAyBA,CAAA,EAA8B;IAC3D,OAAOtB,2BAAoB,CAACsB,yBAAyB,CAAC,CAAC;EACzD;EAEA,MAAMC,8BAA8BA,CAAA,EAA8B;IAChE,OAAOvB,2BAAoB,CAACuB,8BAA8B,CAAC,CAAC;EAC9D;EAEA,MAAMC,4BAA4BA,CAAA,EAA8B;IAC9D,OAAOxB,2BAAoB,CAACwB,4BAA4B,CAAC,CAAC;EAC5D;EAEA,MAAMC,cAAcA,CAAA,EAA8B;IAChD,OAAOzB,2BAAoB,CAACyB,cAAc,CAAC,CAAC;EAC9C;AACF;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEc,IAAIlC,YAAY,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["FileDirectory","exports","FileFormat","IOSAudioQuality","BitDepth","FlacCompressionLevel"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;;;;;IA6CYA,aAAa,GAAAC,OAAA,CAAAD,aAAA,0BAAbA,aAAa;EAAbA,aAAa,CAAbA,aAAa;EAAbA,aAAa,CAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAAA,IAKbE,UAAU,GAAAD,OAAA,CAAAC,UAAA,0BAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAAA,IAOVC,eAAe,GAAAF,OAAA,CAAAE,eAAA,0BAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAQfC,QAAQ,GAAAH,OAAA,CAAAG,QAAA,0BAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAAA,OAARA,QAAQ;AAAA;AAAA,IAMRC,oBAAoB,GAAAJ,OAAA,CAAAI,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["FileDirectory","exports","FileFormat","IOSAudioQuality","BitDepth","FlacCompressionLevel"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;;;;;IA0CYA,aAAa,GAAAC,OAAA,CAAAD,aAAA,0BAAbA,aAAa;EAAbA,aAAa,CAAbA,aAAa;EAAbA,aAAa,CAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAAA,IAKbE,UAAU,GAAAD,OAAA,CAAAC,UAAA,0BAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAAA,IAOVC,eAAe,GAAAF,OAAA,CAAAE,eAAA,0BAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAQfC,QAAQ,GAAAH,OAAA,CAAAG,QAAA,0BAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAARA,QAAQ,CAARA,QAAQ;EAAA,OAARA,QAAQ;AAAA;AAAA,IAMRC,oBAAoB,GAAAJ,OAAA,CAAAI,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA","ignoreList":[]}
@@ -7,7 +7,8 @@ exports.default = void 0;
7
7
  var _AudioNode = _interopRequireDefault(require("./AudioNode"));
8
8
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
9
  class AnalyserNode extends _AudioNode.default {
10
- constructor(context, node) {
10
+ constructor(context, analyserOptions) {
11
+ const node = new globalThis.AnalyserNode(context.context, analyserOptions);
11
12
  super(context, node);
12
13
  this.fftSize = node.fftSize;
13
14
  this.frequencyBinCount = node.frequencyBinCount;
@@ -1 +1 @@
1
- {"version":3,"names":["_AudioNode","_interopRequireDefault","require","e","__esModule","default","AnalyserNode","AudioNode","constructor","context","node","fftSize","frequencyBinCount","minDecibels","maxDecibels","smoothingTimeConstant","window","value","console","log","getByteFrequencyData","array","getByteTimeDomainData","getFloatFrequencyData","getFloatTimeDomainData","exports"],"sourceRoot":"../../../src","sources":["web-core/AnalyserNode.tsx"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAIrB,MAAMG,YAAY,SAASC,kBAAS,CAAC;EAOlDC,WAAWA,CAACC,OAAyB,EAAEC,IAA6B,EAAE;IACpE,KAAK,CAACD,OAAO,EAAEC,IAAI,CAAC;IAEpB,IAAI,CAACC,OAAO,GAAGD,IAAI,CAACC,OAAO;IAC3B,IAAI,CAACC,iBAAiB,GAAGF,IAAI,CAACE,iBAAiB;IAC/C,IAAI,CAACC,WAAW,GAAGH,IAAI,CAACG,WAAW;IACnC,IAAI,CAACC,WAAW,GAAGJ,IAAI,CAACI,WAAW;IACnC,IAAI,CAACC,qBAAqB,GAAGL,IAAI,CAACK,qBAAqB;EACzD;EAEA,IAAWC,MAAMA,CAAA,EAAe;IAC9B,OAAO,UAAU;EACnB;EAEA,IAAWA,MAAMA,CAACC,KAAiB,EAAE;IACnCC,OAAO,CAACC,GAAG,CACT,gEACF,CAAC;EACH;EAEOC,oBAAoBA,CAACC,KAAiB,EAAQ;IAClD,IAAI,CAACX,IAAI,CAA6BU,oBAAoB,CAACC,KAAK,CAAC;EACpE;EAEOC,qBAAqBA,CAACD,KAAiB,EAAQ;IACnD,IAAI,CAACX,IAAI,CAA6BY,qBAAqB,CAACD,KAAK,CAAC;EACrE;EAEOE,qBAAqBA,CAACF,KAAmB,EAAQ;IACrD,IAAI,CAACX,IAAI,CAA6Ba,qBAAqB,CAACF,KAAK,CAAC;EACrE;EAEOG,sBAAsBA,CAACH,KAAmB,EAAQ;IACtD,IAAI,CAACX,IAAI,CAA6Bc,sBAAsB,CAACH,KAAK,CAAC;EACtE;AACF;AAACI,OAAA,CAAApB,OAAA,GAAAC,YAAA","ignoreList":[]}
1
+ {"version":3,"names":["_AudioNode","_interopRequireDefault","require","e","__esModule","default","AnalyserNode","AudioNode","constructor","context","analyserOptions","node","globalThis","fftSize","frequencyBinCount","minDecibels","maxDecibels","smoothingTimeConstant","window","value","console","log","getByteFrequencyData","array","getByteTimeDomainData","getFloatFrequencyData","getFloatTimeDomainData","exports"],"sourceRoot":"../../../src","sources":["web-core/AnalyserNode.tsx"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAIrB,MAAMG,YAAY,SAASC,kBAAS,CAAC;EAOlDC,WAAWA,CAACC,OAAyB,EAAEC,eAAkC,EAAE;IACzE,MAAMC,IAAI,GAAG,IAAIC,UAAU,CAACN,YAAY,CAACG,OAAO,CAACA,OAAO,EAAEC,eAAe,CAAC;IAC1E,KAAK,CAACD,OAAO,EAAEE,IAAI,CAAC;IAEpB,IAAI,CAACE,OAAO,GAAGF,IAAI,CAACE,OAAO;IAC3B,IAAI,CAACC,iBAAiB,GAAGH,IAAI,CAACG,iBAAiB;IAC/C,IAAI,CAACC,WAAW,GAAGJ,IAAI,CAACI,WAAW;IACnC,IAAI,CAACC,WAAW,GAAGL,IAAI,CAACK,WAAW;IACnC,IAAI,CAACC,qBAAqB,GAAGN,IAAI,CAACM,qBAAqB;EACzD;EAEA,IAAWC,MAAMA,CAAA,EAAe;IAC9B,OAAO,UAAU;EACnB;EAEA,IAAWA,MAAMA,CAACC,KAAiB,EAAE;IACnCC,OAAO,CAACC,GAAG,CACT,gEACF,CAAC;EACH;EAEOC,oBAAoBA,CAACC,KAAiB,EAAQ;IAClD,IAAI,CAACZ,IAAI,CAA6BW,oBAAoB,CACzDC,KACF,CAAC;EACH;EAEOC,qBAAqBA,CAACD,KAAiB,EAAQ;IACnD,IAAI,CAACZ,IAAI,CAA6Ba,qBAAqB,CAC1DD,KACF,CAAC;EACH;EAEOE,qBAAqBA,CAACF,KAAmB,EAAQ;IACrD,IAAI,CAACZ,IAAI,CAA6Bc,qBAAqB,CAC1DF,KACF,CAAC;EACH;EAEOG,sBAAsBA,CAACH,KAAmB,EAAQ;IACtD,IAAI,CAACZ,IAAI,CAA6Be,sBAAsB,CAC3DH,KACF,CAAC;EACH;AACF;AAACI,OAAA,CAAAtB,OAAA,GAAAC,YAAA","ignoreList":[]}
@@ -5,15 +5,23 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _errors = require("../errors");
8
+ var _BaseAudioContext = _interopRequireDefault(require("./BaseAudioContext"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
10
  class AudioBuffer {
9
11
  /** @internal */
10
12
 
11
- constructor(buffer) {
12
- this.buffer = buffer;
13
- this.length = buffer.length;
14
- this.duration = buffer.duration;
15
- this.sampleRate = buffer.sampleRate;
16
- this.numberOfChannels = buffer.numberOfChannels;
13
+ constructor(contextOrBuffer, options) {
14
+ let buf;
15
+ if (contextOrBuffer instanceof _BaseAudioContext.default) {
16
+ buf = new globalThis.AudioBuffer(options);
17
+ } else {
18
+ buf = contextOrBuffer;
19
+ }
20
+ this.buffer = buf;
21
+ this.length = buf.length;
22
+ this.duration = buf.duration;
23
+ this.sampleRate = buf.sampleRate;
24
+ this.numberOfChannels = buf.numberOfChannels;
17
25
  }
18
26
  getChannelData(channel) {
19
27
  if (channel < 0 || channel >= this.numberOfChannels) {
@@ -1 +1 @@
1
- {"version":3,"names":["_errors","require","AudioBuffer","constructor","buffer","length","duration","sampleRate","numberOfChannels","getChannelData","channel","IndexSizeError","copyFromChannel","destination","channelNumber","startInChannel","copyToChannel","source","exports","default"],"sourceRoot":"../../../src","sources":["web-core/AudioBuffer.tsx"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEe,MAAMC,WAAW,CAAC;EAM/B;;EAGAC,WAAWA,CAACC,MAA8B,EAAE;IAC1C,IAAI,CAACA,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,MAAM,GAAGD,MAAM,CAACC,MAAM;IAC3B,IAAI,CAACC,QAAQ,GAAGF,MAAM,CAACE,QAAQ;IAC/B,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAI,CAACC,gBAAgB,GAAGJ,MAAM,CAACI,gBAAgB;EACjD;EAEOC,cAAcA,CAACC,OAAe,EAAgB;IACnD,IAAIA,OAAO,GAAG,CAAC,IAAIA,OAAO,IAAI,IAAI,CAACF,gBAAgB,EAAE;MACnD,MAAM,IAAIG,sBAAc,CACtB,gCAAgCD,OAAO,8BAA8B,IAAI,CAACF,gBAAgB,GAAG,CAAC,GAChG,CAAC;IACH;IAEA,OAAO,IAAI,CAACJ,MAAM,CAACK,cAAc,CAACC,OAAO,CAAC;EAC5C;EAEOE,eAAeA,CACpBC,WAAyB,EACzBC,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACN,gBAAgB,EAAE;MAC/D,MAAM,IAAIG,sBAAc,CACtB,gCAAgCG,aAAa,8BAA8B,IAAI,CAACN,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIO,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACV,MAAM,EAAE;MACvD,MAAM,IAAIM,sBAAc,CACtB,uCAAuCI,cAAc,8BAA8B,IAAI,CAACV,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACQ,eAAe,CAACC,WAAW,EAAEC,aAAa,EAAEC,cAAc,CAAC;EACzE;EAEOC,aAAaA,CAClBC,MAAoB,EACpBH,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACN,gBAAgB,EAAE;MAC/D,MAAM,IAAIG,sBAAc,CACtB,gCAAgCG,aAAa,8BAA8B,IAAI,CAACN,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIO,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACV,MAAM,EAAE;MACvD,MAAM,IAAIM,sBAAc,CACtB,uCAAuCI,cAAc,8BAA8B,IAAI,CAACV,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACY,aAAa,CAACC,MAAM,EAAEH,aAAa,EAAEC,cAAc,CAAC;EAClE;AACF;AAACG,OAAA,CAAAC,OAAA,GAAAjB,WAAA","ignoreList":[]}
1
+ {"version":3,"names":["_errors","require","_BaseAudioContext","_interopRequireDefault","e","__esModule","default","AudioBuffer","constructor","contextOrBuffer","options","buf","BaseAudioContext","globalThis","buffer","length","duration","sampleRate","numberOfChannels","getChannelData","channel","IndexSizeError","copyFromChannel","destination","channelNumber","startInChannel","copyToChannel","source","exports"],"sourceRoot":"../../../src","sources":["web-core/AudioBuffer.tsx"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAkD,SAAAE,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGnC,MAAMG,WAAW,CAAC;EAM/B;;EAMAC,WAAWA,CACTC,eAA0D,EAC1DC,OAA6B,EAC7B;IACA,IAAIC,GAA2B;IAC/B,IAAIF,eAAe,YAAYG,yBAAgB,EAAE;MAC/CD,GAAG,GAAG,IAAIE,UAAU,CAACN,WAAW,CAACG,OAAQ,CAAC;IAC5C,CAAC,MAAM;MACLC,GAAG,GAAGF,eAAyC;IACjD;IACA,IAAI,CAACK,MAAM,GAAGH,GAAG;IACjB,IAAI,CAACI,MAAM,GAAGJ,GAAG,CAACI,MAAM;IACxB,IAAI,CAACC,QAAQ,GAAGL,GAAG,CAACK,QAAQ;IAC5B,IAAI,CAACC,UAAU,GAAGN,GAAG,CAACM,UAAU;IAChC,IAAI,CAACC,gBAAgB,GAAGP,GAAG,CAACO,gBAAgB;EAC9C;EAEOC,cAAcA,CAACC,OAAe,EAAgB;IACnD,IAAIA,OAAO,GAAG,CAAC,IAAIA,OAAO,IAAI,IAAI,CAACF,gBAAgB,EAAE;MACnD,MAAM,IAAIG,sBAAc,CACtB,gCAAgCD,OAAO,8BAA8B,IAAI,CAACF,gBAAgB,GAAG,CAAC,GAChG,CAAC;IACH;IAEA,OAAO,IAAI,CAACJ,MAAM,CAACK,cAAc,CAACC,OAAO,CAAC;EAC5C;EAEOE,eAAeA,CACpBC,WAAyB,EACzBC,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACN,gBAAgB,EAAE;MAC/D,MAAM,IAAIG,sBAAc,CACtB,gCAAgCG,aAAa,8BAA8B,IAAI,CAACN,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIO,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACV,MAAM,EAAE;MACvD,MAAM,IAAIM,sBAAc,CACtB,uCAAuCI,cAAc,8BAA8B,IAAI,CAACV,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACQ,eAAe,CAACC,WAAW,EAAEC,aAAa,EAAEC,cAAc,CAAC;EACzE;EAEOC,aAAaA,CAClBC,MAAoB,EACpBH,aAAqB,EACrBC,cAAsB,GAAG,CAAC,EACpB;IACN,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAI,IAAI,CAACN,gBAAgB,EAAE;MAC/D,MAAM,IAAIG,sBAAc,CACtB,gCAAgCG,aAAa,8BAA8B,IAAI,CAACN,gBAAgB,GAAG,CAAC,GACtG,CAAC;IACH;IAEA,IAAIO,cAAc,GAAG,CAAC,IAAIA,cAAc,IAAI,IAAI,CAACV,MAAM,EAAE;MACvD,MAAM,IAAIM,sBAAc,CACtB,uCAAuCI,cAAc,8BAA8B,IAAI,CAACV,MAAM,GAAG,CAAC,GACpG,CAAC;IACH;IAEA,IAAI,CAACD,MAAM,CAACY,aAAa,CAACC,MAAM,EAAEH,aAAa,EAAEC,cAAc,CAAC;EAClE;AACF;AAACG,OAAA,CAAAtB,OAAA,GAAAC,WAAA","ignoreList":[]}