@opengeni/react 1.0.1 → 1.0.2-canary.37191796234001
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.
- package/README.md +651 -21
- package/dist/accounts.d.ts +64 -0
- package/dist/accounts.js +822 -0
- package/dist/accounts.js.map +1 -0
- package/dist/approvals.d.ts +2 -1
- package/dist/artifacts-document.js +3 -2
- package/dist/artifacts-presentation.js +3 -2
- package/dist/artifacts-spreadsheet.js +2 -2
- package/dist/artifacts.d.ts +4 -1
- package/dist/artifacts.js +518 -42
- package/dist/artifacts.js.map +1 -1
- package/dist/browser-viewer-GTR5XQ7X.js +16 -0
- package/dist/capability-catalog-row.d.ts +20 -0
- package/dist/capability-logo-fallback.d.ts +3 -0
- package/dist/chat-interactive-block-UGBTNB3L.js +11 -0
- package/dist/chat-interactive-block-UGBTNB3L.js.map +1 -0
- package/dist/{chunk-5UQPNLIO.js → chunk-23J2ZNXT.js} +4117 -3896
- package/dist/chunk-23J2ZNXT.js.map +1 -0
- package/dist/chunk-447JLCBU.js +209 -0
- package/dist/chunk-447JLCBU.js.map +1 -0
- package/dist/chunk-4RVYOY4O.js +379 -0
- package/dist/chunk-4RVYOY4O.js.map +1 -0
- package/dist/chunk-5CVXZA3Y.js +292 -0
- package/dist/chunk-5CVXZA3Y.js.map +1 -0
- package/dist/chunk-5J4FOW6Q.js +108 -0
- package/dist/chunk-5J4FOW6Q.js.map +1 -0
- package/dist/chunk-A2PI6UMY.js +41 -0
- package/dist/chunk-A2PI6UMY.js.map +1 -0
- package/dist/{chunk-7WCLAEFV.js → chunk-A4UJB2MM.js} +37 -27
- package/dist/chunk-A4UJB2MM.js.map +1 -0
- package/dist/chunk-B3V6TG77.js +41 -0
- package/dist/chunk-B3V6TG77.js.map +1 -0
- package/dist/chunk-BRM6FVZA.js +302 -0
- package/dist/chunk-BRM6FVZA.js.map +1 -0
- package/dist/chunk-C5X5AJXK.js +182 -0
- package/dist/chunk-C5X5AJXK.js.map +1 -0
- package/dist/chunk-CR7U7HAR.js +453 -0
- package/dist/chunk-CR7U7HAR.js.map +1 -0
- package/dist/{chunk-R3AZOAB5.js → chunk-DYWBUX5Q.js} +29 -123
- package/dist/chunk-DYWBUX5Q.js.map +1 -0
- package/dist/chunk-E3G7SAYZ.js +3124 -0
- package/dist/chunk-E3G7SAYZ.js.map +1 -0
- package/dist/chunk-ELCE5SXV.js +359 -0
- package/dist/chunk-ELCE5SXV.js.map +1 -0
- package/dist/chunk-ERGYJIBB.js +21 -0
- package/dist/chunk-ERGYJIBB.js.map +1 -0
- package/dist/chunk-FFA2OVOV.js +319 -0
- package/dist/chunk-FFA2OVOV.js.map +1 -0
- package/dist/chunk-FZCP527Y.js +116 -0
- package/dist/chunk-FZCP527Y.js.map +1 -0
- package/dist/chunk-GIMRELBW.js +14 -0
- package/dist/chunk-GIMRELBW.js.map +1 -0
- package/dist/{chunk-6KLX2RH5.js → chunk-H2NJQORO.js} +1069 -79
- package/dist/chunk-H2NJQORO.js.map +1 -0
- package/dist/chunk-I7IWRQLN.js +1608 -0
- package/dist/chunk-I7IWRQLN.js.map +1 -0
- package/dist/{chunk-HA46CYQK.js → chunk-IQUCRAT7.js} +792 -537
- package/dist/chunk-IQUCRAT7.js.map +1 -0
- package/dist/chunk-IWIDV7SB.js +1 -0
- package/dist/chunk-IWIDV7SB.js.map +1 -0
- package/dist/chunk-J2QWVSQY.js +312 -0
- package/dist/chunk-J2QWVSQY.js.map +1 -0
- package/dist/chunk-JFNEV4LU.js +2733 -0
- package/dist/chunk-JFNEV4LU.js.map +1 -0
- package/dist/chunk-JT4JW7BC.js +54 -0
- package/dist/chunk-JT4JW7BC.js.map +1 -0
- package/dist/chunk-K3HQAKQX.js +24 -0
- package/dist/chunk-K3HQAKQX.js.map +1 -0
- package/dist/{chunk-C5ZPSSS5.js → chunk-NEXLLTP4.js} +2 -1
- package/dist/{chunk-C5ZPSSS5.js.map → chunk-NEXLLTP4.js.map} +1 -1
- package/dist/chunk-NZUI76EM.js +371 -0
- package/dist/chunk-NZUI76EM.js.map +1 -0
- package/dist/{chunk-PEI6RANI.js → chunk-PNY3JKBJ.js} +309 -74
- package/dist/chunk-PNY3JKBJ.js.map +1 -0
- package/dist/{chunk-IGC6A2ZI.js → chunk-Q5QBEZIQ.js} +777 -246
- package/dist/chunk-Q5QBEZIQ.js.map +1 -0
- package/dist/chunk-RHREZ7BO.js +11 -0
- package/dist/chunk-RHREZ7BO.js.map +1 -0
- package/dist/chunk-SCOTPE2I.js +589 -0
- package/dist/chunk-SCOTPE2I.js.map +1 -0
- package/dist/{chunk-B6WPZSTT.js → chunk-SJZDKVW2.js} +1331 -1163
- package/dist/chunk-SJZDKVW2.js.map +1 -0
- package/dist/chunk-TMJRG4YC.js +12803 -0
- package/dist/chunk-TMJRG4YC.js.map +1 -0
- package/dist/chunk-TMYGL6X5.js +742 -0
- package/dist/chunk-TMYGL6X5.js.map +1 -0
- package/dist/chunk-UGLEYEMP.js +33 -0
- package/dist/chunk-UGLEYEMP.js.map +1 -0
- package/dist/chunk-UK4TINKT.js +27 -0
- package/dist/chunk-UK4TINKT.js.map +1 -0
- package/dist/chunk-UTRTG6LH.js +220 -0
- package/dist/chunk-UTRTG6LH.js.map +1 -0
- package/dist/chunk-WEHMPOXK.js +39 -0
- package/dist/chunk-WEHMPOXK.js.map +1 -0
- package/dist/chunk-WRHIZYZF.js +988 -0
- package/dist/chunk-WRHIZYZF.js.map +1 -0
- package/dist/{chunk-HUIKIDM5.js → chunk-WUISZ3WU.js} +223 -115
- package/dist/chunk-WUISZ3WU.js.map +1 -0
- package/dist/chunk-XCHWDJ22.js +107 -0
- package/dist/chunk-XCHWDJ22.js.map +1 -0
- package/dist/chunk-XOAMRDDK.js +481 -0
- package/dist/chunk-XOAMRDDK.js.map +1 -0
- package/dist/chunk-XUW2UWQM.js +299 -0
- package/dist/chunk-XUW2UWQM.js.map +1 -0
- package/dist/{chunk-KCGXPP5V.js → chunk-Y2PRMYLC.js} +11 -6
- package/dist/chunk-Y2PRMYLC.js.map +1 -0
- package/dist/chunk-YBXQDQFX.js +1772 -0
- package/dist/chunk-YBXQDQFX.js.map +1 -0
- package/dist/{chunk-KZ73RL76.js → chunk-YQEAA6LT.js} +7 -3
- package/dist/chunk-YQEAA6LT.js.map +1 -0
- package/dist/chunk-YV4L3ILF.js +9 -0
- package/dist/chunk-YV4L3ILF.js.map +1 -0
- package/dist/{chunk-LLOLUHVG.js → chunk-YWFG7ZX7.js} +1358 -2746
- package/dist/chunk-YWFG7ZX7.js.map +1 -0
- package/dist/chunk-ZYRGEKWS.js +216 -0
- package/dist/chunk-ZYRGEKWS.js.map +1 -0
- package/dist/client.d.ts +7 -4
- package/dist/clipboard.js +1 -0
- package/dist/commands/types.d.ts +2 -0
- package/dist/components/anthropic-mark.d.ts +3 -0
- package/dist/components/approval-surface.d.ts +15 -0
- package/dist/components/artifacts/artifact-chrome.d.ts +120 -0
- package/dist/components/artifacts/artifact-sandbox.d.ts +27 -0
- package/dist/components/artifacts/artifact-surface.d.ts +3 -1
- package/dist/components/artifacts/chat-interactive-block.d.ts +29 -0
- package/dist/components/artifacts/deferred-chat-media.d.ts +15 -0
- package/dist/components/artifacts/document-editor.d.ts +4 -2
- package/dist/components/artifacts/editable-artifact-ui.d.ts +2 -1
- package/dist/components/artifacts/editable-artifact-view.d.ts +46 -0
- package/dist/components/artifacts/editable-document.d.ts +1 -1
- package/dist/components/artifacts/editable-presentation.d.ts +2 -2
- package/dist/components/artifacts/editable-spreadsheet.d.ts +2 -1
- package/dist/components/artifacts/index.d.ts +8 -1
- package/dist/components/artifacts/inline-html-document.d.ts +2 -0
- package/dist/components/artifacts/latest-task-runner.d.ts +15 -0
- package/dist/components/artifacts/presentation-editor.d.ts +6 -2
- package/dist/components/artifacts/published-html-artifact-frame.d.ts +48 -3
- package/dist/components/artifacts/session-artifact-viewer.d.ts +39 -0
- package/dist/components/artifacts/site-view.d.ts +23 -0
- package/dist/components/artifacts/spreadsheet-general-display.d.ts +24 -0
- package/dist/components/artifacts/visualization-assets.gen.d.ts +2 -0
- package/dist/components/browser-select-control.d.ts +16 -0
- package/dist/components/browser-viewer.d.ts +10 -1
- package/dist/components/chat-composer.d.ts +21 -3
- package/dist/components/child-session-link.d.ts +5 -0
- package/dist/components/claude-mark.d.ts +3 -0
- package/dist/components/code-editor.d.ts +1 -4
- package/dist/components/composer.d.ts +45 -4
- package/dist/components/computer-viewer.d.ts +4 -1
- package/dist/components/copy-button.d.ts +3 -1
- package/dist/components/desktop-viewer.d.ts +1 -1
- package/dist/components/enrollment-consent.d.ts +6 -3
- package/dist/components/file-browser.d.ts +10 -1
- package/dist/components/fleet-tile.d.ts +2 -2
- package/dist/components/grok-mark.d.ts +26 -0
- package/dist/components/human-input-form.d.ts +21 -2
- package/dist/components/human-input-surface.d.ts +6 -3
- package/dist/components/machine-card.d.ts +4 -1
- package/dist/components/machines/machine-detail.d.ts +4 -1
- package/dist/components/machines/machine-operation-policy.d.ts +11 -0
- package/dist/components/machines-dashboard.d.ts +3 -1
- package/dist/components/markdown-table-layout.d.ts +12 -0
- package/dist/components/markdown.d.ts +47 -3
- package/dist/components/message-timeline.d.ts +72 -9
- package/dist/components/model-mark.d.ts +29 -0
- package/dist/components/model-policy-picker-menu.d.ts +9 -0
- package/dist/components/model-policy-picker.d.ts +62 -13
- package/dist/components/open-geni-chat.d.ts +55 -0
- package/dist/components/open-geni-links.d.ts +68 -0
- package/dist/components/openrouter-mark.d.ts +6 -0
- package/dist/components/pierre-file.d.ts +1 -1
- package/dist/components/preview-loading.d.ts +2 -0
- package/dist/components/queue-item-content.d.ts +9 -0
- package/dist/components/sandbox-files.d.ts +13 -2
- package/dist/components/sandbox-workspace.d.ts +43 -3
- package/dist/components/session-capability-frame.d.ts +35 -0
- package/dist/components/session-chrome.d.ts +66 -8
- package/dist/components/session-commands-panel.d.ts +6 -0
- package/dist/components/session-commands.d.ts +6 -0
- package/dist/components/session-connection-request.d.ts +8 -0
- package/dist/components/session-conversation.d.ts +86 -0
- package/dist/components/session-list.d.ts +36 -0
- package/dist/components/session-mcp-capability-card.d.ts +41 -0
- package/dist/components/timeline-anchor.d.ts +24 -0
- package/dist/components/timeline-annotation-chrome.d.ts +25 -0
- package/dist/components/timeline-annotation-layout.d.ts +42 -0
- package/dist/components/timeline-annotation-markers.d.ts +8 -0
- package/dist/components/timeline-annotation-reveal-context.d.ts +4 -0
- package/dist/components/timeline-annotation-shared.d.ts +31 -0
- package/dist/components/timeline-annotations-dialog.d.ts +3 -2
- package/dist/components/timeline-annotations.d.ts +13 -3
- package/dist/components/timeline-reading-progress.d.ts +11 -0
- package/dist/components/timeline-search.d.ts +34 -0
- package/dist/components/timeline-settlement.d.ts +16 -0
- package/dist/components/tip-follow.d.ts +16 -0
- package/dist/components/usage-limit-notice.d.ts +49 -0
- package/dist/components/usage-member-list.d.ts +91 -0
- package/dist/components/usage-meter.d.ts +73 -0
- package/dist/components/use-viewer-menu-dismiss.d.ts +2 -0
- package/dist/components/user-message-body.d.ts +10 -1
- package/dist/components/workspace-dock.d.ts +6 -2
- package/dist/composer.d.ts +5 -4
- package/dist/composer.js +15 -9
- package/dist/computer-viewer-ENHVAZ2Q.js +19 -0
- package/dist/computer-viewer-ENHVAZ2Q.js.map +1 -0
- package/dist/connect-account-identity.d.ts +8 -0
- package/dist/connect-accounts.d.ts +15 -0
- package/dist/connect-chooser.d.ts +18 -0
- package/dist/connect-panel.d.ts +18 -0
- package/dist/connect-setup.d.ts +16 -0
- package/dist/connect.d.ts +21 -0
- package/dist/connect.js +2129 -0
- package/dist/connect.js.map +1 -0
- package/dist/connection-catalog.d.ts +38 -0
- package/dist/connection-discovery.d.ts +12 -0
- package/dist/connection-installed.d.ts +17 -0
- package/dist/connection-logo.d.ts +9 -0
- package/dist/connection-service-logo.d.ts +8 -0
- package/dist/connection-service-presentation.d.ts +13 -0
- package/dist/connection-skeleton.d.ts +5 -0
- package/dist/connection-type-picker.d.ts +6 -0
- package/dist/conversation-timeline.d.ts +5 -0
- package/dist/desktop.d.ts +7 -0
- package/dist/desktop.js +26 -0
- package/dist/desktop.js.map +1 -0
- package/dist/device-authorization.d.ts +23 -0
- package/dist/diffs.d.ts +8 -0
- package/dist/diffs.js +14 -0
- package/dist/diffs.js.map +1 -0
- package/dist/discovery-cache.d.ts +5 -0
- package/dist/editor.d.ts +7 -0
- package/dist/editor.js +21 -0
- package/dist/editor.js.map +1 -0
- package/dist/embedded-session-client.d.ts +23 -0
- package/dist/file-node-visibility.d.ts +15 -0
- package/dist/{fleet-decision-row-GGCAT4E4.js → fleet-decision-row-YZ3ZKWMM.js} +2 -1
- package/dist/fleet-decision-row-YZ3ZKWMM.js.map +1 -0
- package/dist/hooks/channel-cache.d.ts +23 -0
- package/dist/hooks/latest-question.d.ts +25 -0
- package/dist/hooks/shared-machines-list.d.ts +14 -0
- package/dist/hooks/use-attached-browsers.d.ts +2 -1
- package/dist/hooks/use-browser-frame-stream.d.ts +1 -1
- package/dist/hooks/use-browser-session.d.ts +12 -1
- package/dist/hooks/use-channels.d.ts +1 -0
- package/dist/hooks/use-codex-accounts.d.ts +25 -7
- package/dist/hooks/use-composer.d.ts +45 -9
- package/dist/hooks/use-computer-frame-stream.d.ts +1 -1
- package/dist/hooks/use-computer-input-posture.d.ts +13 -0
- package/dist/hooks/use-computer-session.d.ts +2 -0
- package/dist/hooks/use-connect.d.ts +22 -0
- package/dist/hooks/use-desktop-stream.d.ts +1 -1
- package/dist/hooks/use-file-attachments.d.ts +21 -2
- package/dist/hooks/use-machine-chip.d.ts +3 -3
- package/dist/hooks/use-machines.d.ts +19 -1
- package/dist/hooks/use-sandbox-files.d.ts +5 -1
- package/dist/hooks/use-session-background-commands.d.ts +14 -0
- package/dist/hooks/use-session-events.d.ts +30 -8
- package/dist/hooks/use-session-lineage.d.ts +4 -0
- package/dist/hooks/use-session-mcp-approval-policy.d.ts +2 -2
- package/dist/hooks/use-session.d.ts +6 -0
- package/dist/hooks/use-turn-queue.d.ts +12 -0
- package/dist/hooks/use-usage.d.ts +40 -0
- package/dist/hooks/use-workspace-edit.d.ts +4 -0
- package/dist/hooks/use-workspace-sessions.d.ts +27 -5
- package/dist/human-input.d.ts +3 -1
- package/dist/identity-link-accounts.d.ts +11 -0
- package/dist/identity-link-consent.d.ts +18 -0
- package/dist/index.d.ts +60 -17
- package/dist/index.js +2237 -6200
- package/dist/index.js.map +1 -1
- package/dist/interaction.d.ts +1 -1
- package/dist/interaction.js +35 -184
- package/dist/interaction.js.map +1 -1
- package/dist/latest-question-755OW5DS.js +117 -0
- package/dist/latest-question-755OW5DS.js.map +1 -0
- package/dist/lib/error-message.d.ts +7 -0
- package/dist/lib/format.d.ts +36 -2
- package/dist/lib/host-theme.d.ts +70 -0
- package/dist/lib/interaction-errors.d.ts +6 -0
- package/dist/lib/menu-styles.d.ts +22 -0
- package/dist/lib/pierre-diffs-loader.d.ts +20 -0
- package/dist/lib/workbench-peers.d.ts +36 -0
- package/dist/lib/xterm-theme.d.ts +7 -5
- package/dist/machines.d.ts +4 -2
- package/dist/machines.js +14 -4
- package/dist/markdown-table-layout-QXSLK4BY.js +106 -0
- package/dist/markdown-table-layout-QXSLK4BY.js.map +1 -0
- package/dist/mcp-connection-status.d.ts +14 -0
- package/dist/model-policy-picker-menu-PWRI7R2X.js +14 -0
- package/dist/model-policy-picker-menu-PWRI7R2X.js.map +1 -0
- package/dist/model-policy.d.ts +19 -3
- package/dist/model-policy.js +9 -1
- package/dist/older-history.d.ts +30 -0
- package/dist/platform-activity-row-627BFZ46.js +182 -0
- package/dist/platform-activity-row-627BFZ46.js.map +1 -0
- package/dist/plugin-details.d.ts +14 -0
- package/dist/plugin-discovery.d.ts +25 -0
- package/dist/provider.d.ts +13 -1
- package/dist/{queue-surface-implementation-2KVJTYXH.js → queue-surface-implementation-ZHFI5JBP.js} +131 -44
- package/dist/queue-surface-implementation-ZHFI5JBP.js.map +1 -0
- package/dist/realtime/realtime-control.d.ts +6 -3
- package/dist/realtime.js +133 -74
- package/dist/realtime.js.map +1 -1
- package/dist/sandbox-files-BBC47SLD.js +20 -0
- package/dist/sandbox-files-BBC47SLD.js.map +1 -0
- package/dist/session-auth-recommendation.d.ts +5 -0
- package/dist/session-capability-policy.d.ts +12 -0
- package/dist/session-ui.d.ts +30 -2
- package/dist/session-ui.js +85 -7
- package/dist/session-ui.js.map +1 -1
- package/dist/session.d.ts +8 -2
- package/dist/session.js +30 -19
- package/dist/sites-ui.d.ts +34 -0
- package/dist/sites.d.ts +3 -0
- package/dist/sites.js +11 -0
- package/dist/sites.js.map +1 -0
- package/dist/skill-discovery.d.ts +47 -0
- package/dist/terminal.d.ts +8 -0
- package/dist/terminal.js +31 -0
- package/dist/terminal.js.map +1 -0
- package/dist/timeline/activity-rail.d.ts +11 -2
- package/dist/timeline/allowance-exhausted-row.d.ts +24 -0
- package/dist/timeline/compaction-copy.d.ts +10 -0
- package/dist/timeline/entrance.d.ts +13 -1
- package/dist/timeline/genie-loading.d.ts +34 -0
- package/dist/timeline/index.d.ts +6 -2
- package/dist/timeline/knowledge-receipt.d.ts +17 -0
- package/dist/timeline/platform-activity-row.d.ts +14 -0
- package/dist/timeline/presented-image.d.ts +6 -0
- package/dist/timeline/projection.d.ts +31 -2
- package/dist/timeline/registry.d.ts +2 -0
- package/dist/timeline/retained-image.d.ts +18 -0
- package/dist/timeline/rolling-activity.d.ts +11 -0
- package/dist/timeline/screenshot-lightbox.d.ts +16 -1
- package/dist/timeline/shared.d.ts +8 -3
- package/dist/timeline/startup-preference.d.ts +3 -0
- package/dist/timeline/startup-timings.d.ts +4 -0
- package/dist/timeline/tool-display-name.d.ts +2 -1
- package/dist/timeline/turn-summary.d.ts +32 -3
- package/dist/timeline/types.d.ts +141 -7
- package/dist/timeline-annotation-markers-GNDHTGBD.js +165 -0
- package/dist/timeline-annotation-markers-GNDHTGBD.js.map +1 -0
- package/dist/timeline-annotation-selection-DMLMM2TX.js +241 -0
- package/dist/timeline-annotation-selection-DMLMM2TX.js.map +1 -0
- package/dist/timeline-annotations-dialog-ELRDBHTS.js +273 -0
- package/dist/timeline-annotations-dialog-ELRDBHTS.js.map +1 -0
- package/dist/types/machines.d.ts +2 -2
- package/dist/usage/allowance-copy.d.ts +25 -0
- package/dist/usage/summary.d.ts +35 -0
- package/dist/usage.d.ts +13 -0
- package/dist/usage.js +1074 -0
- package/dist/usage.js.map +1 -0
- package/package.json +44 -4
- package/src/accounts.tsx +1072 -0
- package/src/approvals.ts +8 -1
- package/src/artifacts.ts +42 -0
- package/src/assets/README.md +8 -0
- package/src/assets/gmail.ico +0 -0
- package/src/assets/outlook.ico +0 -0
- package/src/capability-catalog-row.tsx +94 -0
- package/src/capability-logo-fallback.ts +22 -0
- package/src/client.ts +22 -13
- package/src/commands/registry.ts +18 -15
- package/src/commands/types.ts +2 -0
- package/src/components/anthropic-mark.tsx +10 -0
- package/src/components/approval-surface.tsx +171 -37
- package/src/components/artifacts/artifact-chrome.tsx +413 -0
- package/src/components/artifacts/artifact-sandbox.tsx +185 -0
- package/src/components/artifacts/artifact-surface.tsx +39 -19
- package/src/components/artifacts/chat-interactive-block.tsx +260 -0
- package/src/components/artifacts/deferred-chat-media.tsx +67 -0
- package/src/components/artifacts/document-editor.tsx +141 -16
- package/src/components/artifacts/editable-artifact-ui.tsx +4 -2
- package/src/components/artifacts/editable-artifact-view.tsx +187 -0
- package/src/components/artifacts/editable-artifact-workbench.tsx +5 -2
- package/src/components/artifacts/editable-document.tsx +37 -36
- package/src/components/artifacts/editable-presentation.tsx +36 -18
- package/src/components/artifacts/editable-spreadsheet.tsx +5 -2
- package/src/components/artifacts/index.ts +44 -0
- package/src/components/artifacts/inline-html-document.ts +24 -0
- package/src/components/artifacts/latest-task-runner.ts +49 -0
- package/src/components/artifacts/presentation-editor.tsx +323 -67
- package/src/components/artifacts/published-html-artifact-frame.tsx +338 -5
- package/src/components/artifacts/session-artifact-viewer.tsx +376 -0
- package/src/components/artifacts/site-view.tsx +116 -0
- package/src/components/artifacts/spreadsheet-canvas.ts +5 -10
- package/src/components/artifacts/spreadsheet-general-display.ts +43 -0
- package/src/components/artifacts/spreadsheet-grid.tsx +12 -13
- package/src/components/artifacts/visualization-assets/base.css +1015 -0
- package/src/components/artifacts/visualization-assets/helpers.html +349 -0
- package/src/components/artifacts/visualization-assets.gen.ts +3 -0
- package/src/components/browser-select-control.tsx +312 -0
- package/src/components/browser-viewer.tsx +1054 -314
- package/src/components/chat-composer.tsx +131 -85
- package/src/components/child-session-link.tsx +27 -0
- package/src/components/claude-mark.tsx +10 -0
- package/src/components/code-editor.tsx +13 -16
- package/src/components/composer-transcription-control.tsx +7 -5
- package/src/components/composer.tsx +376 -49
- package/src/components/computer-viewer.tsx +1041 -329
- package/src/components/copy-button.tsx +13 -5
- package/src/components/desktop-viewer.tsx +1 -1
- package/src/components/enrollment-consent.tsx +65 -7
- package/src/components/enrollment-device-flow.tsx +1 -1
- package/src/components/file-browser.tsx +158 -34
- package/src/components/fleet-tile.tsx +8 -16
- package/src/components/generated-video-player.tsx +4 -2
- package/src/components/grok-mark.tsx +33 -0
- package/src/components/human-input-form.tsx +455 -114
- package/src/components/human-input-surface.tsx +18 -7
- package/src/components/interaction-intervention-banner.tsx +2 -2
- package/src/components/machine-card.tsx +119 -4
- package/src/components/machine-dock-bar.tsx +1 -1
- package/src/components/machine-input-display.ts +23 -2
- package/src/components/machines/machine-detail.tsx +52 -2
- package/src/components/machines/machine-operation-policy.tsx +179 -0
- package/src/components/machines-dashboard.tsx +8 -17
- package/src/components/markdown-table-layout.ts +132 -0
- package/src/components/markdown.tsx +473 -44
- package/src/components/message-timeline.tsx +2498 -663
- package/src/components/model-mark.tsx +90 -0
- package/src/components/model-picker.tsx +15 -4
- package/src/components/model-policy-picker-menu.tsx +424 -0
- package/src/components/model-policy-picker.tsx +337 -381
- package/src/components/open-geni-chat.tsx +319 -0
- package/src/components/open-geni-links.tsx +179 -0
- package/src/components/openrouter-mark.tsx +13 -0
- package/src/components/pierre-diff.tsx +41 -16
- package/src/components/pierre-file.tsx +36 -11
- package/src/components/preview-loading.tsx +154 -0
- package/src/components/queue-item-content.ts +14 -0
- package/src/components/queue-surface-implementation.tsx +132 -42
- package/src/components/queue-surface-state.tsx +3 -1
- package/src/components/sandbox-files.tsx +267 -35
- package/src/components/sandbox-terminal.tsx +48 -11
- package/src/components/sandbox-workspace.tsx +337 -135
- package/src/components/session-capability-frame.tsx +192 -0
- package/src/components/session-chrome.tsx +1027 -328
- package/src/components/session-commands-panel.tsx +126 -0
- package/src/components/session-commands.tsx +18 -0
- package/src/components/session-connection-request.tsx +97 -0
- package/src/components/session-conversation.tsx +512 -0
- package/src/components/session-list.tsx +250 -0
- package/src/components/session-mcp-capability-card.tsx +680 -0
- package/src/components/session-status.tsx +1 -1
- package/src/components/timeline-anchor.tsx +119 -0
- package/src/components/timeline-annotation-chrome.tsx +196 -0
- package/src/components/timeline-annotation-layout.ts +268 -0
- package/src/components/timeline-annotation-markers.tsx +185 -0
- package/src/components/timeline-annotation-reveal-context.ts +9 -0
- package/src/components/timeline-annotation-selection.tsx +106 -54
- package/src/components/timeline-annotation-shared.ts +245 -0
- package/src/components/timeline-annotations-dialog.tsx +185 -128
- package/src/components/timeline-annotations.tsx +189 -45
- package/src/components/timeline-reading-progress.ts +80 -0
- package/src/components/timeline-search.tsx +168 -0
- package/src/components/timeline-settlement.ts +60 -0
- package/src/components/tip-follow.ts +70 -7
- package/src/components/tooltip.tsx +38 -5
- package/src/components/usage-limit-notice.tsx +179 -0
- package/src/components/usage-member-list.tsx +792 -0
- package/src/components/usage-meter.tsx +382 -0
- package/src/components/use-viewer-menu-dismiss.ts +33 -0
- package/src/components/user-message-body.tsx +194 -49
- package/src/components/workspace-dock.tsx +141 -175
- package/src/composer.ts +6 -1
- package/src/connect-account-identity.tsx +34 -0
- package/src/connect-accounts.tsx +233 -0
- package/src/connect-chooser.tsx +336 -0
- package/src/connect-panel.tsx +99 -0
- package/src/connect-setup.tsx +307 -0
- package/src/connect.ts +60 -0
- package/src/connection-assets.d.ts +4 -0
- package/src/connection-catalog.tsx +162 -0
- package/src/connection-discovery.tsx +235 -0
- package/src/connection-installed.tsx +51 -0
- package/src/connection-logo.tsx +37 -0
- package/src/connection-service-logo.tsx +55 -0
- package/src/connection-service-presentation.ts +46 -0
- package/src/connection-skeleton.tsx +16 -0
- package/src/connection-type-picker.tsx +36 -0
- package/src/conversation-timeline.ts +92 -0
- package/src/desktop.ts +24 -0
- package/src/device-authorization.tsx +98 -0
- package/src/diffs.ts +16 -0
- package/src/discovery-cache.ts +42 -0
- package/src/editor.ts +13 -0
- package/src/embedded-session-client.ts +104 -0
- package/src/file-node-visibility.ts +66 -0
- package/src/hooks/channel-cache.ts +104 -0
- package/src/hooks/internal.ts +3 -2
- package/src/hooks/latest-question.ts +164 -0
- package/src/hooks/shared-machines-list.ts +239 -0
- package/src/hooks/use-attached-browsers.ts +5 -1
- package/src/hooks/use-available-models.ts +20 -14
- package/src/hooks/use-browser-frame-stream.ts +25 -3
- package/src/hooks/use-browser-session.ts +271 -71
- package/src/hooks/use-browser-sessions.ts +7 -1
- package/src/hooks/use-channels.ts +32 -10
- package/src/hooks/use-codex-accounts.ts +78 -21
- package/src/hooks/use-composer.ts +1034 -320
- package/src/hooks/use-computer-frame-stream.ts +39 -16
- package/src/hooks/use-computer-input-posture.ts +94 -0
- package/src/hooks/use-computer-session.ts +110 -32
- package/src/hooks/use-computer-sessions.ts +8 -1
- package/src/hooks/use-connect.ts +23 -0
- package/src/hooks/use-desktop-stream.ts +19 -28
- package/src/hooks/use-file-attachments.ts +118 -10
- package/src/hooks/use-goal.ts +36 -9
- package/src/hooks/use-human-input.ts +31 -4
- package/src/hooks/use-last-started-turn-policy.ts +15 -13
- package/src/hooks/use-machine-chip.ts +23 -6
- package/src/hooks/use-machines.ts +104 -6
- package/src/hooks/use-sandbox-files.ts +253 -150
- package/src/hooks/use-sandbox-git.ts +58 -29
- package/src/hooks/use-session-background-commands.ts +67 -0
- package/src/hooks/use-session-capabilities.ts +21 -2
- package/src/hooks/use-session-events.ts +759 -433
- package/src/hooks/use-session-lineage.ts +28 -6
- package/src/hooks/use-session-mcp-approval-policy.ts +13 -5
- package/src/hooks/use-session.ts +75 -16
- package/src/hooks/use-slash-commands.ts +6 -11
- package/src/hooks/use-turn-queue.ts +113 -13
- package/src/hooks/use-usage.ts +100 -0
- package/src/hooks/use-voice-input.ts +12 -1
- package/src/hooks/use-workspace-capture.ts +3 -2
- package/src/hooks/use-workspace-edit.ts +23 -5
- package/src/hooks/use-workspace-sessions.ts +99 -11
- package/src/human-input.ts +12 -1
- package/src/identity-link-accounts.tsx +148 -0
- package/src/identity-link-consent.tsx +192 -0
- package/src/index.ts +157 -12
- package/src/interaction.ts +1 -0
- package/src/lib/error-message.ts +37 -0
- package/src/lib/format.ts +150 -14
- package/src/lib/host-theme.ts +511 -0
- package/src/lib/interaction-errors.ts +33 -0
- package/src/lib/menu-styles.ts +44 -0
- package/src/lib/pierre-diffs-loader.ts +53 -0
- package/src/lib/workbench-peers.ts +62 -0
- package/src/lib/xterm-theme.ts +23 -21
- package/src/machines.ts +9 -1
- package/src/mcp-connection-status.ts +35 -0
- package/src/model-policy.ts +223 -69
- package/src/older-history.ts +87 -0
- package/src/plugin-details.tsx +185 -0
- package/src/plugin-discovery.tsx +196 -0
- package/src/provider.tsx +55 -14
- package/src/realtime/dropdown-menu.tsx +19 -12
- package/src/realtime/realtime-control.tsx +133 -46
- package/src/session-auth-recommendation.ts +48 -0
- package/src/session-capability-policy.ts +83 -0
- package/src/session-context.ts +1 -0
- package/src/session-ui.ts +66 -2
- package/src/session.ts +18 -1
- package/src/sites-ui.tsx +402 -0
- package/src/sites.ts +3 -0
- package/src/skill-discovery.tsx +208 -0
- package/src/terminal.ts +26 -0
- package/src/timeline/activity-rail.tsx +171 -80
- package/src/timeline/allowance-exhausted-row.tsx +86 -0
- package/src/timeline/compaction-copy.ts +42 -0
- package/src/timeline/entrance.tsx +28 -3
- package/src/timeline/fleet-decision-projection.ts +2 -1
- package/src/timeline/fleet-decision-row.tsx +1 -0
- package/src/timeline/genie-loading.tsx +136 -0
- package/src/timeline/index.ts +11 -0
- package/src/timeline/knowledge-receipt.tsx +100 -0
- package/src/timeline/parsers.ts +2 -2
- package/src/timeline/platform-activity-row.tsx +216 -0
- package/src/timeline/presented-image.ts +49 -0
- package/src/timeline/projection.ts +1600 -84
- package/src/timeline/registry.ts +15 -3
- package/src/timeline/retained-image.ts +97 -0
- package/src/timeline/rolling-activity.tsx +92 -0
- package/src/timeline/screenshot-lightbox.tsx +115 -17
- package/src/timeline/shared.tsx +47 -15
- package/src/timeline/startup-preference.ts +33 -0
- package/src/timeline/startup-timings.tsx +145 -0
- package/src/timeline/tool-display-name.ts +8 -6
- package/src/timeline/tool-renderers.tsx +497 -128
- package/src/timeline/turn-summary.tsx +208 -44
- package/src/timeline/types.ts +186 -7
- package/src/types/machines.ts +10 -0
- package/src/usage/allowance-copy.ts +64 -0
- package/src/usage/summary.ts +93 -0
- package/src/usage.ts +50 -0
- package/styles/compiled.css +2098 -757
- package/styles/connect.css +284 -0
- package/styles/connect.d.ts +1 -0
- package/styles/effective-tokens.css +1 -0
- package/styles/index.css +201 -9
- package/styles/responsive.css +27 -1
- package/styles/session-capability.css +44 -0
- package/styles/tokens.css +135 -65
- package/dist/chunk-5UQPNLIO.js.map +0 -1
- package/dist/chunk-6KLX2RH5.js.map +0 -1
- package/dist/chunk-7WCLAEFV.js.map +0 -1
- package/dist/chunk-B6WPZSTT.js.map +0 -1
- package/dist/chunk-FK6VG4LL.js +0 -90
- package/dist/chunk-FK6VG4LL.js.map +0 -1
- package/dist/chunk-HA46CYQK.js.map +0 -1
- package/dist/chunk-HUIKIDM5.js.map +0 -1
- package/dist/chunk-IGC6A2ZI.js.map +0 -1
- package/dist/chunk-KCGXPP5V.js.map +0 -1
- package/dist/chunk-KZ73RL76.js.map +0 -1
- package/dist/chunk-LAKLF4PA.js +0 -141
- package/dist/chunk-LAKLF4PA.js.map +0 -1
- package/dist/chunk-LLOLUHVG.js.map +0 -1
- package/dist/chunk-MKPIAGVL.js +0 -465
- package/dist/chunk-MKPIAGVL.js.map +0 -1
- package/dist/chunk-PEI6RANI.js.map +0 -1
- package/dist/chunk-R3AZOAB5.js.map +0 -1
- package/dist/chunk-WSK7G5LE.js +0 -170
- package/dist/chunk-WSK7G5LE.js.map +0 -1
- package/dist/chunk-XBZWOM2K.js +0 -218
- package/dist/chunk-XBZWOM2K.js.map +0 -1
- package/dist/chunk-Y7OEDUJ5.js +0 -8810
- package/dist/chunk-Y7OEDUJ5.js.map +0 -1
- package/dist/fleet-decision-row-GGCAT4E4.js.map +0 -1
- package/dist/hooks/use-packs.d.ts +0 -32
- package/dist/interactive-workbench-viewers-TOHBXJEE.js +0 -15
- package/dist/queue-surface-implementation-2KVJTYXH.js.map +0 -1
- package/dist/timeline-annotation-selection-3L7LHGG2.js +0 -187
- package/dist/timeline-annotation-selection-3L7LHGG2.js.map +0 -1
- package/dist/timeline-annotations-dialog-U7EVLR75.js +0 -196
- package/dist/timeline-annotations-dialog-U7EVLR75.js.map +0 -1
- package/src/hooks/use-packs.ts +0 -157
- /package/dist/{interactive-workbench-viewers-TOHBXJEE.js.map → browser-viewer-GTR5XQ7X.js.map} +0 -0
package/src/index.ts
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
export { sessionAuthRecommendation } from "./session-auth-recommendation";
|
|
2
|
+
export {
|
|
3
|
+
SessionConnectionRequest,
|
|
4
|
+
type SessionConnectionRequestProps,
|
|
5
|
+
} from "./components/session-connection-request";
|
|
6
|
+
export {
|
|
7
|
+
SessionMcpCapabilityCard,
|
|
8
|
+
McpConnectionCard,
|
|
9
|
+
type McpConnectionCardProps,
|
|
10
|
+
type SessionMcpCapabilityCardProps,
|
|
11
|
+
} from "./components/session-mcp-capability-card";
|
|
12
|
+
export {
|
|
13
|
+
SessionCapabilityFrame,
|
|
14
|
+
type SessionCapabilityFrameProps,
|
|
15
|
+
} from "./components/session-capability-frame";
|
|
16
|
+
export {
|
|
17
|
+
attachSessionCapability,
|
|
18
|
+
completeSessionCapabilityOAuth,
|
|
19
|
+
} from "./session-capability-policy";
|
|
20
|
+
export { retainedImageId } from "./components/markdown";
|
|
1
21
|
// oxlint-disable-next-line typescript/triple-slash-reference -- package consumers must load the ambient type for this optional untyped peer without emitting a runtime import.
|
|
2
22
|
/// <reference path="./types/external.d.ts" />
|
|
3
23
|
|
|
@@ -23,11 +43,22 @@ export type {
|
|
|
23
43
|
SessionClientLike,
|
|
24
44
|
} from "./client";
|
|
25
45
|
export { OpenGeniProvider } from "./provider";
|
|
26
|
-
export type { OpenGeniProviderProps } from "./provider";
|
|
46
|
+
export type { OpenGeniProviderProps, ErrorMessageFormatter } from "./provider";
|
|
27
47
|
export { useOpenGeni, useOpenGeniClient } from "./session-context";
|
|
28
48
|
export { useVideoArtifactPlaybackLoader } from "./hooks/use-video-artifact-playback";
|
|
29
49
|
export type { ClientOverride, OpenGeniContextValue } from "./session-context";
|
|
50
|
+
export { createEmbeddedSessionClient } from "./embedded-session-client";
|
|
51
|
+
export type {
|
|
52
|
+
ComposerDraftMapContext,
|
|
53
|
+
CreateEmbeddedSessionClientOptions,
|
|
54
|
+
} from "./embedded-session-client";
|
|
30
55
|
export { usePageLiveActivity } from "./hooks/internal";
|
|
56
|
+
export { filePathVisibility, visibleFileTree } from "./file-node-visibility";
|
|
57
|
+
export type {
|
|
58
|
+
FileNodeVisibilityContext,
|
|
59
|
+
FileNodeVisibilityPredicate,
|
|
60
|
+
FilePathVisibility,
|
|
61
|
+
} from "./file-node-visibility";
|
|
31
62
|
|
|
32
63
|
// Hooks
|
|
33
64
|
export { useSession, isTitleEvent } from "./hooks/use-session";
|
|
@@ -37,16 +68,17 @@ export {
|
|
|
37
68
|
SESSION_EVENT_BROWSER_MAX_COUNT,
|
|
38
69
|
SESSION_EVENT_BROWSER_PENDING_MAX_BYTES,
|
|
39
70
|
SESSION_EVENT_BROWSER_PENDING_MAX_COUNT,
|
|
40
|
-
SESSION_EVENT_BROWSER_SINGLE_EVENT_MAX_BYTES,
|
|
41
71
|
boundBrowserSessionEventWindow,
|
|
42
72
|
useSessionEvents,
|
|
43
73
|
} from "./hooks/use-session-events";
|
|
74
|
+
export { createOlderHistoryLoadReceipt } from "./older-history";
|
|
44
75
|
export type {
|
|
45
76
|
BrowserSessionEventWindow,
|
|
46
77
|
SessionEventsConnectionState,
|
|
47
78
|
UseSessionEventsOptions,
|
|
48
79
|
UseSessionEventsResult,
|
|
49
80
|
} from "./hooks/use-session-events";
|
|
81
|
+
export type { OlderHistoryLoader, OlderHistoryLoadReceipt } from "./older-history";
|
|
50
82
|
export {
|
|
51
83
|
useComposer,
|
|
52
84
|
composeSendInput,
|
|
@@ -54,7 +86,13 @@ export {
|
|
|
54
86
|
shouldSubmitOnKey,
|
|
55
87
|
FILE_ONLY_MESSAGE_TEXT,
|
|
56
88
|
} from "./hooks/use-composer";
|
|
57
|
-
export type {
|
|
89
|
+
export type {
|
|
90
|
+
ComposerControllerState,
|
|
91
|
+
ComposerPolicy,
|
|
92
|
+
ComposerSendExtras,
|
|
93
|
+
ComposerState,
|
|
94
|
+
UseComposerOptions,
|
|
95
|
+
} from "./hooks/use-composer";
|
|
58
96
|
export {
|
|
59
97
|
VOICE_RECORDING_CLIENT_MAX_DURATION_SECONDS,
|
|
60
98
|
VOICE_RECORDING_OWNER_HEARTBEAT_MILLISECONDS,
|
|
@@ -92,7 +130,12 @@ export type {
|
|
|
92
130
|
VoiceRecordingTranscriptionState,
|
|
93
131
|
VoiceRecordingUploadState,
|
|
94
132
|
} from "./voice-recording-store";
|
|
95
|
-
export {
|
|
133
|
+
export {
|
|
134
|
+
COMPOSER_MODEL_UNAVAILABLE_MESSAGE,
|
|
135
|
+
COMPOSER_PAYMENT_REQUIRED_MESSAGE,
|
|
136
|
+
composerSubmissionErrorMessage,
|
|
137
|
+
isModelUnavailableSubmissionError,
|
|
138
|
+
} from "./lib/format";
|
|
96
139
|
export {
|
|
97
140
|
INITIAL_TRANSCRIPTION_CONTROL_STATE,
|
|
98
141
|
appendFinalTranscript,
|
|
@@ -129,7 +172,12 @@ export type {
|
|
|
129
172
|
} from "./hooks/use-last-started-turn-policy";
|
|
130
173
|
export { QueueSurface } from "./components/queue-surface";
|
|
131
174
|
export type { QueueSurfaceProps } from "./components/queue-surface";
|
|
132
|
-
export {
|
|
175
|
+
export {
|
|
176
|
+
SessionChrome,
|
|
177
|
+
sessionChromeGoalPillExplanation,
|
|
178
|
+
sessionChromeGoalPillLabel,
|
|
179
|
+
sessionChromeGoalPillState,
|
|
180
|
+
} from "./components/session-chrome";
|
|
133
181
|
export type {
|
|
134
182
|
SessionChromeAgentsSignal,
|
|
135
183
|
SessionChromeProps,
|
|
@@ -163,6 +211,11 @@ export type {
|
|
|
163
211
|
UseWorkspaceSessionsOptions,
|
|
164
212
|
UseWorkspaceSessionsResult,
|
|
165
213
|
} from "./hooks/use-workspace-sessions";
|
|
214
|
+
export { useSessionBackgroundCommands } from "./hooks/use-session-background-commands";
|
|
215
|
+
export type {
|
|
216
|
+
UseSessionBackgroundCommandsOptions,
|
|
217
|
+
UseSessionBackgroundCommandsResult,
|
|
218
|
+
} from "./hooks/use-session-background-commands";
|
|
166
219
|
export { useSessionLineage, isLineageRefreshEvent } from "./hooks/use-session-lineage";
|
|
167
220
|
export type {
|
|
168
221
|
UseSessionLineageOptions,
|
|
@@ -188,8 +241,6 @@ export type {
|
|
|
188
241
|
UseRigChangesOptions,
|
|
189
242
|
UseRigChangesResult,
|
|
190
243
|
} from "./hooks/use-rigs";
|
|
191
|
-
export { usePacks } from "./hooks/use-packs";
|
|
192
|
-
export type { UsePacksOptions, UsePacksResult } from "./hooks/use-packs";
|
|
193
244
|
export { useWorkspaces } from "./hooks/use-workspaces";
|
|
194
245
|
export type { UseWorkspacesOptions, UseWorkspacesResult } from "./hooks/use-workspaces";
|
|
195
246
|
export { useBillingUsage } from "./hooks/use-billing-usage";
|
|
@@ -310,11 +361,14 @@ export {
|
|
|
310
361
|
toolDisplayName,
|
|
311
362
|
} from "./timeline";
|
|
312
363
|
export type {
|
|
364
|
+
GroupTimelineOptions,
|
|
313
365
|
ActivityItem,
|
|
314
366
|
AgentMessageItem,
|
|
315
367
|
AuthNeededItem,
|
|
316
368
|
ContextCompactionItem,
|
|
317
369
|
GoalItem,
|
|
370
|
+
HumanInputAnswerSummary,
|
|
371
|
+
HumanInputItem,
|
|
318
372
|
MachineInputBatchItem,
|
|
319
373
|
MachineInputMember,
|
|
320
374
|
NoticeItem,
|
|
@@ -377,6 +431,8 @@ export type {
|
|
|
377
431
|
TurnSummaryFacetResult,
|
|
378
432
|
TurnSummaryOptions,
|
|
379
433
|
TurnSummaryProps,
|
|
434
|
+
TurnSummaryStatus,
|
|
435
|
+
LightboxControlLabels,
|
|
380
436
|
} from "./timeline";
|
|
381
437
|
|
|
382
438
|
// Pure provider-shape parsers (exec banner, V4A diff, tool arguments, …)
|
|
@@ -430,6 +486,16 @@ export type { CommandPaletteProps } from "./components/command-palette";
|
|
|
430
486
|
|
|
431
487
|
// Components
|
|
432
488
|
export { ChatComposer } from "./components/chat-composer";
|
|
489
|
+
export { conversationTimeline } from "./conversation-timeline";
|
|
490
|
+
export { SessionConversation } from "./components/session-conversation";
|
|
491
|
+
export { SessionList } from "./components/session-list";
|
|
492
|
+
export type { SessionListLabels, SessionListProps } from "./components/session-list";
|
|
493
|
+
export { OpenGeniChat } from "./components/open-geni-chat";
|
|
494
|
+
export type { OpenGeniChatLabels, OpenGeniChatProps } from "./components/open-geni-chat";
|
|
495
|
+
export type {
|
|
496
|
+
SessionConversationLabels,
|
|
497
|
+
SessionConversationProps,
|
|
498
|
+
} from "./components/session-conversation";
|
|
433
499
|
export type { ChatComposerProps } from "./components/chat-composer";
|
|
434
500
|
export { ComposerTranscriptionControl } from "./components/composer-transcription-control";
|
|
435
501
|
export type {
|
|
@@ -443,15 +509,16 @@ export type { ModelPickerProps } from "./components/model-picker";
|
|
|
443
509
|
export {
|
|
444
510
|
BillingClassMark,
|
|
445
511
|
ModelPolicyPicker,
|
|
446
|
-
ModelPolicyPickerMenu,
|
|
447
512
|
PickerAnimatedPage,
|
|
448
513
|
PickerBackHeader,
|
|
449
514
|
PickerNavRow,
|
|
450
515
|
defaultModelPolicyPickerMessages,
|
|
451
516
|
} from "./components/model-policy-picker";
|
|
517
|
+
export { ModelPolicyPickerMenu } from "./components/model-policy-picker-menu";
|
|
452
518
|
export type {
|
|
453
519
|
ModelPolicyPickerMessages,
|
|
454
520
|
ModelPolicyPickerProps,
|
|
521
|
+
ModelPolicyPickerGroupPresentation,
|
|
455
522
|
} from "./components/model-policy-picker";
|
|
456
523
|
export {
|
|
457
524
|
advancedSourceSummary,
|
|
@@ -466,22 +533,70 @@ export {
|
|
|
466
533
|
labelLatencyMode,
|
|
467
534
|
labelReasoningEffort,
|
|
468
535
|
payerSummaryForModel,
|
|
536
|
+
modelUsesCredits,
|
|
469
537
|
projectClientModelRows,
|
|
470
538
|
projectPickerRows,
|
|
471
539
|
runnableLatencyModesForModel,
|
|
472
540
|
sortPickerRows,
|
|
473
541
|
} from "./model-policy";
|
|
474
|
-
export type {
|
|
542
|
+
export type {
|
|
543
|
+
GroupPickerRowsOptions,
|
|
544
|
+
LatencyModeId,
|
|
545
|
+
PickerBillingClass,
|
|
546
|
+
PickerModelRow,
|
|
547
|
+
} from "./model-policy";
|
|
548
|
+
export { ChatGptMark, ModelMark, ModelName, modelHasMark } from "./components/model-mark";
|
|
549
|
+
export {
|
|
550
|
+
humanizeModelSlug,
|
|
551
|
+
isRawModelLabel,
|
|
552
|
+
modelDisplayName,
|
|
553
|
+
modelSlug,
|
|
554
|
+
modelVendor,
|
|
555
|
+
} from "@opengeni/sdk/model-display";
|
|
556
|
+
export type { ModelDisplayInput, ModelVendor } from "@opengeni/sdk/model-display";
|
|
475
557
|
export { MessageTimeline, TimelineRow } from "./components/message-timeline";
|
|
476
558
|
export { GeneratedVideoPlayer } from "./components/generated-video-player";
|
|
477
559
|
export type { GeneratedVideoPlayerProps } from "./components/generated-video-player";
|
|
478
560
|
export type { MessageTimelineProps } from "./components/message-timeline";
|
|
561
|
+
export type { RenderAllowanceExhausted } from "./timeline/allowance-exhausted-row";
|
|
562
|
+
export type { AllowanceLabels, AllowanceScope } from "./usage/allowance-copy";
|
|
563
|
+
export type { TimelineSearchTarget } from "./components/timeline-search";
|
|
479
564
|
export { UserMessageBody, userMessageLikelyNeedsDisclosure } from "./components/user-message-body";
|
|
480
|
-
export type {
|
|
481
|
-
|
|
565
|
+
export type {
|
|
566
|
+
UserMessageBodyProps,
|
|
567
|
+
UserMessageDisclosureLabels,
|
|
568
|
+
} from "./components/user-message-body";
|
|
569
|
+
export {
|
|
570
|
+
Markdown,
|
|
571
|
+
sandboxFileLocationFromHref,
|
|
572
|
+
sandboxFilePathFromHref,
|
|
573
|
+
} from "./components/markdown";
|
|
574
|
+
export type {
|
|
575
|
+
MarkdownProps,
|
|
576
|
+
MarkdownInteractiveBlock,
|
|
577
|
+
SandboxFileLocation,
|
|
578
|
+
} from "./components/markdown";
|
|
579
|
+
export {
|
|
580
|
+
OpenGeniLinkProvider,
|
|
581
|
+
chainLinkResolvers,
|
|
582
|
+
sessionLinkResolver,
|
|
583
|
+
useOpenGeniLinkResolver,
|
|
584
|
+
viewerLinkResolver,
|
|
585
|
+
} from "./components/open-geni-links";
|
|
586
|
+
export type {
|
|
587
|
+
OpenGeniLinkResolution,
|
|
588
|
+
OpenGeniLinkResolver,
|
|
589
|
+
OpenGeniLinkTarget,
|
|
590
|
+
OpenGeniViewerTarget,
|
|
591
|
+
} from "./components/open-geni-links";
|
|
592
|
+
export { parseOpenGeniLink } from "@opengeni/sdk";
|
|
593
|
+
export {
|
|
594
|
+
ArtifactLabelsProvider,
|
|
595
|
+
DEFAULT_ARTIFACT_LABELS,
|
|
596
|
+
type ArtifactLabels,
|
|
597
|
+
} from "./components/artifacts/artifact-chrome";
|
|
482
598
|
export { CopyButton, CopyHoverFrame } from "./components/copy-button";
|
|
483
599
|
export { copyTextToClipboard, tableElementToTsv } from "./lib/clipboard";
|
|
484
|
-
export type { MarkdownProps } from "./components/markdown";
|
|
485
600
|
export { SessionStatus, StatusDot, SESSION_STATUS_META } from "./components/session-status";
|
|
486
601
|
export type {
|
|
487
602
|
SessionStatusProps,
|
|
@@ -501,6 +616,22 @@ export type { WorkbenchChangesProps } from "./components/workbench-changes";
|
|
|
501
616
|
export { DiffView } from "./components/diff-view";
|
|
502
617
|
export type { DiffViewProps, DiffTheme } from "./components/diff-view";
|
|
503
618
|
export { PierreDiff } from "./components/pierre-diff";
|
|
619
|
+
// Opt in to the optional `@pierre/diffs` peer with `enablePierreDiffs()` from
|
|
620
|
+
// `@opengeni/react/diffs`; the root entry never names the peer.
|
|
621
|
+
export { registerPierreDiffs, type PierreDiffsLoader } from "./lib/pierre-diffs-loader";
|
|
622
|
+
// Bundler-visible optional workbench imports live only on opt-in subpaths.
|
|
623
|
+
export {
|
|
624
|
+
registerSandboxTerminal,
|
|
625
|
+
registerCodeEditor,
|
|
626
|
+
registerDesktopViewer,
|
|
627
|
+
} from "./lib/workbench-peers";
|
|
628
|
+
export type {
|
|
629
|
+
WorkbenchPeerLoader,
|
|
630
|
+
SandboxTerminalPeers,
|
|
631
|
+
CodeEditorPeers,
|
|
632
|
+
CodeEditorLanguage,
|
|
633
|
+
CodeEditorLanguages,
|
|
634
|
+
} from "./lib/workbench-peers";
|
|
504
635
|
export type { PierreDiffProps } from "./components/pierre-diff";
|
|
505
636
|
export { PierreFile } from "./components/pierre-file";
|
|
506
637
|
export type { PierreFileProps } from "./components/pierre-file";
|
|
@@ -564,8 +695,22 @@ export {
|
|
|
564
695
|
formatClockTime,
|
|
565
696
|
formatRelativeTime,
|
|
566
697
|
humanizeFailureReason,
|
|
698
|
+
presentFailure,
|
|
567
699
|
isCreditExhaustion,
|
|
568
700
|
stringifyPayload,
|
|
569
701
|
truncate,
|
|
570
702
|
tryParseJson,
|
|
571
703
|
} from "./lib/format";
|
|
704
|
+
export { SessionCommandsPanel } from "./components/session-commands-panel";
|
|
705
|
+
export { SessionCommands } from "./components/session-commands";
|
|
706
|
+
|
|
707
|
+
export { KnowledgeActivityProvider } from "./timeline/knowledge-receipt";
|
|
708
|
+
export type { KnowledgeActivityActions } from "./timeline/knowledge-receipt";
|
|
709
|
+
|
|
710
|
+
export { StartupTimings } from "./timeline/startup-timings";
|
|
711
|
+
export { setStartupDetails, useStartupDetails } from "./timeline/startup-preference";
|
|
712
|
+
|
|
713
|
+
export { ClaudeMark } from "./components/claude-mark";
|
|
714
|
+
export { AnthropicMark } from "./components/anthropic-mark";
|
|
715
|
+
export { OpenRouterMark } from "./components/openrouter-mark";
|
|
716
|
+
export { GrokMark } from "./components/grok-mark";
|
package/src/interaction.ts
CHANGED
|
@@ -58,6 +58,7 @@ export type {
|
|
|
58
58
|
} from "./hooks/use-browser-identities";
|
|
59
59
|
export { useBrowserSession } from "./hooks/use-browser-session";
|
|
60
60
|
export type {
|
|
61
|
+
BrowserInputFailure,
|
|
61
62
|
UseBrowserSessionOptions,
|
|
62
63
|
UseBrowserSessionResult,
|
|
63
64
|
} from "./hooks/use-browser-session";
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { formatErrorMessage } from "@opengeni/sdk";
|
|
2
|
+
import { createContext, useCallback, useContext, useRef } from "react";
|
|
3
|
+
|
|
4
|
+
/** Original diagnostic error and the library's neutral, state-aware display copy. */
|
|
5
|
+
export type ErrorMessageFormatter = (error: unknown, defaultMessage: string) => string | undefined;
|
|
6
|
+
|
|
7
|
+
export const ErrorMessageContext = createContext<ErrorMessageFormatter | undefined>(undefined);
|
|
8
|
+
|
|
9
|
+
const originalCauses = new WeakMap<Error, unknown>();
|
|
10
|
+
|
|
11
|
+
/** Keep existing Error-typed state while retaining non-Error rejections privately. */
|
|
12
|
+
export function normalizeError(cause: unknown): Error {
|
|
13
|
+
if (cause instanceof Error) return cause;
|
|
14
|
+
const error = new Error(String(cause));
|
|
15
|
+
originalCauses.set(error, cause);
|
|
16
|
+
return error;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/** Presentation only: callers retain their errors and delivery/retry state. */
|
|
20
|
+
export function useErrorMessage(): (error: unknown, defaultMessage?: string) => string {
|
|
21
|
+
const formatter = useContext(ErrorMessageContext);
|
|
22
|
+
const formatterRef = useRef(formatter);
|
|
23
|
+
formatterRef.current = formatter;
|
|
24
|
+
return useCallback((error, fallback) => {
|
|
25
|
+
const original =
|
|
26
|
+
error instanceof Error && originalCauses.has(error) ? originalCauses.get(error) : error;
|
|
27
|
+
const defaultMessage = fallback ?? formatErrorMessage(original);
|
|
28
|
+
try {
|
|
29
|
+
const message = formatterRef.current?.(original, defaultMessage);
|
|
30
|
+
return typeof message === "string" && message ? message : defaultMessage;
|
|
31
|
+
} catch {
|
|
32
|
+
// Host presentation must never interrupt delivery-state settlement or
|
|
33
|
+
// cause an already-started mutation to be retried.
|
|
34
|
+
return defaultMessage;
|
|
35
|
+
}
|
|
36
|
+
}, []);
|
|
37
|
+
}
|
package/src/lib/format.ts
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
|
-
import { OpenGeniApiError } from "@opengeni/sdk";
|
|
1
|
+
import { formatErrorMessage, OpenGeniApiError } from "@opengeni/sdk";
|
|
2
|
+
|
|
3
|
+
const clockTimeFormatter = new Intl.DateTimeFormat(undefined, {
|
|
4
|
+
month: "short",
|
|
5
|
+
day: "numeric",
|
|
6
|
+
hour: "numeric",
|
|
7
|
+
minute: "2-digit",
|
|
8
|
+
});
|
|
2
9
|
|
|
3
10
|
/** Local finished-at stamp for message footers: "Aug 2, 3:42 PM" / locale-equivalent. */
|
|
4
11
|
export function formatClockTime(iso: string): string {
|
|
@@ -6,12 +13,7 @@ export function formatClockTime(iso: string): string {
|
|
|
6
13
|
if (Number.isNaN(then.getTime())) {
|
|
7
14
|
return "";
|
|
8
15
|
}
|
|
9
|
-
return
|
|
10
|
-
month: "short",
|
|
11
|
-
day: "numeric",
|
|
12
|
-
hour: "numeric",
|
|
13
|
-
minute: "2-digit",
|
|
14
|
-
});
|
|
16
|
+
return clockTimeFormatter.format(then);
|
|
15
17
|
}
|
|
16
18
|
|
|
17
19
|
/** Compact relative time: "now", "42s", "7m", "3h", "2d", then a date. */
|
|
@@ -107,7 +109,13 @@ export function tryParseJson(text: string): unknown {
|
|
|
107
109
|
* workspace no longer has.
|
|
108
110
|
*/
|
|
109
111
|
export const CREDIT_EXHAUSTION_MESSAGE =
|
|
110
|
-
"Out of
|
|
112
|
+
"Out of credits — this workspace's balance is empty. Add credits to continue; the conversation is preserved.";
|
|
113
|
+
|
|
114
|
+
/** A usage ceiling refused the send; the default allowance wording, plus what is safe. */
|
|
115
|
+
export const COMPOSER_MEMBER_ALLOWANCE_MESSAGE =
|
|
116
|
+
"Usage limit reached. A workspace admin can raise this limit. Your draft is preserved.";
|
|
117
|
+
export const COMPOSER_WORKSPACE_ALLOWANCE_MESSAGE =
|
|
118
|
+
"Workspace usage limit reached. An organization admin can raise the workspace budget. Your draft is preserved.";
|
|
111
119
|
|
|
112
120
|
/**
|
|
113
121
|
* Actionable composer copy for an edge rejection before a turn is accepted.
|
|
@@ -115,14 +123,98 @@ export const CREDIT_EXHAUSTION_MESSAGE =
|
|
|
115
123
|
* actor-private draft or any finalized attachment.
|
|
116
124
|
*/
|
|
117
125
|
export const COMPOSER_PAYMENT_REQUIRED_MESSAGE =
|
|
118
|
-
"
|
|
126
|
+
"Your organization doesn't have enough credits to send this message. Add credits or choose a model with another payment source. Your message and attachments are saved.";
|
|
127
|
+
|
|
128
|
+
/** Trusted, composer-owned guidance; unlike remote diagnostic prose, this is UI copy. */
|
|
129
|
+
export class ComposerStateError extends Error {}
|
|
130
|
+
|
|
131
|
+
/** A restored request has omitted credentials and must be reconciled, not replayed. */
|
|
132
|
+
export class ComposerReconciliationRequiredError extends ComposerStateError {
|
|
133
|
+
constructor() {
|
|
134
|
+
super(
|
|
135
|
+
"Opengeni cannot safely retry this uncertain request after remount; reconcile the session before sending again.",
|
|
136
|
+
);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
export class ComposerWorkspaceControlUnavailableError extends Error {
|
|
141
|
+
constructor() {
|
|
142
|
+
super("@opengeni/react: workspace-scoped resume requires setWorkspaceInferenceState.");
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* The send named a model that is no longer in the live catalog (retired or
|
|
148
|
+
* removed). Retrying the same send cannot succeed; the person must choose
|
|
149
|
+
* another model, and the typed message stays recoverable via Edit message.
|
|
150
|
+
*/
|
|
151
|
+
export const COMPOSER_MODEL_UNAVAILABLE_MESSAGE =
|
|
152
|
+
"This chat's model is no longer available. Choose another model to continue. Your message is saved.";
|
|
153
|
+
|
|
154
|
+
/** `details.code` the API sets on a 422 for a model missing from the live catalog. */
|
|
155
|
+
export const MODEL_UNAVAILABLE_DETAIL_CODE = "model_unavailable";
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Is this send refusal "the model is no longer available"? Reads the typed
|
|
159
|
+
* `details.code`, and also the historical message so a refusal persisted
|
|
160
|
+
* before a reload (only its text survives) or from an older API is recognized.
|
|
161
|
+
*/
|
|
162
|
+
export function isModelUnavailableSubmissionError(error: Error): boolean {
|
|
163
|
+
if (error instanceof OpenGeniApiError && error.details?.code === MODEL_UNAVAILABLE_DETAIL_CODE) {
|
|
164
|
+
return true;
|
|
165
|
+
}
|
|
166
|
+
return (
|
|
167
|
+
error.message === COMPOSER_MODEL_UNAVAILABLE_MESSAGE ||
|
|
168
|
+
/^OpenGeni API 422: model is not available: /.test(error.message)
|
|
169
|
+
);
|
|
170
|
+
}
|
|
119
171
|
|
|
120
172
|
export function composerSubmissionErrorMessage(error: Error): string {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
173
|
+
if (error instanceof ComposerReconciliationRequiredError) {
|
|
174
|
+
return "This client cannot safely retry this uncertain request after remount; reconcile the session before sending again.";
|
|
175
|
+
}
|
|
176
|
+
if (error instanceof ComposerWorkspaceControlUnavailableError) {
|
|
177
|
+
return "This client cannot resume the workspace. Ask your administrator for a control-capable client.";
|
|
178
|
+
}
|
|
179
|
+
if (error instanceof ComposerStateError) return error.message;
|
|
180
|
+
if (error instanceof OpenGeniApiError && error.outcomeUnknown) return formatErrorMessage(error);
|
|
181
|
+
if (isModelUnavailableSubmissionError(error)) return COMPOSER_MODEL_UNAVAILABLE_MESSAGE;
|
|
182
|
+
if (error instanceof OpenGeniApiError && error.code === "allowance_exhausted") {
|
|
183
|
+
// OpenGeniAllowanceExhaustedError carries the scope; read it structurally
|
|
184
|
+
// so this startup-path helper adds no SDK or wording imports.
|
|
185
|
+
const message =
|
|
186
|
+
(error as { scope?: unknown }).scope === "workspace"
|
|
187
|
+
? COMPOSER_WORKSPACE_ALLOWANCE_MESSAGE
|
|
188
|
+
: COMPOSER_MEMBER_ALLOWANCE_MESSAGE;
|
|
189
|
+
return composerErrorReference(error, message);
|
|
190
|
+
}
|
|
191
|
+
return isComposerCreditRefusal(error)
|
|
192
|
+
? composerErrorReference(error, COMPOSER_PAYMENT_REQUIRED_MESSAGE)
|
|
193
|
+
: formatErrorMessage(error);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
function composerErrorReference(error: Error, message: string): string {
|
|
197
|
+
return error instanceof OpenGeniApiError && error.correlationId
|
|
198
|
+
? `${message} Reference: ${error.correlationId}.`
|
|
199
|
+
: message;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
/** These definitive refusals need a payment, allowance or model change, not an unchanged retry. */
|
|
203
|
+
export function composerSubmissionCanRetry(error: Error): boolean {
|
|
204
|
+
return !(
|
|
205
|
+
isComposerCreditRefusal(error) ||
|
|
206
|
+
isModelUnavailableSubmissionError(error) ||
|
|
207
|
+
(error instanceof OpenGeniApiError && error.code === "allowance_exhausted")
|
|
208
|
+
);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
function isComposerCreditRefusal(error: Error): boolean {
|
|
212
|
+
return (
|
|
213
|
+
(error instanceof OpenGeniApiError &&
|
|
214
|
+
error.status === 402 &&
|
|
215
|
+
(error.code === "payment_required" || error.code === "insufficient_credits")) ||
|
|
216
|
+
isCreditExhaustion(error.message)
|
|
217
|
+
);
|
|
126
218
|
}
|
|
127
219
|
|
|
128
220
|
/**
|
|
@@ -184,3 +276,47 @@ export function humanizeFailureReason(reason: string | null): string | null {
|
|
|
184
276
|
}
|
|
185
277
|
return reason;
|
|
186
278
|
}
|
|
279
|
+
|
|
280
|
+
/** Project failure diagnostics without changing the stored event, including legacy retry wrappers. */
|
|
281
|
+
export function presentFailure(payload: Record<string, unknown>): {
|
|
282
|
+
reason: string | null;
|
|
283
|
+
safetyRefusal: boolean;
|
|
284
|
+
} {
|
|
285
|
+
const databaseFailure =
|
|
286
|
+
payload.code === "db_deadlock" ||
|
|
287
|
+
payload.code === "db_serialization_failure" ||
|
|
288
|
+
payload.code === "db_failure" ||
|
|
289
|
+
(typeof payload.sqlState === "string" &&
|
|
290
|
+
/^[0-9A-Z]{5}$/.test(payload.sqlState) &&
|
|
291
|
+
payload.database !== null &&
|
|
292
|
+
typeof payload.database === "object" &&
|
|
293
|
+
!Array.isArray(payload.database));
|
|
294
|
+
if (databaseFailure) {
|
|
295
|
+
return { reason: "The service encountered a database error.", safetyRefusal: false };
|
|
296
|
+
}
|
|
297
|
+
const text = (key: string): string | null => {
|
|
298
|
+
const value = payload[key];
|
|
299
|
+
return typeof value === "string" && value.trim() ? value : null;
|
|
300
|
+
};
|
|
301
|
+
const message = text("error") ?? text("message");
|
|
302
|
+
const detail = text("lastRetryableError") ?? text("detail");
|
|
303
|
+
const safetyRefusal =
|
|
304
|
+
payload.code === "provider_safety_refusal" ||
|
|
305
|
+
[message, detail].some(
|
|
306
|
+
(value) =>
|
|
307
|
+
value !== null && /\bthis request was blocked by our safety systems\b/i.test(value),
|
|
308
|
+
);
|
|
309
|
+
if (safetyRefusal) {
|
|
310
|
+
return {
|
|
311
|
+
reason: `The model provider blocked this request.${detail || message ? ` ${detail ?? message}` : ""}`,
|
|
312
|
+
safetyRefusal: true,
|
|
313
|
+
};
|
|
314
|
+
}
|
|
315
|
+
return {
|
|
316
|
+
reason:
|
|
317
|
+
detail && detail !== message
|
|
318
|
+
? [humanizeFailureReason(message), humanizeFailureReason(detail)].filter(Boolean).join(" ")
|
|
319
|
+
: humanizeFailureReason(message),
|
|
320
|
+
safetyRefusal: false,
|
|
321
|
+
};
|
|
322
|
+
}
|