@kortix/ui 0.14.8 → 0.14.10

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 (567) hide show
  1. package/README.md +2 -2
  2. package/dist/_vendor/kortix-shared.js +116 -3
  3. package/dist/_vendor/shared/app-config.d.ts +175 -0
  4. package/dist/_vendor/shared/artifact-comments.d.ts +235 -0
  5. package/dist/_vendor/shared/channel-descriptors.d.ts +96 -0
  6. package/dist/_vendor/shared/channel-message.d.ts +45 -5
  7. package/dist/_vendor/shared/index.d.ts +2 -0
  8. package/dist/_vendor/shared/space-slug.d.ts +37 -0
  9. package/dist/access/access/access-detail-shell.js +1 -1
  10. package/dist/access/access/principal-picker.d.ts +11 -0
  11. package/dist/access/access/principal-picker.js +3 -2
  12. package/dist/apps/app-preview-pool.d.ts +7 -2
  13. package/dist/apps/app-preview-pool.js +30 -7
  14. package/dist/apps/app-shared.d.ts +22 -15
  15. package/dist/apps/app-shared.js +37 -19
  16. package/dist/apps/index.d.ts +2 -2
  17. package/dist/apps/index.js +2 -2
  18. package/dist/artifacts/artifact-frame.d.ts +16 -0
  19. package/dist/artifacts/artifact-frame.js +55 -0
  20. package/dist/artifacts/artifact-session.d.ts +18 -0
  21. package/dist/artifacts/artifact-session.js +101 -0
  22. package/dist/artifacts/frame-policy.d.ts +30 -0
  23. package/dist/artifacts/frame-policy.js +61 -0
  24. package/dist/artifacts/index.d.ts +3 -0
  25. package/dist/artifacts/index.js +5 -0
  26. package/dist/browser/sandbox-browser-chrome.d.ts +4 -1
  27. package/dist/browser/sandbox-browser-chrome.js +2 -2
  28. package/dist/customize/agents/agent-grant-pages.d.ts +5 -1
  29. package/dist/customize/agents/agent-grant-pages.js +30 -4
  30. package/dist/customize/agents/agent-page.js +3 -1
  31. package/dist/customize/agents/agent-policy-sets.d.ts +43 -0
  32. package/dist/customize/agents/agent-policy-sets.js +72 -0
  33. package/dist/customize/agents/agent-triggers-section.js +2 -1
  34. package/dist/customize/connectors/add-mcp/add-mcp-server-dialog.d.ts +6 -1
  35. package/dist/customize/connectors/add-mcp/add-mcp-server-dialog.js +10 -4
  36. package/dist/customize/connectors/agent-access.d.ts +35 -0
  37. package/dist/customize/connectors/agent-access.js +77 -0
  38. package/dist/customize/connectors/catalog/browse-sections.d.ts +2 -29
  39. package/dist/customize/connectors/catalog/browse-sections.js +7 -74
  40. package/dist/customize/connectors/catalog/catalog-entry.d.ts +18 -37
  41. package/dist/customize/connectors/catalog/catalog-entry.js +28 -40
  42. package/dist/customize/connectors/catalog/connector-browse.d.ts +3 -32
  43. package/dist/customize/connectors/catalog/connector-browse.js +19 -50
  44. package/dist/customize/connectors/catalog/use-catalog.d.ts +20 -59
  45. package/dist/customize/connectors/catalog/use-catalog.js +48 -175
  46. package/dist/customize/connectors/connector-identity.d.ts +9 -11
  47. package/dist/customize/connectors/connector-identity.js +13 -42
  48. package/dist/customize/connectors/connector-moves-banner.d.ts +2 -1
  49. package/dist/customize/connectors/connector-moves-banner.js +4 -6
  50. package/dist/customize/connectors/connector-routes.d.ts +21 -9
  51. package/dist/customize/connectors/connector-routes.js +29 -20
  52. package/dist/customize/connectors/connectors-page.js +53 -82
  53. package/dist/customize/connectors/detail/app-page.js +226 -98
  54. package/dist/customize/connectors/detail/computer-app-page.d.ts +16 -0
  55. package/dist/customize/connectors/detail/computer-app-page.js +39 -0
  56. package/dist/customize/connectors/detail/connector-accounts.js +3 -1
  57. package/dist/customize/connectors/detail/connector-advanced-tools.d.ts +4 -1
  58. package/dist/customize/connectors/detail/connector-advanced-tools.js +2 -2
  59. package/dist/customize/connectors/detail/connector-agents.d.ts +14 -0
  60. package/dist/customize/connectors/detail/connector-agents.js +69 -0
  61. package/dist/customize/connectors/detail/connector-detail-tabs.js +2 -1
  62. package/dist/customize/connectors/detail/connector-move-row.d.ts +8 -5
  63. package/dist/customize/connectors/detail/connector-move-row.js +23 -14
  64. package/dist/customize/connectors/detail/connector-page.d.ts +4 -1
  65. package/dist/customize/connectors/detail/connector-page.js +14 -10
  66. package/dist/customize/connectors/detail/connector-policy-sets.d.ts +28 -0
  67. package/dist/customize/connectors/detail/connector-policy-sets.js +203 -0
  68. package/dist/customize/connectors/detail/connector-settings.d.ts +4 -1
  69. package/dist/customize/connectors/detail/connector-settings.js +7 -3
  70. package/dist/customize/connectors/detail/connector-status.d.ts +19 -6
  71. package/dist/customize/connectors/detail/connector-status.js +34 -10
  72. package/dist/customize/connectors/detail/connector-tabs.d.ts +4 -1
  73. package/dist/customize/connectors/detail/connector-tabs.js +8 -2
  74. package/dist/customize/connectors/detail/connector-tools.d.ts +3 -3
  75. package/dist/customize/connectors/detail/connector-tools.js +105 -48
  76. package/dist/customize/connectors/detail/email-inboxes.d.ts +43 -0
  77. package/dist/customize/connectors/detail/email-inboxes.js +184 -0
  78. package/dist/customize/connectors/detail/provider-info.d.ts +1 -1
  79. package/dist/customize/connectors/detail/provider-info.js +2 -2
  80. package/dist/customize/connectors/detail/status-badge.d.ts +1 -1
  81. package/dist/customize/connectors/detail/status-badge.js +4 -5
  82. package/dist/customize/connectors/detail/use-connector-detail.d.ts +6 -0
  83. package/dist/customize/connectors/detail/use-connector-detail.js +14 -4
  84. package/dist/customize/connectors/install/install-dialog.d.ts +23 -0
  85. package/dist/customize/connectors/install/install-dialog.js +40 -0
  86. package/dist/customize/connectors/install/install.d.ts +13 -2
  87. package/dist/customize/connectors/install/install.js +9 -4
  88. package/dist/customize/connectors/install/use-install.d.ts +19 -2
  89. package/dist/customize/connectors/install/use-install.js +65 -37
  90. package/dist/customize/connectors/install/way-kind.d.ts +5 -0
  91. package/dist/customize/connectors/install/way-kind.js +16 -0
  92. package/dist/customize/connectors/provider-label.d.ts +2 -1
  93. package/dist/customize/connectors/provider-label.js +13 -3
  94. package/dist/customize/connectors/tools/pattern-rule-draft.d.ts +4 -0
  95. package/dist/customize/connectors/tools/pattern-rule-draft.js +12 -3
  96. package/dist/customize/connectors/tools/policy-sets.d.ts +27 -0
  97. package/dist/customize/connectors/tools/policy-sets.js +41 -0
  98. package/dist/customize/connectors/tools/tool-groups.d.ts +32 -9
  99. package/dist/customize/connectors/tools/tool-groups.js +78 -16
  100. package/dist/customize/connectors/tools/tool-policy-control.d.ts +11 -10
  101. package/dist/customize/connectors/tools/tool-policy-control.js +15 -16
  102. package/dist/customize/connectors/tools/tool-policy-labels.d.ts +6 -5
  103. package/dist/customize/connectors/tools/tool-policy-labels.js +17 -16
  104. package/dist/customize/connectors/tools/tool-policy.d.ts +50 -4
  105. package/dist/customize/connectors/tools/tool-policy.js +74 -8
  106. package/dist/customize/connectors/use-agent-access.d.ts +85 -0
  107. package/dist/customize/connectors/use-agent-access.js +72 -0
  108. package/dist/customize/migrate-to-v2/index.d.ts +1 -2
  109. package/dist/customize/migrate-to-v2/index.js +1 -2
  110. package/dist/customize/migrate-to-v2/migration-prompt.d.ts +12 -25
  111. package/dist/customize/migrate-to-v2/migration-prompt.js +34 -236
  112. package/dist/customize/migrate-to-v2/upgrade-defs.d.ts +1 -1
  113. package/dist/customize/migrate-to-v2/upgrade-defs.js +7 -6
  114. package/dist/customize/migrate-to-v2/upgrade-view.js +7 -7
  115. package/dist/customize/migrate-to-v2/use-run-upgrade.d.ts +3 -3
  116. package/dist/customize/providers/provider-accordion.js +17 -2
  117. package/dist/customize/sections/component/channel-access-panel.d.ts +16 -0
  118. package/dist/customize/sections/component/channel-access-panel.js +146 -0
  119. package/dist/customize/sections/component/channel-connect-hero.d.ts +3 -2
  120. package/dist/customize/sections/component/channel-connect-hero.js +3 -2
  121. package/dist/customize/sections/component/channel-hero-frame.d.ts +31 -0
  122. package/dist/customize/sections/component/channel-hero-frame.js +40 -0
  123. package/dist/customize/sections/component/channel-mocks.d.ts +6 -0
  124. package/dist/customize/sections/component/channel-mocks.js +46 -0
  125. package/dist/customize/sections/component/channel-row.d.ts +13 -3
  126. package/dist/customize/sections/component/channel-row.js +10 -4
  127. package/dist/customize/sections/component/email-connect-form.d.ts +27 -0
  128. package/dist/customize/sections/component/email-connect-form.js +183 -0
  129. package/dist/customize/sections/component/slack-connect-card.d.ts +7 -0
  130. package/dist/customize/sections/component/slack-connect-card.js +2 -3
  131. package/dist/customize/sections/component/teams-connect-card.d.ts +7 -0
  132. package/dist/customize/sections/component/teams-connect-card.js +2 -3
  133. package/dist/customize/sections/component/telegram-channel-row.js +21 -28
  134. package/dist/customize/sections/connectors-view.d.ts +1 -15
  135. package/dist/customize/sections/connectors-view.js +81 -314
  136. package/dist/customize/sections/view/agent-editor-catalog.js +10 -0
  137. package/dist/customize/sections/view/channels-view.d.ts +6 -1
  138. package/dist/customize/sections/view/channels-view.js +72 -81
  139. package/dist/customize/sections/view/gateway/gateway-overview.js +10 -2
  140. package/dist/customize/settings/rail.js +9 -0
  141. package/dist/customize/settings/settings-tabs.d.ts +1 -1
  142. package/dist/customize/settings/settings-tabs.js +1 -0
  143. package/dist/customize/settings/tabs/chrome-connections-tab.d.ts +6 -0
  144. package/dist/customize/settings/tabs/chrome-connections-tab.js +99 -0
  145. package/dist/customize/settings/tabs/experimental-tab.js +35 -16
  146. package/dist/customize/shared/catalog/catalog-empty-state.d.ts +4 -15
  147. package/dist/customize/shared/catalog/catalog-empty-state.js +9 -7
  148. package/dist/customize/shared/channels-switch-dialog.d.ts +18 -0
  149. package/dist/customize/shared/channels-switch-dialog.js +30 -0
  150. package/dist/customize/shared/feature-gate-screen.js +27 -9
  151. package/dist/customize/shared/use-customize-prefetch.d.ts +2 -3
  152. package/dist/customize/shared/use-customize-prefetch.js +9 -27
  153. package/dist/customize/triggers/schedule/post-to-field.d.ts +18 -0
  154. package/dist/customize/triggers/schedule/post-to-field.js +49 -0
  155. package/dist/customize/triggers/schedule/schedule-copy.d.ts +10 -6
  156. package/dist/customize/triggers/schedule/schedule-copy.js +42 -11
  157. package/dist/customize/triggers/schedule/schedule-detail-sheet.js +2 -1
  158. package/dist/customize/triggers/schedule/trigger-composer-logic.d.ts +22 -0
  159. package/dist/customize/triggers/schedule/trigger-composer-logic.js +25 -0
  160. package/dist/customize/triggers/schedule/trigger-composer.d.ts +5 -0
  161. package/dist/customize/triggers/schedule/trigger-composer.js +23 -14
  162. package/dist/customize/triggers/schedule/trigger-edit-logic.js +3 -0
  163. package/dist/customize/triggers/schedule/trigger-filter.js +1 -1
  164. package/dist/customize/triggers/schedule/trigger-runs-logic.d.ts +2 -2
  165. package/dist/customize/triggers/schedule/trigger-runs-panel.js +1 -0
  166. package/dist/customize/triggers/schedule/trigger-toast.js +2 -1
  167. package/dist/customize/triggers/schedule-view.js +5 -2
  168. package/dist/files/index.d.ts +1 -0
  169. package/dist/files/index.js +1 -0
  170. package/dist/files/project/change-request-recovery.d.ts +1 -26
  171. package/dist/files/project/change-request-recovery.js +1 -59
  172. package/dist/files/project/components/change-request-detail-dialog.js +13 -3
  173. package/dist/files/project/components/drive-explorer.js +15 -15
  174. package/dist/files/project/components/drive-toolbar.d.ts +16 -2
  175. package/dist/files/project/components/drive-toolbar.js +14 -5
  176. package/dist/files/project/hooks/use-change-request-recovery.js +3 -19
  177. package/dist/files/project/hooks/use-change-requests.d.ts +1 -0
  178. package/dist/files/project/hooks/use-change-requests.js +11 -2
  179. package/dist/files/renderers/image-frame.d.ts +48 -0
  180. package/dist/files/renderers/image-frame.js +59 -0
  181. package/dist/files/renderers/image-renderer.d.ts +11 -1
  182. package/dist/files/renderers/image-renderer.js +13 -3
  183. package/dist/files/renderers/pdf/pdf-clipboard.d.ts +2 -0
  184. package/dist/files/renderers/pdf/pdf-clipboard.js +21 -0
  185. package/dist/files/renderers/pdf/pdf-viewer.js +4 -2
  186. package/dist/files/renderers/show-content-renderer.d.ts +9 -1
  187. package/dist/files/renderers/show-content-renderer.js +56 -14
  188. package/dist/files/runtime/file-source.js +2 -0
  189. package/dist/files/runtime/hooks/use-binary-blob.d.ts +10 -1
  190. package/dist/files/runtime/hooks/use-binary-blob.js +10 -4
  191. package/dist/files/runtime/hooks/use-shared-image.d.ts +41 -0
  192. package/dist/files/runtime/hooks/use-shared-image.js +177 -0
  193. package/dist/files/viewer/file-content-renderer.d.ts +22 -1
  194. package/dist/files/viewer/file-content-renderer.js +50 -7
  195. package/dist/files/viewer/file-header.d.ts +7 -3
  196. package/dist/files/viewer/file-header.js +20 -11
  197. package/dist/files/viewer/file-preview-modal.d.ts +1 -1
  198. package/dist/files/viewer/file-preview-modal.js +10 -22
  199. package/dist/files/viewer/file-source.d.ts +13 -0
  200. package/dist/files/viewer/use-file-content-state.d.ts +2 -0
  201. package/dist/files/viewer/use-file-content-state.js +28 -10
  202. package/dist/files/viewer/viewer-actions.d.ts +3 -1
  203. package/dist/files/viewer/viewer-actions.js +2 -2
  204. package/dist/hooks/use-media-query.d.ts +1 -0
  205. package/dist/hooks/use-mobile.d.ts +5 -0
  206. package/dist/hooks/use-mobile.js +8 -0
  207. package/dist/i18n/en.d.ts +1062 -85
  208. package/dist/i18n/en.js +1078 -101
  209. package/dist/i18n/ui-catalog/localize-ui-catalog.js +4 -0
  210. package/dist/i18n/ui-catalog/remaining-ui-translation-keys.generated.js +15 -3
  211. package/dist/index.d.ts +2 -2
  212. package/dist/index.js +2 -2
  213. package/dist/internal/account-hub/account-settings-sidebar.js +1 -1
  214. package/dist/internal/account-hub/hub-sheet.d.ts +9 -1
  215. package/dist/internal/account-hub/hub-sheet.js +21 -5
  216. package/dist/internal/account-hub/sections.d.ts +1 -1
  217. package/dist/internal/account-hub/sections.js +2 -1
  218. package/dist/internal/apps-and-extensions/apps-modal.d.ts +9 -0
  219. package/dist/internal/apps-and-extensions/apps-modal.js +107 -0
  220. package/dist/internal/auth/auth-card-shell.js +3 -3
  221. package/dist/internal/chrome/browser-icon.d.ts +24 -0
  222. package/dist/internal/chrome/browser-icon.js +58 -0
  223. package/dist/internal/chrome/chrome-card-state.d.ts +16 -0
  224. package/dist/internal/chrome/chrome-card-state.js +9 -0
  225. package/dist/internal/chrome/chrome-connect.d.ts +69 -0
  226. package/dist/internal/chrome/chrome-connect.js +178 -0
  227. package/dist/internal/chrome/chrome-mock.d.ts +4 -0
  228. package/dist/internal/chrome/chrome-mock.js +15 -0
  229. package/dist/internal/chrome/chrome-names.d.ts +15 -0
  230. package/dist/internal/chrome/chrome-names.js +35 -0
  231. package/dist/internal/chrome/extension.d.ts +47 -0
  232. package/dist/internal/chrome/extension.js +91 -0
  233. package/dist/internal/chrome/use-chrome-offered.d.ts +11 -0
  234. package/dist/internal/chrome/use-chrome-offered.js +22 -0
  235. package/dist/internal/components/agent-mark.js +5 -2
  236. package/dist/internal/connector-logo/connector-logo-source.d.ts +64 -0
  237. package/dist/internal/connector-logo/connector-logo-source.js +49 -0
  238. package/dist/internal/connector-logo/connector-logo.d.ts +39 -0
  239. package/dist/internal/connector-logo/connector-logo.js +56 -0
  240. package/dist/internal/connector-logo/connector-mark-files.d.ts +11 -0
  241. package/dist/internal/connector-logo/connector-mark-files.js +35 -0
  242. package/dist/internal/files/file-read-retry.d.ts +13 -0
  243. package/dist/internal/files/file-read-retry.js +23 -3
  244. package/dist/internal/files/session-drive-files.d.ts +5 -1
  245. package/dist/internal/files/session-drive-files.js +7 -2
  246. package/dist/internal/hooks/channels/use-channels-installations.d.ts +32 -5
  247. package/dist/internal/hooks/channels/use-channels-installations.js +55 -7
  248. package/dist/internal/hooks/channels/use-email-inboxes.d.ts +19 -0
  249. package/dist/internal/hooks/channels/use-email-inboxes.js +48 -0
  250. package/dist/internal/hooks/connectors/use-add-account.js +1 -1
  251. package/dist/internal/hooks/index.d.ts +1 -1
  252. package/dist/internal/hooks/index.js +1 -1
  253. package/dist/internal/hooks/projects/use-new-project-session.d.ts +9 -0
  254. package/dist/internal/hooks/projects/use-new-project-session.js +28 -12
  255. package/dist/internal/hooks/use-auto-scroll.d.ts +8 -1
  256. package/dist/internal/hooks/use-auto-scroll.js +4 -4
  257. package/dist/internal/icons/edge.d.ts +5 -0
  258. package/dist/internal/icons/edge.js +10 -0
  259. package/dist/internal/icons/telegram.d.ts +5 -0
  260. package/dist/internal/icons/telegram.js +6 -1
  261. package/dist/internal/layout/nav-hover-card.d.ts +35 -0
  262. package/dist/internal/layout/nav-hover-card.js +84 -0
  263. package/dist/internal/layout/project-nav-row.d.ts +3 -1
  264. package/dist/internal/layout/project-nav-row.js +3 -2
  265. package/dist/internal/layout/project-page-header.d.ts +4 -2
  266. package/dist/internal/layout/project-page-header.js +4 -3
  267. package/dist/internal/layout/project-settings-nav.js +59 -2
  268. package/dist/internal/lib/browser-error-noise.d.ts +1 -1
  269. package/dist/internal/lib/browser-error-noise.js +1 -1
  270. package/dist/internal/lib/browser-noise/rules/extensions.js +17 -3
  271. package/dist/internal/lib/browser-noise/rules/injected-scripts.d.ts +7 -0
  272. package/dist/internal/lib/browser-noise/rules/injected-scripts.js +15 -0
  273. package/dist/internal/lib/detect-os.d.ts +43 -0
  274. package/dist/internal/lib/detect-os.js +70 -0
  275. package/dist/internal/lib/manifest-version.d.ts +1 -1
  276. package/dist/internal/lib/manifest-version.js +2 -2
  277. package/dist/internal/lib/memory-href.d.ts +16 -0
  278. package/dist/internal/lib/memory-href.js +46 -0
  279. package/dist/internal/lib/use-project-feature-flags.js +13 -9
  280. package/dist/internal/lib/utils/heic-convert.d.ts +1 -1
  281. package/dist/internal/lib/utils/heic-convert.js +3 -4
  282. package/dist/internal/lib/web-notifications.d.ts +20 -0
  283. package/dist/internal/lib/web-notifications.js +48 -4
  284. package/dist/internal/notifications/notification-bell.d.ts +4 -1
  285. package/dist/internal/notifications/notification-bell.js +2 -2
  286. package/dist/internal/selection/selection-bar.d.ts +2 -1
  287. package/dist/internal/selection/selection-bar.js +1 -1
  288. package/dist/internal/stores/apps-modal-store.d.ts +8 -0
  289. package/dist/internal/stores/apps-modal-store.js +6 -0
  290. package/dist/internal/stores/composer-prefill-store.d.ts +12 -5
  291. package/dist/internal/stores/file-preview-store.d.ts +29 -2
  292. package/dist/internal/stores/file-preview-store.js +19 -1
  293. package/dist/internal/stores/kortix-computer-store.js +3 -0
  294. package/dist/internal/stores/sidebar-nav-store.d.ts +1 -1
  295. package/dist/internal/stores/sidebar-nav-store.js +3 -1
  296. package/dist/lib/routes.d.ts +13 -1
  297. package/dist/lib/routes.js +13 -0
  298. package/dist/markdown/index.d.ts +2 -1
  299. package/dist/markdown/index.js +2 -1
  300. package/dist/markdown/setup-links/approval-decision.d.ts +1 -0
  301. package/dist/markdown/setup-links/approval-decision.js +9 -3
  302. package/dist/markdown/setup-links/connector-handshake.d.ts +3 -1
  303. package/dist/markdown/setup-links/connector-handshake.js +12 -10
  304. package/dist/markdown/setup-links/secret-intake-form.d.ts +0 -10
  305. package/dist/markdown/setup-links/secret-intake-form.js +1 -1
  306. package/dist/markdown/setup-links/show-connect-hero.d.ts +28 -0
  307. package/dist/markdown/setup-links/show-connect-hero.js +91 -0
  308. package/dist/markdown/unified-markdown.js +5 -5
  309. package/dist/primitives/badge.d.ts +1 -1
  310. package/dist/primitives/badge.js +2 -0
  311. package/dist/primitives/disclosure.js +14 -2
  312. package/dist/primitives/empty-art.d.ts +12 -0
  313. package/dist/primitives/empty-art.js +11 -0
  314. package/dist/primitives/empty-state.d.ts +2 -2
  315. package/dist/primitives/empty-state.js +6 -5
  316. package/dist/primitives/mermaid-renderer.d.ts +2 -0
  317. package/dist/primitives/mermaid-renderer.js +21 -15
  318. package/dist/primitives/resizable.js +6 -1
  319. package/dist/primitives/resize-seam.d.ts +11 -0
  320. package/dist/primitives/resize-seam.js +12 -0
  321. package/dist/primitives/sidebar-panel.js +4 -7
  322. package/dist/primitives/tabs.d.ts +14 -1
  323. package/dist/primitives/tabs.js +1 -1
  324. package/dist/providers/ui-provider.d.ts +9 -0
  325. package/dist/session/composer/ComposerAboveCard.d.ts +1 -1
  326. package/dist/session/composer/ComposerAboveCard.js +2 -2
  327. package/dist/session/composer/ComposerCard.d.ts +1 -1
  328. package/dist/session/composer/ComposerCard.js +3 -3
  329. package/dist/session/composer/agent-selector.d.ts +13 -1
  330. package/dist/session/composer/agent-selector.js +25 -5
  331. package/dist/session/composer/composer-agent-access.d.ts +15 -0
  332. package/dist/session/composer/composer-agent-access.js +27 -0
  333. package/dist/session/composer/composer-chat-input.d.ts +8 -2
  334. package/dist/session/composer/composer-chat-input.js +8 -6
  335. package/dist/session/composer/composer-logic.d.ts +16 -0
  336. package/dist/session/composer/composer-logic.js +12 -0
  337. package/dist/session/composer/composer-underbar.d.ts +3 -1
  338. package/dist/session/composer/composer-underbar.js +4 -3
  339. package/dist/session/composer/composer.d.ts +15 -1
  340. package/dist/session/composer/composer.js +19 -1
  341. package/dist/session/composer/draft/composer-draft.d.ts +6 -2
  342. package/dist/session/composer/draft/composer-draft.js +5 -1
  343. package/dist/session/composer/reasoning-effort-selector.js +1 -1
  344. package/dist/session/models/chatgpt-connection-button.d.ts +11 -0
  345. package/dist/session/models/chatgpt-connection-button.js +54 -0
  346. package/dist/session/models/model-selector.js +5 -2
  347. package/dist/session/models/use-model-connection-gate.d.ts +5 -5
  348. package/dist/session/models/use-model-connection-gate.js +5 -5
  349. package/dist/session/outcomes/jump-to-outcome.d.ts +10 -0
  350. package/dist/session/outcomes/jump-to-outcome.js +11 -0
  351. package/dist/session/outcomes/session-outcomes-bridge.d.ts +14 -0
  352. package/dist/session/outcomes/session-outcomes-bridge.js +12 -0
  353. package/dist/session/outcomes/session-outcomes-provider.d.ts +3 -1
  354. package/dist/session/outcomes/session-outcomes-provider.js +33 -3
  355. package/dist/session/panel/easy/app-preview.d.ts +10 -0
  356. package/dist/session/panel/easy/app-preview.js +31 -12
  357. package/dist/session/panel/easy/change-requests-card.d.ts +7 -0
  358. package/dist/session/panel/easy/change-requests-card.js +17 -0
  359. package/dist/session/panel/easy/easy-panel-logic.js +7 -1
  360. package/dist/session/panel/easy/easy-panel.js +5 -2
  361. package/dist/session/panel/easy/file-preview.js +1 -1
  362. package/dist/session/panel/easy/outputs-card.d.ts +2 -1
  363. package/dist/session/panel/easy/outputs-card.js +3 -2
  364. package/dist/session/panel/mobile-tool-drawer.js +7 -1
  365. package/dist/session/panel/session-audit-panel.js +9 -2
  366. package/dist/session/panel/session-audit-shared.js +3 -1
  367. package/dist/session/panel/session-detail-panel.js +9 -3
  368. package/dist/session/panel/session-files-explorer.d.ts +9 -0
  369. package/dist/session/panel/session-files-explorer.js +12 -3
  370. package/dist/session/panel/session-panel-provider.d.ts +15 -1
  371. package/dist/session/panel/session-panel-provider.js +32 -7
  372. package/dist/session/panel/shared/derive-panels.d.ts +8 -1
  373. package/dist/session/panel/shared/derive-panels.js +12 -2
  374. package/dist/session/panel/shared/output-priority.js +2 -0
  375. package/dist/session/participants/session-participants.d.ts +8 -2
  376. package/dist/session/participants/session-participants.js +11 -4
  377. package/dist/session/prompts/approval-request.d.ts +5 -0
  378. package/dist/session/prompts/approval-request.js +9 -1
  379. package/dist/session/prompts/session-approval-review.d.ts +9 -0
  380. package/dist/session/prompts/session-approval-review.js +18 -0
  381. package/dist/session/status/session-error-banner.js +2 -49
  382. package/dist/session/status/session-starting-loader.d.ts +14 -2
  383. package/dist/session/status/session-starting-loader.js +16 -4
  384. package/dist/session/thread/after-first-prompt.d.ts +7 -0
  385. package/dist/session/thread/after-first-prompt.js +8 -0
  386. package/dist/session/thread/detect-command.d.ts +12 -0
  387. package/dist/session/thread/detect-command.js +20 -0
  388. package/dist/session/thread/session-chat.d.ts +3 -1
  389. package/dist/session/thread/session-chat.js +377 -252
  390. package/dist/session/thread/session-thread.d.ts +15 -1
  391. package/dist/session/thread/session-thread.js +20 -3
  392. package/dist/session/thread/session-transcript-class.d.ts +5 -1
  393. package/dist/session/thread/session-transcript-class.js +5 -1
  394. package/dist/session/thread/thread-boot-rows.d.ts +36 -0
  395. package/dist/session/thread/thread-boot-rows.js +89 -0
  396. package/dist/session/thread/transcript-rows.d.ts +31 -0
  397. package/dist/session/thread/transcript-rows.js +3 -0
  398. package/dist/session/thread/transcript.d.ts +0 -9
  399. package/dist/session/thread/transcript.js +104 -19
  400. package/dist/session/tool/shared/infrastructure-contexts.d.ts +28 -0
  401. package/dist/session/tool/shared/infrastructure-contexts.js +31 -3
  402. package/dist/session/tool/tool-part-renderer.d.ts +5 -4
  403. package/dist/session/tool/tool-part-renderer.js +8 -3
  404. package/dist/session/tool/tools/bash-tool.js +7 -6
  405. package/dist/session/tool/tools/channel-send-card.d.ts +1 -2
  406. package/dist/session/tool/tools/channel-send.d.ts +2 -1
  407. package/dist/session/tool/tools/codemode-tool.js +1 -1
  408. package/dist/session/tool/tools/connector-tools.js +1 -1
  409. package/dist/session/tool/tools/image-gen-tool.d.ts +1 -1
  410. package/dist/session/tool/tools/image-gen-tool.js +241 -53
  411. package/dist/session/tool/tools/show-tool.js +19 -8
  412. package/dist/session/turn/channel-brand.d.ts +8 -3
  413. package/dist/session/turn/channel-brand.js +20 -4
  414. package/dist/session/turn/message-author.d.ts +8 -0
  415. package/dist/session/turn/message-author.js +24 -0
  416. package/dist/session/turn/message-row.d.ts +52 -0
  417. package/dist/session/turn/message-row.js +44 -0
  418. package/dist/session/turn/plan-anchor.d.ts +1 -1
  419. package/dist/session/turn/plan-anchor.js +1 -1
  420. package/dist/session/turn/user-message.d.ts +14 -6
  421. package/dist/session/turn/user-message.js +35 -15
  422. package/dist/styles.css +1 -1
  423. package/dist/workspace/home/access-requests-bell.d.ts +9 -2
  424. package/dist/workspace/home/access-requests-bell.js +20 -6
  425. package/dist/workspace/home/first-chat.d.ts +8 -21
  426. package/dist/workspace/home/first-chat.js +22 -72
  427. package/dist/workspace/index.d.ts +6 -0
  428. package/dist/workspace/index.js +6 -0
  429. package/dist/workspace/layout/project-home.d.ts +14 -2
  430. package/dist/workspace/layout/project-home.js +60 -21
  431. package/dist/workspace/layout/use-project-home-send.d.ts +9 -1
  432. package/dist/workspace/layout/use-project-home-send.js +82 -3
  433. package/dist/workspace/memory/body-doc.d.ts +17 -0
  434. package/dist/workspace/memory/body-doc.js +208 -0
  435. package/dist/workspace/memory/body-extensions.d.ts +38 -0
  436. package/dist/workspace/memory/body-extensions.js +103 -0
  437. package/dist/workspace/memory/company-memory-page.d.ts +8 -0
  438. package/dist/workspace/memory/company-memory-page.js +16 -0
  439. package/dist/workspace/memory/memory-all.d.ts +20 -0
  440. package/dist/workspace/memory/memory-all.js +27 -0
  441. package/dist/workspace/memory/memory-body.d.ts +19 -0
  442. package/dist/workspace/memory/memory-body.js +139 -0
  443. package/dist/workspace/memory/memory-empty.d.ts +13 -0
  444. package/dist/workspace/memory/memory-empty.js +28 -0
  445. package/dist/workspace/memory/memory-history.d.ts +27 -0
  446. package/dist/workspace/memory/memory-history.js +108 -0
  447. package/dist/workspace/memory/memory-labels.d.ts +16 -0
  448. package/dist/workspace/memory/memory-labels.js +47 -0
  449. package/dist/workspace/memory/memory-page-list.d.ts +34 -0
  450. package/dist/workspace/memory/memory-page-list.js +156 -0
  451. package/dist/workspace/memory/memory-reader.d.ts +58 -0
  452. package/dist/workspace/memory/memory-reader.js +123 -0
  453. package/dist/workspace/memory/memory-view.d.ts +21 -0
  454. package/dist/workspace/memory/memory-view.js +124 -0
  455. package/dist/workspace/memory/remember-popover.d.ts +19 -0
  456. package/dist/workspace/memory/remember-popover.js +61 -0
  457. package/dist/workspace/memory/remember-this.d.ts +12 -0
  458. package/dist/workspace/memory/remember-this.js +89 -0
  459. package/dist/workspace/memory/source-mark.d.ts +18 -0
  460. package/dist/workspace/memory/source-mark.js +79 -0
  461. package/dist/workspace/memory/used-memory-chip.d.ts +14 -0
  462. package/dist/workspace/memory/used-memory-chip.js +61 -0
  463. package/dist/workspace/new/advanced-fields.d.ts +2 -1
  464. package/dist/workspace/new/advanced-fields.js +2 -2
  465. package/dist/workspace/new/source-param.d.ts +1 -1
  466. package/dist/workspace/new/source-param.js +3 -1
  467. package/dist/workspace/new/use-create-workspace.d.ts +8 -10
  468. package/dist/workspace/new/use-create-workspace.js +3 -3
  469. package/dist/workspace/projects/onboarding/app-logo.d.ts +7 -2
  470. package/dist/workspace/projects/onboarding/app-logo.js +6 -13
  471. package/dist/workspace/projects/policies-panel.js +5 -3
  472. package/dist/workspace/review/review-actions.d.ts +4 -2
  473. package/dist/workspace/review/review-actions.js +8 -2
  474. package/dist/workspace/review/review-center.js +11 -7
  475. package/dist/workspace/review/review-detail.d.ts +10 -0
  476. package/dist/workspace/review/review-detail.js +101 -13
  477. package/dist/workspace/saved-session-skeleton.d.ts +2 -2
  478. package/dist/workspace/saved-session-skeleton.js +3 -3
  479. package/dist/workspace/session-workspace.js +15 -13
  480. package/dist/workspace/sessions/project-sessions-view.js +3 -2
  481. package/dist/workspace/sessions/session-label-badges.js +2 -1
  482. package/dist/workspace/sessions/sessions-toolbar.d.ts +3 -1
  483. package/dist/workspace/sessions/sessions-toolbar.js +2 -2
  484. package/dist/workspace/sidebar/footer/project-apps-nav.d.ts +5 -0
  485. package/dist/workspace/sidebar/footer/project-apps-nav.js +41 -2
  486. package/dist/workspace/sidebar/footer/project-artifacts-nav.d.ts +6 -0
  487. package/dist/workspace/sidebar/footer/project-artifacts-nav.js +22 -0
  488. package/dist/workspace/sidebar/footer/project-chrome-nav.d.ts +10 -0
  489. package/dist/workspace/sidebar/footer/project-chrome-nav.js +56 -0
  490. package/dist/workspace/sidebar/footer/project-manifest-upgrade-alert.js +13 -13
  491. package/dist/workspace/sidebar/footer/project-memory-nav.d.ts +7 -0
  492. package/dist/workspace/sidebar/footer/project-memory-nav.js +19 -0
  493. package/dist/workspace/sidebar/nav-row-meta.js +14 -2
  494. package/dist/workspace/sidebar/project-nav-items.js +3 -0
  495. package/dist/workspace/sidebar/project-session-list.js +68 -56
  496. package/dist/workspace/sidebar/project-sidebar.js +13 -2
  497. package/dist/workspace/sidebar/project-spaces-nav.d.ts +8 -0
  498. package/dist/workspace/sidebar/project-spaces-nav.js +69 -0
  499. package/dist/workspace/sidebar/session-group-order.d.ts +9 -0
  500. package/dist/workspace/sidebar/session-group-order.js +25 -0
  501. package/dist/workspace/sidebar/session-group-sections.d.ts +62 -0
  502. package/dist/workspace/sidebar/session-group-sections.js +267 -0
  503. package/dist/workspace/sidebar/session-list-chrome.d.ts +28 -0
  504. package/dist/workspace/sidebar/session-list-chrome.js +50 -0
  505. package/dist/workspace/spaces/channel-glyph.d.ts +5 -0
  506. package/dist/workspace/spaces/channel-glyph.js +6 -0
  507. package/dist/workspace/spaces/channel-setup.d.ts +16 -0
  508. package/dist/workspace/spaces/channel-setup.js +105 -0
  509. package/dist/workspace/spaces/channels-onboarding.d.ts +13 -0
  510. package/dist/workspace/spaces/channels-onboarding.js +37 -0
  511. package/dist/workspace/spaces/create-channel-dialog.d.ts +16 -0
  512. package/dist/workspace/spaces/create-channel-dialog.js +158 -0
  513. package/dist/workspace/spaces/private-channels-not-in.d.ts +9 -0
  514. package/dist/workspace/spaces/private-channels-not-in.js +69 -0
  515. package/dist/workspace/spaces/space-agents.d.ts +10 -0
  516. package/dist/workspace/spaces/space-agents.js +10 -0
  517. package/dist/workspace/spaces/space-details-dialog.d.ts +20 -0
  518. package/dist/workspace/spaces/space-details-dialog.js +176 -0
  519. package/dist/workspace/spaces/space-link-label.d.ts +49 -0
  520. package/dist/workspace/spaces/space-link-label.js +73 -0
  521. package/dist/workspace/spaces/space-links.d.ts +19 -0
  522. package/dist/workspace/spaces/space-links.js +230 -0
  523. package/dist/workspace/spaces/space-members.d.ts +46 -0
  524. package/dist/workspace/spaces/space-members.js +182 -0
  525. package/dist/workspace/spaces/space-roster.d.ts +15 -0
  526. package/dist/workspace/spaces/space-roster.js +44 -0
  527. package/dist/workspace/spaces/space-threads-tab.d.ts +56 -0
  528. package/dist/workspace/spaces/space-threads-tab.js +156 -0
  529. package/dist/workspace/spaces/space-timeline-view.d.ts +254 -0
  530. package/dist/workspace/spaces/space-timeline-view.js +235 -0
  531. package/dist/workspace/spaces/space-timeline.d.ts +106 -0
  532. package/dist/workspace/spaces/space-timeline.js +183 -0
  533. package/dist/workspace/spaces/space-triggers.d.ts +13 -0
  534. package/dist/workspace/spaces/space-triggers.js +78 -0
  535. package/dist/workspace/spaces/space-view.d.ts +37 -0
  536. package/dist/workspace/spaces/space-view.js +436 -0
  537. package/package.json +67 -36
  538. package/skills/kortix-ui/SKILL.md +3 -3
  539. package/skills/kortix-ui/references/custom-dashboard.md +3 -3
  540. package/skills/kortix-ui/references/modules.md +29 -5
  541. package/skills/kortix-ui/references/theming.md +1 -1
  542. package/dist/customize/connectors/catalog/merge-search.d.ts +0 -10
  543. package/dist/customize/connectors/catalog/merge-search.js +0 -26
  544. package/dist/customize/connectors/detail/find-easy-connect-app.d.ts +0 -29
  545. package/dist/customize/connectors/detail/find-easy-connect-app.js +0 -22
  546. package/dist/customize/migrate-to-v2/use-migrate-to-v2.d.ts +0 -9
  547. package/dist/customize/migrate-to-v2/use-migrate-to-v2.js +0 -24
  548. package/dist/customize/sections/connector-connection-header.d.ts +0 -36
  549. package/dist/customize/sections/connector-connection-header.js +0 -33
  550. package/dist/customize/sections/connector-connection-modal.d.ts +0 -34
  551. package/dist/customize/sections/connector-connection-modal.js +0 -72
  552. package/dist/customize/sections/discover-catalogue-card.d.ts +0 -19
  553. package/dist/customize/sections/discover-catalogue-card.js +0 -26
  554. package/dist/customize/sections/discover-catalogue-detail.d.ts +0 -15
  555. package/dist/customize/sections/discover-catalogue-detail.js +0 -24
  556. package/dist/customize/sections/discover-catalogue.d.ts +0 -17
  557. package/dist/customize/sections/discover-catalogue.js +0 -132
  558. package/dist/customize/sections/llm-provider/provider-access-menu.d.ts +0 -10
  559. package/dist/customize/sections/llm-provider/provider-access-menu.js +0 -23
  560. package/dist/files/project/components/drive-empty-art.d.ts +0 -2
  561. package/dist/files/project/components/drive-empty-art.js +0 -5
  562. package/dist/internal/hooks/use-media-query.d.ts +0 -2
  563. package/dist/internal/share/public-share-link-button.d.ts +0 -14
  564. package/dist/internal/share/public-share-link-button.js +0 -17
  565. package/dist/markdown/setup-links/app-credentials-form.d.ts +0 -12
  566. package/dist/markdown/setup-links/app-credentials-form.js +0 -115
  567. /package/dist/{internal/hooks → hooks}/use-media-query.js +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kortix/ui",
3
- "version": "0.14.8",
3
+ "version": "0.14.10",
4
4
  "description": "Kortix UI: the shared React component library for apps/web, Kortix Apps and SDK hosts. Tailwind v4 classes, themed by CSS variables.",
5
5
  "type": "module",
6
6
  "license": "Elastic-2.0",
@@ -88,6 +88,10 @@
88
88
  "types": "./dist/apps/index.d.ts",
89
89
  "import": "./dist/apps/index.js"
90
90
  },
91
+ "./artifacts": {
92
+ "types": "./dist/artifacts/index.d.ts",
93
+ "import": "./dist/artifacts/index.js"
94
+ },
91
95
  "./avatar": {
92
96
  "types": "./dist/primitives/avatar.d.ts",
93
97
  "import": "./dist/primitives/avatar.js"
@@ -189,10 +193,6 @@
189
193
  "types": "./dist/customize/agents/agents-page.d.ts",
190
194
  "import": "./dist/customize/agents/agents-page.js"
191
195
  },
192
- "./customize/connectors/catalog/use-catalog": {
193
- "types": "./dist/customize/connectors/catalog/use-catalog.d.ts",
194
- "import": "./dist/customize/connectors/catalog/use-catalog.js"
195
- },
196
196
  "./customize/connectors/connector-routes": {
197
197
  "types": "./dist/customize/connectors/connector-routes.d.ts",
198
198
  "import": "./dist/customize/connectors/connector-routes.js"
@@ -233,6 +233,10 @@
233
233
  "types": "./dist/customize/sections/add-account-fields.d.ts",
234
234
  "import": "./dist/customize/sections/add-account-fields.js"
235
235
  },
236
+ "./customize/sections/component/email-connect-form": {
237
+ "types": "./dist/customize/sections/component/email-connect-form.d.ts",
238
+ "import": "./dist/customize/sections/component/email-connect-form.js"
239
+ },
236
240
  "./customize/sections/component/manifest-copy-block": {
237
241
  "types": "./dist/customize/sections/component/manifest-copy-block.d.ts",
238
242
  "import": "./dist/customize/sections/component/manifest-copy-block.js"
@@ -257,10 +261,6 @@
257
261
  "types": "./dist/customize/sections/component/telegram-channel-row.d.ts",
258
262
  "import": "./dist/customize/sections/component/telegram-channel-row.js"
259
263
  },
260
- "./customize/sections/connector-connection-form": {
261
- "types": "./dist/customize/sections/connector-connection-form.d.ts",
262
- "import": "./dist/customize/sections/connector-connection-form.js"
263
- },
264
264
  "./customize/sections/connector-oauth2": {
265
265
  "types": "./dist/customize/sections/connector-oauth2.d.ts",
266
266
  "import": "./dist/customize/sections/connector-oauth2.js"
@@ -273,10 +273,6 @@
273
273
  "types": "./dist/customize/sections/connector-oauth2-fields.d.ts",
274
274
  "import": "./dist/customize/sections/connector-oauth2-fields.js"
275
275
  },
276
- "./customize/sections/connectors-view": {
277
- "types": "./dist/customize/sections/connectors-view.d.ts",
278
- "import": "./dist/customize/sections/connectors-view.js"
279
- },
280
276
  "./customize/sections/gateway-view": {
281
277
  "types": "./dist/customize/sections/gateway-view.d.ts",
282
278
  "import": "./dist/customize/sections/gateway-view.js"
@@ -353,6 +349,10 @@
353
349
  "types": "./dist/customize/settings/settings-tabs.d.ts",
354
350
  "import": "./dist/customize/settings/settings-tabs.js"
355
351
  },
352
+ "./customize/settings/tabs/chrome-connections-tab": {
353
+ "types": "./dist/customize/settings/tabs/chrome-connections-tab.d.ts",
354
+ "import": "./dist/customize/settings/tabs/chrome-connections-tab.js"
355
+ },
356
356
  "./customize/settings/tabs/connected-apps": {
357
357
  "types": "./dist/customize/settings/tabs/connected-apps.d.ts",
358
358
  "import": "./dist/customize/settings/tabs/connected-apps.js"
@@ -682,6 +682,10 @@
682
682
  "types": "./dist/primitives/empty.d.ts",
683
683
  "import": "./dist/primitives/empty.js"
684
684
  },
685
+ "./empty-art": {
686
+ "types": "./dist/primitives/empty-art.d.ts",
687
+ "import": "./dist/primitives/empty-art.js"
688
+ },
685
689
  "./empty-state": {
686
690
  "types": "./dist/primitives/empty-state.d.ts",
687
691
  "import": "./dist/primitives/empty-state.js"
@@ -911,6 +915,14 @@
911
915
  "types": "./dist/internal/capture/use-capture-area.d.ts",
912
916
  "import": "./dist/internal/capture/use-capture-area.js"
913
917
  },
918
+ "./internal/chrome/extension": {
919
+ "types": "./dist/internal/chrome/extension.d.ts",
920
+ "import": "./dist/internal/chrome/extension.js"
921
+ },
922
+ "./internal/chrome/use-chrome-offered": {
923
+ "types": "./dist/internal/chrome/use-chrome-offered.d.ts",
924
+ "import": "./dist/internal/chrome/use-chrome-offered.js"
925
+ },
914
926
  "./internal/components/agent-mark": {
915
927
  "types": "./dist/internal/components/agent-mark.d.ts",
916
928
  "import": "./dist/internal/components/agent-mark.js"
@@ -955,6 +967,10 @@
955
967
  "types": "./dist/internal/hooks/channels/use-channels-installations.d.ts",
956
968
  "import": "./dist/internal/hooks/channels/use-channels-installations.js"
957
969
  },
970
+ "./internal/hooks/channels/use-email-inboxes": {
971
+ "types": "./dist/internal/hooks/channels/use-email-inboxes.d.ts",
972
+ "import": "./dist/internal/hooks/channels/use-email-inboxes.js"
973
+ },
958
974
  "./internal/hooks/connectors/use-add-managed-account": {
959
975
  "types": "./dist/internal/hooks/connectors/use-add-managed-account.d.ts",
960
976
  "import": "./dist/internal/hooks/connectors/use-add-managed-account.js"
@@ -1011,6 +1027,10 @@
1011
1027
  "types": "./dist/internal/hooks/use-notification-center.d.ts",
1012
1028
  "import": "./dist/internal/hooks/use-notification-center.js"
1013
1029
  },
1030
+ "./internal/hooks/use-slash-focus": {
1031
+ "types": "./dist/internal/hooks/use-slash-focus.d.ts",
1032
+ "import": "./dist/internal/hooks/use-slash-focus.js"
1033
+ },
1014
1034
  "./internal/icons/claude": {
1015
1035
  "types": "./dist/internal/icons/claude.d.ts",
1016
1036
  "import": "./dist/internal/icons/claude.js"
@@ -1019,6 +1039,10 @@
1019
1039
  "types": "./dist/internal/icons/download.d.ts",
1020
1040
  "import": "./dist/internal/icons/download.js"
1021
1041
  },
1042
+ "./internal/icons/edge": {
1043
+ "types": "./dist/internal/icons/edge.d.ts",
1044
+ "import": "./dist/internal/icons/edge.js"
1045
+ },
1022
1046
  "./internal/icons/github": {
1023
1047
  "types": "./dist/internal/icons/github.d.ts",
1024
1048
  "import": "./dist/internal/icons/github.js"
@@ -1027,10 +1051,6 @@
1027
1051
  "types": "./dist/internal/icons/home.d.ts",
1028
1052
  "import": "./dist/internal/icons/home.js"
1029
1053
  },
1030
- "./internal/icons/kortix": {
1031
- "types": "./dist/internal/icons/kortix.d.ts",
1032
- "import": "./dist/internal/icons/kortix.js"
1033
- },
1034
1054
  "./internal/icons/microsoft-teams": {
1035
1055
  "types": "./dist/internal/icons/microsoft-teams.d.ts",
1036
1056
  "import": "./dist/internal/icons/microsoft-teams.js"
@@ -1107,6 +1127,10 @@
1107
1127
  "types": "./dist/internal/lib/desktop.d.ts",
1108
1128
  "import": "./dist/internal/lib/desktop.js"
1109
1129
  },
1130
+ "./internal/lib/detect-os": {
1131
+ "types": "./dist/internal/lib/detect-os.d.ts",
1132
+ "import": "./dist/internal/lib/detect-os.js"
1133
+ },
1110
1134
  "./internal/lib/error-handler": {
1111
1135
  "types": "./dist/internal/lib/error-handler.d.ts",
1112
1136
  "import": "./dist/internal/lib/error-handler.js"
@@ -1159,6 +1183,10 @@
1159
1183
  "types": "./dist/internal/lib/onboarding/use-app-home.d.ts",
1160
1184
  "import": "./dist/internal/lib/onboarding/use-app-home.js"
1161
1185
  },
1186
+ "./internal/lib/project-preamble": {
1187
+ "types": "./dist/internal/lib/project-preamble.d.ts",
1188
+ "import": "./dist/internal/lib/project-preamble.js"
1189
+ },
1162
1190
  "./internal/lib/promo-art": {
1163
1191
  "types": "./dist/internal/lib/promo-art.d.ts",
1164
1192
  "import": "./dist/internal/lib/promo-art.js"
@@ -1283,6 +1311,10 @@
1283
1311
  "types": "./dist/internal/stores/account-panel-store.d.ts",
1284
1312
  "import": "./dist/internal/stores/account-panel-store.js"
1285
1313
  },
1314
+ "./internal/stores/apps-modal-store": {
1315
+ "types": "./dist/internal/stores/apps-modal-store.d.ts",
1316
+ "import": "./dist/internal/stores/apps-modal-store.js"
1317
+ },
1286
1318
  "./internal/stores/billing-account-context": {
1287
1319
  "types": "./dist/internal/stores/billing-account-context.d.ts",
1288
1320
  "import": "./dist/internal/stores/billing-account-context.js"
@@ -1423,6 +1455,10 @@
1423
1455
  "types": "./dist/primitives/label.d.ts",
1424
1456
  "import": "./dist/primitives/label.js"
1425
1457
  },
1458
+ "./lib/favicon": {
1459
+ "types": "./dist/lib/favicon.d.ts",
1460
+ "import": "./dist/lib/favicon.js"
1461
+ },
1426
1462
  "./lib/host-env": {
1427
1463
  "types": "./dist/lib/host-env.d.ts",
1428
1464
  "import": "./dist/lib/host-env.js"
@@ -1467,10 +1503,6 @@
1467
1503
  "types": "./dist/markdown/setup-links/api-base.d.ts",
1468
1504
  "import": "./dist/markdown/setup-links/api-base.js"
1469
1505
  },
1470
- "./markdown/setup-links/app-credentials-form": {
1471
- "types": "./dist/markdown/setup-links/app-credentials-form.d.ts",
1472
- "import": "./dist/markdown/setup-links/app-credentials-form.js"
1473
- },
1474
1506
  "./markdown/setup-links/approval-decision": {
1475
1507
  "types": "./dist/markdown/setup-links/approval-decision.d.ts",
1476
1508
  "import": "./dist/markdown/setup-links/approval-decision.js"
@@ -1561,10 +1593,6 @@
1561
1593
  "types": "./dist/primitives/project-icon-picker.d.ts",
1562
1594
  "import": "./dist/primitives/project-icon-picker.js"
1563
1595
  },
1564
- "./providers/session-ids": {
1565
- "types": "./dist/providers/session-ids.d.ts",
1566
- "import": "./dist/providers/session-ids.js"
1567
- },
1568
1596
  "./providers/ui-provider": {
1569
1597
  "types": "./dist/providers/ui-provider.d.ts",
1570
1598
  "import": "./dist/providers/ui-provider.js"
@@ -1577,6 +1605,10 @@
1577
1605
  "types": "./dist/primitives/resizable.d.ts",
1578
1606
  "import": "./dist/primitives/resizable.js"
1579
1607
  },
1608
+ "./resize-seam": {
1609
+ "types": "./dist/primitives/resize-seam.d.ts",
1610
+ "import": "./dist/primitives/resize-seam.js"
1611
+ },
1580
1612
  "./scroll-area": {
1581
1613
  "types": "./dist/primitives/scroll-area.d.ts",
1582
1614
  "import": "./dist/primitives/scroll-area.js"
@@ -1661,6 +1693,10 @@
1661
1693
  "types": "./dist/session/panel/easy/detail-view.d.ts",
1662
1694
  "import": "./dist/session/panel/easy/detail-view.js"
1663
1695
  },
1696
+ "./session/participants/session-participants": {
1697
+ "types": "./dist/session/participants/session-participants.d.ts",
1698
+ "import": "./dist/session/participants/session-participants.js"
1699
+ },
1664
1700
  "./session/prompts/session-approval-review": {
1665
1701
  "types": "./dist/session/prompts/session-approval-review.d.ts",
1666
1702
  "import": "./dist/session/prompts/session-approval-review.js"
@@ -2025,14 +2061,6 @@
2025
2061
  "types": "./dist/workspace/projects/modal/project-icon-field.d.ts",
2026
2062
  "import": "./dist/workspace/projects/modal/project-icon-field.js"
2027
2063
  },
2028
- "./workspace/projects/onboarding/app-logo": {
2029
- "types": "./dist/workspace/projects/onboarding/app-logo.d.ts",
2030
- "import": "./dist/workspace/projects/onboarding/app-logo.js"
2031
- },
2032
- "./workspace/projects/onboarding/connect-app": {
2033
- "types": "./dist/workspace/projects/onboarding/connect-app.d.ts",
2034
- "import": "./dist/workspace/projects/onboarding/connect-app.js"
2035
- },
2036
2064
  "./workspace/projects/policies-panel": {
2037
2065
  "types": "./dist/workspace/projects/policies-panel.d.ts",
2038
2066
  "import": "./dist/workspace/projects/policies-panel.js"
@@ -2165,7 +2193,7 @@
2165
2193
  "@extend-ai/react-docx": "^0.7.5",
2166
2194
  "@extend-ai/react-xlsx": "0.13.4",
2167
2195
  "@glideapps/glide-data-grid": "6.0.4-alpha24",
2168
- "@kortix/llm-catalog": "0.14.8",
2196
+ "@kortix/llm-catalog": "0.14.10",
2169
2197
  "@lezer/highlight": "1.2.3",
2170
2198
  "@paper-design/shaders-react": "^0.0.76",
2171
2199
  "@phosphor-icons/react": "2.1.10",
@@ -2197,12 +2225,15 @@
2197
2225
  "@tiptap/extension-document": "3.30.5",
2198
2226
  "@tiptap/extension-floating-menu": "3.30.5",
2199
2227
  "@tiptap/extension-hard-break": "3.30.5",
2228
+ "@tiptap/extension-list": "3.30.5",
2200
2229
  "@tiptap/extension-paragraph": "3.30.5",
2201
2230
  "@tiptap/extension-placeholder": "3.30.5",
2231
+ "@tiptap/extension-table": "3.30.5",
2202
2232
  "@tiptap/extension-text": "3.30.5",
2203
2233
  "@tiptap/extensions": "3.30.5",
2204
2234
  "@tiptap/pm": "3.30.5",
2205
2235
  "@tiptap/react": "3.30.5",
2236
+ "@tiptap/starter-kit": "3.30.5",
2206
2237
  "@tiptap/suggestion": "3.30.5",
2207
2238
  "@uiw/codemirror-extensions-langs": "^4.23.10",
2208
2239
  "@uiw/codemirror-themes": "4.23.10",
@@ -2219,7 +2250,7 @@
2219
2250
  "date-fns": "^3.6.0",
2220
2251
  "diff": "^8.0.3",
2221
2252
  "frimousse": "^0.3.0",
2222
- "heic2any": "0.0.4",
2253
+ "heic-to": "1.6.7",
2223
2254
  "i18next": "^26.3.6",
2224
2255
  "jszip": "^3.10.1",
2225
2256
  "katex": "^0.18.7",
@@ -2254,7 +2285,7 @@
2254
2285
  "zustand": "^5.0.3"
2255
2286
  },
2256
2287
  "peerDependencies": {
2257
- "@kortix/sdk": "^0.14.8",
2288
+ "@kortix/sdk": "^0.14.10",
2258
2289
  "@tanstack/react-query": "^5.75.2",
2259
2290
  "@types/react": ">=18",
2260
2291
  "react": ">=19",
@@ -7,7 +7,7 @@ description: "Build React UI with @kortix/ui, the Kortix component library and t
7
7
 
8
8
  `@kortix/ui` is the one React component library for every Kortix surface: `apps/web`, Kortix Apps, the
9
9
  white-label demo and SDK customer apps. Components are Tailwind v4 class strings that read CSS variables.
10
- Docs: https://kortix.com/docs/sdk/ui. Live catalog: https://kortix.com/design-system.
10
+ Docs: https://kortix.com/docs/developers#kortix-ui. Live catalog: https://kortix.com/design-system.
11
11
 
12
12
  Install: `npm i @kortix/ui @kortix/sdk`, the same version of each (peers: `references/custom-dashboard.md`).
13
13
  Module entries and `@kortix/ui/theme` need 0.14.4+. Inside `kortix-ai/suna`: `"workspace:*"`. Never copy component source.
@@ -91,7 +91,7 @@ Theme with `@kortix/ui/theme`, never by forking a component: `themeToCss(theme)`
91
91
  | `@kortix/ui` (primitives, not for feature code: section 3) | `Dialog`, `DialogClose`, `DialogContent`, `DialogDescription`, `DialogFooter`, `DialogHeader`, `DialogOverlay`, `DialogPortal`, `DialogTitle`, `DialogTrigger`, `Tooltip`, `TooltipContent`, `TooltipProvider`, `TooltipTrigger` |
92
92
  | `@kortix/ui` (navigation) | `FilterBar`, `FilterBarItem`, `Tabs`, `TabsContent`, `TabsList`, `TabsListCompact`, `TabsTrigger`, `TabsTriggerCompact`, `tabsTriggerHeightVariants`, `tabsTriggerPaddingVariants`, `tabsTriggerTextVariants`, `TabsListType`, `TabsSize`, `TabsTriggerSize`, `TabsTriggerVariant`, `TabsUnderlineSize` |
93
93
  | `@kortix/ui` (conversation) | `Bubble`, `BubbleContent`, `BubbleGroup`, `BubbleReactions`, `bubbleVariants`, `Message`, `MessageAvatar`, `MessageContent`, `MessageFooter`, `MessageGroup`, `MessageHeader`, `Marker`, `MarkerContent`, `MarkerIcon`, `markerVariants` |
94
- | `@kortix/ui` (hooks, helpers) | `UiLink`, `UiImage`, `useUiViewer`, `UiViewer`, `UiHostComponents`, `UiPreviewUrlResolver`, `UiPreviewRequest`, `useDebounce`, `useIsMobile`, `useMediaQuery`, `useSlashFocus`, `lazyClient`, `spring`, `floatingZ`, `dialogContentZ`, `dialogOverlayZ`, `useDialogDepth`, `hasOpenFloatingLayer`, `hasOpenNestedDialog`, `DEFAULT_ICON_WEIGHT`, `ICON_WEIGHTS`, `SHIPPED_ICON_WEIGHTS`, `faviconUrlForHostname`, `setUiTelemetry`, `setUiHostEnv`, `setUiRoutes`, `uiRoutes`, `defaultUiRoutes`, `UiRoutes` |
94
+ | `@kortix/ui` (hooks, helpers) | `UiLink`, `UiImage`, `useUiViewer`, `UiViewer`, `UiHostComponents`, `UiPreviewUrlResolver`, `UiPreviewRequest`, `useDebounce`, `useIsMobile`, `useMediaQuery`, `useSlashFocus`, `lazyClient`, `spring`, `floatingZ`, `dialogContentZ`, `dialogOverlayZ`, `useDialogDepth`, `hasOpenFloatingLayer`, `hasOpenNestedDialog`, `DEFAULT_ICON_WEIGHT`, `ICON_WEIGHTS`, `SHIPPED_ICON_WEIGHTS`, `faviconUrlForHostname`, `setUiTelemetry`, `setUiHostEnv`, `setUiRoutes`, `uiRoutes`, `defaultUiRoutes`, `decodeSpaceSegment`, `UiRoutes` |
95
95
  | `@kortix/ui/theme` | `KortixTheme`, `themeToCss`, `themeToCssVars`, `ThemeScope`, `ThemeScopeProps`, `THEME_COLOR_VARS`, `ThemeColor`, `ThemeColors`, `ThemeCssVars`, `ThemeTextStep`, `ThemeShadowStep`, `ThemeDurationStep`, `ThemeEasing`, `WALLPAPERS`, `DEFAULT_WALLPAPER_ID`, `getWallpaperById`, `Wallpaper` |
96
96
  | `@kortix/ui/session` (whole thread) | `SessionThread`, `SessionThreadProps` |
97
97
  | `@kortix/ui/session` (blocks) | `UserMessage`, `ThrottledMarkdown`, `UnifiedMarkdown`, `UnifiedMarkdownProps`, `ToolPartRenderer`, `SessionChatInput`, `SessionChatInputProps`, `AgentSelector`, `ModelSelector`, `ModelSelectorProps`, `SessionPermissionPrompt`, `QuestionPrompt`, `QuestionPromptHandle`, `TurnErrorDisplay`, `SessionBusyIndicator`, `SessionStartingLoader` |
@@ -116,7 +116,7 @@ One entry per module. Its curated names are the public API (semver). Every name,
116
116
  | `@kortix/ui/terminal`, `@kortix/ui/browser` | The session shell; the sandbox browser | the runtime ids of a mounted `useSession` |
117
117
  | `@kortix/ui/markdown`, `@kortix/ui/genui` | Markdown with code, math, links; GenUI blocks | `<UnifiedMarkdown content trust="agent" />` |
118
118
  | `@kortix/ui/diff`, `@kortix/ui/changes` | One diff; a change list | `<DiffView before after />` |
119
- | `@kortix/ui/apps` | App frames, the frame pool, the App view model | none |
119
+ | `@kortix/ui/apps`, `@kortix/ui/artifacts` | App frames, the frame pool, the App view model; artifact frames and session cards | none |
120
120
  | `@kortix/ui/access`, `@kortix/ui/customize` | Sharing and roles; project configuration pages | `<ConnectorsPage projectId />` |
121
121
  | `@kortix/ui/theme`, `@kortix/ui/i18n`, `@kortix/ui/icons` | Theme; `useTranslations`, `useLocale` (next-intl signatures); glyphs | none |
122
122
 
@@ -201,7 +201,7 @@ A Next.js host passes `next/link` and `{ useRouter, usePathname, useSearchParams
201
201
 
202
202
  ## 5. The project shell
203
203
 
204
- Your sidebar chrome around Kortix's session list. Every URL the components link to comes from one route table, `setUiRoutes` (`@kortix/ui`), called once at module load. The defaults are Kortix's own paths: `project` `/projects/<id>`, `session` `/projects/<id>/sessions/<sessionId>`, `sessions` `/projects/<id>/sessions` (`?view=archived|deleted`), `files` `/projects/<id>/files`, `drive` `/projects/<id>/drive`, `apps` `/projects/<id>/apps`, `members` `/projects/<id>/members`, `sandboxSettings` `/projects/<id>/config?section=sandbox`, `customize` `/projects/<id>/customize/<page>` (agents, skills, connectors, triggers, reminders, models, secrets, review, settings). Return your own path for a page you serve elsewhere. Return `null` for a page you do not serve: every link to it is hidden. `project` and `session` cannot be null. This app serves the project
204
+ Your sidebar chrome around Kortix's session list. Every URL the components link to comes from one route table, `setUiRoutes` (`@kortix/ui`), called once at module load. The defaults are Kortix's own paths: `project` `/projects/<id>`, `session` `/projects/<id>/sessions/<sessionId>`, `sessions` `/projects/<id>/sessions` (`?view=archived|deleted`), `files` `/projects/<id>/files`, `drive` `/projects/<id>/drive`, `apps` `/projects/<id>/apps`, `members` `/projects/<id>/members`, `sandboxSettings` `/projects/<id>/config?section=sandbox`, `customize` `/projects/<id>/customize/<page>` (agents, skills, connectors, triggers, reminders, models, secrets, review, settings), `channel` `/projects/<id>/c/<slug>` and `dm` `/projects/<id>/dm/<agent>` (the sidebar links them while the project's `project_channels` flag is on). Return your own path for a page you serve elsewhere. Return `null` for a page you do not serve: every link to it is hidden. `project`, `session`, `channel` and `dm` cannot be null. This app serves the project
205
205
  home, its files and a session (section 7), so it maps the other pages to `null`.
206
206
 
207
207
  ```tsx
@@ -456,9 +456,9 @@ The modules compose at any depth (`modules.md` has every entry with its props an
456
456
  composed screens need the two scopes those screens mount: `KortixProjectProvider` (`@kortix/sdk/react`)
457
457
  and `SessionIdsProvider` (`@kortix/ui`) with the project and session ids.
458
458
  - To draw every part yourself: `useChatTurns` and `renderParts` from `@kortix/sdk/react`
459
- (https://kortix.com/docs/sdk/react#build-a-chat-ui).
459
+ (https://kortix.com/docs/developers#react).
460
460
  - Other data for a dashboard: `useProjectApps`, `useProjectTriggers`, `useChangeRequests`,
461
- `useGatewayOverview`, `useCan` (https://kortix.com/docs/sdk/react#hooks).
461
+ `useGatewayOverview`, `useCan` (https://kortix.com/docs/developers#react-hooks).
462
462
 
463
463
  ## 10. Verify
464
464
 
@@ -87,7 +87,9 @@ export function Answer({ text }: { text: string }) {
87
87
  }
88
88
  ```
89
89
 
90
- Names: `markdownPolicy`, `MarkdownPolicy`, `MarkdownTrust`, `MarkdownVariant`, `UnifiedMarkdown`, `UnifiedMarkdownProps`, `CopyOverlay`, `HighlightedCode`, `CopyButton`, `MarkdownWithFrontmatter`, `languageLabel`, `normalizeLanguage`
90
+ Code outside markdown: `CodeHighlight` (`code`, `language`) draws one highlighted block without the markdown parser; `INLINE_CODE` is the class string of an inline code chip.
91
+
92
+ Names: `markdownPolicy`, `MarkdownPolicy`, `MarkdownTrust`, `MarkdownVariant`, `UnifiedMarkdown`, `UnifiedMarkdownProps`, `CopyOverlay`, `CodeHighlight`, `HighlightedCode`, `INLINE_CODE`, `CopyButton`, `MarkdownWithFrontmatter`, `languageLabel`, `normalizeLanguage`
91
93
 
92
94
  ## `@kortix/ui/genui`
93
95
 
@@ -177,7 +179,7 @@ export function PreviewHost() {
177
179
  }
178
180
  ```
179
181
 
180
- Names: `saveDriveFile`, `useDismissDriveConflict`, `useDriveAvailability`, `useDriveConflicts`, `useDriveFolder`, `useFolderAccess`, `useFolderPrincipals`, `useInvalidateDrives`, `useProjectDrive`, `useShareFolder`, `useUnshareFolder`, `FilesStoreProvider`, `getFileIcon`, `FilePreviewHost`, `ChangeRequestDetailDialog`, `DiffRenderer`, `DriveExplorer`, `DriveUploadTray`, `FileExplorerPage`, `FileThumbnail`, `ProjectFilesProvider`, `useProjectContext`, `FileExplorerSourceProvider`, `ExplorerQueryResult`, `FileExplorerSource`, `gitRefExplorerSource`, `useChangeRequestRecovery`, `changeRequestKeys`, `openChangeRequestListQuery`, `useChangeRequestDiff`, `useChangeRequestMergePreview`, `useCloseChangeRequest`, `useMergeChangeRequest`, `useRequestChangesOnChangeRequest`, `useSelectedVersion`, `workspaceFileSource`, `useWorkspaceSearch`, `SandboxFileExplorer`
182
+ Names: `saveDriveFile`, `useDismissDriveConflict`, `useDriveAvailability`, `useDriveConflicts`, `useDriveFolder`, `useFolderAccess`, `useFolderPrincipals`, `useInvalidateDrives`, `useProjectDrive`, `useShareFolder`, `useUnshareFolder`, `FilesStoreProvider`, `getFileIcon`, `FilePreviewHost`, `ChangeRequestDetailDialog`, `DiffRenderer`, `DriveExplorer`, `DriveUploadTray`, `FileExplorerPage`, `FileThumbnail`, `ProjectFilesProvider`, `useProjectContext`, `FileExplorerSourceProvider`, `ExplorerQueryResult`, `FileExplorerSource`, `gitRefExplorerSource`, `useChangeRequestRecovery`, `changeRequestKeys`, `openChangeRequestListQuery`, `useChangeRequestDiff`, `useChangeRequestMergePreview`, `useCloseChangeRequest`, `useMergeChangeRequest`, `useRequestChangesOnChangeRequest`, `useSelectedVersion`, `workspaceFileSource`, `useWorkspaceSearch`, `SandboxFileExplorer`, `CodeEditor` (the CodeMirror editor, loaded as its own chunk on first render)
181
183
 
182
184
  ## `@kortix/ui/file-viewer`
183
185
 
@@ -256,6 +258,26 @@ export function AppLink({ url }: { url: string }) {
256
258
 
257
259
  Names: `AppPreview`, `AppPreviewOverlay`, `PREVIEW_SPINNER_DELAY_MS`, `PREVIEW_TILE_ASPECT`, `PREVIEW_VIEWPORT_HEIGHT`, `PREVIEW_VIEWPORT_WIDTH`, `framePlacement`, `previewScale`, `scheduleSlowPreview`, `ensureFrame`, `frameKey`, `framesKeepAlive`, `pruneFrames`, `reloadFrame`, `ANONYMOUS_MODES`, `DEPLOYMENT_COPY`, `appCan`, `appCommand`, `appHost`, `appStatus`, `appTabLabel`, `cardPreviewApp`, `childApps`, `deployNotice`, `gridApps`, `localizedAppCopy`, `isKortixAppUrl`
258
260
 
261
+ The frame pool: `ensureFrame` creates a parked frame, `claimFrame` (`key`, `slot`, `placement`) shows it in `slot` and returns the release, `restyleFrame` restyles the current claim, `useFrameStatus` (`key`) reads `loading`, `loaded` or `failed`; `FramePlacement` is a slot's class, style and `interactive`. The Apps page: `hiddenApps` (neither a card nor a tab), `appTriggers` (the triggers that call an App and the ones its events start), `backgroundSummary` (running, asleep, undeployed, external counts), `appSizeLabel` ("2 vCPU · 4 GB · 20 GB"), `DeployCommand` (`code`: a shell command with a copy button).
262
+
263
+ ## `@kortix/ui/artifacts`
264
+
265
+ Source: `src/artifacts/index.ts`. Kortix Artifacts in any host: the frame policy and link parsing (server-safe), the pooled page frame, and the session views. Artifact frames share the `@kortix/ui/apps` frame pool; their keys start with `ARTIFACT_FRAME_PREFIX`.
266
+
267
+ Props: `ArtifactFrame`: `frameKey` (`artifactFrameKey(artifact, version)`), `src`, `title`, `preview` (no input), `className`. `ShowArtifactCard`: `url`, `fallback` (drawn when the viewer cannot open it). `ArtifactPanelPreview`: `url`, `onClose`.
268
+
269
+ ```tsx
270
+ import { parseArtifactUrl } from '@kortix/ui/artifacts';
271
+
272
+ // A link to an artifact opens it in your viewer; any other link stays a link.
273
+ export function ArtifactLink({ url }: { url: string }) {
274
+ const artifact = parseArtifactUrl(url);
275
+ return <a href={url}>{artifact ? `Artifact ${artifact.artifactId}` : url}</a>;
276
+ }
277
+ ```
278
+
279
+ Names: `ARTIFACT_FRAME_ALLOW`, `ARTIFACT_FRAME_PREFIX`, `ARTIFACT_IFRAME_SANDBOX`, `artifactFrameKey`, `parseArtifactUrl`, `printArtifact` (a doc's print view in a hidden frame: Export as PDF), `ArtifactFrame`, `ensureArtifactFrame`, `ArtifactPanelPreview`, `ShowArtifactCard`
280
+
259
281
  ## `@kortix/ui/composer`
260
282
 
261
283
  Source: `src/session/composer/index.ts`. The message composer: drop-in inputs, chrome, tiptap editor parts and the send pipeline.
@@ -292,7 +314,7 @@ Source: `src/session/index.ts`. The conversation: the drop-in thread, turns, too
292
314
  Mount: Pass the `useSession(projectId, sessionId)` result: `<SessionThread session={session} />`. Importing the entry registers the built-in tool rows.
293
315
 
294
316
  Props:
295
- - `SessionThread`: `session` (required), `hideHeader`, `readOnly`, `className`. Without a side panel on the page, file and preview opens show in a dialog.
317
+ - `SessionThread`: `session` (required), `hideHeader`, `readOnly`, `composerPlaceholder`, `quote`, `firstPrompt`, `density`, `className`. Without a side panel on the page, file and preview opens show in a dialog. `firstPrompt`: the prompt of a session the host just created; the thread shows it, with the agent's Thinking row, while the computer boots, then hands it to the transcript. `density="compact"`: tighter conversation gutters for a narrow column, such as a side sheet; the composer keeps its own.
296
318
  - `ToolRegistry.register(name, Row)`: `Row` gets `ToolProps` (`call`: `name`, `input`, `status`, `result`); `BasicTool` draws the standard row.
297
319
  - `ModelSelector`, `AgentSelector`: the composer's model and agent pickers. They are controlled (`models`/`agents`, the selection, `onSelect`), so a form outside a session uses them too.
298
320
 
@@ -344,7 +366,7 @@ Mount: `SessionWorkspace` takes `session` (the `useSession` result): the thread
344
366
  Props:
345
367
  - `SessionWorkspace`: `session` (the `useSession` result, required), `children` (replaces the thread), `hideHeader`, `readOnly`, `className`.
346
368
  - `SessionLayout`: `sessionId` (runtime id), `projectId`, `projectSessionId`, `children` (the thread), `bootStage`, `transient`.
347
- - `ProjectHome`: `projectId`; `beforeSend` (runs first, throw to refuse); `onSend` + `busy` (replace the send).
369
+ - `ProjectHome`: `projectId`; `beforeSend` (runs first, throw to refuse); `onSend` + `busy` (replace the send); `onboarding` (opt in: a project not yet onboarded opens on the onboarding chat and sends "Onboard me" once a model is usable).
348
370
  - `useProjectHomeSend(projectId, { beforeSend })` returns `{ send, sending }`.
349
371
  - `ProjectSessionList`, `ProjectSessionsView`, `ProjectFilesView`: `projectId`. `ProjectSidebar`: `projectId`, `menu`, `onOpenSearch` (the header shows Search only with it); its Files, Apps and Customize rows read `projectId`, not the route.
350
372
 
@@ -375,7 +397,9 @@ export function Sessions({ projectId }: { projectId: string }) {
375
397
 
376
398
  Goals (behind the `goals` flag): `GoalStatusBadge` (a goal's status), `GoalHealthDot` (green running, orange needs attention, grey closed), `useGoalIssueText` (one sentence per health issue), `goalProgress` (met and total criteria), `goalOpenAsks` (asks waiting on a person), `goalNeedsYou` (an open ask or a health issue), `formatGoalTime` (the reminders time format), `goalHref` (the goal's page, or null), `useGoalClock` (the current time, re-read every 30 s).
377
399
 
378
- Names: `ProjectPageHeader`, `useCapabilityAccess`, `useProjectNavRows`, `SidebarToggle`, `activeCapabilityTab`, `agentHref`, `capabilityTabHref`, `channelsHref`, `remindersHref`, `reviewHref`, `detectManifestVersion`, `manifestFilename`, `manifestNeedsUpgrade`, `useProjectManifestVersion`, `ManifestVersion`, `CUSTOMIZE_SECTION_ACCESS`, `CUSTOMIZE_SECTION_GATE_ACTIONS`, `PROJECT_ACTIONS`, `isCustomizeSectionVisible`, `CustomizeSection`, `ProjectAction`, `usePermission`, `usePermissions`, `usePermissionsFor`, `PROJECT_PAGE_ACTIONS`, `useProjectCan`, `useProjectCans`, `useProjectPageCans`, `CanResult`, `formatFireTime`, `nearestFire`, `reminderTitle`, `scheduleLabel`, `ProjectHomeWallpaper`, `ProjectHomeWelcomeBody`, `InstantSessionShell`, `ProjectFilesView`, `ProjectHome`, `ProjectHomeSendOptions`, `useProjectHomeSend`, `UseProjectHomeSendOptions`, `SavedSessionSkeleton`, `SessionLayout`, `SessionWorkspace`, `SessionLayoutProps`, `SessionWorkspaceProps`, `ProjectSessionsView`, `ProjectSessionList`, `ProjectSidebar`, `ShareSessionModal`
400
+ Channels and memory (behind the `project_channels` flag): `SpaceView` (`projectId`, `target`: a `SpaceTarget`, `{ kind: 'channel', slug }` or `{ kind: 'dm', agentName }`; `beforeSend`; `renderFolder` draws a `SpaceFolder`, one space's Files tab; `renderApps`) is a channel or DM page with its threads, files, memory, apps, links and triggers. `ChannelGlyph` (`visibility`) is `#` or a lock. `agentLabel` (`name`) is an agent's display name. `MemoryView` (`projectId`, `layerKey`: `company` or a space id, `place`) is one memory layer's pages; `CompanyMemoryPage` (`projectId`) is the project's Company memory. `useMemoryPageHref` (`projectId`) returns `(layer: MemoryLayerRef, pageId) => href | null`: the page's link, null when the host serves no such page.
401
+
402
+ Names: `SpaceView`, `SpaceViewProps`, `SpaceTarget`, `SpaceFolder`, `ChannelGlyph`, `agentLabel`, `MemoryView`, `MemoryViewProps`, `CompanyMemoryPage`, `MemoryLayerRef`, `useMemoryPageHref`, `ProjectPageHeader`, `useCapabilityAccess`, `useProjectNavRows`, `SidebarToggle`, `activeCapabilityTab`, `agentHref`, `capabilityTabHref`, `channelsHref`, `remindersHref`, `reviewHref`, `detectManifestVersion`, `manifestFilename`, `manifestNeedsUpgrade`, `useProjectManifestVersion`, `ManifestVersion`, `CUSTOMIZE_SECTION_ACCESS`, `CUSTOMIZE_SECTION_GATE_ACTIONS`, `PROJECT_ACTIONS`, `isCustomizeSectionVisible`, `CustomizeSection`, `ProjectAction`, `usePermission`, `usePermissions`, `usePermissionsFor`, `PROJECT_PAGE_ACTIONS`, `useProjectCan`, `useProjectCans`, `useProjectPageCans`, `CanResult`, `formatFireTime`, `nearestFire`, `reminderTitle`, `scheduleLabel`, `ProjectHomeWallpaper`, `ProjectHomeWelcomeBody`, `InstantSessionShell`, `ProjectFilesView`, `ProjectHome`, `ProjectHomeSendOptions`, `useProjectHomeSend`, `UseProjectHomeSendOptions`, `SavedSessionSkeleton`, `SessionLayout`, `SessionWorkspace`, `SessionLayoutProps`, `SessionWorkspaceProps`, `ProjectSessionsView`, `ProjectSessionList`, `ProjectSidebar`, `ShareSessionModal`
379
403
 
380
404
  ## `@kortix/ui/access`
381
405
 
@@ -95,7 +95,7 @@ Shared values (both modes):
95
95
  | `durations.<step>`, `easing.<curve>` | `--duration-*`, `--ease-*` | Motion: `fast` … `slower`; `default`, `in`, `out`, `inOut` |
96
96
  | `vars` | any `--name` | Anything else |
97
97
 
98
- Defaults and the fixed values (scrims, 10–12px captions, a few keyframe durations): https://kortix.com/docs/sdk/ui#tokens.
98
+ Defaults and the fixed values (scrims, 10–12px captions, a few keyframe durations): https://kortix.com/docs/developers#tokens.
99
99
 
100
100
  ## 5. Rules
101
101
 
@@ -1,10 +0,0 @@
1
- import { type CatalogEntry } from './catalog-entry.js';
2
- /**
3
- * One search result list from both catalogues.
4
- *
5
- * Managed results keep their order. An app both list shows once, as its
6
- * API/MCP entry (MCP is the default way to connect) with the managed logo,
7
- * which is sharp where the catalogue's favicon is not. API/MCP-only apps
8
- * follow.
9
- */
10
- export declare function mergeSearchEntries(managed: readonly CatalogEntry[], direct: readonly CatalogEntry[]): CatalogEntry[];
@@ -1,26 +0,0 @@
1
- import { appNameKey as appKey } from './catalog-entry.js';
2
- /**
3
- * One search result list from both catalogues.
4
- *
5
- * Managed results keep their order. An app both list shows once, as its
6
- * API/MCP entry (MCP is the default way to connect) with the managed logo,
7
- * which is sharp where the catalogue's favicon is not. API/MCP-only apps
8
- * follow.
9
- */
10
- export function mergeSearchEntries(managed, direct) {
11
- const directByName = new Map();
12
- for (const entry of direct) {
13
- const key = appKey(entry.name);
14
- if (!directByName.has(key))
15
- directByName.set(key, entry);
16
- }
17
- const used = new Set();
18
- const merged = managed.map((entry) => {
19
- const twin = directByName.get(appKey(entry.name));
20
- if (!twin || used.has(twin))
21
- return entry;
22
- used.add(twin);
23
- return { ...twin, icon: entry.icon ?? twin.icon, alsoApp: true };
24
- });
25
- return merged.concat(direct.filter((entry) => !used.has(entry)));
26
- }
@@ -1,29 +0,0 @@
1
- /** One page of the managed catalogue, as `listConnectCatalogPage` returns it. */
2
- type ListApps<A> = (input: {
3
- projectId: string;
4
- provider: 'composio' | 'pipedream';
5
- q: string;
6
- limit: number;
7
- }) => Promise<{
8
- apps: A[];
9
- }>;
10
- /**
11
- * Resolve one managed (Composio or Pipedream) app from its slug.
12
- *
13
- * The catalogue has no by-slug route, so this searches and keeps the exact
14
- * slug match. The second query spells the slug as words, for a catalogue whose
15
- * search matches names and not slugs (`google_sheets` → "google sheets").
16
- *
17
- * `list` is passed in so this module stays free of the catalogue hook's
18
- * imports and can be tested with a fake.
19
- */
20
- export declare function findEasyConnectApp<A extends {
21
- slug: string;
22
- }>(list: ListApps<A>, input: {
23
- projectId: string;
24
- provider: 'composio' | 'pipedream';
25
- slug: string;
26
- }): Promise<(A & {
27
- provider: 'composio' | 'pipedream';
28
- }) | null>;
29
- export {};
@@ -1,22 +0,0 @@
1
- /**
2
- * Resolve one managed (Composio or Pipedream) app from its slug.
3
- *
4
- * The catalogue has no by-slug route, so this searches and keeps the exact
5
- * slug match. The second query spells the slug as words, for a catalogue whose
6
- * search matches names and not slugs (`google_sheets` → "google sheets").
7
- *
8
- * `list` is passed in so this module stays free of the catalogue hook's
9
- * imports and can be tested with a fake.
10
- */
11
- export async function findEasyConnectApp(list, input) {
12
- const words = input.slug.replace(/[_-]+/g, ' ');
13
- for (const q of words === input.slug ? [input.slug] : [input.slug, words]) {
14
- // ponytail: one page of 48 per query; an exact slug ranked below 48 results
15
- // reads as not found. Add a by-slug API route if that happens.
16
- const page = await list({ projectId: input.projectId, provider: input.provider, q, limit: 48 });
17
- const app = page.apps.find((candidate) => candidate.slug === input.slug);
18
- if (app)
19
- return { ...app, provider: input.provider };
20
- }
21
- return null;
22
- }
@@ -1,9 +0,0 @@
1
- export interface MigrateToV2 {
2
- /** Mint + navigate to the migration session. Safe to call repeatedly —
3
- * ignored while a session is already being created. */
4
- start: () => void;
5
- /** True while a session is being created — callers should disable their
6
- * trigger and/or show a spinner. */
7
- pending: boolean;
8
- }
9
- export declare function useMigrateToV2(projectId: string): MigrateToV2;
@@ -1,24 +0,0 @@
1
- 'use client';
2
- /**
3
- * useMigrateToV2 — start an agent-led "migrate this project's manifest to v2"
4
- * session from anywhere in Customize.
5
- *
6
- * Same shape as `useConfigureThread` (the sibling "Create new agent/skill/
7
- * command" flow): the only way config changes land is through a session that
8
- * edits the repo on a branch and opens a change request, so this mints a
9
- * fresh session, stashes the migration prompt as its first message, closes
10
- * the Customize overlay, and drops the user into the thread — the instant
11
- * shell auto-sends the stashed prompt once the runtime is ready.
12
- *
13
- * Deliberately does NOT pass `agent_name` — the session boots the project's
14
- * default agent (the one with git/CR powers), matching how the migration
15
- * prompt expects to be run.
16
- */
17
- import { useCallback } from 'react';
18
- import { MIGRATE_TO_V2_PROMPT } from './migration-prompt.js';
19
- import { useRunUpgrade } from './use-run-upgrade.js';
20
- export function useMigrateToV2(projectId) {
21
- const run = useRunUpgrade(projectId);
22
- const start = useCallback(() => run.start(MIGRATE_TO_V2_PROMPT), [run]);
23
- return { start, pending: run.pending };
24
- }
@@ -1,36 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- /**
3
- * The icon tile for a connector that does not exist yet. `ConnectorAppIcon`
4
- * (`connectors-view.tsx:729`) needs an `AdminConnector`; the add flow has a
5
- * catalogue app — an image URL and a name, nothing more. Same 40px bordered
6
- * tile, same `object-contain` treatment, so the two are indistinguishable on
7
- * screen.
8
- */
9
- export declare function ConnectorConnectionIcon({ src, name }: {
10
- src?: string | null;
11
- name: string;
12
- }): import("react").JSX.Element;
13
- /**
14
- * A connector's identity block — icon, name, byline, description —
15
- * shared by the add flow (`ConnectorConnectionModal`) and the detail modal
16
- * (`connector-modal.tsx`), so "what is this thing?" is answered by the same
17
- * layout in both places.
18
- *
19
- * Everything except `icon` and `name` is optional; a custom connector with
20
- * no catalogue record simply renders less. `nameSlot` swaps the plain name
21
- * for a caller-owned control (the detail modal's inline rename, or Radix's
22
- * `ModalTitle`) without changing the rhythm around it.
23
- */
24
- export declare function ConnectorConnectionHeader({ icon, name, nameSlot, byline, meta, status, description, className, }: {
25
- icon: ReactNode;
26
- name: string;
27
- nameSlot?: ReactNode;
28
- /** e.g. "by Pipedream" — the catalogue the app came from. */
29
- byline?: string | null;
30
- /** Small muted facts after the byline: tool count, slug. */
31
- meta?: ReactNode;
32
- /** Badges trailing the name: provider, connection status. */
33
- status?: ReactNode;
34
- description?: string | null;
35
- className?: string;
36
- }): import("react").JSX.Element;