@moldable-ai/ui 0.2.22 → 0.2.24

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 (492) hide show
  1. package/dist/catalog/catalog-coverage.d.ts +1 -1
  2. package/dist/catalog/catalog-manifest.d.ts +1 -1
  3. package/dist/catalog/catalog-manifest.js +1 -1
  4. package/dist/catalog/component-catalog.d.ts +1 -1
  5. package/dist/catalog/component-catalog.js +2 -2
  6. package/dist/catalog/core-catalog-exclusions.d.ts +1 -1
  7. package/dist/catalog/core-catalog-exclusions.d.ts.map +1 -1
  8. package/dist/catalog/core-catalog-exclusions.js +1 -150
  9. package/dist/catalog/core-catalog.d.ts +1 -1
  10. package/dist/catalog/core-catalog.d.ts.map +1 -1
  11. package/dist/catalog/core-catalog.js +11 -7
  12. package/dist/catalog/core-collection-stories.d.ts +1 -1
  13. package/dist/catalog/core-collection-stories.d.ts.map +1 -1
  14. package/dist/catalog/core-collection-stories.js +40 -8
  15. package/dist/catalog/core-control-stories.d.ts +1 -1
  16. package/dist/catalog/core-control-stories.d.ts.map +1 -1
  17. package/dist/catalog/core-control-stories.js +48 -20
  18. package/dist/catalog/core-feedback-stories.d.ts +1 -1
  19. package/dist/catalog/core-feedback-stories.d.ts.map +1 -1
  20. package/dist/catalog/core-feedback-stories.js +89 -10
  21. package/dist/catalog/core-form-stories.d.ts +3 -0
  22. package/dist/catalog/core-form-stories.d.ts.map +1 -0
  23. package/dist/catalog/core-form-stories.js +56 -0
  24. package/dist/catalog/core-foundation-stories.d.ts +1 -1
  25. package/dist/catalog/core-foundation-stories.js +7 -7
  26. package/dist/catalog/core-layout-stories.d.ts +3 -0
  27. package/dist/catalog/core-layout-stories.d.ts.map +1 -0
  28. package/dist/catalog/core-layout-stories.js +78 -0
  29. package/dist/catalog/core-navigation-stories.d.ts +1 -1
  30. package/dist/catalog/core-navigation-stories.d.ts.map +1 -1
  31. package/dist/catalog/core-navigation-stories.js +25 -3
  32. package/dist/catalog/core-overlay-stories.d.ts +1 -1
  33. package/dist/catalog/core-overlay-stories.d.ts.map +1 -1
  34. package/dist/catalog/core-overlay-stories.js +113 -8
  35. package/dist/catalog/index.d.ts +6 -6
  36. package/dist/catalog/index.js +6 -6
  37. package/dist/components/app-error-boundary.js +2 -2
  38. package/dist/components/chat/chat-image-lightbox.js +3 -3
  39. package/dist/components/chat/chat-input.js +5 -5
  40. package/dist/components/chat/chat-message.js +17 -17
  41. package/dist/components/chat/chat-messages.d.ts +1 -1
  42. package/dist/components/chat/chat-messages.js +3 -3
  43. package/dist/components/chat/chat-panel.d.ts +6 -6
  44. package/dist/components/chat/chat-panel.d.ts.map +1 -1
  45. package/dist/components/chat/chat-panel.js +33 -33
  46. package/dist/components/chat/checkpoint-badge.js +3 -3
  47. package/dist/components/chat/conversation-history.d.ts.map +1 -1
  48. package/dist/components/chat/conversation-history.js +13 -13
  49. package/dist/components/chat/index.d.ts +20 -15
  50. package/dist/components/chat/index.d.ts.map +1 -1
  51. package/dist/components/chat/index.js +20 -15
  52. package/dist/components/chat/markdown.js +1 -1
  53. package/dist/components/chat/model-effort-selector.js +10 -10
  54. package/dist/components/chat/model-selector.js +4 -4
  55. package/dist/components/chat/reasoning-effort-selector.js +4 -4
  56. package/dist/components/chat/restore-dialog.js +3 -3
  57. package/dist/components/chat/thinking-timeline.js +2 -2
  58. package/dist/components/chat/tool-approval.d.ts +1 -1
  59. package/dist/components/chat/tool-approval.d.ts.map +1 -1
  60. package/dist/components/chat/tool-approval.js +9 -9
  61. package/dist/components/chat/tool-handlers.d.ts +2 -2
  62. package/dist/components/chat/tool-handlers.js +90 -90
  63. package/dist/components/chat/voice-orb-audio.d.ts +16 -0
  64. package/dist/components/chat/voice-orb-audio.d.ts.map +1 -0
  65. package/dist/components/chat/voice-orb-audio.js +110 -0
  66. package/dist/components/chat/voice-orb-renderer.d.ts +51 -0
  67. package/dist/components/chat/voice-orb-renderer.d.ts.map +1 -0
  68. package/dist/components/chat/voice-orb-renderer.js +410 -0
  69. package/dist/components/chat/voice-orb-shaders.d.ts +3 -0
  70. package/dist/components/chat/voice-orb-shaders.d.ts.map +1 -0
  71. package/dist/components/chat/voice-orb-shaders.js +355 -0
  72. package/dist/components/chat/voice-orb-types.d.ts +24 -0
  73. package/dist/components/chat/voice-orb-types.d.ts.map +1 -0
  74. package/dist/components/chat/voice-orb-types.js +73 -0
  75. package/dist/components/chat/voice-orb.d.ts +20 -0
  76. package/dist/components/chat/voice-orb.d.ts.map +1 -0
  77. package/dist/components/chat/voice-orb.js +67 -0
  78. package/dist/components/code-block.js +1 -1
  79. package/dist/components/hardware/bluetooth-panel.d.ts +2 -2
  80. package/dist/components/hardware/bluetooth-panel.js +10 -10
  81. package/dist/components/hardware/camera-preview.js +6 -6
  82. package/dist/components/hardware/capability-badge.d.ts +2 -2
  83. package/dist/components/hardware/capability-badge.js +2 -2
  84. package/dist/components/hardware/capability-matrix.d.ts +1 -1
  85. package/dist/components/hardware/capability-matrix.js +5 -5
  86. package/dist/components/hardware/clipboard-button.d.ts +1 -1
  87. package/dist/components/hardware/clipboard-button.js +2 -2
  88. package/dist/components/hardware/device-list.js +1 -1
  89. package/dist/components/hardware/display-map.d.ts +1 -1
  90. package/dist/components/hardware/display-map.js +7 -7
  91. package/dist/components/hardware/haptic-button.d.ts +2 -2
  92. package/dist/components/hardware/haptic-button.js +3 -3
  93. package/dist/components/hardware/hardware-panel.js +1 -1
  94. package/dist/components/hardware/hid-panel.d.ts +2 -2
  95. package/dist/components/hardware/hid-panel.js +10 -10
  96. package/dist/components/hardware/index.d.ts +26 -26
  97. package/dist/components/hardware/index.js +26 -26
  98. package/dist/components/hardware/live-indicator.js +1 -1
  99. package/dist/components/hardware/local-auth-button.d.ts +2 -2
  100. package/dist/components/hardware/local-auth-button.js +4 -4
  101. package/dist/components/hardware/location-panel.d.ts +1 -1
  102. package/dist/components/hardware/location-panel.js +6 -6
  103. package/dist/components/hardware/microphone-meter.js +7 -7
  104. package/dist/components/hardware/midi-monitor.d.ts +2 -2
  105. package/dist/components/hardware/midi-monitor.js +9 -9
  106. package/dist/components/hardware/notification-panel.d.ts +1 -1
  107. package/dist/components/hardware/notification-panel.js +8 -8
  108. package/dist/components/hardware/power-blocker-controller.d.ts +1 -1
  109. package/dist/components/hardware/power-blocker-controller.js +1 -1
  110. package/dist/components/hardware/power-panel.d.ts +1 -1
  111. package/dist/components/hardware/power-panel.js +9 -9
  112. package/dist/components/hardware/readout.js +1 -1
  113. package/dist/components/hardware/screen-share-preview.js +5 -5
  114. package/dist/components/hardware/secure-storage-panel.d.ts +1 -1
  115. package/dist/components/hardware/secure-storage-panel.js +9 -9
  116. package/dist/components/hardware/serial-console.d.ts +2 -2
  117. package/dist/components/hardware/serial-console.js +10 -10
  118. package/dist/components/hardware/shortcut-recorder.d.ts +1 -1
  119. package/dist/components/hardware/shortcut-recorder.js +4 -4
  120. package/dist/components/hardware/stream-log.js +1 -1
  121. package/dist/components/hardware/system-audio-monitor.d.ts +1 -1
  122. package/dist/components/hardware/system-audio-monitor.js +9 -9
  123. package/dist/components/hardware/usb-panel.d.ts +5 -5
  124. package/dist/components/hardware/usb-panel.js +10 -10
  125. package/dist/components/hardware/use-capability.d.ts +1 -1
  126. package/dist/components/hardware/use-capability.js +1 -1
  127. package/dist/components/markdown.js +5 -5
  128. package/dist/components/native-capabilities/bluetooth-panel.d.ts +2 -2
  129. package/dist/components/native-capabilities/bluetooth-panel.d.ts.map +1 -1
  130. package/dist/components/native-capabilities/bluetooth-panel.js +17 -17
  131. package/dist/components/native-capabilities/camera-preview.d.ts.map +1 -1
  132. package/dist/components/native-capabilities/camera-preview.js +7 -7
  133. package/dist/components/native-capabilities/capability-badge.d.ts +2 -2
  134. package/dist/components/native-capabilities/capability-badge.js +4 -4
  135. package/dist/components/native-capabilities/capability-matrix.d.ts +1 -1
  136. package/dist/components/native-capabilities/capability-matrix.js +7 -7
  137. package/dist/components/native-capabilities/clipboard-button.d.ts +1 -1
  138. package/dist/components/native-capabilities/clipboard-button.js +2 -2
  139. package/dist/components/native-capabilities/device-list.js +4 -4
  140. package/dist/components/native-capabilities/display-map.d.ts +1 -1
  141. package/dist/components/native-capabilities/display-map.d.ts.map +1 -1
  142. package/dist/components/native-capabilities/display-map.js +11 -11
  143. package/dist/components/native-capabilities/haptic-button.d.ts +2 -2
  144. package/dist/components/native-capabilities/haptic-button.js +3 -3
  145. package/dist/components/native-capabilities/hid-panel.d.ts +2 -2
  146. package/dist/components/native-capabilities/hid-panel.d.ts.map +1 -1
  147. package/dist/components/native-capabilities/hid-panel.js +14 -14
  148. package/dist/components/native-capabilities/index.d.ts +26 -26
  149. package/dist/components/native-capabilities/index.js +26 -26
  150. package/dist/components/native-capabilities/live-indicator.js +3 -3
  151. package/dist/components/native-capabilities/local-auth-button.d.ts +2 -2
  152. package/dist/components/native-capabilities/local-auth-button.js +4 -4
  153. package/dist/components/native-capabilities/location-panel.d.ts +1 -1
  154. package/dist/components/native-capabilities/location-panel.d.ts.map +1 -1
  155. package/dist/components/native-capabilities/location-panel.js +8 -8
  156. package/dist/components/native-capabilities/microphone-meter.js +9 -9
  157. package/dist/components/native-capabilities/midi-monitor.d.ts +2 -2
  158. package/dist/components/native-capabilities/midi-monitor.d.ts.map +1 -1
  159. package/dist/components/native-capabilities/midi-monitor.js +11 -11
  160. package/dist/components/native-capabilities/native-capability-panel.js +6 -6
  161. package/dist/components/native-capabilities/notification-panel.d.ts +1 -1
  162. package/dist/components/native-capabilities/notification-panel.js +9 -9
  163. package/dist/components/native-capabilities/power-blocker-controller.d.ts +1 -1
  164. package/dist/components/native-capabilities/power-blocker-controller.js +1 -1
  165. package/dist/components/native-capabilities/power-panel.d.ts +1 -1
  166. package/dist/components/native-capabilities/power-panel.d.ts.map +1 -1
  167. package/dist/components/native-capabilities/power-panel.js +12 -12
  168. package/dist/components/native-capabilities/readout.d.ts.map +1 -1
  169. package/dist/components/native-capabilities/readout.js +2 -2
  170. package/dist/components/native-capabilities/screen-share-preview.js +6 -6
  171. package/dist/components/native-capabilities/secure-storage-panel.d.ts +1 -1
  172. package/dist/components/native-capabilities/secure-storage-panel.d.ts.map +1 -1
  173. package/dist/components/native-capabilities/secure-storage-panel.js +11 -11
  174. package/dist/components/native-capabilities/serial-console.d.ts +2 -2
  175. package/dist/components/native-capabilities/serial-console.d.ts.map +1 -1
  176. package/dist/components/native-capabilities/serial-console.js +11 -11
  177. package/dist/components/native-capabilities/shortcut-recorder.d.ts +1 -1
  178. package/dist/components/native-capabilities/shortcut-recorder.js +5 -5
  179. package/dist/components/native-capabilities/stream-log.js +3 -3
  180. package/dist/components/native-capabilities/system-audio-monitor.d.ts +1 -1
  181. package/dist/components/native-capabilities/system-audio-monitor.js +12 -12
  182. package/dist/components/native-capabilities/usb-panel.d.ts +5 -5
  183. package/dist/components/native-capabilities/usb-panel.js +15 -15
  184. package/dist/components/native-capabilities/use-capability.d.ts +1 -1
  185. package/dist/components/native-capabilities/use-capability.js +1 -1
  186. package/dist/components/rich-media-player.js +3 -3
  187. package/dist/components/ui/accordion.js +3 -3
  188. package/dist/components/ui/alert-dialog.d.ts +2 -2
  189. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  190. package/dist/components/ui/alert-dialog.js +16 -10
  191. package/dist/components/ui/alert.d.ts +1 -1
  192. package/dist/components/ui/alert.d.ts.map +1 -1
  193. package/dist/components/ui/alert.js +11 -11
  194. package/dist/components/ui/app-frame.d.ts +7 -1
  195. package/dist/components/ui/app-frame.d.ts.map +1 -1
  196. package/dist/components/ui/app-frame.js +52 -16
  197. package/dist/components/ui/avatar.js +5 -5
  198. package/dist/components/ui/badge.d.ts +1 -1
  199. package/dist/components/ui/badge.js +4 -4
  200. package/dist/components/ui/breadcrumb.js +2 -2
  201. package/dist/components/ui/button-group.d.ts +1 -1
  202. package/dist/components/ui/button-group.js +4 -4
  203. package/dist/components/ui/button.d.ts +1 -1
  204. package/dist/components/ui/button.d.ts.map +1 -1
  205. package/dist/components/ui/button.js +16 -16
  206. package/dist/components/ui/calendar.d.ts +1 -1
  207. package/dist/components/ui/calendar.d.ts.map +1 -1
  208. package/dist/components/ui/calendar.js +15 -15
  209. package/dist/components/ui/card.js +3 -3
  210. package/dist/components/ui/carousel.d.ts +1 -1
  211. package/dist/components/ui/carousel.js +4 -4
  212. package/dist/components/ui/chart.js +5 -5
  213. package/dist/components/ui/checkbox.d.ts.map +1 -1
  214. package/dist/components/ui/checkbox.js +2 -2
  215. package/dist/components/ui/collapsible.js +3 -3
  216. package/dist/components/ui/color-well.js +2 -2
  217. package/dist/components/ui/combobox.js +9 -9
  218. package/dist/components/ui/command.d.ts +1 -1
  219. package/dist/components/ui/command.d.ts.map +1 -1
  220. package/dist/components/ui/command.js +9 -9
  221. package/dist/components/ui/confirm-dialog.d.ts +1 -1
  222. package/dist/components/ui/confirm-dialog.js +2 -2
  223. package/dist/components/ui/context-menu.d.ts +16 -5
  224. package/dist/components/ui/context-menu.d.ts.map +1 -1
  225. package/dist/components/ui/context-menu.js +92 -16
  226. package/dist/components/ui/date-field.d.ts.map +1 -1
  227. package/dist/components/ui/date-field.js +8 -8
  228. package/dist/components/ui/date-picker.d.ts +2 -2
  229. package/dist/components/ui/date-picker.js +7 -7
  230. package/dist/components/ui/dialog.d.ts +2 -2
  231. package/dist/components/ui/dialog.d.ts.map +1 -1
  232. package/dist/components/ui/dialog.js +14 -8
  233. package/dist/components/ui/drawer.js +4 -4
  234. package/dist/components/ui/dropdown-menu.d.ts +15 -5
  235. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  236. package/dist/components/ui/dropdown-menu.js +98 -16
  237. package/dist/components/ui/edge-fade.js +1 -1
  238. package/dist/components/ui/empty.d.ts +1 -1
  239. package/dist/components/ui/empty.js +5 -5
  240. package/dist/components/ui/error-boundary-view.d.ts.map +1 -1
  241. package/dist/components/ui/error-boundary-view.js +3 -3
  242. package/dist/components/ui/field.d.ts +1 -1
  243. package/dist/components/ui/field.d.ts.map +1 -1
  244. package/dist/components/ui/field.js +9 -9
  245. package/dist/components/ui/form.js +4 -4
  246. package/dist/components/ui/grid.d.ts.map +1 -1
  247. package/dist/components/ui/grid.js +5 -5
  248. package/dist/components/ui/hover-card.js +2 -2
  249. package/dist/components/ui/icon-button.d.ts +1 -1
  250. package/dist/components/ui/icon-button.js +3 -3
  251. package/dist/components/ui/index.d.ts +77 -77
  252. package/dist/components/ui/index.js +77 -77
  253. package/dist/components/ui/input-group.d.ts +2 -2
  254. package/dist/components/ui/input-group.js +14 -14
  255. package/dist/components/ui/input-otp.js +3 -3
  256. package/dist/components/ui/input.js +2 -2
  257. package/dist/components/ui/inspector.d.ts +1 -1
  258. package/dist/components/ui/inspector.js +6 -6
  259. package/dist/components/ui/item.d.ts +1 -1
  260. package/dist/components/ui/item.js +7 -7
  261. package/dist/components/ui/kbd.js +2 -2
  262. package/dist/components/ui/label.js +2 -2
  263. package/dist/components/ui/list.d.ts.map +1 -1
  264. package/dist/components/ui/list.js +5 -5
  265. package/dist/components/ui/material.js +3 -3
  266. package/dist/components/ui/menu-items.d.ts +28 -0
  267. package/dist/components/ui/menu-items.d.ts.map +1 -0
  268. package/dist/components/ui/menu-items.js +111 -0
  269. package/dist/components/ui/menubar.js +11 -11
  270. package/dist/components/ui/message-scroller-controller.d.ts +1 -1
  271. package/dist/components/ui/message-scroller-controller.js +1 -1
  272. package/dist/components/ui/message-scroller-primitive.d.ts +1 -1
  273. package/dist/components/ui/message-scroller-primitive.js +1 -1
  274. package/dist/components/ui/message-scroller.d.ts +2 -2
  275. package/dist/components/ui/message-scroller.js +3 -3
  276. package/dist/components/ui/navigation-button-group.d.ts +2 -2
  277. package/dist/components/ui/navigation-button-group.js +2 -2
  278. package/dist/components/ui/navigation-menu.js +6 -6
  279. package/dist/components/ui/notification-dot.js +2 -2
  280. package/dist/components/ui/number-input.js +8 -8
  281. package/dist/components/ui/pagination.d.ts +1 -1
  282. package/dist/components/ui/pagination.js +2 -2
  283. package/dist/components/ui/panel.d.ts +1 -1
  284. package/dist/components/ui/panel.js +3 -3
  285. package/dist/components/ui/popover.d.ts +1 -1
  286. package/dist/components/ui/popover.js +3 -3
  287. package/dist/components/ui/progress.js +2 -2
  288. package/dist/components/ui/radio-group.d.ts.map +1 -1
  289. package/dist/components/ui/radio-group.js +2 -2
  290. package/dist/components/ui/resizable.d.ts +1 -1
  291. package/dist/components/ui/resizable.d.ts.map +1 -1
  292. package/dist/components/ui/resizable.js +15 -4
  293. package/dist/components/ui/scroll-area.d.ts.map +1 -1
  294. package/dist/components/ui/scroll-area.js +3 -3
  295. package/dist/components/ui/search-field.js +7 -7
  296. package/dist/components/ui/segmented-control.js +9 -9
  297. package/dist/components/ui/select.d.ts.map +1 -1
  298. package/dist/components/ui/select.js +6 -6
  299. package/dist/components/ui/separator.js +1 -1
  300. package/dist/components/ui/sheet.js +4 -4
  301. package/dist/components/ui/sidebar.d.ts +5 -5
  302. package/dist/components/ui/sidebar.d.ts.map +1 -1
  303. package/dist/components/ui/sidebar.js +111 -24
  304. package/dist/components/ui/skeleton.js +2 -2
  305. package/dist/components/ui/slider.d.ts +3 -1
  306. package/dist/components/ui/slider.d.ts.map +1 -1
  307. package/dist/components/ui/slider.js +3 -3
  308. package/dist/components/ui/sonner.js +1 -1
  309. package/dist/components/ui/spinner.js +1 -1
  310. package/dist/components/ui/split-view.js +1 -1
  311. package/dist/components/ui/status.d.ts +1 -1
  312. package/dist/components/ui/status.d.ts.map +1 -1
  313. package/dist/components/ui/status.js +10 -9
  314. package/dist/components/ui/switch.js +2 -2
  315. package/dist/components/ui/table.d.ts.map +1 -1
  316. package/dist/components/ui/table.js +7 -7
  317. package/dist/components/ui/tabs.js +3 -3
  318. package/dist/components/ui/text.d.ts +2 -2
  319. package/dist/components/ui/text.js +19 -19
  320. package/dist/components/ui/textarea.js +2 -2
  321. package/dist/components/ui/toggle-group.d.ts +1 -1
  322. package/dist/components/ui/toggle-group.js +4 -4
  323. package/dist/components/ui/toggle.d.ts +1 -1
  324. package/dist/components/ui/toggle.js +10 -10
  325. package/dist/components/ui/toolbar.d.ts +7 -7
  326. package/dist/components/ui/toolbar.js +7 -7
  327. package/dist/components/ui/tooltip.d.ts +2 -2
  328. package/dist/components/ui/tooltip.js +5 -5
  329. package/dist/index.d.ts +21 -20
  330. package/dist/index.d.ts.map +1 -1
  331. package/dist/index.js +21 -20
  332. package/dist/lib/frame-lifecycle.d.ts +27 -0
  333. package/dist/lib/frame-lifecycle.d.ts.map +1 -1
  334. package/dist/lib/frame-lifecycle.js +136 -0
  335. package/dist/lib/host-date-time-picker.d.ts +1 -1
  336. package/dist/lib/host-date-time-picker.js +1 -1
  337. package/dist/lib/host-file-dialog.d.ts +1 -1
  338. package/dist/lib/host-file-dialog.js +1 -1
  339. package/dist/lib/host-native-menu.d.ts +48 -7
  340. package/dist/lib/host-native-menu.d.ts.map +1 -1
  341. package/dist/lib/host-native-menu.js +56 -1
  342. package/dist/lib/host-services.js +1 -1
  343. package/dist/lib/host-share.d.ts +1 -1
  344. package/dist/lib/host-share.js +1 -1
  345. package/dist/lib/host-web-surface.d.ts +31 -0
  346. package/dist/lib/host-web-surface.d.ts.map +1 -0
  347. package/dist/lib/host-web-surface.js +116 -0
  348. package/dist/lib/native-capabilities/access.d.ts +2 -2
  349. package/dist/lib/native-capabilities/access.js +2 -2
  350. package/dist/lib/native-capabilities/bluetooth-access.d.ts +1 -1
  351. package/dist/lib/native-capabilities/bluetooth-access.js +2 -2
  352. package/dist/lib/native-capabilities/bluetooth-connection.d.ts +1 -1
  353. package/dist/lib/native-capabilities/bluetooth-connection.js +1 -1
  354. package/dist/lib/native-capabilities/bluetooth-gatt.d.ts +1 -1
  355. package/dist/lib/native-capabilities/bluetooth-gatt.js +1 -1
  356. package/dist/lib/native-capabilities/bluetooth-internal.d.ts +2 -2
  357. package/dist/lib/native-capabilities/bluetooth-internal.js +1 -1
  358. package/dist/lib/native-capabilities/bluetooth-native-fallback.d.ts +2 -2
  359. package/dist/lib/native-capabilities/bluetooth-native-fallback.js +2 -2
  360. package/dist/lib/native-capabilities/bluetooth.d.ts +6 -6
  361. package/dist/lib/native-capabilities/bluetooth.js +4 -4
  362. package/dist/lib/native-capabilities/bridge.d.ts +1 -1
  363. package/dist/lib/native-capabilities/bridge.js +2 -2
  364. package/dist/lib/native-capabilities/capabilities.d.ts +1 -1
  365. package/dist/lib/native-capabilities/capabilities.js +1 -1
  366. package/dist/lib/native-capabilities/clipboard.js +2 -2
  367. package/dist/lib/native-capabilities/device-io-errors.d.ts +1 -1
  368. package/dist/lib/native-capabilities/device-io-errors.js +1 -1
  369. package/dist/lib/native-capabilities/displays.d.ts +1 -1
  370. package/dist/lib/native-capabilities/displays.js +1 -1
  371. package/dist/lib/native-capabilities/global-shortcuts.d.ts +2 -2
  372. package/dist/lib/native-capabilities/global-shortcuts.js +1 -1
  373. package/dist/lib/native-capabilities/haptics.d.ts +1 -1
  374. package/dist/lib/native-capabilities/haptics.js +1 -1
  375. package/dist/lib/native-capabilities/hid-native.d.ts +2 -2
  376. package/dist/lib/native-capabilities/hid-native.js +3 -3
  377. package/dist/lib/native-capabilities/hid.js +5 -5
  378. package/dist/lib/native-capabilities/index.d.ts +39 -39
  379. package/dist/lib/native-capabilities/index.js +21 -21
  380. package/dist/lib/native-capabilities/local-authentication.d.ts +1 -1
  381. package/dist/lib/native-capabilities/local-authentication.js +1 -1
  382. package/dist/lib/native-capabilities/location.js +1 -1
  383. package/dist/lib/native-capabilities/media-permissions.d.ts +1 -1
  384. package/dist/lib/native-capabilities/media-permissions.js +1 -1
  385. package/dist/lib/native-capabilities/media.d.ts +1 -1
  386. package/dist/lib/native-capabilities/media.js +2 -2
  387. package/dist/lib/native-capabilities/midi-access.d.ts +1 -1
  388. package/dist/lib/native-capabilities/midi-access.js +3 -3
  389. package/dist/lib/native-capabilities/midi-internal.d.ts +1 -1
  390. package/dist/lib/native-capabilities/midi-internal.js +1 -1
  391. package/dist/lib/native-capabilities/midi-native-fallback.d.ts +1 -1
  392. package/dist/lib/native-capabilities/midi-native-fallback.js +2 -2
  393. package/dist/lib/native-capabilities/midi-ports.d.ts +1 -1
  394. package/dist/lib/native-capabilities/midi-ports.js +1 -1
  395. package/dist/lib/native-capabilities/midi.d.ts +5 -5
  396. package/dist/lib/native-capabilities/midi.js +3 -3
  397. package/dist/lib/native-capabilities/native-device-io.d.ts +1 -1
  398. package/dist/lib/native-capabilities/native-device-io.js +1 -1
  399. package/dist/lib/native-capabilities/native-device-lifecycle.js +1 -1
  400. package/dist/lib/native-capabilities/notifications.d.ts +2 -2
  401. package/dist/lib/native-capabilities/notifications.js +1 -1
  402. package/dist/lib/native-capabilities/power-session.d.ts +2 -2
  403. package/dist/lib/native-capabilities/power-session.js +1 -1
  404. package/dist/lib/native-capabilities/secure-storage.d.ts +1 -1
  405. package/dist/lib/native-capabilities/secure-storage.js +1 -1
  406. package/dist/lib/native-capabilities/serial-native.d.ts +2 -2
  407. package/dist/lib/native-capabilities/serial-native.js +3 -3
  408. package/dist/lib/native-capabilities/serial.js +5 -5
  409. package/dist/lib/native-capabilities/system-audio.d.ts +1 -1
  410. package/dist/lib/native-capabilities/system-audio.js +1 -1
  411. package/dist/lib/native-capabilities/usb-native.d.ts +2 -2
  412. package/dist/lib/native-capabilities/usb-native.js +3 -3
  413. package/dist/lib/native-capabilities/usb.js +5 -5
  414. package/dist/lib/native-hardware/bluetooth-access.d.ts +1 -1
  415. package/dist/lib/native-hardware/bluetooth-access.js +1 -1
  416. package/dist/lib/native-hardware/bluetooth-connection.d.ts +1 -1
  417. package/dist/lib/native-hardware/bluetooth-connection.js +1 -1
  418. package/dist/lib/native-hardware/bluetooth-gatt.d.ts +1 -1
  419. package/dist/lib/native-hardware/bluetooth-gatt.js +1 -1
  420. package/dist/lib/native-hardware/bluetooth-internal.d.ts +2 -2
  421. package/dist/lib/native-hardware/bluetooth-internal.js +1 -1
  422. package/dist/lib/native-hardware/bluetooth-native-fallback.d.ts +2 -2
  423. package/dist/lib/native-hardware/bluetooth-native-fallback.js +2 -2
  424. package/dist/lib/native-hardware/bluetooth.d.ts +6 -6
  425. package/dist/lib/native-hardware/bluetooth.js +4 -4
  426. package/dist/lib/native-hardware/bridge.d.ts +1 -1
  427. package/dist/lib/native-hardware/bridge.js +2 -2
  428. package/dist/lib/native-hardware/capabilities.d.ts +1 -1
  429. package/dist/lib/native-hardware/capabilities.js +1 -1
  430. package/dist/lib/native-hardware/clipboard.js +1 -1
  431. package/dist/lib/native-hardware/device-io-errors.d.ts +1 -1
  432. package/dist/lib/native-hardware/device-io-errors.js +1 -1
  433. package/dist/lib/native-hardware/displays.d.ts +1 -1
  434. package/dist/lib/native-hardware/displays.js +1 -1
  435. package/dist/lib/native-hardware/global-shortcuts.d.ts +2 -2
  436. package/dist/lib/native-hardware/global-shortcuts.js +1 -1
  437. package/dist/lib/native-hardware/haptics.d.ts +1 -1
  438. package/dist/lib/native-hardware/haptics.js +1 -1
  439. package/dist/lib/native-hardware/hid-native.d.ts +2 -2
  440. package/dist/lib/native-hardware/hid-native.js +3 -3
  441. package/dist/lib/native-hardware/hid.js +4 -4
  442. package/dist/lib/native-hardware/index.d.ts +37 -37
  443. package/dist/lib/native-hardware/index.js +20 -20
  444. package/dist/lib/native-hardware/local-authentication.d.ts +1 -1
  445. package/dist/lib/native-hardware/local-authentication.js +1 -1
  446. package/dist/lib/native-hardware/location.js +1 -1
  447. package/dist/lib/native-hardware/media-permissions.d.ts +1 -1
  448. package/dist/lib/native-hardware/media-permissions.js +1 -1
  449. package/dist/lib/native-hardware/media.d.ts +1 -1
  450. package/dist/lib/native-hardware/media.js +1 -1
  451. package/dist/lib/native-hardware/midi-access.d.ts +1 -1
  452. package/dist/lib/native-hardware/midi-access.js +2 -2
  453. package/dist/lib/native-hardware/midi-internal.d.ts +1 -1
  454. package/dist/lib/native-hardware/midi-internal.js +1 -1
  455. package/dist/lib/native-hardware/midi-native-fallback.d.ts +1 -1
  456. package/dist/lib/native-hardware/midi-native-fallback.js +2 -2
  457. package/dist/lib/native-hardware/midi-ports.d.ts +1 -1
  458. package/dist/lib/native-hardware/midi-ports.js +1 -1
  459. package/dist/lib/native-hardware/midi.d.ts +5 -5
  460. package/dist/lib/native-hardware/midi.js +3 -3
  461. package/dist/lib/native-hardware/native-device-io.d.ts +1 -1
  462. package/dist/lib/native-hardware/native-device-io.js +1 -1
  463. package/dist/lib/native-hardware/native-device-lifecycle.js +1 -1
  464. package/dist/lib/native-hardware/notifications.d.ts +2 -2
  465. package/dist/lib/native-hardware/notifications.js +1 -1
  466. package/dist/lib/native-hardware/power-session.d.ts +2 -2
  467. package/dist/lib/native-hardware/power-session.js +1 -1
  468. package/dist/lib/native-hardware/secure-storage.d.ts +1 -1
  469. package/dist/lib/native-hardware/secure-storage.js +1 -1
  470. package/dist/lib/native-hardware/serial-native.d.ts +2 -2
  471. package/dist/lib/native-hardware/serial-native.js +3 -3
  472. package/dist/lib/native-hardware/serial.js +4 -4
  473. package/dist/lib/native-hardware/system-audio.d.ts +1 -1
  474. package/dist/lib/native-hardware/system-audio.js +1 -1
  475. package/dist/lib/native-hardware/usb-native.d.ts +2 -2
  476. package/dist/lib/native-hardware/usb-native.js +3 -3
  477. package/dist/lib/native-hardware/usb.js +4 -4
  478. package/dist/lib/theme.js +1 -1
  479. package/docs/design-tokens.md +28 -6
  480. package/docs/foundations.md +4 -2
  481. package/package.json +4 -2
  482. package/src/components/ui/confirm-dialog.md +97 -0
  483. package/src/components/ui/context-menu.md +158 -0
  484. package/src/components/ui/dropdown-menu.md +165 -0
  485. package/src/components/ui/hover-card.md +90 -0
  486. package/src/components/ui/select.md +111 -0
  487. package/src/lib/host-date-time-picker.md +29 -0
  488. package/src/lib/host-file-dialog.md +76 -0
  489. package/src/lib/host-native-menu.md +67 -0
  490. package/src/lib/host-share.md +36 -0
  491. package/src/lib/host-web-surface.md +66 -0
  492. package/src/styles/index.css +141 -68
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { Button } from '../ui/button';
2
+ import { Button } from '../ui/button.js';
3
3
  /**
4
4
  * Clipboard state machine behind `ClipboardCopyButton`. Prefers the Moldable
5
5
  * bridge helpers and falls back to the plain web Clipboard API, so it never
@@ -2,8 +2,8 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { Check, Copy } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { readMoldableClipboardText, writeMoldableClipboardText, } from '../../lib/native-hardware';
6
- import { Button } from '../ui/button';
5
+ import { readMoldableClipboardText, writeMoldableClipboardText, } from '../../lib/native-hardware/index.js';
6
+ import { Button } from '../ui/button.js';
7
7
  /**
8
8
  * Clipboard state machine behind `ClipboardCopyButton`. Prefers the Moldable
9
9
  * bridge helpers and falls back to the plain web Clipboard API, so it never
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { cn } from '../../lib/utils';
3
+ import { cn } from '../../lib/utils.js';
4
4
  function DeviceList({ className, ...props }) {
5
5
  return (_jsx("div", { "data-slot": "device-list", role: "list", className: cn('divide-border divide-y overflow-hidden rounded-lg border', className), ...props }));
6
6
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { type MoldableDisplay } from '../../lib/native-hardware';
2
+ import { type MoldableDisplay } from '../../lib/native-hardware/index.js';
3
3
  export type MoldableDisplaysStatus = 'loading' | 'ready' | 'unavailable';
4
4
  /**
5
5
  * Display arrangement state behind `DisplayMap`. One-shot query by design —
@@ -2,13 +2,13 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { Monitor, RefreshCw } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { getMoldableDisplays, } from '../../lib/native-hardware';
6
- import { cn } from '../../lib/utils';
7
- import { Button } from '../ui/button';
8
- import { Spinner } from '../ui/spinner';
9
- import { CapabilityBadge } from './capability-badge';
10
- import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel';
11
- import { Readout, ReadoutItem } from './readout';
5
+ import { getMoldableDisplays, } from '../../lib/native-hardware/index.js';
6
+ import { cn } from '../../lib/utils.js';
7
+ import { Button } from '../ui/button.js';
8
+ import { Spinner } from '../ui/spinner.js';
9
+ import { CapabilityBadge } from './capability-badge.js';
10
+ import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel.js';
11
+ import { Readout, ReadoutItem } from './readout.js';
12
12
  /**
13
13
  * Display arrangement state behind `DisplayMap`. One-shot query by design —
14
14
  * the host does not expose display change events.
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { type MoldableHapticAvailability, type MoldableHapticPattern } from '../../lib/native-hardware';
3
- import { Button } from '../ui/button';
2
+ import { type MoldableHapticAvailability, type MoldableHapticPattern } from '../../lib/native-hardware/index.js';
3
+ import { Button } from '../ui/button.js';
4
4
  /**
5
5
  * Haptic feedback state behind `HapticButton`. `perform` never throws — it
6
6
  * resolves `false` when the host rejects or is unavailable.
@@ -2,9 +2,9 @@
2
2
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { Vibrate } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { getMoldableHapticAvailability, performMoldableHapticFeedback, } from '../../lib/native-hardware';
6
- import { cn } from '../../lib/utils';
7
- import { Button } from '../ui/button';
5
+ import { getMoldableHapticAvailability, performMoldableHapticFeedback, } from '../../lib/native-hardware/index.js';
6
+ import { cn } from '../../lib/utils.js';
7
+ import { Button } from '../ui/button.js';
8
8
  const EMPTY_PATTERNS = [];
9
9
  /**
10
10
  * Haptic feedback state behind `HapticButton`. `perform` never throws — it
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
- import { cn } from '../../lib/utils';
3
+ import { cn } from '../../lib/utils.js';
4
4
  function HardwarePanel({ className, ...props }) {
5
5
  return (_jsx("div", { "data-slot": "hardware-panel", className: cn('bg-card text-card-foreground shadow-xs flex flex-col overflow-hidden rounded-xl border', className), ...props }));
6
6
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { type MoldableHidDevice, type MoldableHidDeviceFilter, type MoldableHidInputReportEvent } from '../../lib/native-hardware';
2
+ import { type MoldableHidDevice, type MoldableHidDeviceFilter, type MoldableHidInputReportEvent } from '../../lib/native-hardware/index.js';
3
3
  export type MoldableHidStatus = 'idle' | 'requesting' | 'error';
4
4
  export interface UseMoldableHidOptions {
5
5
  onInputReport?: (event: MoldableHidInputReportEvent) => void;
@@ -14,7 +14,7 @@ export declare function useMoldableHid(options?: UseMoldableHidOptions): {
14
14
  status: MoldableHidStatus;
15
15
  error: Error | null;
16
16
  openIds: string[];
17
- entries: import("./stream-log").StreamLogEntry[];
17
+ entries: import("./stream-log.js").StreamLogEntry[];
18
18
  deviceId: (device: MoldableHidDevice) => string;
19
19
  refresh: () => Promise<void>;
20
20
  request: (filters?: readonly MoldableHidDeviceFilter[]) => Promise<void>;
@@ -2,16 +2,16 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { Gamepad2, RefreshCw, Trash2 } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { NativeHardwareBridgeError, closeMoldableHidDevice, forgetMoldableHidDevice, getMoldableHidDevices, listenForMoldableHidInputReports, openMoldableHidDevice, receiveMoldableHidFeatureReport, requestMoldableHidDevices, sendMoldableHidFeatureReport, sendMoldableHidReport, } from '../../lib/native-hardware';
6
- import { Button } from '../ui/button';
7
- import { Input } from '../ui/input';
8
- import { Spinner } from '../ui/spinner';
9
- import { CapabilityBadge } from './capability-badge';
10
- import { formatHexBytes, parseHexBytes, parseIntegerInput, } from './device-io-controls';
11
- import { DeviceList, DeviceListEmpty, DeviceListItem } from './device-list';
12
- import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel';
13
- import { LiveIndicator } from './live-indicator';
14
- import { StreamLog, useStreamLog } from './stream-log';
5
+ import { NativeHardwareBridgeError, closeMoldableHidDevice, forgetMoldableHidDevice, getMoldableHidDevices, listenForMoldableHidInputReports, openMoldableHidDevice, receiveMoldableHidFeatureReport, requestMoldableHidDevices, sendMoldableHidFeatureReport, sendMoldableHidReport, } from '../../lib/native-hardware/index.js';
6
+ import { Button } from '../ui/button.js';
7
+ import { Input } from '../ui/input.js';
8
+ import { Spinner } from '../ui/spinner.js';
9
+ import { CapabilityBadge } from './capability-badge.js';
10
+ import { formatHexBytes, parseHexBytes, parseIntegerInput, } from './device-io-controls.js';
11
+ import { DeviceList, DeviceListEmpty, DeviceListItem } from './device-list.js';
12
+ import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel.js';
13
+ import { LiveIndicator } from './live-indicator.js';
14
+ import { StreamLog, useStreamLog } from './stream-log.js';
15
15
  const HEX_DUMP_MAX_BYTES = 32;
16
16
  function toError(cause) {
17
17
  return cause instanceof Error ? cause : new Error(String(cause));
@@ -1,27 +1,27 @@
1
- export * from './bluetooth-panel';
2
- export * from './camera-preview';
3
- export * from './capability-badge';
4
- export * from './capability-matrix';
5
- export * from './clipboard-button';
6
- export * from './device-list';
7
- export * from './display-map';
8
- export * from './haptic-button';
9
- export * from './hardware-panel';
10
- export * from './hid-panel';
11
- export * from './live-indicator';
12
- export * from './local-auth-button';
13
- export * from './location-panel';
14
- export * from './microphone-meter';
15
- export * from './midi-monitor';
16
- export * from './notification-panel';
17
- export * from './power-panel';
18
- export * from './readout';
19
- export * from './screen-share-preview';
20
- export * from './secure-storage-panel';
21
- export * from './serial-console';
22
- export * from './shortcut-recorder';
23
- export * from './stream-log';
24
- export * from './system-audio-monitor';
25
- export * from './usb-panel';
26
- export * from './use-capability';
1
+ export * from './bluetooth-panel.js';
2
+ export * from './camera-preview.js';
3
+ export * from './capability-badge.js';
4
+ export * from './capability-matrix.js';
5
+ export * from './clipboard-button.js';
6
+ export * from './device-list.js';
7
+ export * from './display-map.js';
8
+ export * from './haptic-button.js';
9
+ export * from './hardware-panel.js';
10
+ export * from './hid-panel.js';
11
+ export * from './live-indicator.js';
12
+ export * from './local-auth-button.js';
13
+ export * from './location-panel.js';
14
+ export * from './microphone-meter.js';
15
+ export * from './midi-monitor.js';
16
+ export * from './notification-panel.js';
17
+ export * from './power-panel.js';
18
+ export * from './readout.js';
19
+ export * from './screen-share-preview.js';
20
+ export * from './secure-storage-panel.js';
21
+ export * from './serial-console.js';
22
+ export * from './shortcut-recorder.js';
23
+ export * from './stream-log.js';
24
+ export * from './system-audio-monitor.js';
25
+ export * from './usb-panel.js';
26
+ export * from './use-capability.js';
27
27
  //# sourceMappingURL=index.d.ts.map
@@ -1,26 +1,26 @@
1
- export * from './bluetooth-panel';
2
- export * from './camera-preview';
3
- export * from './capability-badge';
4
- export * from './capability-matrix';
5
- export * from './clipboard-button';
6
- export * from './device-list';
7
- export * from './display-map';
8
- export * from './haptic-button';
9
- export * from './hardware-panel';
10
- export * from './hid-panel';
11
- export * from './live-indicator';
12
- export * from './local-auth-button';
13
- export * from './location-panel';
14
- export * from './microphone-meter';
15
- export * from './midi-monitor';
16
- export * from './notification-panel';
17
- export * from './power-panel';
18
- export * from './readout';
19
- export * from './screen-share-preview';
20
- export * from './secure-storage-panel';
21
- export * from './serial-console';
22
- export * from './shortcut-recorder';
23
- export * from './stream-log';
24
- export * from './system-audio-monitor';
25
- export * from './usb-panel';
26
- export * from './use-capability';
1
+ export * from './bluetooth-panel.js';
2
+ export * from './camera-preview.js';
3
+ export * from './capability-badge.js';
4
+ export * from './capability-matrix.js';
5
+ export * from './clipboard-button.js';
6
+ export * from './device-list.js';
7
+ export * from './display-map.js';
8
+ export * from './haptic-button.js';
9
+ export * from './hardware-panel.js';
10
+ export * from './hid-panel.js';
11
+ export * from './live-indicator.js';
12
+ export * from './local-auth-button.js';
13
+ export * from './location-panel.js';
14
+ export * from './microphone-meter.js';
15
+ export * from './midi-monitor.js';
16
+ export * from './notification-panel.js';
17
+ export * from './power-panel.js';
18
+ export * from './readout.js';
19
+ export * from './screen-share-preview.js';
20
+ export * from './secure-storage-panel.js';
21
+ export * from './serial-console.js';
22
+ export * from './shortcut-recorder.js';
23
+ export * from './stream-log.js';
24
+ export * from './system-audio-monitor.js';
25
+ export * from './usb-panel.js';
26
+ export * from './use-capability.js';
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { cn } from '../../lib/utils';
3
+ import { cn } from '../../lib/utils.js';
4
4
  import { cva } from 'class-variance-authority';
5
5
  const liveIndicatorVariants = cva('inline-flex w-fit shrink-0 items-center gap-1.5 rounded-full border px-2 py-0.5 text-[10px] font-semibold uppercase tracking-widest', {
6
6
  variants: {
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { type MoldableLocalAuthenticationAvailability, type MoldableLocalAuthenticationPolicy, type MoldableLocalAuthenticationResult } from '../../lib/native-hardware';
3
- import { Button } from '../ui/button';
2
+ import { type MoldableLocalAuthenticationAvailability, type MoldableLocalAuthenticationPolicy, type MoldableLocalAuthenticationResult } from '../../lib/native-hardware/index.js';
3
+ import { Button } from '../ui/button.js';
4
4
  export type MoldableLocalAuthStatus = 'idle' | 'authenticating' | 'success' | 'failed';
5
5
  /**
6
6
  * Local (device-owner / biometric) authentication state machine behind
@@ -2,10 +2,10 @@
2
2
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { Check, Fingerprint, ShieldX } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { authenticateMoldableLocalUser, getMoldableLocalAuthenticationAvailability, } from '../../lib/native-hardware';
6
- import { cn } from '../../lib/utils';
7
- import { Button } from '../ui/button';
8
- import { Spinner } from '../ui/spinner';
5
+ import { authenticateMoldableLocalUser, getMoldableLocalAuthenticationAvailability, } from '../../lib/native-hardware/index.js';
6
+ import { cn } from '../../lib/utils.js';
7
+ import { Button } from '../ui/button.js';
8
+ import { Spinner } from '../ui/spinner.js';
9
9
  const DEFAULT_REASON = 'Confirm your identity';
10
10
  /**
11
11
  * Local (device-owner / biometric) authentication state machine behind
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { type MoldableLocationAuthorizationState, type MoldableLocationOptions, type MoldableLocationResult } from '../../lib/native-hardware';
2
+ import { type MoldableLocationAuthorizationState, type MoldableLocationOptions, type MoldableLocationResult } from '../../lib/native-hardware/index.js';
3
3
  export type MoldableLocationStatus = 'idle' | 'locating' | 'success' | 'denied' | 'error';
4
4
  /**
5
5
  * One-shot location state machine behind `LocationPanel`. Use directly to
@@ -2,12 +2,12 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { Check, Copy, LocateFixed, MapPin } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { NativeHardwareBridgeError, getMoldableCurrentPosition, getMoldableLocationAuthorizationStatus, writeMoldableClipboardText, } from '../../lib/native-hardware';
6
- import { Button } from '../ui/button';
7
- import { Spinner } from '../ui/spinner';
8
- import { CapabilityBadge } from './capability-badge';
9
- import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel';
10
- import { Readout, ReadoutItem } from './readout';
5
+ import { NativeHardwareBridgeError, getMoldableCurrentPosition, getMoldableLocationAuthorizationStatus, writeMoldableClipboardText, } from '../../lib/native-hardware/index.js';
6
+ import { Button } from '../ui/button.js';
7
+ import { Spinner } from '../ui/spinner.js';
8
+ import { CapabilityBadge } from './capability-badge.js';
9
+ import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel.js';
10
+ import { Readout, ReadoutItem } from './readout.js';
11
11
  /**
12
12
  * One-shot location state machine behind `LocationPanel`. Use directly to
13
13
  * build custom location UI on the same authorization/error handling.
@@ -2,13 +2,13 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { Mic, MicOff, RefreshCw, Square } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { NativeHardwareBridgeError, enumerateMoldableMediaDevices, getMoldableMediaPermissionStatus, getMoldableMicrophoneStream, requestMoldableMediaPermission, stopMoldableMediaStream, } from '../../lib/native-hardware';
6
- import { Button } from '../ui/button';
7
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '../ui/select';
8
- import { Spinner } from '../ui/spinner';
9
- import { CapabilityBadge } from './capability-badge';
10
- import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel';
11
- import { LiveIndicator } from './live-indicator';
5
+ import { NativeHardwareBridgeError, enumerateMoldableMediaDevices, getMoldableMediaPermissionStatus, getMoldableMicrophoneStream, requestMoldableMediaPermission, stopMoldableMediaStream, } from '../../lib/native-hardware/index.js';
6
+ import { Button } from '../ui/button.js';
7
+ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '../ui/select.js';
8
+ import { Spinner } from '../ui/spinner.js';
9
+ import { CapabilityBadge } from './capability-badge.js';
10
+ import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel.js';
11
+ import { LiveIndicator } from './live-indicator.js';
12
12
  function isPermissionDenied(error) {
13
13
  if (error instanceof NativeHardwareBridgeError) {
14
14
  return error.code === 'permission_denied';
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { type MoldableMIDITransport } from '../../lib/native-hardware';
2
+ import { type MoldableMIDITransport } from '../../lib/native-hardware/index.js';
3
3
  export type MoldableMidiStatus = 'idle' | 'connecting' | 'connected' | 'error';
4
4
  /**
5
5
  * Human-readable summary of a raw MIDI message: note on/off with pitch name,
@@ -28,7 +28,7 @@ export declare function useMoldableMidi(options?: UseMoldableMidiOptions): {
28
28
  openInputIds: string[];
29
29
  sysexEnabled: boolean;
30
30
  error: Error | null;
31
- entries: import("./stream-log").StreamLogEntry[];
31
+ entries: import("./stream-log.js").StreamLogEntry[];
32
32
  connect: (connectOptions?: {
33
33
  sysex?: boolean;
34
34
  }) => Promise<void>;
@@ -2,15 +2,15 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { Music, Plus, Unplug } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { getMoldableMIDIInputs, getMoldableMIDIOutputs, observeMoldableMIDIState, openMoldableMIDIInput, openMoldableMIDIOutput, requestMoldableMIDIWithFallback, } from '../../lib/native-hardware';
6
- import { Badge } from '../ui/badge';
7
- import { Button } from '../ui/button';
8
- import { Spinner } from '../ui/spinner';
9
- import { CapabilityBadge } from './capability-badge';
10
- import { DeviceList, DeviceListEmpty, DeviceListItem } from './device-list';
11
- import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel';
12
- import { LiveIndicator } from './live-indicator';
13
- import { StreamLog, useStreamLog } from './stream-log';
5
+ import { getMoldableMIDIInputs, getMoldableMIDIOutputs, observeMoldableMIDIState, openMoldableMIDIInput, openMoldableMIDIOutput, requestMoldableMIDIWithFallback, } from '../../lib/native-hardware/index.js';
6
+ import { Badge } from '../ui/badge.js';
7
+ import { Button } from '../ui/button.js';
8
+ import { Spinner } from '../ui/spinner.js';
9
+ import { CapabilityBadge } from './capability-badge.js';
10
+ import { DeviceList, DeviceListEmpty, DeviceListItem } from './device-list.js';
11
+ import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel.js';
12
+ import { LiveIndicator } from './live-indicator.js';
13
+ import { StreamLog, useStreamLog } from './stream-log.js';
14
14
  const NOTE_NAMES = [
15
15
  'C',
16
16
  'C#',
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { type MoldableNotificationOptions } from '../../lib/native-hardware';
2
+ import { type MoldableNotificationOptions } from '../../lib/native-hardware/index.js';
3
3
  export type MoldableNotificationPermissionState = 'granted' | 'denied' | 'prompt' | 'unknown';
4
4
  export type MoldableNotificationSendStatus = 'idle' | 'sending' | 'sent' | 'error';
5
5
  /**
@@ -2,14 +2,14 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { Bell, Send } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { NATIVE_NOTIFICATION_MAX_BODY_LENGTH, NATIVE_NOTIFICATION_MAX_TAG_LENGTH, NATIVE_NOTIFICATION_MAX_TITLE_LENGTH, getMoldableNotificationPermission, requestMoldableNotificationPermission, sendMoldableNotification, } from '../../lib/native-hardware';
6
- import { Button } from '../ui/button';
7
- import { Input } from '../ui/input';
8
- import { Spinner } from '../ui/spinner';
9
- import { Switch } from '../ui/switch';
10
- import { CapabilityBadge } from './capability-badge';
11
- import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel';
12
- import { useMoldableCapability, } from './use-capability';
5
+ import { NATIVE_NOTIFICATION_MAX_BODY_LENGTH, NATIVE_NOTIFICATION_MAX_TAG_LENGTH, NATIVE_NOTIFICATION_MAX_TITLE_LENGTH, getMoldableNotificationPermission, requestMoldableNotificationPermission, sendMoldableNotification, } from '../../lib/native-hardware/index.js';
6
+ import { Button } from '../ui/button.js';
7
+ import { Input } from '../ui/input.js';
8
+ import { Spinner } from '../ui/spinner.js';
9
+ import { Switch } from '../ui/switch.js';
10
+ import { CapabilityBadge } from './capability-badge.js';
11
+ import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel.js';
12
+ import { useMoldableCapability, } from './use-capability.js';
13
13
  /**
14
14
  * Notification state machine behind `NotificationsPanel`: permission loading,
15
15
  * explicit permission requests, and sends with the library's length limits
@@ -1,4 +1,4 @@
1
- import { type MoldableSleepBlocker, type MoldableSleepBlockerType } from '../../lib/native-hardware';
1
+ import { type MoldableSleepBlocker, type MoldableSleepBlockerType } from '../../lib/native-hardware/index.js';
2
2
  type StartSleepBlocker = (type: MoldableSleepBlockerType) => Promise<MoldableSleepBlocker>;
3
3
  declare const BLOCKER_TYPES: readonly ["prevent-display-sleep", "prevent-app-suspension"];
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { startMoldableSleepBlocker, } from '../../lib/native-hardware';
1
+ import { startMoldableSleepBlocker, } from '../../lib/native-hardware/index.js';
2
2
  const BLOCKER_TYPES = [
3
3
  'prevent-display-sleep',
4
4
  'prevent-app-suspension',
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { type MoldablePowerSessionEvent, type MoldablePowerState, type MoldableSleepBlockerType, type MoldableSystemIdleState, type MoldableThermalState } from '../../lib/native-hardware';
2
+ import { type MoldablePowerSessionEvent, type MoldablePowerState, type MoldableSleepBlockerType, type MoldableSystemIdleState, type MoldableThermalState } from '../../lib/native-hardware/index.js';
3
3
  export interface MoldablePowerSessionLogEntry {
4
4
  /** Monotonic id, stable across the rolling window. */
5
5
  id: number;
@@ -2,15 +2,15 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { BatteryCharging, Plug, RefreshCw, Zap } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { getMoldableCurrentThermalState, getMoldablePowerState, getMoldableSystemIdleState, getMoldableSystemIdleTime, watchMoldablePowerSession, } from '../../lib/native-hardware';
6
- import { cn } from '../../lib/utils';
7
- import { Button } from '../ui/button';
8
- import { Switch } from '../ui/switch';
9
- import { CapabilityBadge } from './capability-badge';
10
- import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel';
11
- import { BLOCKER_TYPES, MoldableSleepBlockerController, } from './power-blocker-controller';
12
- import { Readout, ReadoutItem } from './readout';
13
- import { StreamLog, useStreamLog } from './stream-log';
5
+ import { getMoldableCurrentThermalState, getMoldablePowerState, getMoldableSystemIdleState, getMoldableSystemIdleTime, watchMoldablePowerSession, } from '../../lib/native-hardware/index.js';
6
+ import { cn } from '../../lib/utils.js';
7
+ import { Button } from '../ui/button.js';
8
+ import { Switch } from '../ui/switch.js';
9
+ import { CapabilityBadge } from './capability-badge.js';
10
+ import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel.js';
11
+ import { BLOCKER_TYPES, MoldableSleepBlockerController, } from './power-blocker-controller.js';
12
+ import { Readout, ReadoutItem } from './readout.js';
13
+ import { StreamLog, useStreamLog } from './stream-log.js';
14
14
  const MAX_POWER_EVENTS = 100;
15
15
  function toError(cause) {
16
16
  return cause instanceof Error ? cause : new Error(String(cause));
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { cn } from '../../lib/utils';
3
+ import { cn } from '../../lib/utils.js';
4
4
  function Readout({ className, ...props }) {
5
5
  return (_jsx("div", { "data-slot": "readout", className: cn('grid grid-cols-2 gap-x-6 gap-y-4 sm:grid-cols-3', className), ...props }));
6
6
  }
@@ -2,11 +2,11 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { MonitorOff, MonitorUp, RefreshCw, Square } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { NativeHardwareBridgeError, getMoldableDisplayStream, getMoldableMediaPermissionStatus, requestMoldableMediaPermission, stopMoldableMediaStream, } from '../../lib/native-hardware';
6
- import { cn } from '../../lib/utils';
7
- import { Button } from '../ui/button';
8
- import { Spinner } from '../ui/spinner';
9
- import { LiveIndicator } from './live-indicator';
5
+ import { NativeHardwareBridgeError, getMoldableDisplayStream, getMoldableMediaPermissionStatus, requestMoldableMediaPermission, stopMoldableMediaStream, } from '../../lib/native-hardware/index.js';
6
+ import { cn } from '../../lib/utils.js';
7
+ import { Button } from '../ui/button.js';
8
+ import { Spinner } from '../ui/spinner.js';
9
+ import { LiveIndicator } from './live-indicator.js';
10
10
  function isPermissionDenied(error) {
11
11
  if (error instanceof NativeHardwareBridgeError) {
12
12
  return error.code === 'permission_denied';
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { type MoldableSecureStorageDiagnostics, type MoldableSecureStorageEntryMetadata } from '../../lib/native-hardware';
2
+ import { type MoldableSecureStorageDiagnostics, type MoldableSecureStorageEntryMetadata } from '../../lib/native-hardware/index.js';
3
3
  export type MoldableSecureStorageStatus = 'loading' | 'ready' | 'error';
4
4
  export interface MoldableSecureEntryValidation {
5
5
  valid: boolean;
@@ -2,15 +2,15 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { Eye, EyeOff, KeyRound, Trash2 } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { SECURE_STORAGE_MAX_KEY_LENGTH, SECURE_STORAGE_MAX_VALUE_BYTES, deleteMoldableSecureValue, getMoldableSecureStorageDiagnostics, getMoldableSecureValue, listMoldableSecureValues, setMoldableSecureValue, } from '../../lib/native-hardware';
6
- import { Badge } from '../ui/badge';
7
- import { Button } from '../ui/button';
8
- import { Input } from '../ui/input';
9
- import { Skeleton } from '../ui/skeleton';
10
- import { Spinner } from '../ui/spinner';
11
- import { CapabilityBadge } from './capability-badge';
12
- import { DeviceList, DeviceListEmpty, DeviceListItem } from './device-list';
13
- import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel';
5
+ import { SECURE_STORAGE_MAX_KEY_LENGTH, SECURE_STORAGE_MAX_VALUE_BYTES, deleteMoldableSecureValue, getMoldableSecureStorageDiagnostics, getMoldableSecureValue, listMoldableSecureValues, setMoldableSecureValue, } from '../../lib/native-hardware/index.js';
6
+ import { Badge } from '../ui/badge.js';
7
+ import { Button } from '../ui/button.js';
8
+ import { Input } from '../ui/input.js';
9
+ import { Skeleton } from '../ui/skeleton.js';
10
+ import { Spinner } from '../ui/spinner.js';
11
+ import { CapabilityBadge } from './capability-badge.js';
12
+ import { DeviceList, DeviceListEmpty, DeviceListItem } from './device-list.js';
13
+ import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel.js';
14
14
  const SECURE_STORAGE_KEY_PATTERN = /^[A-Za-z0-9._-]+$/;
15
15
  /**
16
16
  * Client-side mirror of the library's secure-storage constraints. Returns a
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { type MoldableSerialInputSignals, type MoldableSerialOutputSignals, type MoldableSerialPort, type MoldableSerialPortFilter, type MoldableSerialPortInfo, type MoldableSerialRequestOptions } from '../../lib/native-hardware';
2
+ import { type MoldableSerialInputSignals, type MoldableSerialOutputSignals, type MoldableSerialPort, type MoldableSerialPortFilter, type MoldableSerialPortInfo, type MoldableSerialRequestOptions } from '../../lib/native-hardware/index.js';
3
3
  export type MoldableSerialStatus = 'idle' | 'connecting' | 'connected' | 'error';
4
4
  export interface UseMoldableSerialOptions {
5
5
  /** Baud rate used when `connect` does not override it. Defaults to 115200. */
@@ -34,7 +34,7 @@ export declare function useMoldableSerial(options?: UseMoldableSerialOptions): {
34
34
  error: Error | null;
35
35
  signals: MoldableSerialSignalsState;
36
36
  inputSignals: MoldableSerialInputSignals | null;
37
- entries: import("./stream-log").StreamLogEntry[];
37
+ entries: import("./stream-log.js").StreamLogEntry[];
38
38
  rxBytes: number;
39
39
  txBytes: number;
40
40
  connect: (overrides?: MoldableSerialConnectOptions) => Promise<void>;
@@ -2,16 +2,16 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { Cable, CornerDownLeft, Plug, RefreshCw, ShieldX, Unplug, } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { closeMoldableSerialPort, forgetMoldableSerialPort, getMoldableSerialSignals, openMoldableSerialPort, readMoldableSerialPort, requestMoldableSerialPort, setMoldableSerialSignals, writeMoldableSerialPort, } from '../../lib/native-hardware';
6
- import { Button } from '../ui/button';
7
- import { Input } from '../ui/input';
8
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '../ui/select';
9
- import { Spinner } from '../ui/spinner';
10
- import { Switch } from '../ui/switch';
11
- import { CapabilityBadge } from './capability-badge';
12
- import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel';
13
- import { LiveIndicator } from './live-indicator';
14
- import { StreamLog, useStreamLog } from './stream-log';
5
+ import { closeMoldableSerialPort, forgetMoldableSerialPort, getMoldableSerialSignals, openMoldableSerialPort, readMoldableSerialPort, requestMoldableSerialPort, setMoldableSerialSignals, writeMoldableSerialPort, } from '../../lib/native-hardware/index.js';
6
+ import { Button } from '../ui/button.js';
7
+ import { Input } from '../ui/input.js';
8
+ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '../ui/select.js';
9
+ import { Spinner } from '../ui/spinner.js';
10
+ import { Switch } from '../ui/switch.js';
11
+ import { CapabilityBadge } from './capability-badge.js';
12
+ import { HardwarePanel, HardwarePanelAction, HardwarePanelContent, HardwarePanelFooter, HardwarePanelHeader, HardwarePanelIcon, HardwarePanelTitle, } from './hardware-panel.js';
13
+ import { LiveIndicator } from './live-indicator.js';
14
+ import { StreamLog, useStreamLog } from './stream-log.js';
15
15
  const BAUD_RATES = [9600, 19200, 38400, 57600, 115200, 230400];
16
16
  const DEFAULT_BAUD_RATE = 115200;
17
17
  function toError(cause) {
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { type MoldableGlobalShortcutEvent, type MoldableGlobalShortcutHandler } from '../../lib/native-hardware';
2
+ import { type MoldableGlobalShortcutEvent, type MoldableGlobalShortcutHandler } from '../../lib/native-hardware/index.js';
3
3
  /**
4
4
  * Splits an Electron-style accelerator ("CommandOrControl+Shift+K") into
5
5
  * display keys for `Kbd` chips — ['⌘', '⇧', 'K'] on macOS, ['Ctrl', 'Shift',
@@ -2,10 +2,10 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { X } from 'lucide-react';
4
4
  import { useCallback, useEffect, useRef, useState } from 'react';
5
- import { isMoldableGlobalShortcut, registerMoldableGlobalShortcut, } from '../../lib/native-hardware';
6
- import { cn } from '../../lib/utils';
7
- import { Button } from '../ui/button';
8
- import { Kbd, KbdGroup } from '../ui/kbd';
5
+ import { isMoldableGlobalShortcut, registerMoldableGlobalShortcut, } from '../../lib/native-hardware/index.js';
6
+ import { cn } from '../../lib/utils.js';
7
+ import { Button } from '../ui/button.js';
8
+ import { Kbd, KbdGroup } from '../ui/kbd.js';
9
9
  function isApplePlatform() {
10
10
  if (typeof navigator === 'undefined')
11
11
  return false;