@apple-pie/slice 0.1.31 → 0.1.33

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 (293) hide show
  1. package/README.md +35 -284
  2. package/dist/cjs/chunks/{AudioBubble-k7qS53g6.js → AudioBubble-_eYM1QMu.js} +4 -3
  3. package/dist/cjs/chunks/{Avatar-hP8GuwvD.js → Avatar-DTro_MXZ.js} +1 -1
  4. package/dist/cjs/chunks/{AvatarGroup-DMy34q7_.js → AvatarGroup-OPJJ_Te5.js} +1 -1
  5. package/dist/cjs/chunks/{Badge-D2TbyfJS.js → Badge-DWUeXxm2.js} +1 -1
  6. package/dist/cjs/chunks/{Button-CTsHZBEB.js → Button-CuGvPAkH.js} +1 -1
  7. package/dist/cjs/chunks/{ButtonBar-BRb1PTmw.js → ButtonBar-CbXToyfD.js} +1 -1
  8. package/dist/cjs/chunks/{Camera-CKv087kr.js → Camera-DjENiyud.js} +5 -4
  9. package/dist/cjs/chunks/{CheckBox-VRIL1FHh.js → CheckBox-DiJpbdy5.js} +1 -1
  10. package/dist/cjs/chunks/{Chip-Dr3vKvRY.js → Chip-kzOvEo0P.js} +1 -1
  11. package/dist/cjs/chunks/{DivInput-Ci0gaCWL.js → DivInput-B917fKB9.js} +1 -1
  12. package/dist/cjs/chunks/{Dot-C0MvSJOl.js → Dot-DaRF2JyO.js} +1 -1
  13. package/dist/cjs/chunks/{DrggablePanel-DflouLUs.js → DrggablePanel-CJTEmYW6.js} +4 -3
  14. package/dist/cjs/chunks/{DropDown-BS1H62yj.js → DropDown-DRSQvXCC.js} +1 -1
  15. package/dist/cjs/chunks/{ErrorSummary-B3tof7ir.js → ErrorSummary-ltiIsgJ6.js} +4 -3
  16. package/dist/cjs/chunks/{FileIcon-Te8MaqTs.js → FileIcon-WIVOTJLa.js} +5 -3
  17. package/dist/cjs/chunks/{FileList-CDcfKIV6.js → FileList-CzQZZErI.js} +1 -1
  18. package/dist/cjs/chunks/{FlexDiv-wO8IY0Zf.js → FlexDiv-CBENyLT4.js} +1 -1
  19. package/dist/cjs/chunks/{Grouper-DyGkzdvz.js → Grouper-Cd3AJEFv.js} +4 -3
  20. package/dist/cjs/chunks/{Icon-BFZ_5Qv3.js → Icon-DjvProjz.js} +4 -3
  21. package/dist/cjs/chunks/{IconButton-CgsuJIuF.js → IconButton-BuwQLUuj.js} +1 -1
  22. package/dist/cjs/chunks/{IndexedDB-Dgwal8na.js → IndexedDB-Ddhq6Gjd.js} +1 -1
  23. package/dist/cjs/chunks/{Label-BuyhcJbF.js → Label-d32ENzwL.js} +1 -1
  24. package/dist/cjs/chunks/Level-B8eT8XyV.js +58 -0
  25. package/dist/cjs/chunks/{MdStreamBuffer-CbG_VeRI.js → MdStreamBuffer-Chwibu07.js} +38 -16
  26. package/dist/cjs/chunks/{Modal-ByRyv3wy.js → Modal-CUAj4e6x.js} +34 -8
  27. package/dist/cjs/chunks/ModalController-BwFAVI5G.js +80 -0
  28. package/dist/cjs/chunks/{Overlay-FooE9M_s.js → Overlay-CaAA3ey5.js} +1 -1
  29. package/dist/cjs/chunks/{Pager-B-cuwffo.js → Pager-uExZ5E3x.js} +1 -1
  30. package/dist/cjs/chunks/{ProgressIndicator-ByZ_aYAZ.js → ProgressIndicator-DwqslY4o.js} +4 -3
  31. package/dist/cjs/chunks/{PromptInput--grtHPvy.js → PromptInput-Dl8l8cZv.js} +34 -30
  32. package/dist/cjs/chunks/{RadioButton-DP2X1dA_.js → RadioButton-DPpAOFQt.js} +1 -1
  33. package/dist/cjs/chunks/{RadioButtonList-COGNW5y3.js → RadioButtonList-IbPA6A3y.js} +1 -1
  34. package/dist/cjs/chunks/{Slider-G1a8UKef.js → Slider-D5oa7NGy.js} +1 -1
  35. package/dist/cjs/chunks/{Spacer-CsRCleXv.js → Spacer-DtUh2VLv.js} +1 -1
  36. package/dist/cjs/chunks/{Switch-OBVHKn_D.js → Switch-Bs0r5va5.js} +1 -1
  37. package/dist/cjs/chunks/{TabBar-C1HkBaxE.js → TabBar-BCSTg_Uc.js} +4 -3
  38. package/dist/cjs/chunks/{TextArea-BEmNI_HZ.js → TextArea-Dj7jsvVr.js} +1 -1
  39. package/dist/cjs/chunks/{TextField-D9_COA9H.js → TextField-DNP0wJla.js} +5 -4
  40. package/dist/cjs/chunks/{Tip-2W0u_oQN.js → Tip-awq6PDZa.js} +1 -1
  41. package/dist/cjs/chunks/{Toast-B9jX6ioq.js → Toast-xS1TC3Ba.js} +7 -6
  42. package/dist/cjs/chunks/{ToggleButton-C_Gu5dYR.js → ToggleButton-CqD5c6JA.js} +4 -3
  43. package/dist/cjs/chunks/{UploadArea-ENFAf4tE.js → UploadArea-CvWqk8YK.js} +1 -1
  44. package/dist/cjs/chunks/{WSConnection-CZ22tcLz.js → WSConnection-BACWw4TS.js} +1 -1
  45. package/dist/cjs/chunks/WebRTCConnection-DBeyg4j9.js +252 -0
  46. package/dist/cjs/chunks/{localDBStore-Ca73jeFf.js → localDBStore-wgCc1SmV.js} +1 -1
  47. package/dist/cjs/chunks/{microphoneStore-lxYIvhN8.js → microphoneStore-Dy5TwE2I.js} +27 -4
  48. package/dist/cjs/chunks/{misc-DZAbObFp.js → misc-BwQIEIuF.js} +1 -1
  49. package/dist/cjs/chunks/{sseStore-Bq7sVvyA.js → sseStore-CFFaYonG.js} +2 -2
  50. package/dist/cjs/chunks/{uploads-worker-CD-annza.js → uploads-worker-DWvOe9F8.js} +1 -1
  51. package/dist/cjs/chunks/{uploadsStore-CUeB10zx.js → uploadsStore-BCmts7Ie.js} +2 -2
  52. package/dist/cjs/chunks/{volumeStore-roYTyKJ2.js → volumeStore-BXFAQhvS.js} +5 -4
  53. package/dist/cjs/chunks/webRTCStore-DRjvbnve.js +55 -0
  54. package/dist/cjs/chunks/{windowStore-BdJv-RF0.js → windowStore-C4Bg6I9i.js} +1 -1
  55. package/dist/cjs/components/AudioBubble/index.js +6 -4
  56. package/dist/cjs/components/Avatar/index.js +3 -3
  57. package/dist/cjs/components/AvatarGroup/index.js +3 -3
  58. package/dist/cjs/components/Badge/index.js +2 -2
  59. package/dist/cjs/components/Button/index.js +9 -7
  60. package/dist/cjs/components/ButtonBar/index.js +6 -4
  61. package/dist/cjs/components/Camera/index.js +7 -5
  62. package/dist/cjs/components/CheckBox/index.js +6 -4
  63. package/dist/cjs/components/Chip/index.js +7 -5
  64. package/dist/cjs/components/DivInput/index.js +3 -3
  65. package/dist/cjs/components/Dot/index.js +2 -2
  66. package/dist/cjs/components/DraggablePanel/index.js +5 -3
  67. package/dist/cjs/components/DropDown/index.js +6 -4
  68. package/dist/cjs/components/ErrorSummary/index.js +5 -3
  69. package/dist/cjs/components/FileIcon/index.js +5 -3
  70. package/dist/cjs/components/FileList/index.js +7 -5
  71. package/dist/cjs/components/FlexDiv/index.js +2 -2
  72. package/dist/cjs/components/Grouper/index.js +7 -5
  73. package/dist/cjs/components/Icon/index.js +5 -3
  74. package/dist/cjs/components/IconButton/index.js +8 -6
  75. package/dist/cjs/components/Label/index.js +3 -3
  76. package/dist/cjs/components/Level/index.js +7 -0
  77. package/dist/cjs/components/Modal/index.js +10 -8
  78. package/dist/cjs/components/ModalController/index.js +6 -4
  79. package/dist/cjs/components/Overlay/index.js +2 -2
  80. package/dist/cjs/components/Pager/index.js +3 -3
  81. package/dist/cjs/components/Progress/index.js +5 -3
  82. package/dist/cjs/components/PromptInput/index.js +9 -7
  83. package/dist/cjs/components/RadioButton/index.js +6 -4
  84. package/dist/cjs/components/RadioButtonList/index.js +7 -5
  85. package/dist/cjs/components/Slider/index.js +4 -4
  86. package/dist/cjs/components/Spacer/index.js +2 -2
  87. package/dist/cjs/components/Switch/index.js +2 -2
  88. package/dist/cjs/components/TabBar/index.js +8 -6
  89. package/dist/cjs/components/TextArea/index.js +9 -7
  90. package/dist/cjs/components/Textfield/index.js +9 -7
  91. package/dist/cjs/components/Tip/index.js +3 -3
  92. package/dist/cjs/components/Toast/index.js +6 -4
  93. package/dist/cjs/components/ToggleButton/index.js +9 -7
  94. package/dist/cjs/components/UploadArea/index.js +11 -10
  95. package/dist/cjs/hooks/useAudioRecorder.js +1 -1
  96. package/dist/cjs/hooks/useBindWebRTC.js +60 -0
  97. package/dist/cjs/hooks/useLocalStore.js +3 -3
  98. package/dist/cjs/hooks/useMdStreamBuffer.js +55 -30
  99. package/dist/cjs/hooks/useMicrophone.js +1 -1
  100. package/dist/cjs/hooks/useTrackRenders.js +2 -2
  101. package/dist/cjs/hooks.js +7 -4
  102. package/dist/cjs/index.js +19 -18
  103. package/dist/cjs/providers/ThemeProvider.js +5 -4
  104. package/dist/cjs/providers/themeServer.js +15 -9
  105. package/dist/cjs/stores/LocalDB.js +3 -3
  106. package/dist/cjs/stores/SSE.js +2 -2
  107. package/dist/cjs/stores/WS.js +2 -2
  108. package/dist/cjs/stores/WebRTC.js +9 -0
  109. package/dist/cjs/stores/microphone.js +5 -4
  110. package/dist/cjs/stores/modal.js +1 -1
  111. package/dist/cjs/stores/tip.js +1 -1
  112. package/dist/cjs/stores/toast.js +1 -1
  113. package/dist/cjs/stores/uploads.js +2 -2
  114. package/dist/cjs/stores/volume.js +2 -2
  115. package/dist/cjs/stores/window.js +2 -2
  116. package/dist/cjs/stores.js +24 -19
  117. package/dist/cjs/utils/index.js +4 -3
  118. package/dist/cjs/utils/objects/index.js +4 -3
  119. package/dist/cjs/workers/uploads/uploads.js +2 -2
  120. package/dist/esm/chunks/{AudioBubble-DfrxyTX_.mjs → AudioBubble-SB1LCBlJ.mjs} +9 -3
  121. package/dist/esm/chunks/{Avatar-pA41Pcyl.mjs → Avatar-B6PcVOmT.mjs} +2 -2
  122. package/dist/esm/chunks/{AvatarGroup-CZBtWjnj.mjs → AvatarGroup-DEb3j2IZ.mjs} +2 -2
  123. package/dist/esm/chunks/{Badge-pLwG0zm7.mjs → Badge-bh5UVUnt.mjs} +1 -1
  124. package/dist/esm/chunks/{Button-BJoMLZIs.mjs → Button-CWKs3uAV.mjs} +6 -6
  125. package/dist/esm/chunks/{ButtonBar-BO2RUJ8R.mjs → ButtonBar-CWeMhkSb.mjs} +3 -3
  126. package/dist/esm/chunks/{Camera-4MNA52HG.mjs → Camera-BmuMA9xY.mjs} +11 -5
  127. package/dist/esm/chunks/{CheckBox-7KAsvZld.mjs → CheckBox-BR6a2n0j.mjs} +3 -3
  128. package/dist/esm/chunks/{Chip-BuGvCLLU.mjs → Chip-DXW0jxKf.mjs} +4 -4
  129. package/dist/esm/chunks/{DivInput-D0YzSWjJ.mjs → DivInput-BWO1EJXA.mjs} +2 -2
  130. package/dist/esm/chunks/{Dot-h26m47Z-.mjs → Dot-DMst-5Q2.mjs} +1 -1
  131. package/dist/esm/chunks/{DrggablePanel-Bh6HLPMX.mjs → DrggablePanel-qxrCS7Ot.mjs} +8 -2
  132. package/dist/esm/chunks/{DropDown-NgMYjjXn.mjs → DropDown-DlO2J4QP.mjs} +3 -3
  133. package/dist/esm/chunks/{ErrorSummary-nNm9qymE.mjs → ErrorSummary-BplQFunJ.mjs} +8 -2
  134. package/dist/esm/chunks/{FileIcon-BqyV1wut.mjs → FileIcon-iFmAF7_a.mjs} +8 -2
  135. package/dist/esm/chunks/{FileList-C1tOvoc0.mjs → FileList-CztHFCJe.mjs} +5 -5
  136. package/dist/esm/chunks/{FlexDiv-CkK-DAyg.mjs → FlexDiv-DGmDZL7M.mjs} +1 -1
  137. package/dist/esm/chunks/{Grouper-CyrOkuu2.mjs → Grouper-DxOISLzH.mjs} +9 -3
  138. package/dist/esm/chunks/{Icon-DjW0Krm8.mjs → Icon-L8B35JN1.mjs} +8 -2
  139. package/dist/esm/chunks/{IconButton-DdLhTUl0.mjs → IconButton-DxwJemEK.mjs} +5 -5
  140. package/dist/esm/chunks/{IndexedDB-DVoDikoA.mjs → IndexedDB-DA5oZXju.mjs} +1 -1
  141. package/dist/esm/chunks/{Label-DhmJ_Sln.mjs → Label-wDPtyK4h.mjs} +2 -2
  142. package/dist/esm/chunks/Level-B9JayinM.mjs +63 -0
  143. package/dist/esm/chunks/{MdStreamBuffer-4AJH8WaN.mjs → MdStreamBuffer-Cyon3ytf.mjs} +38 -16
  144. package/dist/esm/chunks/{Modal-FztrJsQo.mjs → Modal-C-Q2A_RY.mjs} +39 -13
  145. package/dist/esm/chunks/ModalController-ClAjHLPb.mjs +91 -0
  146. package/dist/esm/chunks/{Overlay-Dsy55Bxm.mjs → Overlay-Dr9YYxJ6.mjs} +1 -1
  147. package/dist/esm/chunks/{Pager-BqSdwL0L.mjs → Pager-DPbTCMNe.mjs} +2 -2
  148. package/dist/esm/chunks/{ProgressIndicator-BnqZFATV.mjs → ProgressIndicator-HaJJDZ-m.mjs} +8 -2
  149. package/dist/esm/chunks/{PromptInput-CRkcPXJu.mjs → PromptInput-wGhpXw-h.mjs} +38 -31
  150. package/dist/esm/chunks/{RadioButton-DXq3yniV.mjs → RadioButton-oOGgTDhg.mjs} +3 -3
  151. package/dist/esm/chunks/{RadioButtonList-BgOskHCP.mjs → RadioButtonList-CDWKVvyL.mjs} +3 -3
  152. package/dist/esm/chunks/{Slider-DPOy9uNI.mjs → Slider-ioPGftDY.mjs} +3 -3
  153. package/dist/esm/chunks/{Spacer-BJd_D0Fn.mjs → Spacer-VJBjxVlr.mjs} +1 -1
  154. package/dist/esm/chunks/{Switch-DHqlyizo.mjs → Switch-BCk2sTh3.mjs} +1 -1
  155. package/dist/esm/chunks/{TabBar-RBXExqMK.mjs → TabBar-C1DYnCRx.mjs} +11 -5
  156. package/dist/esm/chunks/{TextArea-CIlx_P26.mjs → TextArea-CF3r5m2G.mjs} +2 -2
  157. package/dist/esm/chunks/{TextField-CX72ybwH.mjs → TextField-BNfTj9v2.mjs} +11 -5
  158. package/dist/esm/chunks/{Tip-COBSyEjm.mjs → Tip-DIKQvxxO.mjs} +2 -2
  159. package/dist/esm/chunks/{Toast-BTm3HxDD.mjs → Toast-CkXPrDpp.mjs} +12 -6
  160. package/dist/esm/chunks/{ToggleButton-DujsCKF3.mjs → ToggleButton-Dvy8fc4t.mjs} +5 -4
  161. package/dist/esm/chunks/{UploadArea-D--Nt8Ed.mjs → UploadArea-D_xGzR2e.mjs} +4 -4
  162. package/dist/esm/chunks/{WSConnection-BMXcuW3f.mjs → WSConnection-TiYLENWB.mjs} +1 -1
  163. package/dist/esm/chunks/WebRTCConnection-d0Yvd66q.mjs +252 -0
  164. package/dist/esm/chunks/{localDBStore-36E3160Z.mjs → localDBStore-C-5y16uv.mjs} +2 -2
  165. package/dist/esm/chunks/{microphoneStore-Cexu82zH.mjs → microphoneStore-Cbx9nV4R.mjs} +26 -3
  166. package/dist/esm/chunks/{misc-CTGTuM2J.mjs → misc-zecH7-IH.mjs} +1 -1
  167. package/dist/esm/chunks/{sseStore-Dow4NXkZ.mjs → sseStore-DIquUNpm.mjs} +2 -2
  168. package/dist/esm/chunks/{tslib.es6-BX2F90pK.mjs → tslib.es6-CVvvNSPr.mjs} +1 -1
  169. package/dist/esm/chunks/{uploads-worker-Dhyp4ot3.mjs → uploads-worker-CUggKU9b.mjs} +1 -1
  170. package/dist/esm/chunks/{uploadsStore-DT4lFybE.mjs → uploadsStore-9QngohOe.mjs} +1 -1
  171. package/dist/esm/chunks/{volumeStore-RAxdmQ60.mjs → volumeStore-BrgZCRKF.mjs} +5 -4
  172. package/dist/esm/chunks/webRTCStore-DhFE9-bb.mjs +57 -0
  173. package/dist/esm/chunks/{windowStore-C4AZexIa.mjs → windowStore-BKW7HyoD.mjs} +1 -1
  174. package/dist/esm/components/AudioBubble/index.mjs +14 -4
  175. package/dist/esm/components/Avatar/index.mjs +3 -3
  176. package/dist/esm/components/AvatarGroup/index.mjs +4 -4
  177. package/dist/esm/components/Badge/index.mjs +2 -2
  178. package/dist/esm/components/Button/index.mjs +18 -8
  179. package/dist/esm/components/ButtonBar/index.mjs +14 -4
  180. package/dist/esm/components/Camera/index.mjs +16 -6
  181. package/dist/esm/components/CheckBox/index.mjs +14 -4
  182. package/dist/esm/components/Chip/index.mjs +15 -5
  183. package/dist/esm/components/DivInput/index.mjs +3 -3
  184. package/dist/esm/components/Dot/index.mjs +2 -2
  185. package/dist/esm/components/DraggablePanel/index.mjs +13 -3
  186. package/dist/esm/components/DropDown/index.mjs +14 -4
  187. package/dist/esm/components/ErrorSummary/index.mjs +13 -3
  188. package/dist/esm/components/FileIcon/index.mjs +13 -3
  189. package/dist/esm/components/FileList/index.mjs +16 -6
  190. package/dist/esm/components/FlexDiv/index.mjs +2 -2
  191. package/dist/esm/components/Grouper/index.mjs +15 -5
  192. package/dist/esm/components/Icon/index.mjs +14 -4
  193. package/dist/esm/components/IconButton/index.mjs +17 -7
  194. package/dist/esm/components/Label/index.mjs +3 -3
  195. package/dist/esm/components/Level/index.mjs +11 -0
  196. package/dist/esm/components/Modal/index.mjs +20 -10
  197. package/dist/esm/components/ModalController/index.mjs +14 -6
  198. package/dist/esm/components/Overlay/index.mjs +2 -2
  199. package/dist/esm/components/Pager/index.mjs +3 -3
  200. package/dist/esm/components/Progress/index.mjs +14 -4
  201. package/dist/esm/components/PromptInput/index.mjs +22 -12
  202. package/dist/esm/components/RadioButton/index.mjs +14 -4
  203. package/dist/esm/components/RadioButtonList/index.mjs +15 -5
  204. package/dist/esm/components/Slider/index.mjs +4 -4
  205. package/dist/esm/components/Spacer/index.mjs +2 -2
  206. package/dist/esm/components/Switch/index.mjs +2 -2
  207. package/dist/esm/components/TabBar/index.mjs +18 -8
  208. package/dist/esm/components/TextArea/index.mjs +19 -9
  209. package/dist/esm/components/Textfield/index.mjs +20 -10
  210. package/dist/esm/components/Tip/index.mjs +3 -3
  211. package/dist/esm/components/Toast/index.mjs +15 -5
  212. package/dist/esm/components/ToggleButton/index.mjs +19 -9
  213. package/dist/esm/components/UploadArea/index.mjs +19 -9
  214. package/dist/esm/hooks/useAudioRecorder.mjs +1 -1
  215. package/dist/esm/hooks/useBindWebRTC.mjs +72 -0
  216. package/dist/esm/hooks/useLocalStore.mjs +3 -3
  217. package/dist/esm/hooks/useMdStreamBuffer.mjs +56 -28
  218. package/dist/esm/hooks/useMicrophone.mjs +1 -1
  219. package/dist/esm/hooks/useTrackRenders.mjs +2 -2
  220. package/dist/esm/hooks.mjs +14 -2
  221. package/dist/esm/index.mjs +62 -50
  222. package/dist/esm/providers/ThemeProvider.mjs +6 -5
  223. package/dist/esm/providers/themeServer.mjs +11 -6
  224. package/dist/esm/stores/LocalDB.mjs +3 -3
  225. package/dist/esm/stores/SSE.mjs +3 -3
  226. package/dist/esm/stores/WS.mjs +2 -2
  227. package/dist/esm/stores/WebRTC.mjs +7 -0
  228. package/dist/esm/stores/microphone.mjs +2 -2
  229. package/dist/esm/stores/modal.mjs +1 -1
  230. package/dist/esm/stores/tip.mjs +1 -1
  231. package/dist/esm/stores/toast.mjs +1 -1
  232. package/dist/esm/stores/uploads.mjs +3 -3
  233. package/dist/esm/stores/volume.mjs +2 -2
  234. package/dist/esm/stores/window.mjs +2 -2
  235. package/dist/esm/stores.mjs +18 -14
  236. package/dist/esm/utils/index.mjs +11 -9
  237. package/dist/esm/utils/objects/index.mjs +8 -6
  238. package/dist/esm/workers/uploads/uploads.mjs +2 -2
  239. package/dist/styles.css +76 -13
  240. package/dist/types/components/Level/Level.d.ts +5 -0
  241. package/dist/types/components/Level/_types.d.ts +21 -0
  242. package/dist/types/components/Level/index.d.ts +2 -0
  243. package/dist/types/components/Modal/_types.d.ts +3 -0
  244. package/dist/types/components/PromptInput/PromptInput.d.ts +10 -2
  245. package/dist/types/components/PromptInput/_types.d.ts +5 -1
  246. package/dist/types/components/Toast/_types.d.ts +1 -0
  247. package/dist/types/components/ToggleButton/_types.d.ts +1 -0
  248. package/dist/types/hooks/index.d.ts +2 -0
  249. package/dist/types/hooks/useBindWebRTC/index.d.ts +1 -0
  250. package/dist/types/hooks/useBindWebRTC/useBindWebRTC.d.ts +15 -0
  251. package/dist/types/hooks/useLocalStore/useLocalStore.d.ts +1 -1
  252. package/dist/types/hooks/useMdStreamBuffer/useMdStreamBuffer.d.ts +6 -1
  253. package/dist/types/index.d.ts +3 -1
  254. package/dist/types/providers/ThemeProvider.d.ts +1 -0
  255. package/dist/types/providers/themeServer.d.ts +7 -3
  256. package/dist/types/stores/WebRTC/_types.d.ts +16 -0
  257. package/dist/types/stores/WebRTC/index.d.ts +2 -0
  258. package/dist/types/stores/WebRTC/webRTCStore.d.ts +21 -0
  259. package/dist/types/stores/index.d.ts +1 -0
  260. package/dist/types/stores/microphone/index.d.ts +1 -1
  261. package/dist/types/stores/microphone/microphoneStore.d.ts +14 -1
  262. package/dist/types/stores/toast/_types.d.ts +1 -0
  263. package/dist/types/stores/volume/_types.d.ts +3 -1
  264. package/dist/types/stores/volume/volumeStore.d.ts +6 -2
  265. package/dist/types/utils/functions/files.d.ts +1 -1
  266. package/dist/types/utils/index.d.ts +2 -2
  267. package/dist/types/utils/objects/MDStreamBuffer/MdStreamBuffer.d.ts +10 -0
  268. package/dist/types/utils/objects/MDStreamBuffer/_types.d.ts +2 -0
  269. package/dist/types/utils/objects/WebRTCConnection/WebRTCConnection.d.ts +37 -3
  270. package/dist/types/utils/objects/WebRTCConnection/_types.d.ts +13 -4
  271. package/dist/types/utils/objects/index.d.ts +2 -0
  272. package/package.json +1 -1
  273. package/dist/cjs/chunks/ModalController-xjflFsjF.js +0 -68
  274. package/dist/esm/chunks/ModalController-C1BnM5Dz.mjs +0 -76
  275. /package/dist/cjs/chunks/{SSEConnection-ACoOeeTO.js → SSEConnection-CF5WZG9b.js} +0 -0
  276. /package/dist/cjs/chunks/{_types-k-3V1fz_.js → _types-BTdDWVYI.js} +0 -0
  277. /package/dist/cjs/chunks/{audioVisualizer-MOSbvvnZ.js → audioVisualizer-C7fMG0WH.js} +0 -0
  278. /package/dist/cjs/chunks/{colors-B0_3srZN.js → colors-CmOkcjB3.js} +0 -0
  279. /package/dist/cjs/chunks/{debounce-CaoYvh12.js → debounce-BtCCTkbG.js} +0 -0
  280. /package/dist/cjs/chunks/{modalStore-D4bOjuWd.js → modalStore-CaQkdY5_.js} +0 -0
  281. /package/dist/cjs/chunks/{sharedTypes-CthHPjrO.js → sharedTypes-BOieqpQy.js} +0 -0
  282. /package/dist/cjs/chunks/{tipStore-CPB7RHKY.js → tipStore-4Bs9v2sg.js} +0 -0
  283. /package/dist/cjs/chunks/{toastStore-6eHe6esp.js → toastStore-CyCE9-lr.js} +0 -0
  284. /package/dist/cjs/chunks/{tslib.es6-CzpRaW14.js → tslib.es6-DqjaJVC3.js} +0 -0
  285. /package/dist/esm/chunks/{SSEConnection-qNnkZUOe.mjs → SSEConnection-g0GBGAqe.mjs} +0 -0
  286. /package/dist/esm/chunks/{_types-CEStVWlB.mjs → _types-9ekyeJYl.mjs} +0 -0
  287. /package/dist/esm/chunks/{audioVisualizer-BUNbarKP.mjs → audioVisualizer-nMo67yOW.mjs} +0 -0
  288. /package/dist/esm/chunks/{colors-D-qeA9gU.mjs → colors-v5b8_oYV.mjs} +0 -0
  289. /package/dist/esm/chunks/{debounce-D5b6tZ5a.mjs → debounce-DFxAyrPi.mjs} +0 -0
  290. /package/dist/esm/chunks/{modalStore-Crg_QmSJ.mjs → modalStore-D6_oc47l.mjs} +0 -0
  291. /package/dist/esm/chunks/{sharedTypes-U5H1I85x.mjs → sharedTypes-CdmzhKXN.mjs} +0 -0
  292. /package/dist/esm/chunks/{tipStore-pvswaezx.mjs → tipStore-C2M6zBzd.mjs} +0 -0
  293. /package/dist/esm/chunks/{toastStore-80oOTYsj.mjs → toastStore-B-6kdNHw.mjs} +0 -0
@@ -1,13 +1,15 @@
1
1
  "use strict";
2
2
 
3
- var TabBar = require("../../chunks/TabBar-C1HkBaxE.js");
3
+ var TabBar = require("../../chunks/TabBar-BCSTg_Uc.js");
4
4
 
5
- require("../../chunks/tslib.es6-CzpRaW14.js"), require("react/jsx-runtime"), require("react"),
5
+ require("../../chunks/tslib.es6-DqjaJVC3.js"), require("react/jsx-runtime"), require("react"),
6
6
  require("../../hooks/useTheme.js"), require("../../providers/ThemeProvider.js"),
7
7
  require("../../theme/themes.js"), require("../../theme/colors.js"), require("../../theme/corners.js"),
8
8
  require("../../theme/elevations.js"), require("../../theme/motion.js"), require("../../theme/type.js"),
9
- require("../../hooks/useObserveTheme.js"), require("../../hooks/useWindow.js"),
10
- require("../../chunks/Badge-D2TbyfJS.js"), require("../../chunks/Icon-BFZ_5Qv3.js"),
11
- require("../../chunks/misc-DZAbObFp.js"), require("../../chunks/IconButton-CgsuJIuF.js"),
12
- require("motion/react"), require("../../chunks/Dot-C0MvSJOl.js"), require("../../chunks/sharedTypes-CthHPjrO.js"),
9
+ require("../../hooks/useObserveTheme.js"), require("../../chunks/webRTCStore-DRjvbnve.js"),
10
+ require("zustand"), require("../../chunks/WebRTCConnection-DBeyg4j9.js"), require("../../chunks/microphoneStore-Dy5TwE2I.js"),
11
+ require("../../chunks/volumeStore-BXFAQhvS.js"), require("../../hooks/useWindow.js"),
12
+ require("../../chunks/Badge-DWUeXxm2.js"), require("../../chunks/Icon-DjvProjz.js"),
13
+ require("../../chunks/misc-BwQIEIuF.js"), require("../../chunks/IconButton-BuwQLUuj.js"),
14
+ require("motion/react"), require("../../chunks/Dot-DaRF2JyO.js"), require("../../chunks/sharedTypes-BOieqpQy.js"),
13
15
  exports.TabBar = TabBar.TabBar;
@@ -1,13 +1,15 @@
1
1
  "use strict";
2
2
 
3
- var TextArea = require("../../chunks/TextArea-BEmNI_HZ.js");
3
+ var TextArea = require("../../chunks/TextArea-Dj7jsvVr.js");
4
4
 
5
- require("../../chunks/tslib.es6-CzpRaW14.js"), require("react/jsx-runtime"), require("react"),
6
- require("../../chunks/Button-CTsHZBEB.js"), require("motion/react"), require("../../chunks/Badge-D2TbyfJS.js"),
7
- require("../../chunks/Dot-C0MvSJOl.js"), require("../../chunks/Icon-BFZ_5Qv3.js"),
5
+ require("../../chunks/tslib.es6-DqjaJVC3.js"), require("react/jsx-runtime"), require("react"),
6
+ require("../../chunks/Button-CuGvPAkH.js"), require("motion/react"), require("../../chunks/Badge-DWUeXxm2.js"),
7
+ require("../../chunks/Dot-DaRF2JyO.js"), require("../../chunks/Icon-DjvProjz.js"),
8
8
  require("../../hooks/useTheme.js"), require("../../providers/ThemeProvider.js"),
9
9
  require("../../theme/themes.js"), require("../../theme/colors.js"), require("../../theme/corners.js"),
10
10
  require("../../theme/elevations.js"), require("../../theme/motion.js"), require("../../theme/type.js"),
11
- require("../../hooks/useObserveTheme.js"), require("../../chunks/misc-DZAbObFp.js"),
12
- require("../../hooks/useWindow.js"), require("../../chunks/ProgressIndicator-ByZ_aYAZ.js"),
13
- require("../../chunks/sharedTypes-CthHPjrO.js"), exports.TextArea = TextArea.TextArea;
11
+ require("../../hooks/useObserveTheme.js"), require("../../chunks/misc-BwQIEIuF.js"),
12
+ require("../../chunks/webRTCStore-DRjvbnve.js"), require("zustand"), require("../../chunks/WebRTCConnection-DBeyg4j9.js"),
13
+ require("../../chunks/microphoneStore-Dy5TwE2I.js"), require("../../chunks/volumeStore-BXFAQhvS.js"),
14
+ require("../../hooks/useWindow.js"), require("../../chunks/ProgressIndicator-DwqslY4o.js"),
15
+ require("../../chunks/sharedTypes-BOieqpQy.js"), exports.TextArea = TextArea.TextArea;
@@ -1,14 +1,16 @@
1
1
  "use strict";
2
2
 
3
- var TextField = require("../../chunks/TextField-D9_COA9H.js");
3
+ var TextField = require("../../chunks/TextField-DNP0wJla.js");
4
4
 
5
- require("../../chunks/tslib.es6-CzpRaW14.js"), require("react/jsx-runtime"), require("motion/react"),
5
+ require("../../chunks/tslib.es6-DqjaJVC3.js"), require("react/jsx-runtime"), require("motion/react"),
6
6
  require("react"), require("../../hooks/useTheme.js"), require("../../providers/ThemeProvider.js"),
7
7
  require("../../theme/themes.js"), require("../../theme/colors.js"), require("../../theme/corners.js"),
8
8
  require("../../theme/elevations.js"), require("../../theme/motion.js"), require("../../theme/type.js"),
9
- require("../../hooks/useObserveTheme.js"), require("../../chunks/misc-DZAbObFp.js"),
10
- require("../../hooks/useWindow.js"), require("../../chunks/Button-CTsHZBEB.js"),
11
- require("../../chunks/Badge-D2TbyfJS.js"), require("../../chunks/Dot-C0MvSJOl.js"),
12
- require("../../chunks/Icon-BFZ_5Qv3.js"), require("../../chunks/ProgressIndicator-ByZ_aYAZ.js"),
13
- require("../../chunks/sharedTypes-CthHPjrO.js"), require("../../chunks/IconButton-CgsuJIuF.js"),
9
+ require("../../hooks/useObserveTheme.js"), require("../../chunks/misc-BwQIEIuF.js"),
10
+ require("../../chunks/webRTCStore-DRjvbnve.js"), require("zustand"), require("../../chunks/WebRTCConnection-DBeyg4j9.js"),
11
+ require("../../chunks/microphoneStore-Dy5TwE2I.js"), require("../../chunks/volumeStore-BXFAQhvS.js"),
12
+ require("../../hooks/useWindow.js"), require("../../chunks/Button-CuGvPAkH.js"),
13
+ require("../../chunks/Badge-DWUeXxm2.js"), require("../../chunks/Dot-DaRF2JyO.js"),
14
+ require("../../chunks/Icon-DjvProjz.js"), require("../../chunks/ProgressIndicator-DwqslY4o.js"),
15
+ require("../../chunks/sharedTypes-BOieqpQy.js"), require("../../chunks/IconButton-BuwQLUuj.js"),
14
16
  exports.TextField = TextField.TextField;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var Tip = require("../../chunks/Tip-2W0u_oQN.js");
3
+ var Tip = require("../../chunks/Tip-awq6PDZa.js");
4
4
 
5
- require("../../chunks/tslib.es6-CzpRaW14.js"), require("react/jsx-runtime"), require("motion/react"),
6
- require("react"), require("../../chunks/misc-DZAbObFp.js"), exports.Tip = Tip.Tip;
5
+ require("../../chunks/tslib.es6-DqjaJVC3.js"), require("react/jsx-runtime"), require("motion/react"),
6
+ require("react"), require("../../chunks/misc-BwQIEIuF.js"), exports.Tip = Tip.Tip;
@@ -1,13 +1,15 @@
1
1
  "use strict";
2
2
 
3
- var Toast = require("../../chunks/Toast-B9jX6ioq.js");
3
+ var Toast = require("../../chunks/Toast-xS1TC3Ba.js");
4
4
 
5
- require("../../chunks/tslib.es6-CzpRaW14.js"), require("react/jsx-runtime"), require("motion/react"),
5
+ require("../../chunks/tslib.es6-DqjaJVC3.js"), require("react/jsx-runtime"), require("motion/react"),
6
6
  require("react"), require("../../hooks/useTheme.js"), require("../../providers/ThemeProvider.js"),
7
7
  require("../../theme/themes.js"), require("../../theme/colors.js"), require("../../theme/corners.js"),
8
8
  require("../../theme/elevations.js"), require("../../theme/motion.js"), require("../../theme/type.js"),
9
- require("../../hooks/useObserveTheme.js"), require("../../chunks/misc-DZAbObFp.js"),
10
- require("../../hooks/useWindow.js"), require("../../chunks/Icon-BFZ_5Qv3.js"), require("../../chunks/ProgressIndicator-ByZ_aYAZ.js"),
9
+ require("../../hooks/useObserveTheme.js"), require("../../chunks/misc-BwQIEIuF.js"),
10
+ require("../../chunks/webRTCStore-DRjvbnve.js"), require("zustand"), require("../../chunks/WebRTCConnection-DBeyg4j9.js"),
11
+ require("../../chunks/microphoneStore-Dy5TwE2I.js"), require("../../chunks/volumeStore-BXFAQhvS.js"),
12
+ require("../../hooks/useWindow.js"), require("../../chunks/Icon-DjvProjz.js"), require("../../chunks/ProgressIndicator-DwqslY4o.js"),
11
13
  exports.Toast = Toast.Toast, Object.defineProperty(exports, "ToastType", {
12
14
  enumerable: !0,
13
15
  get: function() {
@@ -1,13 +1,15 @@
1
1
  "use strict";
2
2
 
3
- var ToggleButton = require("../../chunks/ToggleButton-C_Gu5dYR.js");
3
+ var ToggleButton = require("../../chunks/ToggleButton-CqD5c6JA.js");
4
4
 
5
- require("react/jsx-runtime"), require("react"), require("../../chunks/IconButton-CgsuJIuF.js"),
6
- require("../../chunks/tslib.es6-CzpRaW14.js"), require("motion/react"), require("../../chunks/Badge-D2TbyfJS.js"),
7
- require("../../chunks/Dot-C0MvSJOl.js"), require("../../chunks/Icon-BFZ_5Qv3.js"),
5
+ require("react/jsx-runtime"), require("react"), require("../../chunks/IconButton-BuwQLUuj.js"),
6
+ require("../../chunks/tslib.es6-DqjaJVC3.js"), require("motion/react"), require("../../chunks/Badge-DWUeXxm2.js"),
7
+ require("../../chunks/Dot-DaRF2JyO.js"), require("../../chunks/Icon-DjvProjz.js"),
8
8
  require("../../hooks/useTheme.js"), require("../../providers/ThemeProvider.js"),
9
9
  require("../../theme/themes.js"), require("../../theme/colors.js"), require("../../theme/corners.js"),
10
10
  require("../../theme/elevations.js"), require("../../theme/motion.js"), require("../../theme/type.js"),
11
- require("../../hooks/useObserveTheme.js"), require("../../chunks/misc-DZAbObFp.js"),
12
- require("../../hooks/useWindow.js"), require("../../chunks/sharedTypes-CthHPjrO.js"),
13
- require("../../chunks/Label-BuyhcJbF.js"), exports.ToggleButton = ToggleButton.ToggleButton;
11
+ require("../../hooks/useObserveTheme.js"), require("../../chunks/misc-BwQIEIuF.js"),
12
+ require("../../chunks/webRTCStore-DRjvbnve.js"), require("zustand"), require("../../chunks/WebRTCConnection-DBeyg4j9.js"),
13
+ require("../../chunks/microphoneStore-Dy5TwE2I.js"), require("../../chunks/volumeStore-BXFAQhvS.js"),
14
+ require("../../hooks/useWindow.js"), require("../../chunks/sharedTypes-BOieqpQy.js"),
15
+ require("../../chunks/Label-d32ENzwL.js"), exports.ToggleButton = ToggleButton.ToggleButton;
@@ -1,16 +1,17 @@
1
1
  "use strict";
2
2
 
3
- var UploadArea = require("../../chunks/UploadArea-ENFAf4tE.js");
3
+ var UploadArea = require("../../chunks/UploadArea-CvWqk8YK.js");
4
4
 
5
- require("react/jsx-runtime"), require("react"), require("../../chunks/misc-DZAbObFp.js"),
6
- require("../../chunks/tslib.es6-CzpRaW14.js"), require("../../chunks/Icon-BFZ_5Qv3.js"),
7
- require("../../hooks/useTheme.js"), require("../../providers/ThemeProvider.js"),
8
- require("../../theme/themes.js"), require("../../theme/colors.js"), require("../../theme/corners.js"),
9
- require("../../theme/elevations.js"), require("../../theme/motion.js"), require("../../theme/type.js"),
10
- require("../../hooks/useObserveTheme.js"), require("../../hooks/useWindow.js"),
11
- require("../../chunks/ProgressIndicator-ByZ_aYAZ.js"), require("motion/react"),
12
- require("../../chunks/FileList-CDcfKIV6.js"), require("../../chunks/FileIcon-Te8MaqTs.js"),
13
- exports.UploadArea = UploadArea.UploadArea, exports.allTypes = UploadArea.allTypes,
5
+ require("react/jsx-runtime"), require("react"), require("../../chunks/misc-BwQIEIuF.js"),
6
+ require("../../chunks/tslib.es6-DqjaJVC3.js"), require("../../chunks/FileList-CzQZZErI.js"),
7
+ require("../../chunks/FileIcon-WIVOTJLa.js"), require("../../hooks/useTheme.js"),
8
+ require("../../providers/ThemeProvider.js"), require("../../theme/themes.js"), require("../../theme/colors.js"),
9
+ require("../../theme/corners.js"), require("../../theme/elevations.js"), require("../../theme/motion.js"),
10
+ require("../../theme/type.js"), require("../../hooks/useObserveTheme.js"), require("../../chunks/webRTCStore-DRjvbnve.js"),
11
+ require("zustand"), require("../../chunks/WebRTCConnection-DBeyg4j9.js"), require("../../chunks/microphoneStore-Dy5TwE2I.js"),
12
+ require("../../chunks/volumeStore-BXFAQhvS.js"), require("../../hooks/useWindow.js"),
13
+ require("../../chunks/Icon-DjvProjz.js"), require("../../chunks/ProgressIndicator-DwqslY4o.js"),
14
+ require("motion/react"), exports.UploadArea = UploadArea.UploadArea, exports.allTypes = UploadArea.allTypes,
14
15
  exports.audioTypes = UploadArea.audioTypes, exports.documentTypes = UploadArea.documentTypes,
15
16
  exports.imageTypes = UploadArea.imageTypes, exports.textTypes = UploadArea.textTypes,
16
17
  exports.videoTypes = UploadArea.videoTypes;
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  "use strict";
3
3
 
4
- var tslib_es6 = require("../chunks/tslib.es6-CzpRaW14.js"), React = require("react");
4
+ var tslib_es6 = require("../chunks/tslib.es6-DqjaJVC3.js"), React = require("react");
5
5
 
6
6
  exports.useAudioRecorder = function(audioStream) {
7
7
  const audioBlob = React.useRef(null), mediaRecorderRef = React.useRef(null), recordedChunksRef = React.useRef([]), stopResolveRef = React.useRef(null), [error, setError] = React.useState(null), [isRecording, setIsRecording] = React.useState(!1), [recordingSizeMb, setRecordingSizeMb] = React.useState(0), [mimeType, setMimeType] = React.useState(null), resetRecording = React.useCallback(() => {
@@ -0,0 +1,60 @@
1
+ 'use client';
2
+ "use strict";
3
+
4
+ var tslib_es6 = require("../chunks/tslib.es6-DqjaJVC3.js"), React = require("react"), webRTCStore = require("../chunks/webRTCStore-DRjvbnve.js"), microphoneStore = require("../chunks/microphoneStore-Dy5TwE2I.js"), volumeStore = require("../chunks/volumeStore-BXFAQhvS.js");
5
+
6
+ require("zustand"), require("../chunks/WebRTCConnection-DBeyg4j9.js"), exports.useBindWebRTC = function(options) {
7
+ var _a;
8
+ const {connectionName: connectionName, offerOptions: offerOptions, bearerToken: bearerToken, connectionUrl: connectionUrl, audioElement: audioElement, autoPlayAudio: autoPlayAudio, dataChannels: dataChannels, videoTrack: videoTrack, onRemoteVideoStream: onRemoteVideoStream, onRemoteAudioStream: onRemoteAudioStream, onDataChannelEvent: onDataChannelEvent} = options, processedMicStream = microphoneStore.useProcessedMicStream(), volume = volumeStore.useVolume(), {addConnection: addConnection, initializeConnection: initializeConnection, removeConnection: removeConnection, setMicStream: setMicStream, setVolume: setVolume} = webRTCStore.useWebRTC(), connectionEntry = webRTCStore.useWebRTCConnection(connectionName), [error, setError] = React.useState(null), [bound, setBound] = React.useState(!1), ownsConnectionRef = React.useRef(!1), unbind = React.useCallback(() => {
9
+ ownsConnectionRef.current && removeConnection(connectionName), ownsConnectionRef.current = !1,
10
+ setBound(!1), setError(null);
11
+ }, [ connectionName, removeConnection ]), bind = React.useCallback(() => tslib_es6.__awaiter(this, void 0, void 0, function*() {
12
+ var _a, _b;
13
+ setError(null);
14
+ const existingConnection = webRTCStore.getWebRTCConnections().find(connection => connection.name === connectionName);
15
+ if (existingConnection) {
16
+ const nextError = new Error(`WebRTC connection "${connectionName}" already exists`);
17
+ return setError(nextError), existingConnection.connection;
18
+ }
19
+ const micStream = processedMicStream.current;
20
+ if (!micStream) {
21
+ const nextError = new Error("No processed microphone stream available");
22
+ return setError(nextError), null;
23
+ }
24
+ try {
25
+ return addConnection(connectionName, {
26
+ connectionUrl: connectionUrl,
27
+ audioElement: audioElement,
28
+ autoPlayAudio: autoPlayAudio,
29
+ dataChannels: dataChannels,
30
+ micStream: micStream,
31
+ videoTrack: videoTrack,
32
+ volume: volume,
33
+ onRemoteVideoStream: onRemoteVideoStream,
34
+ onRemoteAudioStream: onRemoteAudioStream,
35
+ onDataChannelEvent: onDataChannelEvent
36
+ }), ownsConnectionRef.current = !0, yield initializeConnection(connectionName, offerOptions, bearerToken),
37
+ setBound(!0), null !== (_b = null === (_a = webRTCStore.getWebRTCConnections().find(connection => connection.name === connectionName)) || void 0 === _a ? void 0 : _a.connection) && void 0 !== _b ? _b : null;
38
+ } catch (bindError) {
39
+ ownsConnectionRef.current && removeConnection(connectionName), ownsConnectionRef.current = !1,
40
+ setBound(!1);
41
+ const nextError = bindError instanceof Error ? bindError : new Error("Failed to bind WebRTC connection");
42
+ return setError(nextError), null;
43
+ }
44
+ }), [ addConnection, audioElement, autoPlayAudio, bearerToken, connectionName, connectionUrl, dataChannels, initializeConnection, onDataChannelEvent, onRemoteAudioStream, onRemoteVideoStream, offerOptions, processedMicStream, removeConnection, videoTrack, volume ]);
45
+ return React.useEffect(() => {
46
+ bound && ownsConnectionRef.current && setMicStream(connectionName, processedMicStream.current).catch(streamError => {
47
+ setError(streamError instanceof Error ? streamError : new Error("Failed to update WebRTC microphone stream"));
48
+ });
49
+ }, [ bound, connectionName, processedMicStream, setMicStream ]), React.useEffect(() => {
50
+ bound && ownsConnectionRef.current && setVolume(connectionName, volume);
51
+ }, [ bound, connectionName, setVolume, volume ]), React.useEffect(() => () => {
52
+ ownsConnectionRef.current && (removeConnection(connectionName), ownsConnectionRef.current = !1);
53
+ }, [ connectionName, removeConnection ]), {
54
+ connection: null !== (_a = null == connectionEntry ? void 0 : connectionEntry.connection) && void 0 !== _a ? _a : null,
55
+ error: error,
56
+ bind: bind,
57
+ unbind: unbind,
58
+ bound: bound
59
+ };
60
+ };
@@ -19,13 +19,13 @@ function readLocalStorageValue(key, fallback) {
19
19
  }
20
20
 
21
21
  exports.useLocalStore = function(key, value) {
22
- const [item, setItem] = React.useState(() => readLocalStorageValue(key, value));
22
+ const [item, setItem] = React.useState(() => readLocalStorageValue(key, value)), [hydrated, setHydrated] = React.useState(!1);
23
23
  return React.useEffect(() => {
24
- setItem(readLocalStorageValue(key, value));
24
+ setItem(readLocalStorageValue(key, value)), setHydrated(!0);
25
25
  }, [ key, value ]), [ item, function(data) {
26
26
  if (canUseLocalStorage()) try {
27
27
  globalThis.localStorage.setItem(key, JSON.stringify(data));
28
28
  } catch (_a) {}
29
29
  setItem(data);
30
- } ];
30
+ }, hydrated ];
31
31
  };
@@ -1,42 +1,67 @@
1
1
  'use client';
2
2
  "use strict";
3
3
 
4
- var React = require("react");
5
-
6
- require("../chunks/tslib.es6-CzpRaW14.js");
7
-
8
- var MdStreamBuffer = require("../chunks/MdStreamBuffer-CbG_VeRI.js");
4
+ var tslib_es6 = require("../chunks/tslib.es6-DqjaJVC3.js"), React = require("react"), MdStreamBuffer = require("../chunks/MdStreamBuffer-Chwibu07.js");
9
5
 
10
6
  exports.useMDStreamBuffer = function(options) {
11
- const bufferRef = React.useRef(null), [healthy, setHealthy] = React.useState(""), [raw, setRaw] = React.useState(""), [isComplete, setIsComplete] = React.useState(!1);
12
- return React.useEffect(() => (bufferRef.current = new MdStreamBuffer.MdBuffer(Object.assign(Object.assign({}, options), {
13
- onFlush: snapshot => {
14
- const {healthy: healthy, raw: raw, isComplete: isComplete} = snapshot;
15
- setHealthy(healthy), setRaw(raw), setIsComplete(isComplete);
7
+ var _a, _b;
8
+ const bufferRef = React.useRef(null), queuedValueRef = React.useRef(""), paceTimerRef = React.useRef(null), [healthy, setHealthy] = React.useState(""), [raw, setRaw] = React.useState(""), [isComplete, setIsComplete] = React.useState(!1), [pendingCharacters, setPendingCharacters] = React.useState(0), paceDelayMs = Math.max(0, null !== (_a = null == options ? void 0 : options.paceDelayMs) && void 0 !== _a ? _a : 0), paceChunkSize = Math.max(1, null !== (_b = null == options ? void 0 : options.paceChunkSize) && void 0 !== _b ? _b : Number.POSITIVE_INFINITY), usesPacing = void 0 !== (null == options ? void 0 : options.paceDelayMs) || void 0 !== (null == options ? void 0 : options.paceChunkSize), getTotalPendingCharacters = React.useCallback(() => {
9
+ var _a, _b;
10
+ return queuedValueRef.current.length + (null !== (_b = null === (_a = bufferRef.current) || void 0 === _a ? void 0 : _a.pendingCharacters) && void 0 !== _b ? _b : 0);
11
+ }, []), clearPaceTimer = React.useCallback(() => {
12
+ null !== paceTimerRef.current && (clearTimeout(paceTimerRef.current), paceTimerRef.current = null);
13
+ }, []), releaseQueuedChunk = React.useCallback(() => {
14
+ if (!bufferRef.current || 0 === queuedValueRef.current.length) return clearPaceTimer(),
15
+ void setPendingCharacters(getTotalPendingCharacters());
16
+ const nextChunk = Number.isFinite(paceChunkSize) ? queuedValueRef.current.slice(0, paceChunkSize) : queuedValueRef.current;
17
+ queuedValueRef.current = queuedValueRef.current.slice(nextChunk.length), bufferRef.current.append(nextChunk),
18
+ setPendingCharacters(getTotalPendingCharacters()), 0 !== queuedValueRef.current.length ? paceTimerRef.current = setTimeout(releaseQueuedChunk, paceDelayMs) : clearPaceTimer();
19
+ }, [ clearPaceTimer, getTotalPendingCharacters, paceChunkSize, paceDelayMs ]), ensurePaceTimer = React.useCallback(() => {
20
+ usesPacing && null === paceTimerRef.current && (paceTimerRef.current = setTimeout(releaseQueuedChunk, paceDelayMs));
21
+ }, [ paceDelayMs, releaseQueuedChunk, usesPacing ]), drainQueuedValue = React.useCallback(() => {
22
+ bufferRef.current && 0 !== queuedValueRef.current.length && (clearPaceTimer(), bufferRef.current.append(queuedValueRef.current),
23
+ queuedValueRef.current = "", setPendingCharacters(getTotalPendingCharacters()));
24
+ }, [ clearPaceTimer, getTotalPendingCharacters ]);
25
+ React.useEffect(() => {
26
+ const _a = null != options ? options : {}, {paceDelayMs: _paceDelayMs, paceChunkSize: _paceChunkSize} = _a, bufferOptions = tslib_es6.__rest(_a, [ "paceDelayMs", "paceChunkSize" ]);
27
+ return bufferRef.current = new MdStreamBuffer.MdBuffer(Object.assign(Object.assign({}, bufferOptions), {
28
+ onFlush: snapshot => {
29
+ const {healthy: healthy, raw: raw, isComplete: isComplete} = snapshot;
30
+ setHealthy(healthy), setRaw(raw), setIsComplete(isComplete), setPendingCharacters(queuedValueRef.current.length + snapshot.pendingCharacters);
31
+ }
32
+ })), () => {
33
+ var _a;
34
+ clearPaceTimer(), queuedValueRef.current = "", null === (_a = bufferRef.current) || void 0 === _a || _a.dispose(),
35
+ bufferRef.current = null;
36
+ };
37
+ }, []);
38
+ const append = React.useCallback(value => {
39
+ var _a;
40
+ if (value) {
41
+ if (!usesPacing) return null === (_a = bufferRef.current) || void 0 === _a || _a.append(value),
42
+ void setPendingCharacters(getTotalPendingCharacters());
43
+ queuedValueRef.current += value, setPendingCharacters(getTotalPendingCharacters()),
44
+ ensurePaceTimer();
16
45
  }
17
- })), () => {
46
+ }, [ ensurePaceTimer, getTotalPendingCharacters, usesPacing ]), flush = React.useCallback(() => {
47
+ var _a;
48
+ return drainQueuedValue(), null === (_a = bufferRef.current) || void 0 === _a ? void 0 : _a.flush();
49
+ }, [ drainQueuedValue ]), complete = React.useCallback(() => {
18
50
  var _a;
19
- null === (_a = bufferRef.current) || void 0 === _a || _a.dispose(), bufferRef.current = null;
20
- }), []), {
51
+ return drainQueuedValue(), null === (_a = bufferRef.current) || void 0 === _a ? void 0 : _a.complete();
52
+ }, [ drainQueuedValue ]), reset = React.useCallback(() => {
53
+ var _a;
54
+ clearPaceTimer(), queuedValueRef.current = "", null === (_a = bufferRef.current) || void 0 === _a || _a.reset(),
55
+ setHealthy(""), setRaw(""), setIsComplete(!1), setPendingCharacters(0);
56
+ }, [ clearPaceTimer ]);
57
+ return {
21
58
  raw: raw,
22
59
  healthy: healthy,
23
60
  isComplete: isComplete,
24
- append: React.useCallback(value => {
25
- var _a;
26
- value && (null === (_a = bufferRef.current) || void 0 === _a || _a.append(value));
27
- }, []),
28
- flush: React.useCallback(() => {
29
- var _a;
30
- return null === (_a = bufferRef.current) || void 0 === _a ? void 0 : _a.flush();
31
- }, []),
32
- complete: React.useCallback(() => {
33
- var _a;
34
- return null === (_a = bufferRef.current) || void 0 === _a ? void 0 : _a.complete();
35
- }, []),
36
- reset: React.useCallback(() => {
37
- var _a;
38
- null === (_a = bufferRef.current) || void 0 === _a || _a.reset(), setHealthy(""),
39
- setRaw("");
40
- }, [])
61
+ pendingCharacters: pendingCharacters,
62
+ append: append,
63
+ flush: flush,
64
+ complete: complete,
65
+ reset: reset
41
66
  };
42
67
  };
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  "use strict";
3
3
 
4
- var tslib_es6 = require("../chunks/tslib.es6-CzpRaW14.js"), React = require("react");
4
+ var tslib_es6 = require("../chunks/tslib.es6-DqjaJVC3.js"), React = require("react");
5
5
 
6
6
  exports.useMicrophone = function(startMuted = !0, microphoneDeviceId, autoRequest = !0) {
7
7
  const micStream = React.useRef(null), processedMicStream = React.useRef(null), micTrack = React.useRef(null), audioContextRef = React.useRef(null), sourceNodeRef = React.useRef(null), gainNodeRef = React.useRef(null), destinationNodeRef = React.useRef(null), inputVolumeRef = React.useRef(1), mutedRef = React.useRef(startMuted), mountedRef = React.useRef(!0), initializedRef = React.useRef(!1), [microphones, setMicrophones] = React.useState([]), [micOptions, setMicOptions] = React.useState([]), [currentDeviceId, setCurrentDeviceId] = React.useState(null), [isActive, setIsActive] = React.useState(!1), [inputVolume, setInputVolumeState] = React.useState(1), [muted, setMuted] = React.useState(startMuted), [isRequesting, setIsRequesting] = React.useState(!1), [error, setError] = React.useState(null), normalizeInputVolume = React.useCallback(volume => Number.isFinite(volume) ? Math.min(1, Math.max(0, volume)) : 1, []), resetAudioProcessing = React.useCallback(() => {
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
  "use strict";
3
3
 
4
- var React = require("react"), misc = require("../chunks/misc-DZAbObFp.js");
4
+ var React = require("react"), misc = require("../chunks/misc-BwQIEIuF.js");
5
5
 
6
- require("../chunks/tslib.es6-CzpRaW14.js"), exports.useTrackRenders =
6
+ require("../chunks/tslib.es6-DqjaJVC3.js"), exports.useTrackRenders =
7
7
  /**
8
8
  * Hook to log component renders, mounts, and unmounts
9
9
  * Note: wrap in comments with START.DEBUG ... {hook} ... END.DEBUG to remove from build
package/dist/cjs/hooks.js CHANGED
@@ -1,17 +1,20 @@
1
1
  "use strict";
2
2
 
3
- var hooks_useTheme = require("./hooks/useTheme.js"), hooks_useObserveTheme = require("./hooks/useObserveTheme.js"), hooks_useDoubleClick = require("./hooks/useDoubleClick.js"), hooks_useToolTip = require("./hooks/useToolTip.js"), hooks_useKeyboardShortcuts = require("./hooks/useKeyboardShortcuts.js"), hooks_useLastUpdated = require("./hooks/useLastUpdated.js"), hooks_useLocalStore = require("./hooks/useLocalStore.js"), hooks_useMdStreamBuffer = require("./hooks/useMdStreamBuffer.js"), hooks_useMicrophone = require("./hooks/useMicrophone.js"), hooks_useAudioRecorder = require("./hooks/useAudioRecorder.js"), hooks_useWindow = require("./hooks/useWindow.js"), hooks_useObserveResize = require("./hooks/useObserveResize.js");
3
+ var hooks_useTheme = require("./hooks/useTheme.js"), hooks_useObserveTheme = require("./hooks/useObserveTheme.js"), hooks_useDoubleClick = require("./hooks/useDoubleClick.js"), hooks_useToolTip = require("./hooks/useToolTip.js"), hooks_useKeyboardShortcuts = require("./hooks/useKeyboardShortcuts.js"), hooks_useLastUpdated = require("./hooks/useLastUpdated.js"), hooks_useLocalStore = require("./hooks/useLocalStore.js"), hooks_useMdStreamBuffer = require("./hooks/useMdStreamBuffer.js"), hooks_useBindWebRTC = require("./hooks/useBindWebRTC.js"), hooks_useMicrophone = require("./hooks/useMicrophone.js"), hooks_useAudioRecorder = require("./hooks/useAudioRecorder.js"), hooks_useWindow = require("./hooks/useWindow.js"), hooks_useObserveResize = require("./hooks/useObserveResize.js");
4
4
 
5
5
  require("react"), require("./providers/ThemeProvider.js"), require("react/jsx-runtime"),
6
6
  require("./theme/themes.js"), require("./theme/colors.js"), require("./theme/corners.js"),
7
7
  require("./theme/elevations.js"), require("./theme/motion.js"), require("./theme/type.js"),
8
- require("./chunks/tslib.es6-CzpRaW14.js"), require("./chunks/MdStreamBuffer-CbG_VeRI.js"),
8
+ require("./chunks/tslib.es6-DqjaJVC3.js"), require("./chunks/MdStreamBuffer-Chwibu07.js"),
9
+ require("./chunks/webRTCStore-DRjvbnve.js"), require("zustand"), require("./chunks/WebRTCConnection-DBeyg4j9.js"),
10
+ require("./chunks/microphoneStore-Dy5TwE2I.js"), require("./chunks/volumeStore-BXFAQhvS.js"),
9
11
  exports.useTheme = hooks_useTheme.useTheme, exports.useObserveTheme = hooks_useObserveTheme.useObserveTheme,
10
12
  exports.useDoubleClick = hooks_useDoubleClick.useDoubleClick, exports.useToolTip = hooks_useToolTip.useToolTip,
11
13
  exports.useKeyboardShortcuts = hooks_useKeyboardShortcuts.useKeyboardShortcuts,
12
14
  exports.useLastUpdated = hooks_useLastUpdated.useLastUpdated, exports.useLocalStore = hooks_useLocalStore.useLocalStore,
13
- exports.useMDStreamBuffer = hooks_useMdStreamBuffer.useMDStreamBuffer, exports.useMicrophone = hooks_useMicrophone.useMicrophone,
14
- exports.useAudioRecorder = hooks_useAudioRecorder.useAudioRecorder, Object.defineProperty(exports, "FormFactor", {
15
+ exports.useMDStreamBuffer = hooks_useMdStreamBuffer.useMDStreamBuffer, exports.useBindWebRTC = hooks_useBindWebRTC.useBindWebRTC,
16
+ exports.useMicrophone = hooks_useMicrophone.useMicrophone, exports.useAudioRecorder = hooks_useAudioRecorder.useAudioRecorder,
17
+ Object.defineProperty(exports, "FormFactor", {
15
18
  enumerable: !0,
16
19
  get: function() {
17
20
  return hooks_useWindow.FormFactor;
package/dist/cjs/index.js CHANGED
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
 
3
- var sharedTypes = require("./chunks/sharedTypes-CthHPjrO.js"), theme_themes = require("./theme/themes.js"), theme_colors = require("./theme/colors.js"), theme_elevations = require("./theme/elevations.js"), theme_motion = require("./theme/motion.js"), hooks_useTheme = require("./hooks/useTheme.js"), hooks_useObserveTheme = require("./hooks/useObserveTheme.js"), hooks_useDoubleClick = require("./hooks/useDoubleClick.js"), hooks_useToolTip = require("./hooks/useToolTip.js"), hooks_useKeyboardShortcuts = require("./hooks/useKeyboardShortcuts.js"), hooks_useLastUpdated = require("./hooks/useLastUpdated.js"), hooks_useLocalStore = require("./hooks/useLocalStore.js"), hooks_useMdStreamBuffer = require("./hooks/useMdStreamBuffer.js"), hooks_useMicrophone = require("./hooks/useMicrophone.js"), hooks_useAudioRecorder = require("./hooks/useAudioRecorder.js"), hooks_useWindow = require("./hooks/useWindow.js"), hooks_useObserveResize = require("./hooks/useObserveResize.js"), AudioBubble = require("./chunks/AudioBubble-k7qS53g6.js"), Avatar = require("./chunks/Avatar-hP8GuwvD.js"), AvatarGroup = require("./chunks/AvatarGroup-DMy34q7_.js"), Badge = require("./chunks/Badge-D2TbyfJS.js"), IconButton = require("./chunks/IconButton-CgsuJIuF.js"), Camera = require("./chunks/Camera-CKv087kr.js"), CheckBox = require("./chunks/CheckBox-VRIL1FHh.js"), DivInput = require("./chunks/DivInput-Ci0gaCWL.js"), Dot = require("./chunks/Dot-C0MvSJOl.js"), DrggablePanel = require("./chunks/DrggablePanel-DflouLUs.js"), DropDown = require("./chunks/DropDown-BS1H62yj.js"), ErrorSummary = require("./chunks/ErrorSummary-B3tof7ir.js"), Grouper = require("./chunks/Grouper-DyGkzdvz.js"), Overlay = require("./chunks/Overlay-FooE9M_s.js"), Modal = require("./chunks/Modal-ByRyv3wy.js"), ModalController = require("./chunks/ModalController-xjflFsjF.js"), FlexDiv = require("./chunks/FlexDiv-wO8IY0Zf.js"), Pager = require("./chunks/Pager-B-cuwffo.js"), PromptInput = require("./chunks/PromptInput--grtHPvy.js"), ProgressIndicator = require("./chunks/ProgressIndicator-ByZ_aYAZ.js"), RadioButton = require("./chunks/RadioButton-DP2X1dA_.js"), RadioButtonList = require("./chunks/RadioButtonList-COGNW5y3.js"), Slider = require("./chunks/Slider-G1a8UKef.js"), Spacer = require("./chunks/Spacer-CsRCleXv.js"), Switch = require("./chunks/Switch-OBVHKn_D.js"), ToggleButton = require("./chunks/ToggleButton-C_Gu5dYR.js"), TabBar = require("./chunks/TabBar-C1HkBaxE.js"), TextArea = require("./chunks/TextArea-BEmNI_HZ.js"), TextField = require("./chunks/TextField-D9_COA9H.js"), providers_ThemeProvider = require("./providers/ThemeProvider.js"), Tip = require("./chunks/Tip-2W0u_oQN.js"), Toast = require("./chunks/Toast-B9jX6ioq.js"), Button = require("./chunks/Button-CTsHZBEB.js"), Chip = require("./chunks/Chip-Dr3vKvRY.js"), FileIcon = require("./chunks/FileIcon-Te8MaqTs.js"), Icon = require("./chunks/Icon-BFZ_5Qv3.js"), _types = require("./chunks/_types-k-3V1fz_.js"), ButtonBar = require("./chunks/ButtonBar-BRb1PTmw.js"), Label = require("./chunks/Label-BuyhcJbF.js"), UploadArea = require("./chunks/UploadArea-ENFAf4tE.js");
3
+ var sharedTypes = require("./chunks/sharedTypes-BOieqpQy.js"), theme_themes = require("./theme/themes.js"), theme_colors = require("./theme/colors.js"), theme_elevations = require("./theme/elevations.js"), theme_motion = require("./theme/motion.js"), hooks_useTheme = require("./hooks/useTheme.js"), hooks_useObserveTheme = require("./hooks/useObserveTheme.js"), hooks_useDoubleClick = require("./hooks/useDoubleClick.js"), hooks_useToolTip = require("./hooks/useToolTip.js"), hooks_useKeyboardShortcuts = require("./hooks/useKeyboardShortcuts.js"), hooks_useLastUpdated = require("./hooks/useLastUpdated.js"), hooks_useLocalStore = require("./hooks/useLocalStore.js"), hooks_useMdStreamBuffer = require("./hooks/useMdStreamBuffer.js"), hooks_useBindWebRTC = require("./hooks/useBindWebRTC.js"), hooks_useMicrophone = require("./hooks/useMicrophone.js"), hooks_useAudioRecorder = require("./hooks/useAudioRecorder.js"), hooks_useWindow = require("./hooks/useWindow.js"), hooks_useObserveResize = require("./hooks/useObserveResize.js"), AudioBubble = require("./chunks/AudioBubble-_eYM1QMu.js"), Avatar = require("./chunks/Avatar-DTro_MXZ.js"), AvatarGroup = require("./chunks/AvatarGroup-OPJJ_Te5.js"), Badge = require("./chunks/Badge-DWUeXxm2.js"), IconButton = require("./chunks/IconButton-BuwQLUuj.js"), Camera = require("./chunks/Camera-DjENiyud.js"), CheckBox = require("./chunks/CheckBox-DiJpbdy5.js"), DivInput = require("./chunks/DivInput-B917fKB9.js"), Dot = require("./chunks/Dot-DaRF2JyO.js"), DrggablePanel = require("./chunks/DrggablePanel-CJTEmYW6.js"), DropDown = require("./chunks/DropDown-DRSQvXCC.js"), ErrorSummary = require("./chunks/ErrorSummary-ltiIsgJ6.js"), Grouper = require("./chunks/Grouper-Cd3AJEFv.js"), Overlay = require("./chunks/Overlay-CaAA3ey5.js"), Modal = require("./chunks/Modal-CUAj4e6x.js"), ModalController = require("./chunks/ModalController-BwFAVI5G.js"), FlexDiv = require("./chunks/FlexDiv-CBENyLT4.js"), Pager = require("./chunks/Pager-uExZ5E3x.js"), PromptInput = require("./chunks/PromptInput-Dl8l8cZv.js"), ProgressIndicator = require("./chunks/ProgressIndicator-DwqslY4o.js"), RadioButton = require("./chunks/RadioButton-DPpAOFQt.js"), RadioButtonList = require("./chunks/RadioButtonList-IbPA6A3y.js"), Slider = require("./chunks/Slider-D5oa7NGy.js"), Spacer = require("./chunks/Spacer-DtUh2VLv.js"), Switch = require("./chunks/Switch-Bs0r5va5.js"), ToggleButton = require("./chunks/ToggleButton-CqD5c6JA.js"), TabBar = require("./chunks/TabBar-BCSTg_Uc.js"), TextArea = require("./chunks/TextArea-Dj7jsvVr.js"), TextField = require("./chunks/TextField-DNP0wJla.js"), providers_ThemeProvider = require("./providers/ThemeProvider.js"), Tip = require("./chunks/Tip-awq6PDZa.js"), Toast = require("./chunks/Toast-xS1TC3Ba.js"), Button = require("./chunks/Button-CuGvPAkH.js"), Chip = require("./chunks/Chip-kzOvEo0P.js"), FileIcon = require("./chunks/FileIcon-WIVOTJLa.js"), Icon = require("./chunks/Icon-DjvProjz.js"), _types = require("./chunks/_types-BTdDWVYI.js"), ButtonBar = require("./chunks/ButtonBar-CbXToyfD.js"), Label = require("./chunks/Label-d32ENzwL.js"), Level = require("./chunks/Level-B8eT8XyV.js"), UploadArea = require("./chunks/UploadArea-CvWqk8YK.js");
4
4
 
5
- require("./theme/corners.js"), require("./theme/type.js"), require("react"), require("./chunks/tslib.es6-CzpRaW14.js"),
6
- require("./chunks/MdStreamBuffer-CbG_VeRI.js"), require("react/jsx-runtime"), require("./chunks/colors-B0_3srZN.js"),
7
- require("./chunks/audioVisualizer-MOSbvvnZ.js"), require("./chunks/misc-DZAbObFp.js"),
8
- require("motion/react"), require("./chunks/modalStore-D4bOjuWd.js"), require("zustand"),
9
- require("./chunks/FileList-CDcfKIV6.js"), require("./chunks/debounce-CaoYvh12.js"),
10
- Object.defineProperty(exports, "ToolTipType", {
5
+ require("./theme/corners.js"), require("./theme/type.js"), require("react"), require("./chunks/tslib.es6-DqjaJVC3.js"),
6
+ require("./chunks/MdStreamBuffer-Chwibu07.js"), require("./chunks/webRTCStore-DRjvbnve.js"),
7
+ require("zustand"), require("./chunks/WebRTCConnection-DBeyg4j9.js"), require("./chunks/microphoneStore-Dy5TwE2I.js"),
8
+ require("./chunks/volumeStore-BXFAQhvS.js"), require("react/jsx-runtime"), require("./chunks/colors-CmOkcjB3.js"),
9
+ require("./chunks/audioVisualizer-C7fMG0WH.js"), require("./chunks/misc-BwQIEIuF.js"),
10
+ require("motion/react"), require("./chunks/modalStore-CaQkdY5_.js"), require("./chunks/FileList-CzQZZErI.js"),
11
+ require("./chunks/debounce-BtCCTkbG.js"), Object.defineProperty(exports, "ToolTipType", {
11
12
  enumerable: !0,
12
13
  get: function() {
13
14
  return sharedTypes.ToolTipType;
@@ -19,16 +20,16 @@ exports.useTheme = hooks_useTheme.useTheme, exports.useObserveTheme = hooks_useO
19
20
  exports.useDoubleClick = hooks_useDoubleClick.useDoubleClick, exports.useToolTip = hooks_useToolTip.useToolTip,
20
21
  exports.useKeyboardShortcuts = hooks_useKeyboardShortcuts.useKeyboardShortcuts,
21
22
  exports.useLastUpdated = hooks_useLastUpdated.useLastUpdated, exports.useLocalStore = hooks_useLocalStore.useLocalStore,
22
- exports.useMDStreamBuffer = hooks_useMdStreamBuffer.useMDStreamBuffer, exports.useMicrophone = hooks_useMicrophone.useMicrophone,
23
- exports.useAudioRecorder = hooks_useAudioRecorder.useAudioRecorder, exports.useWindow = hooks_useWindow.useWindow,
24
- exports.useObserveResize = hooks_useObserveResize.useObserveResize, exports.AudioBubble = AudioBubble.AudioBubble,
25
- exports.Avatar = Avatar.Avatar, exports.AvatarGroup = AvatarGroup.AvatarGroup, exports.Badge = Badge.Badge,
26
- exports.IconButton = IconButton.IconButton, exports.Camera = Camera.Camera, exports.CheckBox = CheckBox.CheckBox,
27
- exports.DivInput = DivInput.DivInput, exports.Dot = Dot.Dot, exports.DraggablePanel = DrggablePanel.DraggablePanel,
28
- exports.DropDown = DropDown.DropDown, exports.ErrorSummary = ErrorSummary.ErrorSummary,
29
- exports.Grouper = Grouper.Grouper, exports.Overlay = Overlay.Overlay, exports.Modal = Modal.Modal,
30
- exports.ModalController = ModalController.ModalController, exports.FlexDiv = FlexDiv.FlexDiv,
31
- Object.defineProperty(exports, "Preset", {
23
+ exports.useMDStreamBuffer = hooks_useMdStreamBuffer.useMDStreamBuffer, exports.useBindWebRTC = hooks_useBindWebRTC.useBindWebRTC,
24
+ exports.useMicrophone = hooks_useMicrophone.useMicrophone, exports.useAudioRecorder = hooks_useAudioRecorder.useAudioRecorder,
25
+ exports.useWindow = hooks_useWindow.useWindow, exports.useObserveResize = hooks_useObserveResize.useObserveResize,
26
+ exports.AudioBubble = AudioBubble.AudioBubble, exports.Avatar = Avatar.Avatar, exports.AvatarGroup = AvatarGroup.AvatarGroup,
27
+ exports.Badge = Badge.Badge, exports.IconButton = IconButton.IconButton, exports.Camera = Camera.Camera,
28
+ exports.CheckBox = CheckBox.CheckBox, exports.DivInput = DivInput.DivInput, exports.Dot = Dot.Dot,
29
+ exports.DraggablePanel = DrggablePanel.DraggablePanel, exports.DropDown = DropDown.DropDown,
30
+ exports.ErrorSummary = ErrorSummary.ErrorSummary, exports.Grouper = Grouper.Grouper,
31
+ exports.Overlay = Overlay.Overlay, exports.Modal = Modal.Modal, exports.ModalController = ModalController.ModalController,
32
+ exports.FlexDiv = FlexDiv.FlexDiv, Object.defineProperty(exports, "Preset", {
32
33
  enumerable: !0,
33
34
  get: function() {
34
35
  return FlexDiv.Preset;
@@ -61,7 +62,7 @@ exports.Label = Label.Label, Object.defineProperty(exports, "LabelBackground", {
61
62
  get: function() {
62
63
  return Label.LabelBackground;
63
64
  }
64
- }), exports.UploadArea = UploadArea.UploadArea, exports.allTypes = UploadArea.allTypes,
65
+ }), exports.Level = Level.Level, exports.UploadArea = UploadArea.UploadArea, exports.allTypes = UploadArea.allTypes,
65
66
  exports.audioTypes = UploadArea.audioTypes, exports.documentTypes = UploadArea.documentTypes,
66
67
  exports.imageTypes = UploadArea.imageTypes, exports.textTypes = UploadArea.textTypes,
67
68
  exports.videoTypes = UploadArea.videoTypes;
@@ -7,7 +7,7 @@ require("../theme/colors.js"), require("../theme/corners.js"), require("../theme
7
7
  require("../theme/motion.js"), require("../theme/type.js");
8
8
 
9
9
  const ThemeContext = React.createContext({
10
- initialTheme: theme_themes.lightTheme.name,
10
+ initialTheme: theme_themes.darkTheme.name,
11
11
  systemTheme: !0,
12
12
  setSystemTheme: () => {}
13
13
  });
@@ -23,12 +23,13 @@ function setDocumentTheme(name, system) {
23
23
  }
24
24
 
25
25
  exports.ThemeProvider = function(props) {
26
- const {children: children, theme: theme, system: system, global: global, initialTheme: initialTheme} = props, [systemTheme, setSystemTheme] = React.useState(null == system || system);
26
+ var _a;
27
+ const {children: children, theme: theme, system: system, global: global, initialTheme: initialTheme, initialSystem: initialSystem} = props, [systemTheme, setSystemTheme] = React.useState(null === (_a = null != system ? system : initialSystem) || void 0 === _a || _a);
27
28
  React.useEffect(() => {
28
- setSystemTheme(null == system || system);
29
+ void 0 !== system && setSystemTheme(system);
29
30
  }, [ system ]);
30
31
  const contextValue = React.useMemo(() => ({
31
- initialTheme: null != initialTheme ? initialTheme : theme_themes.lightTheme.name,
32
+ initialTheme: null != initialTheme ? initialTheme : theme_themes.darkTheme.name,
32
33
  systemTheme: systemTheme,
33
34
  setSystemTheme: setSystemTheme
34
35
  }), [ initialTheme, systemTheme ]);
@@ -1,13 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  function normalizeThemeName(theme) {
4
- if (theme) return theme.includes("dark") ? "darkMode" : "lightMode";
4
+ if (theme) return theme.includes("lightMode") ? "lightMode" : "darkMode";
5
5
  }
6
6
 
7
- /**
8
- * Resolve the startup Slice theme from an explicit theme value, cookie value,
9
- * or fallback theme in that order.
10
- */ exports.getThemeHtmlAttributes =
7
+ exports.getThemeHtmlAttributes =
11
8
  /**
12
9
  * Return the root HTML attributes needed to render the active Slice theme
13
10
  * before client hydration.
@@ -15,10 +12,19 @@ function normalizeThemeName(theme) {
15
12
  function(theme) {
16
13
  var _a;
17
14
  return {
18
- "data-slice-theme": null !== (_a = normalizeThemeName(theme)) && void 0 !== _a ? _a : "lightMode"
15
+ "data-slice-theme": null !== (_a = normalizeThemeName(theme)) && void 0 !== _a ? _a : "darkMode"
19
16
  };
20
- }, exports.resolveInitialTheme = function(options = {}) {
17
+ }, exports.resolveInitialTheme =
18
+ /**
19
+ * Resolve the startup Slice theme from an explicit theme value, cookie value,
20
+ * or fallback theme in that order. Resolves a system to true if undefined.
21
+ */
22
+ function(options = {}) {
21
23
  var _a, _b;
22
- const {theme: theme, cookieTheme: cookieTheme, fallbackTheme: fallbackTheme = "lightMode"} = options;
23
- return null !== (_b = null !== (_a = normalizeThemeName(theme)) && void 0 !== _a ? _a : normalizeThemeName(cookieTheme)) && void 0 !== _b ? _b : fallbackTheme;
24
+ const {theme: theme, activeTheme: activeTheme, systemTheme: systemTheme, fallbackTheme: fallbackTheme = "darkMode"} = options;
25
+ return {
26
+ initialTheme: null !== (_b = null !== (_a = normalizeThemeName(theme)) && void 0 !== _a ? _a : normalizeThemeName(activeTheme)) && void 0 !== _b ? _b : fallbackTheme,
27
+ initialSystem: (system = systemTheme, void 0 === system || system)
28
+ };
29
+ var system;
24
30
  };
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var localDBStore = require("../chunks/localDBStore-Ca73jeFf.js");
3
+ var localDBStore = require("../chunks/localDBStore-wgCc1SmV.js");
4
4
 
5
- require("../chunks/tslib.es6-CzpRaW14.js"), require("react"), require("zustand"),
6
- require("zustand/react/shallow"), require("../chunks/IndexedDB-Dgwal8na.js"), exports.localDBActions = localDBStore.localDBActions,
5
+ require("../chunks/tslib.es6-DqjaJVC3.js"), require("react"), require("zustand"),
6
+ require("zustand/react/shallow"), require("../chunks/IndexedDB-Ddhq6Gjd.js"), exports.localDBActions = localDBStore.localDBActions,
7
7
  exports.useLocalDB = localDBStore.useLocalDB, exports.useLocalDBError = localDBStore.useLocalDBError,
8
8
  exports.useLocalDBStore = localDBStore.useLocalDBStore, exports.useLocalDBValues = localDBStore.useLocalDBValues,
9
9
  exports.useManageLocalDB = localDBStore.useManageLocalDB;
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
- var sseStore = require("../chunks/sseStore-Bq7sVvyA.js");
3
+ var sseStore = require("../chunks/sseStore-CFFaYonG.js");
4
4
 
5
- require("zustand"), require("../chunks/tslib.es6-CzpRaW14.js"), require("../chunks/SSEConnection-ACoOeeTO.js"),
5
+ require("zustand"), require("../chunks/tslib.es6-DqjaJVC3.js"), require("../chunks/SSEConnection-CF5WZG9b.js"),
6
6
  exports.useConnectionClose = sseStore.useConnectionClose, exports.useConnectionMessage = sseStore.useConnectionMessage,
7
7
  exports.useIsConnected = sseStore.useIsConnected, exports.useLastSSEMessage = sseStore.useLastSSEMessage,
8
8
  exports.useMessage = sseStore.useMessage, exports.useSSE = sseStore.useSSE, exports.useSSEActions = sseStore.useSSEActions,
@@ -2,9 +2,9 @@
2
2
 
3
3
  var zustand = require("zustand");
4
4
 
5
- require("../chunks/tslib.es6-CzpRaW14.js");
5
+ require("../chunks/tslib.es6-DqjaJVC3.js");
6
6
 
7
- var WSConnection = require("../chunks/WSConnection-CZ22tcLz.js");
7
+ var WSConnection = require("../chunks/WSConnection-BACWw4TS.js");
8
8
 
9
9
  const useWSStore = zustand.create((set, get) => ({
10
10
  connections: [],