@arbidocs/blocks 0.5.35 → 0.5.37

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 (165) hide show
  1. package/README.md +22 -0
  2. package/dist/{ConnectedCallDock-V7DPSE6X.cjs → ConnectedCallDock-2LMIR4ID.cjs} +17 -17
  3. package/dist/{ConnectedCallDock-V7DPSE6X.cjs.map → ConnectedCallDock-2LMIR4ID.cjs.map} +1 -1
  4. package/dist/{ConnectedCallDock-CT3D6LLI.js → ConnectedCallDock-2NYM46HU.js} +8 -8
  5. package/dist/{ConnectedCallDock-CT3D6LLI.js.map → ConnectedCallDock-2NYM46HU.js.map} +1 -1
  6. package/dist/{ConnectedCallRoom-TNOCSTX2.cjs → ConnectedCallRoom-26PBMTCC.cjs} +9 -9
  7. package/dist/{ConnectedCallRoom-TNOCSTX2.cjs.map → ConnectedCallRoom-26PBMTCC.cjs.map} +1 -1
  8. package/dist/{ConnectedCallRoom-A27AM7IQ.js → ConnectedCallRoom-QJ2UV6GV.js} +8 -8
  9. package/dist/{ConnectedCallRoom-A27AM7IQ.js.map → ConnectedCallRoom-QJ2UV6GV.js.map} +1 -1
  10. package/dist/{ConnectedNativeDocxComparison-H2OZMWHT.cjs → ConnectedNativeDocxComparison-5MN7PVRE.cjs} +13 -13
  11. package/dist/{ConnectedNativeDocxComparison-H2OZMWHT.cjs.map → ConnectedNativeDocxComparison-5MN7PVRE.cjs.map} +1 -1
  12. package/dist/{ConnectedNativeDocxComparison-RWKFPJPJ.js → ConnectedNativeDocxComparison-GHOEFJUN.js} +12 -12
  13. package/dist/{ConnectedNativeDocxComparison-RWKFPJPJ.js.map → ConnectedNativeDocxComparison-GHOEFJUN.js.map} +1 -1
  14. package/dist/{ConnectedNativeDocxEditor-43BI5LN6.js → ConnectedNativeDocxEditor-HWPSWU2A.js} +11 -11
  15. package/dist/{ConnectedNativeDocxEditor-43BI5LN6.js.map → ConnectedNativeDocxEditor-HWPSWU2A.js.map} +1 -1
  16. package/dist/{ConnectedNativeDocxEditor-6DQEM6SD.cjs → ConnectedNativeDocxEditor-VA7476NF.cjs} +13 -13
  17. package/dist/{ConnectedNativeDocxEditor-6DQEM6SD.cjs.map → ConnectedNativeDocxEditor-VA7476NF.cjs.map} +1 -1
  18. package/dist/{ConnectedStreamedWordArtifact-TEB332E3.js → ConnectedStreamedWordArtifact-KZUZB47X.js} +12 -12
  19. package/dist/ConnectedStreamedWordArtifact-KZUZB47X.js.map +1 -0
  20. package/dist/{ConnectedStreamedWordArtifact-3VKYIG6C.cjs → ConnectedStreamedWordArtifact-UMSTUZBY.cjs} +13 -13
  21. package/dist/ConnectedStreamedWordArtifact-UMSTUZBY.cjs.map +1 -0
  22. package/dist/{WorkspaceTableView-ATZHON74.cjs → WorkspaceTableView-DYXHUIRA.cjs} +9 -9
  23. package/dist/{WorkspaceTableView-ATZHON74.cjs.map → WorkspaceTableView-DYXHUIRA.cjs.map} +1 -1
  24. package/dist/{WorkspaceTableView-7APDRIPL.js → WorkspaceTableView-HXSBJY42.js} +7 -7
  25. package/dist/{WorkspaceTableView-7APDRIPL.js.map → WorkspaceTableView-HXSBJY42.js.map} +1 -1
  26. package/dist/agents/index.cjs +401 -401
  27. package/dist/agents/index.js +10 -10
  28. package/dist/calls/index.cjs +131 -131
  29. package/dist/calls/index.js +9 -9
  30. package/dist/chat/index.cjs +81 -81
  31. package/dist/chat/index.js +3 -3
  32. package/dist/{chunk-NUV5F6MM.js → chunk-2VEBUYEJ.js} +3 -3
  33. package/dist/{chunk-NUV5F6MM.js.map → chunk-2VEBUYEJ.js.map} +1 -1
  34. package/dist/{chunk-EGSSLWNZ.cjs → chunk-32ZIHUXE.cjs} +3 -3
  35. package/dist/{chunk-EGSSLWNZ.cjs.map → chunk-32ZIHUXE.cjs.map} +1 -1
  36. package/dist/{chunk-24H5WTGM.js → chunk-3ON5DJLR.js} +4 -4
  37. package/dist/{chunk-24H5WTGM.js.map → chunk-3ON5DJLR.js.map} +1 -1
  38. package/dist/{chunk-6EQSP77K.cjs → chunk-7P2IL7RX.cjs} +5 -5
  39. package/dist/{chunk-6EQSP77K.cjs.map → chunk-7P2IL7RX.cjs.map} +1 -1
  40. package/dist/{chunk-LNYEYR7W.cjs → chunk-7W7TPWSZ.cjs} +3 -3
  41. package/dist/{chunk-LNYEYR7W.cjs.map → chunk-7W7TPWSZ.cjs.map} +1 -1
  42. package/dist/{chunk-EFSL4O3B.cjs → chunk-ABKRLMWN.cjs} +5 -5
  43. package/dist/{chunk-EFSL4O3B.cjs.map → chunk-ABKRLMWN.cjs.map} +1 -1
  44. package/dist/{chunk-YPR4FSDJ.js → chunk-APPHGHMM.js} +3 -3
  45. package/dist/{chunk-YPR4FSDJ.js.map → chunk-APPHGHMM.js.map} +1 -1
  46. package/dist/{chunk-AL7EXOX5.js → chunk-CXY2ELL5.js} +3 -3
  47. package/dist/{chunk-AL7EXOX5.js.map → chunk-CXY2ELL5.js.map} +1 -1
  48. package/dist/{chunk-2C3I27VI.js → chunk-EHRT5M5F.js} +3 -3
  49. package/dist/{chunk-2C3I27VI.js.map → chunk-EHRT5M5F.js.map} +1 -1
  50. package/dist/{chunk-3ZLNI7ZA.cjs → chunk-EZJOJFY2.cjs} +3 -3
  51. package/dist/{chunk-3ZLNI7ZA.cjs.map → chunk-EZJOJFY2.cjs.map} +1 -1
  52. package/dist/{chunk-PRY52BW5.js → chunk-GI5ITZ53.js} +4 -4
  53. package/dist/{chunk-PRY52BW5.js.map → chunk-GI5ITZ53.js.map} +1 -1
  54. package/dist/{chunk-RBHVIVWP.js → chunk-GMECFWVT.js} +81 -81
  55. package/dist/chunk-GMECFWVT.js.map +1 -0
  56. package/dist/{chunk-S3YRRD54.js → chunk-GMZ2XFQQ.js} +3 -3
  57. package/dist/{chunk-S3YRRD54.js.map → chunk-GMZ2XFQQ.js.map} +1 -1
  58. package/dist/{chunk-VMLEISRZ.cjs → chunk-H3JKC55K.cjs} +9 -9
  59. package/dist/{chunk-VMLEISRZ.cjs.map → chunk-H3JKC55K.cjs.map} +1 -1
  60. package/dist/{chunk-FHB4G77H.js → chunk-IC2BXIUT.js} +3 -3
  61. package/dist/{chunk-FHB4G77H.js.map → chunk-IC2BXIUT.js.map} +1 -1
  62. package/dist/{chunk-PUX4M22Q.cjs → chunk-IYW6Q33D.cjs} +50 -50
  63. package/dist/{chunk-PUX4M22Q.cjs.map → chunk-IYW6Q33D.cjs.map} +1 -1
  64. package/dist/{chunk-4DKI37QQ.js → chunk-JYASRZUQ.js} +7 -7
  65. package/dist/{chunk-4DKI37QQ.js.map → chunk-JYASRZUQ.js.map} +1 -1
  66. package/dist/{chunk-G4VUVOHZ.cjs → chunk-K7OF4KGP.cjs} +82 -82
  67. package/dist/chunk-K7OF4KGP.cjs.map +1 -0
  68. package/dist/{chunk-Q7BS7EOU.cjs → chunk-KFQ6E6LE.cjs} +32 -28
  69. package/dist/chunk-KFQ6E6LE.cjs.map +1 -0
  70. package/dist/{chunk-N3HVTMQK.js → chunk-L7IBURSP.js} +3 -3
  71. package/dist/{chunk-N3HVTMQK.js.map → chunk-L7IBURSP.js.map} +1 -1
  72. package/dist/{chunk-FEVJA4BP.cjs → chunk-LPGFODB4.cjs} +3 -3
  73. package/dist/{chunk-FEVJA4BP.cjs.map → chunk-LPGFODB4.cjs.map} +1 -1
  74. package/dist/{chunk-VKY4SQMH.js → chunk-LXF22VRI.js} +4 -4
  75. package/dist/{chunk-VKY4SQMH.js.map → chunk-LXF22VRI.js.map} +1 -1
  76. package/dist/{chunk-XFSEPGF7.cjs → chunk-ME3R44JN.cjs} +4 -4
  77. package/dist/{chunk-XFSEPGF7.cjs.map → chunk-ME3R44JN.cjs.map} +1 -1
  78. package/dist/{chunk-P6MVDOCL.js → chunk-MJYGHJ4Y.js} +3 -3
  79. package/dist/{chunk-P6MVDOCL.js.map → chunk-MJYGHJ4Y.js.map} +1 -1
  80. package/dist/{chunk-WALADS2S.cjs → chunk-N2SUDWY2.cjs} +3 -3
  81. package/dist/{chunk-WALADS2S.cjs.map → chunk-N2SUDWY2.cjs.map} +1 -1
  82. package/dist/{chunk-ICCBNHPU.js → chunk-NNUNS47F.js} +3 -3
  83. package/dist/{chunk-ICCBNHPU.js.map → chunk-NNUNS47F.js.map} +1 -1
  84. package/dist/{chunk-NOKTUWTN.cjs → chunk-OJTXFIXU.cjs} +4 -4
  85. package/dist/{chunk-NOKTUWTN.cjs.map → chunk-OJTXFIXU.cjs.map} +1 -1
  86. package/dist/{chunk-LTEDORG3.js → chunk-ORBXJ4IT.js} +221 -6
  87. package/dist/chunk-ORBXJ4IT.js.map +1 -0
  88. package/dist/{chunk-FSEZEVWZ.cjs → chunk-OXIGJYMO.cjs} +220 -3
  89. package/dist/chunk-OXIGJYMO.cjs.map +1 -0
  90. package/dist/{chunk-XHW35TC7.js → chunk-PPHUOWCJ.js} +33 -29
  91. package/dist/chunk-PPHUOWCJ.js.map +1 -0
  92. package/dist/{chunk-H5BFOVVL.cjs → chunk-RVCQE66I.cjs} +5 -5
  93. package/dist/{chunk-H5BFOVVL.cjs.map → chunk-RVCQE66I.cjs.map} +1 -1
  94. package/dist/{chunk-7CHI36EP.js → chunk-T7O73MX2.js} +5 -5
  95. package/dist/{chunk-7CHI36EP.js.map → chunk-T7O73MX2.js.map} +1 -1
  96. package/dist/{chunk-JKMV4QNV.cjs → chunk-U7IEC2EM.cjs} +74 -74
  97. package/dist/{chunk-JKMV4QNV.cjs.map → chunk-U7IEC2EM.cjs.map} +1 -1
  98. package/dist/{chunk-FY4C7HU5.cjs → chunk-UCCYCT3R.cjs} +16 -16
  99. package/dist/{chunk-FY4C7HU5.cjs.map → chunk-UCCYCT3R.cjs.map} +1 -1
  100. package/dist/{chunk-RH4XIABH.js → chunk-UHYO2E25.js} +3 -3
  101. package/dist/{chunk-RH4XIABH.js.map → chunk-UHYO2E25.js.map} +1 -1
  102. package/dist/{chunk-2QDNQM63.cjs → chunk-UKG4DDLI.cjs} +10 -10
  103. package/dist/{chunk-2QDNQM63.cjs.map → chunk-UKG4DDLI.cjs.map} +1 -1
  104. package/dist/{chunk-VPWCARVO.js → chunk-VP5TGUBY.js} +5 -5
  105. package/dist/{chunk-VPWCARVO.js.map → chunk-VP5TGUBY.js.map} +1 -1
  106. package/dist/{chunk-MLHOG7YH.js → chunk-VWX5UECZ.js} +3 -3
  107. package/dist/{chunk-MLHOG7YH.js.map → chunk-VWX5UECZ.js.map} +1 -1
  108. package/dist/{chunk-H6K7EWL2.cjs → chunk-WDMWWBPB.cjs} +7 -7
  109. package/dist/{chunk-H6K7EWL2.cjs.map → chunk-WDMWWBPB.cjs.map} +1 -1
  110. package/dist/{chunk-BIWPXSGS.cjs → chunk-YRWMYVHU.cjs} +20 -20
  111. package/dist/{chunk-BIWPXSGS.cjs.map → chunk-YRWMYVHU.cjs.map} +1 -1
  112. package/dist/{chunk-EZSYYENN.js → chunk-ZXU2TKUV.js} +6 -6
  113. package/dist/{chunk-EZSYYENN.js.map → chunk-ZXU2TKUV.js.map} +1 -1
  114. package/dist/{chunk-BRYRZOS3.cjs → chunk-ZZ76AUGX.cjs} +4 -4
  115. package/dist/{chunk-BRYRZOS3.cjs.map → chunk-ZZ76AUGX.cjs.map} +1 -1
  116. package/dist/collaboration/index.cjs +1 -1
  117. package/dist/collaboration/index.js +1 -1
  118. package/dist/connect/docx.cjs +15 -15
  119. package/dist/connect/docx.js +11 -11
  120. package/dist/connect/index.cjs +2866 -2606
  121. package/dist/connect/index.cjs.map +1 -1
  122. package/dist/connect/index.d.ts +1 -0
  123. package/dist/connect/index.js +2090 -1832
  124. package/dist/connect/index.js.map +1 -1
  125. package/dist/connect/viewer.cjs +63 -63
  126. package/dist/connect/viewer.js +16 -16
  127. package/dist/connection/workspace-form/ConnectedProjectSelector.d.ts +15 -0
  128. package/dist/connection/workspace-form/ConnectedWorkspaceFormModal.d.ts +11 -0
  129. package/dist/connection/workspace-form/WorkspaceCreateForm.d.ts +15 -0
  130. package/dist/connection/workspace-form/index.d.ts +3 -0
  131. package/dist/connection/workspace-form/types.d.ts +28 -0
  132. package/dist/connection/workspace-list/ConnectedWorkspaceList.d.ts +4 -1
  133. package/dist/connection/workspace-list/useConnectedWorkspaceList.d.ts +12 -36
  134. package/dist/facts/index.cjs +2 -2
  135. package/dist/facts/index.js +2 -2
  136. package/dist/files/index.cjs +223 -223
  137. package/dist/files/index.js +3 -3
  138. package/dist/home/index.cjs +29 -29
  139. package/dist/home/index.js +4 -4
  140. package/dist/index.cjs +1660 -1652
  141. package/dist/index.js +22 -22
  142. package/dist/settings/index.cjs +156 -156
  143. package/dist/settings/index.js +3 -3
  144. package/dist/shell/DockZone.d.ts +27 -0
  145. package/dist/shell/PanelModeSwitcher.d.ts +30 -0
  146. package/dist/shell/index.cjs +78 -70
  147. package/dist/shell/index.d.ts +2 -0
  148. package/dist/shell/index.js +4 -4
  149. package/dist/studio/index.cjs +8 -8
  150. package/dist/studio/index.js +7 -7
  151. package/dist/workflow-canvas/index.cjs +23 -23
  152. package/dist/workflow-canvas/index.js +10 -10
  153. package/dist/workspaces/WorkspaceFormParts.d.ts +3 -2
  154. package/dist/workspaces/index.cjs +27 -27
  155. package/dist/workspaces/index.js +2 -2
  156. package/node_modules/@arbidocs/coedit/package.json +1 -1
  157. package/package.json +5 -5
  158. package/dist/ConnectedStreamedWordArtifact-3VKYIG6C.cjs.map +0 -1
  159. package/dist/ConnectedStreamedWordArtifact-TEB332E3.js.map +0 -1
  160. package/dist/chunk-FSEZEVWZ.cjs.map +0 -1
  161. package/dist/chunk-G4VUVOHZ.cjs.map +0 -1
  162. package/dist/chunk-LTEDORG3.js.map +0 -1
  163. package/dist/chunk-Q7BS7EOU.cjs.map +0 -1
  164. package/dist/chunk-RBHVIVWP.js.map +0 -1
  165. package/dist/chunk-XHW35TC7.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/connection/ai.tsx"],"names":["useKitAiTask","useKitWorkspaceDocs","useKitSemanticSearch"],"mappings":";;;;;;;AAkCO,SAAS,kBAAA,GAAqB;AACnC,EAAA,MAAM,EAAE,eAAA,EAAgB,GAAI,aAAA,EAAc;AAC1C,EAAA,MAAM,OAAOA,SAAA,EAAa;AAC1B,EAAA,MAAM,SAAS,IAAA,CAAK,GAAA;AACpB,EAAA,MAAM,GAAA,GAAM,WAAA;AAAA,IACV,CAAC,QAAA,EAAkB,MAAA,EAAkB,IAAA,KACnC,OAAO,QAAA,EAAU,MAAA,EAAQ,EAAE,GAAG,IAAA,EAAM,KAAA,EAAO,IAAA,EAAM,KAAA,IAAS,iBAAiB,CAAA;AAAA,IAC7E,CAAC,QAAQ,eAAe;AAAA,GAC1B;AACA,EAAA,OAAO,EAAE,GAAG,IAAA,EAAM,GAAA,EAAI;AACxB;AAGO,SAAS,gBAAA,GAAmB;AACjC,EAAA,MAAM,EAAE,WAAA,EAAa,mBAAA,EAAoB,GAAI,aAAA,EAAc;AAC3D,EAAA,OAAOC,kBAAA,CAAoB,eAAe,mBAAmB,CAAA;AAC/D;AAGO,SAAS,iBAAA,GAAoB;AAClC,EAAA,MAAM,EAAE,eAAA,EAAgB,GAAI,aAAA,EAAc;AAC1C,EAAA,OAAOC,oBAAqB,EAAC,EAAG,EAAE,KAAA,EAAO,iBAAiB,CAAA;AAC5D;AAQO,SAAS,iBACd,OAAA,EAC8D;AAC9D,EAAA,MAAM,EAAE,aAAa,mBAAA,EAAqB,eAAA,EAAiB,MAAM,MAAA,EAAQ,mBAAA,KACvE,aAAA,EAAc;AAChB,EAAA,MAAM,OAAO,WAAA,IAAe,mBAAA;AAC5B,EAAA,MAAM,EAAE,IAAA,EAAM,OAAA,GAAU,EAAC,EAAE,GAAI,kBAAkB,IAAA,EAAM;AAAA,IACrD,OAAA,EAAS,MAAA,KAAW,eAAA,IAAmB,CAAC,CAAC,IAAA;AAAA,IACzC,WAAA,EAAa;AAAA,GACd,CAAA;AAED,EAAA,MAAM,iBAAA,GAAoB,sBAAA;AAAA,IACxB,MAAA,KAAW,eAAA,GAAkB,OAAA,GAAU,EAAC;AAAA,IACxC,IAAA,EAAM;AAAA,GACR;AACA,EAAA,MAAM,OAAO,eAAA,CAAgB;AAAA,IAC3B,GAAG,OAAA;AAAA,IACH,WAAA,EAAa,IAAA;AAAA,IACb,KAAA,EAAO,SAAS,KAAA,IAAS;AAAA,GAC1B,CAAA;AACD,EAAA,OAAO;AAAA,IACL,GAAG,IAAA;AAAA,IACH,iBAAA;AAAA,IACA,QAAA,EAAU,IAAA,CAAK,QAAA,CAAS,GAAA,CAAI,CAAC,OAAA,MAAa;AAAA,MACxC,GAAG,OAAA;AAAA,MACH,GAAI,QAAQ,QAAA,GACR;AAAA,QACE,WAAW,CAAC,CAAC,MAAM,UAAA,IAAc,OAAA,CAAQ,aAAa,IAAA,CAAK,UAAA;AAAA,QAC3D,YACE,OAAA,CAAQ,QAAA,KAAa,IAAA,EAAM,UAAA,GACvB,MAAM,IAAA,IAAQ,IAAA,EAAM,KAAA,GACpB,iBAAA,CAAkB,KAAK,CAAC,SAAA,KAAc,UAAU,EAAA,KAAO,OAAA,CAAQ,QAAQ,CAAA,EAAG;AAAA,UAElF;AAAC,KACP,CAAE;AAAA,GACJ;AACF;AAOO,SAAS,uBAAuB,KAAA,EAAyC;AAC9E,EAAA,2BACG,iBAAA,EAAA,EACC,QAAA,kBAAA,GAAA,CAAC,mBAAA,EAAA,EAAqB,GAAG,OAAO,CAAA,EAClC,CAAA;AAEJ;AAEA,SAAS,oBAAoB,KAAA,EAAyC;AACpE,EAAA,MAAM,OAAO,gBAAA,EAAiB;AAC9B,EAAA,uBAAO,GAAA,CAAC,aAAA,EAAA,EAAe,GAAG,KAAA,EAAO,IAAA,EAAY,CAAA;AAC/C","file":"chunk-N3HVTMQK.js","sourcesContent":["/**\n * The connected agent hooks — thin adapters over the reusable AI kit in\n * `@arbidocs/react`. The streaming/accumulation/search plumbing lives once in\n * the SDK; these hooks only bind the *workspace source* (from the connection\n * context, falling back to the configured workspace) and inject the host's\n * default assistant *configuration* so call sites needn't know the config\n * ext_id. An explicit `opts.model` still wins.\n */\nimport { useCallback } from 'react'\nimport {\n useAiTask as useKitAiTask,\n useWorkspaceDocs as useKitWorkspaceDocs,\n useSemanticSearch as useKitSemanticSearch,\n useConversation,\n useWorkspaceUsers,\n buildMentionCandidates,\n ConversationScope,\n type ArbiConversation,\n type UseConversationOptions,\n type AiRunOptions,\n} from '@arbidocs/react'\nimport { useConnection } from './ConnectionProvider'\nimport { AssistantDock, type AssistantDockProps } from '../chat/AssistantDock'\nimport type { MentionCandidate } from '@arbidocs/react/shell'\n\nexport type { AiTaskStatus, AiRunOptions, SearchChunk, ArtifactEvent } from '@arbidocs/react'\n\n/** Client-side redlining, re-exported so a host app has one import surface. */\nexport { toRedlineMarkdown, redlineStats, textToArtifact } from '@arbidocs/react'\n\n/**\n * The kit's `useAiTask` with the host's default assistant configuration\n * injected, so call sites needn't know the config ext_id.\n */\nexport function useConnectedAiTask() {\n const { assistantConfig } = useConnection()\n const task = useKitAiTask()\n const kitRun = task.run\n const run = useCallback(\n (question: string, docIds: string[], opts?: AiRunOptions) =>\n kitRun(question, docIds, { ...opts, model: opts?.model ?? assistantConfig }),\n [kitRun, assistantConfig]\n )\n return { ...task, run }\n}\n\n/** Resolve the active workspace + its document ids (what we ground the agent on). */\nexport function useWorkspaceDocs() {\n const { workspaceId, fallbackWorkspaceId } = useConnection()\n return useKitWorkspaceDocs(workspaceId ?? fallbackWorkspaceId)\n}\n\n/** Search the active workspace's documents (all of them) and return the top matching passages. */\nexport function useSemanticSearch() {\n const { assistantConfig } = useConnection()\n return useKitSemanticSearch([], { model: assistantConfig })\n}\n\n/**\n * The chat engine for `ChatPage` bound to the connection: the active workspace and the host's\n * default assistant configuration are injected, so a host writes\n * `<ChatPage chat={useConnectedChat()} />`. It works on the open conversation of the session in\n * scope (wrap a second chat on the page in `ConversationScope`).\n */\nexport function useConnectedChat(\n options?: Omit<UseConversationOptions, 'workspaceId'>\n): ArbiConversation & { mentionCandidates: MentionCandidate[] } {\n const { workspaceId, fallbackWorkspaceId, assistantConfig, user, status, ensureWorkspaceOpen } =\n useConnection()\n const wsId = workspaceId ?? fallbackWorkspaceId\n const { data: members = [] } = useWorkspaceUsers(wsId, {\n enabled: status === 'authenticated' && !!wsId,\n beforeFetch: ensureWorkspaceOpen,\n })\n // The engine's own candidates: what the composer inserts is what a send routes on.\n const mentionCandidates = buildMentionCandidates(\n status === 'authenticated' ? members : [],\n user?.externalId\n )\n const chat = useConversation({\n ...options,\n workspaceId: wsId,\n model: options?.model ?? assistantConfig,\n })\n return {\n ...chat,\n mentionCandidates,\n messages: chat.messages.map((message) => ({\n ...message,\n ...(message.authorId\n ? {\n fromOther: !!user?.externalId && message.authorId !== user.externalId,\n senderName:\n message.authorId === user?.externalId\n ? user?.name || user?.email\n : mentionCandidates.find((candidate) => candidate.id === message.authorId)?.label,\n }\n : {}),\n })),\n }\n}\n\n/**\n * The assistant dock bound to the connection: mount it once in the layout (`Shell.Root`'s `aside`)\n * and put `AssistantDockToggle` in the topbar. Its chat keeps its own open conversation (and\n * survives closing the dock).\n */\nexport function ConnectedAssistantDock(props: Omit<AssistantDockProps, 'chat'>) {\n return (\n <ConversationScope>\n <ScopedAssistantDock {...props} />\n </ConversationScope>\n )\n}\n\nfunction ScopedAssistantDock(props: Omit<AssistantDockProps, 'chat'>) {\n const chat = useConnectedChat()\n return <AssistantDock {...props} chat={chat} />\n}\n"]}
1
+ {"version":3,"sources":["../src/connection/ai.tsx"],"names":["useKitAiTask","useKitWorkspaceDocs","useKitSemanticSearch"],"mappings":";;;;;;;AAkCO,SAAS,kBAAA,GAAqB;AACnC,EAAA,MAAM,EAAE,eAAA,EAAgB,GAAI,aAAA,EAAc;AAC1C,EAAA,MAAM,OAAOA,SAAA,EAAa;AAC1B,EAAA,MAAM,SAAS,IAAA,CAAK,GAAA;AACpB,EAAA,MAAM,GAAA,GAAM,WAAA;AAAA,IACV,CAAC,QAAA,EAAkB,MAAA,EAAkB,IAAA,KACnC,OAAO,QAAA,EAAU,MAAA,EAAQ,EAAE,GAAG,IAAA,EAAM,KAAA,EAAO,IAAA,EAAM,KAAA,IAAS,iBAAiB,CAAA;AAAA,IAC7E,CAAC,QAAQ,eAAe;AAAA,GAC1B;AACA,EAAA,OAAO,EAAE,GAAG,IAAA,EAAM,GAAA,EAAI;AACxB;AAGO,SAAS,gBAAA,GAAmB;AACjC,EAAA,MAAM,EAAE,WAAA,EAAa,mBAAA,EAAoB,GAAI,aAAA,EAAc;AAC3D,EAAA,OAAOC,kBAAA,CAAoB,eAAe,mBAAmB,CAAA;AAC/D;AAGO,SAAS,iBAAA,GAAoB;AAClC,EAAA,MAAM,EAAE,eAAA,EAAgB,GAAI,aAAA,EAAc;AAC1C,EAAA,OAAOC,oBAAqB,EAAC,EAAG,EAAE,KAAA,EAAO,iBAAiB,CAAA;AAC5D;AAQO,SAAS,iBACd,OAAA,EAC8D;AAC9D,EAAA,MAAM,EAAE,aAAa,mBAAA,EAAqB,eAAA,EAAiB,MAAM,MAAA,EAAQ,mBAAA,KACvE,aAAA,EAAc;AAChB,EAAA,MAAM,OAAO,WAAA,IAAe,mBAAA;AAC5B,EAAA,MAAM,EAAE,IAAA,EAAM,OAAA,GAAU,EAAC,EAAE,GAAI,kBAAkB,IAAA,EAAM;AAAA,IACrD,OAAA,EAAS,MAAA,KAAW,eAAA,IAAmB,CAAC,CAAC,IAAA;AAAA,IACzC,WAAA,EAAa;AAAA,GACd,CAAA;AAED,EAAA,MAAM,iBAAA,GAAoB,sBAAA;AAAA,IACxB,MAAA,KAAW,eAAA,GAAkB,OAAA,GAAU,EAAC;AAAA,IACxC,IAAA,EAAM;AAAA,GACR;AACA,EAAA,MAAM,OAAO,eAAA,CAAgB;AAAA,IAC3B,GAAG,OAAA;AAAA,IACH,WAAA,EAAa,IAAA;AAAA,IACb,KAAA,EAAO,SAAS,KAAA,IAAS;AAAA,GAC1B,CAAA;AACD,EAAA,OAAO;AAAA,IACL,GAAG,IAAA;AAAA,IACH,iBAAA;AAAA,IACA,QAAA,EAAU,IAAA,CAAK,QAAA,CAAS,GAAA,CAAI,CAAC,OAAA,MAAa;AAAA,MACxC,GAAG,OAAA;AAAA,MACH,GAAI,QAAQ,QAAA,GACR;AAAA,QACE,WAAW,CAAC,CAAC,MAAM,UAAA,IAAc,OAAA,CAAQ,aAAa,IAAA,CAAK,UAAA;AAAA,QAC3D,YACE,OAAA,CAAQ,QAAA,KAAa,IAAA,EAAM,UAAA,GACvB,MAAM,IAAA,IAAQ,IAAA,EAAM,KAAA,GACpB,iBAAA,CAAkB,KAAK,CAAC,SAAA,KAAc,UAAU,EAAA,KAAO,OAAA,CAAQ,QAAQ,CAAA,EAAG;AAAA,UAElF;AAAC,KACP,CAAE;AAAA,GACJ;AACF;AAOO,SAAS,uBAAuB,KAAA,EAAyC;AAC9E,EAAA,2BACG,iBAAA,EAAA,EACC,QAAA,kBAAA,GAAA,CAAC,mBAAA,EAAA,EAAqB,GAAG,OAAO,CAAA,EAClC,CAAA;AAEJ;AAEA,SAAS,oBAAoB,KAAA,EAAyC;AACpE,EAAA,MAAM,OAAO,gBAAA,EAAiB;AAC9B,EAAA,uBAAO,GAAA,CAAC,aAAA,EAAA,EAAe,GAAG,KAAA,EAAO,IAAA,EAAY,CAAA;AAC/C","file":"chunk-L7IBURSP.js","sourcesContent":["/**\n * The connected agent hooks — thin adapters over the reusable AI kit in\n * `@arbidocs/react`. The streaming/accumulation/search plumbing lives once in\n * the SDK; these hooks only bind the *workspace source* (from the connection\n * context, falling back to the configured workspace) and inject the host's\n * default assistant *configuration* so call sites needn't know the config\n * ext_id. An explicit `opts.model` still wins.\n */\nimport { useCallback } from 'react'\nimport {\n useAiTask as useKitAiTask,\n useWorkspaceDocs as useKitWorkspaceDocs,\n useSemanticSearch as useKitSemanticSearch,\n useConversation,\n useWorkspaceUsers,\n buildMentionCandidates,\n ConversationScope,\n type ArbiConversation,\n type UseConversationOptions,\n type AiRunOptions,\n} from '@arbidocs/react'\nimport { useConnection } from './ConnectionProvider'\nimport { AssistantDock, type AssistantDockProps } from '../chat/AssistantDock'\nimport type { MentionCandidate } from '@arbidocs/react/shell'\n\nexport type { AiTaskStatus, AiRunOptions, SearchChunk, ArtifactEvent } from '@arbidocs/react'\n\n/** Client-side redlining, re-exported so a host app has one import surface. */\nexport { toRedlineMarkdown, redlineStats, textToArtifact } from '@arbidocs/react'\n\n/**\n * The kit's `useAiTask` with the host's default assistant configuration\n * injected, so call sites needn't know the config ext_id.\n */\nexport function useConnectedAiTask() {\n const { assistantConfig } = useConnection()\n const task = useKitAiTask()\n const kitRun = task.run\n const run = useCallback(\n (question: string, docIds: string[], opts?: AiRunOptions) =>\n kitRun(question, docIds, { ...opts, model: opts?.model ?? assistantConfig }),\n [kitRun, assistantConfig]\n )\n return { ...task, run }\n}\n\n/** Resolve the active workspace + its document ids (what we ground the agent on). */\nexport function useWorkspaceDocs() {\n const { workspaceId, fallbackWorkspaceId } = useConnection()\n return useKitWorkspaceDocs(workspaceId ?? fallbackWorkspaceId)\n}\n\n/** Search the active workspace's documents (all of them) and return the top matching passages. */\nexport function useSemanticSearch() {\n const { assistantConfig } = useConnection()\n return useKitSemanticSearch([], { model: assistantConfig })\n}\n\n/**\n * The chat engine for `ChatPage` bound to the connection: the active workspace and the host's\n * default assistant configuration are injected, so a host writes\n * `<ChatPage chat={useConnectedChat()} />`. It works on the open conversation of the session in\n * scope (wrap a second chat on the page in `ConversationScope`).\n */\nexport function useConnectedChat(\n options?: Omit<UseConversationOptions, 'workspaceId'>\n): ArbiConversation & { mentionCandidates: MentionCandidate[] } {\n const { workspaceId, fallbackWorkspaceId, assistantConfig, user, status, ensureWorkspaceOpen } =\n useConnection()\n const wsId = workspaceId ?? fallbackWorkspaceId\n const { data: members = [] } = useWorkspaceUsers(wsId, {\n enabled: status === 'authenticated' && !!wsId,\n beforeFetch: ensureWorkspaceOpen,\n })\n // The engine's own candidates: what the composer inserts is what a send routes on.\n const mentionCandidates = buildMentionCandidates(\n status === 'authenticated' ? members : [],\n user?.externalId\n )\n const chat = useConversation({\n ...options,\n workspaceId: wsId,\n model: options?.model ?? assistantConfig,\n })\n return {\n ...chat,\n mentionCandidates,\n messages: chat.messages.map((message) => ({\n ...message,\n ...(message.authorId\n ? {\n fromOther: !!user?.externalId && message.authorId !== user.externalId,\n senderName:\n message.authorId === user?.externalId\n ? user?.name || user?.email\n : mentionCandidates.find((candidate) => candidate.id === message.authorId)?.label,\n }\n : {}),\n })),\n }\n}\n\n/**\n * The assistant dock bound to the connection: mount it once in the layout (`Shell.Root`'s `aside`)\n * and put `AssistantDockToggle` in the topbar. Its chat keeps its own open conversation (and\n * survives closing the dock).\n */\nexport function ConnectedAssistantDock(props: Omit<AssistantDockProps, 'chat'>) {\n return (\n <ConversationScope>\n <ScopedAssistantDock {...props} />\n </ConversationScope>\n )\n}\n\nfunction ScopedAssistantDock(props: Omit<AssistantDockProps, 'chat'>) {\n const chat = useConnectedChat()\n return <AssistantDock {...props} chat={chat} />\n}\n"]}
@@ -5,9 +5,9 @@ var chunkIRY63R4L_cjs = require('./chunk-IRY63R4L.cjs');
5
5
  var chunkQZTNTP75_cjs = require('./chunk-QZTNTP75.cjs');
6
6
  var chunkNWNVWO6L_cjs = require('./chunk-NWNVWO6L.cjs');
7
7
  var chunkDVUZTGVL_cjs = require('./chunk-DVUZTGVL.cjs');
8
+ var chunk32HW2Q33_cjs = require('./chunk-32HW2Q33.cjs');
8
9
  var chunkCG757WKY_cjs = require('./chunk-CG757WKY.cjs');
9
10
  var chunkMEMWZ72Y_cjs = require('./chunk-MEMWZ72Y.cjs');
10
- var chunk32HW2Q33_cjs = require('./chunk-32HW2Q33.cjs');
11
11
  var chunkUFEXJIEY_cjs = require('./chunk-UFEXJIEY.cjs');
12
12
  var chunkULWRNGGE_cjs = require('./chunk-ULWRNGGE.cjs');
13
13
  var chunkMHVNT4J3_cjs = require('./chunk-MHVNT4J3.cjs');
@@ -5092,5 +5092,5 @@ exports.toActiveSessionViews = toActiveSessionViews;
5092
5092
  exports.toDeleteBlockerViews = toDeleteBlockerViews;
5093
5093
  exports.toLogoutSessionViews = toLogoutSessionViews;
5094
5094
  exports.toNotificationCategories = toNotificationCategories;
5095
- //# sourceMappingURL=chunk-FEVJA4BP.cjs.map
5096
- //# sourceMappingURL=chunk-FEVJA4BP.cjs.map
5095
+ //# sourceMappingURL=chunk-LPGFODB4.cjs.map
5096
+ //# sourceMappingURL=chunk-LPGFODB4.cjs.map