@arbidocs/react 0.5.110 → 0.5.112

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 (1011) hide show
  1. package/dist/PdfViewerImpl-QUSDLNNM.cjs +380 -0
  2. package/dist/PdfViewerImpl-QUSDLNNM.cjs.map +1 -0
  3. package/dist/{PdfViewer.d-bQH9yxFg.d.cts → PdfViewerImpl.d-B28hLEuj.d.ts} +8 -1
  4. package/dist/account/client.js +96 -0
  5. package/dist/account/client.js.map +7 -0
  6. package/dist/account/delete.js +70 -0
  7. package/dist/account/delete.js.map +7 -0
  8. package/dist/account/didit.js +34 -0
  9. package/dist/account/didit.js.map +7 -0
  10. package/dist/account/dismissed-tips.js +33 -0
  11. package/dist/account/dismissed-tips.js.map +7 -0
  12. package/dist/account/email.js +84 -0
  13. package/dist/account/email.js.map +7 -0
  14. package/dist/account/entitlements.js +47 -0
  15. package/dist/account/entitlements.js.map +7 -0
  16. package/dist/account/identity.js +270 -0
  17. package/dist/account/identity.js.map +7 -0
  18. package/dist/account/index.js +93 -0
  19. package/dist/account/index.js.map +7 -0
  20. package/dist/account/notifications.js +59 -0
  21. package/dist/account/notifications.js.map +7 -0
  22. package/dist/account/password.js +103 -0
  23. package/dist/account/password.js.map +7 -0
  24. package/dist/account/profile.js +116 -0
  25. package/dist/account/profile.js.map +7 -0
  26. package/dist/account/recovery.js +13 -0
  27. package/dist/account/recovery.js.map +7 -0
  28. package/dist/account/relevance.js +82 -0
  29. package/dist/account/relevance.js.map +7 -0
  30. package/dist/account/sessions.js +37 -0
  31. package/dist/account/sessions.js.map +7 -0
  32. package/dist/account/settings.js +39 -0
  33. package/dist/account/settings.js.map +7 -0
  34. package/dist/account/table-views.js +16 -0
  35. package/dist/account/table-views.js.map +7 -0
  36. package/dist/ai/AiAnswer.js +83 -0
  37. package/dist/ai/AiAnswer.js.map +7 -0
  38. package/dist/ai/AiMarkdown.js +40 -0
  39. package/dist/ai/AiMarkdown.js.map +7 -0
  40. package/dist/ai/ArtifactCanvas.js +193 -0
  41. package/dist/ai/ArtifactCanvas.js.map +7 -0
  42. package/dist/ai/CitationRenderer.js +413 -0
  43. package/dist/ai/CitationRenderer.js.map +7 -0
  44. package/dist/{chunk-WL2Y2T47.js → ai/MarkdownRenderer.js} +35 -101
  45. package/dist/ai/MarkdownRenderer.js.map +7 -0
  46. package/dist/ai/MessageArtifactCard.js +75 -0
  47. package/dist/ai/MessageArtifactCard.js.map +7 -0
  48. package/dist/ai/PassageCard.js +79 -0
  49. package/dist/ai/PassageCard.js.map +7 -0
  50. package/dist/ai/engine.js +110 -0
  51. package/dist/ai/engine.js.map +7 -0
  52. package/dist/ai/index.js +63 -0
  53. package/dist/ai/index.js.map +7 -0
  54. package/dist/ai/markdown-base-components.js +37 -0
  55. package/dist/ai/markdown-base-components.js.map +7 -0
  56. package/dist/ai/markdown-streaming-context.js +6 -0
  57. package/dist/ai/markdown-streaming-context.js.map +7 -0
  58. package/dist/{chunk-VSCU7K4V.js → ai/normalize-citations.js} +12 -19
  59. package/dist/ai/normalize-citations.js.map +7 -0
  60. package/dist/ai/redline.js +41 -0
  61. package/dist/ai/redline.js.map +7 -0
  62. package/dist/ai/split-markdown-blocks.js +40 -0
  63. package/dist/ai/split-markdown-blocks.js.map +7 -0
  64. package/dist/{chunk-UW2SGTI5.js → ai/stored-markdown.js} +41 -93
  65. package/dist/ai/stored-markdown.js.map +7 -0
  66. package/dist/annotations/AnnotationPageOverlay.js +807 -0
  67. package/dist/annotations/AnnotationPageOverlay.js.map +7 -0
  68. package/dist/annotations/AnnotationToolbar.js +398 -0
  69. package/dist/annotations/AnnotationToolbar.js.map +7 -0
  70. package/dist/annotations/FreezeDialog.js +170 -0
  71. package/dist/annotations/FreezeDialog.js.map +7 -0
  72. package/dist/annotations/ProductionDialog.js +354 -0
  73. package/dist/annotations/ProductionDialog.js.map +7 -0
  74. package/dist/annotations/controller.js +49 -0
  75. package/dist/annotations/controller.js.map +7 -0
  76. package/dist/annotations/freeze/browser.js +21 -0
  77. package/dist/annotations/freeze/browser.js.map +7 -0
  78. package/dist/annotations/freeze/bundle.js +201 -0
  79. package/dist/annotations/freeze/bundle.js.map +7 -0
  80. package/dist/annotations/freeze/coords.js +37 -0
  81. package/dist/annotations/freeze/coords.js.map +7 -0
  82. package/dist/annotations/freeze/freeze.js +261 -0
  83. package/dist/annotations/freeze/freeze.js.map +7 -0
  84. package/dist/annotations/freeze/hash.js +28 -0
  85. package/dist/annotations/freeze/hash.js.map +7 -0
  86. package/dist/annotations/freeze/index-page.js +78 -0
  87. package/dist/annotations/freeze/index-page.js.map +7 -0
  88. package/dist/annotations/freeze/index.d.ts +1 -1
  89. package/dist/annotations/freeze/index.js +28 -22
  90. package/dist/annotations/freeze/index.js.map +7 -1
  91. package/dist/annotations/freeze/raster.js +208 -0
  92. package/dist/annotations/freeze/raster.js.map +7 -0
  93. package/dist/annotations/freeze/stamp.js +117 -0
  94. package/dist/annotations/freeze/stamp.js.map +7 -0
  95. package/dist/annotations/freeze/types.js +14 -0
  96. package/dist/annotations/freeze/types.js.map +7 -0
  97. package/dist/annotations/freeze/vector.js +283 -0
  98. package/dist/annotations/freeze/vector.js.map +7 -0
  99. package/dist/annotations/geometry.js +81 -0
  100. package/dist/annotations/geometry.js.map +7 -0
  101. package/dist/annotations/index.js +125 -6
  102. package/dist/annotations/index.js.map +7 -1
  103. package/dist/annotations/merge.js +53 -0
  104. package/dist/annotations/merge.js.map +7 -0
  105. package/dist/{chunk-T3USOSVN.js → annotations/model.js} +23 -16
  106. package/dist/annotations/model.js.map +7 -0
  107. package/dist/annotations/overlay-geometry.js +41 -0
  108. package/dist/annotations/overlay-geometry.js.map +7 -0
  109. package/dist/annotations/redaction-log.js +33 -0
  110. package/dist/annotations/redaction-log.js.map +7 -0
  111. package/dist/annotations/selection-marks.js +122 -0
  112. package/dist/annotations/selection-marks.js.map +7 -0
  113. package/dist/annotations/state.js +140 -0
  114. package/dist/annotations/state.js.map +7 -0
  115. package/dist/annotations/store.js +49 -0
  116. package/dist/annotations/store.js.map +7 -0
  117. package/dist/annotations/useAnnotationLayer.js +306 -0
  118. package/dist/annotations/useAnnotationLayer.js.map +7 -0
  119. package/dist/annotations/useAnnotationShortcuts.js +31 -0
  120. package/dist/annotations/useAnnotationShortcuts.js.map +7 -0
  121. package/dist/annotations/useTextSelectionMarks.js +100 -0
  122. package/dist/annotations/useTextSelectionMarks.js.map +7 -0
  123. package/dist/artifacts/artifact-kind.js +19 -0
  124. package/dist/artifacts/artifact-kind.js.map +7 -0
  125. package/dist/artifacts/index.cjs +13 -13
  126. package/dist/artifacts/index.js +89 -571
  127. package/dist/artifacts/index.js.map +7 -1
  128. package/dist/{chunk-WUTL62MC.js → artifacts/normalize-markdown.js} +12 -14
  129. package/dist/artifacts/normalize-markdown.js.map +7 -0
  130. package/dist/artifacts/redline-core.js +12 -3
  131. package/dist/artifacts/redline-core.js.map +7 -1
  132. package/dist/{chunk-74N436VK.js → artifacts/redline-diff.js} +10 -9
  133. package/dist/artifacts/redline-diff.js.map +7 -0
  134. package/dist/artifacts/redline-engine.js +14 -0
  135. package/dist/artifacts/redline-engine.js.map +7 -0
  136. package/dist/artifacts/renderArtifactMarkdown.js +9 -0
  137. package/dist/artifacts/renderArtifactMarkdown.js.map +7 -0
  138. package/dist/artifacts/useArtifactEditSession.js +183 -0
  139. package/dist/artifacts/useArtifactEditSession.js.map +7 -0
  140. package/dist/artifacts/useArtifactSession.js +173 -0
  141. package/dist/artifacts/useArtifactSession.js.map +7 -0
  142. package/dist/artifacts/useArtifactSource.js +16 -0
  143. package/dist/artifacts/useArtifactSource.js.map +7 -0
  144. package/dist/artifacts/useArtifactText.js +78 -0
  145. package/dist/artifacts/useArtifactText.js.map +7 -0
  146. package/dist/artifacts/useRedline.js +65 -0
  147. package/dist/artifacts/useRedline.js.map +7 -0
  148. package/dist/artifacts/useStreamedArtifact.js +74 -0
  149. package/dist/artifacts/useStreamedArtifact.js.map +7 -0
  150. package/dist/artifacts/versions.js +68 -0
  151. package/dist/artifacts/versions.js.map +7 -0
  152. package/dist/billing.js +200 -0
  153. package/dist/billing.js.map +7 -0
  154. package/dist/boot-timeout.js +19 -0
  155. package/dist/boot-timeout.js.map +7 -0
  156. package/dist/calendar/accounts.js +213 -0
  157. package/dist/calendar/accounts.js.map +7 -0
  158. package/dist/calendar/hooks.js +409 -0
  159. package/dist/calendar/hooks.js.map +7 -0
  160. package/dist/calendar/index.js +31 -0
  161. package/dist/calendar/index.js.map +7 -0
  162. package/dist/calendar/keys.js +5 -0
  163. package/dist/calendar/keys.js.map +7 -0
  164. package/dist/calendar/offline/outbox.js +231 -0
  165. package/dist/calendar/offline/outbox.js.map +7 -0
  166. package/dist/calendar/offline/runtime.js +109 -0
  167. package/dist/calendar/offline/runtime.js.map +7 -0
  168. package/dist/calendar/offline/support.js +41 -0
  169. package/dist/calendar/offline/support.js.map +7 -0
  170. package/dist/calendar/support.js +34 -0
  171. package/dist/calendar/support.js.map +7 -0
  172. package/dist/calls/actions.js +226 -0
  173. package/dist/calls/actions.js.map +7 -0
  174. package/dist/calls/events.js +138 -0
  175. package/dist/calls/events.js.map +7 -0
  176. package/dist/calls/gate.js +19 -0
  177. package/dist/calls/gate.js.map +7 -0
  178. package/dist/calls/hooks.js +115 -0
  179. package/dist/calls/hooks.js.map +7 -0
  180. package/dist/calls/in-call-chat.js +132 -0
  181. package/dist/calls/in-call-chat.js.map +7 -0
  182. package/dist/calls/index.js +24 -0
  183. package/dist/calls/index.js.map +7 -0
  184. package/dist/calls/keys.js +17 -0
  185. package/dist/calls/keys.js.map +7 -0
  186. package/dist/calls/livekit/index.cjs +48 -48
  187. package/dist/calls/livekit/index.js +6 -958
  188. package/dist/calls/livekit/index.js.map +7 -1
  189. package/dist/calls/livekit/room.js +98 -0
  190. package/dist/calls/livekit/room.js.map +7 -0
  191. package/dist/calls/livekit/useCallRecorder.js +219 -0
  192. package/dist/calls/livekit/useCallRecorder.js.map +7 -0
  193. package/dist/calls/livekit/useCallTranscriber.js +309 -0
  194. package/dist/calls/livekit/useCallTranscriber.js.map +7 -0
  195. package/dist/calls/livekit/useHostMuteNotice.js +29 -0
  196. package/dist/calls/livekit/useHostMuteNotice.js.map +7 -0
  197. package/dist/calls/livekit/useInCallChat.js +161 -0
  198. package/dist/calls/livekit/useInCallChat.js.map +7 -0
  199. package/dist/calls/livekit/useWebinar.js +239 -0
  200. package/dist/calls/livekit/useWebinar.js.map +7 -0
  201. package/dist/calls/meeting-chat.js +149 -0
  202. package/dist/calls/meeting-chat.js.map +7 -0
  203. package/dist/calls/moderation.js +50 -0
  204. package/dist/calls/moderation.js.map +7 -0
  205. package/dist/calls/open-meeting-chat.js +29 -0
  206. package/dist/calls/open-meeting-chat.js.map +7 -0
  207. package/dist/calls/read-only.js +24 -0
  208. package/dist/calls/read-only.js.map +7 -0
  209. package/dist/calls/recording-media.js +218 -0
  210. package/dist/calls/recording-media.js.map +7 -0
  211. package/dist/calls/recording-playback.js +260 -0
  212. package/dist/calls/recording-playback.js.map +7 -0
  213. package/dist/calls/recording.js +268 -0
  214. package/dist/calls/recording.js.map +7 -0
  215. package/dist/calls/save-to-thread.js +80 -0
  216. package/dist/calls/save-to-thread.js.map +7 -0
  217. package/dist/calls/session.js +134 -0
  218. package/dist/calls/session.js.map +7 -0
  219. package/dist/calls/transcript-format.js +147 -0
  220. package/dist/calls/transcript-format.js.map +7 -0
  221. package/dist/calls/transcription.js +101 -0
  222. package/dist/calls/transcription.js.map +7 -0
  223. package/dist/calls/webinar.js +71 -0
  224. package/dist/calls/webinar.js.map +7 -0
  225. package/dist/charge-watch.js +71 -0
  226. package/dist/charge-watch.js.map +7 -0
  227. package/dist/chat/ChatBubble.js +146 -0
  228. package/dist/chat/ChatBubble.js.map +7 -0
  229. package/dist/chat/ConversationScope.js +30 -0
  230. package/dist/chat/ConversationScope.js.map +7 -0
  231. package/dist/chat/active-config.js +20 -0
  232. package/dist/chat/active-config.js.map +7 -0
  233. package/dist/chat/agent-chat-owner.js +25 -0
  234. package/dist/chat/agent-chat-owner.js.map +7 -0
  235. package/dist/chat/chat-artifacts.js +64 -0
  236. package/dist/chat/chat-artifacts.js.map +7 -0
  237. package/dist/chat/citations.js +32 -0
  238. package/dist/chat/citations.js.map +7 -0
  239. package/dist/chat/config-model.js +10 -0
  240. package/dist/chat/config-model.js.map +7 -0
  241. package/dist/chat/conversation-cache.js +676 -0
  242. package/dist/chat/conversation-cache.js.map +7 -0
  243. package/dist/chat/conversation-events.js +57 -0
  244. package/dist/chat/conversation-events.js.map +7 -0
  245. package/dist/chat/conversation-mentions.js +58 -0
  246. package/dist/chat/conversation-mentions.js.map +7 -0
  247. package/dist/chat/conversation-workspace.js +58 -0
  248. package/dist/chat/conversation-workspace.js.map +7 -0
  249. package/dist/chat/mentions.js +116 -0
  250. package/dist/chat/mentions.js.map +7 -0
  251. package/dist/chat/open-document.js +106 -0
  252. package/dist/chat/open-document.js.map +7 -0
  253. package/dist/chat/orphaned.js +44 -0
  254. package/dist/chat/orphaned.js.map +7 -0
  255. package/dist/chat/pendingFirstTurn.js +30 -0
  256. package/dist/chat/pendingFirstTurn.js.map +7 -0
  257. package/dist/chat/reply-target.js +12 -0
  258. package/dist/chat/reply-target.js.map +7 -0
  259. package/dist/chat/run-finished.js +28 -0
  260. package/dist/chat/run-finished.js.map +7 -0
  261. package/dist/chat/run-state.js +91 -0
  262. package/dist/chat/run-state.js.map +7 -0
  263. package/dist/chat/stream-handlers.js +419 -0
  264. package/dist/chat/stream-handlers.js.map +7 -0
  265. package/dist/chat/thread-binding.js +76 -0
  266. package/dist/chat/thread-binding.js.map +7 -0
  267. package/dist/chat/thread-document.js +53 -0
  268. package/dist/chat/thread-document.js.map +7 -0
  269. package/dist/chat/turn-control.js +79 -0
  270. package/dist/chat/turn-control.js.map +7 -0
  271. package/dist/chat/useAgentRunControl.js +36 -0
  272. package/dist/chat/useAgentRunControl.js.map +7 -0
  273. package/dist/chat/useAnswerAgentQuestion.js +19 -0
  274. package/dist/chat/useAnswerAgentQuestion.js.map +7 -0
  275. package/dist/chat/useAskAgain.js +32 -0
  276. package/dist/chat/useAskAgain.js.map +7 -0
  277. package/dist/chat/useAutoSendDraft.js +17 -0
  278. package/dist/chat/useAutoSendDraft.js.map +7 -0
  279. package/dist/chat/useBranchNavigation.js +97 -0
  280. package/dist/chat/useBranchNavigation.js.map +7 -0
  281. package/dist/chat/useConnectRunStream.js +169 -0
  282. package/dist/chat/useConnectRunStream.js.map +7 -0
  283. package/dist/chat/useConversation.js +431 -0
  284. package/dist/chat/useConversation.js.map +7 -0
  285. package/dist/chat/useConversationActions.js +662 -0
  286. package/dist/chat/useConversationActions.js.map +7 -0
  287. package/dist/chat/useConversationData.js +143 -0
  288. package/dist/chat/useConversationData.js.map +7 -0
  289. package/dist/chat/useConversationDocuments.js +41 -0
  290. package/dist/chat/useConversationDocuments.js.map +7 -0
  291. package/dist/chat/useConversationSettings.js +78 -0
  292. package/dist/chat/useConversationSettings.js.map +7 -0
  293. package/dist/chat/useConversationTurn.js +31 -0
  294. package/dist/chat/useConversationTurn.js.map +7 -0
  295. package/dist/chat/useConversationWorkspace.js +12 -0
  296. package/dist/chat/useConversationWorkspace.js.map +7 -0
  297. package/dist/chat/useDeleteMessage.js +15 -0
  298. package/dist/chat/useDeleteMessage.js.map +7 -0
  299. package/dist/chat/useDocumentAutoAdd.js +73 -0
  300. package/dist/chat/useDocumentAutoAdd.js.map +7 -0
  301. package/dist/chat/useMessageTimer.js +39 -0
  302. package/dist/chat/useMessageTimer.js.map +7 -0
  303. package/dist/chat/useThinkingContent.js +67 -0
  304. package/dist/chat/useThinkingContent.js.map +7 -0
  305. package/dist/chat/useThreadDocument.js +61 -0
  306. package/dist/chat/useThreadDocument.js.map +7 -0
  307. package/dist/chat/workflow-run-titles.js +50 -0
  308. package/dist/chat/workflow-run-titles.js.map +7 -0
  309. package/dist/{chunk-W2FATOTX.cjs → chunk-3JAEX57E.cjs} +4 -4
  310. package/dist/{chunk-W2FATOTX.cjs.map → chunk-3JAEX57E.cjs.map} +1 -1
  311. package/dist/{chunk-HD5H2PPP.cjs → chunk-5TRUFWKT.cjs} +66 -66
  312. package/dist/{chunk-HD5H2PPP.cjs.map → chunk-5TRUFWKT.cjs.map} +1 -1
  313. package/dist/{chunk-Z3W4XFWB.cjs → chunk-C72FSQUE.cjs} +3 -3
  314. package/dist/{chunk-Z3W4XFWB.cjs.map → chunk-C72FSQUE.cjs.map} +1 -1
  315. package/dist/{chunk-LBAG7KL7.cjs → chunk-FQVNZCTD.cjs} +3 -3
  316. package/dist/{chunk-LBAG7KL7.cjs.map → chunk-FQVNZCTD.cjs.map} +1 -1
  317. package/dist/{chunk-RVUGSM65.cjs → chunk-GKGAPU6T.cjs} +44 -44
  318. package/dist/{chunk-RVUGSM65.cjs.map → chunk-GKGAPU6T.cjs.map} +1 -1
  319. package/dist/{chunk-7LIMHY56.cjs → chunk-O32T7XRD.cjs} +3 -3
  320. package/dist/{chunk-7LIMHY56.cjs.map → chunk-O32T7XRD.cjs.map} +1 -1
  321. package/dist/chunk-PWGSIM3F.cjs +291 -0
  322. package/dist/chunk-PWGSIM3F.cjs.map +1 -0
  323. package/dist/chunk-QP3WQSAA.cjs +23 -0
  324. package/dist/chunk-QP3WQSAA.cjs.map +1 -0
  325. package/dist/chunk-T5FZICXN.cjs +50 -0
  326. package/dist/chunk-T5FZICXN.cjs.map +1 -0
  327. package/dist/{chunk-QF2BW6HZ.cjs → chunk-UDDJIUHJ.cjs} +38 -38
  328. package/dist/{chunk-QF2BW6HZ.cjs.map → chunk-UDDJIUHJ.cjs.map} +1 -1
  329. package/dist/{chunk-5HDKL6XB.cjs → chunk-YMB6XUR2.cjs} +57 -57
  330. package/dist/{chunk-5HDKL6XB.cjs.map → chunk-YMB6XUR2.cjs.map} +1 -1
  331. package/dist/config/config-hooks.js +209 -0
  332. package/dist/config/config-hooks.js.map +7 -0
  333. package/dist/connectivity.js +72 -0
  334. package/dist/connectivity.js.map +7 -0
  335. package/dist/connectors/hooks.js +263 -0
  336. package/dist/connectors/hooks.js.map +7 -0
  337. package/dist/connectors/index.js +28 -0
  338. package/dist/connectors/index.js.map +7 -0
  339. package/dist/contacts.js +100 -0
  340. package/dist/contacts.js.map +7 -0
  341. package/dist/conversation-list.js +65 -0
  342. package/dist/conversation-list.js.map +7 -0
  343. package/dist/databases.js +195 -0
  344. package/dist/databases.js.map +7 -0
  345. package/dist/datasets/aggregate.js +281 -0
  346. package/dist/datasets/aggregate.js.map +7 -0
  347. package/dist/datasets/index.js +122 -0
  348. package/dist/datasets/index.js.map +7 -0
  349. package/dist/datasets/members.js +27 -0
  350. package/dist/datasets/members.js.map +7 -0
  351. package/dist/datasets/panel.js +44 -0
  352. package/dist/datasets/panel.js.map +7 -0
  353. package/dist/datasets/registry.js +47 -0
  354. package/dist/datasets/registry.js.map +7 -0
  355. package/dist/datasets/rows-source.js +44 -0
  356. package/dist/datasets/rows-source.js.map +7 -0
  357. package/dist/datasets/sources/activity.js +83 -0
  358. package/dist/datasets/sources/activity.js.map +7 -0
  359. package/dist/datasets/sources/conversations.js +74 -0
  360. package/dist/datasets/sources/conversations.js.map +7 -0
  361. package/dist/datasets/sources/database.js +209 -0
  362. package/dist/datasets/sources/database.js.map +7 -0
  363. package/dist/datasets/sources/documents.js +93 -0
  364. package/dist/datasets/sources/documents.js.map +7 -0
  365. package/dist/datasets/sources/facts.js +56 -0
  366. package/dist/datasets/sources/facts.js.map +7 -0
  367. package/dist/datasets/sources/projects.js +117 -0
  368. package/dist/datasets/sources/projects.js.map +7 -0
  369. package/dist/datasets/sources/tags.js +67 -0
  370. package/dist/datasets/sources/tags.js.map +7 -0
  371. package/dist/datasets/sources/usage.js +268 -0
  372. package/dist/datasets/sources/usage.js.map +7 -0
  373. package/dist/datasets/sources/workflows.js +91 -0
  374. package/dist/datasets/sources/workflows.js.map +7 -0
  375. package/dist/datasets/sources/workspaces.js +67 -0
  376. package/dist/datasets/sources/workspaces.js.map +7 -0
  377. package/dist/datasets/store.js +194 -0
  378. package/dist/datasets/store.js.map +7 -0
  379. package/dist/datasets/types.js +14 -0
  380. package/dist/datasets/types.js.map +7 -0
  381. package/dist/directmessages/ConversationList.js +148 -0
  382. package/dist/directmessages/ConversationList.js.map +7 -0
  383. package/dist/directmessages/DateSeparator.js +8 -0
  384. package/dist/directmessages/DateSeparator.js.map +7 -0
  385. package/dist/directmessages/DmAvatar.js +29 -0
  386. package/dist/directmessages/DmAvatar.js.map +7 -0
  387. package/dist/directmessages/DmComposer.js +201 -0
  388. package/dist/directmessages/DmComposer.js.map +7 -0
  389. package/dist/directmessages/arrivals.js +29 -0
  390. package/dist/directmessages/arrivals.js.map +7 -0
  391. package/dist/directmessages/chat-cache.js +192 -0
  392. package/dist/directmessages/chat-cache.js.map +7 -0
  393. package/dist/directmessages/grouping.js +26 -0
  394. package/dist/directmessages/grouping.js.map +7 -0
  395. package/dist/directmessages/index.js +81 -0
  396. package/dist/directmessages/index.js.map +7 -0
  397. package/dist/directmessages/useChats.js +266 -0
  398. package/dist/directmessages/useChats.js.map +7 -0
  399. package/dist/directmessages/utils.js +23 -0
  400. package/dist/directmessages/utils.js.map +7 -0
  401. package/dist/document-tools/can-annotate.js +7 -0
  402. package/dist/document-tools/can-annotate.js.map +7 -0
  403. package/dist/document-tools/core.cjs +99 -99
  404. package/dist/document-tools/core.d.ts +2 -2
  405. package/dist/document-tools/core.js +218 -12
  406. package/dist/document-tools/core.js.map +7 -1
  407. package/dist/document-tools/document-pdf.js +76 -0
  408. package/dist/document-tools/document-pdf.js.map +7 -0
  409. package/dist/document-tools/environment.js +136 -0
  410. package/dist/document-tools/environment.js.map +7 -0
  411. package/dist/document-tools/file-shares.js +112 -0
  412. package/dist/document-tools/file-shares.js.map +7 -0
  413. package/dist/document-tools/frozen-copy.js +27 -0
  414. package/dist/document-tools/frozen-copy.js.map +7 -0
  415. package/dist/document-tools/index.cjs +101 -101
  416. package/dist/document-tools/index.d.ts +1 -1
  417. package/dist/document-tools/index.js +26 -148
  418. package/dist/document-tools/index.js.map +7 -1
  419. package/dist/document-tools/markup-download.js +51 -0
  420. package/dist/document-tools/markup-download.js.map +7 -0
  421. package/dist/document-tools/markup-store.js +138 -0
  422. package/dist/document-tools/markup-store.js.map +7 -0
  423. package/dist/document-tools/markup-transfer.js +88 -0
  424. package/dist/document-tools/markup-transfer.js.map +7 -0
  425. package/dist/document-tools/production.js +147 -0
  426. package/dist/document-tools/production.js.map +7 -0
  427. package/dist/document-tools/saved-signature.js +90 -0
  428. package/dist/document-tools/saved-signature.js.map +7 -0
  429. package/dist/document-tools/signature-requests.js +310 -0
  430. package/dist/document-tools/signature-requests.js.map +7 -0
  431. package/dist/document-tools/signing.js +127 -0
  432. package/dist/document-tools/signing.js.map +7 -0
  433. package/dist/document-tools/useDocumentBytes.js +38 -0
  434. package/dist/document-tools/useDocumentBytes.js.map +7 -0
  435. package/dist/document-tools/useDocumentMarkup.js +154 -0
  436. package/dist/document-tools/useDocumentMarkup.js.map +7 -0
  437. package/dist/document-tools/useIsOnline.js +13 -0
  438. package/dist/document-tools/useIsOnline.js.map +7 -0
  439. package/dist/document-tools/verification.js +60 -0
  440. package/dist/document-tools/verification.js.map +7 -0
  441. package/dist/documents/DocumentReview.js +220 -0
  442. package/dist/documents/DocumentReview.js.map +7 -0
  443. package/dist/documents/DraftTitleControls.js +41 -0
  444. package/dist/documents/DraftTitleControls.js.map +7 -0
  445. package/dist/documents/InlineMicButton.js +90 -0
  446. package/dist/documents/InlineMicButton.js.map +7 -0
  447. package/dist/documents/MicRecordingOverlay.js +29 -0
  448. package/dist/documents/MicRecordingOverlay.js.map +7 -0
  449. package/dist/documents/MicWaveformIndicator.js +68 -0
  450. package/dist/documents/MicWaveformIndicator.js.map +7 -0
  451. package/dist/documents/PhotoCapture.js +120 -0
  452. package/dist/documents/PhotoCapture.js.map +7 -0
  453. package/dist/documents/VideoCapture.js +129 -0
  454. package/dist/documents/VideoCapture.js.map +7 -0
  455. package/dist/documents/VoiceNoteRecorder.js +166 -0
  456. package/dist/documents/VoiceNoteRecorder.js.map +7 -0
  457. package/dist/documents/audio-segmenter.js +63 -0
  458. package/dist/documents/audio-segmenter.js.map +7 -0
  459. package/dist/documents/capture-frame.js +21 -0
  460. package/dist/documents/capture-frame.js.map +7 -0
  461. package/dist/documents/chunked-recorder.js +190 -0
  462. package/dist/documents/chunked-recorder.js.map +7 -0
  463. package/dist/documents/document-download.js +53 -0
  464. package/dist/documents/document-download.js.map +7 -0
  465. package/dist/documents/document-fields.js +109 -0
  466. package/dist/documents/document-fields.js.map +7 -0
  467. package/dist/documents/documents-cache.js +110 -0
  468. package/dist/documents/documents-cache.js.map +7 -0
  469. package/dist/documents/documents-data.js +128 -0
  470. package/dist/documents/documents-data.js.map +7 -0
  471. package/dist/documents/documents-loader.js +113 -0
  472. package/dist/documents/documents-loader.js.map +7 -0
  473. package/dist/documents/documents-writes.js +448 -0
  474. package/dist/documents/documents-writes.js.map +7 -0
  475. package/dist/documents/format-elapsed.js +10 -0
  476. package/dist/documents/format-elapsed.js.map +7 -0
  477. package/dist/documents/has-video-track.js +26 -0
  478. package/dist/documents/has-video-track.js.map +7 -0
  479. package/dist/documents/index.js +266 -0
  480. package/dist/documents/index.js.map +7 -0
  481. package/dist/documents/media-error.js +18 -0
  482. package/dist/documents/media-error.js.map +7 -0
  483. package/dist/documents/offline-documents.js +160 -0
  484. package/dist/documents/offline-documents.js.map +7 -0
  485. package/dist/documents/pending-sync.js +210 -0
  486. package/dist/documents/pending-sync.js.map +7 -0
  487. package/dist/documents/processing-live.js +122 -0
  488. package/dist/documents/processing-live.js.map +7 -0
  489. package/dist/documents/processing-order.js +59 -0
  490. package/dist/documents/processing-order.js.map +7 -0
  491. package/dist/documents/processing-settle.js +21 -0
  492. package/dist/documents/processing-settle.js.map +7 -0
  493. package/dist/documents/related-documents.js +133 -0
  494. package/dist/documents/related-documents.js.map +7 -0
  495. package/dist/documents/support.js +29 -0
  496. package/dist/documents/support.js.map +7 -0
  497. package/dist/documents/upload-files.js +169 -0
  498. package/dist/documents/upload-files.js.map +7 -0
  499. package/dist/documents/useAudioRecorder.js +315 -0
  500. package/dist/documents/useAudioRecorder.js.map +7 -0
  501. package/dist/documents/useCameraStream.js +35 -0
  502. package/dist/documents/useCameraStream.js.map +7 -0
  503. package/dist/documents/useDocumentThumbnails.js +71 -0
  504. package/dist/documents/useDocumentThumbnails.js.map +7 -0
  505. package/dist/documents/useDownloadDocuments.js +90 -0
  506. package/dist/documents/useDownloadDocuments.js.map +7 -0
  507. package/dist/documents/usePassageQuotes.js +37 -0
  508. package/dist/documents/usePassageQuotes.js.map +7 -0
  509. package/dist/documents/useUploadFiles.js +165 -0
  510. package/dist/documents/useUploadFiles.js.map +7 -0
  511. package/dist/documents/useUploadFromUrls.js +63 -0
  512. package/dist/documents/useUploadFromUrls.js.map +7 -0
  513. package/dist/documents/useVideoRecorder.js +62 -0
  514. package/dist/documents/useVideoRecorder.js.map +7 -0
  515. package/dist/entities/AgentMarkers.js +61 -0
  516. package/dist/entities/AgentMarkers.js.map +7 -0
  517. package/dist/entities/DocumentEntity.js +125 -0
  518. package/dist/entities/DocumentEntity.js.map +7 -0
  519. package/dist/entities/EntityPill.js +250 -0
  520. package/dist/entities/EntityPill.js.map +7 -0
  521. package/dist/entities/ProjectEntity.js +61 -0
  522. package/dist/entities/ProjectEntity.js.map +7 -0
  523. package/dist/entities/ShieldIcon.js +49 -0
  524. package/dist/entities/ShieldIcon.js.map +7 -0
  525. package/dist/entities/TagEntity.js +79 -0
  526. package/dist/entities/TagEntity.js.map +7 -0
  527. package/dist/entities/ThreadVisibilityIcon.js +15 -0
  528. package/dist/entities/ThreadVisibilityIcon.js.map +7 -0
  529. package/dist/entities/UserEntity.js +211 -0
  530. package/dist/entities/UserEntity.js.map +7 -0
  531. package/dist/entities/VerifiedBadge.js +19 -0
  532. package/dist/entities/VerifiedBadge.js.map +7 -0
  533. package/dist/entities/agent-avatar-colors.js +26 -0
  534. package/dist/entities/agent-avatar-colors.js.map +7 -0
  535. package/dist/entities/colors.js +64 -0
  536. package/dist/entities/colors.js.map +7 -0
  537. package/dist/entities/file-type.js +151 -0
  538. package/dist/entities/file-type.js.map +7 -0
  539. package/dist/entities/index.js +100 -0
  540. package/dist/entities/index.js.map +7 -0
  541. package/dist/entities/media-type.js +61 -0
  542. package/dist/entities/media-type.js.map +7 -0
  543. package/dist/entities/registry.js +385 -0
  544. package/dist/entities/registry.js.map +7 -0
  545. package/dist/entities/status.js +43 -0
  546. package/dist/entities/status.js.map +7 -0
  547. package/dist/entities/tag-kinds.js +23 -0
  548. package/dist/entities/tag-kinds.js.map +7 -0
  549. package/dist/entities/tag-types.js +44 -0
  550. package/dist/entities/tag-types.js.map +7 -0
  551. package/dist/entities/vocabulary.js +12 -0
  552. package/dist/entities/vocabulary.js.map +7 -0
  553. package/dist/entity-extraction.js +25 -0
  554. package/dist/entity-extraction.js.map +7 -0
  555. package/dist/facts-search.js +57 -0
  556. package/dist/facts-search.js.map +7 -0
  557. package/dist/facts.js +69 -0
  558. package/dist/facts.js.map +7 -0
  559. package/dist/hooks.js +320 -0
  560. package/dist/hooks.js.map +7 -0
  561. package/dist/host/ArbiHost.js +24 -0
  562. package/dist/host/ArbiHost.js.map +7 -0
  563. package/dist/host/assistant-copy.js +54 -0
  564. package/dist/host/assistant-copy.js.map +7 -0
  565. package/dist/host/config.js +9 -0
  566. package/dist/host/config.js.map +7 -0
  567. package/dist/host/context.js +10 -0
  568. package/dist/host/context.js.map +7 -0
  569. package/dist/host/features.js +144 -0
  570. package/dist/host/features.js.map +7 -0
  571. package/dist/host/index.js +12 -0
  572. package/dist/host/index.js.map +7 -0
  573. package/dist/{chunk-DPYBZDJB.js → host/merge.js} +7 -7
  574. package/dist/host/merge.js.map +7 -0
  575. package/dist/house-template.js +40 -0
  576. package/dist/house-template.js.map +7 -0
  577. package/dist/icons/AppleIcon.js +25 -0
  578. package/dist/icons/AppleIcon.js.map +7 -0
  579. package/dist/icons/ArbiBotHeadIcon.js +46 -0
  580. package/dist/icons/ArbiBotHeadIcon.js.map +7 -0
  581. package/dist/icons/ArbiIcon.js +24 -0
  582. package/dist/icons/ArbiIcon.js.map +7 -0
  583. package/dist/icons/AudIcon.js +56 -0
  584. package/dist/icons/AudIcon.js.map +7 -0
  585. package/dist/icons/ClaudeIcon.js +28 -0
  586. package/dist/icons/ClaudeIcon.js.map +7 -0
  587. package/dist/icons/DocIcon.js +56 -0
  588. package/dist/icons/DocIcon.js.map +7 -0
  589. package/dist/icons/EmlIcon.js +57 -0
  590. package/dist/icons/EmlIcon.js.map +7 -0
  591. package/dist/icons/FireworksIcon.js +47 -0
  592. package/dist/icons/FireworksIcon.js.map +7 -0
  593. package/dist/icons/GeminiIcon.js +37 -0
  594. package/dist/icons/GeminiIcon.js.map +7 -0
  595. package/dist/icons/GitHubIcon.js +32 -0
  596. package/dist/icons/GitHubIcon.js.map +7 -0
  597. package/dist/icons/GoogleIcon.js +53 -0
  598. package/dist/icons/GoogleIcon.js.map +7 -0
  599. package/dist/icons/HtmlIcon.js +56 -0
  600. package/dist/icons/HtmlIcon.js.map +7 -0
  601. package/dist/icons/ImgIcon.js +56 -0
  602. package/dist/icons/ImgIcon.js.map +7 -0
  603. package/dist/icons/LinkedInIcon.js +25 -0
  604. package/dist/icons/LinkedInIcon.js.map +7 -0
  605. package/dist/icons/OpenAIIcon.js +28 -0
  606. package/dist/icons/OpenAIIcon.js.map +7 -0
  607. package/dist/icons/PdfIcon.js +56 -0
  608. package/dist/icons/PdfIcon.js.map +7 -0
  609. package/dist/icons/ProviderIcon.js +42 -0
  610. package/dist/icons/ProviderIcon.js.map +7 -0
  611. package/dist/icons/TxtIcon.js +56 -0
  612. package/dist/icons/TxtIcon.js.map +7 -0
  613. package/dist/icons/VidIcon.js +56 -0
  614. package/dist/icons/VidIcon.js.map +7 -0
  615. package/dist/icons/XlsIcon.js +56 -0
  616. package/dist/icons/XlsIcon.js.map +7 -0
  617. package/dist/icons/arbi-mark.js +5 -0
  618. package/dist/icons/arbi-mark.js.map +7 -0
  619. package/dist/icons/colors.js +31 -0
  620. package/dist/icons/colors.js.map +7 -0
  621. package/dist/icons/file-type.js +105 -0
  622. package/dist/icons/file-type.js.map +7 -0
  623. package/dist/icons/index.js +55 -0
  624. package/dist/icons/index.js.map +7 -0
  625. package/dist/imagecrop/ImageCropModal.js +56 -0
  626. package/dist/imagecrop/ImageCropModal.js.map +7 -0
  627. package/dist/imagecrop/ImageCropper.js +100 -0
  628. package/dist/imagecrop/ImageCropper.js.map +7 -0
  629. package/dist/imagecrop/cropImage.js +43 -0
  630. package/dist/imagecrop/cropImage.js.map +7 -0
  631. package/dist/imagecrop/index.js +13 -0
  632. package/dist/imagecrop/index.js.map +7 -0
  633. package/dist/index.cjs +1689 -1619
  634. package/dist/index.cjs.map +1 -1
  635. package/dist/{index.d-BMhTH98a.d.ts → index.d-CYXcTKYt.d.ts} +1 -0
  636. package/dist/index.d.ts +38 -8
  637. package/dist/index.js +702 -17060
  638. package/dist/index.js.map +7 -1
  639. package/dist/lazy-chunk.d-B6YDLMKI.d.ts +31 -0
  640. package/dist/lazy-chunk.js +46 -0
  641. package/dist/lazy-chunk.js.map +7 -0
  642. package/dist/lib/collision-padding.js +13 -0
  643. package/dist/lib/collision-padding.js.map +7 -0
  644. package/dist/lib/format-friendly-date.js +55 -0
  645. package/dist/lib/format-friendly-date.js.map +7 -0
  646. package/dist/lib/format-relative-time.js +52 -0
  647. package/dist/lib/format-relative-time.js.map +7 -0
  648. package/dist/lib/markdown-to-text.js +35 -0
  649. package/dist/lib/markdown-to-text.js.map +7 -0
  650. package/dist/lib/toast-interaction.js +9 -0
  651. package/dist/lib/toast-interaction.js.map +7 -0
  652. package/dist/lib/utils.js +9 -0
  653. package/dist/lib/utils.js.map +7 -0
  654. package/dist/mail/client.js +103 -0
  655. package/dist/mail/client.js.map +7 -0
  656. package/dist/mail/document-attachment.js +38 -0
  657. package/dist/mail/document-attachment.js.map +7 -0
  658. package/dist/mail/filing.js +132 -0
  659. package/dist/mail/filing.js.map +7 -0
  660. package/dist/mail/hooks.js +393 -0
  661. package/dist/mail/hooks.js.map +7 -0
  662. package/dist/mail/index.js +120 -0
  663. package/dist/mail/index.js.map +7 -0
  664. package/dist/mail/offline/changes.js +258 -0
  665. package/dist/mail/offline/changes.js.map +7 -0
  666. package/dist/mail/offline/confirm-sign-out.js +37 -0
  667. package/dist/mail/offline/confirm-sign-out.js.map +7 -0
  668. package/dist/mail/offline/crypto.js +26 -0
  669. package/dist/mail/offline/crypto.js.map +7 -0
  670. package/dist/mail/offline/drafts.js +69 -0
  671. package/dist/mail/offline/drafts.js.map +7 -0
  672. package/dist/mail/offline/hooks.js +104 -0
  673. package/dist/mail/offline/hooks.js.map +7 -0
  674. package/dist/mail/offline/index.js +48 -0
  675. package/dist/mail/offline/index.js.map +7 -0
  676. package/dist/mail/offline/live.js +233 -0
  677. package/dist/mail/offline/live.js.map +7 -0
  678. package/dist/mail/offline/mailbox.js +191 -0
  679. package/dist/mail/offline/mailbox.js.map +7 -0
  680. package/dist/mail/offline/outbox.js +167 -0
  681. package/dist/mail/offline/outbox.js.map +7 -0
  682. package/dist/mail/offline/reads.js +159 -0
  683. package/dist/mail/offline/reads.js.map +7 -0
  684. package/dist/mail/offline/runtime.js +100 -0
  685. package/dist/mail/offline/runtime.js.map +7 -0
  686. package/dist/mail/offline/settings.js +84 -0
  687. package/dist/mail/offline/settings.js.map +7 -0
  688. package/dist/mail/offline/store.js +29 -0
  689. package/dist/mail/offline/store.js.map +7 -0
  690. package/dist/mail/offline/sync.js +251 -0
  691. package/dist/mail/offline/sync.js.map +7 -0
  692. package/dist/mail/offline/wipe.js +19 -0
  693. package/dist/mail/offline/wipe.js.map +7 -0
  694. package/dist/mail/thread-keys.js +53 -0
  695. package/dist/mail/thread-keys.js.map +7 -0
  696. package/dist/mail/threads.js +71 -0
  697. package/dist/mail/threads.js.map +7 -0
  698. package/dist/mail/useMailClient.js +42 -0
  699. package/dist/mail/useMailClient.js.map +7 -0
  700. package/dist/model-connections.js +58 -0
  701. package/dist/model-connections.js.map +7 -0
  702. package/dist/notifications/ActivityFeed.js +70 -0
  703. package/dist/notifications/ActivityFeed.js.map +7 -0
  704. package/dist/notifications/NotificationBell.js +200 -0
  705. package/dist/notifications/NotificationBell.js.map +7 -0
  706. package/dist/notifications/Toaster.js +24 -0
  707. package/dist/notifications/Toaster.js.map +7 -0
  708. package/dist/notifications/activity-types.js +65 -0
  709. package/dist/notifications/activity-types.js.map +7 -0
  710. package/dist/notifications/bell.js +24 -0
  711. package/dist/notifications/bell.js.map +7 -0
  712. package/dist/notifications/calendar-notifications.js +79 -0
  713. package/dist/notifications/calendar-notifications.js.map +7 -0
  714. package/dist/notifications/index.js +108 -0
  715. package/dist/notifications/index.js.map +7 -0
  716. package/dist/notifications/live.js +28 -0
  717. package/dist/notifications/live.js.map +7 -0
  718. package/dist/notifications/notification-types.js +127 -0
  719. package/dist/notifications/notification-types.js.map +7 -0
  720. package/dist/{chunk-BF5KW5ZI.js → notifications/notify-store.js} +24 -74
  721. package/dist/notifications/notify-store.js.map +7 -0
  722. package/dist/notifications/server-notifications.js +452 -0
  723. package/dist/notifications/server-notifications.js.map +7 -0
  724. package/dist/notifications/useNotifications.js +34 -0
  725. package/dist/notifications/useNotifications.js.map +7 -0
  726. package/dist/offline-store/network.js +11 -0
  727. package/dist/offline-store/network.js.map +7 -0
  728. package/dist/offline-store/store.js +136 -0
  729. package/dist/offline-store/store.js.map +7 -0
  730. package/dist/offline-store/wipe.js +8 -0
  731. package/dist/offline-store/wipe.js.map +7 -0
  732. package/dist/offline.js +58 -0
  733. package/dist/offline.js.map +7 -0
  734. package/dist/people.js +122 -0
  735. package/dist/people.js.map +7 -0
  736. package/dist/projects.js +30 -0
  737. package/dist/projects.js.map +7 -0
  738. package/dist/query-client.js +63 -0
  739. package/dist/query-client.js.map +7 -0
  740. package/dist/{query-keys.d-ChgpJLPF.d.ts → query-keys.d-B1Am9tIF.d.ts} +1 -1
  741. package/dist/{chunk-6H3O63TQ.js → query-keys.js} +19 -32
  742. package/dist/query-keys.js.map +7 -0
  743. package/dist/query-persist.js +66 -0
  744. package/dist/query-persist.js.map +7 -0
  745. package/dist/queued-writes.js +59 -0
  746. package/dist/queued-writes.js.map +7 -0
  747. package/dist/remote-control.js +67 -0
  748. package/dist/remote-control.js.map +7 -0
  749. package/dist/search/index.js +23 -0
  750. package/dist/search/index.js.map +7 -0
  751. package/dist/search/session.js +58 -0
  752. package/dist/search/session.js.map +7 -0
  753. package/dist/search/useSemanticSearch.js +82 -0
  754. package/dist/search/useSemanticSearch.js.map +7 -0
  755. package/dist/session/chat.js +512 -0
  756. package/dist/session/chat.js.map +7 -0
  757. package/dist/session/documents.js +196 -0
  758. package/dist/session/documents.js.map +7 -0
  759. package/dist/session/drafts.js +103 -0
  760. package/dist/session/drafts.js.map +7 -0
  761. package/dist/session/index.js +123 -0
  762. package/dist/session/index.js.map +7 -0
  763. package/dist/session/layout.js +339 -0
  764. package/dist/session/layout.js.map +7 -0
  765. package/dist/session/persist.js +106 -0
  766. package/dist/session/persist.js.map +7 -0
  767. package/dist/session/session-hooks.js +53 -0
  768. package/dist/session/session-hooks.js.map +7 -0
  769. package/dist/session/signed-in.js +36 -0
  770. package/dist/session/signed-in.js.map +7 -0
  771. package/dist/session/store.js +166 -0
  772. package/dist/session/store.js.map +7 -0
  773. package/dist/session/thread-tabs.js +121 -0
  774. package/dist/session/thread-tabs.js.map +7 -0
  775. package/dist/session/ui-state-storage.js +76 -0
  776. package/dist/session/ui-state-storage.js.map +7 -0
  777. package/dist/session/workspace.js +77 -0
  778. package/dist/session/workspace.js.map +7 -0
  779. package/dist/shell/index.cjs +37 -37
  780. package/dist/shell/index.js +43 -10
  781. package/dist/shell/index.js.map +7 -1
  782. package/dist/skill-pack.js +111 -0
  783. package/dist/skill-pack.js.map +7 -0
  784. package/dist/storage.js +186 -0
  785. package/dist/storage.js.map +7 -0
  786. package/dist/support/index.js +35 -0
  787. package/dist/support/index.js.map +7 -0
  788. package/dist/tags.js +204 -0
  789. package/dist/tags.js.map +7 -0
  790. package/dist/ui/DebouncedInput.js +109 -0
  791. package/dist/ui/DebouncedInput.js.map +7 -0
  792. package/dist/ui/DictateContext.js +8 -0
  793. package/dist/ui/DictateContext.js.map +7 -0
  794. package/dist/ui/IconToggle.js +79 -0
  795. package/dist/ui/IconToggle.js.map +7 -0
  796. package/dist/ui/VerifiedToggle.js +38 -0
  797. package/dist/ui/VerifiedToggle.js.map +7 -0
  798. package/dist/ui/VisibilityToggle.js +103 -0
  799. package/dist/ui/VisibilityToggle.js.map +7 -0
  800. package/dist/ui/avatar.js +40 -0
  801. package/dist/ui/avatar.js.map +7 -0
  802. package/dist/ui/badge.js +28 -0
  803. package/dist/ui/badge.js.map +7 -0
  804. package/dist/ui/button.js +48 -0
  805. package/dist/ui/button.js.map +7 -0
  806. package/dist/ui/card.js +90 -0
  807. package/dist/ui/card.js.map +7 -0
  808. package/dist/ui/checkbox.js +22 -0
  809. package/dist/ui/checkbox.js.map +7 -0
  810. package/dist/ui/collapsible.js +10 -0
  811. package/dist/ui/collapsible.js.map +7 -0
  812. package/dist/ui/command.js +103 -0
  813. package/dist/ui/command.js.map +7 -0
  814. package/dist/{chunk-YNNAJJ5Z.js → ui/dialog.js} +30 -68
  815. package/dist/ui/dialog.js.map +7 -0
  816. package/dist/{chunk-47CCGUWR.js → ui/dropdown-menu.js} +40 -45
  817. package/dist/ui/dropdown-menu.js.map +7 -0
  818. package/dist/ui/hover-card.js +36 -0
  819. package/dist/ui/hover-card.js.map +7 -0
  820. package/dist/ui/index.cjs +167 -154
  821. package/dist/ui/index.d.ts +2 -1
  822. package/dist/ui/index.js +290 -9
  823. package/dist/ui/index.js.map +7 -1
  824. package/dist/ui/input.js +65 -0
  825. package/dist/ui/input.js.map +7 -0
  826. package/dist/ui/label.js +16 -0
  827. package/dist/ui/label.js.map +7 -0
  828. package/dist/ui/mark-menu.js +300 -0
  829. package/dist/ui/mark-menu.js.map +7 -0
  830. package/dist/ui/popover.js +40 -0
  831. package/dist/ui/popover.js.map +7 -0
  832. package/dist/ui/portal-container.js +17 -0
  833. package/dist/ui/portal-container.js.map +7 -0
  834. package/dist/ui/progress.js +24 -0
  835. package/dist/ui/progress.js.map +7 -0
  836. package/dist/ui/radio-group.js +29 -0
  837. package/dist/ui/radio-group.js.map +7 -0
  838. package/dist/ui/scroll-area.js +39 -0
  839. package/dist/ui/scroll-area.js.map +7 -0
  840. package/dist/ui/select.js +130 -0
  841. package/dist/ui/select.js.map +7 -0
  842. package/dist/ui/separator.js +23 -0
  843. package/dist/ui/separator.js.map +7 -0
  844. package/dist/ui/slider.js +23 -0
  845. package/dist/ui/slider.js.map +7 -0
  846. package/dist/ui/switch.js +28 -0
  847. package/dist/ui/switch.js.map +7 -0
  848. package/dist/ui/table.js +75 -0
  849. package/dist/ui/table.js.map +7 -0
  850. package/dist/ui/tabs.js +48 -0
  851. package/dist/ui/tabs.js.map +7 -0
  852. package/dist/ui/textarea.js +63 -0
  853. package/dist/ui/textarea.js.map +7 -0
  854. package/dist/ui/toggle-group.js +43 -0
  855. package/dist/ui/toggle-group.js.map +7 -0
  856. package/dist/ui/toggle.js +40 -0
  857. package/dist/ui/toggle.js.map +7 -0
  858. package/dist/ui/tooltip.js +215 -0
  859. package/dist/ui/tooltip.js.map +7 -0
  860. package/dist/usage-metered.js +8 -0
  861. package/dist/usage-metered.js.map +7 -0
  862. package/dist/useArbi.js +16 -0
  863. package/dist/useArbi.js.map +7 -0
  864. package/dist/useInstallSkillPack.js +81 -0
  865. package/dist/useInstallSkillPack.js.map +7 -0
  866. package/dist/usermenu/UserMenu.js +188 -0
  867. package/dist/usermenu/UserMenu.js.map +7 -0
  868. package/dist/usermenu/index.js +5 -0
  869. package/dist/usermenu/index.js.map +7 -0
  870. package/dist/users/index.js +15 -0
  871. package/dist/users/index.js.map +7 -0
  872. package/dist/users/user-display.js +60 -0
  873. package/dist/users/user-display.js.map +7 -0
  874. package/dist/viewers/AudioViewer.js +23 -0
  875. package/dist/viewers/AudioViewer.js.map +7 -0
  876. package/dist/viewers/DocxViewer.js +81 -0
  877. package/dist/viewers/DocxViewer.js.map +7 -0
  878. package/dist/viewers/ImageViewer.js +31 -0
  879. package/dist/viewers/ImageViewer.js.map +7 -0
  880. package/dist/viewers/PdfViewer.cjs +17 -0
  881. package/dist/viewers/PdfViewer.cjs.map +1 -0
  882. package/dist/viewers/PdfViewer.d.ts +9 -0
  883. package/dist/viewers/PdfViewer.js +20 -0
  884. package/dist/viewers/PdfViewer.js.map +7 -0
  885. package/dist/viewers/PdfViewerImpl.js +384 -0
  886. package/dist/viewers/PdfViewerImpl.js.map +7 -0
  887. package/dist/viewers/VideoViewer.js +31 -0
  888. package/dist/viewers/VideoViewer.js.map +7 -0
  889. package/dist/viewers/XlsxViewer.js +102 -0
  890. package/dist/viewers/XlsxViewer.js.map +7 -0
  891. package/dist/viewers/index.cjs +79 -653
  892. package/dist/viewers/index.cjs.map +1 -1
  893. package/dist/viewers/index.d.ts +3 -1
  894. package/dist/viewers/index.js +60 -903
  895. package/dist/viewers/index.js.map +7 -1
  896. package/dist/viewers/page-scroll.js +59 -0
  897. package/dist/viewers/page-scroll.js.map +7 -0
  898. package/dist/viewers/pdf-viewer-constants.js +9 -0
  899. package/dist/viewers/pdf-viewer-constants.js.map +7 -0
  900. package/dist/{chunk-PTOP7OHG.js → viewers/pdfjs-polyfills.js} +5 -6
  901. package/dist/viewers/pdfjs-polyfills.js.map +7 -0
  902. package/dist/viewers/selection-runs.js +38 -0
  903. package/dist/viewers/selection-runs.js.map +7 -0
  904. package/dist/viewers/usePageIntersectionObserver.js +68 -0
  905. package/dist/viewers/usePageIntersectionObserver.js.map +7 -0
  906. package/dist/viewers/useProcessedChunks.js +58 -0
  907. package/dist/viewers/useProcessedChunks.js.map +7 -0
  908. package/dist/viewers/viewer-zoom.js +163 -0
  909. package/dist/viewers/viewer-zoom.js.map +7 -0
  910. package/dist/websocket/ArbiWebSocketProvider.js +207 -0
  911. package/dist/websocket/ArbiWebSocketProvider.js.map +7 -0
  912. package/dist/websocket/context.js +14 -0
  913. package/dist/websocket/context.js.map +7 -0
  914. package/dist/websocket/hooks.js +30 -0
  915. package/dist/websocket/hooks.js.map +7 -0
  916. package/dist/websocket/index.js +22 -0
  917. package/dist/websocket/index.js.map +7 -0
  918. package/dist/websocket/live-updates.js +38 -0
  919. package/dist/websocket/live-updates.js.map +7 -0
  920. package/dist/websocket/reconnect.js +13 -0
  921. package/dist/websocket/reconnect.js.map +7 -0
  922. package/dist/websocket/store.js +58 -0
  923. package/dist/websocket/store.js.map +7 -0
  924. package/dist/workforce.js +607 -0
  925. package/dist/workforce.js.map +7 -0
  926. package/dist/workspaces/access-request.js +35 -0
  927. package/dist/workspaces/access-request.js.map +7 -0
  928. package/dist/workspaces/archive.js +59 -0
  929. package/dist/workspaces/archive.js.map +7 -0
  930. package/dist/workspaces/current.js +20 -0
  931. package/dist/workspaces/current.js.map +7 -0
  932. package/dist/workspaces/delete-workspaces.js +15 -0
  933. package/dist/workspaces/delete-workspaces.js.map +7 -0
  934. package/dist/workspaces/export-archive.js +40 -0
  935. package/dist/workspaces/export-archive.js.map +7 -0
  936. package/dist/workspaces/index.js +99 -0
  937. package/dist/workspaces/index.js.map +7 -0
  938. package/dist/workspaces/settings.js +45 -0
  939. package/dist/workspaces/settings.js.map +7 -0
  940. package/dist/workspaces/shell-workspaces.js +49 -0
  941. package/dist/workspaces/shell-workspaces.js.map +7 -0
  942. package/dist/workspaces/switch.js +234 -0
  943. package/dist/workspaces/switch.js.map +7 -0
  944. package/dist/workspaces/transfer.js +170 -0
  945. package/dist/workspaces/transfer.js.map +7 -0
  946. package/dist/workspaces/useShellWorkspaces.js +86 -0
  947. package/dist/workspaces/useShellWorkspaces.js.map +7 -0
  948. package/dist/workspaces/workspace-users.js +65 -0
  949. package/dist/workspaces/workspace-users.js.map +7 -0
  950. package/package.json +12 -4
  951. package/dist/PdfViewer.d-bQH9yxFg.d.ts +0 -55
  952. package/dist/ProductionDialog.d-CpzslFn0.d.cts +0 -51
  953. package/dist/annotations/freeze/index.d.cts +0 -205
  954. package/dist/annotations/index.d.cts +0 -360
  955. package/dist/artifacts/index.d.cts +0 -476
  956. package/dist/artifacts/redline-core.d.cts +0 -39
  957. package/dist/bundle-YNOX7VIL.js +0 -5
  958. package/dist/bundle-YNOX7VIL.js.map +0 -1
  959. package/dist/bundle.d-BnCSbHy2.d.cts +0 -85
  960. package/dist/calls/livekit/index.d.cts +0 -280
  961. package/dist/chunk-47CCGUWR.js.map +0 -1
  962. package/dist/chunk-6H3O63TQ.js.map +0 -1
  963. package/dist/chunk-74N436VK.js.map +0 -1
  964. package/dist/chunk-APZZQZ6P.js +0 -147
  965. package/dist/chunk-APZZQZ6P.js.map +0 -1
  966. package/dist/chunk-BF5KW5ZI.js.map +0 -1
  967. package/dist/chunk-CPQ3CU4B.js +0 -246
  968. package/dist/chunk-CPQ3CU4B.js.map +0 -1
  969. package/dist/chunk-DPYBZDJB.js.map +0 -1
  970. package/dist/chunk-DQALOQPI.js +0 -2766
  971. package/dist/chunk-DQALOQPI.js.map +0 -1
  972. package/dist/chunk-FZJMA32S.js +0 -1011
  973. package/dist/chunk-FZJMA32S.js.map +0 -1
  974. package/dist/chunk-H5M7FXLB.js +0 -2057
  975. package/dist/chunk-H5M7FXLB.js.map +0 -1
  976. package/dist/chunk-HDCRPPBW.js +0 -75
  977. package/dist/chunk-HDCRPPBW.js.map +0 -1
  978. package/dist/chunk-NIKPG4PW.js +0 -1128
  979. package/dist/chunk-NIKPG4PW.js.map +0 -1
  980. package/dist/chunk-NNAJLY6B.js +0 -4974
  981. package/dist/chunk-NNAJLY6B.js.map +0 -1
  982. package/dist/chunk-OYPKKHXY.js +0 -559
  983. package/dist/chunk-OYPKKHXY.js.map +0 -1
  984. package/dist/chunk-P6WLV5UY.js +0 -644
  985. package/dist/chunk-P6WLV5UY.js.map +0 -1
  986. package/dist/chunk-PTOP7OHG.js.map +0 -1
  987. package/dist/chunk-SN5YV6FF.js +0 -11
  988. package/dist/chunk-SN5YV6FF.js.map +0 -1
  989. package/dist/chunk-T3USOSVN.js.map +0 -1
  990. package/dist/chunk-T4CLW3DN.js +0 -2560
  991. package/dist/chunk-T4CLW3DN.js.map +0 -1
  992. package/dist/chunk-UW2SGTI5.js.map +0 -1
  993. package/dist/chunk-VSCU7K4V.js.map +0 -1
  994. package/dist/chunk-WL2Y2T47.js.map +0 -1
  995. package/dist/chunk-WUTL62MC.js.map +0 -1
  996. package/dist/chunk-Y3MTRA7D.js +0 -97
  997. package/dist/chunk-Y3MTRA7D.js.map +0 -1
  998. package/dist/chunk-YNNAJJ5Z.js.map +0 -1
  999. package/dist/document-tools/core.d.cts +0 -883
  1000. package/dist/document-tools/index.d.cts +0 -90
  1001. package/dist/index.d-BMhTH98a.d.cts +0 -2035
  1002. package/dist/index.d-oR5FKZpJ.d.cts +0 -579
  1003. package/dist/index.d.cts +0 -15893
  1004. package/dist/model.d-CNtRWKVK.d.cts +0 -110
  1005. package/dist/query-keys.d-ChgpJLPF.d.cts +0 -337
  1006. package/dist/shell/index.d.cts +0 -6
  1007. package/dist/store.d-GADDvC7w.d.cts +0 -35
  1008. package/dist/stored-markdown.d-Bp18vrbr.d.cts +0 -125
  1009. package/dist/ui/index.d.cts +0 -25
  1010. package/dist/useAudioRecorder.d-B9rlMI_E.d.cts +0 -778
  1011. package/dist/viewers/index.d.cts +0 -260
@@ -0,0 +1,385 @@
1
+ import React from "react";
2
+ import { vocabularyNoun } from "./vocabulary.js";
3
+ import {
4
+ UserStar,
5
+ Bell,
6
+ Building2,
7
+ Contact,
8
+ Scale,
9
+ Search,
10
+ Tags,
11
+ BookOpen,
12
+ CaptionsOff,
13
+ ChevronsDown,
14
+ CircleUserRound,
15
+ ClipboardList,
16
+ Columns3Cog,
17
+ Eye,
18
+ EyeOff,
19
+ FileQuestion,
20
+ FolderOpen,
21
+ FolderPlus,
22
+ Hash,
23
+ Info,
24
+ LayoutGrid,
25
+ LogOut,
26
+ MessageSquare,
27
+ MessageSquareLock,
28
+ MessageSquareMore,
29
+ MessageSquareOff,
30
+ MessageSquarePlus,
31
+ MessageSquareText,
32
+ MessagesSquare,
33
+ NotebookPen,
34
+ NotebookText,
35
+ CreditCard,
36
+ Settings2,
37
+ SquareM,
38
+ SquarePlus,
39
+ StickyNote,
40
+ Upload,
41
+ User,
42
+ UserPlus,
43
+ Users,
44
+ Wrench
45
+ } from "lucide-react";
46
+ const ENTITY_MAPPINGS = {
47
+ PRODUCT: {
48
+ NAMES: {
49
+ SINGULAR: "ARBI Docs"
50
+ },
51
+ ICONS: {
52
+ DEFAULT: MessageSquareLock
53
+ }
54
+ },
55
+ SECTION: {
56
+ NAMES: {
57
+ SINGULAR: "Section"
58
+ },
59
+ ICONS: {
60
+ DEFAULT: ChevronsDown
61
+ }
62
+ },
63
+ WORKSPACE: {
64
+ NAMES: {
65
+ SINGULAR: "Workspace",
66
+ PLURAL: "Workspaces"
67
+ },
68
+ ICONS: {
69
+ DEFAULT: SquareM,
70
+ NEW: SquarePlus,
71
+ LIST: LayoutGrid,
72
+ SETTINGS: Columns3Cog
73
+ }
74
+ },
75
+ CONVERSATION: {
76
+ NAMES: {
77
+ SINGULAR: "Thread",
78
+ PLURAL: "Threads",
79
+ NEW: "New Thread"
80
+ },
81
+ ICONS: {
82
+ DEFAULT: MessagesSquare,
83
+ OFF: MessageSquareOff,
84
+ ACTIVE: MessageSquareText,
85
+ NEW: MessageSquarePlus,
86
+ LIST: MessageSquareMore
87
+ }
88
+ },
89
+ DOCUMENT: {
90
+ NAMES: {
91
+ SINGULAR: "File",
92
+ PLURAL: "Files"
93
+ },
94
+ ICONS: {
95
+ DEFAULT: FolderOpen,
96
+ OFF: CaptionsOff
97
+ }
98
+ },
99
+ VIEWER: {
100
+ NAMES: {
101
+ SINGULAR: "Viewer",
102
+ PLURAL: "Viewers"
103
+ },
104
+ ICONS: {
105
+ DEFAULT: Eye,
106
+ OFF: EyeOff
107
+ }
108
+ },
109
+ TAG: {
110
+ NAMES: {
111
+ SINGULAR: "Field",
112
+ PLURAL: "Fields"
113
+ },
114
+ ICONS: {
115
+ DEFAULT: Hash,
116
+ NEW: FolderPlus
117
+ }
118
+ },
119
+ ANNOTATION: {
120
+ NAMES: {
121
+ SINGULAR: "Annotation",
122
+ PLURAL: "Annotations"
123
+ },
124
+ ICONS: {
125
+ DEFAULT: StickyNote,
126
+ NEW: StickyNote
127
+ }
128
+ },
129
+ // A tag of any kind — what the Tags page lists. TAG stays "Field": the Files page's custom
130
+ // columns (labels and annotations as document fields) are named after it.
131
+ ANY_TAG: {
132
+ NAMES: {
133
+ SINGULAR: "Tag",
134
+ PLURAL: "Tags"
135
+ },
136
+ ICONS: {
137
+ DEFAULT: Tags
138
+ }
139
+ },
140
+ // The kinds of TAG (a tag's `kind`): a label files things; an issue is a point in dispute; a
141
+ // person and an organisation are entities the documents name; a saved search is a stored query.
142
+ LABEL: {
143
+ NAMES: {
144
+ SINGULAR: "Label",
145
+ PLURAL: "Labels"
146
+ },
147
+ ICONS: {
148
+ DEFAULT: Tags
149
+ }
150
+ },
151
+ ISSUE: {
152
+ NAMES: {
153
+ SINGULAR: "Issue",
154
+ PLURAL: "Issues"
155
+ },
156
+ ICONS: {
157
+ DEFAULT: Scale
158
+ }
159
+ },
160
+ PERSON: {
161
+ NAMES: {
162
+ SINGULAR: "Person",
163
+ PLURAL: "People"
164
+ },
165
+ ICONS: {
166
+ DEFAULT: Contact
167
+ }
168
+ },
169
+ ORGANISATION: {
170
+ NAMES: {
171
+ SINGULAR: "Organisation",
172
+ PLURAL: "Organisations"
173
+ },
174
+ ICONS: {
175
+ DEFAULT: Building2
176
+ }
177
+ },
178
+ SAVED_SEARCH: {
179
+ NAMES: {
180
+ SINGULAR: "Saved search",
181
+ PLURAL: "Saved searches"
182
+ },
183
+ ICONS: {
184
+ DEFAULT: Search
185
+ }
186
+ },
187
+ // A statement the workspace knows — a date, a decision, a preference — written by hand or kept by
188
+ // the assistant, optionally grounded in source passages (`facts`, fct-*). Distinct from
189
+ // ANNOTATION, a value attached TO a document; a fact is workspace-scoped and stands alone.
190
+ FACT: {
191
+ NAMES: {
192
+ SINGULAR: "Fact",
193
+ PLURAL: "Facts"
194
+ },
195
+ ICONS: {
196
+ DEFAULT: NotebookText,
197
+ NEW: NotebookPen
198
+ }
199
+ },
200
+ USER: {
201
+ NAMES: {
202
+ SINGULAR: "User",
203
+ PLURAL: "Users"
204
+ },
205
+ ICONS: {
206
+ DEFAULT: User,
207
+ NEW: UserPlus,
208
+ SETTINGS: Settings2
209
+ }
210
+ },
211
+ WORKSPACEUSER: {
212
+ NAMES: {
213
+ SINGULAR: "Member",
214
+ PLURAL: "Members"
215
+ },
216
+ ICONS: {
217
+ DEFAULT: User,
218
+ PLURAL: Users,
219
+ NEW: UserPlus,
220
+ SETTINGS: Settings2
221
+ }
222
+ },
223
+ CONTACT: {
224
+ NAMES: {
225
+ SINGULAR: "Contact",
226
+ PLURAL: "Contacts"
227
+ },
228
+ ICONS: {
229
+ // A starred person, not an address-book card: contacts here are the
230
+ // people you talk to, and the star reads as "your people".
231
+ DEFAULT: UserStar,
232
+ NEW: UserPlus
233
+ }
234
+ },
235
+ TASK: {
236
+ NAMES: {
237
+ SINGULAR: "Job",
238
+ PLURAL: "Jobs"
239
+ },
240
+ ICONS: {
241
+ DEFAULT: ClipboardList
242
+ }
243
+ },
244
+ PROJECT: {
245
+ NAMES: {
246
+ SINGULAR: "Project",
247
+ PLURAL: "Projects"
248
+ },
249
+ ICONS: {
250
+ DEFAULT: CreditCard
251
+ }
252
+ },
253
+ SKILL: {
254
+ NAMES: {
255
+ SINGULAR: "Skill",
256
+ PLURAL: "Skills"
257
+ },
258
+ ICONS: {
259
+ DEFAULT: Wrench
260
+ }
261
+ },
262
+ ACCOUNT: {
263
+ NAMES: {
264
+ SINGULAR: "Account"
265
+ },
266
+ ICONS: {
267
+ DEFAULT: CircleUserRound
268
+ }
269
+ },
270
+ NOTIFICATIONS: {
271
+ NAMES: {
272
+ SINGULAR: "Activity",
273
+ PLURAL: "Activities"
274
+ },
275
+ ICONS: {
276
+ DEFAULT: Bell
277
+ }
278
+ },
279
+ MESSAGE: {
280
+ NAMES: {
281
+ SINGULAR: "Message",
282
+ PLURAL: "Messages"
283
+ },
284
+ ICONS: {
285
+ DEFAULT: MessageSquare
286
+ }
287
+ },
288
+ NOTIFICATION: {
289
+ NAMES: {
290
+ SINGULAR: "Notification",
291
+ PLURAL: "Notifications"
292
+ },
293
+ ICONS: {
294
+ DEFAULT: Bell
295
+ }
296
+ },
297
+ APP: {
298
+ NAMES: {
299
+ SINGULAR: "Application",
300
+ PLURAL: "Applications"
301
+ },
302
+ ICONS: {
303
+ DEFAULT: LayoutGrid,
304
+ HOME: LayoutGrid,
305
+ LOGOUT: LogOut,
306
+ UPLOAD: Upload
307
+ }
308
+ },
309
+ HELP: {
310
+ NAMES: {
311
+ SINGULAR: "Help",
312
+ PLURAL: "Help"
313
+ },
314
+ ICONS: {
315
+ DEFAULT: MessageSquareLock,
316
+ DOCS: BookOpen,
317
+ FAQ: FileQuestion,
318
+ ABOUT: Info
319
+ }
320
+ },
321
+ USERSHIELD: {
322
+ NAMES: {
323
+ SINGULAR: "User Shield",
324
+ PLURAL: "User Shields"
325
+ },
326
+ ICONS: {
327
+ DEFAULT: MessageSquareLock
328
+ }
329
+ }
330
+ };
331
+ function configureEntityRegistry(overrides) {
332
+ for (const [type, def] of Object.entries(overrides)) {
333
+ const target = ENTITY_MAPPINGS[type];
334
+ if (!target) continue;
335
+ if (def?.NAMES) Object.assign(target.NAMES, def.NAMES);
336
+ if (def?.ICONS) Object.assign(target.ICONS, def.ICONS);
337
+ }
338
+ }
339
+ const getEntityIcon = (entityType, variant = "DEFAULT") => {
340
+ const icons = ENTITY_MAPPINGS[entityType]?.ICONS;
341
+ return icons?.[variant] || icons?.DEFAULT;
342
+ };
343
+ const getEntityLabel = (entityType, form = "SINGULAR") => {
344
+ const entityMapping = ENTITY_MAPPINGS[entityType];
345
+ if (!entityMapping) return "";
346
+ const noun = vocabularyNoun(entityType);
347
+ const names = noun === void 0 ? entityMapping.NAMES : typeof noun === "string" ? { SINGULAR: noun } : noun;
348
+ const singularName = names.SINGULAR || "";
349
+ if (form === "NEW") return names.NEW !== void 0 ? names.NEW : "New " + singularName;
350
+ if (form === "SHORT")
351
+ return names.SHORT !== void 0 ? names.SHORT : singularName.substring(0, 3) + ".";
352
+ if (form === "PLURAL") return names.PLURAL !== void 0 ? names.PLURAL : singularName + "s";
353
+ return singularName;
354
+ };
355
+ const entityNoun = (entityType, form = "SINGULAR") => getEntityLabel(entityType, form).toLowerCase();
356
+ const EntityIcon = ({ entityType, variant = "DEFAULT", ...props }) => {
357
+ const IconComponent = getEntityIcon(entityType, variant);
358
+ return IconComponent ? React.createElement(IconComponent, props) : null;
359
+ };
360
+ const VISIBILITY_ICONS = {
361
+ PRIVATE: MessageSquareLock,
362
+ SHARED: Users
363
+ };
364
+ const VisibilityIcon = ({
365
+ isShared,
366
+ className,
367
+ ...props
368
+ }) => {
369
+ const IconComponent = isShared ? VISIBILITY_ICONS.SHARED : VISIBILITY_ICONS.PRIVATE;
370
+ return React.createElement(IconComponent, {
371
+ ...props,
372
+ className: [isShared ? "text-secondary" : "text-primary", className].filter(Boolean).join(" ")
373
+ });
374
+ };
375
+ export {
376
+ ENTITY_MAPPINGS,
377
+ EntityIcon,
378
+ VISIBILITY_ICONS,
379
+ VisibilityIcon,
380
+ configureEntityRegistry,
381
+ entityNoun,
382
+ getEntityIcon,
383
+ getEntityLabel
384
+ };
385
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/entities/registry.tsx"],
4
+ "sourcesContent": ["/**\n * Entity registry \u2014 the single, canonical source of truth for entity icons and\n * display names across every ARBI app (monolith, clarum, any deployment).\n *\n * Centralises \"what glyph and what word represents a WORKSPACE / DOCUMENT / USER /\n * \u2026\" so rebranding or re-skinning happens in ONE place. The monolith and other\n * deployments layer their own flourishes on top via {@link configureEntityRegistry}\n * (e.g. a custom workspace glyph, or brand names like \"MatterSpace\") without\n * forking this map.\n *\n * Deliberately dependency-light: lucide icon components + plain data. No store,\n * no app `@/` imports. Consumers render via {@link EntityIcon} or read\n * {@link getEntityIcon}/{@link getEntityLabel}.\n */\n\nimport React from 'react'\nimport { vocabularyNoun } from './vocabulary'\nimport {\n UserStar,\n Bell,\n Building2,\n Contact,\n Scale,\n Search,\n Tags,\n BookOpen,\n CaptionsOff,\n ChevronsDown,\n CircleUserRound,\n ClipboardList,\n Columns3Cog,\n Eye,\n EyeOff,\n FileQuestion,\n FolderOpen,\n FolderPlus,\n Hash,\n Info,\n LayoutGrid,\n LogOut,\n MessageSquare,\n MessageSquareLock,\n MessageSquareMore,\n MessageSquareOff,\n MessageSquarePlus,\n MessageSquareText,\n MessagesSquare,\n NotebookPen,\n NotebookText,\n CreditCard,\n Settings2,\n SquareM,\n SquarePlus,\n StickyNote,\n Upload,\n User,\n UserPlus,\n Users,\n Wrench,\n} from 'lucide-react'\n\n/** An icon component usable in the registry (lucide icons + custom SVG wrappers). */\nexport type EntityIconComponent = React.ComponentType<\n React.SVGAttributes<SVGElement> & { size?: number | string; className?: string }\n>\n\n/**\n * Entity Mappings \u2014 naming conventions + icons for every entity in the app.\n *\n * `WORKSPACE.ICONS.DEFAULT` is the generic `SquareM` here; the monolith injects a\n * rotated variant via {@link configureEntityRegistry}. The object is mutated in\n * place by that helper, so existing `ENTITY_MAPPINGS` references stay live.\n */\nexport const ENTITY_MAPPINGS = {\n PRODUCT: {\n NAMES: {\n SINGULAR: 'ARBI Docs',\n },\n ICONS: {\n DEFAULT: MessageSquareLock,\n },\n },\n SECTION: {\n NAMES: {\n SINGULAR: 'Section',\n },\n ICONS: {\n DEFAULT: ChevronsDown,\n },\n },\n WORKSPACE: {\n NAMES: {\n SINGULAR: 'Workspace',\n PLURAL: 'Workspaces',\n },\n ICONS: {\n DEFAULT: SquareM,\n NEW: SquarePlus,\n LIST: LayoutGrid,\n SETTINGS: Columns3Cog,\n },\n },\n CONVERSATION: {\n NAMES: {\n SINGULAR: 'Thread',\n PLURAL: 'Threads',\n NEW: 'New Thread',\n },\n ICONS: {\n DEFAULT: MessagesSquare,\n OFF: MessageSquareOff,\n ACTIVE: MessageSquareText,\n NEW: MessageSquarePlus,\n LIST: MessageSquareMore,\n },\n },\n DOCUMENT: {\n NAMES: {\n SINGULAR: 'File',\n PLURAL: 'Files',\n },\n ICONS: {\n DEFAULT: FolderOpen,\n OFF: CaptionsOff,\n },\n },\n VIEWER: {\n NAMES: {\n SINGULAR: 'Viewer',\n PLURAL: 'Viewers',\n },\n ICONS: {\n DEFAULT: Eye,\n OFF: EyeOff,\n },\n },\n TAG: {\n NAMES: {\n SINGULAR: 'Field',\n PLURAL: 'Fields',\n },\n ICONS: {\n DEFAULT: Hash,\n NEW: FolderPlus,\n },\n },\n ANNOTATION: {\n NAMES: {\n SINGULAR: 'Annotation',\n PLURAL: 'Annotations',\n },\n ICONS: {\n DEFAULT: StickyNote,\n NEW: StickyNote,\n },\n },\n // A tag of any kind \u2014 what the Tags page lists. TAG stays \"Field\": the Files page's custom\n // columns (labels and annotations as document fields) are named after it.\n ANY_TAG: {\n NAMES: {\n SINGULAR: 'Tag',\n PLURAL: 'Tags',\n },\n ICONS: {\n DEFAULT: Tags,\n },\n },\n // The kinds of TAG (a tag's `kind`): a label files things; an issue is a point in dispute; a\n // person and an organisation are entities the documents name; a saved search is a stored query.\n LABEL: {\n NAMES: {\n SINGULAR: 'Label',\n PLURAL: 'Labels',\n },\n ICONS: {\n DEFAULT: Tags,\n },\n },\n ISSUE: {\n NAMES: {\n SINGULAR: 'Issue',\n PLURAL: 'Issues',\n },\n ICONS: {\n DEFAULT: Scale,\n },\n },\n PERSON: {\n NAMES: {\n SINGULAR: 'Person',\n PLURAL: 'People',\n },\n ICONS: {\n DEFAULT: Contact,\n },\n },\n ORGANISATION: {\n NAMES: {\n SINGULAR: 'Organisation',\n PLURAL: 'Organisations',\n },\n ICONS: {\n DEFAULT: Building2,\n },\n },\n SAVED_SEARCH: {\n NAMES: {\n SINGULAR: 'Saved search',\n PLURAL: 'Saved searches',\n },\n ICONS: {\n DEFAULT: Search,\n },\n },\n // A statement the workspace knows \u2014 a date, a decision, a preference \u2014 written by hand or kept by\n // the assistant, optionally grounded in source passages (`facts`, fct-*). Distinct from\n // ANNOTATION, a value attached TO a document; a fact is workspace-scoped and stands alone.\n FACT: {\n NAMES: {\n SINGULAR: 'Fact',\n PLURAL: 'Facts',\n },\n ICONS: {\n DEFAULT: NotebookText,\n NEW: NotebookPen,\n },\n },\n USER: {\n NAMES: {\n SINGULAR: 'User',\n PLURAL: 'Users',\n },\n ICONS: {\n DEFAULT: User,\n NEW: UserPlus,\n SETTINGS: Settings2,\n },\n },\n WORKSPACEUSER: {\n NAMES: {\n SINGULAR: 'Member',\n PLURAL: 'Members',\n },\n ICONS: {\n DEFAULT: User,\n PLURAL: Users,\n NEW: UserPlus,\n SETTINGS: Settings2,\n },\n },\n CONTACT: {\n NAMES: {\n SINGULAR: 'Contact',\n PLURAL: 'Contacts',\n },\n ICONS: {\n // A starred person, not an address-book card: contacts here are the\n // people you talk to, and the star reads as \"your people\".\n DEFAULT: UserStar,\n NEW: UserPlus,\n },\n },\n TASK: {\n NAMES: {\n SINGULAR: 'Job',\n PLURAL: 'Jobs',\n },\n ICONS: {\n DEFAULT: ClipboardList,\n },\n },\n PROJECT: {\n NAMES: {\n SINGULAR: 'Project',\n PLURAL: 'Projects',\n },\n ICONS: {\n DEFAULT: CreditCard,\n },\n },\n SKILL: {\n NAMES: {\n SINGULAR: 'Skill',\n PLURAL: 'Skills',\n },\n ICONS: {\n DEFAULT: Wrench,\n },\n },\n ACCOUNT: {\n NAMES: {\n SINGULAR: 'Account',\n },\n ICONS: {\n DEFAULT: CircleUserRound,\n },\n },\n NOTIFICATIONS: {\n NAMES: {\n SINGULAR: 'Activity',\n PLURAL: 'Activities',\n },\n ICONS: {\n DEFAULT: Bell,\n },\n },\n MESSAGE: {\n NAMES: {\n SINGULAR: 'Message',\n PLURAL: 'Messages',\n },\n ICONS: {\n DEFAULT: MessageSquare,\n },\n },\n NOTIFICATION: {\n NAMES: {\n SINGULAR: 'Notification',\n PLURAL: 'Notifications',\n },\n ICONS: {\n DEFAULT: Bell,\n },\n },\n APP: {\n NAMES: {\n SINGULAR: 'Application',\n PLURAL: 'Applications',\n },\n ICONS: {\n DEFAULT: LayoutGrid,\n HOME: LayoutGrid,\n LOGOUT: LogOut,\n UPLOAD: Upload,\n },\n },\n HELP: {\n NAMES: {\n SINGULAR: 'Help',\n PLURAL: 'Help',\n },\n ICONS: {\n DEFAULT: MessageSquareLock,\n DOCS: BookOpen,\n FAQ: FileQuestion,\n ABOUT: Info,\n },\n },\n USERSHIELD: {\n NAMES: {\n SINGULAR: 'User Shield',\n PLURAL: 'User Shields',\n },\n ICONS: {\n DEFAULT: MessageSquareLock,\n },\n },\n}\n\n/** The set of registered entity types. */\nexport type EntityType = keyof typeof ENTITY_MAPPINGS\n\n/** Deployment override for a single entity: extra/replacement names and icons. */\nexport interface EntityRegistryOverride {\n NAMES?: Record<string, string>\n ICONS?: Record<string, EntityIconComponent>\n}\n\n/**\n * Layer deployment-specific names/icons onto the canonical registry \u2014 call once\n * at app startup. Merges in place (so live `ENTITY_MAPPINGS` refs pick it up) and\n * only touches the keys you pass, e.g.:\n *\n * ```ts\n * configureEntityRegistry({\n * WORKSPACE: { NAMES: { SINGULAR: 'MatterSpace' }, ICONS: { DEFAULT: RotatedSquareM } },\n * })\n * ```\n */\nexport function configureEntityRegistry(\n overrides: Partial<Record<EntityType, EntityRegistryOverride>>\n): void {\n for (const [type, def] of Object.entries(overrides)) {\n const target = ENTITY_MAPPINGS[type as EntityType] as {\n NAMES: Record<string, string>\n ICONS: Record<string, EntityIconComponent>\n }\n if (!target) continue\n if (def?.NAMES) Object.assign(target.NAMES, def.NAMES)\n if (def?.ICONS) Object.assign(target.ICONS, def.ICONS)\n }\n}\n\n/**\n * Resolve the icon component for an entity type + variant, falling back to the\n * type's DEFAULT icon for unknown variants.\n */\nexport const getEntityIcon = (\n entityType: EntityType,\n variant: string = 'DEFAULT'\n): EntityIconComponent | undefined => {\n const icons = ENTITY_MAPPINGS[entityType]?.ICONS as\n Record<string, EntityIconComponent> | undefined\n return icons?.[variant] || icons?.DEFAULT\n}\n\ninterface EntityNames {\n SINGULAR: string\n PLURAL?: string\n SHORT?: string\n NEW?: string\n}\n\n/** The forms of an entity's display label. */\nexport type EntityLabelForm = 'SINGULAR' | 'PLURAL' | 'SHORT' | 'NEW'\n\n/**\n * Display label for an entity type. `SINGULAR` (default); `PLURAL`/`SHORT`/`NEW`\n * fall back to derivations of the singular when not explicitly configured. The site's\n * vocabulary (`ArbiHostConfig.vocabulary`) wins over the registry: a site that names only the\n * singular gets every other form derived from it.\n */\nexport const getEntityLabel = (\n entityType: EntityType,\n form: EntityLabelForm = 'SINGULAR'\n): string => {\n const entityMapping = ENTITY_MAPPINGS[entityType]\n if (!entityMapping) return ''\n const noun = vocabularyNoun(entityType)\n const names: EntityNames =\n noun === undefined\n ? (entityMapping.NAMES as EntityNames)\n : typeof noun === 'string'\n ? { SINGULAR: noun }\n : noun\n const singularName = names.SINGULAR || ''\n\n if (form === 'NEW') return names.NEW !== undefined ? names.NEW : 'New ' + singularName\n if (form === 'SHORT')\n return names.SHORT !== undefined ? names.SHORT : singularName.substring(0, 3) + '.'\n if (form === 'PLURAL') return names.PLURAL !== undefined ? names.PLURAL : singularName + 's'\n return singularName\n}\n\n/**\n * An entity's word inside a sentence: the label in lower case (\"Rename project\", \"No matters\n * yet\"). Use `getEntityLabel` where the word starts a title or stands alone.\n */\nexport const entityNoun = (\n entityType: EntityType,\n form: Exclude<EntityLabelForm, 'NEW' | 'SHORT'> = 'SINGULAR'\n): string => getEntityLabel(entityType, form).toLowerCase()\n\ntype EntityIconProps = {\n entityType: EntityType\n variant?: string\n className?: string\n size?: number\n color?: string\n 'data-testid'?: string\n onClick?: () => void\n} & React.SVGAttributes<SVGElement>\n\n/**\n * Render an entity's icon \u2014 the recommended way to show entity glyphs so all\n * icon choices stay centralised.\n */\nexport const EntityIcon = ({ entityType, variant = 'DEFAULT', ...props }: EntityIconProps) => {\n const IconComponent = getEntityIcon(entityType, variant)\n return IconComponent ? React.createElement(IconComponent, props) : null\n}\n\n/** Centralised icons for private/shared visibility states. */\nexport const VISIBILITY_ICONS = {\n PRIVATE: MessageSquareLock,\n SHARED: Users,\n}\n\n/** Render the private/shared visibility glyph. */\nexport const VisibilityIcon = ({\n isShared,\n className,\n ...props\n}: {\n isShared: boolean\n className?: string\n size?: number\n color?: string\n 'data-testid'?: string\n onClick?: () => void\n} & React.SVGAttributes<SVGElement>) => {\n const IconComponent = isShared ? VISIBILITY_ICONS.SHARED : VISIBILITY_ICONS.PRIVATE\n return React.createElement(IconComponent, {\n ...props,\n className: [isShared ? 'text-secondary' : 'text-primary', className].filter(Boolean).join(' '),\n })\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,43 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Badge as DefaultBadge } from "../ui/badge.js";
3
+ const PACKAGE_BADGE_VARIANTS = [
4
+ "default",
5
+ "accent",
6
+ "secondary",
7
+ "destructive",
8
+ "outline"
9
+ ];
10
+ function isPackageBadgeVariant(v) {
11
+ return PACKAGE_BADGE_VARIANTS.some((known) => known === v);
12
+ }
13
+ function PackageStatusBadge({ variant, ...rest }) {
14
+ return /* @__PURE__ */ jsx(DefaultBadge, { variant: isPackageBadgeVariant(variant) ? variant : "outline", ...rest });
15
+ }
16
+ const registry = {
17
+ variants: {},
18
+ fallback: "outline",
19
+ Badge: PackageStatusBadge
20
+ };
21
+ function configureStatusRegistry(map, opts) {
22
+ Object.assign(registry.variants, map);
23
+ if (opts?.fallback) registry.fallback = opts.fallback;
24
+ if (opts?.Badge) registry.Badge = opts.Badge;
25
+ }
26
+ function getStatusVariant(status) {
27
+ return registry.variants[status] ?? registry.fallback;
28
+ }
29
+ function StatusPill({ status, label, variant, className, testId }) {
30
+ const Badge = registry.Badge;
31
+ return /* @__PURE__ */ jsx(Badge, { variant: variant ?? getStatusVariant(status), className, "data-testid": testId, children: label ?? status });
32
+ }
33
+ let RAG_LABELS = { red: "At risk", amber: "Attention", green: "On track" };
34
+ function configureRagLabels(labels) {
35
+ RAG_LABELS = { ...RAG_LABELS, ...labels };
36
+ }
37
+ export {
38
+ StatusPill,
39
+ configureRagLabels,
40
+ configureStatusRegistry,
41
+ getStatusVariant
42
+ };
43
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/entities/status.tsx"],
4
+ "sourcesContent": ["/**\n * Status pill + RAG dot \u2014 the generic presentation, with the domain vocabulary\n * INJECTED (never baked in), mirroring the entity registry (`configureEntityRegistry`).\n *\n * A deployment registers its own status\u2192variant vocabulary and, if its Badge has\n * a bespoke skin (brand variants), injects that Badge too \u2014 so each app keeps its\n * exact pill look while sharing one component:\n *\n * configureStatusRegistry(\n * { Active: 'success', Privileged: 'brass', \u2026 }, // this firm's vocabulary\n * { fallback: 'outline', Badge: FirmBadge }, // this firm's Badge skin\n * )\n */\nimport { type ComponentType, type ReactNode } from 'react'\nimport { Badge as DefaultBadge } from '../ui/badge'\n\n/** A status variant is an opaque string \u2014 its valid values are defined by the\n * injected Badge (or the default Badge's variants). */\nexport type StatusVariant = string\n\n/** The shape a consumer's Badge must satisfy to be injected as the pill skin. */\nexport interface StatusBadgeProps {\n variant?: StatusVariant\n className?: string\n children?: ReactNode\n 'data-testid'?: string\n}\nexport type StatusBadgeComponent = ComponentType<StatusBadgeProps>\n\n/** The package Badge's own variant vocabulary. Kept as an explicit runtime list so\n * the default skin can narrow a free-form StatusVariant to a known Badge variant\n * with a type guard (no cast) \u2014 an unrecognised status just renders as `outline`. */\ntype PackageBadgeVariant = 'default' | 'accent' | 'secondary' | 'destructive' | 'outline'\nconst PACKAGE_BADGE_VARIANTS: readonly PackageBadgeVariant[] = [\n 'default',\n 'accent',\n 'secondary',\n 'destructive',\n 'outline',\n]\nfunction isPackageBadgeVariant(v: string | undefined): v is PackageBadgeVariant {\n return PACKAGE_BADGE_VARIANTS.some((known) => known === v)\n}\n\n/** Default skin: the package Badge. A firm that registers variants outside this set\n * injects its own Badge (see `configureStatusRegistry`); here unknown \u2192 `outline`. */\nfunction PackageStatusBadge({ variant, ...rest }: StatusBadgeProps) {\n return <DefaultBadge variant={isPackageBadgeVariant(variant) ? variant : 'outline'} {...rest} />\n}\n\nconst registry: {\n variants: Record<string, StatusVariant>\n fallback: StatusVariant\n Badge: StatusBadgeComponent\n} = {\n variants: {},\n fallback: 'outline',\n Badge: PackageStatusBadge,\n}\n\n/** Register a firm's status\u2192variant vocabulary (merged in place), and optionally\n * its fallback variant + its own Badge skin. Mirrors `configureEntityRegistry`. */\nexport function configureStatusRegistry(\n map: Record<string, StatusVariant>,\n opts?: { fallback?: StatusVariant; Badge?: StatusBadgeComponent }\n): void {\n Object.assign(registry.variants, map)\n if (opts?.fallback) registry.fallback = opts.fallback\n if (opts?.Badge) registry.Badge = opts.Badge\n}\n\n/** Resolve a status string to its variant (falls back to the registered default). */\nexport function getStatusVariant(status: string): StatusVariant {\n return registry.variants[status] ?? registry.fallback\n}\n\nexport interface StatusPillProps {\n status: string\n label?: string\n /** Escape hatch: force a variant, skipping the registry. */\n variant?: StatusVariant\n className?: string\n testId?: string\n}\n\n/** A status chip whose look comes from the injected Badge + registered vocabulary. */\nexport function StatusPill({ status, label, variant, className, testId }: StatusPillProps) {\n const Badge = registry.Badge\n return (\n <Badge variant={variant ?? getStatusVariant(status)} className={className} data-testid={testId}>\n {label ?? status}\n </Badge>\n )\n}\n\n// \u2500\u2500 RAG dot \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\nexport type Rag = 'red' | 'amber' | 'green'\n\nlet RAG_LABELS: Record<Rag, string> = { red: 'At risk', amber: 'Attention', green: 'On track' }\n\n/** Override the RAG label copy (defaults are seeded so consumers stay identical). */\nexport function configureRagLabels(labels: Partial<Record<Rag, string>>): void {\n RAG_LABELS = { ...RAG_LABELS, ...labels }\n}\n"],
5
+ "mappings": "AA+CS;AAjCT,SAAS,SAAS,oBAAoB;AAmBtC,MAAM,yBAAyD;AAAA,EAC7D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACA,SAAS,sBAAsB,GAAiD;AAC9E,SAAO,uBAAuB,KAAK,CAAC,UAAU,UAAU,CAAC;AAC3D;AAIA,SAAS,mBAAmB,EAAE,SAAS,GAAG,KAAK,GAAqB;AAClE,SAAO,oBAAC,gBAAa,SAAS,sBAAsB,OAAO,IAAI,UAAU,WAAY,GAAG,MAAM;AAChG;AAEA,MAAM,WAIF;AAAA,EACF,UAAU,CAAC;AAAA,EACX,UAAU;AAAA,EACV,OAAO;AACT;AAIO,SAAS,wBACd,KACA,MACM;AACN,SAAO,OAAO,SAAS,UAAU,GAAG;AACpC,MAAI,MAAM,SAAU,UAAS,WAAW,KAAK;AAC7C,MAAI,MAAM,MAAO,UAAS,QAAQ,KAAK;AACzC;AAGO,SAAS,iBAAiB,QAA+B;AAC9D,SAAO,SAAS,SAAS,MAAM,KAAK,SAAS;AAC/C;AAYO,SAAS,WAAW,EAAE,QAAQ,OAAO,SAAS,WAAW,OAAO,GAAoB;AACzF,QAAM,QAAQ,SAAS;AACvB,SACE,oBAAC,SAAM,SAAS,WAAW,iBAAiB,MAAM,GAAG,WAAsB,eAAa,QACrF,mBAAS,QACZ;AAEJ;AAMA,IAAI,aAAkC,EAAE,KAAK,WAAW,OAAO,aAAa,OAAO,WAAW;AAGvF,SAAS,mBAAmB,QAA4C;AAC7E,eAAa,EAAE,GAAG,YAAY,GAAG,OAAO;AAC1C;",
6
+ "names": []
7
+ }
@@ -0,0 +1,23 @@
1
+ import { getEntityLabel } from "./registry.js";
2
+ const KIND_ENTITY = {
3
+ label: "LABEL",
4
+ annotation: "ANNOTATION",
5
+ search: "SAVED_SEARCH",
6
+ issue: "ISSUE",
7
+ person: "PERSON",
8
+ organisation: "ORGANISATION"
9
+ };
10
+ function tagKindTitle(kind, { plural = false } = {}) {
11
+ return getEntityLabel(KIND_ENTITY[kind], plural ? "PLURAL" : "SINGULAR");
12
+ }
13
+ function tagKindNouns(kind) {
14
+ return {
15
+ singular: tagKindTitle(kind).toLowerCase(),
16
+ plural: tagKindTitle(kind, { plural: true }).toLowerCase()
17
+ };
18
+ }
19
+ export {
20
+ tagKindNouns,
21
+ tagKindTitle
22
+ };
23
+ //# sourceMappingURL=tag-kinds.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/entities/tag-kinds.ts"],
4
+ "sourcesContent": ["/**\n * What each tag kind is called, from the entity registry (so a deployment that renames an entity \u2014\n * an issue to \"Point\", say \u2014 renames it everywhere): `tagKindTitle('person', { plural: true })` is\n * \"People\", `tagKindNouns('label').singular` is \"label\".\n */\n\nimport { getEntityLabel, type EntityType } from './registry'\n\n/** The entity-label registry entry that names each kind (the SDK's `TagKind`s). */\nconst KIND_ENTITY = {\n label: 'LABEL',\n annotation: 'ANNOTATION',\n search: 'SAVED_SEARCH',\n issue: 'ISSUE',\n person: 'PERSON',\n organisation: 'ORGANISATION',\n} as const satisfies Record<string, EntityType>\n\n/** What a tag is: a label, annotation, search, issue, person or organisation. */\ntype TagKind = keyof typeof KIND_ENTITY\n\n/** A kind's name as a heading or option (\"Label\", \"Organisation\", plural \"People\"). */\nexport function tagKindTitle(kind: TagKind, { plural = false } = {}): string {\n return getEntityLabel(KIND_ENTITY[kind], plural ? 'PLURAL' : 'SINGULAR')\n}\n\n/** Singular / plural nouns for a kind, for running text (\"New label\", \"2 annotations\"). */\nexport function tagKindNouns(kind: TagKind): { singular: string; plural: string } {\n return {\n singular: tagKindTitle(kind).toLowerCase(),\n plural: tagKindTitle(kind, { plural: true }).toLowerCase(),\n }\n}\n"],
5
+ "mappings": "AAMA,SAAS,sBAAuC;AAGhD,MAAM,cAAc;AAAA,EAClB,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,cAAc;AAChB;AAMO,SAAS,aAAa,MAAe,EAAE,SAAS,MAAM,IAAI,CAAC,GAAW;AAC3E,SAAO,eAAe,YAAY,IAAI,GAAG,SAAS,WAAW,UAAU;AACzE;AAGO,SAAS,aAAa,MAAqD;AAChF,SAAO;AAAA,IACL,UAAU,aAAa,IAAI,EAAE,YAAY;AAAA,IACzC,QAAQ,aAAa,MAAM,EAAE,QAAQ,KAAK,CAAC,EAAE,YAAY;AAAA,EAC3D;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,44 @@
1
+ import {
2
+ SquareCheckBig,
3
+ NotebookPen,
4
+ List,
5
+ Hash,
6
+ Search,
7
+ Folder,
8
+ Calendar,
9
+ Bot
10
+ } from "lucide-react";
11
+ const TAG_TYPE_LABELS = {
12
+ checkbox: "Label",
13
+ select: "Choice",
14
+ number: "Number",
15
+ text: "Text",
16
+ folder: "Folder",
17
+ search: "Saved Search",
18
+ date: "Date",
19
+ assistant: "AI Assistant"
20
+ };
21
+ const TAG_TYPE_ICONS = {
22
+ checkbox: SquareCheckBig,
23
+ select: List,
24
+ number: Hash,
25
+ text: NotebookPen,
26
+ folder: Folder,
27
+ search: Search,
28
+ date: Calendar,
29
+ assistant: Bot
30
+ };
31
+ function getTagTypeIcon(type) {
32
+ return TAG_TYPE_ICONS[type ?? "text"] || NotebookPen;
33
+ }
34
+ function getTagTypeLabel(type) {
35
+ const t = type ?? "text";
36
+ return TAG_TYPE_LABELS[t] || t;
37
+ }
38
+ export {
39
+ TAG_TYPE_ICONS,
40
+ TAG_TYPE_LABELS,
41
+ getTagTypeIcon,
42
+ getTagTypeLabel
43
+ };
44
+ //# sourceMappingURL=tag-types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/entities/tag-types.ts"],
4
+ "sourcesContent": ["/**\n * Tag-type presentation primitives \u2014 the brand-neutral icon and label maps that\n * back the shared `TagEntity` pill. Kept in their own module (not the component\n * file) so app-side wrappers can import them to build their own store-coupled\n * tooltip content without pulling in a component, and so the component file stays\n * fast-refresh friendly.\n */\n\nimport {\n SquareCheckBig,\n StickyNote,\n NotebookPen,\n List,\n Hash,\n Search,\n Folder,\n Calendar,\n Bot,\n} from 'lucide-react'\n\n/**\n * Human-readable tag type names. \"Annotation\" names the whole kind (every non-label field), so\n * each format is called by what it is: a checkbox tag is a label, a select one a choice.\n */\nexport const TAG_TYPE_LABELS: Record<string, string> = {\n checkbox: 'Label',\n select: 'Choice',\n number: 'Number',\n text: 'Text',\n folder: 'Folder',\n search: 'Saved Search',\n date: 'Date',\n assistant: 'AI Assistant',\n}\n\n/** Icon mapping for tag types. */\nexport const TAG_TYPE_ICONS: Record<string, typeof StickyNote> = {\n checkbox: SquareCheckBig,\n select: List,\n number: Hash,\n text: NotebookPen,\n folder: Folder,\n search: Search,\n date: Calendar,\n assistant: Bot,\n}\n\n/** Resolve the icon component for a tag type, with the `text` (NotebookPen) fallback.\n * Annotations share the NotebookPen mark used by the AI Annotate bulk action, so\n * the table column and the batch bar name the same thing the same way. */\nexport function getTagTypeIcon(type?: string | null): typeof StickyNote {\n return TAG_TYPE_ICONS[type ?? 'text'] || NotebookPen\n}\n\n/** Resolve the human-readable label for a tag type, falling back to the raw type. */\nexport function getTagTypeLabel(type?: string | null): string {\n const t = type ?? 'text'\n return TAG_TYPE_LABELS[t] || t\n}\n"],
5
+ "mappings": "AAQA;AAAA,EACE;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAMA,MAAM,kBAA0C;AAAA,EACrD,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,WAAW;AACb;AAGO,MAAM,iBAAoD;AAAA,EAC/D,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,WAAW;AACb;AAKO,SAAS,eAAe,MAAyC;AACtE,SAAO,eAAe,QAAQ,MAAM,KAAK;AAC3C;AAGO,SAAS,gBAAgB,MAA8B;AAC5D,QAAM,IAAI,QAAQ;AAClB,SAAO,gBAAgB,CAAC,KAAK;AAC/B;",
6
+ "names": []
7
+ }
@@ -0,0 +1,12 @@
1
+ let vocabulary = {};
2
+ function configureEntityVocabulary(next) {
3
+ vocabulary = next;
4
+ }
5
+ function vocabularyNoun(entityType) {
6
+ return vocabulary[entityType];
7
+ }
8
+ export {
9
+ configureEntityVocabulary,
10
+ vocabularyNoun
11
+ };
12
+ //# sourceMappingURL=vocabulary.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/entities/vocabulary.ts"],
4
+ "sourcesContent": ["/**\n * A site's own words for the entities (`ArbiHostConfig.vocabulary`): `{ PROJECT: 'Matter' }` makes\n * every kit say \"Matter\", \"Matters\", \"New matter\" where the defaults say \"Project\". The vertical\n * nouns live only in the site's config; the kits read them through `getEntityLabel` /\n * `entityNoun`, at render time, so the host's vocabulary is in place before any kit renders.\n *\n * Dependency-free (no icons), so `<ArbiHost>` can apply it without growing its import graph.\n */\n\n/** An entity's word: the singular (\"Matter\"), or each form where a derived one would be wrong. */\nexport type EntityNoun =\n string | { SINGULAR: string; PLURAL?: string; SHORT?: string; NEW?: string }\n\n/** A site's words, keyed by entity type (`PROJECT`, `WORKSPACE`, \u2026). */\nexport type EntityVocabulary = Partial<Record<string, EntityNoun>>\n\nlet vocabulary: EntityVocabulary = {}\n\n/** Set the site's vocabulary (replacing any earlier one). `<ArbiHost>` calls it with `config.vocabulary`. */\nexport function configureEntityVocabulary(next: EntityVocabulary): void {\n vocabulary = next\n}\n\n/** The site's word for an entity type, if it has one. */\nexport function vocabularyNoun(entityType: string): EntityNoun | undefined {\n return vocabulary[entityType]\n}\n"],
5
+ "mappings": "AAgBA,IAAI,aAA+B,CAAC;AAG7B,SAAS,0BAA0B,MAA8B;AACtE,eAAa;AACf;AAGO,SAAS,eAAe,YAA4C;AACzE,SAAO,WAAW,UAAU;AAC9B;",
6
+ "names": []
7
+ }
@@ -0,0 +1,25 @@
1
+ import { create } from "zustand";
2
+ const useEntityExtractionStore = create(() => ({ docIds: [] }));
3
+ function update(docIds, running) {
4
+ if (!docIds.length) return;
5
+ useEntityExtractionStore.setState((state) => {
6
+ const ids = new Set(state.docIds);
7
+ docIds.forEach((id) => running ? ids.add(id) : ids.delete(id));
8
+ return { docIds: [...ids] };
9
+ });
10
+ }
11
+ function startEntityExtraction(docIds) {
12
+ update(docIds, true);
13
+ }
14
+ function finishEntityExtraction(docIds) {
15
+ update(docIds, false);
16
+ }
17
+ function useEntityExtractionDocIds() {
18
+ return useEntityExtractionStore((state) => state.docIds);
19
+ }
20
+ export {
21
+ finishEntityExtraction,
22
+ startEntityExtraction,
23
+ useEntityExtractionDocIds
24
+ };
25
+ //# sourceMappingURL=entity-extraction.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/entity-extraction.ts"],
4
+ "sourcesContent": ["/**\n * The documents whose people and organisations are being found (`useExtractEntities`), from the\n * request until the live connection says the batch is done (`batch_complete`, `entity_extract`):\n * the package's WebSocket (`ArbiWebSocketProvider`) ends it, and a host on its own connection calls\n * `finishEntityExtraction` from its handler.\n */\n\nimport { create } from 'zustand'\n\nconst useEntityExtractionStore = create<{ docIds: readonly string[] }>(() => ({ docIds: [] }))\n\nfunction update(docIds: readonly string[], running: boolean): void {\n if (!docIds.length) return\n useEntityExtractionStore.setState((state) => {\n const ids = new Set(state.docIds)\n docIds.forEach((id) => (running ? ids.add(id) : ids.delete(id)))\n return { docIds: [...ids] }\n })\n}\n\n/** The documents an extraction was started on are running. */\nexport function startEntityExtraction(docIds: readonly string[]): void {\n update(docIds, true)\n}\n\n/** The extraction of these documents is done. */\nexport function finishEntityExtraction(docIds: readonly string[]): void {\n update(docIds, false)\n}\n\n/** The documents being extracted now. */\nexport function useEntityExtractionDocIds(): readonly string[] {\n return useEntityExtractionStore((state) => state.docIds)\n}\n"],
5
+ "mappings": "AAOA,SAAS,cAAc;AAEvB,MAAM,2BAA2B,OAAsC,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE;AAE7F,SAAS,OAAO,QAA2B,SAAwB;AACjE,MAAI,CAAC,OAAO,OAAQ;AACpB,2BAAyB,SAAS,CAAC,UAAU;AAC3C,UAAM,MAAM,IAAI,IAAI,MAAM,MAAM;AAChC,WAAO,QAAQ,CAAC,OAAQ,UAAU,IAAI,IAAI,EAAE,IAAI,IAAI,OAAO,EAAE,CAAE;AAC/D,WAAO,EAAE,QAAQ,CAAC,GAAG,GAAG,EAAE;AAAA,EAC5B,CAAC;AACH;AAGO,SAAS,sBAAsB,QAAiC;AACrE,SAAO,QAAQ,IAAI;AACrB;AAGO,SAAS,uBAAuB,QAAiC;AACtE,SAAO,QAAQ,KAAK;AACtB;AAGO,SAAS,4BAA+C;AAC7D,SAAO,yBAAyB,CAAC,UAAU,MAAM,MAAM;AACzD;",
6
+ "names": []
7
+ }