@peers-app/peers-ui 0.14.0 → 0.15.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 (438) hide show
  1. package/.github/workflows/publish.yml +8 -5
  2. package/babel.config.js +4 -4
  3. package/biome.json +191 -0
  4. package/dist/command-palette/command-palette-ui.d.ts +1 -2
  5. package/dist/command-palette/command-palette-ui.js +175 -244
  6. package/dist/command-palette/command-palette.js +65 -64
  7. package/dist/components/chat-overlay.d.ts +2 -2
  8. package/dist/components/chat-overlay.js +160 -217
  9. package/dist/components/checkbox.d.ts +5 -4
  10. package/dist/components/checkbox.js +4 -7
  11. package/dist/components/group-switcher.d.ts +1 -2
  12. package/dist/components/group-switcher.js +119 -159
  13. package/dist/components/input-date.d.ts +3 -3
  14. package/dist/components/input-date.js +6 -6
  15. package/dist/components/input-number.d.ts +7 -6
  16. package/dist/components/input-number.js +25 -20
  17. package/dist/components/input.d.ts +5 -4
  18. package/dist/components/input.js +4 -7
  19. package/dist/components/inverse-lazy-list.d.ts +3 -3
  20. package/dist/components/inverse-lazy-list.js +13 -47
  21. package/dist/components/io-schema-values.d.ts +5 -6
  22. package/dist/components/io-schema-values.js +28 -65
  23. package/dist/components/io-schema.d.ts +4 -5
  24. package/dist/components/io-schema.js +42 -79
  25. package/dist/components/lazy-list.d.ts +3 -3
  26. package/dist/components/lazy-list.js +38 -58
  27. package/dist/components/list-screen.d.ts +3 -8
  28. package/dist/components/list-screen.js +28 -23
  29. package/dist/components/loading-indicator.d.ts +1 -2
  30. package/dist/components/loading-indicator.js +2 -6
  31. package/dist/components/markdown-editor/autolink-plugin.js +5 -8
  32. package/dist/components/markdown-editor/editor-inline.d.ts +2 -3
  33. package/dist/components/markdown-editor/editor-inline.js +2 -6
  34. package/dist/components/markdown-editor/editor.d.ts +6 -6
  35. package/dist/components/markdown-editor/editor.js +9 -19
  36. package/dist/components/markdown-editor/markdown-plugin.d.ts +1 -1
  37. package/dist/components/markdown-editor/markdown-plugin.js +20 -21
  38. package/dist/components/markdown-editor/mention-node.d.ts +2 -2
  39. package/dist/components/markdown-editor/mention-node.js +24 -24
  40. package/dist/components/markdown-editor/mentions-plugin.d.ts +2 -2
  41. package/dist/components/markdown-editor/mentions-plugin.js +61 -62
  42. package/dist/components/markdown-editor/theme.js +28 -28
  43. package/dist/components/markdown-editor/toolbar.d.ts +2 -3
  44. package/dist/components/markdown-editor/toolbar.js +32 -49
  45. package/dist/components/markdown-with-mentions.d.ts +1 -1
  46. package/dist/components/markdown-with-mentions.js +43 -43
  47. package/dist/components/message-logs/message-logs.d.ts +1 -2
  48. package/dist/components/message-logs/message-logs.js +91 -116
  49. package/dist/components/messages/avatar.d.ts +3 -4
  50. package/dist/components/messages/avatar.js +37 -46
  51. package/dist/components/messages/channel-message-list.d.ts +5 -6
  52. package/dist/components/messages/channel-message-list.js +34 -34
  53. package/dist/components/messages/channel-view.d.ts +1 -2
  54. package/dist/components/messages/channel-view.js +23 -57
  55. package/dist/components/messages/message-compose.d.ts +3 -4
  56. package/dist/components/messages/message-compose.js +27 -38
  57. package/dist/components/messages/message-display.d.ts +2 -3
  58. package/dist/components/messages/message-display.js +42 -95
  59. package/dist/components/messages/thread-message-list.d.ts +4 -5
  60. package/dist/components/messages/thread-message-list.js +29 -29
  61. package/dist/components/router.d.ts +1 -2
  62. package/dist/components/router.js +58 -66
  63. package/dist/components/save-button.d.ts +3 -3
  64. package/dist/components/save-button.js +23 -33
  65. package/dist/components/sortable-list.d.ts +11 -12
  66. package/dist/components/sortable-list.js +42 -22
  67. package/dist/components/tabs.d.ts +3 -3
  68. package/dist/components/tabs.js +16 -47
  69. package/dist/components/tooltip.d.ts +4 -4
  70. package/dist/components/tooltip.js +4 -9
  71. package/dist/components/trust-level-badge.d.ts +2 -3
  72. package/dist/components/trust-level-badge.js +16 -16
  73. package/dist/components/trust-level-dropdown.d.ts +3 -4
  74. package/dist/components/trust-level-dropdown.js +32 -55
  75. package/dist/components/typeahead.d.ts +3 -3
  76. package/dist/components/typeahead.js +48 -89
  77. package/dist/components/voice-indicator.d.ts +2 -2
  78. package/dist/components/voice-indicator.js +93 -106
  79. package/dist/components/voice-subscribe-events.d.ts +32 -0
  80. package/dist/components/voice-subscribe-events.js +2 -0
  81. package/dist/globals.d.ts +3 -5
  82. package/dist/globals.js +22 -33
  83. package/dist/hooks.d.ts +5 -5
  84. package/dist/hooks.js +22 -12
  85. package/dist/hooks.test.js +129 -145
  86. package/dist/index.d.ts +9 -8
  87. package/dist/index.js +13 -12
  88. package/dist/mention-configs.d.ts +2 -2
  89. package/dist/mention-configs.js +55 -42
  90. package/dist/screens/assistants/assistant-config.d.ts +2 -3
  91. package/dist/screens/assistants/assistant-config.js +9 -22
  92. package/dist/screens/assistants/assistant-details.d.ts +1 -2
  93. package/dist/screens/assistants/assistant-details.js +13 -28
  94. package/dist/screens/assistants/assistant-info.d.ts +2 -3
  95. package/dist/screens/assistants/assistant-info.js +3 -17
  96. package/dist/screens/assistants/assistant-list.d.ts +1 -2
  97. package/dist/screens/assistants/assistant-list.js +15 -56
  98. package/dist/screens/assistants/assistant-tools.d.ts +2 -3
  99. package/dist/screens/assistants/assistant-tools.js +10 -24
  100. package/dist/screens/console-logs/console-logs-list.d.ts +1 -2
  101. package/dist/screens/console-logs/console-logs-list.js +130 -134
  102. package/dist/screens/console-logs/log-display.d.ts +2 -3
  103. package/dist/screens/console-logs/log-display.js +40 -42
  104. package/dist/screens/console-logs/log-filters.d.ts +1 -2
  105. package/dist/screens/console-logs/log-filters.js +2 -24
  106. package/dist/screens/console-logs/mobile-log-card.d.ts +2 -3
  107. package/dist/screens/console-logs/mobile-log-card.js +64 -67
  108. package/dist/screens/console-logs/resizable-table-header.d.ts +1 -2
  109. package/dist/screens/console-logs/resizable-table-header.js +31 -67
  110. package/dist/screens/contacts/contact-details.d.ts +1 -2
  111. package/dist/screens/contacts/contact-details.js +16 -46
  112. package/dist/screens/contacts/contact-list.d.ts +1 -2
  113. package/dist/screens/contacts/contact-list.js +44 -103
  114. package/dist/screens/contacts/index.d.ts +4 -4
  115. package/dist/screens/contacts/index.js +1 -1
  116. package/dist/screens/contacts/user-connect.d.ts +1 -2
  117. package/dist/screens/contacts/user-connect.js +85 -186
  118. package/dist/screens/data-explorer/data-explorer.d.ts +1 -2
  119. package/dist/screens/data-explorer/data-explorer.js +61 -181
  120. package/dist/screens/data-explorer/index.d.ts +2 -2
  121. package/dist/screens/data-explorer/query-executor.d.ts +1 -2
  122. package/dist/screens/data-explorer/query-executor.js +56 -166
  123. package/dist/screens/groups/group-details.d.ts +1 -2
  124. package/dist/screens/groups/group-details.js +27 -122
  125. package/dist/screens/groups/group-invite-listener.d.ts +2 -3
  126. package/dist/screens/groups/group-invite-listener.js +8 -104
  127. package/dist/screens/groups/group-list.d.ts +1 -2
  128. package/dist/screens/groups/group-list.js +56 -133
  129. package/dist/screens/groups/group-members.d.ts +2 -3
  130. package/dist/screens/groups/group-members.js +62 -132
  131. package/dist/screens/groups/index.d.ts +4 -4
  132. package/dist/screens/groups/index.js +1 -1
  133. package/dist/screens/join-group/index.d.ts +2 -2
  134. package/dist/screens/join-group/join-group.d.ts +1 -2
  135. package/dist/screens/join-group/join-group.js +9 -109
  136. package/dist/screens/network-viewer/connection-troubleshooter.d.ts +2 -3
  137. package/dist/screens/network-viewer/connection-troubleshooter.js +89 -193
  138. package/dist/screens/network-viewer/cpu-usage-graph.d.ts +1 -2
  139. package/dist/screens/network-viewer/cpu-usage-graph.js +60 -99
  140. package/dist/screens/network-viewer/device-details-modal.d.ts +1 -2
  141. package/dist/screens/network-viewer/device-details-modal.js +25 -177
  142. package/dist/screens/network-viewer/group-details-modal.d.ts +1 -2
  143. package/dist/screens/network-viewer/group-details-modal.js +31 -142
  144. package/dist/screens/network-viewer/index.d.ts +4 -4
  145. package/dist/screens/network-viewer/index.js +3 -3
  146. package/dist/screens/network-viewer/network-viewer-ipc.d.ts +22 -0
  147. package/dist/screens/network-viewer/network-viewer-ipc.js +6 -0
  148. package/dist/screens/network-viewer/network-viewer.d.ts +1 -2
  149. package/dist/screens/network-viewer/network-viewer.js +91 -296
  150. package/dist/screens/network-viewer/usage-graph.d.ts +1 -2
  151. package/dist/screens/network-viewer/usage-graph.js +78 -110
  152. package/dist/screens/packages/package-details.d.ts +1 -2
  153. package/dist/screens/packages/package-details.js +35 -41
  154. package/dist/screens/packages/package-info.d.ts +2 -2
  155. package/dist/screens/packages/package-info.js +33 -86
  156. package/dist/screens/packages/package-list.d.ts +1 -2
  157. package/dist/screens/packages/package-list.js +42 -106
  158. package/dist/screens/packages/package-new-local.d.ts +1 -2
  159. package/dist/screens/packages/package-new-local.js +13 -19
  160. package/dist/screens/packages/package-versions.d.ts +2 -3
  161. package/dist/screens/packages/package-versions.js +29 -96
  162. package/dist/screens/peer-types/peer-type-details.d.ts +3 -4
  163. package/dist/screens/peer-types/peer-type-details.js +26 -78
  164. package/dist/screens/peer-types/peer-type-list.d.ts +1 -2
  165. package/dist/screens/peer-types/peer-type-list.js +13 -24
  166. package/dist/screens/search/global-search.d.ts +1 -2
  167. package/dist/screens/search/global-search.js +104 -182
  168. package/dist/screens/settings/color-mode-dropdown.d.ts +3 -4
  169. package/dist/screens/settings/color-mode-dropdown.js +18 -37
  170. package/dist/screens/settings/settings-page.d.ts +1 -1
  171. package/dist/screens/settings/settings-page.js +86 -213
  172. package/dist/screens/settings/voice-settings-agent.d.ts +1 -1
  173. package/dist/screens/settings/voice-settings-agent.js +7 -44
  174. package/dist/screens/settings/voice-settings-api-keys.d.ts +2 -2
  175. package/dist/screens/settings/voice-settings-api-keys.js +2 -29
  176. package/dist/screens/settings/voice-settings-output.d.ts +2 -2
  177. package/dist/screens/settings/voice-settings-output.js +2 -40
  178. package/dist/screens/settings/voice-settings-providers.d.ts +2 -2
  179. package/dist/screens/settings/voice-settings-providers.js +2 -19
  180. package/dist/screens/settings/voice-settings-types.d.ts +4 -4
  181. package/dist/screens/settings/voice-settings-types.js +31 -31
  182. package/dist/screens/settings/voice-settings-wake-word.d.ts +2 -2
  183. package/dist/screens/settings/voice-settings-wake-word.js +2 -33
  184. package/dist/screens/settings/voice-settings.d.ts +1 -1
  185. package/dist/screens/settings/voice-settings.js +35 -112
  186. package/dist/screens/setup-user.d.ts +1 -2
  187. package/dist/screens/setup-user.js +38 -116
  188. package/dist/screens/tools/tool-code.d.ts +2 -3
  189. package/dist/screens/tools/tool-code.js +9 -13
  190. package/dist/screens/tools/tool-details.d.ts +1 -2
  191. package/dist/screens/tools/tool-details.js +26 -39
  192. package/dist/screens/tools/tool-info.d.ts +2 -3
  193. package/dist/screens/tools/tool-info.js +9 -48
  194. package/dist/screens/tools/tool-list.d.ts +1 -2
  195. package/dist/screens/tools/tool-list.js +33 -65
  196. package/dist/screens/tools/tool-schema.d.ts +2 -3
  197. package/dist/screens/tools/tool-schema.js +2 -13
  198. package/dist/screens/tools/tool-test-details.d.ts +1 -2
  199. package/dist/screens/tools/tool-test-details.js +12 -28
  200. package/dist/screens/tools/tool-test-list.d.ts +1 -2
  201. package/dist/screens/tools/tool-test-list.js +17 -56
  202. package/dist/screens/variables/variable-details.d.ts +1 -2
  203. package/dist/screens/variables/variable-details.js +19 -86
  204. package/dist/screens/variables/variable-list.d.ts +1 -2
  205. package/dist/screens/variables/variable-list.js +16 -27
  206. package/dist/screens/welcome-modal.d.ts +1 -2
  207. package/dist/screens/welcome-modal.js +44 -111
  208. package/dist/screens/workflows/workflow-details.d.ts +1 -2
  209. package/dist/screens/workflows/workflow-details.js +17 -31
  210. package/dist/screens/workflows/workflow-info.d.ts +2 -3
  211. package/dist/screens/workflows/workflow-info.js +2 -9
  212. package/dist/screens/workflows/workflow-instructions.d.ts +2 -3
  213. package/dist/screens/workflows/workflow-instructions.js +23 -55
  214. package/dist/screens/workflows/workflow-list.d.ts +1 -2
  215. package/dist/screens/workflows/workflow-list.js +23 -62
  216. package/dist/setupTests.d.ts +1 -1
  217. package/dist/setupTests.js +10 -11
  218. package/dist/system-apps/assistants.app.d.ts +1 -1
  219. package/dist/system-apps/assistants.app.js +3 -3
  220. package/dist/system-apps/console-logs.app.d.ts +1 -1
  221. package/dist/system-apps/console-logs.app.js +3 -3
  222. package/dist/system-apps/contacts.app.d.ts +1 -1
  223. package/dist/system-apps/contacts.app.js +4 -4
  224. package/dist/system-apps/data-explorer.app.d.ts +1 -1
  225. package/dist/system-apps/data-explorer.app.js +4 -4
  226. package/dist/system-apps/groups.app.d.ts +1 -1
  227. package/dist/system-apps/groups.app.js +4 -4
  228. package/dist/system-apps/index.d.ts +17 -17
  229. package/dist/system-apps/index.js +52 -52
  230. package/dist/system-apps/join-group.app.d.ts +1 -1
  231. package/dist/system-apps/join-group.app.js +4 -4
  232. package/dist/system-apps/mobile-settings.app.d.ts +1 -1
  233. package/dist/system-apps/mobile-settings.app.js +3 -3
  234. package/dist/system-apps/network-viewer.app.d.ts +1 -1
  235. package/dist/system-apps/network-viewer.app.js +4 -4
  236. package/dist/system-apps/packages.app.d.ts +1 -1
  237. package/dist/system-apps/packages.app.js +3 -3
  238. package/dist/system-apps/search.app.d.ts +1 -1
  239. package/dist/system-apps/search.app.js +4 -4
  240. package/dist/system-apps/settings.app.d.ts +1 -1
  241. package/dist/system-apps/settings.app.js +3 -3
  242. package/dist/system-apps/threads.app.d.ts +1 -1
  243. package/dist/system-apps/threads.app.js +3 -3
  244. package/dist/system-apps/tools.app.d.ts +1 -1
  245. package/dist/system-apps/tools.app.js +3 -3
  246. package/dist/system-apps/types.app.d.ts +1 -1
  247. package/dist/system-apps/types.app.js +3 -3
  248. package/dist/system-apps/variables.app.d.ts +1 -1
  249. package/dist/system-apps/variables.app.js +3 -3
  250. package/dist/system-apps/workflows.app.d.ts +1 -1
  251. package/dist/system-apps/workflows.app.js +3 -3
  252. package/dist/tabs-layout/tabs-layout.d.ts +2 -3
  253. package/dist/tabs-layout/tabs-layout.js +215 -246
  254. package/dist/tabs-layout/tabs-state.d.ts +2 -2
  255. package/dist/tabs-layout/tabs-state.js +73 -61
  256. package/dist/ui-defaults/index.d.ts +2 -2
  257. package/dist/ui-defaults/list-screen.d.ts +2 -3
  258. package/dist/ui-defaults/list-screen.js +33 -37
  259. package/dist/ui-defaults/markdown-field.js +24 -56
  260. package/dist/ui-router/routes-loader.d.ts +1 -1
  261. package/dist/ui-router/routes-loader.js +17 -13
  262. package/dist/ui-router/ui-loader.d.ts +6 -6
  263. package/dist/ui-router/ui-loader.js +172 -268
  264. package/dist/utils.js +49 -39
  265. package/jest.config.js +16 -16
  266. package/package.json +16 -14
  267. package/src/command-palette/command-palette-ui.tsx +261 -237
  268. package/src/command-palette/command-palette.ts +81 -78
  269. package/src/components/chat-overlay.tsx +366 -261
  270. package/src/components/checkbox.tsx +15 -12
  271. package/src/components/group-switcher.tsx +150 -105
  272. package/src/components/input-date.tsx +17 -16
  273. package/src/components/input-number.tsx +47 -31
  274. package/src/components/input.tsx +15 -12
  275. package/src/components/inverse-lazy-list.tsx +14 -13
  276. package/src/components/io-schema-values.tsx +51 -69
  277. package/src/components/io-schema.tsx +94 -69
  278. package/src/components/lazy-list.tsx +51 -34
  279. package/src/components/list-screen.tsx +51 -35
  280. package/src/components/loading-indicator.tsx +2 -4
  281. package/src/components/markdown-editor/autolink-plugin.tsx +4 -11
  282. package/src/components/markdown-editor/editor-inline.tsx +3 -4
  283. package/src/components/markdown-editor/editor.tsx +53 -51
  284. package/src/components/markdown-editor/markdown-plugin.tsx +48 -40
  285. package/src/components/markdown-editor/mention-node.ts +39 -38
  286. package/src/components/markdown-editor/mentions-plugin.tsx +99 -101
  287. package/src/components/markdown-editor/theme.ts +28 -29
  288. package/src/components/markdown-editor/toolbar.tsx +53 -47
  289. package/src/components/markdown-with-mentions.tsx +56 -46
  290. package/src/components/message-logs/message-logs.tsx +225 -165
  291. package/src/components/messages/avatar.tsx +70 -52
  292. package/src/components/messages/channel-message-list.tsx +80 -68
  293. package/src/components/messages/channel-view.tsx +34 -33
  294. package/src/components/messages/message-compose.tsx +84 -67
  295. package/src/components/messages/message-display.tsx +103 -89
  296. package/src/components/messages/thread-message-list.tsx +53 -44
  297. package/src/components/router.tsx +42 -43
  298. package/src/components/save-button.tsx +43 -39
  299. package/src/components/sortable-list.tsx +77 -49
  300. package/src/components/tabs.tsx +31 -31
  301. package/src/components/tooltip.tsx +21 -28
  302. package/src/components/trust-level-badge.tsx +15 -11
  303. package/src/components/trust-level-dropdown.tsx +49 -19
  304. package/src/components/typeahead.tsx +57 -59
  305. package/src/components/voice-indicator.tsx +158 -141
  306. package/src/components/voice-subscribe-events.ts +20 -0
  307. package/src/globals.tsx +42 -40
  308. package/src/hooks.test.tsx +141 -134
  309. package/src/hooks.ts +80 -48
  310. package/src/index.tsx +17 -10
  311. package/src/mention-configs.ts +122 -68
  312. package/src/screens/assistants/assistant-config.tsx +28 -18
  313. package/src/screens/assistants/assistant-details.tsx +35 -36
  314. package/src/screens/assistants/assistant-info.tsx +16 -11
  315. package/src/screens/assistants/assistant-list.tsx +37 -34
  316. package/src/screens/assistants/assistant-tools.tsx +41 -20
  317. package/src/screens/console-logs/console-logs-list.tsx +173 -140
  318. package/src/screens/console-logs/log-display.tsx +65 -38
  319. package/src/screens/console-logs/log-filters.tsx +4 -3
  320. package/src/screens/console-logs/mobile-log-card.tsx +78 -71
  321. package/src/screens/console-logs/resizable-table-header.tsx +29 -21
  322. package/src/screens/contacts/contact-details.tsx +29 -30
  323. package/src/screens/contacts/contact-list.tsx +71 -60
  324. package/src/screens/contacts/index.ts +5 -5
  325. package/src/screens/contacts/user-connect.tsx +177 -171
  326. package/src/screens/data-explorer/data-explorer.tsx +134 -98
  327. package/src/screens/data-explorer/index.ts +2 -3
  328. package/src/screens/data-explorer/query-executor.tsx +90 -80
  329. package/src/screens/groups/group-details.tsx +120 -101
  330. package/src/screens/groups/group-invite-listener.tsx +34 -37
  331. package/src/screens/groups/group-list.tsx +119 -103
  332. package/src/screens/groups/group-members.tsx +225 -164
  333. package/src/screens/groups/index.ts +5 -6
  334. package/src/screens/join-group/index.ts +2 -2
  335. package/src/screens/join-group/join-group.tsx +41 -39
  336. package/src/screens/network-viewer/connection-troubleshooter.tsx +145 -104
  337. package/src/screens/network-viewer/cpu-usage-graph.tsx +39 -43
  338. package/src/screens/network-viewer/device-details-modal.tsx +46 -59
  339. package/src/screens/network-viewer/group-details-modal.tsx +68 -49
  340. package/src/screens/network-viewer/index.ts +4 -5
  341. package/src/screens/network-viewer/network-viewer-ipc.ts +23 -0
  342. package/src/screens/network-viewer/network-viewer.tsx +261 -236
  343. package/src/screens/network-viewer/usage-graph.tsx +57 -49
  344. package/src/screens/packages/package-details.tsx +43 -35
  345. package/src/screens/packages/package-info.tsx +107 -66
  346. package/src/screens/packages/package-list.tsx +175 -98
  347. package/src/screens/packages/package-new-local.tsx +28 -26
  348. package/src/screens/packages/package-versions.tsx +102 -77
  349. package/src/screens/peer-types/peer-type-details.tsx +60 -50
  350. package/src/screens/peer-types/peer-type-list.tsx +20 -30
  351. package/src/screens/search/global-search.tsx +153 -137
  352. package/src/screens/settings/color-mode-dropdown.tsx +52 -35
  353. package/src/screens/settings/settings-page.tsx +215 -141
  354. package/src/screens/settings/voice-settings-agent.tsx +13 -12
  355. package/src/screens/settings/voice-settings-api-keys.tsx +14 -12
  356. package/src/screens/settings/voice-settings-output.tsx +12 -11
  357. package/src/screens/settings/voice-settings-providers.tsx +7 -3
  358. package/src/screens/settings/voice-settings-types.ts +52 -49
  359. package/src/screens/settings/voice-settings-wake-word.tsx +25 -9
  360. package/src/screens/settings/voice-settings.tsx +66 -43
  361. package/src/screens/setup-user.tsx +88 -41
  362. package/src/screens/tools/tool-code.tsx +12 -17
  363. package/src/screens/tools/tool-details.tsx +28 -28
  364. package/src/screens/tools/tool-info.tsx +14 -19
  365. package/src/screens/tools/tool-list.tsx +58 -40
  366. package/src/screens/tools/tool-schema.tsx +16 -9
  367. package/src/screens/tools/tool-test-details.tsx +11 -22
  368. package/src/screens/tools/tool-test-list.tsx +29 -30
  369. package/src/screens/variables/variable-details.tsx +63 -51
  370. package/src/screens/variables/variable-list.tsx +29 -30
  371. package/src/screens/welcome-modal.tsx +68 -48
  372. package/src/screens/workflows/workflow-details.tsx +40 -30
  373. package/src/screens/workflows/workflow-info.tsx +4 -11
  374. package/src/screens/workflows/workflow-instructions.tsx +35 -28
  375. package/src/screens/workflows/workflow-list.tsx +50 -40
  376. package/src/setupTests.ts +14 -13
  377. package/src/system-apps/assistants.app.ts +5 -5
  378. package/src/system-apps/console-logs.app.ts +4 -4
  379. package/src/system-apps/contacts.app.ts +6 -6
  380. package/src/system-apps/data-explorer.app.ts +5 -5
  381. package/src/system-apps/groups.app.ts +6 -6
  382. package/src/system-apps/index.ts +49 -49
  383. package/src/system-apps/join-group.app.ts +5 -5
  384. package/src/system-apps/mobile-settings.app.ts +4 -5
  385. package/src/system-apps/network-viewer.app.ts +5 -5
  386. package/src/system-apps/packages.app.ts +5 -5
  387. package/src/system-apps/search.app.ts +6 -6
  388. package/src/system-apps/settings.app.ts +5 -5
  389. package/src/system-apps/threads.app.ts +5 -5
  390. package/src/system-apps/tools.app.ts +5 -5
  391. package/src/system-apps/types.app.ts +5 -5
  392. package/src/system-apps/variables.app.ts +5 -5
  393. package/src/system-apps/workflows.app.ts +5 -5
  394. package/src/tabs-layout/tabs-layout.tsx +345 -254
  395. package/src/tabs-layout/tabs-state.ts +100 -81
  396. package/src/ui-defaults/index.ts +2 -3
  397. package/src/ui-defaults/list-screen.tsx +45 -40
  398. package/src/ui-defaults/markdown-field.tsx +22 -26
  399. package/src/ui-router/routes-loader.ts +40 -24
  400. package/src/ui-router/ui-loader.tsx +312 -214
  401. package/src/utils.ts +68 -81
  402. package/tsconfig.json +5 -10
  403. package/dist/components/input-datetime.d.ts +0 -7
  404. package/dist/components/input-datetime.js +0 -35
  405. package/dist/components/lazy-sortable-list.d.ts +0 -29
  406. package/dist/components/lazy-sortable-list.js +0 -12
  407. package/dist/components/left-bar.d.ts +0 -5
  408. package/dist/components/left-bar.js +0 -207
  409. package/dist/components/main-content-container.d.ts +0 -2
  410. package/dist/components/main-content-container.js +0 -92
  411. package/dist/components/messages/thread-view.d.ts +0 -6
  412. package/dist/components/messages/thread-view.js +0 -174
  413. package/dist/components/off-canvas.d.ts +0 -13
  414. package/dist/components/off-canvas.js +0 -89
  415. package/dist/components/text-list-editor.tsx/text-list-editor.d.ts +0 -6
  416. package/dist/components/text-list-editor.tsx/text-list-editor.js +0 -13
  417. package/dist/components/top-bar.d.ts +0 -2
  418. package/dist/components/top-bar.js +0 -51
  419. package/dist/components/typeahead/mentions-plugin.d.ts +0 -7
  420. package/dist/components/typeahead/mentions-plugin.js +0 -203
  421. package/dist/components/typeahead/typeahead-editor.d.ts +0 -15
  422. package/dist/components/typeahead/typeahead-editor.js +0 -134
  423. package/dist/components/typeahead/typeahead.d.ts +0 -12
  424. package/dist/components/typeahead/typeahead.js +0 -94
  425. package/dist/screens/profile.d.ts +0 -2
  426. package/dist/screens/profile.js +0 -76
  427. package/src/components/input-datetime.tsx +0 -41
  428. package/src/components/lazy-sortable-list.tsx +0 -51
  429. package/src/components/left-bar.tsx +0 -322
  430. package/src/components/main-content-container.tsx +0 -79
  431. package/src/components/messages/thread-view.tsx +0 -214
  432. package/src/components/off-canvas.tsx +0 -83
  433. package/src/components/text-list-editor.tsx/text-list-editor.tsx +0 -13
  434. package/src/components/top-bar.tsx +0 -119
  435. package/src/components/typeahead/mentions-plugin.tsx +0 -265
  436. package/src/components/typeahead/typeahead-editor.tsx +0 -140
  437. package/src/components/typeahead/typeahead.tsx +0 -77
  438. package/src/screens/profile.tsx +0 -75
package/dist/utils.js CHANGED
@@ -15,29 +15,28 @@ exports.fromJSON = fromJSON;
15
15
  const dompurify_1 = __importDefault(require("dompurify"));
16
16
  const lodash_1 = __importDefault(require("lodash"));
17
17
  function htmlToText(html) {
18
- let doc = new DOMParser().parseFromString(html, 'text/html');
18
+ const doc = new DOMParser().parseFromString(html, "text/html");
19
19
  return doc.body.textContent || "";
20
20
  }
21
21
  // Strip mention formatting and clean text for display
22
22
  function stripMentions(text) {
23
23
  // Replace <type:name:id> with just the readable name part
24
24
  // Convert underscores to spaces for better readability
25
- return text.replace(/<[@$]([^:]+):([^:]+):([^>]+)>/g, (match, type, name, id) => {
26
- return name.replace(/_/g, ' ');
25
+ return text.replace(/<[@$]([^:]+):([^:]+):([^>]+)>/g, (_match, _type, name, _id) => {
26
+ return name.replace(/_/g, " ");
27
27
  });
28
28
  }
29
29
  function trimAndSanitizeHtml(value) {
30
30
  let sanitizedValue = dompurify_1.default.sanitize(value);
31
31
  // removes empty paragraphs
32
32
  // return sanitizedValue.replace(/\<p\>\<br\>\<\/p\>/ig, '').trim()
33
- const singleBlankLine = '<p><br></p>';
33
+ const singleBlankLine = "<p><br></p>";
34
34
  const doubleBlankLine = singleBlankLine + singleBlankLine;
35
35
  // collapse lots of blank lines into one
36
36
  while (sanitizedValue.includes(doubleBlankLine)) {
37
- // @ts-ignore
38
37
  sanitizedValue = sanitizedValue.replaceAll(doubleBlankLine, singleBlankLine);
39
38
  }
40
- // remove trailing blank line
39
+ // remove trailing blank line
41
40
  if (sanitizedValue.endsWith(singleBlankLine)) {
42
41
  sanitizedValue = sanitizedValue.substr(0, sanitizedValue.length - singleBlankLine.length);
43
42
  }
@@ -48,34 +47,44 @@ function isObject(x) {
48
47
  }
49
48
  function js(jsCode, externalReferences) {
50
49
  const hideGlobals = [
51
- 'process', 'global' //,'setTimeout','setInterval','setImmediate','clearImmediate','clearInterval','clearTimeout'
50
+ "process",
51
+ "global", //,'setTimeout','setInterval','setImmediate','clearImmediate','clearInterval','clearTimeout'
52
52
  ];
53
53
  const common = module.exports;
54
- const refNames = ['console', 'common'];
54
+ const refNames = ["console", "common"];
55
55
  const refValues = [console, common];
56
- lodash_1.default.keys(externalReferences).forEach(key => {
56
+ lodash_1.default.keys(externalReferences).forEach((key) => {
57
57
  refNames.push(key);
58
58
  refValues.push(externalReferences[key]);
59
59
  });
60
- const compiledJs = Function.apply(null, [...refNames, ...hideGlobals, '"use strict"; ' + jsCode.trim()]);
60
+ const compiledJs = Function.apply(null, [
61
+ ...refNames,
62
+ ...hideGlobals,
63
+ `"use strict"; ${jsCode.trim()}`,
64
+ ]);
61
65
  return compiledJs.apply(null, refValues);
62
66
  }
63
67
  // must be done this way so TypeScript doesn't rewrite async keyword
64
68
  // export const AsyncFunction = eval('Object.getPrototypeOf(async function () { }).constructor');
65
- exports.AsyncFunction = Object.getPrototypeOf(async function () { }).constructor;
69
+ exports.AsyncFunction = Object.getPrototypeOf(async () => { }).constructor;
66
70
  function jsAsync(jsCode, externalReferences = {}) {
67
71
  jsCode = String(jsCode).trim();
68
72
  const hideGlobals = [
69
- 'process', 'global' //,'setTimeout','setInterval','setImmediate','clearImmediate','clearInterval','clearTimeout'
73
+ "process",
74
+ "global", //,'setTimeout','setInterval','setImmediate','clearImmediate','clearInterval','clearTimeout'
70
75
  ];
71
76
  const utils = module.exports;
72
- const refNames = ['utils', 'utils_1', 'Promise', 'console'];
77
+ const refNames = ["utils", "utils_1", "Promise", "console"];
73
78
  const refValues = [utils, utils, Promise, console];
74
- lodash_1.default.keys(externalReferences).forEach(key => {
79
+ lodash_1.default.keys(externalReferences).forEach((key) => {
75
80
  refNames.push(key);
76
81
  refValues.push(externalReferences[key]);
77
82
  });
78
- const compiledJs = exports.AsyncFunction.apply(null, [...refNames, ...hideGlobals, '"use strict";\n' + jsCode]);
83
+ const compiledJs = exports.AsyncFunction.apply(null, [
84
+ ...refNames,
85
+ ...hideGlobals,
86
+ `"use strict";\n${jsCode}`,
87
+ ]);
79
88
  return compiledJs.apply(null, refValues);
80
89
  }
81
90
  function toJSON(obj) {
@@ -93,21 +102,21 @@ function toJSON(obj) {
93
102
  if (obj === Infinity)
94
103
  return "Infinity";
95
104
  if (obj instanceof RegExp)
96
- return ("__REGEXP " + obj.toString());
105
+ return `__REGEXP ${obj.toString()}`;
97
106
  // if(isDate(obj))
98
107
  // return "__DATE " + obj.toISOString();
99
108
  if (lodash_1.default.isDate(obj))
100
109
  return obj.toISOString();
101
110
  if (lodash_1.default.isFunction(obj))
102
- return '__FUNCTION ' + obj.toString();
111
+ return `__FUNCTION ${obj.toString()}`;
103
112
  if (lodash_1.default.isElement(obj)) {
104
- return "__HTML " + obj.outerHTML;
113
+ return `__HTML ${obj.outerHTML}`;
105
114
  }
106
- if (typeof window !== 'undefined' && window && obj === window) {
115
+ if (typeof window !== "undefined" && window && obj === window) {
107
116
  return "__WINDOW";
108
117
  }
109
118
  if (lodash_1.default.isError(obj)) {
110
- return "__ERROR " + obj.stack;
119
+ return `__ERROR ${obj.stack}`;
111
120
  }
112
121
  // non-objects can just be returned at this point
113
122
  if (!(isObject(obj) || lodash_1.default.isArray(obj))) {
@@ -119,32 +128,33 @@ function toJSON(obj) {
119
128
  var ref = objRefs[iObj];
120
129
  var nObj = newObjs[iObj];
121
130
  if (lodash_1.default.isArray(nObj) && (!lodash_1.default.isString(nObj[0]) || !nObj[0].match(/^__this_ref:/)))
122
- nObj.unshift("__this_ref:" + ref);
131
+ nObj.unshift(`__this_ref:${ref}`);
123
132
  else if (isObject(nObj) && !nObj.__this_ref)
124
133
  nObj.__this_ref = ref;
125
134
  return ref;
126
135
  }
127
136
  // capture references in case we need them later
128
137
  refCount++;
129
- var newRef = "__duplicate_ref_" + (lodash_1.default.isArray(obj) ? "ary_" : "obj_") + refCount;
130
- var nObj = lodash_1.default.isArray(obj) ? [] : {};
138
+ var newRef = `__duplicate_ref_${lodash_1.default.isArray(obj) ? "ary_" : "obj_"}${refCount}`;
139
+ var outObj = lodash_1.default.isArray(obj) ? [] : {};
131
140
  knownObjs.push(obj);
132
141
  objRefs.push(newRef);
133
- newObjs.push(nObj);
142
+ newObjs.push(outObj);
134
143
  // recurse on properties
135
144
  if (lodash_1.default.isArray(obj))
136
145
  for (var i = 0; i < obj.length; i++)
137
- nObj.push(recurse(obj[i])); // use push so offset from reference capture doesn't mess things up
146
+ outObj.push(recurse(obj[i])); // use push so offset from reference capture doesn't mess things up
138
147
  else
139
148
  for (var key in obj) {
140
- if (!(obj && obj.hasOwnProperty && obj.hasOwnProperty(key)))
149
+ if (!Object.hasOwn(obj, key))
141
150
  continue;
142
151
  var value = recurse(obj[key]);
143
- if (key[0] == '$') // escape leading dollar signs
144
- key = '__DOLLAR_' + key.substr(1);
145
- nObj[key] = value;
152
+ if (key[0] === "$")
153
+ // escape leading dollar signs
154
+ key = `__DOLLAR_${key.substr(1)}`;
155
+ outObj[key] = value;
146
156
  }
147
- return nObj;
157
+ return outObj;
148
158
  }
149
159
  obj = recurse(obj);
150
160
  return obj;
@@ -165,21 +175,21 @@ function fromJSON(obj, externalReferences) {
165
175
  var m = obj.split("__REGEXP ")[1].match(/\/(.*)\/(.*)?/);
166
176
  return new RegExp(m[1], m[2] || "");
167
177
  }
168
- if (obj.match(/^\d{4}-\d{2}-\d{2}T\d{2}\:\d{2}\:\d{2}\.\d{3}Z$/)) {
178
+ if (obj.match(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/)) {
169
179
  return new Date(obj);
170
180
  }
171
181
  if (obj.match(/^__FUNCTION /)) {
172
182
  return js(obj.substring(11), externalReferences);
173
183
  }
174
184
  if (obj.match(/^__HTML /)) {
175
- //@ts-ignore
176
- if (typeof $ !== 'undefined')
185
+ //@ts-expect-error
186
+ if (typeof $ !== "undefined")
177
187
  return $(obj.substring(7))[0];
178
188
  else
179
189
  return obj;
180
190
  }
181
191
  if (obj.startsWith("__ERROR ")) {
182
- let error = new Error();
192
+ const error = new Error();
183
193
  error.stack = obj.substring(8);
184
194
  return error;
185
195
  }
@@ -199,7 +209,7 @@ function fromJSON(obj, externalReferences) {
199
209
  var dup_ref = null;
200
210
  obj = lodash_1.default.clone(obj); // don't mess up the original JSON object
201
211
  if (lodash_1.default.isArray(obj) && lodash_1.default.isString(obj[0]) && obj[0].match(/^__this_ref:/))
202
- dup_ref = obj.shift().split(':')[1];
212
+ dup_ref = obj.shift().split(":")[1];
203
213
  else if (obj.__this_ref) {
204
214
  dup_ref = obj.__this_ref;
205
215
  delete obj.__this_ref;
@@ -212,11 +222,11 @@ function fromJSON(obj, externalReferences) {
212
222
  mObj = dup_refs[dup_ref];
213
223
  // restore keys and recurse on objects
214
224
  for (var key in obj) {
215
- if (!obj.hasOwnProperty(key))
225
+ if (!Object.hasOwn(obj, key))
216
226
  continue;
217
227
  var value = recurse(obj[key]);
218
228
  if (key.match(/^__DOLLAR_/))
219
- key = '$' + key.substr(9);
229
+ key = `$${key.substr(9)}`;
220
230
  mObj[key] = value;
221
231
  }
222
232
  return mObj;
@@ -245,6 +255,6 @@ function fromJSON(obj, externalReferences) {
245
255
  // }
246
256
  // return true;
247
257
  // }
248
- // @ts-ignore
249
- if (typeof window !== 'undefined')
258
+ // @ts-expect-error
259
+ if (typeof window !== "undefined")
250
260
  window.utils = module.exports;
package/jest.config.js CHANGED
@@ -1,25 +1,25 @@
1
1
  module.exports = {
2
- preset: 'ts-jest',
3
- testEnvironment: 'jsdom',
4
- setupFilesAfterEnv: ['<rootDir>/src/setupTests.ts'],
2
+ preset: "ts-jest",
3
+ testEnvironment: "jsdom",
4
+ setupFilesAfterEnv: ["<rootDir>/src/setupTests.ts"],
5
5
  moduleNameMapper: {
6
- '\\.(css|less|scss|sass)$': 'identity-obj-proxy',
6
+ "\\.(css|less|scss|sass)$": "identity-obj-proxy",
7
7
  },
8
8
  transform: {
9
- '^.+\\.(ts|tsx)$': 'ts-jest',
9
+ "^.+\\.(ts|tsx)$": "ts-jest",
10
10
  },
11
11
  testMatch: [
12
- '<rootDir>/src/**/__tests__/**/*.(ts|tsx|js)',
13
- '<rootDir>/src/**/?(*.)(spec|test).(ts|tsx|js)',
12
+ "<rootDir>/src/**/__tests__/**/*.(ts|tsx|js)",
13
+ "<rootDir>/src/**/?(*.)(spec|test).(ts|tsx|js)",
14
14
  ],
15
- moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
15
+ moduleFileExtensions: ["ts", "tsx", "js", "jsx", "json", "node"],
16
16
  collectCoverageFrom: [
17
- 'src/**/*.(ts|tsx)',
18
- '!src/**/*.d.ts',
19
- '!src/**/__tests__/**',
20
- '!src/**/?(*.)(spec|test).*',
17
+ "src/**/*.(ts|tsx)",
18
+ "!src/**/*.d.ts",
19
+ "!src/**/__tests__/**",
20
+ "!src/**/?(*.)(spec|test).*",
21
21
  ],
22
- roots: ['<rootDir>/src'],
23
- testPathIgnorePatterns: ['/node_modules/', '/dist/'],
24
- coveragePathIgnorePatterns: ['/node_modules/', '/dist/'],
25
- };
22
+ roots: ["<rootDir>/src"],
23
+ testPathIgnorePatterns: ["/node_modules/", "/dist/"],
24
+ coveragePathIgnorePatterns: ["/node_modules/", "/dist/"],
25
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peers-app/peers-ui",
3
- "version": "0.14.0",
3
+ "version": "0.15.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/peers-app/peers-ui.git"
@@ -14,36 +14,39 @@
14
14
  },
15
15
  "scripts": {
16
16
  "clean": "rm -rf dist",
17
- "build": "yarn clean && tsc",
17
+ "build": "npm run clean && tsc",
18
18
  "dev": "tsc -w",
19
- "clean:build": "yarn clean && yarn build",
20
- "release:patch": "yarn clean && yarn build && npm version patch && git push && git push --tags",
21
- "release:minor": "yarn clean && yarn build && npm version minor && git push && git push --tags",
22
- "release:major": "yarn clean && yarn build && npm version major && git push && git push --tags",
23
- "release": "yarn release:patch",
19
+ "clean:build": "npm run clean && npm run build",
20
+ "release:patch": "npm run clean && npm run build && npm version patch && git push && git push --tags",
21
+ "release:minor": "npm run clean && npm run build && npm version minor && git push && git push --tags",
22
+ "release:major": "npm run clean && npm run build && npm version major && git push && git push --tags",
23
+ "release": "npm run release:patch",
24
24
  "test": "jest --no-watchman",
25
25
  "test:watch": "jest --watch",
26
- "test:coverage": "jest --coverage"
26
+ "test:coverage": "jest --coverage",
27
+ "lint": "biome check .",
28
+ "lint:fix": "biome check --write ."
27
29
  },
28
30
  "peerDependencies": {
29
- "@peers-app/peers-sdk": "^0.14.0",
31
+ "@peers-app/peers-sdk": "^0.15.0",
30
32
  "bootstrap": "^5.3.3",
31
33
  "react": "^18.0.0",
32
34
  "react-dom": "^18.0.0"
33
35
  },
34
36
  "devDependencies": {
37
+ "@biomejs/biome": "2.3.11",
35
38
  "@babel/core": "^7.24.5",
36
39
  "@babel/preset-env": "^7.24.5",
37
40
  "@babel/preset-react": "^7.24.1",
38
41
  "@babel/preset-typescript": "^7.27.1",
39
- "@peers-app/peers-sdk": "0.14.0",
42
+ "@peers-app/peers-sdk": "0.15.0",
40
43
  "@testing-library/dom": "^10.4.0",
41
44
  "@testing-library/jest-dom": "^6.6.3",
42
45
  "@testing-library/react": "^16.3.0",
43
46
  "@testing-library/user-event": "^14.6.1",
44
47
  "@types/bootstrap": "^5.2.10",
45
48
  "@types/dompurify": "^3.0.5",
46
- "@types/jest": "^30.0.0",
49
+ "@types/jest": "^29.5.13",
47
50
  "@types/lodash": "^4.17.1",
48
51
  "@types/node": "^20.12.10",
49
52
  "@types/prismjs": "^1.26.4",
@@ -55,14 +58,14 @@
55
58
  "bootstrap": "^5.3.3",
56
59
  "identity-obj-proxy": "^3.0.0",
57
60
  "jest": "^29.7.0",
58
- "jest-environment-jsdom": "^30.0.5",
61
+ "jest-environment-jsdom": "^29.7.0",
59
62
  "path-browserify": "^1.0.1",
60
63
  "react": "^18.0.0",
61
64
  "react-dom": "^18.0.0",
62
65
  "string-width": "^7.1.0",
63
66
  "ts-jest": "^29.1.2",
64
67
  "ts-node": "^10.9.2",
65
- "typescript": "^5.4.5",
68
+ "typescript": "^5.8.3",
66
69
  "webpack": "^5.91.0",
67
70
  "webpack-cli": "^5.1.4"
68
71
  },
@@ -95,7 +98,6 @@
95
98
  "moment-timezone": "^0.5.46",
96
99
  "react-infinite-scroll-component": "^6.1.0",
97
100
  "react-markdown": "^9.0.1",
98
- "react-split-pane": "^0.1.92",
99
101
  "react-tiny-popover": "^8.0.4",
100
102
  "remark-gfm": "^4.0.0",
101
103
  "socket.io": "^4.7.5",