@arbidocs/blocks 0.3.184 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (598) hide show
  1. package/README.md +100 -0
  2. package/dist/agents/approvals/AuthorizeAgentParts.d.ts +79 -0
  3. package/dist/agents/approvals/ConsentPage.d.ts +76 -0
  4. package/dist/agents/approvals/ConsentParts.d.ts +37 -0
  5. package/dist/agents/approvals/index.d.ts +3 -0
  6. package/dist/agents/config/ConfigField.d.ts +43 -0
  7. package/dist/agents/config/ConfigForm.d.ts +35 -0
  8. package/dist/agents/config/TupleArrayField.d.ts +32 -0
  9. package/dist/agents/config/index.d.ts +4 -0
  10. package/dist/agents/config/schema-utils.d.ts +28 -0
  11. package/dist/agents/definitions/AgentCard.d.ts +63 -0
  12. package/dist/agents/definitions/AgentCreator.d.ts +118 -0
  13. package/dist/agents/definitions/AgentEditorParts.d.ts +63 -0
  14. package/dist/agents/definitions/AgentGallery.d.ts +29 -0
  15. package/dist/agents/definitions/index.d.ts +4 -0
  16. package/dist/agents/index.cjs +595 -0
  17. package/dist/agents/index.cjs.map +1 -0
  18. package/dist/agents/index.d.ts +7 -0
  19. package/dist/agents/index.js +14 -0
  20. package/dist/agents/index.js.map +1 -0
  21. package/dist/agents/runs/AgentBar.d.ts +103 -0
  22. package/dist/agents/runs/AgentSteps.d.ts +157 -0
  23. package/dist/agents/runs/SubagentRoster.d.ts +37 -0
  24. package/dist/agents/runs/index.d.ts +3 -0
  25. package/dist/agents/skills/SkillBrowserParts.d.ts +70 -0
  26. package/dist/agents/skills/SkillCard.d.ts +48 -0
  27. package/dist/agents/skills/SkillForms.d.ts +64 -0
  28. package/dist/agents/skills/SkillParts.d.ts +31 -0
  29. package/dist/agents/skills/SkillRow.d.ts +34 -0
  30. package/dist/agents/skills/index.d.ts +5 -0
  31. package/dist/agents/tasks/LiveRunsBanner.d.ts +26 -0
  32. package/dist/agents/tasks/RecurrenceBuilder.d.ts +36 -0
  33. package/dist/agents/tasks/TaskComposer.d.ts +108 -0
  34. package/dist/agents/tasks/TaskPlan.d.ts +78 -0
  35. package/dist/agents/tasks/TaskRowActions.d.ts +43 -0
  36. package/dist/agents/tasks/TaskRunsDialog.d.ts +45 -0
  37. package/dist/agents/tasks/TasksChrome.d.ts +36 -0
  38. package/dist/agents/tasks/UploadTaskItem.d.ts +39 -0
  39. package/dist/agents/tasks/UploadTaskList.d.ts +35 -0
  40. package/dist/agents/tasks/elapsed.d.ts +2 -0
  41. package/dist/agents/tasks/index.d.ts +13 -0
  42. package/dist/agents/tasks/rrule.d.ts +36 -0
  43. package/dist/agents/tasks/taskColumns.d.ts +68 -0
  44. package/dist/agents/tasks/taskLabels.d.ts +26 -0
  45. package/dist/agents/workflows/AgentSelect.d.ts +33 -0
  46. package/dist/agents/workflows/SchemaForm.d.ts +37 -0
  47. package/dist/agents/workflows/WorkflowConfigDialog.d.ts +73 -0
  48. package/dist/agents/workflows/WorkflowLauncher.d.ts +38 -0
  49. package/dist/agents/workflows/index.d.ts +6 -0
  50. package/dist/agents/workflows/types.d.ts +125 -0
  51. package/dist/agents/workflows/workflow.d.ts +62 -0
  52. package/dist/auth/AuthFooter.d.ts +56 -0
  53. package/dist/auth/AuthForm.d.ts +105 -0
  54. package/dist/auth/AuthLayout.d.ts +46 -0
  55. package/dist/auth/PasswordStrengthInput.d.ts +44 -0
  56. package/dist/auth/RecoveryDialogs.d.ts +90 -0
  57. package/dist/auth/SsoLoginButton.d.ts +19 -0
  58. package/dist/auth/index.cjs +123 -0
  59. package/dist/auth/index.cjs.map +1 -0
  60. package/dist/auth/index.d.ts +6 -0
  61. package/dist/auth/index.js +6 -0
  62. package/dist/auth/index.js.map +1 -0
  63. package/dist/builder/AgentsPanel.d.ts +9 -0
  64. package/dist/builder/ModuleManager.d.ts +6 -0
  65. package/dist/builder/VerticalBuilder.d.ts +32 -0
  66. package/dist/builder/agents/store.d.ts +21 -0
  67. package/dist/builder/export.d.ts +30 -0
  68. package/dist/builder/modules/registry.d.ts +11 -0
  69. package/dist/builder/modules/store.d.ts +29 -0
  70. package/dist/builder/modules/types.d.ts +29 -0
  71. package/dist/builder/types.d.ts +28 -0
  72. package/dist/chat/BranchControls.d.ts +33 -0
  73. package/dist/chat/Composer.d.ts +156 -0
  74. package/dist/chat/ContextChip.d.ts +19 -0
  75. package/dist/chat/ContextPanel.d.ts +108 -0
  76. package/dist/chat/ConversationEmpty.d.ts +53 -0
  77. package/dist/chat/ConversationLayout.d.ts +40 -0
  78. package/dist/chat/ConversationParts.d.ts +62 -0
  79. package/dist/chat/ConversationSearchView.d.ts +57 -0
  80. package/dist/chat/LabelPinRow.d.ts +30 -0
  81. package/dist/chat/Message.d.ts +189 -0
  82. package/dist/chat/MessageAlert.d.ts +25 -0
  83. package/dist/chat/MessageList.d.ts +102 -0
  84. package/dist/chat/ModelPicker.d.ts +103 -0
  85. package/dist/chat/PendingAnswerBar.d.ts +36 -0
  86. package/dist/chat/PinnedDocChip.d.ts +22 -0
  87. package/dist/chat/SlashMenu.d.ts +57 -0
  88. package/dist/chat/ThreadMap.d.ts +45 -0
  89. package/dist/chat/index.cjs +423 -0
  90. package/dist/chat/index.cjs.map +1 -0
  91. package/dist/chat/index.d.ts +21 -0
  92. package/dist/chat/index.js +6 -0
  93. package/dist/chat/index.js.map +1 -0
  94. package/dist/chat/test-id.d.ts +16 -0
  95. package/dist/chat/useStreamAnnouncement.d.ts +19 -0
  96. package/dist/chunk-223D4727.cjs +50 -0
  97. package/dist/chunk-223D4727.cjs.map +1 -0
  98. package/dist/chunk-4EZVCGRL.js +803 -0
  99. package/dist/chunk-4EZVCGRL.js.map +1 -0
  100. package/dist/chunk-54Q3RNJU.cjs +516 -0
  101. package/dist/chunk-54Q3RNJU.cjs.map +1 -0
  102. package/dist/chunk-5B4PXAKI.cjs +287 -0
  103. package/dist/chunk-5B4PXAKI.cjs.map +1 -0
  104. package/dist/chunk-5TYEJOXY.js +1762 -0
  105. package/dist/chunk-5TYEJOXY.js.map +1 -0
  106. package/dist/chunk-6ALISABK.cjs +677 -0
  107. package/dist/chunk-6ALISABK.cjs.map +1 -0
  108. package/dist/chunk-6HIPFEID.cjs +574 -0
  109. package/dist/chunk-6HIPFEID.cjs.map +1 -0
  110. package/dist/chunk-76JDDMSP.js +31 -0
  111. package/dist/chunk-76JDDMSP.js.map +1 -0
  112. package/dist/chunk-7F6CBP3Z.js +12 -0
  113. package/dist/chunk-7F6CBP3Z.js.map +1 -0
  114. package/dist/chunk-7G2LJMUG.cjs +45 -0
  115. package/dist/chunk-7G2LJMUG.cjs.map +1 -0
  116. package/dist/chunk-7G3JNSJB.cjs +1809 -0
  117. package/dist/chunk-7G3JNSJB.cjs.map +1 -0
  118. package/dist/chunk-A2YAC22G.js +93 -0
  119. package/dist/chunk-A2YAC22G.js.map +1 -0
  120. package/dist/chunk-ADOKTJHV.cjs +262 -0
  121. package/dist/chunk-ADOKTJHV.cjs.map +1 -0
  122. package/dist/chunk-AXIZ2MDV.js +751 -0
  123. package/dist/chunk-AXIZ2MDV.js.map +1 -0
  124. package/dist/chunk-AZQDNYH4.js +2865 -0
  125. package/dist/chunk-AZQDNYH4.js.map +1 -0
  126. package/dist/chunk-C54XEN5T.cjs +34 -0
  127. package/dist/chunk-C54XEN5T.cjs.map +1 -0
  128. package/dist/chunk-CQCC7LE7.js +210 -0
  129. package/dist/chunk-CQCC7LE7.js.map +1 -0
  130. package/dist/chunk-CRIKTUEU.cjs +47 -0
  131. package/dist/chunk-CRIKTUEU.cjs.map +1 -0
  132. package/dist/chunk-CTZ5745I.js +564 -0
  133. package/dist/chunk-CTZ5745I.js.map +1 -0
  134. package/dist/chunk-DPLRHEJZ.js +78 -0
  135. package/dist/chunk-DPLRHEJZ.js.map +1 -0
  136. package/dist/chunk-DVLEQURC.js +672 -0
  137. package/dist/chunk-DVLEQURC.js.map +1 -0
  138. package/dist/chunk-ELR74ME6.cjs +68 -0
  139. package/dist/chunk-ELR74ME6.cjs.map +1 -0
  140. package/dist/{chunk-DBAUZD7A.cjs → chunk-FZQJ2S6P.cjs} +244 -1123
  141. package/dist/chunk-FZQJ2S6P.cjs.map +1 -0
  142. package/dist/chunk-G3G7LZPM.cjs +205 -0
  143. package/dist/chunk-G3G7LZPM.cjs.map +1 -0
  144. package/dist/chunk-GDFWJ73C.cjs +2973 -0
  145. package/dist/chunk-GDFWJ73C.cjs.map +1 -0
  146. package/dist/chunk-ITGHMJOM.js +5528 -0
  147. package/dist/chunk-ITGHMJOM.js.map +1 -0
  148. package/dist/chunk-K4BGOPGG.js +79 -0
  149. package/dist/chunk-K4BGOPGG.js.map +1 -0
  150. package/dist/chunk-KUA3BCT2.cjs +272 -0
  151. package/dist/chunk-KUA3BCT2.cjs.map +1 -0
  152. package/dist/chunk-LGBAZD37.js +341 -0
  153. package/dist/chunk-LGBAZD37.js.map +1 -0
  154. package/dist/chunk-MHVNT4J3.cjs +15 -0
  155. package/dist/chunk-MHVNT4J3.cjs.map +1 -0
  156. package/dist/chunk-MMYCZRKT.cjs +168 -0
  157. package/dist/chunk-MMYCZRKT.cjs.map +1 -0
  158. package/dist/chunk-NBV56SGU.js +42 -0
  159. package/dist/chunk-NBV56SGU.js.map +1 -0
  160. package/dist/chunk-NPLYHR2E.js +13 -0
  161. package/dist/chunk-NPLYHR2E.js.map +1 -0
  162. package/dist/chunk-NUNKSZKU.js +203 -0
  163. package/dist/chunk-NUNKSZKU.js.map +1 -0
  164. package/dist/chunk-OB5F4577.cjs +40 -0
  165. package/dist/chunk-OB5F4577.cjs.map +1 -0
  166. package/dist/chunk-OUW6G4O2.cjs +96 -0
  167. package/dist/chunk-OUW6G4O2.cjs.map +1 -0
  168. package/dist/chunk-OVEQERPO.js +66 -0
  169. package/dist/chunk-OVEQERPO.js.map +1 -0
  170. package/dist/chunk-P6GHJSLR.js +34 -0
  171. package/dist/chunk-P6GHJSLR.js.map +1 -0
  172. package/dist/chunk-PCB2BPN3.cjs +41 -0
  173. package/dist/chunk-PCB2BPN3.cjs.map +1 -0
  174. package/dist/chunk-PPCATBOY.cjs +15 -0
  175. package/dist/chunk-PPCATBOY.cjs.map +1 -0
  176. package/dist/chunk-QN42OA5J.js +887 -0
  177. package/dist/chunk-QN42OA5J.js.map +1 -0
  178. package/dist/{chunk-FZ2S6VAZ.js → chunk-RBXZYNVB.js} +223 -1102
  179. package/dist/chunk-RBXZYNVB.js.map +1 -0
  180. package/dist/chunk-RC6VTY2H.js +47 -0
  181. package/dist/chunk-RC6VTY2H.js.map +1 -0
  182. package/dist/chunk-RFIBUWLF.cjs +232 -0
  183. package/dist/chunk-RFIBUWLF.cjs.map +1 -0
  184. package/dist/chunk-S5T7ZTX2.js +266 -0
  185. package/dist/chunk-S5T7ZTX2.js.map +1 -0
  186. package/dist/chunk-S7PSMMRG.js +38 -0
  187. package/dist/chunk-S7PSMMRG.js.map +1 -0
  188. package/dist/chunk-SCFYPAG6.cjs +18 -0
  189. package/dist/chunk-SCFYPAG6.cjs.map +1 -0
  190. package/dist/chunk-SYDHKKRZ.cjs +818 -0
  191. package/dist/chunk-SYDHKKRZ.cjs.map +1 -0
  192. package/dist/chunk-TX2ZICS7.js +139 -0
  193. package/dist/chunk-TX2ZICS7.js.map +1 -0
  194. package/dist/chunk-TYZUCAT7.js +787 -0
  195. package/dist/chunk-TYZUCAT7.js.map +1 -0
  196. package/dist/chunk-U2E3WT3J.js +45 -0
  197. package/dist/chunk-U2E3WT3J.js.map +1 -0
  198. package/dist/chunk-UBNVIIBT.js +284 -0
  199. package/dist/chunk-UBNVIIBT.js.map +1 -0
  200. package/dist/chunk-UFHMLHIR.cjs +66 -0
  201. package/dist/chunk-UFHMLHIR.cjs.map +1 -0
  202. package/dist/chunk-UJE32SST.js +39 -0
  203. package/dist/chunk-UJE32SST.js.map +1 -0
  204. package/dist/chunk-ULWRNGGE.cjs +146 -0
  205. package/dist/chunk-ULWRNGGE.cjs.map +1 -0
  206. package/dist/chunk-UTWX2X2A.js +165 -0
  207. package/dist/chunk-UTWX2X2A.js.map +1 -0
  208. package/dist/chunk-UWGIB3VQ.js +64 -0
  209. package/dist/chunk-UWGIB3VQ.js.map +1 -0
  210. package/dist/chunk-V4ISCZJ7.cjs +207 -0
  211. package/dist/chunk-V4ISCZJ7.cjs.map +1 -0
  212. package/dist/chunk-VFUWWH52.cjs +83 -0
  213. package/dist/chunk-VFUWWH52.cjs.map +1 -0
  214. package/dist/chunk-VILAPTCB.js +259 -0
  215. package/dist/chunk-VILAPTCB.js.map +1 -0
  216. package/dist/chunk-VLCY46K6.cjs +82 -0
  217. package/dist/chunk-VLCY46K6.cjs.map +1 -0
  218. package/dist/chunk-VPPX5XUF.cjs +813 -0
  219. package/dist/chunk-VPPX5XUF.cjs.map +1 -0
  220. package/dist/chunk-WJMEXTVD.cjs +122 -0
  221. package/dist/chunk-WJMEXTVD.cjs.map +1 -0
  222. package/dist/chunk-WTNMWEBC.js +504 -0
  223. package/dist/chunk-WTNMWEBC.js.map +1 -0
  224. package/dist/chunk-WW6EOVZA.js +112 -0
  225. package/dist/chunk-WW6EOVZA.js.map +1 -0
  226. package/dist/chunk-XNBAXRY7.cjs +5673 -0
  227. package/dist/chunk-XNBAXRY7.cjs.map +1 -0
  228. package/dist/chunk-XQ7PKKDY.cjs +787 -0
  229. package/dist/chunk-XQ7PKKDY.cjs.map +1 -0
  230. package/dist/chunk-XZIYRKLW.cjs +347 -0
  231. package/dist/chunk-XZIYRKLW.cjs.map +1 -0
  232. package/dist/chunk-YBXCZEWS.js +187 -0
  233. package/dist/chunk-YBXCZEWS.js.map +1 -0
  234. package/dist/chunk-YDHO4AVL.js +16 -0
  235. package/dist/chunk-YDHO4AVL.js.map +1 -0
  236. package/dist/chunk-ZORQ5M3W.cjs +934 -0
  237. package/dist/chunk-ZORQ5M3W.cjs.map +1 -0
  238. package/dist/chunk-ZW6FPIFC.cjs +36 -0
  239. package/dist/chunk-ZW6FPIFC.cjs.map +1 -0
  240. package/dist/citations/CitationEditor.d.ts +58 -0
  241. package/dist/citations/PassagePill.d.ts +49 -0
  242. package/dist/citations/QuietMarks.d.ts +81 -0
  243. package/dist/citations/index.cjs +47 -0
  244. package/dist/citations/index.cjs.map +1 -0
  245. package/dist/citations/index.d.ts +3 -0
  246. package/dist/citations/index.js +6 -0
  247. package/dist/citations/index.js.map +1 -0
  248. package/dist/collaboration/contacts/AddContactsParts.d.ts +46 -0
  249. package/dist/collaboration/contacts/index.d.ts +1 -0
  250. package/dist/collaboration/direct-messages/DirectMessages.d.ts +33 -0
  251. package/dist/collaboration/direct-messages/DmParts.d.ts +139 -0
  252. package/dist/collaboration/direct-messages/index.d.ts +2 -0
  253. package/dist/collaboration/index.cjs +141 -0
  254. package/dist/collaboration/index.cjs.map +1 -0
  255. package/dist/collaboration/index.d.ts +5 -0
  256. package/dist/collaboration/index.js +8 -0
  257. package/dist/collaboration/index.js.map +1 -0
  258. package/dist/collaboration/mail/MailFolderTree.d.ts +34 -0
  259. package/dist/collaboration/mail/index.d.ts +2 -0
  260. package/dist/collaboration/mail/mailFolders.d.ts +25 -0
  261. package/dist/collaboration/members/WorkspaceMembers.d.ts +74 -0
  262. package/dist/collaboration/members/index.d.ts +1 -0
  263. package/dist/collaboration/sharing/ShareControl.d.ts +38 -0
  264. package/dist/collaboration/sharing/index.d.ts +1 -0
  265. package/dist/components/Accordion.d.ts +12 -0
  266. package/dist/components/ActionLink.d.ts +18 -0
  267. package/dist/components/AskBar.d.ts +48 -0
  268. package/dist/components/AvatarBlock.d.ts +9 -0
  269. package/dist/components/Banner.d.ts +12 -0
  270. package/dist/components/BlockImage.d.ts +18 -0
  271. package/dist/components/CTABanner.d.ts +17 -0
  272. package/dist/components/Callout.d.ts +9 -0
  273. package/dist/components/Chart.d.ts +27 -0
  274. package/dist/components/CollectionDetail.d.ts +23 -0
  275. package/dist/components/Columns.d.ts +11 -0
  276. package/dist/components/ContactForm.d.ts +42 -0
  277. package/dist/components/Container.d.ts +11 -0
  278. package/dist/components/DataTable.d.ts +47 -0
  279. package/dist/components/DataTableBlock.d.ts +26 -0
  280. package/dist/components/EmptyState.d.ts +11 -0
  281. package/dist/components/EntityChip.d.ts +24 -0
  282. package/dist/components/EntityIdentityBar.d.ts +90 -0
  283. package/dist/components/EntityTooltip.d.ts +43 -0
  284. package/dist/components/FAQ.d.ts +14 -0
  285. package/dist/components/FeatureGrid.d.ts +18 -0
  286. package/dist/components/Footer.d.ts +25 -0
  287. package/dist/components/Gallery.d.ts +15 -0
  288. package/dist/components/Hero.d.ts +35 -0
  289. package/dist/components/ListBlock.d.ts +10 -0
  290. package/dist/components/LogoCloud.d.ts +12 -0
  291. package/dist/components/MediaText.d.ts +15 -0
  292. package/dist/components/MemberAvatarStack.d.ts +36 -0
  293. package/dist/components/MetricCard.d.ts +28 -0
  294. package/dist/components/Navbar.d.ts +39 -0
  295. package/dist/components/PageHeader.d.ts +15 -0
  296. package/dist/components/PricingTable.d.ts +19 -0
  297. package/dist/components/RichTextBlock.d.ts +10 -0
  298. package/dist/components/SectionHeading.d.ts +11 -0
  299. package/dist/components/Spacer.d.ts +7 -0
  300. package/dist/components/StatGroup.d.ts +12 -0
  301. package/dist/components/Steps.d.ts +12 -0
  302. package/dist/components/Tabs.d.ts +15 -0
  303. package/dist/components/TeamGrid.d.ts +18 -0
  304. package/dist/components/Testimonial.d.ts +9 -0
  305. package/dist/components/TestimonialGrid.d.ts +13 -0
  306. package/dist/components/ToneBadge.d.ts +18 -0
  307. package/dist/components/Toolbar.d.ts +11 -0
  308. package/dist/components/UsageMeter.d.ts +21 -0
  309. package/dist/components/VideoEmbed.d.ts +16 -0
  310. package/dist/components/assetImage.d.ts +16 -0
  311. package/dist/components/assetResolver.d.ts +57 -0
  312. package/dist/components/blockLink.d.ts +26 -0
  313. package/dist/components/tones.d.ts +14 -0
  314. package/dist/connect/index.cjs +65 -0
  315. package/dist/connect/index.cjs.map +1 -0
  316. package/dist/connect/index.d.ts +8 -0
  317. package/dist/connect/index.js +28 -0
  318. package/dist/connect/index.js.map +1 -0
  319. package/dist/connection/ArbiAppProvider.d.ts +16 -0
  320. package/dist/connection/ConnectionProvider.d.ts +50 -0
  321. package/dist/connection/ai.d.ts +99 -0
  322. package/dist/connection/types.d.ts +54 -0
  323. package/dist/connection/useImageGen.d.ts +22 -0
  324. package/dist/facts/FactComposer.d.ts +75 -0
  325. package/dist/facts/FactDateInput.d.ts +34 -0
  326. package/dist/facts/FactLabelsCell.d.ts +35 -0
  327. package/dist/facts/FactPassages.d.ts +52 -0
  328. package/dist/facts/FactRowActions.d.ts +18 -0
  329. package/dist/facts/FactSearchParts.d.ts +80 -0
  330. package/dist/facts/FactSourceGroup.d.ts +26 -0
  331. package/dist/facts/FactTimelineViews.d.ts +37 -0
  332. package/dist/facts/FactsBulkBar.d.ts +53 -0
  333. package/dist/facts/FactsEmptyState.d.ts +38 -0
  334. package/dist/facts/FactsFieldsButton.d.ts +21 -0
  335. package/dist/facts/FactsFilterInput.d.ts +46 -0
  336. package/dist/facts/FactsTable.d.ts +28 -0
  337. package/dist/facts/FactsToolbar.d.ts +53 -0
  338. package/dist/facts/FactsViewToggle.d.ts +36 -0
  339. package/dist/facts/fact-date.d.ts +22 -0
  340. package/dist/facts/fact-text.d.ts +14 -0
  341. package/dist/facts/factColumns.d.ts +88 -0
  342. package/dist/facts/index.cjs +2372 -0
  343. package/dist/facts/index.cjs.map +1 -0
  344. package/dist/facts/index.d.ts +34 -0
  345. package/dist/facts/index.js +2316 -0
  346. package/dist/facts/index.js.map +1 -0
  347. package/dist/facts/timezone.d.ts +4 -0
  348. package/dist/files/AiReviewDialog.d.ts +77 -0
  349. package/dist/files/DocStatusIcon.d.ts +12 -0
  350. package/dist/files/DocumentGrid.d.ts +27 -0
  351. package/dist/files/Explorer.d.ts +10 -0
  352. package/dist/files/ExplorerSurface.d.ts +34 -0
  353. package/dist/files/ExplorerTile.d.ts +142 -0
  354. package/dist/files/ExportParts.d.ts +114 -0
  355. package/dist/files/FieldParts.d.ts +64 -0
  356. package/dist/files/FilesPage.d.ts +20 -0
  357. package/dist/files/FilesToolbar.d.ts +59 -0
  358. package/dist/files/FolderPicker.d.ts +82 -0
  359. package/dist/files/GridView.d.ts +59 -0
  360. package/dist/files/HtmlViewerParts.d.ts +183 -0
  361. package/dist/files/MoveToFolderDialog.d.ts +32 -0
  362. package/dist/files/RedlineParts.d.ts +72 -0
  363. package/dist/files/SelectionBar.d.ts +65 -0
  364. package/dist/files/StatusPill.d.ts +23 -0
  365. package/dist/files/TagPassagePanel.d.ts +60 -0
  366. package/dist/files/UploadDropzone.d.ts +33 -0
  367. package/dist/files/UploadFooter.d.ts +59 -0
  368. package/dist/files/UploadParts.d.ts +78 -0
  369. package/dist/files/UploadSources.d.ts +77 -0
  370. package/dist/files/VersionTimeline.d.ts +60 -0
  371. package/dist/files/ViewToggle.d.ts +49 -0
  372. package/dist/files/ViewerChrome.d.ts +155 -0
  373. package/dist/files/ViewerLayout.d.ts +32 -0
  374. package/dist/files/ViewerParts.d.ts +62 -0
  375. package/dist/files/bulk/BulkActionsBar.d.ts +76 -0
  376. package/dist/files/bulk/FolderFilterButton.d.ts +35 -0
  377. package/dist/files/bulk/index.d.ts +2 -0
  378. package/dist/files/cells/DocumentNameCell.d.ts +31 -0
  379. package/dist/files/cells/FolderCell.d.ts +25 -0
  380. package/dist/files/cells/HoverIconCell.d.ts +21 -0
  381. package/dist/files/cells/LabelMultiSelect.d.ts +50 -0
  382. package/dist/files/cells/RelatedDocsCell.d.ts +22 -0
  383. package/dist/files/cells/TagColumnParts.d.ts +29 -0
  384. package/dist/files/cells/index.d.ts +6 -0
  385. package/dist/files/documentGridLayout.d.ts +31 -0
  386. package/dist/files/grid-test-ids.d.ts +18 -0
  387. package/dist/files/import/CalendarImportRow.d.ts +26 -0
  388. package/dist/files/import/ImportParts.d.ts +114 -0
  389. package/dist/files/import/TaskSection.d.ts +51 -0
  390. package/dist/files/import/UrlInputDialogView.d.ts +63 -0
  391. package/dist/files/import/VendorLogo.d.ts +15 -0
  392. package/dist/files/import/index.d.ts +5 -0
  393. package/dist/files/index.cjs +7589 -0
  394. package/dist/files/index.cjs.map +1 -0
  395. package/dist/files/index.d.ts +34 -0
  396. package/dist/files/index.js +7374 -0
  397. package/dist/files/index.js.map +1 -0
  398. package/dist/files/page/FilesAddMenu.d.ts +30 -0
  399. package/dist/files/page/FilesPageParts.d.ts +24 -0
  400. package/dist/files/page/FilesPageTitle.d.ts +24 -0
  401. package/dist/files/page/index.d.ts +3 -0
  402. package/dist/files/tags/BulkTagEditor.d.ts +136 -0
  403. package/dist/files/tags/DocTagPopover.d.ts +113 -0
  404. package/dist/files/tags/TagManager.d.ts +54 -0
  405. package/dist/files/tags/index.d.ts +3 -0
  406. package/dist/files/views/FieldsEditorParts.d.ts +151 -0
  407. package/dist/files/views/FieldsManagerParts.d.ts +17 -0
  408. package/dist/files/views/TagFormParts.d.ts +109 -0
  409. package/dist/files/views/ViewSelectorMenu.d.ts +66 -0
  410. package/dist/files/views/fieldsEditorModel.d.ts +43 -0
  411. package/dist/files/views/index.d.ts +5 -0
  412. package/dist/home/ActionMenuDialog.d.ts +26 -0
  413. package/dist/home/AddFilesFirst.d.ts +22 -0
  414. package/dist/home/CardHeaderBar.d.ts +40 -0
  415. package/dist/home/CollapsibleSection.d.ts +43 -0
  416. package/dist/home/CreateTile.d.ts +17 -0
  417. package/dist/home/DashboardParts.d.ts +32 -0
  418. package/dist/home/FactsStrip.d.ts +41 -0
  419. package/dist/home/FoldSection.d.ts +19 -0
  420. package/dist/home/GettingStartedStrip.d.ts +49 -0
  421. package/dist/home/Greeting.d.ts +18 -0
  422. package/dist/home/HomeLayout.d.ts +28 -0
  423. package/dist/home/KeyValueRow.d.ts +43 -0
  424. package/dist/home/ProjectBandParts.d.ts +70 -0
  425. package/dist/home/QuickActionDialogHeader.d.ts +21 -0
  426. package/dist/home/RecentList.d.ts +48 -0
  427. package/dist/home/ScopePicker.d.ts +65 -0
  428. package/dist/home/StartTiles.d.ts +33 -0
  429. package/dist/home/index.cjs +854 -0
  430. package/dist/home/index.cjs.map +1 -0
  431. package/dist/home/index.d.ts +37 -0
  432. package/dist/home/index.js +763 -0
  433. package/dist/home/index.js.map +1 -0
  434. package/dist/home/sections.d.ts +33 -0
  435. package/dist/index.cjs +1932 -5547
  436. package/dist/index.cjs.map +1 -1
  437. package/dist/index.d.ts +71 -1716
  438. package/dist/index.js +142 -5316
  439. package/dist/index.js.map +1 -1
  440. package/dist/lib/balanced-columns.d.ts +8 -0
  441. package/dist/lib/format.d.ts +37 -0
  442. package/dist/lib/observe-resize.d.ts +6 -0
  443. package/dist/lib/password-strength.d.ts +24 -0
  444. package/dist/lib/sidebar-mode.d.ts +46 -0
  445. package/dist/lib/testid.d.ts +7 -0
  446. package/dist/lib/use-drawer.d.ts +11 -0
  447. package/dist/lib/useControllableState.d.ts +5 -0
  448. package/dist/lib/useDismissibleCard.d.ts +15 -0
  449. package/dist/lib/useListKeyNav.d.ts +42 -0
  450. package/dist/lib/useLongPaste.d.ts +15 -0
  451. package/dist/lib/useRestoreFocus.d.ts +11 -0
  452. package/dist/lib/useScopeSelection.d.ts +34 -0
  453. package/dist/nav/types.d.ts +19 -0
  454. package/dist/provider/BlocksProvider.d.ts +20 -0
  455. package/dist/provider/TooltipScope.d.ts +9 -0
  456. package/dist/record/index.cjs +2 -4
  457. package/dist/record/index.cjs.map +1 -1
  458. package/dist/record/index.d.ts +12 -16
  459. package/dist/record/index.js +2 -4
  460. package/dist/record/index.js.map +1 -1
  461. package/dist/retrieval/HighlightText.d.ts +21 -0
  462. package/dist/retrieval/SearchEmptyState.d.ts +39 -0
  463. package/dist/retrieval/SearchGroupHeader.d.ts +21 -0
  464. package/dist/retrieval/SearchHit.d.ts +36 -0
  465. package/dist/retrieval/SearchPage.d.ts +187 -0
  466. package/dist/retrieval/SearchPagination.d.ts +21 -0
  467. package/dist/retrieval/highlight.d.ts +21 -0
  468. package/dist/retrieval/index.cjs +160 -0
  469. package/dist/retrieval/index.cjs.map +1 -0
  470. package/dist/retrieval/index.d.ts +7 -0
  471. package/dist/retrieval/index.js +7 -0
  472. package/dist/retrieval/index.js.map +1 -0
  473. package/dist/settings/AccountDialogs.d.ts +89 -0
  474. package/dist/settings/AvatarPicker.d.ts +25 -0
  475. package/dist/settings/Billing.d.ts +113 -0
  476. package/dist/settings/ConfigSwitcherBar.d.ts +46 -0
  477. package/dist/settings/ConfirmDialog.d.ts +28 -0
  478. package/dist/settings/ConnectionCard.d.ts +58 -0
  479. package/dist/settings/ConversationSettingsParts.d.ts +53 -0
  480. package/dist/settings/DocumentPicker.d.ts +57 -0
  481. package/dist/settings/EmailWorkspaceDialogView.d.ts +60 -0
  482. package/dist/settings/ErrorDialog.d.ts +36 -0
  483. package/dist/settings/FloatingPanel.d.ts +32 -0
  484. package/dist/settings/JsonTree.d.ts +24 -0
  485. package/dist/settings/LogoutDialog.d.ts +51 -0
  486. package/dist/settings/ModalBreadcrumbHeader.d.ts +32 -0
  487. package/dist/settings/ModalScaffold.d.ts +60 -0
  488. package/dist/settings/MultiSelect.d.ts +111 -0
  489. package/dist/settings/NotificationCategoryList.d.ts +26 -0
  490. package/dist/settings/PanelFrame.d.ts +47 -0
  491. package/dist/settings/PasswordChangeDialog.d.ts +64 -0
  492. package/dist/settings/PlanBadge.d.ts +14 -0
  493. package/dist/settings/PlanCard.d.ts +97 -0
  494. package/dist/settings/PremiumModelsFrame.d.ts +17 -0
  495. package/dist/settings/ProfileCard.d.ts +67 -0
  496. package/dist/settings/Projects.d.ts +108 -0
  497. package/dist/settings/QuotaMeter.d.ts +31 -0
  498. package/dist/settings/ReferralCredit.d.ts +46 -0
  499. package/dist/settings/SegmentedControl.d.ts +20 -0
  500. package/dist/settings/ServerConnectionControls.d.ts +31 -0
  501. package/dist/settings/SettingsPanel.d.ts +61 -0
  502. package/dist/settings/SettingsSwitchRow.d.ts +21 -0
  503. package/dist/settings/SubscriptionParts.d.ts +215 -0
  504. package/dist/settings/SupportPanel.d.ts +32 -0
  505. package/dist/settings/SyncDialogParts.d.ts +155 -0
  506. package/dist/settings/ThreadPreviewDialog.d.ts +18 -0
  507. package/dist/settings/TipsEditorDialog.d.ts +94 -0
  508. package/dist/settings/TriStateFilterMenu.d.ts +66 -0
  509. package/dist/settings/Usage.d.ts +102 -0
  510. package/dist/settings/WelcomeDialog.d.ts +79 -0
  511. package/dist/settings/index.cjs +5131 -0
  512. package/dist/settings/index.cjs.map +1 -0
  513. package/dist/settings/index.d.ts +38 -0
  514. package/dist/settings/index.js +4922 -0
  515. package/dist/settings/index.js.map +1 -0
  516. package/dist/shell/ActionCluster.d.ts +28 -0
  517. package/dist/shell/AskField.d.ts +71 -0
  518. package/dist/shell/InfoBar.d.ts +20 -0
  519. package/dist/shell/MobileBars.d.ts +47 -0
  520. package/dist/shell/OfflinePill.d.ts +28 -0
  521. package/dist/shell/RemoteControlPill.d.ts +23 -0
  522. package/dist/shell/Shell.d.ts +123 -0
  523. package/dist/shell/Sidebar.d.ts +104 -0
  524. package/dist/shell/SidebarBadgeRow.d.ts +29 -0
  525. package/dist/shell/SidebarRowAction.d.ts +24 -0
  526. package/dist/shell/StatusRow.d.ts +20 -0
  527. package/dist/shell/TabHeader.d.ts +70 -0
  528. package/dist/shell/TipCard.d.ts +46 -0
  529. package/dist/shell/ToolButton.d.ts +12 -0
  530. package/dist/shell/Workspace.d.ts +90 -0
  531. package/dist/shell/index.cjs +187 -0
  532. package/dist/shell/index.cjs.map +1 -0
  533. package/dist/shell/index.d.ts +20 -0
  534. package/dist/shell/index.js +10 -0
  535. package/dist/shell/index.js.map +1 -0
  536. package/dist/shell/sidebar-context.d.ts +19 -0
  537. package/dist/shell/types.d.ts +48 -0
  538. package/dist/site/index.cjs +113 -90
  539. package/dist/site/index.d.ts +59 -4
  540. package/dist/site/index.js +8 -1
  541. package/dist/studio/PageRenderer.d.ts +35 -0
  542. package/dist/studio/Section.d.ts +24 -0
  543. package/dist/studio/StudioEditor.d.ts +32 -0
  544. package/dist/studio/aiFields.d.ts +17 -0
  545. package/dist/studio/blockKit.d.ts +36 -0
  546. package/dist/studio/blocksConfig.d.ts +42 -0
  547. package/dist/studio/imageFields.d.ts +14 -0
  548. package/dist/studio/index.cjs +3353 -0
  549. package/dist/studio/index.cjs.map +1 -0
  550. package/dist/studio/index.d.ts +32 -0
  551. package/dist/studio/index.js +3297 -0
  552. package/dist/studio/index.js.map +1 -0
  553. package/dist/studio/liveData.d.ts +4 -0
  554. package/dist/studio/liveWidgetRuntime.d.ts +41 -0
  555. package/dist/studio/persistence.d.ts +38 -0
  556. package/dist/studio/publish.d.ts +39 -0
  557. package/dist/studio/siteBlocks.d.ts +14 -0
  558. package/dist/studio/types.d.ts +46 -0
  559. package/dist/studio/websiteBlocks.d.ts +4 -0
  560. package/dist/studio/widgets.d.ts +20 -0
  561. package/dist/theme/ThemeEditor.d.ts +16 -0
  562. package/dist/theme/fontPairings.d.ts +48 -0
  563. package/dist/theme/store.d.ts +53 -0
  564. package/dist/theme/tokens.d.ts +105 -0
  565. package/dist/timeline/Timeline.d.ts +27 -0
  566. package/dist/timeline/TimelineCalendar.d.ts +54 -0
  567. package/dist/timeline/TimelineGantt.d.ts +71 -0
  568. package/dist/timeline/TimelineZoomControl.d.ts +17 -0
  569. package/dist/timeline/index.cjs +50 -0
  570. package/dist/timeline/index.cjs.map +1 -0
  571. package/dist/timeline/index.d.ts +13 -0
  572. package/dist/timeline/index.js +5 -0
  573. package/dist/timeline/index.js.map +1 -0
  574. package/dist/timeline/span.d.ts +29 -0
  575. package/dist/timeline/types.d.ts +30 -0
  576. package/dist/workspaces/WorkspaceBadges.d.ts +27 -0
  577. package/dist/workspaces/WorkspaceCard.d.ts +142 -0
  578. package/dist/workspaces/WorkspaceFormParts.d.ts +98 -0
  579. package/dist/workspaces/WorkspaceGroup.d.ts +31 -0
  580. package/dist/workspaces/WorkspaceSettingsParts.d.ts +70 -0
  581. package/dist/workspaces/index.cjs +690 -0
  582. package/dist/workspaces/index.cjs.map +1 -0
  583. package/dist/workspaces/index.d.ts +9 -0
  584. package/dist/workspaces/index.js +661 -0
  585. package/dist/workspaces/index.js.map +1 -0
  586. package/package.json +164 -9
  587. package/src/blocks.css +348 -0
  588. package/src/components/grid.css +60 -107
  589. package/src/source.css +20 -0
  590. package/src/studio/studio.css +3 -3
  591. package/src/tokens.css +226 -0
  592. package/dist/chunk-DBAUZD7A.cjs.map +0 -1
  593. package/dist/chunk-FZ2S6VAZ.js.map +0 -1
  594. package/dist/index-DduoEosi.d.cts +0 -846
  595. package/dist/index-DduoEosi.d.ts +0 -846
  596. package/dist/index.d.cts +0 -1717
  597. package/dist/record/index.d.cts +0 -96
  598. package/dist/site/index.d.cts +0 -4
@@ -0,0 +1,4 @@
1
+ /** True only where live widgets may resolve backend data (an authenticated app tree). */
2
+ export declare const LiveDataContext: import("react").Context<boolean>;
3
+ /** Whether live widgets may resolve backend data here (false in editor/public). */
4
+ export declare function useLiveDataActive(): boolean;
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Live-widget runtime: everything in the seam that RENDERS — the provider that
3
+ * turns the live-data gate on for an authenticated app tree, the placeholder
4
+ * shown everywhere else, and the widget block bodies themselves (each gates on
5
+ * the live-data flag and renders live data or a placeholder).
6
+ *
7
+ * Components only — kept apart from the context/hook ({@link ./liveData}) and the
8
+ * config factory ({@link ./widgets}) so every file in the seam is fast-refresh
9
+ * clean (a file exports either components or non-components, never both, and a
10
+ * non-component-export file defines no components).
11
+ *
12
+ * The widgets read the SHARED `@arbidocs/react` hooks and the package connection
13
+ * (for the active workspace), so they are host-agnostic.
14
+ */
15
+ import type { LucideIcon } from 'lucide-react';
16
+ import type { ReactNode } from 'react';
17
+ /** Marks the subtree as an authenticated app tree, so live widgets resolve data. */
18
+ export declare function LiveDataProvider({ children }: {
19
+ children: ReactNode;
20
+ }): import("react").JSX.Element;
21
+ /**
22
+ * What a live widget shows when it can't (or shouldn't) resolve data: a labelled,
23
+ * dashed card. Used in the Studio canvas and the public renderer so authoring a
24
+ * dashboard is WYSIWYG-ish without leaking live back-office data.
25
+ */
26
+ export declare function WidgetPlaceholder({ label, icon: Icon, testId, }: {
27
+ label: string;
28
+ icon?: LucideIcon;
29
+ testId?: string;
30
+ }): import("react").JSX.Element;
31
+ export declare function AgentActivityBlock({ title, limit, testId, }: {
32
+ title: string;
33
+ limit: number;
34
+ testId: string;
35
+ }): import("react").JSX.Element;
36
+ export declare function LiveMetricBlock({ label, source, accent, testId, }: {
37
+ label: string;
38
+ source: string;
39
+ accent: string;
40
+ testId: string;
41
+ }): import("react").JSX.Element;
@@ -0,0 +1,38 @@
1
+ import type { StudioPersistence } from './types';
2
+ /** Thrown instead of silently degrading to plaintext local storage. */
3
+ export declare class StudioPersistenceError extends Error {
4
+ constructor(message: string, options?: {
5
+ cause?: unknown;
6
+ });
7
+ }
8
+ /**
9
+ * - `off` (default): never touch localStorage; ARBI failures reject.
10
+ * - `fallback`: use localStorage only when ARBI is unavailable or fails.
11
+ * - `always`: additionally mirror every successful ARBI save locally.
12
+ */
13
+ export type StudioLocalStorageMode = 'off' | 'fallback' | 'always';
14
+ export interface StudioPersistenceConfig {
15
+ /** The public marketing workspace that backs the site builder. */
16
+ workspaceId: string;
17
+ /** Folder inside the workspace where studio artefacts live. */
18
+ folder?: string;
19
+ /** Prefix for the localStorage keys (e.g. "studio-"); only used when local storage is on. */
20
+ storagePrefix: string;
21
+ /** Opt-in plaintext local storage (default "off"). */
22
+ localStorageMode?: StudioLocalStorageMode;
23
+ /**
24
+ * Isolation scope inserted into every local key, evaluated per call so it follows the
25
+ * current user and workspace (e.g. `${userId}:${workspaceId}`). Required when
26
+ * `localStorageMode` is not "off"; without a scope local access rejects.
27
+ */
28
+ storageScope?: () => string | null | undefined;
29
+ /** localStorage key for the theme mirror (default `${storagePrefix}theme`). */
30
+ themeStorageKey?: string;
31
+ /** File name for the persisted theme document (default "theme.json"). */
32
+ themeFileName?: string;
33
+ /** File name for a page's persisted document (default `${slug}.json`). */
34
+ pageFileName?: (slug: string) => string;
35
+ /** File name for a page's published document (default `${slug}.published.json`). */
36
+ publishedFileName?: (slug: string) => string;
37
+ }
38
+ export declare function createStudioPersistence(cfg: StudioPersistenceConfig): StudioPersistence;
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Publish-time asset materialization.
3
+ *
4
+ * While authoring, an image is stored as a workspace **asset ref**
5
+ * (`asset:<docId>`) — resolvable only inside the authenticated Studio. The
6
+ * public marketing renderer has no auth token, so a published page must be
7
+ * **self-contained**: every asset ref is replaced with a directly-renderable
8
+ * source before the page is saved for the public.
9
+ *
10
+ * The default {@link createArbiMaterializer} downloads each asset once and
11
+ * inlines it as a `data:` URI — the bytes travel *inside* the published JSON,
12
+ * so nothing is fetched, served or auth-gated at render time (no backend). A
13
+ * consumer that prefers a CDN/static host can pass a `publishAsset` hook that
14
+ * uploads the bytes and returns a URL instead; that is purely a payload-size
15
+ * optimization and keeps this package host- and backend-agnostic.
16
+ */
17
+ import type { Data } from '@measured/puck';
18
+ import type { Arbi } from './types';
19
+ /** Resolve a workspace document ext_id to a public-renderable src, or null. */
20
+ export type AssetMaterializer = (docId: string) => Promise<string | null>;
21
+ export interface MaterializeOptions {
22
+ /**
23
+ * Optional sink: given a doc id + its bytes, store them somewhere public and
24
+ * return the URL. When omitted, bytes are inlined as a `data:` URI (no backend).
25
+ */
26
+ publishAsset?: (docId: string, blob: Blob) => Promise<string>;
27
+ }
28
+ /**
29
+ * A materializer backed by the authenticated Arbi client: download the asset,
30
+ * then either hand it to `publishAsset` or inline it as a data URI. Any failure
31
+ * resolves to `null` so a single broken asset never fails the whole publish.
32
+ */
33
+ export declare function createArbiMaterializer(arbi: Arbi, opts?: MaterializeOptions): AssetMaterializer;
34
+ /**
35
+ * Return a copy of `data` with every `asset:<docId>` ref replaced by its
36
+ * materialized source. Each distinct ref is resolved exactly once; a ref that
37
+ * fails to resolve is left untouched (it simply won't paint for the public).
38
+ */
39
+ export declare function materializePageData(data: Data, materialize: AssetMaterializer): Promise<Data>;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * The extended site-building block set — the richer vocabulary a builder needs to
3
+ * assemble arbitrary sites beyond the marketing basics: pricing, tabs, accordion,
4
+ * gallery, video, contact form, banner, split media, team, steps and a
5
+ * multi-testimonial grid.
6
+ *
7
+ * Same contract as {@link createWebsiteBlocks}: serializable-only props, semantic
8
+ * tokens (themes with the host), a stable render-time `data-testid`, and sensible
9
+ * defaults so each block looks right the moment it is dropped. Copy props route
10
+ * through the shared {@link BlockKit} AI-or-plain fields.
11
+ */
12
+ import type { ComponentConfig } from '@measured/puck';
13
+ import type { BlockKit } from './blockKit';
14
+ export declare function createSiteBlocks(kit: BlockKit): Record<string, ComponentConfig>;
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Shared studio types — the persistence contract, page metadata and the AI
3
+ * prompt-builder signature the host supplies. Firm-agnostic: a host app wires
4
+ * these to its own marketing workspace and voice.
5
+ */
6
+ import type { useArbi } from '@arbidocs/react';
7
+ /** The Arbi instance type, borrowed from the hook so we don't import internals. */
8
+ export type Arbi = ReturnType<typeof useArbi>;
9
+ /** A page the studio can author (slug → friendly label). */
10
+ export interface StudioPageMeta {
11
+ slug: string;
12
+ label: string;
13
+ }
14
+ /** Where a save/load ultimately resolved. */
15
+ export type PersistVia = 'arbi' | 'local';
16
+ export interface LoadResult<T> {
17
+ data: T | null;
18
+ via: PersistVia;
19
+ }
20
+ /** The save/load surface the studio + renderer consume. */
21
+ export interface StudioPersistence {
22
+ /** Persist the authoring layout for a slug (image values stay `asset:` refs). */
23
+ savePage: (arbi: Arbi | null, live: boolean, slug: string, data: unknown) => Promise<PersistVia>;
24
+ loadPage: <T>(arbi: Arbi | null, live: boolean, slug: string) => Promise<LoadResult<T>>;
25
+ /**
26
+ * Persist the **published** layout for a slug — a self-contained copy whose
27
+ * asset refs have been materialized to `data:` URIs, so the unauthenticated
28
+ * public renderer can paint it. The public renderer reads this, not savePage's.
29
+ */
30
+ savePublished: (arbi: Arbi | null, live: boolean, slug: string, data: unknown) => Promise<PersistVia>;
31
+ loadPublished: <T>(arbi: Arbi | null, live: boolean, slug: string) => Promise<LoadResult<T>>;
32
+ /**
33
+ * Delete a slug's stored authoring + published pages (backend and localStorage
34
+ * mirror). Lets a page be reset to empty; also the deterministic-reset hook a
35
+ * test/demo needs, since backend content otherwise wins over a fresh seed.
36
+ */
37
+ deletePage: (arbi: Arbi | null, live: boolean, slug: string) => Promise<void>;
38
+ saveTheme: (arbi: Arbi | null, live: boolean, theme: unknown) => Promise<PersistVia>;
39
+ loadTheme: <T>(arbi: Arbi | null, live: boolean) => Promise<LoadResult<T>>;
40
+ }
41
+ /** Build an AI instruction for a field, given its kind, label and current text. */
42
+ export type BuildPrompt = (a: {
43
+ kind: string;
44
+ label: string;
45
+ current: string;
46
+ }) => string;
@@ -0,0 +1,4 @@
1
+ import type { ComponentConfig } from '@measured/puck';
2
+ import type { BlockKit } from './blockKit';
3
+ /** Build every website block, closing over the shared field {@link BlockKit}. */
4
+ export declare function createWebsiteBlocks(kit: BlockKit): Record<string, ComponentConfig>;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Live-widget block factory for @arbidocs/blocks.
3
+ *
4
+ * Mirrors the other `create*Blocks` factories: it only WIRES pre-built block
5
+ * components (from {@link ./liveWidgetRuntime}) into Puck `ComponentConfig`s, so
6
+ * it exports a single function and defines no components of its own — keeping it
7
+ * fast-refresh clean. The blocks gate on the live-data flag ({@link ./liveData}),
8
+ * rendering real ARBI data inside an authenticated app tree and a placeholder in
9
+ * the editor/public. They read the SHARED `@arbidocs/react` hooks, so any client
10
+ * with an ARBI workspace gets them; a client supplies only *composition* via
11
+ * `createArbiBlocksConfig({ liveWidgets: true })`.
12
+ */
13
+ import type { ComponentConfig } from '@measured/puck';
14
+ import type { BlockKit } from './blockKit';
15
+ /**
16
+ * Build the live-widget block set, closing over the shared {@link BlockKit} for
17
+ * stable testids. Registered under a "Widgets" category when a consumer opts in
18
+ * with `createArbiBlocksConfig({ liveWidgets: true })`.
19
+ */
20
+ export declare function createLiveWidgets(kit: BlockKit): Record<string, ComponentConfig>;
@@ -0,0 +1,16 @@
1
+ import type { ThemeBundle } from './store';
2
+ export interface ThemeEditorProps {
3
+ /** The host's theme store bundle (from createThemeStore). */
4
+ bundle: ThemeBundle;
5
+ variant?: 'panel' | 'drawer';
6
+ /** Firm identity shown in the panel's live-preview header. */
7
+ preview?: {
8
+ title: string;
9
+ subtitle?: string;
10
+ };
11
+ /** Optional persistence side-channel (e.g. save theme to ARBI); returns a "via" label. */
12
+ onSave?: () => Promise<string | void>;
13
+ /** Stable testid namespace, e.g. "builder-theme" | "studio-theme". */
14
+ testIdPrefix?: string;
15
+ }
16
+ export declare function ThemeEditor({ bundle, variant, preview, onSave, testIdPrefix, }: ThemeEditorProps): import("react").JSX.Element;
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Curated typography pairings — the choice a user actually makes.
3
+ *
4
+ * A pairing is a display face + a body face that are known to sit well together,
5
+ * so picking typography means picking a *look*, not authoring two CSS font
6
+ * stacks. The raw stacks remain editable for power users.
7
+ *
8
+ * DATA ONLY. This module names families; it never loads them, so the kit takes no
9
+ * font dependency. Web fonts are self-hosted per app (`@fontsource-variable/*`
10
+ * imported from the app's entry or stylesheet); `fontPackages()` reports exactly
11
+ * which packages a set of pairings needs. A pairing whose family an app has not
12
+ * imported does not error — it falls back down its own stack — so an app that
13
+ * offers a pairing must also ship its fonts.
14
+ */
15
+ export interface FontPairing {
16
+ id: string;
17
+ /** Shown in the picker, e.g. "Newsreader / Inter". */
18
+ label: string;
19
+ /** One line on the character of the pairing. */
20
+ description: string;
21
+ /** Font stack for headings (`--font-display`). */
22
+ display: string;
23
+ /** Font stack for body copy (`--font-sans`). */
24
+ sans: string;
25
+ /**
26
+ * The npm packages an app must install + import to actually render this
27
+ * pairing, e.g. `['@fontsource-variable/inter']`. Empty when the pairing uses
28
+ * only system faces.
29
+ */
30
+ packages: string[];
31
+ }
32
+ /**
33
+ * The shipped catalog. Every entry uses variable fonts (one file per family)
34
+ * rather than per-weight static files.
35
+ */
36
+ export declare const FONT_PAIRINGS: FontPairing[];
37
+ /** Look a pairing up by id. Returns undefined for an unknown id. */
38
+ export declare function getFontPairing(id: string): FontPairing | undefined;
39
+ /**
40
+ * The pairing whose stacks match `fonts`, or undefined when the stacks have been
41
+ * hand-edited away from every preset. Lets a picker show "Custom" honestly.
42
+ */
43
+ export declare function matchFontPairing(fonts: {
44
+ display: string;
45
+ sans: string;
46
+ }): FontPairing | undefined;
47
+ /** Every npm package needed to render the given pairings (deduped). */
48
+ export declare function fontPackages(pairings?: FontPairing[]): string[];
@@ -0,0 +1,53 @@
1
+ /**
2
+ * The shared theme store factory. A host calls {@link createThemeStore} once
3
+ * with its token catalog, default values and presets; the returned bundle (a
4
+ * zustand hook + metadata) is the single source of truth consumed by every
5
+ * theme surface (the back-office builder panel and the studio drawer), so the
6
+ * token model, presets and apply logic live in exactly one place.
7
+ */
8
+ import { type UseBoundStore, type StoreApi } from 'zustand';
9
+ import { type ColorToken, type ThemeEmitMode, type ThemeFonts, type ThemePreset, type ThemeTokens } from './tokens';
10
+ export interface ThemeState extends ThemeTokens {
11
+ activePresetId: string | null;
12
+ setColor: (key: string, value: string) => void;
13
+ setFont: (which: keyof ThemeFonts, value: string) => void;
14
+ /** Apply a curated pairing, setting the display and body faces together. */
15
+ setFontPairing: (pairingId: string) => void;
16
+ setRadius: (radius: number) => void;
17
+ applyPreset: (presetId: string) => void;
18
+ reset: () => void;
19
+ /** Snapshot of the editable tokens (for export / live apply). */
20
+ snapshot: () => ThemeTokens;
21
+ }
22
+ export interface ThemeStoreConfig {
23
+ /** The editable token catalog (keys + labels + groups). */
24
+ tokens: ColorToken[];
25
+ /** Group id → heading, for the grouped panel layout. */
26
+ groupLabels: Record<string, string>;
27
+ /** Shipped defaults (the host's brand values). */
28
+ defaultTheme: ThemeTokens;
29
+ /** Starting points the user can apply then fine-tune. */
30
+ presets: ThemePreset[];
31
+ /** localStorage key for persistence (namespaced per host). */
32
+ storageKey: string;
33
+ /**
34
+ * How edits are written onto the document. Defaults to `'flat'` (inline
35
+ * `--color-*`). `'cssVars'` emits raw HSL-triplet vars into an injected
36
+ * `<style>` so an app's own `hsl(var(--x))` indirection + `.dark` variant
37
+ * survive. See {@link applyThemeVars}.
38
+ */
39
+ mode?: ThemeEmitMode;
40
+ /**
41
+ * `cssVars` mode only: the dark-variant colour values keyed by token key,
42
+ * emitted under `:root.dark`. Required (per editable token) for any host with a
43
+ * dark mode, otherwise a light-token override leaks into dark.
44
+ */
45
+ darkColors?: Record<string, string>;
46
+ }
47
+ export interface ThemeBundle extends ThemeStoreConfig {
48
+ useStore: UseBoundStore<StoreApi<ThemeState>>;
49
+ }
50
+ /** Build a brand-specific theme store bundle. */
51
+ export declare function createThemeStore(config: ThemeStoreConfig): ThemeBundle;
52
+ /** Apply a bundle's current store to the live document, honouring its emit mode. */
53
+ export declare function applyStoredTheme(bundle: ThemeBundle): void;
@@ -0,0 +1,105 @@
1
+ /**
2
+ * The theme-token model. Firm-agnostic: the token *catalog*, default values and
3
+ * presets are supplied by the consuming app (via {@link createThemeStore}); this
4
+ * module owns the shared types and the logic for writing tokens onto the live
5
+ * document.
6
+ *
7
+ * There are two emit models, selected per-app by {@link ThemeEmitMode}:
8
+ *
9
+ * - `'flat'` (default): each colour key is written as an inline `--color-<key>`
10
+ * custom property on `<html>`, plus `--font-*` / `--radius`. Inline styles
11
+ * override the compiled `@theme` defaults, so an edit previews live across the
12
+ * whole app (and the @arbidocs AI kit) and reverts cleanly. Apps whose CSS sets
13
+ * `--color-*` HEX directly rely on this.
14
+ *
15
+ * - `'cssVars'`: each colour key is written as a raw
16
+ * HSL-triplet custom property (`--<key>: <h s l>`) into an injected
17
+ * `<style id="arbi-theme-vars">` appended to `<head>`. The monolith's source
18
+ * of truth is HSL triplets wrapped as `hsl(var(--x))`, with a real `.dark`
19
+ * variant; writing resolved hex inline would pin the colour and defeat both
20
+ * the indirection and the dark-class swap. The injected sheet is *unlayered*,
21
+ * so it wins over the monolith's `@layer base` `colors.css` at equal
22
+ * specificity, and a `:root { light } / :root.dark { dark }` structure keeps
23
+ * the dark cascade alive.
24
+ */
25
+ export interface ColorToken {
26
+ /** Key without the `--color-` prefix, e.g. "primary" → `--color-primary`. */
27
+ key: string;
28
+ label: string;
29
+ /** Grouping id for the panel layout (e.g. "shadcn" | "brand" | "ai"). */
30
+ group: string;
31
+ }
32
+ export interface ThemeFonts {
33
+ display: string;
34
+ sans: string;
35
+ }
36
+ export interface ThemeTokens {
37
+ /** Colour values keyed by token key (hex). */
38
+ colors: Record<string, string>;
39
+ fonts: ThemeFonts;
40
+ /** Base radius in rem. */
41
+ radius: number;
42
+ }
43
+ export interface ThemePreset {
44
+ id: string;
45
+ label: string;
46
+ tokens: ThemeTokens;
47
+ }
48
+ /** How a theme is written onto the document. See the module doc for the models. */
49
+ export type ThemeEmitMode = 'flat' | 'cssVars';
50
+ export interface ApplyThemeOptions {
51
+ /** Emit model. Defaults to `'flat'`. */
52
+ mode?: ThemeEmitMode;
53
+ /**
54
+ * `cssVars` mode only: dark-variant colour values keyed by token key. Emitted
55
+ * under `:root.dark`. When omitted, only `:root` is emitted — note that an
56
+ * overridden light token then also applies in dark (the injected `:root` is
57
+ * unlayered and beats the app's own `.dark` rules), so a host with a dark mode
58
+ * MUST supply this for every editable token to keep dark mode intact.
59
+ */
60
+ dark?: Record<string, string>;
61
+ /** `flat` mode only: target element. Defaults to `document.documentElement`. */
62
+ root?: HTMLElement;
63
+ }
64
+ /** Id of the injected `<style>` that carries the `cssVars`-mode custom properties. */
65
+ export declare const THEME_STYLE_ID = "arbi-theme-vars";
66
+ /**
67
+ * Convert a colour to the monolith's `H S% L%` HSL-triplet format.
68
+ *
69
+ * Handles `#rgb` / `#rrggbb`, `rgb()` / `rgba()`, and passes an existing triplet
70
+ * through untouched (so a host can seed exact `colors.css` triplets for a
71
+ * byte-identical no-op). Values it cannot parse — notably `oklch(...)`, which the
72
+ * status tokens use — are returned unchanged so they remain usable as a raw
73
+ * custom-property value; converting those cleanly is out of scope.
74
+ */
75
+ export declare function toHslTriplet(color: string): string;
76
+ /**
77
+ * Write a theme onto the live document.
78
+ *
79
+ * In `flat` mode (default) writes inline `--color-<key>` / `--font-*` / `--radius`
80
+ * on `document.documentElement` (or a supplied root). In `cssVars` mode writes
81
+ * raw HSL-triplet vars into an injected `<style#arbi-theme-vars>` (see the module
82
+ * doc). The legacy `applyThemeVars(theme, rootElement)` call form still works.
83
+ */
84
+ export declare function applyThemeVars(theme: ThemeTokens, optionsOrRoot?: ApplyThemeOptions | HTMLElement): void;
85
+ /**
86
+ * Set ONLY the typography vars, as inline styles on the root element.
87
+ *
88
+ * Typography is often chosen independently of colour — an app may let a reader
89
+ * pick a typeface while its palette is owned elsewhere. Writing the two vars
90
+ * inline (rather than through `applyThemeVars`) keeps this orthogonal in two
91
+ * ways: it touches no colour or radius token, and an inline style outranks any
92
+ * selector, so a font choice survives a `cssVars`-mode theme that emits its own
93
+ * `:root` block (the ARBI studio's theme editor does exactly that).
94
+ */
95
+ export declare function applyFontVars(fonts: ThemeFonts, root?: HTMLElement): void;
96
+ /** Undo {@link applyFontVars}, reverting to the stylesheet's own font tokens. */
97
+ export declare function clearFontVars(root?: HTMLElement): void;
98
+ /**
99
+ * Remove a theme's overrides, reverting to the stylesheet defaults.
100
+ *
101
+ * In `flat` mode removes the inline overrides for the theme's keys. In `cssVars`
102
+ * mode removes the injected `<style#arbi-theme-vars>` in full (restoring the
103
+ * app's own `colors.css` exactly).
104
+ */
105
+ export declare function clearThemeVars(theme: ThemeTokens, optionsOrRoot?: ApplyThemeOptions | HTMLElement): void;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * A timeline you can drop anywhere: the same items, seen as a calendar or as a
3
+ * Gantt, with a toggle between them.
4
+ *
5
+ * The two views answer different questions — a calendar says "what falls in this
6
+ * week", a Gantt says "how long did this run and what overlapped it" — and both
7
+ * read the identical {@link TimelineItem} array, so a host renders one component
8
+ * and lets the reader choose. Fix `view` to pin it to one.
9
+ */
10
+ import { type ReactNode } from 'react';
11
+ import type { TimelineItem } from './types';
12
+ export type TimelineViewMode = 'calendar' | 'gantt';
13
+ export interface TimelineProps<T extends TimelineItem = TimelineItem> {
14
+ items: T[];
15
+ /** Pin the view. Omit to show the toggle and let the reader switch. */
16
+ view?: TimelineViewMode;
17
+ /** Which view the toggle starts on. */
18
+ defaultView?: TimelineViewMode;
19
+ onSelect?: (item: T) => void;
20
+ /** Extra Gantt detail-panel content — sources, links, actions. */
21
+ renderDetail?: (item: T) => ReactNode;
22
+ /** Shown when nothing carries a date. */
23
+ emptyMessage?: string;
24
+ className?: string;
25
+ testId?: string;
26
+ }
27
+ export declare function Timeline<T extends TimelineItem = TimelineItem>({ items, view, defaultView, onSelect, renderDetail, emptyMessage, className, testId, }: TimelineProps<T>): import("react").JSX.Element;
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Continuous calendar over dated items.
3
+ *
4
+ * An item is a span, so one dated "October 2019" genuinely occupies every day of
5
+ * October. Repeating its label in all 31 cells is unreadable, so a multi-day item
6
+ * renders as ONE continuous bar spanning its days, broken only where a week ends
7
+ * — the label appears once, on the segment where the item starts.
8
+ *
9
+ * Segments are packed into lanes so overlapping items stack rather than collide,
10
+ * which is what makes a dense month legible.
11
+ *
12
+ * It scrolls as one unbroken run of weeks from the earliest item to the latest,
13
+ * rather than paging month by month: a chronology is read by moving along it, and
14
+ * paging hides exactly the thing you want to see — what sits on either side of a
15
+ * boundary. Month names mark where they change, and weeks stay whole, so days
16
+ * belonging to the neighbouring month simply appear dimmed.
17
+ *
18
+ * Everything reads the UTC components and never localises: a day-precision item
19
+ * stored at 00:00Z would otherwise land on the previous day for viewers west of
20
+ * UTC.
21
+ */
22
+ import { type ReactNode } from 'react';
23
+ import type { TimelineItem } from './types';
24
+ export interface TimelineCalendarProps<T extends TimelineItem = TimelineItem> {
25
+ items: T[];
26
+ /** Clicking a bar. The caller's own object comes back, not a copy. */
27
+ onSelect?: (item: T) => void;
28
+ /** Bars shown per week before the remainder collapses to "+n more". */
29
+ maxLanes?: number;
30
+ /** Ids to treat as the current selection — positions the event navigator's
31
+ * ‹ n / N › on the matching event (e.g. the one open in the app's editor). */
32
+ selectedIds?: readonly string[];
33
+ /**
34
+ * Where the ‹ n / N › event navigator renders. Omit it for the built-in
35
+ * inline placement. Pass a host element (e.g. a slot in the app's own
36
+ * toolbar) to portal the navigator there instead — or `null` while that slot
37
+ * isn't mounted yet, which renders no navigator at all rather than falling
38
+ * back inline (avoids a flash of the inline one on first paint).
39
+ */
40
+ navigatorContainer?: HTMLElement | null;
41
+ /**
42
+ * Denominator shown by the navigator (`n / N`). Defaults to the number of
43
+ * dated items it can step through; a host may pass its full (filtered) item
44
+ * count instead so the figure matches the list it shows elsewhere, even when
45
+ * some of those items carry no date and so never appear here.
46
+ */
47
+ navigatorTotal?: number;
48
+ /** Shown when nothing in `items` carries a date. */
49
+ emptyState?: ReactNode;
50
+ className?: string;
51
+ /** Prefix for every `data-testid` this view emits. */
52
+ testId?: string;
53
+ }
54
+ export declare function TimelineCalendar<T extends TimelineItem = TimelineItem>({ items, onSelect, selectedIds, maxLanes, navigatorContainer, navigatorTotal, emptyState, className, testId, }: TimelineCalendarProps<T>): import("react").JSX.Element;
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Gantt view over dated items — one swimlane per item on a shared date axis.
3
+ *
4
+ * The axis is what makes it readable: bars are positioned by real elapsed time,
5
+ * so a span's WIDTH is its duration and an imprecise date shows AS imprecision —
6
+ * an item dated "2019" is a year-wide bar, an emailed one a hairline tick.
7
+ *
8
+ * Rows are sorted chronologically here rather than left to the caller: this is a
9
+ * chronology, and a caller handing over rows in creation order (newest first, as
10
+ * a notes list does) would render the timeline backwards.
11
+ *
12
+ * Selecting a bar opens the detail panel. The panel owns the parts every caller
13
+ * has — label, span, description — and hands the rest to `renderDetail`, which is
14
+ * where an app adds its own context (source documents, an owner, a link).
15
+ */
16
+ import { type ReactNode } from 'react';
17
+ import type { TimelineItem } from './types';
18
+ export interface TimelineGanttProps<T extends TimelineItem = TimelineItem> {
19
+ items: T[];
20
+ /** The selected item, or null when the panel closes. */
21
+ onSelect?: (item: T | null) => void;
22
+ /**
23
+ * Ids to render as selected — e.g. rows a user checked in another view.
24
+ * Their bar and label are highlighted so the selection carries across views;
25
+ * this does not open the detail panel (that stays driven by clicks here).
26
+ */
27
+ selectedIds?: readonly string[];
28
+ /** Extra detail-panel content for the selected item — sources, links, actions. */
29
+ renderDetail?: (item: T) => ReactNode;
30
+ /** Width of the row-label gutter, in pixels. */
31
+ labelWidth?: number;
32
+ /**
33
+ * When provided, the label gutter becomes user-resizable: a drag handle
34
+ * appears on its right edge and this fires with the new width (px) as the
35
+ * user drags. The caller owns the value (so it can persist it) and feeds it
36
+ * back via `labelWidth`.
37
+ */
38
+ onLabelWidthChange?: (width: number) => void;
39
+ /** Clamp for the resizable gutter, in pixels. */
40
+ minLabelWidth?: number;
41
+ maxLabelWidth?: number;
42
+ /**
43
+ * Controlled date-axis zoom (1 = fit). Provide BOTH `zoom` and `onZoomChange`
44
+ * to drive it from outside — e.g. a button in the app's own header — which also
45
+ * suppresses the chart's built-in corner control. Omit them to use the internal
46
+ * state and the corner control.
47
+ */
48
+ zoom?: number;
49
+ onZoomChange?: (zoom: number) => void;
50
+ /**
51
+ * Where the ‹ n / N › event navigator renders. Omit it for the built-in
52
+ * inline placement. Pass a host element (e.g. a slot in the app's own
53
+ * toolbar) to portal the navigator there instead — or `null` while that slot
54
+ * isn't mounted yet, which renders no navigator at all rather than falling
55
+ * back inline (avoids a flash of the inline one on first paint).
56
+ */
57
+ navigatorContainer?: HTMLElement | null;
58
+ /**
59
+ * Denominator shown by the navigator (`n / N`). Defaults to the number of
60
+ * dated items it can step through; a host may pass its full (filtered) item
61
+ * count instead so the figure matches the list it shows elsewhere, even when
62
+ * some of those items carry no date and so never appear here.
63
+ */
64
+ navigatorTotal?: number;
65
+ /** Shown when nothing in `items` carries a usable date. */
66
+ emptyMessage?: string;
67
+ className?: string;
68
+ /** Prefix for every `data-testid` this view emits. */
69
+ testId?: string;
70
+ }
71
+ export declare function TimelineGantt<T extends TimelineItem = TimelineItem>({ items, onSelect, selectedIds, renderDetail, labelWidth, onLabelWidthChange, minLabelWidth, maxLabelWidth, zoom: zoomProp, onZoomChange, navigatorContainer, navigatorTotal, emptyMessage, className, testId, }: TimelineGanttProps<T>): import("react").JSX.Element;
@@ -0,0 +1,17 @@
1
+ /** Zoom bounds shared by the control and the chart, so a hoisted control stays in
2
+ * step with the plot scaling. STEP is the slider granularity. */
3
+ export declare const TIMELINE_ZOOM: {
4
+ readonly MIN: 1;
5
+ readonly MAX: 10;
6
+ readonly STEP: 0.25;
7
+ };
8
+ export interface TimelineZoomControlProps {
9
+ /** Current zoom factor (1 = fit). */
10
+ zoom: number;
11
+ /** Fired with the next clamped zoom factor. */
12
+ onZoomChange: (zoom: number) => void;
13
+ className?: string;
14
+ /** Prefix for the `data-testid`s this control emits. */
15
+ testId?: string;
16
+ }
17
+ export declare function TimelineZoomControl({ zoom, onZoomChange, className, testId, }: TimelineZoomControlProps): import("react").JSX.Element;