@opengeni/react 4.6.1 → 4.6.2-canary.39853438886001
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/dist/app/app-state.js +13 -13
- package/dist/app/components/Composer.js +14 -14
- package/dist/app/components/artifacts/artifact-library.js +5 -5
- package/dist/app/components/artifacts/chat-interactive-block.js +10 -10
- package/dist/app/components/artifacts/inline-chat-image.js +14 -14
- package/dist/app/components/artifacts/retained-file-preview.js +16 -16
- package/dist/app/components/artifacts/retained-text-preview.js +2 -2
- package/dist/app/components/artifacts/site-conversations.js +5 -4
- package/dist/app/components/artifacts/site-data.js +2 -2
- package/dist/app/components/artifacts/site-publishing.js +11 -11
- package/dist/app/components/artifacts/site-settings.js +15 -15
- package/dist/app/components/billing-class-mark.js +3 -3
- package/dist/app/components/capabilities/capability-detail-sheet.js +2 -2
- package/dist/app/components/capabilities/capability-logo-source.js +7 -7
- package/dist/app/components/capabilities/native-connect-readiness.js +1 -0
- package/dist/app/components/capabilities/native-connect-readiness.js.map +1 -1
- package/dist/app/components/capabilities/native-connect-setup.js +6 -6
- package/dist/app/components/capabilities/perform-capability-action.js +2 -1
- package/dist/app/components/capabilities/prepared-mcp-setup-card.js +8 -8
- package/dist/app/components/capabilities/session-capability-card.js +32 -31
- package/dist/app/components/capabilities/session-capability-card.js.map +1 -1
- package/dist/app/components/capabilities/session-chrome-card.js +14 -14
- package/dist/app/components/capabilities/session-custom-mcp-card.js +9 -9
- package/dist/app/components/capabilities/session-github-card.js +9 -9
- package/dist/app/components/capabilities/session-machine-card.js +14 -14
- package/dist/app/components/command-menu/chat-status.js +6 -5
- package/dist/app/components/command-menu/chat-switcher.d.ts +2 -0
- package/dist/app/components/command-menu/chat-switcher.js +26 -9
- package/dist/app/components/command-menu/chat-switcher.js.map +1 -1
- package/dist/app/components/command-menu/command-menu.js +16 -15
- package/dist/app/components/command-menu/command-menu.js.map +1 -1
- package/dist/app/components/command-menu/shortcut-sheet.js +8 -8
- package/dist/app/components/composer-mobile-plus-panel.js +5 -5
- package/dist/app/components/composer-mobile-plus.js +1 -1
- package/dist/app/components/credit-required-gate.js +1 -1
- package/dist/app/components/credit-required-prompt.js +4 -4
- package/dist/app/components/desktop/app-shots.js +5 -5
- package/dist/app/components/desktop/this-computer.js +4 -4
- package/dist/app/components/feedback.js +3 -3
- package/dist/app/components/github-app-connect-launcher.js +1 -1
- package/dist/app/components/machines/connect-machine-dialog.js +3 -3
- package/dist/app/components/markdown.js +4 -4
- package/dist/app/components/models/models-ui.js +2 -2
- package/dist/app/components/pickers.js +5 -5
- package/dist/app/components/rail/rail-context.js +3 -3
- package/dist/app/components/rail/rail-sections.js +28 -27
- package/dist/app/components/rail/session-header.d.ts +6 -5
- package/dist/app/components/rail/session-header.js +20 -19
- package/dist/app/components/rail/session-list.js +27 -26
- package/dist/app/components/rail/session-row-hover-details.js +7 -6
- package/dist/app/components/rail/session-shell.js +51 -53
- package/dist/app/components/rail/site-session-group-heading.js +2 -1
- package/dist/app/components/session/agent-configuration-panel.js +6 -6
- package/dist/app/components/session/banners.js +6 -6
- package/dist/app/components/session/conversation-find.js +3 -3
- package/dist/app/components/session/editable-artifacts-workspace.js +17 -17
- package/dist/app/components/session/failed-session-banner.js +5 -5
- package/dist/app/components/session/human-input.js +26 -26
- package/dist/app/components/session/inspector.js +37 -37
- package/dist/app/components/session/message-actions.js +3 -3
- package/dist/app/components/session/message-resource-attachments.js +5 -5
- package/dist/app/components/session/model-recovery-notice.js +3 -3
- package/dist/app/components/session/new-session-settings-menu.js +4 -4
- package/dist/app/components/session/sandbox-switcher.js +8 -8
- package/dist/app/components/session/sandbox-workspace.js +36 -36
- package/dist/app/components/session/search-markdown-highlight.js +5 -5
- package/dist/app/components/session/search-results-view.js +6 -6
- package/dist/app/components/session/session-admission-notice.js +4 -4
- package/dist/app/components/session/session-machine-access-notice.js +4 -4
- package/dist/app/components/session/session-search-dialog.js +6 -6
- package/dist/app/components/session/session-tenancy-control.js +4 -4
- package/dist/app/components/session/session-usage-limit-section.js +3 -3
- package/dist/app/components/session/session-wait-status.js +2 -1
- package/dist/app/components/session/session-wait-status.js.map +1 -1
- package/dist/app/components/session/subagents.js +6 -5
- package/dist/app/components/session/subscription-account-indicator.d.ts +35 -0
- package/dist/app/components/session/{codex-account-indicator.js → subscription-account-indicator.js} +23 -10
- package/dist/app/components/session/subscription-account-menu.d.ts +11 -12
- package/dist/app/components/session/subscription-account-menu.js +1 -1
- package/dist/app/components/session/subscription-account.d.ts +105 -0
- package/dist/app/components/usage/usage-entry.js +3 -3
- package/dist/app/components/workspace-composer-plus.js +10 -10
- package/dist/app/embed/session-app.js +154 -156
- package/dist/app/lib/actions/actions-provider.js +8 -8
- package/dist/app/lib/actions/chat-switcher.d.ts +19 -7
- package/dist/app/lib/codex-usage-query.js +2 -2
- package/dist/app/lib/composer-connectors.js +8 -8
- package/dist/app/lib/console-text.js +2 -2
- package/dist/app/lib/drive-connect-return.d.ts +26 -0
- package/dist/app/lib/drive-connect-return.js +16 -0
- package/dist/app/lib/events.js +7 -7
- package/dist/app/lib/failed-session-copy.js +3 -3
- package/dist/app/lib/model-access-onboarding.js +3 -3
- package/dist/app/lib/move-chat-to-machine.js +3 -3
- package/dist/app/lib/session-branch-cache.js +6 -5
- package/dist/app/lib/session-group-pagination.js +6 -5
- package/dist/app/lib/session-hover-facts.js +6 -5
- package/dist/app/lib/session-rail.js +2 -1
- package/dist/app/lib/sessions-group.js +5 -4
- package/dist/app/lib/turn-failure-analytics.js +5 -5
- package/dist/app/lib/use-workspace-machines.js +4 -4
- package/dist/app/lib/use-workspace-model-catalog.js +3 -3
- package/dist/app/lib/use-workspace-rigs.js +2 -2
- package/dist/app/lib/workspace-navigation-preference.js +4 -4
- package/dist/app/lib/workspace-scope-context.js +3 -3
- package/dist/app/routes/artifacts.js +50 -49
- package/dist/app/routes/artifacts.js.map +1 -1
- package/dist/app/routes/retained-artifact.js +23 -23
- package/dist/app/routes/session.js +92 -91
- package/dist/app/routes/sessions-index.js +52 -52
- package/dist/app/routes/site-view.js +35 -34
- package/dist/app/routes/site-view.js.map +1 -1
- package/dist/artifacts-document.js +4 -4
- package/dist/artifacts-presentation.js +4 -4
- package/dist/artifacts-spreadsheet.js +4 -4
- package/dist/artifacts.js +10 -10
- package/dist/{browser-viewer-YQC6BFMS.js → browser-viewer-VKIAULG7.js} +4 -4
- package/dist/{chat-interactive-block-Z22YHDRU.js → chat-interactive-block-JGYSW4KB.js} +5 -5
- package/dist/{chunk-WN2MIB4Q.js → chunk-22V2QCEM.js} +2 -2
- package/dist/{chunk-SJPAKWWP.js → chunk-2BISI664.js} +2 -2
- package/dist/{chunk-O5UOCMH4.js → chunk-2LPJVEWY.js} +3 -3
- package/dist/{chunk-NPDL4W4Y.js → chunk-2MLJHNKJ.js} +108 -109
- package/dist/chunk-2MLJHNKJ.js.map +1 -0
- package/dist/{chunk-JI6WPLZB.js → chunk-2SBCOGQN.js} +4 -4
- package/dist/{chunk-6JF7C3U3.js → chunk-2WERWWSS.js} +2 -2
- package/dist/{chunk-4XKT4ENZ.js → chunk-2Y3QL3DA.js} +4 -4
- package/dist/{chunk-KVMFT6FN.js → chunk-3FL3F4WF.js} +2 -2
- package/dist/{chunk-4VJOZJDV.js → chunk-3JPQAIYJ.js} +2 -2
- package/dist/{chunk-27EORKJ4.js → chunk-3N4LNBJF.js} +2 -2
- package/dist/{chunk-7JZSFJHB.js → chunk-3OJU3RUR.js} +2 -2
- package/dist/{chunk-NV5OYV3G.js → chunk-3U6K36QA.js} +5 -5
- package/dist/{chunk-MDRLP5DO.js → chunk-3W7ROHN4.js} +3 -3
- package/dist/{chunk-3MQM4ZOC.js → chunk-3Y6ZR2VN.js} +3 -3
- package/dist/{chunk-HXZIX7MR.js → chunk-47AB65IO.js} +4 -4
- package/dist/{chunk-DNYD7AUG.js → chunk-4BOLIZ7Y.js} +3 -3
- package/dist/{chunk-4XO346BW.js → chunk-4FBJFQFU.js} +2 -2
- package/dist/{chunk-BWKZEW6K.js → chunk-4T3E56NT.js} +3 -3
- package/dist/{chunk-4PC7LIQK.js → chunk-4ZMUWRFF.js} +3 -3
- package/dist/{chunk-TM2ZLY3Q.js → chunk-5OLFYSVG.js} +13 -13
- package/dist/{chunk-D4QOZXPM.js → chunk-5WBRM7V4.js} +5 -5
- package/dist/{chunk-GXK4CUAB.js → chunk-5WQKTT5Z.js} +2 -2
- package/dist/{chunk-6N7W3TOV.js → chunk-63BPMTBM.js} +2 -2
- package/dist/{chunk-R5YZ3ROM.js → chunk-63PQKTTT.js} +2 -2
- package/dist/{chunk-WLZVXCPZ.js → chunk-6GO6WN22.js} +3 -3
- package/dist/{chunk-6PQBKMUL.js → chunk-6IIA63VD.js} +11 -7
- package/dist/chunk-6IIA63VD.js.map +1 -0
- package/dist/{chunk-XDCZBOEY.js → chunk-6LGBGPBU.js} +1 -1
- package/dist/{chunk-FMATVQFW.js → chunk-6XXMG5YP.js} +9 -9
- package/dist/{chunk-M5E3CKSE.js → chunk-7QWWE5XL.js} +2 -2
- package/dist/{chunk-RABKQFTA.js → chunk-A2HCAMRH.js} +2 -2
- package/dist/{chunk-6K3WNTRI.js → chunk-AODISQO6.js} +2 -2
- package/dist/{chunk-C6JL6PBL.js → chunk-AQDRH6VF.js} +3 -3
- package/dist/{chunk-72XEFLMD.js → chunk-ASWINLSW.js} +2 -2
- package/dist/{chunk-ZPZYYSHW.js → chunk-BVMDON5T.js} +8 -8
- package/dist/{chunk-EURDMOXZ.js → chunk-BYJZUCOQ.js} +2 -2
- package/dist/{chunk-BQWUXC55.js → chunk-CAVAVT5S.js} +9 -9
- package/dist/{chunk-ZWACUOU5.js → chunk-CDBGAAJY.js} +3 -3
- package/dist/chunk-CDBGAAJY.js.map +1 -0
- package/dist/{chunk-BPD4IJBG.js → chunk-CG6CJMIS.js} +2 -2
- package/dist/{chunk-B254JG72.js → chunk-CQX24PT7.js} +2 -2
- package/dist/{chunk-65K5LV4L.js → chunk-CTCOVPZU.js} +51 -50
- package/dist/{chunk-65K5LV4L.js.map → chunk-CTCOVPZU.js.map} +1 -1
- package/dist/{chunk-HJTTDLF6.js → chunk-CY3NO4JN.js} +4 -4
- package/dist/{chunk-OLUG4IFF.js → chunk-D2RLPRSG.js} +2 -2
- package/dist/{chunk-74NIHMAT.js → chunk-D653JH6D.js} +3 -3
- package/dist/{chunk-2LUO22FR.js → chunk-DAI5CTQF.js} +4 -4
- package/dist/{chunk-HTKVYEVB.js → chunk-DBM4ZXDN.js} +2 -2
- package/dist/{chunk-MB2DTUEG.js → chunk-DNYKLU3K.js} +4 -4
- package/dist/{chunk-26P7B46A.js → chunk-DXYARXK3.js} +3 -3
- package/dist/{chunk-JQKURO3S.js → chunk-E4MQRQ6Z.js} +2 -2
- package/dist/{chunk-KW53DBY7.js → chunk-EBW2E32G.js} +2 -2
- package/dist/{chunk-O73DRA77.js → chunk-ENKBO7FC.js} +4 -4
- package/dist/{chunk-FVCLVASD.js → chunk-FI3KRVOF.js} +24 -24
- package/dist/{chunk-WWM7WVD2.js → chunk-GABFKHQE.js} +2 -2
- package/dist/chunk-GLCOKWLH.js +42 -0
- package/dist/chunk-GLCOKWLH.js.map +1 -0
- package/dist/{chunk-32HA7DXJ.js → chunk-GNBRB3DH.js} +25 -25
- package/dist/{chunk-CEQUNJJY.js → chunk-HPALK6LD.js} +2 -2
- package/dist/{chunk-LR7U3HCD.js → chunk-HPSATFLQ.js} +4 -4
- package/dist/{chunk-O4AWXTZQ.js → chunk-HUYLQW75.js} +6 -6
- package/dist/{chunk-PQCFW2KT.js → chunk-IDDHH5AQ.js} +29 -24
- package/dist/chunk-IDDHH5AQ.js.map +1 -0
- package/dist/{chunk-ZZUKJ5HQ.js → chunk-IG2ERMSB.js} +2 -2
- package/dist/{chunk-2SZ3KC5S.js → chunk-IMKIIS4Y.js} +2 -2
- package/dist/{chunk-CA64OZLZ.js → chunk-IRXPXDY5.js} +4 -4
- package/dist/{chunk-I57HZMMA.js → chunk-IXIE3H43.js} +2 -2
- package/dist/{chunk-OWJD3V4V.js → chunk-J3YQ3554.js} +2 -2
- package/dist/{chunk-BCFHMBMK.js → chunk-J5HZBHU4.js} +7 -7
- package/dist/{chunk-UHMMRQGU.js → chunk-KD7GNHOP.js} +3 -3
- package/dist/{chunk-X7Z4B5GK.js → chunk-KPL7EXS6.js} +2 -2
- package/dist/{chunk-GTR2WUBA.js → chunk-KX6M5CJI.js} +1 -1
- package/dist/{chunk-CYO5HL4C.js → chunk-KYL2BPS2.js} +2 -2
- package/dist/{chunk-QLDMF7MH.js → chunk-LC5HE7PZ.js} +2 -2
- package/dist/{chunk-3SMJ2BIQ.js → chunk-LGD5RESZ.js} +7 -33
- package/dist/chunk-LGD5RESZ.js.map +1 -0
- package/dist/{chunk-4ICPJZAB.js → chunk-LMYSYG6U.js} +2 -2
- package/dist/{chunk-3ZZOE4SN.js → chunk-LOCDYMD6.js} +4 -4
- package/dist/{chunk-DNWBLT4U.js → chunk-MASBMJ2M.js} +2 -2
- package/dist/{chunk-NZMQDUOD.js → chunk-MU6HYDNF.js} +5 -5
- package/dist/{chunk-GMVKCEBG.js → chunk-MY6QEDZ2.js} +2 -2
- package/dist/{chunk-SK57RWSA.js → chunk-MZGKQ5WV.js} +2 -2
- package/dist/{chunk-HSQRYJ4P.js → chunk-N52SFH2K.js} +2 -2
- package/dist/{chunk-MY6VZVCP.js → chunk-OAJX5CEL.js} +4 -4
- package/dist/{chunk-IWIMIRV3.js → chunk-OSJTLQXA.js} +9 -4
- package/dist/chunk-OSJTLQXA.js.map +1 -0
- package/dist/{chunk-FH75NNLB.js → chunk-OZ5NAXCP.js} +2 -2
- package/dist/{chunk-PEGNFZ3F.js → chunk-P5S777YI.js} +2 -2
- package/dist/{chunk-LY6727IF.js → chunk-PPSVFNEA.js} +1 -1
- package/dist/{chunk-K4FDZVMQ.js → chunk-PR42VIVY.js} +2 -2
- package/dist/{chunk-I74J2UZ2.js → chunk-PWMZCW4H.js} +8 -8
- package/dist/{chunk-6YDXUE5H.js → chunk-PYA2O3WS.js} +2 -2
- package/dist/{chunk-GUIZDI5T.js → chunk-Q2PA4KZS.js} +2 -2
- package/dist/{chunk-JJ7VMIEQ.js → chunk-QCANSTLU.js} +64 -64
- package/dist/{chunk-DZH2HTTB.js → chunk-R27GW5WV.js} +1 -1
- package/dist/chunk-R4U4EWZG.js +414 -0
- package/dist/chunk-R4U4EWZG.js.map +1 -0
- package/dist/{chunk-DAQG3C4W.js → chunk-R6JY22SG.js} +29 -29
- package/dist/{chunk-7OIBLMDP.js → chunk-RAQISW42.js} +2 -2
- package/dist/{chunk-DNLXQUBX.js → chunk-RLS6PTL4.js} +32 -44
- package/dist/chunk-RLS6PTL4.js.map +1 -0
- package/dist/{chunk-CPKD2YGK.js → chunk-RNU5CUPI.js} +2 -2
- package/dist/{chunk-467VRP4E.js → chunk-RO5YZQHZ.js} +3 -3
- package/dist/{chunk-SSZROOOI.js → chunk-ROLXYGT5.js} +2 -2
- package/dist/{chunk-6VITVQ23.js → chunk-SHJ5SQOW.js} +7 -7
- package/dist/{chunk-F4B2YYCN.js → chunk-TAWFXRXB.js} +3 -3
- package/dist/{chunk-G3FU2IF7.js → chunk-TB7UW5BB.js} +3 -3
- package/dist/{chunk-NF6Q4XTN.js → chunk-TQF2I5SY.js} +3 -3
- package/dist/{chunk-MM7OKOTE.js → chunk-UBXHP224.js} +43 -18
- package/dist/chunk-UBXHP224.js.map +1 -0
- package/dist/{chunk-M7A226EQ.js → chunk-UL44R3W2.js} +2 -2
- package/dist/{chunk-GTR5NLVP.js → chunk-VCRQPLKS.js} +2 -2
- package/dist/{chunk-MHIYYHCL.js → chunk-VJU3ET7N.js} +12 -12
- package/dist/{chunk-RXMIXKB3.js → chunk-WGJUARF3.js} +13 -13
- package/dist/{chunk-NWSAF6P5.js → chunk-WJDH7CH5.js} +22 -1
- package/dist/chunk-WJDH7CH5.js.map +1 -0
- package/dist/{chunk-LG67ZNRU.js → chunk-WK2ZCTUF.js} +2 -2
- package/dist/{chunk-XGE75VPK.js → chunk-WNARM3LY.js} +3 -3
- package/dist/{chunk-RNBH5TSM.js → chunk-WQ2RTQYO.js} +2 -2
- package/dist/chunk-X5XEYQ4B.js +84 -0
- package/dist/chunk-X5XEYQ4B.js.map +1 -0
- package/dist/{chunk-W57QFLQD.js → chunk-X6JIGNLI.js} +4 -4
- package/dist/{chunk-CKA4SJRK.js → chunk-XIQDCQX7.js} +2 -2
- package/dist/{chunk-AJ7PY4FJ.js → chunk-Y3GCG6CA.js} +2 -2
- package/dist/{chunk-2K27S6LK.js → chunk-Y565N5ZJ.js} +24 -7
- package/dist/chunk-Y565N5ZJ.js.map +1 -0
- package/dist/{chunk-ZRB4M3GG.js → chunk-YC5KH7ZB.js} +3 -3
- package/dist/{chunk-4RY64KQY.js → chunk-YJUKLLNP.js} +2 -2
- package/dist/{chunk-OHG2UQ2O.js → chunk-YWP2H7SX.js} +60 -22
- package/dist/chunk-YWP2H7SX.js.map +1 -0
- package/dist/{chunk-24POWVUY.js → chunk-ZDJNRRVS.js} +4 -4
- package/dist/{chunk-S6WJ6TUT.js → chunk-ZEVJGMNB.js} +2 -2
- package/dist/chunk-ZEVJGMNB.js.map +1 -0
- package/dist/{chunk-M7YEZR6X.js → chunk-ZITMDA4C.js} +2 -2
- package/dist/components/model-policy-picker.d.ts +2 -0
- package/dist/composer.js +6 -6
- package/dist/{computer-viewer-BWVNDFTO.js → computer-viewer-6CRLWQHP.js} +5 -5
- package/dist/connect.js +6 -6
- package/dist/connection-service-presentation.d.ts +1 -4
- package/dist/desktop.js +2 -2
- package/dist/editor.js +2 -2
- package/dist/{embedded-new-voice-GBXSZ3TO.js → embedded-new-voice-KILV3RYM.js} +5 -5
- package/dist/{embedded-voice-MGI7EK7C.js → embedded-voice-GHDRLCFX.js} +5 -5
- package/dist/{fleet-decision-row-35S3GAUN.js → fleet-decision-row-DQXRRBT7.js} +2 -2
- package/dist/index.js +44 -44
- package/dist/interaction.js +5 -5
- package/dist/machines.js +3 -3
- package/dist/messages/en.d.ts +1 -1
- package/dist/messages.js +1 -1
- package/dist/{model-policy-picker-menu-KP53N6UJ.js → model-policy-picker-menu-5ALKUJMR.js} +4 -4
- package/dist/{platform-activity-row-ISMXR7NJ.js → platform-activity-row-227C764Z.js} +2 -2
- package/dist/{queue-surface-implementation-ULW7DDJA.js → queue-surface-implementation-H3NOBXU5.js} +5 -5
- package/dist/realtime.js +4 -4
- package/dist/{sandbox-files-QYSD4XCZ.js → sandbox-files-5FEOHUMD.js} +6 -6
- package/dist/session-app.js +155 -157
- package/dist/{session-realtime-JXRLPNUH.js → session-realtime-OHBMODNX.js} +3 -3
- package/dist/session-realtime.js +2 -2
- package/dist/session-ui.js +26 -26
- package/dist/session.js +6 -6
- package/dist/sites.js +2 -2
- package/dist/terminal.js +2 -2
- package/dist/this-computer.js +3 -3
- package/dist/timeline/connector-logo-index.d.ts +19 -0
- package/dist/{timeline-annotation-markers-OJYKHBEO.js → timeline-annotation-markers-NDHS7MCK.js} +2 -2
- package/dist/{timeline-annotation-selection-6OAZLXFU.js → timeline-annotation-selection-DRQSTJOV.js} +2 -2
- package/dist/{timeline-annotations-dialog-5M6DP5FX.js → timeline-annotations-dialog-G6J5ZJKN.js} +3 -3
- package/dist/timeline-model.d.ts +2 -0
- package/dist/timeline-model.js +9 -1
- package/dist/ui/list-row.js +1 -1
- package/dist/usage.js +2 -2
- package/dist/workbench.js +4 -4
- package/package.json +4 -4
- package/src/app/components/capabilities/native-connect-readiness.tsx +1 -0
- package/src/app/components/capabilities/perform-capability-action.test.ts +67 -0
- package/src/app/components/capabilities/perform-capability-action.tsx +28 -0
- package/src/app/components/command-menu/chat-switcher.tsx +25 -4
- package/src/app/components/rail/session-header.test.tsx +73 -2
- package/src/app/components/rail/session-header.tsx +20 -12
- package/src/app/components/rail/session-shell.tsx +10 -18
- package/src/app/components/session/subscription-account-indicator.test.ts +239 -0
- package/src/app/components/session/subscription-account-indicator.tsx +361 -0
- package/src/app/components/session/subscription-account-menu.tsx +21 -43
- package/src/app/components/session/subscription-account.test.ts +314 -0
- package/src/app/components/session/subscription-account.ts +354 -0
- package/src/app/lib/actions/actions-provider.tsx +11 -0
- package/src/app/lib/actions/actions.test.ts +59 -4
- package/src/app/lib/actions/chat-switcher.ts +73 -20
- package/src/app/lib/drive-connect-return.test.ts +183 -0
- package/src/app/lib/drive-connect-return.tsx +116 -0
- package/src/app/routes/session.tsx +12 -14
- package/src/app/routes/sessions-index.tsx +1 -0
- package/src/components/model-policy-picker-menu.tsx +25 -4
- package/src/components/model-policy-picker.tsx +2 -0
- package/src/components/session-mcp-capability-card.tsx +13 -4
- package/src/connection-service-presentation.ts +6 -1
- package/src/messages/en.ts +1 -1
- package/src/timeline/connector-logo-index.test.ts +46 -0
- package/src/timeline/connector-logo-index.ts +68 -0
- package/src/timeline-model.ts +6 -0
- package/src/ui/list-row.tsx +38 -10
- package/styles/compiled.css +13 -0
- package/dist/app/components/session/codex-account-indicator.d.ts +0 -9
- package/dist/app/components/session/model-account-indicator.d.ts +0 -10
- package/dist/app/components/session/model-account-indicator.js +0 -34
- package/dist/app/components/session/model-account-usage.d.ts +0 -8
- package/dist/app/components/session/model-account-usage.js +0 -8
- package/dist/chunk-2K27S6LK.js.map +0 -1
- package/dist/chunk-3SMJ2BIQ.js.map +0 -1
- package/dist/chunk-6PQBKMUL.js.map +0 -1
- package/dist/chunk-7H2D4VNU.js +0 -150
- package/dist/chunk-7H2D4VNU.js.map +0 -1
- package/dist/chunk-DNLXQUBX.js.map +0 -1
- package/dist/chunk-HCCSAECI.js +0 -132
- package/dist/chunk-HCCSAECI.js.map +0 -1
- package/dist/chunk-IWIMIRV3.js.map +0 -1
- package/dist/chunk-M77ZQE5T.js +0 -58
- package/dist/chunk-M77ZQE5T.js.map +0 -1
- package/dist/chunk-MM7OKOTE.js.map +0 -1
- package/dist/chunk-NPDL4W4Y.js.map +0 -1
- package/dist/chunk-NWSAF6P5.js.map +0 -1
- package/dist/chunk-OHG2UQ2O.js.map +0 -1
- package/dist/chunk-PQCFW2KT.js.map +0 -1
- package/dist/chunk-S6WJ6TUT.js.map +0 -1
- package/dist/chunk-ZWACUOU5.js.map +0 -1
- package/dist/session-realtime-JXRLPNUH.js.map +0 -1
- package/src/app/components/session/codex-account-indicator.tsx +0 -207
- package/src/app/components/session/model-account-indicator.tsx +0 -189
- package/src/app/components/session/model-account-usage.test.ts +0 -59
- package/src/app/components/session/model-account-usage.tsx +0 -89
- /package/dist/app/components/session/{codex-account-indicator.js.map → subscription-account-indicator.js.map} +0 -0
- /package/dist/app/{components/session/model-account-indicator.js.map → lib/drive-connect-return.js.map} +0 -0
- /package/dist/{app/components/session/model-account-usage.js.map → browser-viewer-VKIAULG7.js.map} +0 -0
- /package/dist/{browser-viewer-YQC6BFMS.js.map → chat-interactive-block-JGYSW4KB.js.map} +0 -0
- /package/dist/{chunk-WN2MIB4Q.js.map → chunk-22V2QCEM.js.map} +0 -0
- /package/dist/{chunk-SJPAKWWP.js.map → chunk-2BISI664.js.map} +0 -0
- /package/dist/{chunk-O5UOCMH4.js.map → chunk-2LPJVEWY.js.map} +0 -0
- /package/dist/{chunk-JI6WPLZB.js.map → chunk-2SBCOGQN.js.map} +0 -0
- /package/dist/{chunk-6JF7C3U3.js.map → chunk-2WERWWSS.js.map} +0 -0
- /package/dist/{chunk-4XKT4ENZ.js.map → chunk-2Y3QL3DA.js.map} +0 -0
- /package/dist/{chunk-KVMFT6FN.js.map → chunk-3FL3F4WF.js.map} +0 -0
- /package/dist/{chunk-4VJOZJDV.js.map → chunk-3JPQAIYJ.js.map} +0 -0
- /package/dist/{chunk-27EORKJ4.js.map → chunk-3N4LNBJF.js.map} +0 -0
- /package/dist/{chunk-7JZSFJHB.js.map → chunk-3OJU3RUR.js.map} +0 -0
- /package/dist/{chunk-NV5OYV3G.js.map → chunk-3U6K36QA.js.map} +0 -0
- /package/dist/{chunk-MDRLP5DO.js.map → chunk-3W7ROHN4.js.map} +0 -0
- /package/dist/{chunk-3MQM4ZOC.js.map → chunk-3Y6ZR2VN.js.map} +0 -0
- /package/dist/{chunk-HXZIX7MR.js.map → chunk-47AB65IO.js.map} +0 -0
- /package/dist/{chunk-DNYD7AUG.js.map → chunk-4BOLIZ7Y.js.map} +0 -0
- /package/dist/{chunk-4XO346BW.js.map → chunk-4FBJFQFU.js.map} +0 -0
- /package/dist/{chunk-BWKZEW6K.js.map → chunk-4T3E56NT.js.map} +0 -0
- /package/dist/{chunk-4PC7LIQK.js.map → chunk-4ZMUWRFF.js.map} +0 -0
- /package/dist/{chunk-TM2ZLY3Q.js.map → chunk-5OLFYSVG.js.map} +0 -0
- /package/dist/{chunk-D4QOZXPM.js.map → chunk-5WBRM7V4.js.map} +0 -0
- /package/dist/{chunk-GXK4CUAB.js.map → chunk-5WQKTT5Z.js.map} +0 -0
- /package/dist/{chunk-6N7W3TOV.js.map → chunk-63BPMTBM.js.map} +0 -0
- /package/dist/{chunk-R5YZ3ROM.js.map → chunk-63PQKTTT.js.map} +0 -0
- /package/dist/{chunk-WLZVXCPZ.js.map → chunk-6GO6WN22.js.map} +0 -0
- /package/dist/{chunk-XDCZBOEY.js.map → chunk-6LGBGPBU.js.map} +0 -0
- /package/dist/{chunk-FMATVQFW.js.map → chunk-6XXMG5YP.js.map} +0 -0
- /package/dist/{chunk-M5E3CKSE.js.map → chunk-7QWWE5XL.js.map} +0 -0
- /package/dist/{chunk-RABKQFTA.js.map → chunk-A2HCAMRH.js.map} +0 -0
- /package/dist/{chunk-6K3WNTRI.js.map → chunk-AODISQO6.js.map} +0 -0
- /package/dist/{chunk-C6JL6PBL.js.map → chunk-AQDRH6VF.js.map} +0 -0
- /package/dist/{chunk-72XEFLMD.js.map → chunk-ASWINLSW.js.map} +0 -0
- /package/dist/{chunk-ZPZYYSHW.js.map → chunk-BVMDON5T.js.map} +0 -0
- /package/dist/{chunk-EURDMOXZ.js.map → chunk-BYJZUCOQ.js.map} +0 -0
- /package/dist/{chunk-BQWUXC55.js.map → chunk-CAVAVT5S.js.map} +0 -0
- /package/dist/{chunk-BPD4IJBG.js.map → chunk-CG6CJMIS.js.map} +0 -0
- /package/dist/{chunk-B254JG72.js.map → chunk-CQX24PT7.js.map} +0 -0
- /package/dist/{chunk-HJTTDLF6.js.map → chunk-CY3NO4JN.js.map} +0 -0
- /package/dist/{chunk-OLUG4IFF.js.map → chunk-D2RLPRSG.js.map} +0 -0
- /package/dist/{chunk-74NIHMAT.js.map → chunk-D653JH6D.js.map} +0 -0
- /package/dist/{chunk-2LUO22FR.js.map → chunk-DAI5CTQF.js.map} +0 -0
- /package/dist/{chunk-HTKVYEVB.js.map → chunk-DBM4ZXDN.js.map} +0 -0
- /package/dist/{chunk-MB2DTUEG.js.map → chunk-DNYKLU3K.js.map} +0 -0
- /package/dist/{chunk-26P7B46A.js.map → chunk-DXYARXK3.js.map} +0 -0
- /package/dist/{chunk-JQKURO3S.js.map → chunk-E4MQRQ6Z.js.map} +0 -0
- /package/dist/{chunk-KW53DBY7.js.map → chunk-EBW2E32G.js.map} +0 -0
- /package/dist/{chunk-O73DRA77.js.map → chunk-ENKBO7FC.js.map} +0 -0
- /package/dist/{chunk-FVCLVASD.js.map → chunk-FI3KRVOF.js.map} +0 -0
- /package/dist/{chunk-WWM7WVD2.js.map → chunk-GABFKHQE.js.map} +0 -0
- /package/dist/{chunk-32HA7DXJ.js.map → chunk-GNBRB3DH.js.map} +0 -0
- /package/dist/{chunk-CEQUNJJY.js.map → chunk-HPALK6LD.js.map} +0 -0
- /package/dist/{chunk-LR7U3HCD.js.map → chunk-HPSATFLQ.js.map} +0 -0
- /package/dist/{chunk-O4AWXTZQ.js.map → chunk-HUYLQW75.js.map} +0 -0
- /package/dist/{chunk-ZZUKJ5HQ.js.map → chunk-IG2ERMSB.js.map} +0 -0
- /package/dist/{chunk-2SZ3KC5S.js.map → chunk-IMKIIS4Y.js.map} +0 -0
- /package/dist/{chunk-CA64OZLZ.js.map → chunk-IRXPXDY5.js.map} +0 -0
- /package/dist/{chunk-I57HZMMA.js.map → chunk-IXIE3H43.js.map} +0 -0
- /package/dist/{chunk-OWJD3V4V.js.map → chunk-J3YQ3554.js.map} +0 -0
- /package/dist/{chunk-BCFHMBMK.js.map → chunk-J5HZBHU4.js.map} +0 -0
- /package/dist/{chunk-UHMMRQGU.js.map → chunk-KD7GNHOP.js.map} +0 -0
- /package/dist/{chunk-X7Z4B5GK.js.map → chunk-KPL7EXS6.js.map} +0 -0
- /package/dist/{chunk-GTR2WUBA.js.map → chunk-KX6M5CJI.js.map} +0 -0
- /package/dist/{chunk-CYO5HL4C.js.map → chunk-KYL2BPS2.js.map} +0 -0
- /package/dist/{chunk-QLDMF7MH.js.map → chunk-LC5HE7PZ.js.map} +0 -0
- /package/dist/{chunk-4ICPJZAB.js.map → chunk-LMYSYG6U.js.map} +0 -0
- /package/dist/{chunk-3ZZOE4SN.js.map → chunk-LOCDYMD6.js.map} +0 -0
- /package/dist/{chunk-DNWBLT4U.js.map → chunk-MASBMJ2M.js.map} +0 -0
- /package/dist/{chunk-NZMQDUOD.js.map → chunk-MU6HYDNF.js.map} +0 -0
- /package/dist/{chunk-GMVKCEBG.js.map → chunk-MY6QEDZ2.js.map} +0 -0
- /package/dist/{chunk-SK57RWSA.js.map → chunk-MZGKQ5WV.js.map} +0 -0
- /package/dist/{chunk-HSQRYJ4P.js.map → chunk-N52SFH2K.js.map} +0 -0
- /package/dist/{chunk-MY6VZVCP.js.map → chunk-OAJX5CEL.js.map} +0 -0
- /package/dist/{chunk-FH75NNLB.js.map → chunk-OZ5NAXCP.js.map} +0 -0
- /package/dist/{chunk-PEGNFZ3F.js.map → chunk-P5S777YI.js.map} +0 -0
- /package/dist/{chunk-LY6727IF.js.map → chunk-PPSVFNEA.js.map} +0 -0
- /package/dist/{chunk-K4FDZVMQ.js.map → chunk-PR42VIVY.js.map} +0 -0
- /package/dist/{chunk-I74J2UZ2.js.map → chunk-PWMZCW4H.js.map} +0 -0
- /package/dist/{chunk-6YDXUE5H.js.map → chunk-PYA2O3WS.js.map} +0 -0
- /package/dist/{chunk-GUIZDI5T.js.map → chunk-Q2PA4KZS.js.map} +0 -0
- /package/dist/{chunk-JJ7VMIEQ.js.map → chunk-QCANSTLU.js.map} +0 -0
- /package/dist/{chunk-DZH2HTTB.js.map → chunk-R27GW5WV.js.map} +0 -0
- /package/dist/{chunk-DAQG3C4W.js.map → chunk-R6JY22SG.js.map} +0 -0
- /package/dist/{chunk-7OIBLMDP.js.map → chunk-RAQISW42.js.map} +0 -0
- /package/dist/{chunk-CPKD2YGK.js.map → chunk-RNU5CUPI.js.map} +0 -0
- /package/dist/{chunk-467VRP4E.js.map → chunk-RO5YZQHZ.js.map} +0 -0
- /package/dist/{chunk-SSZROOOI.js.map → chunk-ROLXYGT5.js.map} +0 -0
- /package/dist/{chunk-6VITVQ23.js.map → chunk-SHJ5SQOW.js.map} +0 -0
- /package/dist/{chunk-F4B2YYCN.js.map → chunk-TAWFXRXB.js.map} +0 -0
- /package/dist/{chunk-G3FU2IF7.js.map → chunk-TB7UW5BB.js.map} +0 -0
- /package/dist/{chunk-NF6Q4XTN.js.map → chunk-TQF2I5SY.js.map} +0 -0
- /package/dist/{chunk-M7A226EQ.js.map → chunk-UL44R3W2.js.map} +0 -0
- /package/dist/{chunk-GTR5NLVP.js.map → chunk-VCRQPLKS.js.map} +0 -0
- /package/dist/{chunk-MHIYYHCL.js.map → chunk-VJU3ET7N.js.map} +0 -0
- /package/dist/{chunk-RXMIXKB3.js.map → chunk-WGJUARF3.js.map} +0 -0
- /package/dist/{chunk-LG67ZNRU.js.map → chunk-WK2ZCTUF.js.map} +0 -0
- /package/dist/{chunk-XGE75VPK.js.map → chunk-WNARM3LY.js.map} +0 -0
- /package/dist/{chunk-RNBH5TSM.js.map → chunk-WQ2RTQYO.js.map} +0 -0
- /package/dist/{chunk-W57QFLQD.js.map → chunk-X6JIGNLI.js.map} +0 -0
- /package/dist/{chunk-CKA4SJRK.js.map → chunk-XIQDCQX7.js.map} +0 -0
- /package/dist/{chunk-AJ7PY4FJ.js.map → chunk-Y3GCG6CA.js.map} +0 -0
- /package/dist/{chunk-ZRB4M3GG.js.map → chunk-YC5KH7ZB.js.map} +0 -0
- /package/dist/{chunk-4RY64KQY.js.map → chunk-YJUKLLNP.js.map} +0 -0
- /package/dist/{chunk-24POWVUY.js.map → chunk-ZDJNRRVS.js.map} +0 -0
- /package/dist/{chunk-M7YEZR6X.js.map → chunk-ZITMDA4C.js.map} +0 -0
- /package/dist/{chat-interactive-block-Z22YHDRU.js.map → computer-viewer-6CRLWQHP.js.map} +0 -0
- /package/dist/{computer-viewer-BWVNDFTO.js.map → embedded-new-voice-KILV3RYM.js.map} +0 -0
- /package/dist/{embedded-new-voice-GBXSZ3TO.js.map → embedded-voice-GHDRLCFX.js.map} +0 -0
- /package/dist/{fleet-decision-row-35S3GAUN.js.map → fleet-decision-row-DQXRRBT7.js.map} +0 -0
- /package/dist/{embedded-voice-MGI7EK7C.js.map → model-policy-picker-menu-5ALKUJMR.js.map} +0 -0
- /package/dist/{platform-activity-row-ISMXR7NJ.js.map → platform-activity-row-227C764Z.js.map} +0 -0
- /package/dist/{queue-surface-implementation-ULW7DDJA.js.map → queue-surface-implementation-H3NOBXU5.js.map} +0 -0
- /package/dist/{model-policy-picker-menu-KP53N6UJ.js.map → sandbox-files-5FEOHUMD.js.map} +0 -0
- /package/dist/{sandbox-files-QYSD4XCZ.js.map → session-realtime-OHBMODNX.js.map} +0 -0
- /package/dist/{timeline-annotation-markers-OJYKHBEO.js.map → timeline-annotation-markers-NDHS7MCK.js.map} +0 -0
- /package/dist/{timeline-annotation-selection-6OAZLXFU.js.map → timeline-annotation-selection-DRQSTJOV.js.map} +0 -0
- /package/dist/{timeline-annotations-dialog-5M6DP5FX.js.map → timeline-annotations-dialog-G6J5ZJKN.js.map} +0 -0
package/dist/session-ui.js
CHANGED
|
@@ -8,10 +8,10 @@ import {
|
|
|
8
8
|
SessionMachineAccessNotice,
|
|
9
9
|
SessionMachineChoices,
|
|
10
10
|
SessionStartNotice
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-4ZMUWRFF.js";
|
|
12
12
|
import "./chunk-WLEDGIVS.js";
|
|
13
13
|
import "./chunk-HMU5IELG.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-AQDRH6VF.js";
|
|
15
15
|
import {
|
|
16
16
|
OpenGeniChat,
|
|
17
17
|
QueueSurface,
|
|
@@ -19,9 +19,8 @@ import {
|
|
|
19
19
|
SessionCommandsPanel,
|
|
20
20
|
SessionList,
|
|
21
21
|
StartupTimings
|
|
22
|
-
} from "./chunk-
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-V3K4RQO7.js";
|
|
22
|
+
} from "./chunk-6XXMG5YP.js";
|
|
23
|
+
import "./chunk-Y3GCG6CA.js";
|
|
25
24
|
import {
|
|
26
25
|
ApprovalSurface,
|
|
27
26
|
HumanInputForm,
|
|
@@ -36,18 +35,19 @@ import {
|
|
|
36
35
|
sessionChromeGoalPillExplanation,
|
|
37
36
|
sessionChromeGoalPillLabel,
|
|
38
37
|
sessionChromeGoalPillState
|
|
39
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-FI3KRVOF.js";
|
|
40
39
|
import "./chunk-22GTC4MZ.js";
|
|
41
|
-
import "./chunk-
|
|
42
|
-
import "./chunk-SK57RWSA.js";
|
|
40
|
+
import "./chunk-MZGKQ5WV.js";
|
|
43
41
|
import {
|
|
44
42
|
UserMessageBody,
|
|
45
43
|
userMessageLikelyNeedsDisclosure
|
|
46
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-4BOLIZ7Y.js";
|
|
47
45
|
import "./chunk-KDQAWRYZ.js";
|
|
46
|
+
import "./chunk-OZ5NAXCP.js";
|
|
47
|
+
import "./chunk-V3K4RQO7.js";
|
|
48
48
|
import {
|
|
49
49
|
OpenGeniProvider
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-XIQDCQX7.js";
|
|
51
51
|
import {
|
|
52
52
|
KnowledgeActivityProvider,
|
|
53
53
|
LearningRefusalActionsProvider,
|
|
@@ -58,33 +58,33 @@ import {
|
|
|
58
58
|
defaultToolRegistry,
|
|
59
59
|
setStartupDetails,
|
|
60
60
|
useStartupDetails
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-J5HZBHU4.js";
|
|
62
62
|
import "./chunk-B27E3V37.js";
|
|
63
|
-
import "./chunk-
|
|
64
|
-
import "./chunk-
|
|
65
|
-
import "./chunk-
|
|
66
|
-
import "./chunk-
|
|
63
|
+
import "./chunk-TAWFXRXB.js";
|
|
64
|
+
import "./chunk-LOCDYMD6.js";
|
|
65
|
+
import "./chunk-LC5HE7PZ.js";
|
|
66
|
+
import "./chunk-AODISQO6.js";
|
|
67
67
|
import {
|
|
68
68
|
createOlderHistoryLoadReceipt,
|
|
69
69
|
useNewConversation,
|
|
70
70
|
useSessionConversation
|
|
71
|
-
} from "./chunk-
|
|
72
|
-
import "./chunk-EMIVOS73.js";
|
|
71
|
+
} from "./chunk-HUYLQW75.js";
|
|
73
72
|
import "./chunk-34EU25RL.js";
|
|
73
|
+
import "./chunk-EMIVOS73.js";
|
|
74
74
|
import "./chunk-CPLCSM6K.js";
|
|
75
75
|
import "./chunk-UD2PSIIX.js";
|
|
76
76
|
import "./chunk-6MRY2RUZ.js";
|
|
77
77
|
import "./chunk-I6FIXEL4.js";
|
|
78
78
|
import "./chunk-ZOARMQY2.js";
|
|
79
79
|
import "./chunk-NLAFNMPK.js";
|
|
80
|
-
import "./chunk-
|
|
80
|
+
import "./chunk-GABFKHQE.js";
|
|
81
81
|
import "./chunk-MK2TQO4Y.js";
|
|
82
82
|
import {
|
|
83
83
|
SecretAnswerChip,
|
|
84
84
|
SecretRefChip,
|
|
85
85
|
SecretRefText,
|
|
86
86
|
SecretsUiProvider
|
|
87
|
-
} from "./chunk-
|
|
87
|
+
} from "./chunk-DXYARXK3.js";
|
|
88
88
|
import "./chunk-OYQQJL3J.js";
|
|
89
89
|
import "./chunk-RZLBICR5.js";
|
|
90
90
|
import "./chunk-H3LIIAGE.js";
|
|
@@ -102,8 +102,8 @@ import "./chunk-4U7SHFQ2.js";
|
|
|
102
102
|
import {
|
|
103
103
|
ArtifactLabelsProvider,
|
|
104
104
|
DEFAULT_ARTIFACT_LABELS
|
|
105
|
-
} from "./chunk-
|
|
106
|
-
import "./chunk-
|
|
105
|
+
} from "./chunk-63BPMTBM.js";
|
|
106
|
+
import "./chunk-PR42VIVY.js";
|
|
107
107
|
import "./chunk-C5ZCSVZ7.js";
|
|
108
108
|
import "./chunk-BOG2FED3.js";
|
|
109
109
|
import "./chunk-YSRBFJMQ.js";
|
|
@@ -127,17 +127,17 @@ import "./chunk-UNJPZGNK.js";
|
|
|
127
127
|
import "./chunk-XV6ZYRHK.js";
|
|
128
128
|
import "./chunk-IGVL3ELX.js";
|
|
129
129
|
import "./chunk-PEHTX3V7.js";
|
|
130
|
-
import "./chunk-
|
|
130
|
+
import "./chunk-DNYKLU3K.js";
|
|
131
131
|
import "./chunk-3IWPC6O3.js";
|
|
132
|
-
import "./chunk-
|
|
132
|
+
import "./chunk-IXIE3H43.js";
|
|
133
133
|
import "./chunk-7RRMTSCI.js";
|
|
134
|
-
import "./chunk-
|
|
134
|
+
import "./chunk-CDBGAAJY.js";
|
|
135
135
|
import "./chunk-PNNTR6KP.js";
|
|
136
136
|
import "./chunk-WJPMYXKZ.js";
|
|
137
137
|
import "./chunk-VYT4POBH.js";
|
|
138
138
|
import "./chunk-6F34IWSA.js";
|
|
139
139
|
import "./chunk-IQ64BNAG.js";
|
|
140
|
-
import "./chunk-
|
|
140
|
+
import "./chunk-MASBMJ2M.js";
|
|
141
141
|
import "./chunk-J3BHDXQQ.js";
|
|
142
142
|
import "./chunk-CFEFYPNR.js";
|
|
143
143
|
import "./chunk-N7S72EXK.js";
|
|
@@ -148,7 +148,7 @@ import "./chunk-TVQCDDSZ.js";
|
|
|
148
148
|
import "./chunk-SJGAHTY5.js";
|
|
149
149
|
import "./chunk-4NHJ6EXL.js";
|
|
150
150
|
import "./chunk-TXS65BB2.js";
|
|
151
|
-
import "./chunk-
|
|
151
|
+
import "./chunk-ZEVJGMNB.js";
|
|
152
152
|
export {
|
|
153
153
|
ApprovalSurface,
|
|
154
154
|
ArtifactLabelsProvider,
|
package/dist/session.js
CHANGED
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
} from "./chunk-W6T5HR3Z.js";
|
|
12
12
|
import {
|
|
13
13
|
useSessionStart
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-AQDRH6VF.js";
|
|
15
15
|
import {
|
|
16
16
|
conversationTimeline,
|
|
17
17
|
createOlderHistoryLoadReceipt,
|
|
@@ -28,9 +28,9 @@ import {
|
|
|
28
28
|
useSessionEvents,
|
|
29
29
|
useSessionReadAcknowledgement,
|
|
30
30
|
useTurnQueue
|
|
31
|
-
} from "./chunk-
|
|
32
|
-
import "./chunk-EMIVOS73.js";
|
|
31
|
+
} from "./chunk-HUYLQW75.js";
|
|
33
32
|
import "./chunk-34EU25RL.js";
|
|
33
|
+
import "./chunk-EMIVOS73.js";
|
|
34
34
|
import {
|
|
35
35
|
admissionControlNeedsRefresh,
|
|
36
36
|
admissionRecheckControl,
|
|
@@ -62,7 +62,7 @@ import "./chunk-ZOARMQY2.js";
|
|
|
62
62
|
import {
|
|
63
63
|
useRetainedReads
|
|
64
64
|
} from "./chunk-NLAFNMPK.js";
|
|
65
|
-
import "./chunk-
|
|
65
|
+
import "./chunk-GABFKHQE.js";
|
|
66
66
|
import "./chunk-C5ZCSVZ7.js";
|
|
67
67
|
import {
|
|
68
68
|
humanInputRequestFromEvent,
|
|
@@ -82,14 +82,14 @@ import {
|
|
|
82
82
|
shouldSteerOnKey,
|
|
83
83
|
shouldSubmitOnKey,
|
|
84
84
|
useComposer
|
|
85
|
-
} from "./chunk-
|
|
85
|
+
} from "./chunk-IXIE3H43.js";
|
|
86
86
|
import "./chunk-CFEFYPNR.js";
|
|
87
87
|
import "./chunk-2KO2G3RI.js";
|
|
88
88
|
import "./chunk-CM7LVUKC.js";
|
|
89
89
|
import "./chunk-TVQCDDSZ.js";
|
|
90
90
|
import "./chunk-SJGAHTY5.js";
|
|
91
91
|
import "./chunk-4NHJ6EXL.js";
|
|
92
|
-
import "./chunk-
|
|
92
|
+
import "./chunk-ZEVJGMNB.js";
|
|
93
93
|
export {
|
|
94
94
|
FILE_ONLY_MESSAGE_TEXT,
|
|
95
95
|
admissionControlNeedsRefresh,
|
package/dist/sites.js
CHANGED
|
@@ -3,11 +3,11 @@ import "./chunk-MSUVXPQ7.js";
|
|
|
3
3
|
import {
|
|
4
4
|
SiteDetail,
|
|
5
5
|
SiteList
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-IMKIIS4Y.js";
|
|
7
7
|
import {
|
|
8
8
|
loadSiteSnapshot
|
|
9
9
|
} from "./chunk-IOYHDEP3.js";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-ZEVJGMNB.js";
|
|
11
11
|
export {
|
|
12
12
|
SiteDetail,
|
|
13
13
|
SiteList,
|
package/dist/terminal.js
CHANGED
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
} from "./chunk-FPS7ARET.js";
|
|
5
5
|
import {
|
|
6
6
|
SandboxTerminal
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-4FBJFQFU.js";
|
|
8
8
|
import "./chunk-QV3DJVRZ.js";
|
|
9
9
|
import "./chunk-TNEZNMSN.js";
|
|
10
10
|
import {
|
|
11
11
|
registerSandboxTerminal
|
|
12
12
|
} from "./chunk-5I4VRWBB.js";
|
|
13
13
|
import "./chunk-TXS65BB2.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-ZEVJGMNB.js";
|
|
15
15
|
export {
|
|
16
16
|
SandboxTerminal,
|
|
17
17
|
enableSandboxTerminal,
|
package/dist/this-computer.js
CHANGED
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
thisComputerReady,
|
|
16
16
|
useThisComputer,
|
|
17
17
|
useThisComputerSetupOpen
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-4T3E56NT.js";
|
|
19
19
|
import {
|
|
20
20
|
ThisComputerCard,
|
|
21
21
|
ThisComputerOffer,
|
|
@@ -23,9 +23,9 @@ import {
|
|
|
23
23
|
defaultThisComputerLabels,
|
|
24
24
|
thisComputerView,
|
|
25
25
|
useThisComputerOfferDismissed
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-PR42VIVY.js";
|
|
27
27
|
import "./chunk-XEA5BCMA.js";
|
|
28
|
-
import "./chunk-
|
|
28
|
+
import "./chunk-ZEVJGMNB.js";
|
|
29
29
|
export {
|
|
30
30
|
AppIcon,
|
|
31
31
|
ComputerIllustration,
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** The catalog fields that name a connector's domains and logo. */
|
|
2
|
+
export type ConnectorLogoSource = {
|
|
3
|
+
providerDomain?: string | null | undefined;
|
|
4
|
+
mcpUrl?: string | null | undefined;
|
|
5
|
+
connectionRef?: {
|
|
6
|
+
providerDomain?: string | null | undefined;
|
|
7
|
+
} | null | undefined;
|
|
8
|
+
logoAssetPath?: string | null | undefined;
|
|
9
|
+
};
|
|
10
|
+
/** "WWW.Linear.app " → "linear.app". */
|
|
11
|
+
export declare function normalizeConnectorDomain(domain: string): string;
|
|
12
|
+
/**
|
|
13
|
+
* Every domain each catalog entry is known by, mapped to its logo URL. The
|
|
14
|
+
* provider's own domain is claimed first across the whole catalog, so another
|
|
15
|
+
* entry's server host never takes over a provider's logo.
|
|
16
|
+
*/
|
|
17
|
+
export declare function connectorLogoIndex(catalog: readonly ConnectorLogoSource[], logoUrl: (logoAssetPath: string | null | undefined) => string | null | undefined): ReadonlyMap<string, string>;
|
|
18
|
+
/** The logo for a connector domain from an index built by `connectorLogoIndex`. */
|
|
19
|
+
export declare function connectorLogo(index: ReadonlyMap<string, string>, domain: string | null | undefined): string | null;
|
package/dist/{timeline-annotation-markers-OJYKHBEO.js → timeline-annotation-markers-NDHS7MCK.js}
RENAMED
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
} from "./chunk-TXS65BB2.js";
|
|
24
24
|
import {
|
|
25
25
|
useOpenGeniText
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-ZEVJGMNB.js";
|
|
27
27
|
|
|
28
28
|
// src/components/timeline-annotation-markers.tsx
|
|
29
29
|
import { useLayoutEffect, useState } from "react";
|
|
@@ -173,4 +173,4 @@ export {
|
|
|
173
173
|
TimelineAnnotationMarkers,
|
|
174
174
|
timeline_annotation_markers_default as default
|
|
175
175
|
};
|
|
176
|
-
//# sourceMappingURL=timeline-annotation-markers-
|
|
176
|
+
//# sourceMappingURL=timeline-annotation-markers-NDHS7MCK.js.map
|
package/dist/{timeline-annotation-selection-6OAZLXFU.js → timeline-annotation-selection-DRQSTJOV.js}
RENAMED
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
} from "./chunk-XEA5BCMA.js";
|
|
18
18
|
import {
|
|
19
19
|
useOpenGeniText
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-ZEVJGMNB.js";
|
|
21
21
|
|
|
22
22
|
// src/components/timeline-annotation-selection.tsx
|
|
23
23
|
import { QuoteIcon } from "lucide-react";
|
|
@@ -201,4 +201,4 @@ export {
|
|
|
201
201
|
TimelineAnnotationSelection,
|
|
202
202
|
timeline_annotation_selection_default as default
|
|
203
203
|
};
|
|
204
|
-
//# sourceMappingURL=timeline-annotation-selection-
|
|
204
|
+
//# sourceMappingURL=timeline-annotation-selection-DRQSTJOV.js.map
|
package/dist/{timeline-annotations-dialog-5M6DP5FX.js → timeline-annotations-dialog-G6J5ZJKN.js}
RENAMED
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
AnnotationNoteField,
|
|
5
5
|
AnnotationNotePreview,
|
|
6
6
|
AnnotationQuoteSourceButton
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-LC5HE7PZ.js";
|
|
8
8
|
import {
|
|
9
9
|
cssEscapeAttribute
|
|
10
10
|
} from "./chunk-H3LIIAGE.js";
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
import "./chunk-TXS65BB2.js";
|
|
26
26
|
import {
|
|
27
27
|
useOpenGeniText
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-ZEVJGMNB.js";
|
|
29
29
|
|
|
30
30
|
// src/components/timeline-annotations-dialog.tsx
|
|
31
31
|
import { XIcon } from "lucide-react";
|
|
@@ -280,4 +280,4 @@ export {
|
|
|
280
280
|
TimelineAnnotationsDialog,
|
|
281
281
|
timeline_annotations_dialog_default as default
|
|
282
282
|
};
|
|
283
|
-
//# sourceMappingURL=timeline-annotations-dialog-
|
|
283
|
+
//# sourceMappingURL=timeline-annotations-dialog-G6J5ZJKN.js.map
|
package/dist/timeline-model.d.ts
CHANGED
|
@@ -4,6 +4,8 @@ export { clusterIsSettled, compactedLandmarkCount, durationBetween, flattenActiv
|
|
|
4
4
|
export type { ActivityGroup, ReadableWorkOptions, TurnGroup } from "./timeline/work-presentation.js";
|
|
5
5
|
export { timelineGroupContainsPresentedImage } from "./timeline/presented-image.js";
|
|
6
6
|
export { mcpToolLeaf, toolDisplayName } from "./timeline/tool-display-name.js";
|
|
7
|
+
export { connectorLogo, connectorLogoIndex, normalizeConnectorDomain, } from "./timeline/connector-logo-index.js";
|
|
8
|
+
export type { ConnectorLogoSource } from "./timeline/connector-logo-index.js";
|
|
7
9
|
export { BUILT_IN_TOOL_STEP_NAMES, builtInToolStep, builtInToolStepLabel, TOOL_STEP_IDS, toolStepLabel, toolStepPhase, } from "./timeline/tool-steps.js";
|
|
8
10
|
export type { ToolStepId, ToolStepPhase } from "./timeline/tool-steps.js";
|
|
9
11
|
export { rawTypeOf } from "./timeline/registry.js";
|
package/dist/timeline-model.js
CHANGED
|
@@ -3,7 +3,12 @@ import {
|
|
|
3
3
|
notificationPlainText,
|
|
4
4
|
parseNotificationInline,
|
|
5
5
|
parseNotificationText
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-PPSVFNEA.js";
|
|
7
|
+
import {
|
|
8
|
+
connectorLogo,
|
|
9
|
+
connectorLogoIndex,
|
|
10
|
+
normalizeConnectorDomain
|
|
11
|
+
} from "./chunk-GLCOKWLH.js";
|
|
7
12
|
import {
|
|
8
13
|
QUESTION_NAV_HIDDEN_PX,
|
|
9
14
|
QUESTION_NAV_MARGIN_PX,
|
|
@@ -168,6 +173,8 @@ export {
|
|
|
168
173
|
callStepPhase,
|
|
169
174
|
clusterIsSettled,
|
|
170
175
|
compactedLandmarkCount,
|
|
176
|
+
connectorLogo,
|
|
177
|
+
connectorLogoIndex,
|
|
171
178
|
createTurnSummaryContext,
|
|
172
179
|
defaultHumanInputFormMessages,
|
|
173
180
|
durationBetween,
|
|
@@ -190,6 +197,7 @@ export {
|
|
|
190
197
|
matchingQuoteInSource,
|
|
191
198
|
mcpToolLeaf,
|
|
192
199
|
namedAgentTitle,
|
|
200
|
+
normalizeConnectorDomain,
|
|
193
201
|
noticeDisplayText,
|
|
194
202
|
noticeIsResolvedApproval,
|
|
195
203
|
noticeTone,
|
package/dist/ui/list-row.js
CHANGED
package/dist/usage.js
CHANGED
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
summarizeUsage,
|
|
14
14
|
usagePercentLabel,
|
|
15
15
|
useUsage
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-RAQISW42.js";
|
|
17
17
|
import {
|
|
18
18
|
DEFAULT_ALLOWANCE_LABELS,
|
|
19
19
|
DEFAULT_SESSION_USAGE_LIMIT_LABELS,
|
|
@@ -30,7 +30,7 @@ import "./chunk-2KO2G3RI.js";
|
|
|
30
30
|
import "./chunk-CM7LVUKC.js";
|
|
31
31
|
import "./chunk-TVQCDDSZ.js";
|
|
32
32
|
import "./chunk-TXS65BB2.js";
|
|
33
|
-
import "./chunk-
|
|
33
|
+
import "./chunk-ZEVJGMNB.js";
|
|
34
34
|
export {
|
|
35
35
|
DEFAULT_ALLOWANCE_LABELS,
|
|
36
36
|
DEFAULT_SESSION_USAGE_LIMIT_LABELS,
|
package/dist/workbench.js
CHANGED
|
@@ -6,21 +6,21 @@ import {
|
|
|
6
6
|
enableCodeEditor
|
|
7
7
|
} from "./chunk-TOTNIUZK.js";
|
|
8
8
|
import "./chunk-YSRBFJMQ.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-2BISI664.js";
|
|
10
10
|
import {
|
|
11
11
|
enableDesktopViewer
|
|
12
12
|
} from "./chunk-QIOARE4I.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-22V2QCEM.js";
|
|
14
14
|
import "./chunk-ZUWF4NF7.js";
|
|
15
15
|
import {
|
|
16
16
|
enableSandboxTerminal
|
|
17
17
|
} from "./chunk-FPS7ARET.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-4FBJFQFU.js";
|
|
19
19
|
import "./chunk-QV3DJVRZ.js";
|
|
20
20
|
import "./chunk-TNEZNMSN.js";
|
|
21
21
|
import "./chunk-5I4VRWBB.js";
|
|
22
22
|
import "./chunk-TXS65BB2.js";
|
|
23
|
-
import "./chunk-
|
|
23
|
+
import "./chunk-ZEVJGMNB.js";
|
|
24
24
|
|
|
25
25
|
// src/workbench.ts
|
|
26
26
|
function enableWorkbench() {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opengeni/react",
|
|
3
|
-
"version": "4.6.
|
|
3
|
+
"version": "4.6.2-canary.39853438886001",
|
|
4
4
|
"description": "React hooks and styled components for Opengeni: live session streaming, chat composer, message timeline, session status, and fleet views — token-themed (CSS variables), dark-first, built on Tailwind v4 + Radix + Motion.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -251,9 +251,9 @@
|
|
|
251
251
|
"@dnd-kit/utilities": "3.2.2",
|
|
252
252
|
"@fontsource-variable/noto-sans-arabic": "5.2.10",
|
|
253
253
|
"@fontsource-variable/noto-sans-jp": "5.2.10",
|
|
254
|
-
"@opengeni/connect": "4.6.
|
|
255
|
-
"@opengeni/contracts": "4.6.
|
|
256
|
-
"@opengeni/sdk": "4.6.
|
|
254
|
+
"@opengeni/connect": "4.6.2-canary.39853438886001",
|
|
255
|
+
"@opengeni/contracts": "4.6.2-canary.39853438886001",
|
|
256
|
+
"@opengeni/sdk": "4.6.2-canary.39853438886001",
|
|
257
257
|
"@tanstack/react-virtual": "^3.14.11",
|
|
258
258
|
"class-variance-authority": "^0.7.1",
|
|
259
259
|
"clsx": "^2.1.1",
|
|
@@ -34,6 +34,7 @@ export function nativeCatalogProviderId(
|
|
|
34
34
|
if (item.kind !== "mcp") return null;
|
|
35
35
|
const url = item.mcpUrl ?? item.endpointUrl;
|
|
36
36
|
if (url === "https://gmailmcp.googleapis.com/mcp/v1") return "gmail";
|
|
37
|
+
if (url === "https://drivemcp.googleapis.com/mcp/v1") return "google-drive";
|
|
37
38
|
if (url === "https://mcp.slack.com/mcp") return "slack-personal";
|
|
38
39
|
return null;
|
|
39
40
|
}
|
|
@@ -270,3 +270,70 @@ describe("shared capability connection lifecycle", () => {
|
|
|
270
270
|
});
|
|
271
271
|
});
|
|
272
272
|
});
|
|
273
|
+
|
|
274
|
+
test("Drive actions use the dedicated Connect attempt and never generic OAuth or early enable", async () => {
|
|
275
|
+
const originalWindow = Object.getOwnPropertyDescriptor(globalThis, "window");
|
|
276
|
+
const saved = new Map<string, string>();
|
|
277
|
+
Object.defineProperty(globalThis, "window", {
|
|
278
|
+
configurable: true,
|
|
279
|
+
value: {
|
|
280
|
+
location: { href: "https://app.example/capabilities" },
|
|
281
|
+
sessionStorage: {
|
|
282
|
+
setItem: (key: string, value: string) => saved.set(key, value),
|
|
283
|
+
getItem: (key: string) => saved.get(key) ?? null,
|
|
284
|
+
removeItem: (key: string) => saved.delete(key),
|
|
285
|
+
},
|
|
286
|
+
},
|
|
287
|
+
});
|
|
288
|
+
try {
|
|
289
|
+
const drive = CapabilityCatalogItem.parse({
|
|
290
|
+
...item,
|
|
291
|
+
id: "drive",
|
|
292
|
+
authKind: "oauth2",
|
|
293
|
+
mcpUrl: "https://drivemcp.googleapis.com/mcp/v1",
|
|
294
|
+
providerDomain: "drivemcp.googleapis.com",
|
|
295
|
+
});
|
|
296
|
+
const beginConnect = mock(async () => ({
|
|
297
|
+
id: "drive-attempt",
|
|
298
|
+
revision: 1,
|
|
299
|
+
state: "credential_input",
|
|
300
|
+
}));
|
|
301
|
+
const advanceConnectAttempt = mock(async () => ({
|
|
302
|
+
id: "drive-attempt",
|
|
303
|
+
nextAction: { type: "authorize", url: "https://accounts.google.com/consent" },
|
|
304
|
+
}));
|
|
305
|
+
const startConnectionOAuth = mock(async () => {
|
|
306
|
+
throw new Error("Generic OAuth must not run");
|
|
307
|
+
});
|
|
308
|
+
const h = harness({
|
|
309
|
+
beginConnect,
|
|
310
|
+
connectTransport: () => ({ advance: advanceConnectAttempt }),
|
|
311
|
+
startConnectionOAuth,
|
|
312
|
+
});
|
|
313
|
+
await performCapabilityAction(
|
|
314
|
+
{ ...h.options, item: drive, connectReturnUrl: "https://app.example/capabilities" },
|
|
315
|
+
{
|
|
316
|
+
type: "reconnect_oauth",
|
|
317
|
+
item: drive,
|
|
318
|
+
ownership: "personal",
|
|
319
|
+
connectionId: "existing",
|
|
320
|
+
connectionWorkspaceId: "account-workspace",
|
|
321
|
+
},
|
|
322
|
+
);
|
|
323
|
+
expect(beginConnect).toHaveBeenCalledWith(
|
|
324
|
+
"account-workspace",
|
|
325
|
+
expect.objectContaining({
|
|
326
|
+
providerId: "google-drive",
|
|
327
|
+
reconnectAccountId: "existing",
|
|
328
|
+
ownership: "personal",
|
|
329
|
+
}),
|
|
330
|
+
);
|
|
331
|
+
expect(startConnectionOAuth).not.toHaveBeenCalled();
|
|
332
|
+
expect(h.enableCapability).not.toHaveBeenCalled();
|
|
333
|
+
expect(h.options.redirect).toHaveBeenCalledWith("https://accounts.google.com/consent");
|
|
334
|
+
expect(saved.size).toBe(1);
|
|
335
|
+
} finally {
|
|
336
|
+
if (originalWindow) Object.defineProperty(globalThis, "window", originalWindow);
|
|
337
|
+
else Reflect.deleteProperty(globalThis, "window");
|
|
338
|
+
}
|
|
339
|
+
});
|
|
@@ -15,6 +15,7 @@ import {
|
|
|
15
15
|
type IntegrationClass,
|
|
16
16
|
type IntegrationConnectMethod,
|
|
17
17
|
} from "../../lib/integration-connect-analytics";
|
|
18
|
+
import { beginDriveConnect, DRIVE_MCP_URL } from "../../lib/drive-connect-return";
|
|
18
19
|
import { startMcpOAuthWithTimeout } from "../../lib/mcp-oauth";
|
|
19
20
|
import { toast } from "../../lib/toast";
|
|
20
21
|
|
|
@@ -132,6 +133,33 @@ async function performCapabilityActionUntracked(
|
|
|
132
133
|
);
|
|
133
134
|
}
|
|
134
135
|
|
|
136
|
+
// The built-in Drive action uses a server-owned Connect provider identity.
|
|
137
|
+
// Custom MCP requests continue through the generic OAuth route below.
|
|
138
|
+
if (
|
|
139
|
+
["oauth", "add_oauth_account", "reconnect_oauth"].includes(action.type) &&
|
|
140
|
+
(item.mcpUrl ?? item.endpointUrl) === DRIVE_MCP_URL
|
|
141
|
+
) {
|
|
142
|
+
if (!("ownership" in action) || action.ownership !== "personal")
|
|
143
|
+
throw new Error("Google Drive connections must be personal-owned.");
|
|
144
|
+
const persisted = await persistIfRegistry(item, registry);
|
|
145
|
+
const target = new URL(returnPathFor(persisted.id), connectReturnUrl ?? window.location.href);
|
|
146
|
+
const authorizationUrl = await beginDriveConnect({
|
|
147
|
+
client,
|
|
148
|
+
workspaceId,
|
|
149
|
+
itemId: persisted.id,
|
|
150
|
+
returnUrl: target.toString(),
|
|
151
|
+
...(action.type === "reconnect_oauth" && action.connectionId
|
|
152
|
+
? { reconnectAccountId: action.connectionId }
|
|
153
|
+
: {}),
|
|
154
|
+
...(action.type === "reconnect_oauth" && action.connectionWorkspaceId
|
|
155
|
+
? { connectionWorkspaceId: action.connectionWorkspaceId }
|
|
156
|
+
: {}),
|
|
157
|
+
storage: window.sessionStorage,
|
|
158
|
+
});
|
|
159
|
+
redirect(authorizationUrl);
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
162
|
+
|
|
135
163
|
if (action.type === "install_skill") {
|
|
136
164
|
if (!canManageSkills) {
|
|
137
165
|
throw new Error("You need permission to manage workspace documents to install Skills.");
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Control (and the chat being switched to) behaves exactly as without it.
|
|
6
6
|
*/
|
|
7
7
|
import { MessageSquareIcon, PinIcon, type LucideIcon } from "lucide-react";
|
|
8
|
-
import { useEffect, useRef } from "react";
|
|
8
|
+
import { Fragment, useEffect, useRef } from "react";
|
|
9
9
|
import { createPortal } from "react-dom";
|
|
10
10
|
import type { ChatRecord } from "../../lib/actions/chat-directory";
|
|
11
11
|
import { readChatDirectory, useChatDirectoryVersion } from "../../lib/actions/chat-directory";
|
|
@@ -31,11 +31,13 @@ export default function ChatSwitcher(props: {
|
|
|
31
31
|
currentChatId: string | null;
|
|
32
32
|
platform: ChordPlatform;
|
|
33
33
|
onHover(index: number): void;
|
|
34
|
+
/** The app learned about more chats; the list may grow at its end. */
|
|
35
|
+
onDirectoryChange(): void;
|
|
34
36
|
onPick(index: number): void;
|
|
35
37
|
onDismiss(): void;
|
|
36
38
|
}) {
|
|
37
39
|
const listRef = useRef<HTMLDivElement>(null);
|
|
38
|
-
const { index, visible } = props.state;
|
|
40
|
+
const { index, visible, viewed } = props.state;
|
|
39
41
|
// Read statuses as soon as Control+Tab is pressed, before the list shows.
|
|
40
42
|
useChatStatusRefresh({
|
|
41
43
|
subjectId: props.subjectId,
|
|
@@ -43,7 +45,12 @@ export default function ChatSwitcher(props: {
|
|
|
43
45
|
ids: props.state.ids,
|
|
44
46
|
active: true,
|
|
45
47
|
});
|
|
46
|
-
useChatDirectoryVersion(props.subjectId);
|
|
48
|
+
const version = useChatDirectoryVersion(props.subjectId);
|
|
49
|
+
const onDirectoryChange = useRef(props.onDirectoryChange);
|
|
50
|
+
onDirectoryChange.current = props.onDirectoryChange;
|
|
51
|
+
useEffect(() => {
|
|
52
|
+
onDirectoryChange.current();
|
|
53
|
+
}, [version]);
|
|
47
54
|
useEffect(() => {
|
|
48
55
|
if (!visible) return;
|
|
49
56
|
listRef.current
|
|
@@ -100,7 +107,7 @@ export default function ChatSwitcher(props: {
|
|
|
100
107
|
record && record.workspaceId !== props.workspaceId
|
|
101
108
|
? (workspaceNames.get(record.workspaceId) ?? null)
|
|
102
109
|
: null;
|
|
103
|
-
|
|
110
|
+
const row = (
|
|
104
111
|
<div
|
|
105
112
|
key={id}
|
|
106
113
|
id={`og-chat-switcher-${position}`}
|
|
@@ -135,6 +142,20 @@ export default function ChatSwitcher(props: {
|
|
|
135
142
|
) : null}
|
|
136
143
|
</div>
|
|
137
144
|
);
|
|
145
|
+
// Past the chats the person opened, the list goes on by activity.
|
|
146
|
+
return position === viewed && viewed > 0 ? (
|
|
147
|
+
<Fragment key={id}>
|
|
148
|
+
<div
|
|
149
|
+
role="presentation"
|
|
150
|
+
className="mt-1 border-t border-border px-2.5 pt-2.5 pb-1 text-xs leading-4.5 font-medium text-fg-muted"
|
|
151
|
+
>
|
|
152
|
+
Recently active
|
|
153
|
+
</div>
|
|
154
|
+
{row}
|
|
155
|
+
</Fragment>
|
|
156
|
+
) : (
|
|
157
|
+
row
|
|
158
|
+
);
|
|
138
159
|
})}
|
|
139
160
|
</div>
|
|
140
161
|
<div className="flex shrink-0 items-center gap-4 border-t border-border px-4 py-2 text-xs text-fg-muted">
|