@opengeni/react 4.5.0 → 4.5.1-canary.39832248373001
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 +24 -24
- package/dist/app/components/Composer.js +20 -20
- package/dist/app/components/agent/agent-capability-picker.js +4 -4
- package/dist/app/components/artifacts/artifact-library.js +17 -17
- package/dist/app/components/artifacts/chat-interactive-block.js +15 -15
- package/dist/app/components/artifacts/inline-chat-image.js +27 -27
- package/dist/app/components/artifacts/retained-file-preview.js +30 -30
- package/dist/app/components/artifacts/retained-text-preview.js +3 -3
- package/dist/app/components/artifacts/site-audience.js +4 -4
- package/dist/app/components/artifacts/site-conversations.js +20 -20
- package/dist/app/components/artifacts/site-data.js +19 -19
- package/dist/app/components/artifacts/site-publishing.js +36 -36
- package/dist/app/components/artifacts/site-settings.js +45 -45
- package/dist/app/components/billing-class-mark.js +4 -4
- package/dist/app/components/capabilities/capability-detail-sheet.js +9 -9
- package/dist/app/components/capabilities/capability-logo-source.js +9 -9
- package/dist/app/components/capabilities/connector-tool-permissions.js +3 -3
- package/dist/app/components/capabilities/native-connect-setup.js +11 -11
- package/dist/app/components/capabilities/perform-capability-action.js +1 -1
- package/dist/app/components/capabilities/prepared-mcp-setup-card.js +11 -11
- package/dist/app/components/capabilities/session-capability-card.js +71 -71
- package/dist/app/components/capabilities/session-chrome-card.js +30 -30
- package/dist/app/components/capabilities/session-custom-mcp-card.js +16 -16
- package/dist/app/components/capabilities/session-github-card.js +21 -21
- package/dist/app/components/capabilities/session-machine-card.js +29 -29
- package/dist/app/components/capabilities/use-capabilities-catalog.js +3 -3
- package/dist/app/components/capabilities/use-connection-accounts.js +1 -1
- package/dist/app/components/command-menu/chat-status.js +14 -14
- package/dist/app/components/command-menu/chat-switcher.js +19 -19
- package/dist/app/components/command-menu/command-menu.js +28 -28
- package/dist/app/components/command-menu/shortcut-sheet.js +10 -10
- package/dist/app/components/composer-capabilities-menu-body.js +3 -3
- package/dist/app/components/composer-mobile-plus-panel.js +19 -19
- 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 +10 -10
- package/dist/app/components/desktop/app-shots.js +1 -1
- package/dist/app/components/feedback.js +2 -2
- package/dist/app/components/follow-up-repository-menu-body.js +5 -5
- package/dist/app/components/follow-up-repository-picker.js +1 -1
- package/dist/app/components/github-app-connect-launcher.js +1 -1
- package/dist/app/components/knowledge/agent-learning-settings.js +3 -3
- package/dist/app/components/machines/connect-machine-dialog.js +16 -16
- package/dist/app/components/markdown.js +8 -8
- package/dist/app/components/message-context-pills.js +2 -2
- package/dist/app/components/models/models-ui.js +7 -7
- package/dist/app/components/pickers.js +8 -8
- package/dist/app/components/rail/rail-context.js +1 -1
- package/dist/app/components/rail/rail-sections.js +57 -57
- package/dist/app/components/rail/session-header.js +45 -45
- package/dist/app/components/rail/session-list.js +55 -55
- package/dist/app/components/rail/session-row-hover-details.js +21 -21
- package/dist/app/components/rail/session-shell.js +93 -93
- package/dist/app/components/rail/site-session-group-heading.js +10 -10
- package/dist/app/components/repository-picker.js +5 -5
- package/dist/app/components/secrets/session-secrets-panel.js +3 -3
- package/dist/app/components/session/agent-configuration-panel.js +32 -32
- package/dist/app/components/session/artifact-session-page.js +2 -2
- package/dist/app/components/session/banners.js +10 -10
- package/dist/app/components/session/codex-account-indicator.js +9 -9
- package/dist/app/components/session/editable-artifacts-workspace.js +40 -40
- package/dist/app/components/session/failed-session-banner.js +6 -6
- package/dist/app/components/session/human-input.js +51 -51
- package/dist/app/components/session/inspector.js +80 -80
- package/dist/app/components/session/message-actions.js +2 -2
- package/dist/app/components/session/message-resource-attachments.js +18 -18
- package/dist/app/components/session/model-account-indicator.js +8 -8
- package/dist/app/components/session/model-context-inspector.js +2 -2
- package/dist/app/components/session/new-session-settings-menu.js +10 -10
- package/dist/app/components/session/sandbox-switcher.js +9 -9
- package/dist/app/components/session/sandbox-workspace.js +68 -68
- package/dist/app/components/session/search-markdown-highlight.js +9 -9
- package/dist/app/components/session/search-results-view.js +10 -10
- package/dist/app/components/session/session-admin-access.js +9 -9
- package/dist/app/components/session/session-admission-notice.js +2 -2
- package/dist/app/components/session/session-machine-access-notice.js +2 -2
- package/dist/app/components/session/session-retention.js +4 -4
- package/dist/app/components/session/session-search-dialog.js +10 -10
- package/dist/app/components/session/session-skill-reviews.js +1 -1
- package/dist/app/components/session/session-tenancy-control.js +22 -22
- package/dist/app/components/session/session-usage-limit-section.js +9 -9
- package/dist/app/components/session/session-wait-status.js +9 -9
- package/dist/app/components/session/subagents.js +13 -13
- package/dist/app/components/session-connectors-menu-body.js +5 -5
- package/dist/app/components/settings/row-select.js +1 -1
- package/dist/app/components/transcription-settings.js +2 -2
- package/dist/app/components/ui/destructive-confirm.js +6 -6
- package/dist/app/components/usage/usage-entry.js +4 -4
- package/dist/app/components/workspace-composer-plus.js +18 -18
- package/dist/app/embed/session-app.js +255 -255
- package/dist/app/lib/actions/actions-provider.js +10 -10
- package/dist/app/lib/codex-usage-query.js +2 -2
- package/dist/app/lib/composer-connectors.js +10 -10
- package/dist/app/lib/events.js +14 -14
- package/dist/app/lib/session-branch-cache.js +11 -11
- package/dist/app/lib/session-create.js +2 -2
- package/dist/app/lib/session-group-pagination.js +11 -11
- package/dist/app/lib/session-hover-facts.js +12 -12
- package/dist/app/lib/session-model.js +3 -3
- package/dist/app/lib/session-rail.js +9 -9
- package/dist/app/lib/session-rename.js +3 -3
- package/dist/app/lib/sessions-group.js +11 -11
- package/dist/app/lib/turn-failure-analytics.js +1 -1
- package/dist/app/lib/use-duplicate-site.js +2 -2
- package/dist/app/lib/use-follow-up-repositories.js +3 -3
- package/dist/app/lib/use-workspace-machines.js +2 -2
- package/dist/app/lib/use-workspace-model-catalog.js +3 -3
- package/dist/app/lib/use-workspace-rigs.js +3 -3
- package/dist/app/lib/workspace-navigation-preference.js +1 -1
- package/dist/app/lib/workspace-scope-context.js +1 -1
- package/dist/app/routes/artifacts.js +125 -125
- package/dist/app/routes/retained-artifact.js +64 -64
- package/dist/app/routes/session-unavailable.js +3 -3
- package/dist/app/routes/session.js +160 -160
- package/dist/app/routes/sessions-index-hydration.js +3 -3
- package/dist/app/routes/sessions-index.js +112 -112
- package/dist/app/routes/site-view.js +83 -83
- package/dist/artifacts-document.js +2 -2
- package/dist/artifacts-presentation.js +2 -2
- package/dist/artifacts-spreadsheet.js +2 -2
- package/dist/artifacts.js +36 -36
- package/dist/{browser-viewer-QMCNV4RI.js → browser-viewer-VPK3CV2H.js} +6 -6
- package/dist/{chat-interactive-block-PMIAUXSO.js → chat-interactive-block-AMDSW656.js} +5 -5
- package/dist/{chunk-3STBLX4O.js → chunk-25LWDG5D.js} +5 -5
- package/dist/{chunk-MCTTONOW.js → chunk-2CKVVAGP.js} +22 -22
- package/dist/{chunk-J7FBBLHF.js → chunk-2DL6NJP5.js} +37 -37
- package/dist/{chunk-CFFNT2OY.js → chunk-3GLAPCVI.js} +8 -8
- package/dist/{chunk-BXQYAAVE.js → chunk-3XOISKZC.js} +4 -4
- package/dist/{chunk-N3ZP4IDU.js → chunk-45WYYFP6.js} +2 -2
- package/dist/{chunk-52WK2GGK.js → chunk-4MQLGMV2.js} +7 -7
- package/dist/{chunk-MXLKI7BI.js → chunk-4U4GXWXS.js} +2 -2
- package/dist/{chunk-3RMKPHBL.js → chunk-5HIOVXOX.js} +2 -2
- package/dist/{chunk-5W6ZDKRR.js → chunk-5M23GZA2.js} +4 -4
- package/dist/{chunk-S2U4CDAC.js → chunk-6AFSZKZA.js} +149 -149
- package/dist/chunk-6AFSZKZA.js.map +1 -0
- package/dist/{chunk-UUGR3X5I.js → chunk-6MRY2RUZ.js} +5 -5
- package/dist/{chunk-ZVVT72MT.js → chunk-6O4VWKSO.js} +2 -2
- package/dist/{chunk-FTX5CNHA.js → chunk-767WCGAX.js} +4 -4
- package/dist/{chunk-5JHRMUAZ.js → chunk-7IYAHFPE.js} +11 -11
- package/dist/{chunk-EJ7WARW7.js → chunk-7J7PZB4S.js} +2 -2
- package/dist/{chunk-RIYZFKIM.js → chunk-7PUFAH4I.js} +38 -38
- package/dist/{chunk-KEXYBG7Q.js → chunk-7R2JQHBX.js} +2 -2
- package/dist/{chunk-TV6BWONY.js → chunk-7VN6VC3D.js} +2 -2
- package/dist/{chunk-5FEN3KYH.js → chunk-A2E3ZF6N.js} +11 -11
- package/dist/{chunk-SM5QX6UK.js → chunk-A2EWJQXX.js} +4 -4
- package/dist/{chunk-UP7I3W6O.js → chunk-A6CK4ENG.js} +54 -54
- package/dist/{chunk-TIQPKOFW.js → chunk-A6T4FGE7.js} +2 -2
- package/dist/{chunk-7P4AQMGA.js → chunk-AOUCHCSB.js} +10 -10
- package/dist/{chunk-RFLYID6H.js → chunk-AT4K4F6S.js} +4 -4
- package/dist/{chunk-YV56F4UP.js → chunk-AW3QEFOF.js} +179 -179
- package/dist/chunk-AW3QEFOF.js.map +1 -0
- package/dist/{chunk-CMLJSF2F.js → chunk-BLPXOHG6.js} +11 -11
- package/dist/{chunk-LF5CBAOS.js → chunk-C535KSTY.js} +4 -4
- package/dist/{chunk-4YXAQMTD.js → chunk-CB574ERL.js} +10 -10
- package/dist/{chunk-552UYIQ7.js → chunk-CDUDKETD.js} +19 -19
- package/dist/{chunk-PCFK7HKD.js → chunk-D3RK3NGM.js} +17 -17
- package/dist/{chunk-LHLK7FUA.js → chunk-D64Z4V26.js} +2 -2
- package/dist/{chunk-JO6R5EXF.js → chunk-DFXZYNTX.js} +4 -4
- package/dist/{chunk-4RMN4E2Y.js → chunk-DKCX643S.js} +13 -13
- package/dist/{chunk-CD3MO3IC.js → chunk-E36IC3LU.js} +2 -2
- package/dist/{chunk-7XO7YKPC.js → chunk-ECHYJP63.js} +70 -70
- package/dist/{chunk-QFMLAT7L.js → chunk-EH7TTYE6.js} +184 -184
- package/dist/{chunk-7KIENXRE.js → chunk-EMCB6XKU.js} +1 -1
- package/dist/{chunk-FFNPUSVO.js → chunk-ERG355NM.js} +6 -6
- package/dist/{chunk-22JFMNMF.js → chunk-F2RMKGDQ.js} +4 -4
- package/dist/{chunk-7TCT7KPQ.js → chunk-F33EDYS7.js} +224 -224
- package/dist/chunk-F33EDYS7.js.map +1 -0
- package/dist/{chunk-4VK2R5QC.js → chunk-F3FN6DO6.js} +2 -2
- package/dist/{chunk-62VER7O4.js → chunk-F3NERYBQ.js} +6 -6
- package/dist/{chunk-S37GP7LX.js → chunk-FB3B45FP.js} +18 -18
- package/dist/{chunk-U6MPB3K6.js → chunk-FVL4B552.js} +7 -7
- package/dist/{chunk-WCMG4HYI.js → chunk-G2BX56CN.js} +10 -10
- package/dist/{chunk-EQE3MNQN.js → chunk-GFSOXB2K.js} +5 -5
- package/dist/{chunk-3X5FKDYQ.js → chunk-GZGQHQI7.js} +24 -24
- package/dist/{chunk-GGV4NSG3.js → chunk-H4IE2PYF.js} +6 -6
- package/dist/{chunk-J22HD2PB.js → chunk-HNNM2GDN.js} +5 -5
- package/dist/{chunk-GXW2I2M2.js → chunk-HPB4KSV3.js} +2 -2
- package/dist/{chunk-YEROLKOA.js → chunk-HSQRYJ4P.js} +15 -15
- package/dist/{chunk-HU6JTNWF.js → chunk-HUXDGWAN.js} +2 -2
- package/dist/{chunk-ITX2TB4K.js → chunk-I66ZB6KD.js} +4 -4
- package/dist/{chunk-FDAV72IX.js → chunk-IC7KNOBB.js} +7 -7
- package/dist/{chunk-PO3BH3KQ.js → chunk-IIO2MR3B.js} +2 -2
- package/dist/{chunk-FWOBNL2A.js → chunk-IPPVX5GF.js} +1 -1
- package/dist/{chunk-4SAGYEVB.js → chunk-IUK5QGP5.js} +2 -2
- package/dist/{chunk-4XQC7VLT.js → chunk-JWN7SLTO.js} +11 -11
- package/dist/{chunk-5Y2FPLZE.js → chunk-KFWVBTUH.js} +7 -7
- package/dist/{chunk-JXT5QDJC.js → chunk-KNFDWNCH.js} +5 -5
- package/dist/{chunk-5DSKMG2I.js → chunk-LEXPBQ56.js} +4 -4
- package/dist/{chunk-LT4J7RHI.js → chunk-LKJ2C7PH.js} +10 -10
- package/dist/{chunk-XN7NSPE6.js → chunk-MJQBC7C5.js} +2 -2
- package/dist/{chunk-JQCGPTZ6.js → chunk-MM7OKOTE.js} +9 -9
- package/dist/{chunk-ULJAOMJA.js → chunk-ND2WCWXI.js} +4 -4
- package/dist/{chunk-EYS4ZOF5.js → chunk-NML44AW2.js} +2 -2
- package/dist/{chunk-TL7BOFFL.js → chunk-NQQKOJDI.js} +2 -2
- package/dist/{chunk-CP7ZQHBW.js → chunk-O4DYOSOL.js} +13 -13
- package/dist/{chunk-GRSODLVO.js → chunk-OANSIX34.js} +4 -4
- package/dist/{chunk-2QBYDGWO.js → chunk-OFB6TUDC.js} +7 -7
- package/dist/{chunk-EPWD4KRA.js → chunk-OOEO4MKY.js} +2 -2
- package/dist/{chunk-CDEXRJB6.js → chunk-PEKPWK5M.js} +4 -4
- package/dist/{chunk-4GLLWX33.js → chunk-PKEKZ2VA.js} +9 -9
- package/dist/{chunk-3RQUWFZT.js → chunk-PMD7V4N7.js} +65 -65
- package/dist/{chunk-3RQUWFZT.js.map → chunk-PMD7V4N7.js.map} +1 -1
- package/dist/{chunk-7FJMRJDG.js → chunk-PVR5EELP.js} +2 -2
- package/dist/{chunk-Y5BSA3I7.js → chunk-QBADR2FO.js} +6 -6
- package/dist/{chunk-22FFOHPT.js → chunk-QLIDZGPV.js} +11 -11
- package/dist/{chunk-JM4HQPAI.js → chunk-QZRDCFHI.js} +5 -5
- package/dist/{chunk-5W7KJ5NQ.js → chunk-R7XCJWCD.js} +37 -37
- package/dist/{chunk-GT7JFQ4E.js → chunk-RAMZTZOB.js} +111 -111
- package/dist/{chunk-A4BD4ZVB.js → chunk-S7PVL7XH.js} +4 -4
- package/dist/{chunk-I6KIQKU6.js → chunk-SCNEQFIW.js} +3 -3
- package/dist/{chunk-4LPA25NQ.js → chunk-SD2K5ZN5.js} +4 -4
- package/dist/{chunk-IDXTASGN.js → chunk-SD4PPZFB.js} +2 -2
- package/dist/{chunk-4HEXNAFI.js → chunk-SFAU5R5S.js} +18 -18
- package/dist/chunk-SFAU5R5S.js.map +1 -0
- package/dist/{chunk-35BC2FU2.js → chunk-SJORXXLV.js} +18 -18
- package/dist/{chunk-ZS2UQ3DV.js → chunk-SOXZ4LGS.js} +4 -4
- package/dist/{chunk-ACL2V2KE.js → chunk-SQDPHCK2.js} +19 -19
- package/dist/{chunk-YJPKDRI2.js → chunk-TDIOBPLA.js} +13 -13
- package/dist/{chunk-RYSRFAHN.js → chunk-TEPPPAJI.js} +19 -19
- package/dist/{chunk-FWYEZ3LE.js → chunk-THVIT3PW.js} +37 -37
- package/dist/{chunk-MIECLOQC.js → chunk-TN5T5HRZ.js} +6 -6
- package/dist/{chunk-RQNZDTKT.js → chunk-TR4HIKJ2.js} +15 -15
- package/dist/{chunk-J5MEDX7C.js → chunk-U47YDYLQ.js} +8 -8
- package/dist/{chunk-HQWVDQXW.js → chunk-UGEWCWVV.js} +7 -7
- package/dist/{chunk-YXA2EKV3.js → chunk-UUSAOIJR.js} +3 -3
- package/dist/{chunk-YVBHGMKC.js → chunk-VAIESMPY.js} +4 -4
- package/dist/{chunk-SY2AAZNB.js → chunk-VO6RVVP7.js} +1 -1
- package/dist/{chunk-3GU7AWG7.js → chunk-VPNXQUUS.js} +17 -17
- package/dist/{chunk-WKHUZIOW.js → chunk-VW3BBTMA.js} +1 -1
- package/dist/{chunk-7NPCEBZE.js → chunk-VWSFA4LJ.js} +4 -4
- package/dist/{chunk-GZS37O3G.js → chunk-WBPQ7OPC.js} +1 -1
- package/dist/{chunk-5FA455GR.js → chunk-WNG757ID.js} +4 -4
- package/dist/{chunk-G4HQUBO4.js → chunk-WSLPZ43N.js} +12 -12
- package/dist/{chunk-73WI7FL2.js → chunk-WUHB422G.js} +18 -18
- package/dist/{chunk-Z7IGO5EA.js → chunk-WVX5AQXS.js} +2 -2
- package/dist/{chunk-2NC7NZCE.js → chunk-WWOHORRO.js} +5 -5
- package/dist/{chunk-SSOO4GWN.js → chunk-WYDZP5F2.js} +114 -114
- package/dist/{chunk-SSOO4GWN.js.map → chunk-WYDZP5F2.js.map} +1 -1
- package/dist/{chunk-V4QZ7UBK.js → chunk-WYEPUXGL.js} +2 -2
- package/dist/{chunk-ZEIFJ6PX.js → chunk-XN6CALYY.js} +8 -8
- package/dist/{chunk-VH5EGTH2.js → chunk-XNACICAB.js} +3 -3
- package/dist/{chunk-YYCOSTUU.js → chunk-XU4I47IP.js} +16 -16
- package/dist/{chunk-GHHM6WN4.js → chunk-YG3IJCM2.js} +3 -3
- package/dist/{chunk-NEK4WB5P.js → chunk-YGSJWWT3.js} +2 -2
- package/dist/{chunk-IBA5FMRE.js → chunk-YO64YVYL.js} +133 -133
- package/dist/{chunk-XMNUZUUA.js → chunk-Z2DAWUO3.js} +6 -6
- package/dist/{chunk-BCM7C3MJ.js → chunk-Z4GJB24B.js} +8 -8
- package/dist/{chunk-UYNCMZX5.js → chunk-ZX5H7LWD.js} +3 -3
- package/dist/composer.js +12 -12
- package/dist/{computer-viewer-25AJIDYA.js → computer-viewer-VA5JONUH.js} +6 -6
- package/dist/connect.js +8 -8
- package/dist/{embedded-new-voice-RZZEJT6M.js → embedded-new-voice-6BILAOUG.js} +6 -6
- package/dist/{embedded-voice-6OKSSPLW.js → embedded-voice-UDE4JRKB.js} +6 -6
- package/dist/index.js +215 -215
- package/dist/interaction.js +8 -8
- package/dist/{latest-question-2PFWQSSG.js → latest-question-4WDBECXB.js} +2 -2
- package/dist/machines.js +1 -1
- package/dist/{model-policy-picker-menu-VVFGGAI6.js → model-policy-picker-menu-NRTO6FRP.js} +5 -5
- package/dist/native-previews.js +3 -3
- package/dist/{queue-surface-implementation-4SHOQPQQ.js → queue-surface-implementation-H4XSNHZE.js} +4 -4
- package/dist/realtime.js +5 -5
- package/dist/{sandbox-files-CCOTGXXA.js → sandbox-files-IEHODU35.js} +8 -8
- package/dist/session-app.js +255 -255
- package/dist/session-list-model.js +2 -2
- package/dist/session-ui.js +64 -64
- package/dist/session.js +18 -18
- package/dist/terminal.js +1 -1
- package/dist/{timeline-annotation-markers-KHNYNY2J.js → timeline-annotation-markers-ZSOFW7PG.js} +4 -4
- package/dist/{timeline-annotation-selection-AXEDJHBP.js → timeline-annotation-selection-YWV2UC34.js} +6 -6
- package/dist/{timeline-annotations-dialog-AV4ZBXRC.js → timeline-annotations-dialog-ZWQVX2HI.js} +7 -7
- package/dist/timeline-model.js +27 -27
- package/dist/ui/access-list.js +20 -20
- package/dist/ui/choice-cards.js +2 -2
- package/dist/ui/detail-page.js +2 -2
- package/dist/ui/detail-sheet.js +2 -2
- package/dist/ui/diff-view.js +2 -2
- package/dist/ui/disclosure.js +4 -4
- package/dist/ui/flush-form-page.js +3 -3
- package/dist/ui/form-dialog.js +2 -2
- package/dist/ui/list-row.js +5 -5
- package/dist/ui/revision-history.js +11 -11
- package/dist/ui/role-select.js +6 -6
- package/dist/ui/settings-nav.js +3 -3
- package/dist/workbench.js +9 -9
- package/package.json +4 -4
- package/dist/chunk-4HEXNAFI.js.map +0 -1
- package/dist/chunk-7TCT7KPQ.js.map +0 -1
- package/dist/chunk-S2U4CDAC.js.map +0 -1
- package/dist/chunk-YV56F4UP.js.map +0 -1
- /package/dist/{browser-viewer-QMCNV4RI.js.map → browser-viewer-VPK3CV2H.js.map} +0 -0
- /package/dist/{chat-interactive-block-PMIAUXSO.js.map → chat-interactive-block-AMDSW656.js.map} +0 -0
- /package/dist/{chunk-3STBLX4O.js.map → chunk-25LWDG5D.js.map} +0 -0
- /package/dist/{chunk-MCTTONOW.js.map → chunk-2CKVVAGP.js.map} +0 -0
- /package/dist/{chunk-J7FBBLHF.js.map → chunk-2DL6NJP5.js.map} +0 -0
- /package/dist/{chunk-CFFNT2OY.js.map → chunk-3GLAPCVI.js.map} +0 -0
- /package/dist/{chunk-BXQYAAVE.js.map → chunk-3XOISKZC.js.map} +0 -0
- /package/dist/{chunk-N3ZP4IDU.js.map → chunk-45WYYFP6.js.map} +0 -0
- /package/dist/{chunk-52WK2GGK.js.map → chunk-4MQLGMV2.js.map} +0 -0
- /package/dist/{chunk-MXLKI7BI.js.map → chunk-4U4GXWXS.js.map} +0 -0
- /package/dist/{chunk-3RMKPHBL.js.map → chunk-5HIOVXOX.js.map} +0 -0
- /package/dist/{chunk-5W6ZDKRR.js.map → chunk-5M23GZA2.js.map} +0 -0
- /package/dist/{chunk-UUGR3X5I.js.map → chunk-6MRY2RUZ.js.map} +0 -0
- /package/dist/{chunk-ZVVT72MT.js.map → chunk-6O4VWKSO.js.map} +0 -0
- /package/dist/{chunk-FTX5CNHA.js.map → chunk-767WCGAX.js.map} +0 -0
- /package/dist/{chunk-5JHRMUAZ.js.map → chunk-7IYAHFPE.js.map} +0 -0
- /package/dist/{chunk-EJ7WARW7.js.map → chunk-7J7PZB4S.js.map} +0 -0
- /package/dist/{chunk-RIYZFKIM.js.map → chunk-7PUFAH4I.js.map} +0 -0
- /package/dist/{chunk-KEXYBG7Q.js.map → chunk-7R2JQHBX.js.map} +0 -0
- /package/dist/{chunk-TV6BWONY.js.map → chunk-7VN6VC3D.js.map} +0 -0
- /package/dist/{chunk-5FEN3KYH.js.map → chunk-A2E3ZF6N.js.map} +0 -0
- /package/dist/{chunk-SM5QX6UK.js.map → chunk-A2EWJQXX.js.map} +0 -0
- /package/dist/{chunk-UP7I3W6O.js.map → chunk-A6CK4ENG.js.map} +0 -0
- /package/dist/{chunk-TIQPKOFW.js.map → chunk-A6T4FGE7.js.map} +0 -0
- /package/dist/{chunk-7P4AQMGA.js.map → chunk-AOUCHCSB.js.map} +0 -0
- /package/dist/{chunk-RFLYID6H.js.map → chunk-AT4K4F6S.js.map} +0 -0
- /package/dist/{chunk-CMLJSF2F.js.map → chunk-BLPXOHG6.js.map} +0 -0
- /package/dist/{chunk-LF5CBAOS.js.map → chunk-C535KSTY.js.map} +0 -0
- /package/dist/{chunk-4YXAQMTD.js.map → chunk-CB574ERL.js.map} +0 -0
- /package/dist/{chunk-552UYIQ7.js.map → chunk-CDUDKETD.js.map} +0 -0
- /package/dist/{chunk-PCFK7HKD.js.map → chunk-D3RK3NGM.js.map} +0 -0
- /package/dist/{chunk-LHLK7FUA.js.map → chunk-D64Z4V26.js.map} +0 -0
- /package/dist/{chunk-JO6R5EXF.js.map → chunk-DFXZYNTX.js.map} +0 -0
- /package/dist/{chunk-4RMN4E2Y.js.map → chunk-DKCX643S.js.map} +0 -0
- /package/dist/{chunk-CD3MO3IC.js.map → chunk-E36IC3LU.js.map} +0 -0
- /package/dist/{chunk-7XO7YKPC.js.map → chunk-ECHYJP63.js.map} +0 -0
- /package/dist/{chunk-QFMLAT7L.js.map → chunk-EH7TTYE6.js.map} +0 -0
- /package/dist/{chunk-7KIENXRE.js.map → chunk-EMCB6XKU.js.map} +0 -0
- /package/dist/{chunk-FFNPUSVO.js.map → chunk-ERG355NM.js.map} +0 -0
- /package/dist/{chunk-22JFMNMF.js.map → chunk-F2RMKGDQ.js.map} +0 -0
- /package/dist/{chunk-4VK2R5QC.js.map → chunk-F3FN6DO6.js.map} +0 -0
- /package/dist/{chunk-62VER7O4.js.map → chunk-F3NERYBQ.js.map} +0 -0
- /package/dist/{chunk-S37GP7LX.js.map → chunk-FB3B45FP.js.map} +0 -0
- /package/dist/{chunk-U6MPB3K6.js.map → chunk-FVL4B552.js.map} +0 -0
- /package/dist/{chunk-WCMG4HYI.js.map → chunk-G2BX56CN.js.map} +0 -0
- /package/dist/{chunk-EQE3MNQN.js.map → chunk-GFSOXB2K.js.map} +0 -0
- /package/dist/{chunk-3X5FKDYQ.js.map → chunk-GZGQHQI7.js.map} +0 -0
- /package/dist/{chunk-GGV4NSG3.js.map → chunk-H4IE2PYF.js.map} +0 -0
- /package/dist/{chunk-J22HD2PB.js.map → chunk-HNNM2GDN.js.map} +0 -0
- /package/dist/{chunk-GXW2I2M2.js.map → chunk-HPB4KSV3.js.map} +0 -0
- /package/dist/{chunk-YEROLKOA.js.map → chunk-HSQRYJ4P.js.map} +0 -0
- /package/dist/{chunk-HU6JTNWF.js.map → chunk-HUXDGWAN.js.map} +0 -0
- /package/dist/{chunk-ITX2TB4K.js.map → chunk-I66ZB6KD.js.map} +0 -0
- /package/dist/{chunk-FDAV72IX.js.map → chunk-IC7KNOBB.js.map} +0 -0
- /package/dist/{chunk-PO3BH3KQ.js.map → chunk-IIO2MR3B.js.map} +0 -0
- /package/dist/{chunk-FWOBNL2A.js.map → chunk-IPPVX5GF.js.map} +0 -0
- /package/dist/{chunk-4SAGYEVB.js.map → chunk-IUK5QGP5.js.map} +0 -0
- /package/dist/{chunk-4XQC7VLT.js.map → chunk-JWN7SLTO.js.map} +0 -0
- /package/dist/{chunk-5Y2FPLZE.js.map → chunk-KFWVBTUH.js.map} +0 -0
- /package/dist/{chunk-JXT5QDJC.js.map → chunk-KNFDWNCH.js.map} +0 -0
- /package/dist/{chunk-5DSKMG2I.js.map → chunk-LEXPBQ56.js.map} +0 -0
- /package/dist/{chunk-LT4J7RHI.js.map → chunk-LKJ2C7PH.js.map} +0 -0
- /package/dist/{chunk-XN7NSPE6.js.map → chunk-MJQBC7C5.js.map} +0 -0
- /package/dist/{chunk-JQCGPTZ6.js.map → chunk-MM7OKOTE.js.map} +0 -0
- /package/dist/{chunk-ULJAOMJA.js.map → chunk-ND2WCWXI.js.map} +0 -0
- /package/dist/{chunk-EYS4ZOF5.js.map → chunk-NML44AW2.js.map} +0 -0
- /package/dist/{chunk-TL7BOFFL.js.map → chunk-NQQKOJDI.js.map} +0 -0
- /package/dist/{chunk-CP7ZQHBW.js.map → chunk-O4DYOSOL.js.map} +0 -0
- /package/dist/{chunk-GRSODLVO.js.map → chunk-OANSIX34.js.map} +0 -0
- /package/dist/{chunk-2QBYDGWO.js.map → chunk-OFB6TUDC.js.map} +0 -0
- /package/dist/{chunk-EPWD4KRA.js.map → chunk-OOEO4MKY.js.map} +0 -0
- /package/dist/{chunk-CDEXRJB6.js.map → chunk-PEKPWK5M.js.map} +0 -0
- /package/dist/{chunk-4GLLWX33.js.map → chunk-PKEKZ2VA.js.map} +0 -0
- /package/dist/{chunk-7FJMRJDG.js.map → chunk-PVR5EELP.js.map} +0 -0
- /package/dist/{chunk-Y5BSA3I7.js.map → chunk-QBADR2FO.js.map} +0 -0
- /package/dist/{chunk-22FFOHPT.js.map → chunk-QLIDZGPV.js.map} +0 -0
- /package/dist/{chunk-JM4HQPAI.js.map → chunk-QZRDCFHI.js.map} +0 -0
- /package/dist/{chunk-5W7KJ5NQ.js.map → chunk-R7XCJWCD.js.map} +0 -0
- /package/dist/{chunk-GT7JFQ4E.js.map → chunk-RAMZTZOB.js.map} +0 -0
- /package/dist/{chunk-A4BD4ZVB.js.map → chunk-S7PVL7XH.js.map} +0 -0
- /package/dist/{chunk-I6KIQKU6.js.map → chunk-SCNEQFIW.js.map} +0 -0
- /package/dist/{chunk-4LPA25NQ.js.map → chunk-SD2K5ZN5.js.map} +0 -0
- /package/dist/{chunk-IDXTASGN.js.map → chunk-SD4PPZFB.js.map} +0 -0
- /package/dist/{chunk-35BC2FU2.js.map → chunk-SJORXXLV.js.map} +0 -0
- /package/dist/{chunk-ZS2UQ3DV.js.map → chunk-SOXZ4LGS.js.map} +0 -0
- /package/dist/{chunk-ACL2V2KE.js.map → chunk-SQDPHCK2.js.map} +0 -0
- /package/dist/{chunk-YJPKDRI2.js.map → chunk-TDIOBPLA.js.map} +0 -0
- /package/dist/{chunk-RYSRFAHN.js.map → chunk-TEPPPAJI.js.map} +0 -0
- /package/dist/{chunk-FWYEZ3LE.js.map → chunk-THVIT3PW.js.map} +0 -0
- /package/dist/{chunk-MIECLOQC.js.map → chunk-TN5T5HRZ.js.map} +0 -0
- /package/dist/{chunk-RQNZDTKT.js.map → chunk-TR4HIKJ2.js.map} +0 -0
- /package/dist/{chunk-J5MEDX7C.js.map → chunk-U47YDYLQ.js.map} +0 -0
- /package/dist/{chunk-HQWVDQXW.js.map → chunk-UGEWCWVV.js.map} +0 -0
- /package/dist/{chunk-YXA2EKV3.js.map → chunk-UUSAOIJR.js.map} +0 -0
- /package/dist/{chunk-YVBHGMKC.js.map → chunk-VAIESMPY.js.map} +0 -0
- /package/dist/{chunk-SY2AAZNB.js.map → chunk-VO6RVVP7.js.map} +0 -0
- /package/dist/{chunk-3GU7AWG7.js.map → chunk-VPNXQUUS.js.map} +0 -0
- /package/dist/{chunk-WKHUZIOW.js.map → chunk-VW3BBTMA.js.map} +0 -0
- /package/dist/{chunk-7NPCEBZE.js.map → chunk-VWSFA4LJ.js.map} +0 -0
- /package/dist/{chunk-GZS37O3G.js.map → chunk-WBPQ7OPC.js.map} +0 -0
- /package/dist/{chunk-5FA455GR.js.map → chunk-WNG757ID.js.map} +0 -0
- /package/dist/{chunk-G4HQUBO4.js.map → chunk-WSLPZ43N.js.map} +0 -0
- /package/dist/{chunk-73WI7FL2.js.map → chunk-WUHB422G.js.map} +0 -0
- /package/dist/{chunk-Z7IGO5EA.js.map → chunk-WVX5AQXS.js.map} +0 -0
- /package/dist/{chunk-2NC7NZCE.js.map → chunk-WWOHORRO.js.map} +0 -0
- /package/dist/{chunk-V4QZ7UBK.js.map → chunk-WYEPUXGL.js.map} +0 -0
- /package/dist/{chunk-ZEIFJ6PX.js.map → chunk-XN6CALYY.js.map} +0 -0
- /package/dist/{chunk-VH5EGTH2.js.map → chunk-XNACICAB.js.map} +0 -0
- /package/dist/{chunk-YYCOSTUU.js.map → chunk-XU4I47IP.js.map} +0 -0
- /package/dist/{chunk-GHHM6WN4.js.map → chunk-YG3IJCM2.js.map} +0 -0
- /package/dist/{chunk-NEK4WB5P.js.map → chunk-YGSJWWT3.js.map} +0 -0
- /package/dist/{chunk-IBA5FMRE.js.map → chunk-YO64YVYL.js.map} +0 -0
- /package/dist/{chunk-XMNUZUUA.js.map → chunk-Z2DAWUO3.js.map} +0 -0
- /package/dist/{chunk-BCM7C3MJ.js.map → chunk-Z4GJB24B.js.map} +0 -0
- /package/dist/{chunk-UYNCMZX5.js.map → chunk-ZX5H7LWD.js.map} +0 -0
- /package/dist/{computer-viewer-25AJIDYA.js.map → computer-viewer-VA5JONUH.js.map} +0 -0
- /package/dist/{embedded-new-voice-RZZEJT6M.js.map → embedded-new-voice-6BILAOUG.js.map} +0 -0
- /package/dist/{embedded-voice-6OKSSPLW.js.map → embedded-voice-UDE4JRKB.js.map} +0 -0
- /package/dist/{latest-question-2PFWQSSG.js.map → latest-question-4WDBECXB.js.map} +0 -0
- /package/dist/{model-policy-picker-menu-VVFGGAI6.js.map → model-policy-picker-menu-NRTO6FRP.js.map} +0 -0
- /package/dist/{queue-surface-implementation-4SHOQPQQ.js.map → queue-surface-implementation-H4XSNHZE.js.map} +0 -0
- /package/dist/{sandbox-files-CCOTGXXA.js.map → sandbox-files-IEHODU35.js.map} +0 -0
- /package/dist/{timeline-annotation-markers-KHNYNY2J.js.map → timeline-annotation-markers-ZSOFW7PG.js.map} +0 -0
- /package/dist/{timeline-annotation-selection-AXEDJHBP.js.map → timeline-annotation-selection-YWV2UC34.js.map} +0 -0
- /package/dist/{timeline-annotations-dialog-AV4ZBXRC.js.map → timeline-annotations-dialog-ZWQVX2HI.js.map} +0 -0
package/dist/ui/role-select.js
CHANGED
|
@@ -4,16 +4,16 @@ import {
|
|
|
4
4
|
RoleSelect,
|
|
5
5
|
needsEscalationConfirm,
|
|
6
6
|
roleLabel
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-IC7KNOBB.js";
|
|
8
8
|
import "../chunk-TFK4KFKA.js";
|
|
9
|
-
import "../chunk-
|
|
10
|
-
import "../chunk-5OTQA7CM.js";
|
|
11
|
-
import "../chunk-KS57MLGE.js";
|
|
12
|
-
import "../chunk-A4BD4ZVB.js";
|
|
9
|
+
import "../chunk-S7PVL7XH.js";
|
|
13
10
|
import "../chunk-WHWUWN2X.js";
|
|
14
11
|
import "../chunk-ZMBJPN4T.js";
|
|
15
|
-
import "../chunk-HY7EYWIG.js";
|
|
16
12
|
import "../chunk-L4OF77LE.js";
|
|
13
|
+
import "../chunk-XNTW77T6.js";
|
|
14
|
+
import "../chunk-HY7EYWIG.js";
|
|
15
|
+
import "../chunk-KS57MLGE.js";
|
|
16
|
+
import "../chunk-5OTQA7CM.js";
|
|
17
17
|
import "../chunk-WLEDGIVS.js";
|
|
18
18
|
import "../chunk-HMU5IELG.js";
|
|
19
19
|
import "../chunk-J3BHDXQQ.js";
|
package/dist/ui/settings-nav.js
CHANGED
|
@@ -5,12 +5,12 @@ import {
|
|
|
5
5
|
TooltipProvider,
|
|
6
6
|
TooltipTrigger
|
|
7
7
|
} from "../chunk-OLTGED2Q.js";
|
|
8
|
-
import {
|
|
9
|
-
ReasonTooltip
|
|
10
|
-
} from "../chunk-KS57MLGE.js";
|
|
11
8
|
import {
|
|
12
9
|
Skeleton
|
|
13
10
|
} from "../chunk-HY7EYWIG.js";
|
|
11
|
+
import {
|
|
12
|
+
ReasonTooltip
|
|
13
|
+
} from "../chunk-KS57MLGE.js";
|
|
14
14
|
import "../chunk-J3BHDXQQ.js";
|
|
15
15
|
import {
|
|
16
16
|
cn
|
package/dist/workbench.js
CHANGED
|
@@ -2,23 +2,23 @@
|
|
|
2
2
|
import {
|
|
3
3
|
enablePierreDiffs
|
|
4
4
|
} from "./chunk-4WPVEPZF.js";
|
|
5
|
-
import {
|
|
6
|
-
enableSandboxTerminal
|
|
7
|
-
} from "./chunk-FPS7ARET.js";
|
|
8
|
-
import "./chunk-4VK2R5QC.js";
|
|
9
|
-
import "./chunk-QV3DJVRZ.js";
|
|
10
|
-
import {
|
|
11
|
-
enableDesktopViewer
|
|
12
|
-
} from "./chunk-QIOARE4I.js";
|
|
13
5
|
import {
|
|
14
6
|
enableCodeEditor
|
|
15
7
|
} from "./chunk-TOTNIUZK.js";
|
|
8
|
+
import "./chunk-YSRBFJMQ.js";
|
|
16
9
|
import "./chunk-UXXFMF4X.js";
|
|
10
|
+
import {
|
|
11
|
+
enableDesktopViewer
|
|
12
|
+
} from "./chunk-QIOARE4I.js";
|
|
17
13
|
import "./chunk-PFAUGEV5.js";
|
|
18
14
|
import "./chunk-ZUWF4NF7.js";
|
|
15
|
+
import {
|
|
16
|
+
enableSandboxTerminal
|
|
17
|
+
} from "./chunk-FPS7ARET.js";
|
|
18
|
+
import "./chunk-F3FN6DO6.js";
|
|
19
|
+
import "./chunk-QV3DJVRZ.js";
|
|
19
20
|
import "./chunk-TNEZNMSN.js";
|
|
20
21
|
import "./chunk-5I4VRWBB.js";
|
|
21
|
-
import "./chunk-YSRBFJMQ.js";
|
|
22
22
|
import "./chunk-TXS65BB2.js";
|
|
23
23
|
import "./chunk-JFK7NTEA.js";
|
|
24
24
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opengeni/react",
|
|
3
|
-
"version": "4.5.
|
|
3
|
+
"version": "4.5.1-canary.39832248373001",
|
|
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.5.
|
|
255
|
-
"@opengeni/contracts": "4.5.
|
|
256
|
-
"@opengeni/sdk": "4.5.
|
|
254
|
+
"@opengeni/connect": "4.5.1-canary.39832248373001",
|
|
255
|
+
"@opengeni/contracts": "4.5.1-canary.39832248373001",
|
|
256
|
+
"@opengeni/sdk": "4.5.1-canary.39832248373001",
|
|
257
257
|
"@tanstack/react-virtual": "^3.14.11",
|
|
258
258
|
"class-variance-authority": "^0.7.1",
|
|
259
259
|
"clsx": "^2.1.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/lib/interaction-errors.ts","../src/hooks/use-interaction-interventions.ts","../src/hooks/use-interaction-invalidation.ts","../src/components/interaction-intervention-banner.tsx","../src/components/use-viewer-menu-dismiss.ts"],"sourcesContent":["import { OpenGeniApiError } from \"@opengeni/sdk\";\nimport { interactionControlFailureFromError } from \"@opengeni/sdk/interaction\";\n\n/** Media can remain live when the independent control service is unavailable.\n * A target refusal or an uncertain mutation does not establish a service outage. */\nexport function isInteractionControlUnavailable(\n error: unknown,\n request: \"control\" | \"observation\" = \"control\",\n): error is OpenGeniApiError {\n if (!(error instanceof OpenGeniApiError)) return false;\n const failure = interactionControlFailureFromError(error);\n if (failure) return failure.code === \"agent_offline\" || failure.code === \"draining\";\n return (\n request === \"control\" && !error.outcomeUnknown && (error.status >= 500 || error.status === 0)\n );\n}\n\nexport function isNonRetryableInteractionError(error: unknown): error is OpenGeniApiError {\n return error instanceof OpenGeniApiError && error.retryable === false;\n}\n\nexport function isSourcePlacementChangedError(\n error: unknown,\n resource: \"browser_session\" | \"computer_session\",\n): error is OpenGeniApiError {\n return (\n isNonRetryableInteractionError(error) &&\n error.status === 409 &&\n error.details?.interactionResource === resource &&\n error.details?.interactionFailureCode === \"source_placement_changed\" &&\n error.details?.interactionLifecycle === \"lost\"\n );\n}\n","import type {\n CreateInteractionInterventionRequest,\n InteractionIntervention,\n InteractionInterventionMutationResponse,\n ResolveInteractionInterventionRequest,\n} from \"@opengeni/sdk/interaction\";\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport type { EmbeddedInterventionClientLike } from \"../client\";\nimport {\n type EmbeddedInterventionClientOverride,\n useEmbeddedInterventions,\n} from \"../session-context\";\nimport { useInteractionInvalidation } from \"./use-interaction-invalidation\";\n\nexport type UseInteractionInterventionsOptions = EmbeddedInterventionClientOverride & {\n enabled?: boolean | undefined;\n resourceKind?: \"browser_session\" | \"computer_session\" | undefined;\n resourceId?: string | null | undefined;\n includeSettled?: boolean | undefined;\n pollIntervalMs?: number | undefined;\n};\n\nexport type UseInteractionInterventionsResult = {\n interventions: InteractionIntervention[];\n loading: boolean;\n refreshing: boolean;\n mutating: boolean;\n error: Error | null;\n refresh: () => Promise<void>;\n create: (\n request: Omit<CreateInteractionInterventionRequest, \"operationId\"> & {\n operationId?: string;\n },\n ) => Promise<InteractionInterventionMutationResponse>;\n resolve: (\n interventionId: string,\n request: Omit<ResolveInteractionInterventionRequest, \"operationId\"> & {\n operationId?: string;\n },\n ) => Promise<InteractionInterventionMutationResponse>;\n};\n\n/** Human-action bridge shared by Browser and Computer surfaces. */\nexport function useInteractionInterventions(\n options: UseInteractionInterventionsOptions = {},\n): UseInteractionInterventionsResult {\n const { client, workspaceId, workspaceInteractionEvent, workspaceInteractionConnectionState } =\n useEmbeddedInterventions(options);\n const enabled = (options.enabled ?? true) && options.resourceId !== null;\n const resourceKind = options.resourceKind;\n const resourceId = options.resourceId ?? undefined;\n const includeSettled = options.includeSettled ?? false;\n const key = `${workspaceId}:${resourceKind ?? \"*\"}:${resourceId ?? \"*\"}:${includeSettled}`;\n const [state, setState] = useState(() => emptyState(key, enabled));\n const [mutationCount, setMutationCount] = useState(0);\n const requestRef = useRef<{ id: number; controller: AbortController | null }>({\n id: 0,\n controller: null,\n });\n const mountedRef = useRef(true);\n const visible = state.key === key ? state : emptyState(key, enabled);\n\n const cancelLoad = useCallback(() => {\n requestRef.current.controller?.abort();\n requestRef.current = { id: requestRef.current.id + 1, controller: null };\n }, []);\n\n const load = useCallback(\n async (foreground: boolean, replace = true): Promise<void> => {\n if (!enabled) return;\n if (requestRef.current.controller && !replace) return;\n const id = requestRef.current.id + 1;\n requestRef.current.controller?.abort();\n const controller = new AbortController();\n requestRef.current = { id, controller };\n if (foreground || replace) {\n setState((current) => ({\n ...(current.key === key ? current : emptyState(key, true)),\n loading: foreground,\n refreshing: !foreground,\n error: foreground ? null : current.error,\n }));\n }\n try {\n const response = await client.listInteractionInterventions(workspaceId, {\n ...(resourceKind ? { resourceKind } : {}),\n ...(resourceId ? { resourceId } : {}),\n includeSettled,\n signal: controller.signal,\n });\n if (!mountedRef.current || requestRef.current.id !== id) return;\n setState({\n key,\n interventions: sortInterventions(response.interventions),\n loading: false,\n refreshing: false,\n error: null,\n });\n } catch (cause) {\n if (controller.signal.aborted || !mountedRef.current || requestRef.current.id !== id)\n return;\n setState((current) => ({\n ...(current.key === key ? current : emptyState(key, true)),\n loading: false,\n refreshing: false,\n error: asError(cause),\n }));\n } finally {\n if (requestRef.current.id === id) requestRef.current = { id, controller: null };\n }\n },\n [client, enabled, includeSettled, key, resourceId, resourceKind, workspaceId],\n );\n\n const refresh = useCallback(async () => await load(false, true), [load]);\n\n useEffect(() => {\n mountedRef.current = true;\n if (!enabled) {\n cancelLoad();\n setState(emptyState(key, false));\n return;\n }\n void load(true);\n return () => {\n mountedRef.current = false;\n cancelLoad();\n };\n }, [cancelLoad, enabled, key, load]);\n\n useInteractionInvalidation({\n workspaceId,\n key,\n enabled,\n event: workspaceInteractionEvent,\n connectionState: workspaceInteractionConnectionState,\n refresh,\n fallbackPollIntervalMs: options.pollIntervalMs ?? 2_000,\n });\n\n const mutate = useCallback(async <T>(operation: () => Promise<T>): Promise<T> => {\n setMutationCount((count) => count + 1);\n try {\n return await operation();\n } finally {\n if (mountedRef.current) setMutationCount((count) => Math.max(0, count - 1));\n }\n }, []);\n\n const merge = useCallback(\n (intervention: InteractionIntervention) => {\n setState((current) => {\n if (current.key !== key) return current;\n const interventions = current.interventions.filter(\n (candidate) => candidate.id !== intervention.id,\n );\n const matches =\n (!resourceKind || intervention.resourceKind === resourceKind) &&\n (!resourceId || intervention.resourceId === resourceId);\n if (matches && (includeSettled || intervention.status === \"open\")) {\n interventions.push(intervention);\n }\n return {\n ...current,\n interventions: sortInterventions(interventions),\n error: null,\n };\n });\n },\n [includeSettled, key, resourceId, resourceKind],\n );\n\n const create = useCallback(\n async (\n request: Omit<CreateInteractionInterventionRequest, \"operationId\"> & {\n operationId?: string;\n },\n ): Promise<InteractionInterventionMutationResponse> =>\n await mutate(async () => {\n const response = await client.createInteractionIntervention(workspaceId, {\n ...request,\n operationId: request.operationId ?? crypto.randomUUID(),\n });\n merge(response.intervention);\n return response;\n }),\n [client, merge, mutate, workspaceId],\n );\n\n const resolve = useCallback(\n async (\n interventionId: string,\n request: Omit<ResolveInteractionInterventionRequest, \"operationId\"> & {\n operationId?: string;\n },\n ): Promise<InteractionInterventionMutationResponse> =>\n await mutate(async () => {\n const response = await client.resolveInteractionIntervention(workspaceId, interventionId, {\n ...request,\n operationId: request.operationId ?? crypto.randomUUID(),\n });\n merge(response.intervention);\n return response;\n }),\n [client, merge, mutate, workspaceId],\n );\n\n return {\n interventions: visible.interventions,\n loading: visible.loading,\n refreshing: visible.refreshing,\n mutating: mutationCount > 0,\n error: visible.error,\n refresh,\n create,\n resolve,\n };\n}\n\nfunction emptyState(key: string, loading: boolean) {\n return {\n key,\n interventions: [] as InteractionIntervention[],\n loading,\n refreshing: false,\n error: null as Error | null,\n };\n}\n\nfunction sortInterventions(\n interventions: readonly InteractionIntervention[],\n): InteractionIntervention[] {\n return [...interventions].sort(\n (left, right) => Date.parse(right.updatedAt) - Date.parse(left.updatedAt),\n );\n}\n\nfunction asError(cause: unknown): Error {\n return cause instanceof Error ? cause : new Error(String(cause));\n}\n\nexport type InteractionInterventionsClient = EmbeddedInterventionClientLike;\n","import type { StreamConnectionState, WorkspaceInteractionRevisionEvent } from \"@opengeni/sdk\";\nimport { useEffect, useRef } from \"react\";\nimport { usePageLiveActivity } from \"./internal\";\n\nexport type InteractionInvalidationOptions = {\n workspaceId: string;\n /** Distinguishes filtered projections of the same workspace catalog. */\n key: string;\n enabled: boolean;\n event: WorkspaceInteractionRevisionEvent | null;\n connectionState: StreamConnectionState | \"idle\" | \"error\";\n /** Catalog responses carry the workspace revision; live-state lists do not. */\n knownRevision?: number | undefined;\n refresh: () => Promise<void>;\n fallbackPollIntervalMs?: number | undefined;\n};\n\n/**\n * Refetch authoritative lists on the shared latest-revision stream. Poll only\n * while that stream is unavailable, preserving standalone-hook degradation\n * without multiplying healthy-provider traffic.\n */\nexport function useInteractionInvalidation(options: InteractionInvalidationOptions): void {\n const {\n workspaceId,\n key,\n enabled,\n event,\n connectionState,\n knownRevision,\n refresh,\n fallbackPollIntervalMs,\n } = options;\n const pageLive = usePageLiveActivity();\n const lastUnversionedEvent = useRef<{ key: string; sequence: number }>({\n key,\n sequence: 0,\n });\n const eventSequence = event?.workspaceId === workspaceId ? event.sequence : 0;\n\n useEffect(() => {\n if (!enabled || eventSequence <= 0) return;\n if (knownRevision !== undefined) {\n if (eventSequence > knownRevision) void refresh();\n return;\n }\n if (lastUnversionedEvent.current.key !== key) {\n lastUnversionedEvent.current = { key, sequence: 0 };\n }\n if (eventSequence <= lastUnversionedEvent.current.sequence) return;\n lastUnversionedEvent.current = { key, sequence: eventSequence };\n void refresh();\n }, [enabled, eventSequence, key, knownRevision, refresh]);\n\n useEffect(() => {\n if (!enabled || !pageLive || connectionState === \"live\") return;\n const interval = boundedPollInterval(fallbackPollIntervalMs ?? 3_000);\n const timer = setInterval(() => void refresh(), interval);\n return () => clearInterval(timer);\n }, [connectionState, enabled, fallbackPollIntervalMs, pageLive, refresh]);\n}\n\nfunction boundedPollInterval(value: number): number {\n if (!Number.isFinite(value)) return 3_000;\n return Math.min(60_000, Math.max(1_000, Math.floor(value)));\n}\n","import type { InteractionIntervention } from \"@opengeni/sdk/interaction\";\nimport { CheckIcon, CircleAlertIcon, LoaderCircleIcon, XIcon } from \"lucide-react\";\nimport { cn } from \"../lib/cn\";\nimport { useOpenGeniText, type OpenGeniText } from \"../messages/runtime\";\n\nexport type InteractionInterventionBannerProps = {\n interventions: InteractionIntervention[];\n activeTargetId?: string | null | undefined;\n mutating?: boolean | undefined;\n className?: string | undefined;\n onOpen?: ((intervention: InteractionIntervention) => void) | undefined;\n onResolve: (intervention: InteractionIntervention, outcome: \"completed\" | \"dismissed\") => void;\n};\n\n/** Compact durable human-action prompt shared by Browser and Computer viewers. */\nexport function InteractionInterventionBanner({\n interventions,\n activeTargetId,\n mutating = false,\n className,\n onOpen,\n onResolve,\n}: InteractionInterventionBannerProps) {\n const t = useOpenGeniText();\n const intervention = interventions[0];\n if (!intervention) return null;\n const targetOpen = activeTargetId === undefined || activeTargetId === intervention.targetId;\n return (\n <div\n className={cn(\n \"flex shrink-0 items-center gap-2 border-b border-og-status-waiting/25 bg-og-status-waiting/[0.07] px-3 py-2\",\n className,\n )}\n role=\"status\"\n >\n <span className=\"grid size-7 shrink-0 place-items-center rounded-og-sm bg-og-status-waiting/10 text-og-status-waiting\">\n <CircleAlertIcon className=\"size-3.5\" />\n </span>\n <span className=\"min-w-0 flex-1\">\n <span className=\"flex items-center gap-1.5 text-og-control font-medium text-og-fg\">\n {interventionTitle(t, intervention.kind)}\n {interventions.length > 1 ? (\n <span className=\"rounded-full bg-og-surface-2 px-1.5 py-0.5 text-[10px] font-normal text-og-muted\">\n +{interventions.length - 1}\n </span>\n ) : null}\n </span>\n <span className=\"block truncate text-og-xs text-og-muted\">{intervention.reason}</span>\n </span>\n {!targetOpen && onOpen ? (\n <button\n type=\"button\"\n onClick={() => onOpen(intervention)}\n disabled={mutating}\n className=\"h-7 shrink-0 rounded-og-sm border border-og-primary-border bg-og-primary px-2.5 text-og-control font-medium text-og-primary-fg transition hover:bg-og-primary-hover disabled:opacity-50\"\n >\n {t(\"interactionInterventionBanner.open\")}\n </button>\n ) : (\n <button\n type=\"button\"\n onClick={() => onResolve(intervention, \"completed\")}\n disabled={mutating}\n className=\"inline-flex h-7 shrink-0 items-center gap-1 rounded-og-sm border border-og-primary-border bg-og-primary text-og-primary-fg px-2.5 text-og-control font-medium transition hover:bg-og-primary-hover disabled:opacity-50\"\n >\n {mutating ? (\n <LoaderCircleIcon className=\"size-3 animate-spin\" />\n ) : (\n <CheckIcon className=\"size-3\" />\n )}\n {t(\"interactionInterventionBanner.done\")}\n </button>\n )}\n <button\n type=\"button\"\n onClick={() => onResolve(intervention, \"dismissed\")}\n disabled={mutating}\n className=\"grid size-7 shrink-0 place-items-center rounded-og-sm text-og-muted transition hover:bg-og-surface-2 hover:text-og-fg disabled:opacity-50\"\n aria-label={t(\"interactionInterventionBanner.cancelRequest\")}\n title={t(\"interactionInterventionBanner.cancelRequest\")}\n >\n <XIcon className=\"size-3.5\" />\n </button>\n </div>\n );\n}\n\nfunction interventionTitle(t: OpenGeniText, kind: InteractionIntervention[\"kind\"]): string {\n switch (kind) {\n case \"manual_login\":\n return t(\"interactionInterventionBanner.signInNeeded\");\n case \"mfa\":\n return t(\"interactionInterventionBanner.verificationNeeded\");\n case \"external_action\":\n return t(\"interactionInterventionBanner.actionNeeded\");\n case \"confirmation\":\n return t(\"interactionInterventionBanner.confirmationNeeded\");\n case \"other\":\n return t(\"interactionInterventionBanner.agentNeedsYourHelp\");\n }\n}\n","import { useEffect, useRef } from \"react\";\n\n/** Keep native details menus dismissible without letting Escape close the dock. */\nexport function useViewerMenuDismiss(enabled = true) {\n const ref = useRef<HTMLDetailsElement | null>(null);\n useEffect(() => {\n const menu = ref.current;\n if (!enabled || !menu) return;\n const document = menu.ownerDocument;\n const pointerDown = (event: PointerEvent) => {\n if (menu.open && !event.composedPath().includes(menu)) menu.open = false;\n };\n const focusIn = (event: FocusEvent) => {\n if (menu.open && !event.composedPath().includes(menu)) menu.open = false;\n };\n const keyDown = (event: KeyboardEvent) => {\n if (!menu.open || event.key !== \"Escape\" || !event.composedPath().includes(menu)) return;\n event.preventDefault();\n event.stopPropagation();\n menu.open = false;\n menu.querySelector(\"summary\")?.focus();\n };\n document.addEventListener(\"pointerdown\", pointerDown, true);\n document.addEventListener(\"focusin\", focusIn, true);\n document.addEventListener(\"keydown\", keyDown, true);\n return () => {\n document.removeEventListener(\"pointerdown\", pointerDown, true);\n document.removeEventListener(\"focusin\", focusIn, true);\n document.removeEventListener(\"keydown\", keyDown, true);\n };\n }, [enabled]);\n return ref;\n}\n"],"mappings":"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","names":["useEffect","useRef","useRef","useEffect","useEffect","useRef"]}
|