@apple-pie/slice 0.1.60 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. package/README.md +17 -1
  2. package/dist/cjs/chunks/ActionButton-DhHiZwXV.js +200 -0
  3. package/dist/cjs/chunks/Attachment-DhyXAQUf.js +351 -0
  4. package/dist/cjs/chunks/AudioBubble-DS5Oea-b.js +46 -0
  5. package/dist/cjs/chunks/AudioLevel-uQJ-v5Qz.js +54 -0
  6. package/dist/cjs/chunks/Avatar-a2GHmu1o.js +125 -0
  7. package/dist/cjs/chunks/AvatarGroup-CWpoauJP.js +70 -0
  8. package/dist/cjs/chunks/Badge-DtVP2qH0.js +26 -0
  9. package/dist/cjs/chunks/Button-Cr5SlNim.js +293 -0
  10. package/dist/cjs/chunks/ButtonBar-DDupZZ_u.js +96 -0
  11. package/dist/cjs/chunks/Camera-bjjzmzar.js +560 -0
  12. package/dist/cjs/chunks/CheckBox-DBaKpMhg.js +66 -0
  13. package/dist/cjs/chunks/Chip-DsZHDLKG.js +203 -0
  14. package/dist/cjs/chunks/ContentEditable-BaxU62Mg.js +144 -0
  15. package/dist/cjs/chunks/DialogBox-C-ZvHDH6.js +204 -0
  16. package/dist/cjs/chunks/Dot-0Dv8WX0n.js +92 -0
  17. package/dist/cjs/chunks/DrggablePanel-zi27w3wY.js +251 -0
  18. package/dist/cjs/chunks/DropDown-BcTjhAtE.js +269 -0
  19. package/dist/cjs/chunks/ErrorSummary-DDz7nQWX.js +166 -0
  20. package/dist/cjs/chunks/{FileIcon-DctPd_KB.js → FileIcon-BM8n3o-c.js} +68 -40
  21. package/dist/cjs/chunks/FileList-T2_mhI_t.js +204 -0
  22. package/dist/cjs/chunks/FlexBox-DTCyWJeT.js +278 -0
  23. package/dist/cjs/chunks/FlexDiv-5YN9Hgxy.js +7 -0
  24. package/dist/cjs/chunks/Icon-COY7IZkK.js +7821 -0
  25. package/dist/cjs/chunks/IconButton-KJr15EW6.js +10 -0
  26. package/dist/cjs/chunks/{IndexedDB-Dn5mB5-k.js → IndexedDB-DwKh2Gfp.js} +1 -1
  27. package/dist/cjs/chunks/ModalController-D0S9VnNH.js +143 -0
  28. package/dist/cjs/chunks/ModalHostContext-DLgUa9Vl.js +5 -0
  29. package/dist/cjs/chunks/Overlay-CVZLmK8H.js +77 -0
  30. package/dist/cjs/chunks/Pager-QEUi0r59.js +146 -0
  31. package/dist/cjs/chunks/PopMenu-DkxhTcwD.js +423 -0
  32. package/dist/cjs/chunks/PopMenuController-CmS28S4h.js +32 -0
  33. package/dist/cjs/chunks/ProgressIndicator-Ddj5dfEA.js +237 -0
  34. package/dist/cjs/chunks/PromptInput-DtepCo-l.js +248 -0
  35. package/dist/cjs/chunks/RadioButton-B2HGjkQk.js +101 -0
  36. package/dist/cjs/chunks/RadioButtonList-Oc7oMivb.js +88 -0
  37. package/dist/cjs/chunks/Slider-Y7zMFKiM.js +170 -0
  38. package/dist/cjs/chunks/Spacer-CM7sstpQ.js +22 -0
  39. package/dist/cjs/chunks/Switch-CWJh4Pi4.js +70 -0
  40. package/dist/cjs/chunks/Tab-DFvjUNPs.js +96 -0
  41. package/dist/cjs/chunks/TabBar-lB0aqabp.js +186 -0
  42. package/dist/cjs/chunks/TextArea-UudvZQ9R.js +189 -0
  43. package/dist/cjs/chunks/TextField-QzgdqFys.js +312 -0
  44. package/dist/cjs/chunks/Tip-BxS2Wzz3.js +115 -0
  45. package/dist/cjs/chunks/ToggleButton-De8_kkMd.js +53 -0
  46. package/dist/cjs/chunks/UploadArea-BtqwFTDl.js +223 -0
  47. package/dist/cjs/chunks/Video-C1GATYS9.js +396 -0
  48. package/dist/cjs/chunks/VideoController-CnYz7Sdt.js +169 -0
  49. package/dist/cjs/chunks/{WSConnection-D5nSdN7z.js → WSConnection-DZKTeDtZ.js} +1 -1
  50. package/dist/cjs/chunks/{WebRTCConnection-CxMqLK-l.js → WebRTCConnection-DIUG7Gx3.js} +1 -1
  51. package/dist/cjs/chunks/_types-3m6769Z0.js +910 -0
  52. package/dist/cjs/chunks/_types-C_Jf14DZ.js +273 -0
  53. package/dist/cjs/chunks/audioVisualizer-Bak7PWOv.js +71 -0
  54. package/dist/cjs/chunks/breakpoints-BDw1OJh9.js +18 -0
  55. package/dist/cjs/chunks/{browserChannelsStore-CvkRtX7s.js → browserChannelsStore-DHE7Vr4_.js} +4 -2
  56. package/dist/cjs/chunks/colors-hDzzq_Dk.js +62 -0
  57. package/dist/cjs/chunks/files-RYD9L_pI.js +25 -0
  58. package/dist/cjs/chunks/getVideoControls-LxSY7z8h.js +19 -0
  59. package/dist/cjs/chunks/getWaterTransition-s_55VKK2.js +11 -0
  60. package/dist/cjs/chunks/{localDBStore-BYxZNIrv.js → localDBStore-CTWlm2t-.js} +6 -2
  61. package/dist/cjs/chunks/{microphoneStore-Dw-7f6Jb.js → microphoneStore-D7DuvQeX.js} +1 -1
  62. package/dist/cjs/chunks/{misc-B3tF47Um.js → misc-PmT7cZzC.js} +29 -38
  63. package/dist/cjs/chunks/{modalStore-BNeHu-nv.js → modalStore-BCn998Jz.js} +20 -17
  64. package/dist/cjs/chunks/popMenuStore-DqyTqDrl.js +20 -0
  65. package/dist/cjs/chunks/resolveColor-DkYThq2J.js +9 -0
  66. package/dist/cjs/chunks/resolveColorProps-DE1k1P-Z.js +17 -0
  67. package/dist/cjs/chunks/resolveShortcut-DiQdb8VR.js +38 -0
  68. package/dist/cjs/chunks/sharedTypes-BDMIewR9.js +22 -0
  69. package/dist/cjs/chunks/{sseStore-Dw-nvmmG.js → sseStore-DfS7e3vY.js} +3 -3
  70. package/dist/cjs/chunks/themes-bwU5x3_5.js +34 -0
  71. package/dist/cjs/chunks/toastStore-BxX1AtE7.js +33 -0
  72. package/dist/cjs/chunks/type.module-Dk5b_rHG.js +28 -0
  73. package/dist/cjs/chunks/{uploads-worker-BiugXTT6.js → uploads-worker-stCHn8-D.js} +1 -1
  74. package/dist/cjs/chunks/{uploadsStore-CxCy0NB7.js → uploadsStore-Ck3gzZuD.js} +2 -2
  75. package/dist/cjs/chunks/useAudioVisualizer-D7bStvIe.js +42 -0
  76. package/dist/cjs/chunks/useModalHost-B8oi4tfb.js +52 -0
  77. package/dist/cjs/chunks/usePrefersReducedMotion-GpD17CAE.js +16 -0
  78. package/dist/cjs/chunks/viewState-CMugA-g4.js +627 -0
  79. package/dist/cjs/chunks/{volumeStore-BQIMqtSw.js → volumeStore-BoEoo9wA.js} +1 -1
  80. package/dist/cjs/chunks/{webRTCStore-B8IKsBKT.js → webRTCStore-OGkXAovD.js} +6 -2
  81. package/dist/cjs/chunks/{windowStore-H9Jg7tnm.js → windowStore-HYnXbosz.js} +1 -1
  82. package/dist/cjs/components/Attachment/index.js +26 -0
  83. package/dist/cjs/components/AudioBubble/index.js +11 -8
  84. package/dist/cjs/components/AudioLevel/index.js +9 -0
  85. package/dist/cjs/components/Avatar/index.js +5 -3
  86. package/dist/cjs/components/AvatarGroup/index.js +4 -3
  87. package/dist/cjs/components/Badge/index.js +4 -3
  88. package/dist/cjs/components/Button/index.js +14 -11
  89. package/dist/cjs/components/ButtonBar/index.js +11 -9
  90. package/dist/cjs/components/Camera/index.js +15 -9
  91. package/dist/cjs/components/CheckBox/index.js +11 -10
  92. package/dist/cjs/components/Chip/index.js +13 -10
  93. package/dist/cjs/components/ContentEditable/index.js +8 -0
  94. package/dist/cjs/components/DataTable/index.js +12 -10
  95. package/dist/cjs/components/DialogBox/index.js +21 -0
  96. package/dist/cjs/components/Dot/index.js +8 -3
  97. package/dist/cjs/components/DraggablePanel/index.js +10 -10
  98. package/dist/cjs/components/DropDown/index.js +12 -10
  99. package/dist/cjs/components/ErrorSummary/index.js +10 -7
  100. package/dist/cjs/components/FileIcon/index.js +8 -9
  101. package/dist/cjs/components/FileList/index.js +16 -10
  102. package/dist/cjs/components/FlexBox/index.js +23 -0
  103. package/dist/cjs/components/FlexDiv/index.js +11 -5
  104. package/dist/cjs/components/Icon/index.js +8 -7
  105. package/dist/cjs/components/IconButton/index.js +15 -21
  106. package/dist/cjs/components/ModalController/index.js +11 -6
  107. package/dist/cjs/components/Overlay/index.js +9 -3
  108. package/dist/cjs/components/Pager/index.js +9 -3
  109. package/dist/cjs/components/PopMenu/index.js +17 -0
  110. package/dist/cjs/components/PopMenuController/index.js +18 -0
  111. package/dist/cjs/components/Progress/index.js +13 -10
  112. package/dist/cjs/components/PromptInput/index.js +19 -13
  113. package/dist/cjs/components/RadioButton/index.js +11 -10
  114. package/dist/cjs/components/RadioButtonList/index.js +12 -10
  115. package/dist/cjs/components/Slider/index.js +4 -8
  116. package/dist/cjs/components/Spacer/index.js +2 -2
  117. package/dist/cjs/components/Switch/index.js +9 -3
  118. package/dist/cjs/components/Tab/index.js +15 -0
  119. package/dist/cjs/components/TabBar/index.js +15 -11
  120. package/dist/cjs/components/TextArea/index.js +11 -12
  121. package/dist/cjs/components/Textfield/index.js +15 -11
  122. package/dist/cjs/components/Tip/index.js +9 -4
  123. package/dist/cjs/components/Toast/index.js +13 -10
  124. package/dist/cjs/components/ToggleButton/index.js +14 -11
  125. package/dist/cjs/components/UploadArea/index.js +17 -11
  126. package/dist/cjs/components/Video/index.js +18 -14
  127. package/dist/cjs/components/VideoController/index.js +17 -13
  128. package/dist/cjs/hooks/useAudioRecorder.js +1 -1
  129. package/dist/cjs/hooks/useBindWebRTC.js +4 -3
  130. package/dist/cjs/hooks/useClipboard.js +3 -2
  131. package/dist/cjs/hooks/useDoubleClick.js +6 -4
  132. package/dist/cjs/hooks/useInfiniteScroll.js +1 -1
  133. package/dist/cjs/hooks/useMdStreamBuffer.js +7 -2
  134. package/dist/cjs/hooks/useMicrophone.js +1 -1
  135. package/dist/cjs/hooks/useObserveTheme.js +4 -4
  136. package/dist/cjs/hooks/useTheme.js +9 -1
  137. package/dist/cjs/hooks/useToolTip.js +27 -32
  138. package/dist/cjs/hooks/useTrackRenders.js +2 -2
  139. package/dist/cjs/hooks/useWindow.js +13 -23
  140. package/dist/cjs/hooks.js +13 -12
  141. package/dist/cjs/index.js +55 -47
  142. package/dist/cjs/providers/ThemeProvider.js +4 -3
  143. package/dist/cjs/providers/themeServer.test.js +398 -403
  144. package/dist/cjs/providers.js +4 -3
  145. package/dist/cjs/stores/LocalDB.js +8 -6
  146. package/dist/cjs/stores/SSE.js +4 -3
  147. package/dist/cjs/stores/WS.js +4 -3
  148. package/dist/cjs/stores/WebRTC.js +8 -6
  149. package/dist/cjs/stores/activeTab.js +1 -1
  150. package/dist/cjs/stores/browserChannel.js +5 -4
  151. package/dist/cjs/stores/microphone.js +2 -2
  152. package/dist/cjs/stores/modal.js +1 -1
  153. package/dist/cjs/stores/popMenu.js +7 -0
  154. package/dist/cjs/stores/tip.js +1 -1
  155. package/dist/cjs/stores/toast.js +1 -1
  156. package/dist/cjs/stores/uploads.js +2 -2
  157. package/dist/cjs/stores/video.js +1 -1
  158. package/dist/cjs/stores/volume.js +2 -2
  159. package/dist/cjs/stores/window.js +2 -2
  160. package/dist/cjs/stores.js +38 -34
  161. package/dist/cjs/theme/colors.js +479 -231
  162. package/dist/cjs/theme/themes.js +3 -30
  163. package/dist/cjs/theme/type.js +31 -0
  164. package/dist/cjs/theme.js +10 -3
  165. package/dist/cjs/utils/index.js +24 -5
  166. package/dist/cjs/utils/objects/index.js +2 -2
  167. package/dist/cjs/workers/uploads/uploads.js +2 -2
  168. package/dist/css/type.module.css +27 -0
  169. package/dist/esm/chunks/ActionButton-guWI4qko.mjs +235 -0
  170. package/dist/esm/chunks/Attachment-BTSb0hKX.mjs +370 -0
  171. package/dist/esm/chunks/AudioBubble-D15lr4H6.mjs +68 -0
  172. package/dist/esm/chunks/AudioLevel-BcNrcGlh.mjs +63 -0
  173. package/dist/esm/chunks/Avatar-C4JzdLTW.mjs +132 -0
  174. package/dist/esm/chunks/AvatarGroup-Cn33-JkE.mjs +78 -0
  175. package/dist/esm/chunks/Badge-DpnuS-Ey.mjs +32 -0
  176. package/dist/esm/chunks/Button-BwTo8mSI.mjs +315 -0
  177. package/dist/esm/chunks/ButtonBar-BwHxexlC.mjs +111 -0
  178. package/dist/esm/chunks/Camera-DWmX5FZ-.mjs +585 -0
  179. package/dist/esm/chunks/CheckBox-CjmPDfLi.mjs +76 -0
  180. package/dist/esm/chunks/Chip-BfyUpZbH.mjs +223 -0
  181. package/dist/esm/chunks/ContentEditable-BvlyAJve.mjs +154 -0
  182. package/dist/esm/chunks/DialogBox-W9i6k5mv.mjs +224 -0
  183. package/dist/esm/chunks/Dot-CG395pS6.mjs +104 -0
  184. package/dist/esm/chunks/DrggablePanel-0Ef6TYrd.mjs +270 -0
  185. package/dist/esm/chunks/DropDown-CiB0Rp_P.mjs +286 -0
  186. package/dist/esm/chunks/ErrorSummary-3XoZyvmX.mjs +192 -0
  187. package/dist/esm/chunks/{FileIcon-DSPzFDJY.mjs → FileIcon-hKJZoGIx.mjs} +73 -53
  188. package/dist/esm/chunks/FileList-DxB0ZORo.mjs +220 -0
  189. package/dist/esm/chunks/FlexBox-VfQehVtm.mjs +296 -0
  190. package/dist/esm/chunks/FlexDiv-BZ5PBnE3.mjs +6 -0
  191. package/dist/esm/chunks/Icon-43T0fkr6.mjs +7841 -0
  192. package/dist/esm/chunks/IconButton-oqYTUJit.mjs +12 -0
  193. package/dist/esm/chunks/{IndexedDB-DpULdzpq.mjs → IndexedDB-DjCLZUf0.mjs} +1 -1
  194. package/dist/esm/chunks/ModalController-fvF-RWS8.mjs +169 -0
  195. package/dist/esm/chunks/ModalHostContext-BrT_g7sc.mjs +5 -0
  196. package/dist/esm/chunks/Overlay-C_FMcUyg.mjs +93 -0
  197. package/dist/esm/chunks/Pager-LqYNCZ8I.mjs +158 -0
  198. package/dist/esm/chunks/PopMenu-BkXfm6Sz.mjs +455 -0
  199. package/dist/esm/chunks/PopMenuController-Dj3uvc8F.mjs +44 -0
  200. package/dist/esm/chunks/ProgressIndicator-CR3pA1Me.mjs +266 -0
  201. package/dist/esm/chunks/PromptInput-Bq18i1Ac.mjs +266 -0
  202. package/dist/esm/chunks/RadioButton-DTUKMjvM.mjs +109 -0
  203. package/dist/esm/chunks/RadioButtonList-DsOgpe0m.mjs +99 -0
  204. package/dist/esm/chunks/Slider-DaZTE-eD.mjs +176 -0
  205. package/dist/esm/chunks/Spacer-CsJxUJ7E.mjs +24 -0
  206. package/dist/esm/chunks/Switch-BDFgMC0b.mjs +84 -0
  207. package/dist/esm/chunks/Tab-B8yJ9Qy4.mjs +105 -0
  208. package/dist/esm/chunks/TabBar-2kQmtcwW.mjs +214 -0
  209. package/dist/esm/chunks/TextArea-C32MToPG.mjs +201 -0
  210. package/dist/esm/chunks/TextField-BXrN1QkD.mjs +344 -0
  211. package/dist/esm/chunks/Tip-4R9wW1mE.mjs +133 -0
  212. package/dist/esm/chunks/ToggleButton-CGHa458C.mjs +61 -0
  213. package/dist/esm/chunks/UploadArea-Dq7ST-RG.mjs +237 -0
  214. package/dist/esm/chunks/Video-KuG0k3ly.mjs +418 -0
  215. package/dist/esm/chunks/VideoController-DQoDDY1a.mjs +201 -0
  216. package/dist/esm/chunks/{WSConnection-DNh3_RKt.mjs → WSConnection-ByCYrNOq.mjs} +1 -1
  217. package/dist/esm/chunks/{WebRTCConnection-B9ztLs_6.mjs → WebRTCConnection-DTjS3UUU.mjs} +1 -1
  218. package/dist/esm/chunks/_types-B6NStINb.mjs +296 -0
  219. package/dist/esm/chunks/_types-ntN11tyz.mjs +910 -0
  220. package/dist/esm/chunks/audioVisualizer-BMSpJwTS.mjs +71 -0
  221. package/dist/esm/chunks/breakpoints-Dn9DgpJe.mjs +18 -0
  222. package/dist/esm/chunks/{browserChannelsStore-CmMyobjW.mjs → browserChannelsStore-s7VUhLS9.mjs} +6 -2
  223. package/dist/esm/chunks/colors-DZ9xpMoE.mjs +63 -0
  224. package/dist/esm/chunks/files-6nwSZlJK.mjs +26 -0
  225. package/dist/esm/chunks/getVideoControls-aoqr4T3P.mjs +20 -0
  226. package/dist/esm/chunks/getWaterTransition-CrDSFJdk.mjs +12 -0
  227. package/dist/esm/chunks/{localDBStore-3uHThx73.mjs → localDBStore-DYhPmkHz.mjs} +7 -3
  228. package/dist/esm/chunks/{microphoneStore-lnK3t3JC.mjs → microphoneStore-BzSEbtfK.mjs} +1 -1
  229. package/dist/esm/chunks/{misc-CagHFpjD.mjs → misc-DI5GSqkt.mjs} +24 -34
  230. package/dist/esm/chunks/{modalStore-DDbEcsqD.mjs → modalStore-BgYt3q8T.mjs} +20 -17
  231. package/dist/esm/chunks/popMenuStore-DtApFGaq.mjs +18 -0
  232. package/dist/esm/chunks/resolveColor-Kvs7kDyy.mjs +9 -0
  233. package/dist/esm/chunks/resolveColorProps-CwAU25V-.mjs +17 -0
  234. package/dist/esm/chunks/resolveShortcut-C43ivgMc.mjs +37 -0
  235. package/dist/esm/chunks/sharedTypes-DYXO7VNa.mjs +25 -0
  236. package/dist/esm/chunks/{sseStore-CCkhffxC.mjs → sseStore-Duybemwt.mjs} +7 -3
  237. package/dist/esm/chunks/themes-DCtDY7XT.mjs +40 -0
  238. package/dist/esm/chunks/toastStore-Ds1Kx4-O.mjs +29 -0
  239. package/dist/esm/chunks/type.module--fVZ2ic7.mjs +28 -0
  240. package/dist/esm/chunks/{uploads-worker-BAc2rfWa.mjs → uploads-worker-CpJtBCvY.mjs} +1 -1
  241. package/dist/esm/chunks/{uploadsStore-CnmPPpay.mjs → uploadsStore-B_7wyr8k.mjs} +1 -1
  242. package/dist/esm/chunks/useAudioVisualizer-Dw8XLBmS.mjs +42 -0
  243. package/dist/esm/chunks/useModalHost-DiYFB7Mq.mjs +51 -0
  244. package/dist/esm/chunks/usePrefersReducedMotion-BWAwMMLE.mjs +15 -0
  245. package/dist/esm/chunks/viewState-D7e7CrHf.mjs +659 -0
  246. package/dist/esm/chunks/{volumeStore-CSItrUF2.mjs → volumeStore-mqWIRL0J.mjs} +1 -1
  247. package/dist/esm/chunks/{webRTCStore-BpDbSd4Q.mjs → webRTCStore-BepH2O9l.mjs} +7 -3
  248. package/dist/esm/chunks/{windowStore-Dkr9ooZW.mjs → windowStore-C8rGk_0b.mjs} +1 -1
  249. package/dist/esm/components/Attachment/index.mjs +71 -0
  250. package/dist/esm/components/AudioBubble/index.mjs +21 -11
  251. package/dist/esm/components/AudioLevel/index.mjs +21 -0
  252. package/dist/esm/components/Avatar/index.mjs +9 -3
  253. package/dist/esm/components/AvatarGroup/index.mjs +10 -4
  254. package/dist/esm/components/Badge/index.mjs +8 -2
  255. package/dist/esm/components/Button/index.mjs +27 -17
  256. package/dist/esm/components/ButtonBar/index.mjs +22 -14
  257. package/dist/esm/components/Camera/index.mjs +37 -13
  258. package/dist/esm/components/CheckBox/index.mjs +20 -16
  259. package/dist/esm/components/Chip/index.mjs +27 -17
  260. package/dist/esm/components/ContentEditable/index.mjs +17 -0
  261. package/dist/esm/components/DataTable/index.mjs +27 -21
  262. package/dist/esm/components/DialogBox/index.mjs +75 -0
  263. package/dist/esm/components/Dot/index.mjs +28 -2
  264. package/dist/esm/components/DraggablePanel/index.mjs +16 -20
  265. package/dist/esm/components/DropDown/index.mjs +25 -15
  266. package/dist/esm/components/ErrorSummary/index.mjs +22 -10
  267. package/dist/esm/components/FileIcon/index.mjs +8 -16
  268. package/dist/esm/components/FileList/index.mjs +40 -16
  269. package/dist/esm/components/FlexBox/index.mjs +39 -0
  270. package/dist/esm/components/FlexDiv/index.mjs +33 -3
  271. package/dist/esm/components/Icon/index.mjs +15 -11
  272. package/dist/esm/components/IconButton/index.mjs +31 -19
  273. package/dist/esm/components/ModalController/index.mjs +33 -9
  274. package/dist/esm/components/Overlay/index.mjs +30 -2
  275. package/dist/esm/components/Pager/index.mjs +31 -3
  276. package/dist/esm/components/PopMenu/index.mjs +59 -0
  277. package/dist/esm/components/PopMenuController/index.mjs +63 -0
  278. package/dist/esm/components/Progress/index.mjs +21 -11
  279. package/dist/esm/components/PromptInput/index.mjs +43 -21
  280. package/dist/esm/components/RadioButton/index.mjs +18 -14
  281. package/dist/esm/components/RadioButtonList/index.mjs +23 -17
  282. package/dist/esm/components/Slider/index.mjs +5 -23
  283. package/dist/esm/components/Spacer/index.mjs +2 -2
  284. package/dist/esm/components/Switch/index.mjs +30 -2
  285. package/dist/esm/components/Tab/index.mjs +51 -0
  286. package/dist/esm/components/TabBar/index.mjs +32 -16
  287. package/dist/esm/components/TextArea/index.mjs +17 -23
  288. package/dist/esm/components/Textfield/index.mjs +33 -17
  289. package/dist/esm/components/Tip/index.mjs +29 -3
  290. package/dist/esm/components/Toast/index.mjs +23 -13
  291. package/dist/esm/components/ToggleButton/index.mjs +30 -22
  292. package/dist/esm/components/UploadArea/index.mjs +41 -17
  293. package/dist/esm/components/Video/index.mjs +34 -24
  294. package/dist/esm/components/VideoController/index.mjs +44 -26
  295. package/dist/esm/hooks/useAudioRecorder.mjs +1 -1
  296. package/dist/esm/hooks/useBindWebRTC.mjs +12 -6
  297. package/dist/esm/hooks/useClipboard.mjs +9 -3
  298. package/dist/esm/hooks/useDoubleClick.mjs +8 -5
  299. package/dist/esm/hooks/useInfiniteScroll.mjs +1 -1
  300. package/dist/esm/hooks/useMdStreamBuffer.mjs +9 -3
  301. package/dist/esm/hooks/useMicrophone.mjs +1 -1
  302. package/dist/esm/hooks/useObserveTheme.mjs +5 -1
  303. package/dist/esm/hooks/useTheme.mjs +5 -1
  304. package/dist/esm/hooks/useToolTip.mjs +28 -33
  305. package/dist/esm/hooks/useTrackRenders.mjs +2 -2
  306. package/dist/esm/hooks/useWindow.mjs +6 -22
  307. package/dist/esm/hooks.mjs +16 -10
  308. package/dist/esm/index.mjs +96 -60
  309. package/dist/esm/providers/ThemeProvider.mjs +5 -1
  310. package/dist/esm/providers/themeServer.test.mjs +398 -403
  311. package/dist/esm/providers.mjs +5 -1
  312. package/dist/esm/stores/LocalDB.mjs +10 -4
  313. package/dist/esm/stores/SSE.mjs +10 -4
  314. package/dist/esm/stores/WS.mjs +9 -3
  315. package/dist/esm/stores/WebRTC.mjs +10 -4
  316. package/dist/esm/stores/activeTab.mjs +1 -1
  317. package/dist/esm/stores/browserChannel.mjs +9 -3
  318. package/dist/esm/stores/microphone.mjs +2 -2
  319. package/dist/esm/stores/modal.mjs +1 -1
  320. package/dist/esm/stores/popMenu.mjs +3 -0
  321. package/dist/esm/stores/tip.mjs +1 -1
  322. package/dist/esm/stores/toast.mjs +1 -1
  323. package/dist/esm/stores/uploads.mjs +3 -3
  324. package/dist/esm/stores/video.mjs +1 -1
  325. package/dist/esm/stores/volume.mjs +2 -2
  326. package/dist/esm/stores/window.mjs +2 -2
  327. package/dist/esm/stores.mjs +28 -20
  328. package/dist/esm/theme/colors.mjs +479 -231
  329. package/dist/esm/theme/themes.mjs +6 -35
  330. package/dist/esm/theme/type.mjs +31 -0
  331. package/dist/esm/theme.mjs +5 -1
  332. package/dist/esm/utils/index.mjs +37 -12
  333. package/dist/esm/utils/objects/index.mjs +8 -8
  334. package/dist/esm/workers/uploads/uploads.mjs +2 -2
  335. package/dist/styles.css +5343 -4109
  336. package/dist/types/components/Attachment/Attachment.d.ts +2 -0
  337. package/dist/types/components/Attachment/AttachmentImagePreview.d.ts +6 -0
  338. package/dist/types/components/Attachment/_types.d.ts +47 -0
  339. package/dist/types/components/Attachment/index.d.ts +3 -0
  340. package/dist/types/components/Attachment/useContentThumbnail.d.ts +19 -0
  341. package/dist/types/components/AudioBubble/AudioBubble.d.ts +1 -1
  342. package/dist/types/components/AudioBubble/_types.d.ts +4 -3
  343. package/dist/types/components/AudioLevel/AudioLevel.d.ts +5 -0
  344. package/dist/types/components/AudioLevel/_types.d.ts +22 -0
  345. package/dist/types/components/AudioLevel/index.d.ts +2 -0
  346. package/dist/types/components/Avatar/Avatar.d.ts +6 -1
  347. package/dist/types/components/Avatar/_types.d.ts +28 -15
  348. package/dist/types/components/AvatarGroup/AvatarGroup.d.ts +1 -1
  349. package/dist/types/components/AvatarGroup/AvatarGroupContext.d.ts +7 -0
  350. package/dist/types/components/AvatarGroup/_types.d.ts +26 -15
  351. package/dist/types/components/AvatarGroup/index.d.ts +1 -1
  352. package/dist/types/components/Badge/Badge.d.ts +1 -1
  353. package/dist/types/components/Badge/_types.d.ts +11 -3
  354. package/dist/types/components/Button/Button.d.ts +19 -52
  355. package/dist/types/components/Button/_types.d.ts +18 -14
  356. package/dist/types/components/ButtonBar/ButtonBar.d.ts +0 -14
  357. package/dist/types/components/ButtonBar/_types.d.ts +16 -13
  358. package/dist/types/components/Camera/Camera.d.ts +2 -4
  359. package/dist/types/components/Camera/_types.d.ts +25 -29
  360. package/dist/types/components/Camera/cameraSession.d.ts +59 -0
  361. package/dist/types/components/Camera/index.d.ts +1 -1
  362. package/dist/types/components/CheckBox/CheckBox.d.ts +1 -1
  363. package/dist/types/components/CheckBox/_types.d.ts +16 -4
  364. package/dist/types/components/Chip/Chip.d.ts +1 -1
  365. package/dist/types/components/Chip/_types.d.ts +35 -19
  366. package/dist/types/components/ContentEditable/ContentEditable.d.ts +3 -0
  367. package/dist/types/components/ContentEditable/_types.d.ts +26 -0
  368. package/dist/types/components/ContentEditable/index.d.ts +2 -0
  369. package/dist/types/components/DataTable/DataTable.d.ts +1 -1
  370. package/dist/types/components/DataTable/_types.d.ts +21 -11
  371. package/dist/types/components/DataTable/_useResizeColumn.d.ts +1 -1
  372. package/dist/types/components/DataTable/_useRowWindow.d.ts +1 -0
  373. package/dist/types/components/DataTable/compareValues.d.ts +2 -0
  374. package/dist/types/components/DialogBox/DialogBox.d.ts +6 -0
  375. package/dist/types/components/DialogBox/_types.d.ts +68 -0
  376. package/dist/types/components/DialogBox/index.d.ts +3 -0
  377. package/dist/types/components/DialogBox/parseSections.d.ts +7 -0
  378. package/dist/types/components/DialogBox/sections.d.ts +20 -0
  379. package/dist/types/components/DialogBox/useDialogBox.d.ts +4 -0
  380. package/dist/types/components/Dot/Dot.d.ts +1 -1
  381. package/dist/types/components/Dot/_types.d.ts +8 -2
  382. package/dist/types/components/DraggablePanel/DrggablePanel.d.ts +5 -55
  383. package/dist/types/components/DraggablePanel/_types.d.ts +46 -0
  384. package/dist/types/components/DraggablePanel/index.d.ts +1 -0
  385. package/dist/types/components/DraggablePanel/panelConstraints.d.ts +3 -0
  386. package/dist/types/components/DropDown/_types.d.ts +45 -16
  387. package/dist/types/components/DropDown/resolveOptions.d.ts +11 -0
  388. package/dist/types/components/ErrorSummary/ErrorSummary.d.ts +30 -2
  389. package/dist/types/components/ErrorSummary/_types.d.ts +16 -4
  390. package/dist/types/components/FileIcon/FileIcon.d.ts +1 -2
  391. package/dist/types/components/FileIcon/_types.d.ts +11 -6
  392. package/dist/types/components/FileIcon/index.d.ts +2 -2
  393. package/dist/types/components/FileList/FileList.d.ts +2 -2
  394. package/dist/types/components/FileList/_types.d.ts +16 -6
  395. package/dist/types/components/FileList/fileListValues.d.ts +5 -0
  396. package/dist/types/components/FlexBox/FlexBox.d.ts +3 -0
  397. package/dist/types/components/FlexBox/_types.d.ts +62 -0
  398. package/dist/types/components/FlexBox/index.d.ts +2 -0
  399. package/dist/types/components/FlexDiv/FlexDiv.d.ts +2 -64
  400. package/dist/types/components/FlexDiv/_types.d.ts +4 -146
  401. package/dist/types/components/Icon/Icon.d.ts +1 -1
  402. package/dist/types/components/Icon/_types.d.ts +910 -133
  403. package/dist/types/components/Icon/iconRegistry.d.ts +3 -2
  404. package/dist/types/components/Icon/index.d.ts +1 -0
  405. package/dist/types/components/IconButton/ActionButton.d.ts +19 -0
  406. package/dist/types/components/IconButton/IconButton.d.ts +1 -1
  407. package/dist/types/components/IconButton/_types.d.ts +24 -72
  408. package/dist/types/components/IconButton/index.d.ts +1 -2
  409. package/dist/types/components/ModalController/ModalController.d.ts +2 -2
  410. package/dist/types/components/ModalController/ModalHostContext.d.ts +1 -0
  411. package/dist/types/components/ModalController/_types.d.ts +3 -5
  412. package/dist/types/components/ModalController/useModalHost.d.ts +3 -0
  413. package/dist/types/components/Overlay/Overlay.d.ts +1 -1
  414. package/dist/types/components/Overlay/_types.d.ts +7 -8
  415. package/dist/types/components/Pager/Pager.d.ts +1 -1
  416. package/dist/types/components/Pager/_types.d.ts +21 -5
  417. package/dist/types/components/Pager/pagerLogic.d.ts +9 -0
  418. package/dist/types/components/PopMenu/PopMenu.d.ts +3 -0
  419. package/dist/types/components/PopMenu/PopMenuContext.d.ts +10 -0
  420. package/dist/types/components/PopMenu/PopMenuGroup.d.ts +2 -0
  421. package/dist/types/components/PopMenu/PopMenuItem.d.ts +3 -0
  422. package/dist/types/components/PopMenu/_types.d.ts +110 -0
  423. package/dist/types/components/PopMenu/index.d.ts +4 -0
  424. package/dist/types/components/PopMenu/usePopMenu.d.ts +17 -0
  425. package/dist/types/components/PopMenu/usePopMenuPortal.d.ts +3 -0
  426. package/dist/types/components/PopMenuController/PopMenuController.d.ts +2 -0
  427. package/dist/types/components/PopMenuController/index.d.ts +1 -0
  428. package/dist/types/components/Progress/DoneCheck/DoneCheck.d.ts +1 -1
  429. package/dist/types/components/Progress/DoneCheck/_types.d.ts +5 -2
  430. package/dist/types/components/Progress/ProgressIndicator/ProgressIndicator.d.ts +2 -4
  431. package/dist/types/components/Progress/ProgressIndicator/_types.d.ts +19 -7
  432. package/dist/types/components/Progress/ProgressIndicator/useSpinnerPlayback.d.ts +3 -0
  433. package/dist/types/components/PromptInput/PromptInput.d.ts +50 -15
  434. package/dist/types/components/PromptInput/_types.d.ts +45 -8
  435. package/dist/types/components/PromptInput/index.d.ts +1 -1
  436. package/dist/types/components/PromptInput/promptText.d.ts +6 -0
  437. package/dist/types/components/RadioButton/RadioGroupContext.d.ts +11 -0
  438. package/dist/types/components/RadioButton/_types.d.ts +24 -13
  439. package/dist/types/components/RadioButtonList/_types.d.ts +17 -19
  440. package/dist/types/components/RadioButtonList/index.d.ts +1 -1
  441. package/dist/types/components/Slider/Slider.d.ts +1 -1
  442. package/dist/types/components/Slider/_types.d.ts +15 -9
  443. package/dist/types/components/Slider/sliderLogic.d.ts +6 -0
  444. package/dist/types/components/Spacer/index.d.ts +1 -1
  445. package/dist/types/components/Switch/_types.d.ts +18 -7
  446. package/dist/types/components/Tab/Tab.d.ts +3 -0
  447. package/dist/types/components/Tab/_types.d.ts +26 -0
  448. package/dist/types/components/Tab/index.d.ts +2 -0
  449. package/dist/types/components/TabBar/TabBar.d.ts +1 -1
  450. package/dist/types/components/TabBar/_types.d.ts +14 -37
  451. package/dist/types/components/TabBar/index.d.ts +1 -1
  452. package/dist/types/components/TabBar/shared.d.ts +22 -0
  453. package/dist/types/components/TextArea/TextArea.d.ts +1 -1
  454. package/dist/types/components/TextArea/_types.d.ts +32 -11
  455. package/dist/types/components/TextArea/index.d.ts +1 -1
  456. package/dist/types/components/Textfield/TextField.d.ts +2 -2
  457. package/dist/types/components/Textfield/_types.d.ts +41 -37
  458. package/dist/types/components/Tip/Tip.d.ts +1 -2
  459. package/dist/types/components/Tip/_types.d.ts +11 -18
  460. package/dist/types/components/Tip/useTipVisibility.d.ts +6 -0
  461. package/dist/types/components/Toast/Toast.d.ts +2 -2
  462. package/dist/types/components/Toast/_types.d.ts +25 -12
  463. package/dist/types/components/Toast/index.d.ts +1 -1
  464. package/dist/types/components/Toast/useToastLifecycle.d.ts +15 -0
  465. package/dist/types/components/ToggleButton/ToggleButton.d.ts +2 -2
  466. package/dist/types/components/ToggleButton/_types.d.ts +18 -30
  467. package/dist/types/components/UploadArea/UploadArea.d.ts +27 -19
  468. package/dist/types/components/UploadArea/_types.d.ts +23 -20
  469. package/dist/types/components/UploadArea/index.d.ts +1 -1
  470. package/dist/types/components/UploadArea/selection.d.ts +7 -0
  471. package/dist/types/components/UploadArea/useFileSelection.d.ts +30 -0
  472. package/dist/types/components/Video/Video.d.ts +2 -72
  473. package/dist/types/components/Video/_types.d.ts +37 -11
  474. package/dist/types/components/Video/getVideoControls.d.ts +3 -0
  475. package/dist/types/components/Video/index.d.ts +1 -1
  476. package/dist/types/components/VideoController/VideoController.d.ts +1 -1
  477. package/dist/types/components/VideoController/_types.d.ts +6 -1
  478. package/dist/types/components/playHelpers.d.ts +10 -233
  479. package/dist/types/components/sharedTypes.d.ts +31 -0
  480. package/dist/types/hooks/index.d.ts +1 -1
  481. package/dist/types/hooks/useToolTip/useToolTip.d.ts +1 -0
  482. package/dist/types/hooks/useWindow/useWindow.d.ts +5 -16
  483. package/dist/types/index.d.ts +39 -30
  484. package/dist/types/stores/index.d.ts +1 -0
  485. package/dist/types/stores/popMenu/_types.d.ts +13 -0
  486. package/dist/types/stores/popMenu/index.d.ts +2 -0
  487. package/dist/types/stores/popMenu/popMenuStore.d.ts +12 -0
  488. package/dist/types/stores/toast/_types.d.ts +6 -11
  489. package/dist/types/stores/toast/toastStore.d.ts +6 -6
  490. package/dist/types/stores/window/windowStore.d.ts +2 -2
  491. package/dist/types/theme/breakpoints/breakpoints.d.ts +11 -0
  492. package/dist/types/theme/colors/palette.d.ts +461 -0
  493. package/dist/types/theme/colors/recipes.d.ts +34 -0
  494. package/dist/types/theme/colors/resolveColor.d.ts +7 -0
  495. package/dist/types/theme/colors/types.d.ts +8 -92
  496. package/dist/types/theme/index.d.ts +4 -0
  497. package/dist/types/theme/type/type.d.ts +1 -0
  498. package/dist/types/theme/type/types.d.ts +3 -0
  499. package/dist/types/utils/audio/useAudioVisualizer.d.ts +3 -0
  500. package/dist/types/utils/functions/colors.d.ts +7 -0
  501. package/dist/types/utils/functions/files.d.ts +3 -4
  502. package/dist/types/utils/functions/misc.d.ts +12 -2
  503. package/dist/types/utils/functions/resolveColorProps.d.ts +2 -0
  504. package/dist/types/utils/functions/resolveShortcut.d.ts +3 -0
  505. package/dist/types/utils/index.d.ts +5 -1
  506. package/dist/types/utils/objects/audioVisualizer/audioVisualizer.d.ts +3 -0
  507. package/dist/types/utils/styling/getWaterTransition.d.ts +4 -0
  508. package/dist/types/utils/styling/reduceMotionTargets.d.ts +4 -0
  509. package/dist/types/utils/styling/usePrefersReducedMotion.d.ts +2 -0
  510. package/package.json +195 -201
  511. package/scripts/README.md +19 -0
  512. package/dist/cjs/chunks/AudioBubble-B7rjYKZR.js +0 -55
  513. package/dist/cjs/chunks/Avatar-_FkV6_bj.js +0 -82
  514. package/dist/cjs/chunks/AvatarGroup-BMOQtckJ.js +0 -41
  515. package/dist/cjs/chunks/Badge-CQrpFFZl.js +0 -22
  516. package/dist/cjs/chunks/Button-D53KhAkv.js +0 -265
  517. package/dist/cjs/chunks/ButtonBar-N5L7PGg6.js +0 -72
  518. package/dist/cjs/chunks/Camera-BULkeKNC.js +0 -380
  519. package/dist/cjs/chunks/CheckBox-CxQeRMKr.js +0 -51
  520. package/dist/cjs/chunks/Chip-D0tBR0Uq.js +0 -80
  521. package/dist/cjs/chunks/DivInput-D0VUXFiS.js +0 -101
  522. package/dist/cjs/chunks/Dot-GHGV4L29.js +0 -72
  523. package/dist/cjs/chunks/DrggablePanel-DSNgmB_o.js +0 -224
  524. package/dist/cjs/chunks/DropDown-DRcukAxl.js +0 -105
  525. package/dist/cjs/chunks/ErrorSummary-DWh383tt.js +0 -88
  526. package/dist/cjs/chunks/FileList-Cl82aFlO.js +0 -223
  527. package/dist/cjs/chunks/FlexDiv-CwjTwIXH.js +0 -178
  528. package/dist/cjs/chunks/Grouper-DjUdigNr.js +0 -63
  529. package/dist/cjs/chunks/Icon-B07V8-iO.js +0 -1489
  530. package/dist/cjs/chunks/IconButton-C8l4gN5C.js +0 -182
  531. package/dist/cjs/chunks/Label-BbJHiOmP.js +0 -106
  532. package/dist/cjs/chunks/Level-Bj5Kg1W3.js +0 -63
  533. package/dist/cjs/chunks/Modal-CVmIsdGy.js +0 -128
  534. package/dist/cjs/chunks/ModalController-DeSot1gM.js +0 -81
  535. package/dist/cjs/chunks/Overlay-CFoktASG.js +0 -41
  536. package/dist/cjs/chunks/Pager-NsKBlF0O.js +0 -36
  537. package/dist/cjs/chunks/ProgressIndicator-BK0eIP3-.js +0 -140
  538. package/dist/cjs/chunks/PromptInput-BG1-rzlA.js +0 -161
  539. package/dist/cjs/chunks/RadioButton-DCiNs99y.js +0 -55
  540. package/dist/cjs/chunks/RadioButtonList-DLdTst71.js +0 -73
  541. package/dist/cjs/chunks/Slider-CekvQKaG.js +0 -169
  542. package/dist/cjs/chunks/Spacer-C-nVP3Ic.js +0 -26
  543. package/dist/cjs/chunks/Switch-DkU5T0Hm.js +0 -44
  544. package/dist/cjs/chunks/TabBar-Dm3tMtlm.js +0 -183
  545. package/dist/cjs/chunks/TextArea-Drq3c8dZ.js +0 -77
  546. package/dist/cjs/chunks/TextField-D38gJzBN.js +0 -190
  547. package/dist/cjs/chunks/Tip-DMQjQT85.js +0 -89
  548. package/dist/cjs/chunks/Toast-sZSVZ0ND.js +0 -185
  549. package/dist/cjs/chunks/ToggleButton-I3AxfCqI.js +0 -45
  550. package/dist/cjs/chunks/UploadArea-eGZIGNi3.js +0 -132
  551. package/dist/cjs/chunks/Video-CK1Ui0jI.js +0 -301
  552. package/dist/cjs/chunks/VideoController-Z2VgDcSG.js +0 -95
  553. package/dist/cjs/chunks/_types-Bvz68-MM.js +0 -141
  554. package/dist/cjs/chunks/audioVisualizer-cC1Q8TJs.js +0 -60
  555. package/dist/cjs/chunks/colors-BLmUwGPt.js +0 -27
  556. package/dist/cjs/chunks/debounce-CiNBCKOh.js +0 -18
  557. package/dist/cjs/chunks/sharedTypes-CnzGgdys.js +0 -6
  558. package/dist/cjs/chunks/toastStore-DtZ3Woz_.js +0 -17
  559. package/dist/cjs/chunks/viewState-C9dAI8FG.js +0 -497
  560. package/dist/cjs/components/DivInput/index.js +0 -7
  561. package/dist/cjs/components/Grouper/index.js +0 -14
  562. package/dist/cjs/components/Label/index.js +0 -12
  563. package/dist/cjs/components/Level/index.js +0 -7
  564. package/dist/cjs/components/Modal/index.js +0 -15
  565. package/dist/esm/chunks/AudioBubble-nUxpObow.mjs +0 -69
  566. package/dist/esm/chunks/Avatar-tdg93uhg.mjs +0 -88
  567. package/dist/esm/chunks/AvatarGroup-C-8btUsy.mjs +0 -47
  568. package/dist/esm/chunks/Badge-BsLebku3.mjs +0 -26
  569. package/dist/esm/chunks/Button-BtxNw6ia.mjs +0 -283
  570. package/dist/esm/chunks/ButtonBar-Duch_kZq.mjs +0 -82
  571. package/dist/esm/chunks/Camera-CcUUY3V-.mjs +0 -398
  572. package/dist/esm/chunks/CheckBox-CMzqOPXk.mjs +0 -61
  573. package/dist/esm/chunks/Chip-fbi2OZwl.mjs +0 -92
  574. package/dist/esm/chunks/DivInput-C0E2-H7Q.mjs +0 -113
  575. package/dist/esm/chunks/Dot-CUKJwIzW.mjs +0 -78
  576. package/dist/esm/chunks/DrggablePanel-R5vyKmMt.mjs +0 -236
  577. package/dist/esm/chunks/DropDown-Dak1tC81.mjs +0 -115
  578. package/dist/esm/chunks/ErrorSummary-7St6DRq1.mjs +0 -101
  579. package/dist/esm/chunks/FileList-DxypG1gf.mjs +0 -231
  580. package/dist/esm/chunks/FlexDiv-CaNnli-r.mjs +0 -188
  581. package/dist/esm/chunks/Grouper-Cfkyb5fu.mjs +0 -83
  582. package/dist/esm/chunks/Icon-BZ634R5u.mjs +0 -1503
  583. package/dist/esm/chunks/IconButton-BW8BwWt1.mjs +0 -197
  584. package/dist/esm/chunks/Label-gjoEtJAw.mjs +0 -119
  585. package/dist/esm/chunks/Level-D4r_4yC6.mjs +0 -68
  586. package/dist/esm/chunks/Modal-BpeG1ufF.mjs +0 -142
  587. package/dist/esm/chunks/ModalController-CWJu74sJ.mjs +0 -92
  588. package/dist/esm/chunks/Overlay-Ctpj5rdn.mjs +0 -47
  589. package/dist/esm/chunks/Pager-BqAdm87r.mjs +0 -42
  590. package/dist/esm/chunks/ProgressIndicator-BJGyKW4y.mjs +0 -156
  591. package/dist/esm/chunks/PromptInput-DAAohdde.mjs +0 -175
  592. package/dist/esm/chunks/RadioButton-Mubr8ARW.mjs +0 -63
  593. package/dist/esm/chunks/RadioButtonList-Mw2IVegX.mjs +0 -81
  594. package/dist/esm/chunks/Slider-tbgzaids.mjs +0 -183
  595. package/dist/esm/chunks/Spacer-DMPc2plL.mjs +0 -28
  596. package/dist/esm/chunks/Switch-CV6qfAb7.mjs +0 -50
  597. package/dist/esm/chunks/TabBar-e13ZmdaD.mjs +0 -205
  598. package/dist/esm/chunks/TextArea-Bhut96m6.mjs +0 -87
  599. package/dist/esm/chunks/TextField-iqgBuz_w.mjs +0 -210
  600. package/dist/esm/chunks/Tip-BhNgf7ae.mjs +0 -99
  601. package/dist/esm/chunks/Toast-C4ij2wVB.mjs +0 -203
  602. package/dist/esm/chunks/ToggleButton-74KPRo9V.mjs +0 -53
  603. package/dist/esm/chunks/UploadArea-CoI7E5w5.mjs +0 -142
  604. package/dist/esm/chunks/Video-DPue5vFh.mjs +0 -316
  605. package/dist/esm/chunks/VideoController-Ce6X6aAe.mjs +0 -114
  606. package/dist/esm/chunks/_types-YqjUzbuI.mjs +0 -141
  607. package/dist/esm/chunks/audioVisualizer-_H-alvTA.mjs +0 -60
  608. package/dist/esm/chunks/colors-qznBTNSD.mjs +0 -30
  609. package/dist/esm/chunks/debounce-Ck7nvyAV.mjs +0 -19
  610. package/dist/esm/chunks/sharedTypes-BS0kCucU.mjs +0 -8
  611. package/dist/esm/chunks/toastStore-OATPs-NI.mjs +0 -15
  612. package/dist/esm/chunks/viewState-DHKdCOat.mjs +0 -527
  613. package/dist/esm/components/DivInput/index.mjs +0 -13
  614. package/dist/esm/components/Grouper/index.mjs +0 -47
  615. package/dist/esm/components/Label/index.mjs +0 -11
  616. package/dist/esm/components/Level/index.mjs +0 -15
  617. package/dist/esm/components/Modal/index.mjs +0 -57
  618. package/dist/types/components/DataTable/_resolveVirtualizeRows.test.d.ts +0 -1
  619. package/dist/types/components/DataTable/_useReorderColumns.test.d.ts +0 -1
  620. package/dist/types/components/DataTable/_useResizeColumn.test.d.ts +0 -1
  621. package/dist/types/components/DataTable/_useRowWindow.test.d.ts +0 -1
  622. package/dist/types/components/DataTable/columnHelper.test.d.ts +0 -1
  623. package/dist/types/components/DataTable/viewState.test.d.ts +0 -1
  624. package/dist/types/components/DivInput/DivInput.d.ts +0 -3
  625. package/dist/types/components/DivInput/_types.d.ts +0 -24
  626. package/dist/types/components/DivInput/index.d.ts +0 -2
  627. package/dist/types/components/Grouper/Grouper.d.ts +0 -3
  628. package/dist/types/components/Grouper/_types.d.ts +0 -20
  629. package/dist/types/components/Grouper/index.d.ts +0 -2
  630. package/dist/types/components/Icon/iconRegistry.test.d.ts +0 -1
  631. package/dist/types/components/IconButton/_animation.d.ts +0 -18
  632. package/dist/types/components/IconButton/_animation.test.d.ts +0 -1
  633. package/dist/types/components/Label/Label.d.ts +0 -3
  634. package/dist/types/components/Label/_types.d.ts +0 -25
  635. package/dist/types/components/Label/index.d.ts +0 -3
  636. package/dist/types/components/Level/Level.d.ts +0 -5
  637. package/dist/types/components/Level/_types.d.ts +0 -21
  638. package/dist/types/components/Level/index.d.ts +0 -2
  639. package/dist/types/components/Modal/Modal.d.ts +0 -3
  640. package/dist/types/components/Modal/_types.d.ts +0 -49
  641. package/dist/types/components/Modal/index.d.ts +0 -2
  642. package/dist/types/hooks/useActiveTab/useActiveTab.test.d.ts +0 -1
  643. package/dist/types/hooks/useAudioRecorder/useAudioRecorder.test.d.ts +0 -1
  644. package/dist/types/hooks/useBindWebRTC/useBindWebRTC.test.d.ts +0 -1
  645. package/dist/types/hooks/useClipboard/useClipboard.test.d.ts +0 -1
  646. package/dist/types/hooks/useDoubleClick/useDoubleClick.test.d.ts +0 -1
  647. package/dist/types/hooks/useInfiniteScroll/useInfiniteScroll.test.d.ts +0 -1
  648. package/dist/types/hooks/useIntersecting/useIntersecting.test.d.ts +0 -1
  649. package/dist/types/hooks/useKeyboardShortcuts/useKeyboardShortcuts.test.d.ts +0 -1
  650. package/dist/types/hooks/useLastUpdated/useLastUpdated.test.d.ts +0 -1
  651. package/dist/types/hooks/useLocalStore/useLocalStore.test.d.ts +0 -1
  652. package/dist/types/hooks/useMdStreamBuffer/useMdStreamBuffer.test.d.ts +0 -1
  653. package/dist/types/hooks/useMicrophone/useMicrophone.test.d.ts +0 -1
  654. package/dist/types/hooks/useObserveTheme/useObserveTheme.test.d.ts +0 -1
  655. package/dist/types/hooks/useTheme/useTheme.test.d.ts +0 -1
  656. package/dist/types/hooks/useToolTip/useToolTip.test.d.ts +0 -1
  657. package/dist/types/hooks/useTrackRenders/useTrackRenders.test.d.ts +0 -1
  658. package/dist/types/hooks/useWindow/useWindow.test.d.ts +0 -1
  659. package/dist/types/providers/themeServer.test.d.ts +0 -1
  660. package/dist/types/stores/LocalDB/localDBStore.test.d.ts +0 -1
  661. package/dist/types/stores/SSE/sseStore.test.d.ts +0 -1
  662. package/dist/types/stores/WS/wsStore.test.d.ts +0 -1
  663. package/dist/types/stores/WebRTC/webRTCStore.test.d.ts +0 -1
  664. package/dist/types/stores/activeTab/activeTabStore.test.d.ts +0 -1
  665. package/dist/types/stores/browserChannel/browserChannelsStore.test.d.ts +0 -1
  666. package/dist/types/stores/microphone/microphoneStore.test.d.ts +0 -1
  667. package/dist/types/stores/modal/modalStore.test.d.ts +0 -1
  668. package/dist/types/stores/tip/tipStore.test.d.ts +0 -1
  669. package/dist/types/stores/toast/toastStore.test.d.ts +0 -1
  670. package/dist/types/stores/uploads/uploadsStore.test.d.ts +0 -1
  671. package/dist/types/stores/video/videoStore.test.d.ts +0 -1
  672. package/dist/types/stores/volume/volumeStore.test.d.ts +0 -1
  673. package/dist/types/stores/window/windowStore.test.d.ts +0 -1
  674. package/dist/types/utils/functions/colors.test.d.ts +0 -1
  675. package/dist/types/utils/functions/debounce.test.d.ts +0 -1
  676. package/dist/types/utils/functions/files.test.d.ts +0 -1
  677. package/dist/types/utils/functions/misc.test.d.ts +0 -1
  678. package/dist/types/utils/functions/rafThrottle.test.d.ts +0 -1
  679. package/dist/types/utils/objects/IndexedDB/IndexedDB.test.d.ts +0 -1
  680. package/dist/types/utils/objects/MDStreamBuffer/MdStreamBuffer.test.d.ts +0 -1
  681. package/dist/types/utils/objects/SSEConnection/SSEConnection.test.d.ts +0 -1
  682. package/dist/types/utils/objects/WSConnection/WSConnection.test.d.ts +0 -1
  683. package/dist/types/utils/objects/WebRTCConnection/WebRTCConnection.test.d.ts +0 -1
  684. package/dist/types/utils/objects/audioVisualizer/audioVisualizer.test.d.ts +0 -1
  685. package/dist/types/utils/objects/browserChannel/broadcastChannel.test.d.ts +0 -1
  686. package/dist/types/workers/uploads/uploads-worker.test.d.ts +0 -1
  687. /package/dist/cjs/chunks/{MdStreamBuffer-BwrT84Xh.js → MdStreamBuffer-B0KtaR_k.js} +0 -0
  688. /package/dist/cjs/chunks/{SSEConnection-Dciti25t.js → SSEConnection-BXWkgT66.js} +0 -0
  689. /package/dist/cjs/chunks/{activeTabStore-qP5wXhKH.js → activeTabStore-D2gxAoK6.js} +0 -0
  690. /package/dist/cjs/chunks/{broadcastChannel-BV0gIfvH.js → broadcastChannel-DdPZ3LUB.js} +0 -0
  691. /package/dist/cjs/chunks/{magic-string.es-Vs_88NMN.js → magic-string.es-DsAR0Q7u.js} +0 -0
  692. /package/dist/cjs/chunks/{rafThrottle-BlnxmQVH.js → rafThrottle-BRdLzPo7.js} +0 -0
  693. /package/dist/cjs/chunks/{tipStore-K8csyK2D.js → tipStore-DDHyGeyK.js} +0 -0
  694. /package/dist/cjs/chunks/{tslib.es6-DL37Dyu4.js → tslib.es6-B8JY5ZGw.js} +0 -0
  695. /package/dist/cjs/chunks/{videoStore-CR0cDt-h.js → videoStore-B0l9iBw4.js} +0 -0
  696. /package/dist/esm/chunks/{MdStreamBuffer-DFtBr080.mjs → MdStreamBuffer-CcO5IBxD.mjs} +0 -0
  697. /package/dist/esm/chunks/{SSEConnection-Djeh2C5G.mjs → SSEConnection-B5rVxalP.mjs} +0 -0
  698. /package/dist/esm/chunks/{activeTabStore-DSluAldJ.mjs → activeTabStore-CCstpXAC.mjs} +0 -0
  699. /package/dist/esm/chunks/{broadcastChannel-B2yT2lpA.mjs → broadcastChannel-CPT0S33H.mjs} +0 -0
  700. /package/dist/esm/chunks/{magic-string.es-Cm4dLOmN.mjs → magic-string.es-CI4cCGRB.mjs} +0 -0
  701. /package/dist/esm/chunks/{rafThrottle-CJcLGMwV.mjs → rafThrottle-Dl8Z5sJ-.mjs} +0 -0
  702. /package/dist/esm/chunks/{tipStore-BrCvK80A.mjs → tipStore-CBvk303u.mjs} +0 -0
  703. /package/dist/esm/chunks/{tslib.es6-DiR-r3pp.mjs → tslib.es6-CpnJrDBv.mjs} +0 -0
  704. /package/dist/esm/chunks/{videoStore-CLWsJ-oG.mjs → videoStore-Cd-Lewfy.mjs} +0 -0
@@ -0,0 +1,585 @@
1
+ 'use client';
2
+ import { _ as __awaiter, a as __rest } from "./tslib.es6-CpnJrDBv.mjs";
3
+
4
+ import { jsxs, jsx } from "react/jsx-runtime";
5
+
6
+ import React, { useRef, useState, useCallback, useEffect, useMemo } from "react";
7
+
8
+ import { useTheme } from "../hooks/useTheme.mjs";
9
+
10
+ import "../theme/colors.mjs";
11
+
12
+ import "../theme/type.mjs";
13
+
14
+ import "./resolveColor-Kvs7kDyy.mjs";
15
+
16
+ import "./breakpoints-Dn9DgpJe.mjs";
17
+
18
+ import { s as setStyle } from "./misc-DI5GSqkt.mjs";
19
+
20
+ import { a as addOpacity } from "./colors-DZ9xpMoE.mjs";
21
+
22
+ import "./broadcastChannel-CPT0S33H.mjs";
23
+
24
+ import "./files-6nwSZlJK.mjs";
25
+
26
+ import "./webRTCStore-BepH2O9l.mjs";
27
+
28
+ import "./microphoneStore-BzSEbtfK.mjs";
29
+
30
+ import "./volumeStore-mqWIRL0J.mjs";
31
+
32
+ import { r as resolveColorProps } from "./resolveColorProps-CwAU25V-.mjs";
33
+
34
+ import { A as Avatar } from "./Avatar-C4JzdLTW.mjs";
35
+
36
+ import { I as Icon } from "./Icon-43T0fkr6.mjs";
37
+
38
+ import { T as ToggleButton } from "./ToggleButton-CGHa458C.mjs";
39
+
40
+ var css = {
41
+ wrapper: "Camera-module_wrapper__GOsKp flexBox-module_column__ezvMq",
42
+ video: "Camera-module_video__Q2r9B",
43
+ controls: "Camera-module_controls__qXYoL flexBox-module_rowBetween__5FEvi",
44
+ controlsRight: "Camera-module_controlsRight__VcIz7 flexBox-module_rowEnd__rVdVm",
45
+ controlsCenter: "Camera-module_controlsCenter__e-erq flexBox-module_row__z24tF",
46
+ controlsLeft: "Camera-module_controlsLeft__bR4TN flexBox-module_rowStart__4tcxS",
47
+ error: "Camera-module_error__t0w-d flexBox-module_row__z24tF type-module_body-m-regular__LuQBA",
48
+ poster: "Camera-module_poster__Gun-v flexBox-module_row__z24tF type-module_body-m-regular__LuQBA",
49
+ snapshotFrame: "Camera-module_snapshotFrame__YM6Eu flexBox-module_row__z24tF",
50
+ clear: "Camera-module_clear__aaCfT",
51
+ snapshot: "Camera-module_snapshot__odQH0",
52
+ offMessage: "Camera-module_offMessage__FYila"
53
+ };
54
+
55
+ const stopTracks = stream => {
56
+ for (const track of stream.getTracks()) track.stop();
57
+ }, isError = reason => reason instanceof Error || "undefined" != typeof DOMException && reason instanceof DOMException, asError = reason => isError(reason) ? reason : new Error("Could not access the camera. Ensure permissions are correct"), constraintFailure = reason => isError(reason) && [ "NotFoundError", "OverconstrainedError" ].includes(reason.name), cancelled = () => new Error("Camera request was cancelled");
58
+
59
+ /** Owns only streams acquired by this Camera. Generation checks release stale results. */
60
+ class CameraSession {
61
+ constructor(video, options, publish) {
62
+ this.video = video, this.options = options, this.publish = publish, this.active = !1,
63
+ this.generation = 0, this.videoEnabled = !0, this.emptyDevices = [], this.devices = this.emptyDevices;
64
+ }
65
+ get stream() {
66
+ return this.ownedStream;
67
+ }
68
+ get videoTrack() {
69
+ var _a;
70
+ return null === (_a = this.stream) || void 0 === _a ? void 0 : _a.getVideoTracks()[0];
71
+ }
72
+ get audioTrack() {
73
+ var _a;
74
+ return null === (_a = this.stream) || void 0 === _a ? void 0 : _a.getAudioTracks()[0];
75
+ }
76
+ key(options = this.options()) {
77
+ const {audio: audio, sessionSettings: sessionSettings} = options;
78
+ return JSON.stringify([ audio, null == sessionSettings ? void 0 : sessionSettings.videoDeviceId, audio ? null == sessionSettings ? void 0 : sessionSettings.micDeviceId : void 0 ]);
79
+ }
80
+ activate() {
81
+ this.active = !0;
82
+ }
83
+ emit(error, supported = !0) {
84
+ if (!this.active) return;
85
+ const video = this.videoTrack, audio = this.audioTrack, next = {
86
+ cameraOn: Boolean("live" === (null == video ? void 0 : video.readyState) && video.enabled),
87
+ micMuted: audio ? !audio.enabled : this.options().startAudioMuted,
88
+ audioAvailable: "live" === (null == audio ? void 0 : audio.readyState),
89
+ error: error,
90
+ supported: supported,
91
+ devices: this.devices
92
+ }, previous = this.lastState;
93
+ previous && previous.cameraOn === next.cameraOn && previous.micMuted === next.micMuted && previous.audioAvailable === next.audioAvailable && previous.supported === next.supported && previous.error === next.error && previous.devices === next.devices || (this.lastState = next,
94
+ this.publish(next));
95
+ }
96
+ release() {
97
+ var _a;
98
+ null === (_a = this.unlisten) || void 0 === _a || _a.call(this), this.unlisten = void 0;
99
+ const stream = this.ownedStream;
100
+ if (this.ownedStream = void 0, this.streamKey = void 0, this.devices = this.emptyDevices,
101
+ stream) {
102
+ const video = this.video();
103
+ (null == video ? void 0 : video.srcObject) === stream && (video.srcObject = null),
104
+ stopTracks(stream);
105
+ }
106
+ }
107
+ dispose() {
108
+ this.active = !1, this.generation++, this.pending = void 0, this.release();
109
+ }
110
+ stop() {
111
+ return __awaiter(this, void 0, void 0, function*() {
112
+ const hadMedia = Boolean(this.ownedStream || this.pending);
113
+ return this.generation++, this.pending = void 0, this.release(), this.muted = void 0,
114
+ this.videoEnabled = !0, this.emit(), !!hadMedia || new Error("No media stream to stop");
115
+ });
116
+ }
117
+ refreshDevices(valid) {
118
+ return __awaiter(this, void 0, void 0, function*() {
119
+ const devices = yield this.devicesList();
120
+ valid() && (this.devices = Array.isArray(devices) && 0 === devices.length ? this.emptyDevices : devices,
121
+ this.emit());
122
+ });
123
+ }
124
+ devicesList() {
125
+ return __awaiter(this, void 0, void 0, function*() {
126
+ var _a;
127
+ if ("undefined" == typeof navigator || !(null === (_a = navigator.mediaDevices) || void 0 === _a ? void 0 : _a.enumerateDevices)) return new Error("Media devices not supported");
128
+ try {
129
+ return yield navigator.mediaDevices.enumerateDevices();
130
+ } catch (reason) {
131
+ return reason instanceof Error ? reason : new Error("Unknown error enumerating devices. Please try again.");
132
+ }
133
+ });
134
+ }
135
+ request(options, valid) {
136
+ return __awaiter(this, void 0, void 0, function*() {
137
+ var _a, _b;
138
+ const videoId = null === (_a = options.sessionSettings) || void 0 === _a ? void 0 : _a.videoDeviceId, micId = null === (_b = options.sessionSettings) || void 0 === _b ? void 0 : _b.micDeviceId, video = !videoId || {
139
+ deviceId: {
140
+ exact: videoId
141
+ }
142
+ }, audio = options.audio && (!micId || {
143
+ deviceId: {
144
+ exact: micId
145
+ }
146
+ });
147
+ let failure;
148
+ try {
149
+ return {
150
+ stream: yield navigator.mediaDevices.getUserMedia({
151
+ video: video,
152
+ audio: audio
153
+ })
154
+ };
155
+ } catch (error) {
156
+ failure = error;
157
+ }
158
+ if (!valid()) throw cancelled();
159
+ if (constraintFailure(failure)) try {
160
+ return {
161
+ stream: yield navigator.mediaDevices.getUserMedia({
162
+ video: !0,
163
+ audio: options.audio
164
+ })
165
+ };
166
+ } catch (error) {
167
+ failure = error;
168
+ }
169
+ if (!valid()) throw cancelled();
170
+ if (!options.audio) throw failure;
171
+ try {
172
+ return {
173
+ stream: yield navigator.mediaDevices.getUserMedia({
174
+ video: video,
175
+ audio: !1
176
+ }),
177
+ audioError: asError(failure)
178
+ };
179
+ } catch (error) {
180
+ if (!valid()) throw cancelled();
181
+ if (!constraintFailure(error)) throw error;
182
+ return {
183
+ stream: yield navigator.mediaDevices.getUserMedia({
184
+ video: !0,
185
+ audio: !1
186
+ }),
187
+ audioError: asError(failure)
188
+ };
189
+ }
190
+ });
191
+ }
192
+ start(preserveTrackState = !1) {
193
+ var _a, _b, _c;
194
+ if (!this.active) return Promise.resolve(cancelled());
195
+ const key = this.key();
196
+ if ((null === (_a = this.pending) || void 0 === _a ? void 0 : _a.key) === key) return this.pending.promise;
197
+ if (this.ownedStream && this.streamKey === key && "live" === (null === (_b = this.videoTrack) || void 0 === _b ? void 0 : _b.readyState)) return this.enableVideo(),
198
+ Promise.resolve(this.ownedStream);
199
+ const options = this.options();
200
+ preserveTrackState || (this.videoEnabled = !0), null !== (_c = this.muted) && void 0 !== _c || (this.muted = options.startAudioMuted);
201
+ const captureOptions = Object.assign(Object.assign({}, options), {
202
+ startAudioMuted: this.muted
203
+ }), generation = ++this.generation;
204
+ this.release(), this.emit();
205
+ const promise = this.acquire(captureOptions, key, () => this.active && this.generation === generation).finally(() => {
206
+ var _a;
207
+ (null === (_a = this.pending) || void 0 === _a ? void 0 : _a.promise) === promise && (this.pending = void 0);
208
+ });
209
+ return this.pending = {
210
+ key: key,
211
+ promise: promise
212
+ }, promise;
213
+ }
214
+ /** Device changes replace active/pending capture, without undoing manual video-off state. */ reconfigure(options = this.options()) {
215
+ var _a, _b;
216
+ (this.ownedStream || this.pending) && (null !== (_b = null === (_a = this.pending) || void 0 === _a ? void 0 : _a.key) && void 0 !== _b ? _b : this.streamKey) !== this.key(options) && this.start(!0);
217
+ }
218
+ acquire(options, key, valid) {
219
+ return __awaiter(this, void 0, void 0, function*() {
220
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
221
+ let candidate;
222
+ try {
223
+ if ("undefined" == typeof navigator || !(null === (_a = navigator.mediaDevices) || void 0 === _a ? void 0 : _a.getUserMedia)) {
224
+ const error = new Error("Camera not supported");
225
+ return this.emit(error.message, !1), null === (_c = (_b = this.options()).onNoVideo) || void 0 === _c || _c.call(_b, error),
226
+ valid() && options.audio && (null === (_e = (_d = this.options()).onNoAudio) || void 0 === _e || _e.call(_d, error)),
227
+ error;
228
+ }
229
+ const result = yield this.request(options, valid);
230
+ if (candidate = result.stream, !valid()) return stopTracks(candidate), cancelled();
231
+ const videoTrack = candidate.getVideoTracks()[0];
232
+ if (!videoTrack || "live" !== videoTrack.readyState) throw new Error("No video track available");
233
+ const video = this.video();
234
+ if (!video) throw new Error("Video element not found");
235
+ const audio = candidate.getAudioTracks()[0];
236
+ if (audio && (audio.enabled = !options.startAudioMuted), videoTrack.enabled = this.videoEnabled,
237
+ this.ownedStream = candidate, this.streamKey = key, video.muted = !this.options().playLocalAudio,
238
+ video.srcObject = candidate, yield video.play(), !valid()) return cancelled();
239
+ const changed = () => this.emit();
240
+ for (const track of candidate.getTracks()) track.addEventListener("ended", changed);
241
+ const attached = candidate;
242
+ return this.unlisten = () => {
243
+ for (const track of attached.getTracks()) track.removeEventListener("ended", changed);
244
+ }, this.emit(), valid() ? (!options.audio || audio && !result.audioError || null === (_g = (_f = this.options()).onNoAudio) || void 0 === _g || _g.call(_f, null !== (_h = result.audioError) && void 0 !== _h ? _h : new Error("No audio track available")),
245
+ valid() ? (null === (_k = (_j = this.options()).onVideoStream) || void 0 === _k || _k.call(_j, candidate),
246
+ valid() ? (this.refreshDevices(valid), candidate) : cancelled()) : cancelled()) : cancelled();
247
+ } catch (reason) {
248
+ if (!valid()) return candidate && candidate !== this.ownedStream && stopTracks(candidate),
249
+ cancelled();
250
+ candidate === this.ownedStream ? this.release() : candidate && stopTracks(candidate);
251
+ const error = asError(reason);
252
+ return this.emit(error.message), null === (_m = (_l = this.options()).onNoVideo) || void 0 === _m || _m.call(_l, error),
253
+ valid() && options.audio && (null === (_p = (_o = this.options()).onNoAudio) || void 0 === _p || _p.call(_o, error)),
254
+ error;
255
+ }
256
+ });
257
+ }
258
+ disableVideo() {
259
+ const track = this.videoTrack;
260
+ return track ? (this.videoEnabled = !1, track.enabled = !1, this.emit(), !0) : new Error("No video track found");
261
+ }
262
+ enableVideo() {
263
+ if (!this.stream) return new Error("No media stream found");
264
+ const track = this.videoTrack;
265
+ return track ? "live" !== track.readyState ? (this.emit(), new Error("Video track is no longer live")) : (this.videoEnabled = !0,
266
+ track.enabled = !0, this.emit(), this.stream) : new Error("No video track found");
267
+ }
268
+ muteMic() {
269
+ return this.setMuted(!0);
270
+ }
271
+ unmuteMic() {
272
+ return this.setMuted(!1);
273
+ }
274
+ setMuted(muted) {
275
+ const track = this.audioTrack;
276
+ return track && "live" === track.readyState ? (this.muted = muted, track.enabled = !muted,
277
+ this.emit(), !0) : new Error("No audio track found");
278
+ }
279
+ toggleMic() {
280
+ var _a;
281
+ return (null === (_a = this.audioTrack) || void 0 === _a ? void 0 : _a.enabled) ? this.muteMic() : this.unmuteMic();
282
+ }
283
+ toggleVideo() {
284
+ return __awaiter(this, void 0, void 0, function*() {
285
+ var _a;
286
+ return this.stream && "live" === (null === (_a = this.videoTrack) || void 0 === _a ? void 0 : _a.readyState) ? this.videoTrack.enabled ? this.disableVideo() : this.enableVideo() : this.start();
287
+ });
288
+ }
289
+ }
290
+
291
+ const Camera = React.memo(React.forwardRef((rawProps, ref) => {
292
+ const props = resolveColorProps(rawProps), videoElement = useRef(null), containerElement = useRef(null), controlsTimer = useRef(null), controlsElement = useRef(null), {noVideoPoster: noVideoPoster, backgroundColor: backgroundColor = "var(--core-surface-secondary)", borderColor: borderColor = "var(--core-fill-primary)", borderWidth: borderWidth = 1, borderRadius: borderRadius = "var(--corner-xxl)", audio: audio = !0, width: width, height: height, showControlBar: showControlBar = !0, showProfileButton: showProfileButton = !1, showSettingsButton: showSettingsButton = !1, autoHideControlBar: autoHideControlBar = !0, startCameraOff: startCameraOff = !1, startAudioMuted: startAudioMuted = !1, playLocalAudio: playLocalAudio = !1, pipSnapshot: pipSnapshot = !0, userProfile: userProfile, sessionSettings: sessionSettings, onChangeProfile: onChangeProfile, onChangeSettings: onChangeSettings, onSnapshot: onSnapshot, onVideoStream: onVideoStream, onNoVideo: onNoVideo, onNoAudio: onNoAudio, className: className, style: style, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, onMouseMove: onMouseMove, onClick: onClick, onFocusCapture: onFocusCapture, onBlurCapture: onBlurCapture} = props, divAttributes = __rest(props, [ "noVideoPoster", "backgroundColor", "borderColor", "borderWidth", "borderRadius", "audio", "width", "height", "showControlBar", "showProfileButton", "showSettingsButton", "autoHideControlBar", "startCameraOff", "startAudioMuted", "playLocalAudio", "pipSnapshot", "userProfile", "sessionSettings", "onChangeProfile", "onChangeSettings", "onSnapshot", "onVideoStream", "onNoVideo", "onNoAudio", "className", "style", "onMouseEnter", "onMouseLeave", "onMouseMove", "onClick", "onFocusCapture", "onBlurCapture" ]), theme = useTheme(), [hovered, setHovered] = useState(!1), [focused, setFocused] = useState(!1), [snapshot, setSnapshot] = useState(), snapshotURL = useRef(void 0), updateSnapshot = useCallback(url => {
293
+ snapshotURL.current && URL.revokeObjectURL(snapshotURL.current), snapshotURL.current = url,
294
+ setSnapshot(url);
295
+ }, []), [settings, setSettings] = useState(!1), [profile, setProfile] = useState(!1), [media, setMedia] = useState({
296
+ cameraOn: !1,
297
+ micMuted: startAudioMuted,
298
+ audioAvailable: !1,
299
+ supported: !0,
300
+ devices: []
301
+ }), callbacks = useRef({
302
+ audio: audio,
303
+ startAudioMuted: startAudioMuted,
304
+ playLocalAudio: playLocalAudio,
305
+ sessionSettings: sessionSettings,
306
+ onVideoStream: onVideoStream,
307
+ onNoAudio: onNoAudio,
308
+ onNoVideo: onNoVideo
309
+ });
310
+ useEffect(() => {
311
+ callbacks.current = {
312
+ audio: audio,
313
+ startAudioMuted: startAudioMuted,
314
+ playLocalAudio: playLocalAudio,
315
+ sessionSettings: sessionSettings,
316
+ onVideoStream: onVideoStream,
317
+ onNoAudio: onNoAudio,
318
+ onNoVideo: onNoVideo
319
+ };
320
+ });
321
+ const [session] = useState(() => new CameraSession(() => videoElement.current, () => callbacks.current, setMedia)), {cameraOn: cameraOn, micMuted: micMuted, devices: deviceList, error: cameraError, supported: cameraSupport} = media;
322
+ useEffect(() => (session.activate(), () => session.dispose()), [ session ]), useEffect(() => {
323
+ startCameraOff ? session.stop() : session.start();
324
+ }, [ session, startCameraOff ]), useEffect(() => {
325
+ session.reconfigure({
326
+ audio: audio,
327
+ sessionSettings: {
328
+ videoDeviceId: null == sessionSettings ? void 0 : sessionSettings.videoDeviceId,
329
+ micDeviceId: null == sessionSettings ? void 0 : sessionSettings.micDeviceId
330
+ }
331
+ });
332
+ }, [ session, audio, null == sessionSettings ? void 0 : sessionSettings.videoDeviceId, null == sessionSettings ? void 0 : sessionSettings.micDeviceId ]);
333
+ const takeSnapshot = useCallback(options => {
334
+ var _a, _b, _c, _d;
335
+ if (!videoElement.current) return;
336
+ const width = null !== (_a = null == options ? void 0 : options.width) && void 0 !== _a ? _a : videoElement.current.videoWidth, height = null !== (_b = null == options ? void 0 : options.height) && void 0 !== _b ? _b : videoElement.current.videoHeight;
337
+ if (!width || !height) return;
338
+ const canvas = document.createElement("canvas");
339
+ canvas.width = width, canvas.height = height;
340
+ const context = canvas.getContext("2d");
341
+ if (!context) return;
342
+ context.drawImage(videoElement.current, 0, 0, canvas.width, canvas.height);
343
+ const url = canvas.toDataURL("image/png"), [header, data] = url.split(",");
344
+ if (!header || !data) return;
345
+ const mimeType = null !== (_d = null === (_c = new RegExp(/data:(.*?);base64/).exec(header)) || void 0 === _c ? void 0 : _c[1]) && void 0 !== _d ? _d : "image/png", binary = atob(data), bytes = new Uint8Array(binary.length);
346
+ for (let index = 0; index < binary.length; index += 1) bytes[index] = binary.codePointAt(index);
347
+ return new Blob([ bytes ], {
348
+ type: mimeType
349
+ });
350
+ }, []), handleSnapshot = useCallback(options => {
351
+ if ((null == options ? void 0 : options.toggle) && snapshotURL.current) return void updateSnapshot();
352
+ const photo = takeSnapshot(options);
353
+ return null == onSnapshot || onSnapshot(photo), updateSnapshot(photo ? URL.createObjectURL(photo) : void 0),
354
+ photo;
355
+ }, [ onSnapshot, takeSnapshot, updateSnapshot ]);
356
+ React.useImperativeHandle(ref, () => ({
357
+ get video() {
358
+ var _a;
359
+ return null !== (_a = videoElement.current) && void 0 !== _a ? _a : void 0;
360
+ },
361
+ get container() {
362
+ var _a;
363
+ return null !== (_a = containerElement.current) && void 0 !== _a ? _a : void 0;
364
+ },
365
+ get stream() {
366
+ return session.stream;
367
+ },
368
+ get videoTrack() {
369
+ return session.videoTrack;
370
+ },
371
+ get audioTrack() {
372
+ return session.audioTrack;
373
+ },
374
+ snapshot: options => handleSnapshot(options),
375
+ startCamera: () => session.start(),
376
+ stopCamera: () => session.stop(),
377
+ enableVideo: () => session.enableVideo(),
378
+ disableVideo: () => session.disableVideo(),
379
+ muteMic: () => session.muteMic(),
380
+ unmuteMic: () => session.unmuteMic(),
381
+ toggleMic: () => session.toggleMic(),
382
+ devices: () => session.devicesList(),
383
+ toggleVideo: () => session.toggleVideo()
384
+ }), [ session, handleSnapshot ]);
385
+ const showPoster = useMemo(() => !cameraError && (!1 === cameraSupport || !cameraOn), [ cameraError, cameraSupport, cameraOn ]), showError = useMemo(() => Boolean(cameraError), [ cameraError ]), controlsBg = useMemo(() => {
386
+ if (!media.cameraOn) return backgroundColor;
387
+ const bgColor = theme.current.colors["core-surface-secondary"];
388
+ return addOpacity(bgColor, .5);
389
+ }, [ media.cameraOn, backgroundColor, theme.current ]), setControlBarVisible = useMemo(() => showControlBar && (!autoHideControlBar || focused || hovered) ? "translateY(0%)" : "translateY(100%)", [ autoHideControlBar, hovered, showControlBar, focused ]), cssVars = useMemo(() => ({
390
+ "--camera-width": setStyle(width),
391
+ "--camera-background-color": backgroundColor,
392
+ "--camera-border-color": borderColor,
393
+ "--camera-border-width": setStyle(borderWidth),
394
+ "--camera-border-radius": setStyle(borderRadius),
395
+ "--camera-height": setStyle(height),
396
+ "--camera-controls-bg": controlsBg,
397
+ "--camera-controls-transform": setControlBarVisible
398
+ }), [ controlsBg, height, setControlBarVisible, width, backgroundColor, borderColor, borderWidth, borderRadius ]), canAutoHide = showControlBar && autoHideControlBar, revealControls = () => {
399
+ canAutoHide && (setHovered(!0), controlsTimer.current && clearTimeout(controlsTimer.current),
400
+ controlsTimer.current = setTimeout(() => {
401
+ var _a, _b;
402
+ (null === (_a = controlsElement.current) || void 0 === _a ? void 0 : _a.contains(document.activeElement)) || (null === (_b = controlsElement.current) || void 0 === _b ? void 0 : _b.matches(":hover")) || setHovered(!1);
403
+ }, 3e3));
404
+ }, leaveControls = () => {
405
+ canAutoHide && (controlsTimer.current && clearTimeout(controlsTimer.current), setHovered(!1));
406
+ };
407
+ return useEffect(() => {
408
+ var _a;
409
+ controlsTimer.current && clearTimeout(controlsTimer.current), canAutoHide ? setFocused(Boolean(null === (_a = containerElement.current) || void 0 === _a ? void 0 : _a.contains(document.activeElement))) : (setHovered(!1),
410
+ setFocused(!1));
411
+ }, [ canAutoHide ]), useEffect(() => {
412
+ videoElement.current && (videoElement.current.muted = !playLocalAudio);
413
+ }, [ playLocalAudio ]), useEffect(() => () => {
414
+ controlsTimer.current && clearTimeout(controlsTimer.current);
415
+ }, []), useEffect(() => () => {
416
+ snapshotURL.current && URL.revokeObjectURL(snapshotURL.current), snapshotURL.current = void 0;
417
+ }, []), jsxs("div", Object.assign({}, divAttributes, {
418
+ ref: containerElement,
419
+ className: [ css.wrapper, className ].filter(Boolean).join(" "),
420
+ style: Object.assign(Object.assign({}, cssVars), style),
421
+ onMouseEnter: event => {
422
+ null == onMouseEnter || onMouseEnter(event), revealControls();
423
+ },
424
+ onMouseMove: event => {
425
+ null == onMouseMove || onMouseMove(event), revealControls();
426
+ },
427
+ onMouseLeave: event => {
428
+ null == onMouseLeave || onMouseLeave(event), leaveControls();
429
+ },
430
+ onClick: onClick,
431
+ onFocusCapture: event => {
432
+ null == onFocusCapture || onFocusCapture(event), canAutoHide && (setFocused(!0),
433
+ revealControls());
434
+ },
435
+ onBlurCapture: event => {
436
+ null == onBlurCapture || onBlurCapture(event), canAutoHide && (event.currentTarget.contains(event.relatedTarget) || (setFocused(!1),
437
+ leaveControls()));
438
+ },
439
+ children: [ pipSnapshot && snapshot && jsxs("div", {
440
+ className: css.snapshotFrame,
441
+ children: [ jsx("div", {
442
+ className: css.clear,
443
+ children: jsx(Icon, {
444
+ name: "basic.cross",
445
+ pointer: !0,
446
+ actionName: "Clear snapshot",
447
+ onClick: () => updateSnapshot()
448
+ })
449
+ }), jsx("img", {
450
+ className: css.snapshot,
451
+ src: snapshot,
452
+ alt: "Snapshot"
453
+ }) ]
454
+ }), !1 !== cameraSupport && jsx("video", {
455
+ ref: videoElement,
456
+ className: css.video,
457
+ style: {
458
+ visibility: cameraOn ? "visible" : "hidden"
459
+ },
460
+ autoPlay: !0,
461
+ playsInline: !0,
462
+ muted: !playLocalAudio,
463
+ children: jsx("track", {
464
+ kind: "captions",
465
+ src: void 0
466
+ })
467
+ }), showPoster && jsx("div", {
468
+ className: css.poster,
469
+ children: null != noVideoPoster ? noVideoPoster : jsx(DefaultNoVideoPoster, {
470
+ user: userProfile
471
+ })
472
+ }), showError && jsx("div", {
473
+ className: css.error,
474
+ children: cameraError
475
+ }), showControlBar && jsxs("div", {
476
+ ref: controlsElement,
477
+ className: css.controls,
478
+ onMouseEnter: () => {
479
+ canAutoHide && (controlsTimer.current && clearTimeout(controlsTimer.current), setHovered(!0));
480
+ },
481
+ onMouseLeave: revealControls,
482
+ children: [ jsx("div", {
483
+ className: css.controlsLeft,
484
+ children: showProfileButton && jsx(ToolbarButton, {
485
+ borderWidth: media.cameraOn ? 0 : 1,
486
+ icon: "users.user",
487
+ iconActive: "users.user",
488
+ active: profile,
489
+ label: "User Info",
490
+ disabled: !1,
491
+ onClick: () => {
492
+ setProfile(!profile), null == onChangeProfile || onChangeProfile(userProfile);
493
+ }
494
+ })
495
+ }), jsxs("div", {
496
+ className: css.controlsCenter,
497
+ children: [ jsx(ToolbarButton, {
498
+ borderWidth: media.cameraOn ? 0 : 1,
499
+ icon: "media.video-camera",
500
+ iconActive: "media.video-camera-slash",
501
+ active: !cameraOn,
502
+ label: cameraOn ? "Video" : "Off",
503
+ onClick: () => {
504
+ session.toggleVideo();
505
+ }
506
+ }), audio && jsx(ToolbarButton, {
507
+ borderWidth: media.cameraOn ? 0 : 1,
508
+ icon: "media.mic",
509
+ iconActive: "media.mic-slash",
510
+ active: micMuted,
511
+ label: micMuted ? "Muted" : "Mic",
512
+ disabled: !media.audioAvailable,
513
+ onClick: () => session.toggleMic()
514
+ }), jsx(ToolbarButton, {
515
+ borderWidth: media.cameraOn ? 0 : 1,
516
+ icon: "images.camera",
517
+ iconActive: "images.camera",
518
+ active: !!snapshot,
519
+ label: "Photo",
520
+ disabled: !cameraOn,
521
+ onClick: () => cameraOn && handleSnapshot({
522
+ toggle: !0
523
+ })
524
+ }) ]
525
+ }), jsx("div", {
526
+ className: css.controlsRight,
527
+ children: showSettingsButton && jsx(ToolbarButton, {
528
+ borderWidth: media.cameraOn ? 0 : 1,
529
+ icon: "basic.more-horiz-fill",
530
+ iconActive: "basic.more-horiz-fill",
531
+ active: settings,
532
+ label: "Settings",
533
+ disabled: !1,
534
+ onClick: () => {
535
+ setSettings(!settings), null == onChangeSettings || onChangeSettings(sessionSettings, deviceList);
536
+ }
537
+ })
538
+ }) ]
539
+ }) ]
540
+ }));
541
+ }));
542
+
543
+ /** Shared Slice control with the Camera action's controlled state. */ function ToolbarButton(props) {
544
+ const {borderWidth: borderWidth = 1, icon: icon, iconActive: iconActive, active: active, label: label, disabled: disabled, onClick: onClick, onMouseOver: onMouseOver} = props;
545
+ return jsx(ToggleButton, {
546
+ icon: icon,
547
+ iconSize: 20,
548
+ iconStrokeWidth: 1.5,
549
+ iconSelected: iconActive,
550
+ selected: active,
551
+ label: label,
552
+ labelOutside: !0,
553
+ labelPosition: "bottom",
554
+ disabled: disabled,
555
+ onFocus: onMouseOver,
556
+ onMouseOver: onMouseOver,
557
+ onClick: onClick,
558
+ borderRadius: 100,
559
+ textSize: "xs",
560
+ borderWidth: active ? 0 : borderWidth
561
+ });
562
+ }
563
+
564
+ /**
565
+ * the default poster image when no video is available
566
+ */ function DefaultNoVideoPoster(props) {
567
+ const {user: user, message: message = "Video is off"} = props;
568
+ return user ? jsx(Avatar, {
569
+ image: null == user ? void 0 : user.avatar,
570
+ name: user.name,
571
+ email: `${null == user ? void 0 : user.email}`,
572
+ size: "50%",
573
+ textSize: "xl"
574
+ }) : jsxs("span", {
575
+ className: css.offMessage,
576
+ children: [ jsx(Icon, {
577
+ name: "media.video-camera-slash",
578
+ size: 20,
579
+ strokeColor: "currentColor",
580
+ decorative: !0
581
+ }), message ]
582
+ });
583
+ }
584
+
585
+ export { Camera as C };
@@ -0,0 +1,76 @@
1
+ 'use client';
2
+ import { a as __rest } from "./tslib.es6-CpnJrDBv.mjs";
3
+
4
+ import { jsxs, jsx } from "react/jsx-runtime";
5
+
6
+ import React, { useState, useId, useEffect } from "react";
7
+
8
+ import { b as accessibleKeyDown } from "./misc-DI5GSqkt.mjs";
9
+
10
+ import { r as resolveColorProps } from "./resolveColorProps-CwAU25V-.mjs";
11
+
12
+ import { I as Icon } from "./Icon-43T0fkr6.mjs";
13
+
14
+ var css = {
15
+ wrapper: "CheckBox-module_wrapper__uRsjI",
16
+ icon: "CheckBox-module_icon__FoDJN",
17
+ label: "CheckBox-module_label__0AiBp",
18
+ xs: "CheckBox-module_xs__8HP4h type-module_body-xs-regular__ZAFft",
19
+ s: "CheckBox-module_s__qWZbK type-module_body-s-regular__vRHSP",
20
+ m: "CheckBox-module_m__cOkhr type-module_body-m-regular__LuQBA",
21
+ l: "CheckBox-module_l__wz2rr type-module_body-l-regular__lOYbg",
22
+ xl: "CheckBox-module_xl__exBbQ type-module_body-xl-regular__pF2kC"
23
+ };
24
+
25
+ const CheckBox = React.memo(rawProps => {
26
+ var _a;
27
+ const props = resolveColorProps(rawProps), {align: align = "middle", children: children, label: label, checked: checked = !1, disabled: disabled = !1, iconChecked: iconChecked = "system.checkbox-checked", iconUnChecked: iconUnChecked = "system.checkbox", iconPartial: iconPartial = "system.checkbox-partial", iconColor: iconColor, iconColorSelected: iconColorSelected, iconSize: iconSize = 20, gap: gap = 6, textColor: textColor, textSize: textSize = "m", textTopOffset: textTopOffset = 0, onChange: onChange, onClick: onClick, onKeyDown: onKeyDown, tabIndex: tabIndex = 0, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, className: className, style: style} = props, rest = __rest(props, [ "align", "children", "label", "checked", "disabled", "iconChecked", "iconUnChecked", "iconPartial", "iconColor", "iconColorSelected", "iconSize", "gap", "textColor", "textSize", "textTopOffset", "onChange", "onClick", "onKeyDown", "tabIndex", "aria-label", "aria-labelledby", "className", "style" ]), [state, setState] = useState(checked), contentId = useId(), content = null != label ? label : children, hasContent = null != content && !1 !== content;
28
+ useEffect(() => setState(checked), [ checked ]);
29
+ const iconName = !0 === state ? iconChecked : "mixed" === state ? iconPartial : iconUnChecked, selectedIconColor = !1 !== state ? iconColorSelected : void 0, resolvedIconColor = null !== (_a = null != selectedIconColor ? selectedIconColor : iconColor) && void 0 !== _a ? _a : disabled ? "var(--core-icon-disabled)" : "mixed" === state ? "var(--core-icon-primary)" : state ? "var(--core-text-special)" : "var(--core-icon-secondary)", resolvedTextColor = null != textColor ? textColor : disabled ? "var(--core-text-disabled)" : "var(--core-text-primary)", offset = Number.isFinite(textTopOffset) ? textTopOffset : 0, textShift = "top" === align ? Math.min(offset, 0) : "bottom" === align ? Math.max(offset, 0) : offset / 2, cssVars = {
30
+ "--cb-align": "top" === align ? "flex-start" : "bottom" === align ? "flex-end" : "center",
31
+ "--cb-icon-size": `${iconSize}px`,
32
+ "--cb-gap": `${gap}px`,
33
+ "--cb-text-color": resolvedTextColor,
34
+ "--cb-text-padding-top": `${Math.max(offset, 0)}px`,
35
+ "--cb-text-padding-bottom": `${Math.max(-offset, 0)}px`,
36
+ "--cb-text-shift": `${textShift}px`,
37
+ "--cb-cursor": disabled ? "default" : "pointer"
38
+ }, handleToggle = () => {
39
+ if (disabled) return;
40
+ const next = !0 !== state;
41
+ setState(next), null == onChange || onChange(next);
42
+ };
43
+ return jsxs("div", Object.assign({}, rest, {
44
+ className: `${css.wrapper}${className ? ` ${className}` : ""}`,
45
+ style: Object.assign(Object.assign({}, style), cssVars),
46
+ role: "checkbox",
47
+ "aria-checked": state,
48
+ "aria-disabled": disabled,
49
+ "aria-label": null != ariaLabel ? ariaLabel : ariaLabelledBy ? void 0 : label,
50
+ "aria-labelledby": null != ariaLabelledBy ? ariaLabelledBy : void 0 === ariaLabel && void 0 === label && hasContent ? contentId : void 0,
51
+ tabIndex: disabled ? -1 : tabIndex,
52
+ onClick: event => {
53
+ null == onClick || onClick(event), event.defaultPrevented || handleToggle();
54
+ },
55
+ onKeyDown: event => {
56
+ null == onKeyDown || onKeyDown(event), event.defaultPrevented || accessibleKeyDown(event, handleToggle);
57
+ },
58
+ children: [ jsx("span", {
59
+ className: css.icon,
60
+ "aria-hidden": "true",
61
+ children: jsx(Icon, {
62
+ name: iconName,
63
+ strokeColor: resolvedIconColor,
64
+ size: iconSize,
65
+ pointer: !1,
66
+ tabIndex: -1
67
+ })
68
+ }), hasContent && jsx("span", {
69
+ id: contentId,
70
+ className: `${css.label} ${css[textSize]}`,
71
+ children: content
72
+ }) ]
73
+ }));
74
+ });
75
+
76
+ export { CheckBox as C };