@opengeni/react 4.2.1-canary.39642758903001 → 4.3.1
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 +27 -27
- package/dist/app/components/Composer.js +27 -26
- package/dist/app/components/agent/agent-capability-picker.js +5 -5
- package/dist/app/components/artifacts/artifact-library.js +19 -19
- package/dist/app/components/artifacts/chat-interactive-block.js +16 -16
- package/dist/app/components/artifacts/inline-chat-image.js +31 -30
- package/dist/app/components/artifacts/retained-file-preview.js +35 -34
- package/dist/app/components/artifacts/retained-text-preview.js +5 -5
- package/dist/app/components/artifacts/site-audience.js +5 -5
- package/dist/app/components/artifacts/site-conversations.js +24 -22
- package/dist/app/components/artifacts/site-data.js +20 -20
- package/dist/app/components/artifacts/site-publishing.js +39 -39
- package/dist/app/components/artifacts/site-settings.js +48 -48
- package/dist/app/components/billing-class-mark.js +5 -5
- package/dist/app/components/capabilities/capability-detail-sheet.js +9 -9
- package/dist/app/components/capabilities/capability-logo-source.js +13 -12
- package/dist/app/components/capabilities/connection-account-picker.js +2 -2
- package/dist/app/components/capabilities/connector-tool-permissions.js +5 -5
- package/dist/app/components/capabilities/native-connect-setup.js +14 -13
- package/dist/app/components/capabilities/native-connect-setup.js.map +1 -1
- package/dist/app/components/capabilities/perform-capability-action.js +3 -3
- package/dist/app/components/capabilities/prepared-mcp-setup-card.js +15 -14
- package/dist/app/components/capabilities/session-capability-card.js +78 -77
- package/dist/app/components/capabilities/session-capability-card.js.map +1 -1
- package/dist/app/components/capabilities/session-custom-mcp-card.js +20 -19
- package/dist/app/components/capabilities/session-github-card.js +25 -24
- package/dist/app/components/capabilities/session-machine-card.js +38 -38
- 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-switcher.d.ts +12 -0
- package/dist/app/components/command-menu/chat-switcher.js +142 -0
- package/dist/app/components/command-menu/chat-switcher.js.map +1 -0
- package/dist/app/components/command-menu/command-menu.d.ts +15 -0
- package/dist/app/components/command-menu/command-menu.js +812 -0
- package/dist/app/components/command-menu/command-menu.js.map +1 -0
- package/dist/app/components/command-menu/keycaps.d.ts +21 -0
- package/dist/app/components/command-menu/keycaps.js +12 -0
- package/dist/app/components/command-menu/shortcut-sheet.d.ts +12 -0
- package/dist/app/components/command-menu/shortcut-sheet.js +150 -0
- package/dist/app/components/command-menu/shortcut-sheet.js.map +1 -0
- package/dist/app/components/composer-capabilities-menu-body.js +3 -3
- package/dist/app/components/composer-mobile-plus-panel.js +21 -21
- package/dist/app/components/composer-mobile-plus.js +3 -3
- package/dist/app/components/credit-required-gate.js +1 -1
- package/dist/app/components/credit-required-prompt.js +16 -16
- package/dist/app/components/credits/coupon-redeem.js +2 -2
- package/dist/app/components/credits/credit-refusal-notice.d.ts +18 -0
- package/dist/app/components/credits/credit-refusal-notice.js +17 -0
- package/dist/app/components/cross-slot-deep-link-recovery.js +1 -1
- package/dist/app/components/desktop/app-shots.js +6 -6
- package/dist/app/components/desktop/this-computer.js +4 -4
- package/dist/app/components/feedback.js +5 -5
- package/dist/app/components/follow-up-repository-menu-body.js +7 -7
- package/dist/app/components/follow-up-repository-picker.js +3 -3
- package/dist/app/components/github-app-connect-launcher.js +1 -1
- package/dist/app/components/knowledge/agent-learning-settings.js +6 -6
- package/dist/app/components/machines/connect-machine-dialog.js +18 -18
- package/dist/app/components/manual-repository-editor.js +2 -2
- package/dist/app/components/markdown.js +10 -9
- package/dist/app/components/message-context-pills.js +2 -2
- package/dist/app/components/models/models-ui.js +10 -10
- package/dist/app/components/pickers.js +10 -10
- package/dist/app/components/rail/rail-context.d.ts +6 -0
- package/dist/app/components/rail/rail-context.js +3 -3
- package/dist/app/components/rail/rail-sections.js +61 -55
- package/dist/app/components/rail/session-browse-order-controls.js +2 -2
- package/dist/app/components/rail/session-header.js +50 -36
- package/dist/app/components/rail/session-list.js +59 -52
- package/dist/app/components/rail/session-row-hover-details.js +25 -23
- package/dist/app/components/rail/session-shell.js +96 -91
- package/dist/app/components/repository-picker.js +7 -7
- package/dist/app/components/secrets/session-secrets-panel.js +4 -4
- package/dist/app/components/session/agent-configuration-panel.js +34 -34
- package/dist/app/components/session/banners.js +12 -11
- package/dist/app/components/session/codex-account-indicator.js +12 -12
- package/dist/app/components/session/composer-menu-radio.js +2 -2
- package/dist/app/components/session/conversation-find.js +1 -1
- package/dist/app/components/session/editable-artifacts-workspace.js +45 -45
- package/dist/app/components/session/failed-session-banner.js +12 -12
- package/dist/app/components/session/human-input.js +48 -47
- package/dist/app/components/session/inspector.js +80 -79
- package/dist/app/components/session/inspector.js.map +1 -1
- package/dist/app/components/session/message-actions.js +5 -5
- package/dist/app/components/session/message-resource-attachments.js +21 -20
- package/dist/app/components/session/message-resource-attachments.js.map +1 -1
- package/dist/app/components/session/model-account-indicator.js +11 -11
- package/dist/app/components/session/model-context-inspector.js +2 -2
- package/dist/app/components/session/model-recovery-notice.js +3 -3
- package/dist/app/components/session/new-session-settings-menu.js +13 -13
- package/dist/app/components/session/sandbox-switcher.js +16 -16
- package/dist/app/components/session/sandbox-workspace.js +68 -67
- package/dist/app/components/session/search-markdown-highlight.js +11 -10
- package/dist/app/components/session/search-results-view.js +12 -11
- package/dist/app/components/session/session-admin-access.js +11 -11
- package/dist/app/components/session/session-retention.js +4 -4
- package/dist/app/components/session/session-search-dialog.d.ts +5 -0
- package/dist/app/components/session/session-search-dialog.js +22 -12
- package/dist/app/components/session/session-search-dialog.js.map +1 -1
- package/dist/app/components/session/session-skill-reviews.js +3 -3
- package/dist/app/components/session/session-tenancy-control.js +25 -25
- package/dist/app/components/session/session-usage-limit-section.js +9 -9
- package/dist/app/components/session/session-wait-status.js +11 -9
- package/dist/app/components/session/session-wait-status.js.map +1 -1
- package/dist/app/components/session/subagents.js +17 -15
- package/dist/app/components/session/subscription-account-menu.js +2 -2
- package/dist/app/components/session-connectors-menu-body.js +6 -6
- 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 +8 -8
- package/dist/app/components/usage/usage-entry.js +6 -6
- package/dist/app/components/workspace-composer-plus.js +22 -21
- package/dist/app/embed/session-app.js +264 -258
- package/dist/app/lib/actions/actions-provider.d.ts +30 -0
- package/dist/app/lib/actions/actions-provider.js +32 -0
- package/dist/app/lib/actions/chat-directory.d.ts +30 -0
- package/dist/app/lib/actions/chat-operations.d.ts +11 -0
- package/dist/app/lib/actions/chat-switcher.d.ts +31 -0
- package/dist/app/lib/actions/chords.d.ts +40 -0
- package/dist/app/lib/actions/events.d.ts +6 -0
- package/dist/app/lib/actions/rank.d.ts +17 -0
- package/dist/app/lib/actions/registry.d.ts +71 -0
- package/dist/app/lib/codex-usage-query.js +3 -3
- package/dist/app/lib/composer-connectors.js +14 -13
- package/dist/app/lib/console-text.js +2 -2
- package/dist/app/lib/credit-coverage.d.ts +21 -0
- package/dist/app/lib/credit-coverage.js +15 -0
- package/dist/app/lib/deployment-free-model.js +2 -2
- package/dist/app/lib/events.js +19 -18
- package/dist/app/lib/failed-session-copy.js +5 -5
- package/dist/app/lib/free-credit-gap.d.ts +9 -0
- package/dist/app/lib/free-credit-gap.js +4 -2
- package/dist/app/lib/integration-connect-analytics.d.ts +1 -1
- package/dist/app/lib/integration-connect-analytics.js +1 -1
- package/dist/app/lib/integration-connect-redirect.js +1 -1
- package/dist/app/lib/model-access-onboarding.js +4 -4
- package/dist/app/lib/model-policy.js +1 -1
- package/dist/app/lib/models-route.d.ts +6 -2
- package/dist/app/lib/models-route.js +6 -3
- package/dist/app/lib/models-route.js.map +1 -1
- package/dist/app/lib/move-chat-to-machine.js +3 -3
- package/dist/app/lib/session-branch-cache.js +15 -13
- package/dist/app/lib/session-create.js +2 -2
- package/dist/app/lib/session-group-pagination.js +15 -13
- package/dist/app/lib/session-hover-facts.js +16 -14
- package/dist/app/lib/session-model.js +3 -3
- package/dist/app/lib/session-rail.js +11 -9
- package/dist/app/lib/session-rename.js +3 -3
- package/dist/app/lib/session-search-route.d.ts +1 -1
- package/dist/app/lib/session-search-route.js +1 -1
- package/dist/app/lib/session-ui-features.d.ts +11 -3
- package/dist/app/lib/session-ui-features.js +1 -1
- package/dist/app/lib/sessions-group.js +15 -13
- package/dist/app/lib/turn-failure-analytics.js +7 -7
- package/dist/app/lib/unavailable-session-model.js +2 -2
- 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 +8 -8
- package/dist/app/lib/use-workspace-model-catalog.js +6 -6
- package/dist/app/lib/use-workspace-rigs.js +4 -4
- package/dist/app/lib/workspace-navigation-preference.js +5 -5
- package/dist/app/lib/workspace-scope-context.js +4 -4
- package/dist/app/routes/artifacts.js +124 -122
- package/dist/app/routes/artifacts.js.map +1 -1
- package/dist/app/routes/retained-artifact.js +69 -68
- package/dist/app/routes/retained-artifact.js.map +1 -1
- package/dist/app/routes/session-unavailable.js +3 -3
- package/dist/app/routes/session.js +168 -166
- package/dist/app/routes/sessions-index-hydration.js +3 -3
- package/dist/app/routes/sessions-index.js +122 -116
- 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 +39 -39
- package/dist/{browser-viewer-ZRFZX3VN.js → browser-viewer-HPUMK7UP.js} +7 -7
- package/dist/{chat-interactive-block-HUMYWVCK.js → chat-interactive-block-22PPECCT.js} +6 -6
- package/dist/{chunk-GVIQ7H62.js → chunk-2LUBBDZV.js} +5 -5
- package/dist/{chunk-SWWYYGQO.js → chunk-325C2TCI.js} +5 -2
- package/dist/chunk-325C2TCI.js.map +1 -0
- package/dist/{chunk-XMMVIY7B.js → chunk-3CCJWHQY.js} +2 -2
- package/dist/{chunk-XS2FZ6DX.js → chunk-3F5ZPIWI.js} +2 -2
- package/dist/{chunk-72US6QNB.js → chunk-3J2YZRY5.js} +2 -2
- package/dist/{chunk-D4YQF4E3.js → chunk-3SMJ2BIQ.js} +2 -2
- package/dist/{chunk-TBJINQXA.js → chunk-3WCYK36X.js} +17 -17
- package/dist/{chunk-WPCF34V6.js → chunk-3WG3CRL7.js} +14 -14
- package/dist/{chunk-JI5BYQKO.js → chunk-3X46PNBX.js} +14 -14
- package/dist/{chunk-UO36FC3S.js → chunk-46I7MMAL.js} +6 -2
- package/dist/chunk-46I7MMAL.js.map +1 -0
- package/dist/{chunk-PBK44WJC.js → chunk-4GJ37O6G.js} +2 -2
- package/dist/chunk-4IWBQUQU.js +152 -0
- package/dist/chunk-4IWBQUQU.js.map +1 -0
- package/dist/{chunk-LEXPBQ56.js → chunk-4SKJX3C4.js} +6 -6
- package/dist/{chunk-ZA6YD2LW.js → chunk-57SYK776.js} +2 -2
- package/dist/{chunk-22LBKJDE.js → chunk-5DIAN5GQ.js} +12 -12
- package/dist/{chunk-LJ3TDK2L.js → chunk-5FA455GR.js} +4 -4
- package/dist/{chunk-N2BEUKXT.js → chunk-5FBZDEHE.js} +228 -228
- package/dist/chunk-5FBZDEHE.js.map +1 -0
- package/dist/{chunk-YPR5INHV.js → chunk-5X3E2Z3D.js} +4 -4
- package/dist/{chunk-OXNWZTEU.js → chunk-5ZJCL6X4.js} +5 -5
- package/dist/{chunk-62OAZ4LO.js → chunk-6C5GQQMC.js} +12 -12
- package/dist/{chunk-VGITH57T.js → chunk-6ERTXDZM.js} +4 -4
- package/dist/{chunk-ZQ7XQZCF.js → chunk-6FX73Y4I.js} +8 -8
- package/dist/{chunk-QZO2KK2F.js → chunk-6P44NG6Y.js} +2 -2
- package/dist/{chunk-N2DDJLTM.js → chunk-6T7Y33JA.js} +3 -3
- package/dist/{chunk-RBAGC2MJ.js → chunk-75VE5QUS.js} +22 -22
- package/dist/{chunk-MRXOGI3O.js → chunk-77CUDSHG.js} +9 -9
- package/dist/{chunk-F2GXK2Z6.js → chunk-7G446JFO.js} +431 -348
- package/dist/chunk-7G446JFO.js.map +1 -0
- package/dist/{chunk-GZ65XQR5.js → chunk-7T7FHSGS.js} +3 -3
- package/dist/{chunk-YGAH34CD.js → chunk-A3S26JSP.js} +8 -8
- package/dist/{chunk-GYPAO6RS.js → chunk-A664GSDM.js} +8 -8
- package/dist/{chunk-JSZSNMDR.js → chunk-ASUYLXKO.js} +2 -2
- package/dist/{chunk-RTK7SUPL.js → chunk-AUUJLVA3.js} +7 -7
- package/dist/{chunk-OOTBYSCA.js → chunk-BBWKPNJB.js} +5 -5
- package/dist/{chunk-BGZIMIUU.js → chunk-BCUYWOQU.js} +2 -2
- package/dist/{chunk-EKN4N4LS.js → chunk-BDFMNJZJ.js} +2 -2
- package/dist/{chunk-YZKGOWCC.js → chunk-BIDXQAGO.js} +2 -2
- package/dist/{chunk-Q2UUANHF.js → chunk-BIKAJ4DY.js} +5 -5
- package/dist/{chunk-5IQBF2X3.js → chunk-BJPJ2OUX.js} +3 -3
- package/dist/{chunk-EY2EMHZW.js → chunk-BPM2OTYK.js} +8 -8
- package/dist/{chunk-MT4TBRQB.js → chunk-BSWS2RUZ.js} +2 -2
- package/dist/{chunk-T7YD3VGK.js → chunk-C52MNKXU.js} +12 -12
- package/dist/{chunk-THNW33K7.js → chunk-CEUDV4OA.js} +18 -18
- package/dist/{chunk-GRLPRM56.js → chunk-CFEFYPNR.js} +8 -2
- package/dist/chunk-CFEFYPNR.js.map +1 -0
- package/dist/{chunk-LHGIS6SZ.js → chunk-CVK74BH7.js} +2 -2
- package/dist/{chunk-DFO2UCYG.js → chunk-CW5I65ZX.js} +11 -11
- package/dist/chunk-DKNTQDVL.js +86 -0
- package/dist/chunk-DKNTQDVL.js.map +1 -0
- package/dist/{chunk-SKRLKQEG.js → chunk-DOSC2HRQ.js} +79 -79
- package/dist/{chunk-KVB6XDLP.js → chunk-DPJ2CWVN.js} +2 -2
- package/dist/{chunk-4J6V4DH7.js → chunk-DXMRO2MU.js} +3 -3
- package/dist/{chunk-42I4O4WQ.js → chunk-EE55IDDR.js} +26 -26
- package/dist/{chunk-2RA6XABP.js → chunk-EEERTLFF.js} +12 -12
- package/dist/{chunk-PTOTKUKO.js → chunk-EEO744XR.js} +8 -8
- package/dist/{chunk-LD3HVI2J.js → chunk-EMFGBAQL.js} +6 -6
- package/dist/{chunk-FQGUK4ST.js → chunk-ENPJKVMN.js} +38 -38
- package/dist/{chunk-HDHK3SXK.js → chunk-EU6RLHMP.js} +4 -4
- package/dist/{chunk-G7VLL3PG.js → chunk-F2YABPRJ.js} +13 -4
- package/dist/chunk-F2YABPRJ.js.map +1 -0
- package/dist/{chunk-MRUWRQBX.js → chunk-FET6XHGS.js} +2 -2
- package/dist/{chunk-M6KUY3YH.js → chunk-FIICQA55.js} +2 -2
- package/dist/{chunk-NLWLCYCT.js → chunk-FTZXCPE3.js} +19 -19
- package/dist/{chunk-FN2KA3MJ.js → chunk-FUS76DO4.js} +3 -3
- package/dist/{chunk-AM4IIPWI.js → chunk-G7N5NPRJ.js} +2 -2
- package/dist/{chunk-CCQ7YKOD.js → chunk-GBYZ6653.js} +2 -2
- package/dist/{chunk-SOOWLNC5.js → chunk-GJUPLSC5.js} +330 -109
- package/dist/chunk-GJUPLSC5.js.map +1 -0
- package/dist/{chunk-YKKVIJVX.js → chunk-GQDSC6QZ.js} +5 -5
- package/dist/chunk-GQGNRL2L.js +53 -0
- package/dist/chunk-GQGNRL2L.js.map +1 -0
- package/dist/{chunk-5X6JP75Q.js → chunk-GRSODLVO.js} +4 -4
- package/dist/{chunk-73YP3R5X.js → chunk-GSESCQFY.js} +4 -4
- package/dist/{chunk-KWB5U3ZT.js → chunk-GWRW4N3T.js} +199 -137
- package/dist/chunk-GWRW4N3T.js.map +1 -0
- package/dist/{chunk-RTR7RNG4.js → chunk-GYRU4PNM.js} +9 -7
- package/dist/{chunk-RTR7RNG4.js.map → chunk-GYRU4PNM.js.map} +1 -1
- package/dist/{chunk-MZLEBFUZ.js → chunk-GZD6VBIK.js} +3 -3
- package/dist/{chunk-IZR2QRFF.js → chunk-H3HH5AHS.js} +4 -4
- package/dist/{chunk-DN3TKURW.js → chunk-H3LIIAGE.js} +4 -54
- package/dist/chunk-H3LIIAGE.js.map +1 -0
- package/dist/{chunk-NPLEQMNM.js → chunk-H5GWAG4I.js} +7 -5
- package/dist/{chunk-NPLEQMNM.js.map → chunk-H5GWAG4I.js.map} +1 -1
- package/dist/{chunk-OJPUVUB6.js → chunk-HAOZCLLA.js} +3 -3
- package/dist/{chunk-ZBHDGAYL.js → chunk-HEFE4OZJ.js} +2 -2
- package/dist/{chunk-WTG34JVA.js → chunk-HI75UTI6.js} +2 -2
- package/dist/{chunk-OMBIG3NC.js → chunk-HM633ROV.js} +14 -14
- package/dist/{chunk-WDFZWSKD.js → chunk-HRIP4M6H.js} +3 -3
- package/dist/{chunk-A2BCW6CQ.js → chunk-HU2DRFFI.js} +3 -3
- package/dist/{chunk-PO35PBAB.js → chunk-HVH7FFJH.js} +2 -2
- package/dist/{chunk-EG7KNUF7.js → chunk-HYTXTKST.js} +18 -18
- package/dist/{chunk-TFHG75A4.js → chunk-I4XMDFUJ.js} +7 -7
- package/dist/{chunk-IZHVZZQA.js → chunk-ICAUYWSL.js} +9 -9
- package/dist/{chunk-ZSERYHHT.js → chunk-IDMXEPHL.js} +150 -150
- package/dist/chunk-IDMXEPHL.js.map +1 -0
- package/dist/{chunk-DCLPWYP3.js → chunk-IEVPJ3G6.js} +2 -2
- package/dist/{chunk-EVWZHDSF.js → chunk-IKH3VTA4.js} +2 -2
- package/dist/{chunk-L5UCO2UV.js → chunk-ILBSBZGC.js} +13 -4
- package/dist/chunk-ILBSBZGC.js.map +1 -0
- package/dist/{chunk-IO6K6UYJ.js → chunk-IQ64BNAG.js} +4 -2
- package/dist/chunk-IQ64BNAG.js.map +1 -0
- package/dist/{chunk-TYHLEFD2.js → chunk-IZJNMRIR.js} +9 -9
- package/dist/{chunk-D2SR3TEB.js → chunk-J243WGUA.js} +2 -2
- package/dist/{chunk-QGSGIYE3.js → chunk-J2C6LB6W.js} +4 -4
- package/dist/{chunk-MT6TRTXF.js → chunk-J5MEDX7C.js} +9 -9
- package/dist/{chunk-6QHUKBJP.js → chunk-J7SKOO44.js} +2 -2
- package/dist/{chunk-W2QK7PYS.js → chunk-JAAST75A.js} +11 -11
- package/dist/{chunk-NQCMS4AJ.js → chunk-JQCGPTZ6.js} +9 -9
- package/dist/chunk-JRJUSKDY.js +832 -0
- package/dist/chunk-JRJUSKDY.js.map +1 -0
- package/dist/{chunk-CMUXJHGH.js → chunk-JRSCWQMC.js} +9 -9
- package/dist/{chunk-Q4OHNGGB.js → chunk-JRXHSVD5.js} +4 -4
- package/dist/{chunk-SD2K5ZN5.js → chunk-JXYLDT6X.js} +4 -4
- package/dist/{chunk-S3M5WCZW.js → chunk-KA4LV7G6.js} +35 -50
- package/dist/chunk-KA4LV7G6.js.map +1 -0
- package/dist/{chunk-IXX6ZOL2.js → chunk-KGTMHEAP.js} +7 -7
- package/dist/{chunk-22OBGVEJ.js → chunk-KOXVGPW4.js} +3 -3
- package/dist/{chunk-NOZ5CGZE.js → chunk-L5GPPMUB.js} +2 -2
- package/dist/{chunk-KIHYJM5F.js → chunk-LXJT4WAW.js} +58 -58
- package/dist/{chunk-KIHYJM5F.js.map → chunk-LXJT4WAW.js.map} +1 -1
- package/dist/{chunk-4FOOHMTU.js → chunk-LY6727IF.js} +1 -1
- package/dist/{chunk-PT7MTXRE.js → chunk-MAOCN7J6.js} +2 -2
- package/dist/{chunk-4K2JSJNX.js → chunk-MB5LZVDO.js} +2 -2
- package/dist/chunk-MF464AKA.js +139 -0
- package/dist/chunk-MF464AKA.js.map +1 -0
- package/dist/{chunk-UYSZKDQY.js → chunk-MK54JLE4.js} +1 -1
- package/dist/chunk-MK54JLE4.js.map +1 -0
- package/dist/{chunk-5LES64PP.js → chunk-MKOQAVOE.js} +21 -21
- package/dist/{chunk-BMV2SNYX.js → chunk-MUPWNSEJ.js} +18 -18
- package/dist/{chunk-Y5TRG22C.js → chunk-NRXIECWC.js} +2 -2
- package/dist/{chunk-GOE7G5JX.js → chunk-NWSAF6P5.js} +2 -2
- package/dist/chunk-OB3YGXHQ.js +158 -0
- package/dist/chunk-OB3YGXHQ.js.map +1 -0
- package/dist/{chunk-DUM363VS.js → chunk-OFZQJNF6.js} +5 -5
- package/dist/{chunk-CKN5QPEL.js → chunk-OMF7POEY.js} +2 -2
- package/dist/{chunk-MVXKO2BD.js → chunk-OXD6ET34.js} +1 -1
- package/dist/{chunk-47JUEVME.js → chunk-PALX6HWV.js} +21 -21
- package/dist/{chunk-B6OGSG7I.js → chunk-PE3BLBDT.js} +3 -3
- package/dist/{chunk-RVISSNVE.js → chunk-PMZKJOG6.js} +15 -15
- package/dist/{chunk-CESAMXWX.js → chunk-PQUTMG3S.js} +2 -2
- package/dist/{chunk-7VFCOKPG.js → chunk-PWBGODZU.js} +3 -3
- package/dist/{chunk-MOPAXD2H.js → chunk-QCADUTYX.js} +2 -2
- package/dist/{chunk-CT5FBO7E.js → chunk-RPOUJI25.js} +1 -1
- package/dist/{chunk-VE3FKXJ7.js → chunk-RUSXEE7X.js} +35 -32
- package/dist/chunk-RUSXEE7X.js.map +1 -0
- package/dist/{chunk-WKHYOS72.js → chunk-RW4GFE56.js} +3 -3
- package/dist/{chunk-FH4GO7HO.js → chunk-RYLVVDR7.js} +1 -1
- package/dist/{chunk-QZRDCFHI.js → chunk-S66SBBFQ.js} +5 -5
- package/dist/{chunk-CQJFIPAH.js → chunk-S7TNV2I7.js} +14 -14
- package/dist/{chunk-ZBQSIGGR.js → chunk-SC773IMJ.js} +13 -13
- package/dist/{chunk-RZV7SXED.js → chunk-SF3M27AN.js} +37 -12
- package/dist/chunk-SF3M27AN.js.map +1 -0
- package/dist/{chunk-FBJ2HK7A.js → chunk-SGPJ3YS2.js} +20 -20
- package/dist/{chunk-A2EWJQXX.js → chunk-SM5QX6UK.js} +4 -4
- package/dist/chunk-SWCLN6JE.js +40 -0
- package/dist/chunk-SWCLN6JE.js.map +1 -0
- package/dist/{chunk-OS3EQOIS.js → chunk-T4F5TW2X.js} +29 -24
- package/dist/chunk-T4F5TW2X.js.map +1 -0
- package/dist/{chunk-RKZWCTXV.js → chunk-TAEKDMEF.js} +2 -2
- package/dist/{chunk-6AVCAUGL.js → chunk-TASEV25T.js} +3 -3
- package/dist/{chunk-3XOISKZC.js → chunk-TLGDPMUX.js} +6 -6
- package/dist/{chunk-MOF3XSUM.js → chunk-TREHTIBD.js} +3 -2
- package/dist/chunk-TREHTIBD.js.map +1 -0
- package/dist/{chunk-HUQHJSPV.js → chunk-TTPXGD5S.js} +68 -33
- package/dist/chunk-TTPXGD5S.js.map +1 -0
- package/dist/{chunk-NFCYIZHX.js → chunk-TXIIBNCA.js} +7 -3
- package/dist/{chunk-NFCYIZHX.js.map → chunk-TXIIBNCA.js.map} +1 -1
- package/dist/{chunk-5IUW34PG.js → chunk-TY3QYPJ6.js} +7 -7
- package/dist/{chunk-VQFR4EU4.js → chunk-U3JK5VJV.js} +2 -2
- package/dist/{chunk-2AWMJO54.js → chunk-U42P3RMZ.js} +5 -5
- package/dist/{chunk-2RIUMV7S.js → chunk-UBIJBLUK.js} +234 -234
- package/dist/chunk-UBIJBLUK.js.map +1 -0
- package/dist/{chunk-GUU75DES.js → chunk-UEJTOPLW.js} +8 -8
- package/dist/{chunk-QWCTYLMD.js → chunk-URDONAEJ.js} +240 -204
- package/dist/chunk-URDONAEJ.js.map +1 -0
- package/dist/{chunk-OZOEWLGR.js → chunk-UT6JAORE.js} +4 -4
- package/dist/{chunk-5TELOQA6.js → chunk-UTHPUINA.js} +3 -3
- package/dist/{chunk-SOV7DTTU.js → chunk-V6HZ2HJZ.js} +67 -67
- package/dist/{chunk-SOV7DTTU.js.map → chunk-V6HZ2HJZ.js.map} +1 -1
- package/dist/{chunk-26RQ6JBR.js → chunk-VBVCNH6D.js} +5 -5
- package/dist/{chunk-P646DND6.js → chunk-VCMQPCME.js} +2 -2
- package/dist/{chunk-LV7FMIMM.js → chunk-VGUHAHHV.js} +2 -2
- package/dist/{chunk-GYVXARCY.js → chunk-VIBPFVU4.js} +41 -41
- package/dist/{chunk-KHPOKZ6Z.js → chunk-VMAC66JX.js} +6 -6
- package/dist/{chunk-SHKRS6I5.js → chunk-VRPNETPK.js} +3 -3
- package/dist/{chunk-6U4J6RVS.js → chunk-WCHW4XN7.js} +14 -14
- package/dist/{chunk-CJH6QUQJ.js → chunk-WD3UXNJV.js} +3 -3
- package/dist/{chunk-H5EVWF6L.js → chunk-WR67FJMX.js} +4 -4
- package/dist/{chunk-XLIJ36RG.js → chunk-WRMQ7EX4.js} +5 -5
- package/dist/{chunk-VVFWOBAM.js → chunk-WTJUKYB2.js} +15 -16
- package/dist/chunk-WTJUKYB2.js.map +1 -0
- package/dist/{chunk-7KLCFJ5G.js → chunk-X4PPGXQG.js} +2 -2
- package/dist/{chunk-ZE2JTVCQ.js → chunk-X5BMQXFD.js} +11 -11
- package/dist/{chunk-OYJY4Y4A.js → chunk-XFNLU7EW.js} +14 -7
- package/dist/chunk-XFNLU7EW.js.map +1 -0
- package/dist/{chunk-UECU6LZI.js → chunk-XXRBOSWV.js} +3 -3
- package/dist/{chunk-SPKAIDWX.js → chunk-XZEFCPBL.js} +2 -2
- package/dist/{chunk-EZ5NYRHK.js → chunk-YL6N7QLA.js} +5 -5
- package/dist/{chunk-Q2ZJOECN.js → chunk-YMVTIV5L.js} +19 -19
- package/dist/chunk-YMVTIV5L.js.map +1 -0
- package/dist/{chunk-VAIESMPY.js → chunk-YVBHGMKC.js} +4 -4
- package/dist/{chunk-AR62NQXE.js → chunk-Z2S5VQG7.js} +2 -2
- package/dist/{chunk-2MXUB3ZO.js → chunk-Z5OGTWMZ.js} +15 -2
- package/dist/chunk-Z5OGTWMZ.js.map +1 -0
- package/dist/{chunk-7UQJEADK.js → chunk-ZL2O4BYP.js} +2 -2
- package/dist/{chunk-FOOITLHR.js → chunk-ZZHBT5WQ.js} +2 -2
- package/dist/{chunk-X6VJQJYY.js → chunk-ZZWHKC6A.js} +3 -3
- package/dist/components/timeline-annotation-shared.d.ts +1 -9
- package/dist/composer-messages.js +2 -2
- package/dist/composer.js +15 -15
- package/dist/{computer-viewer-D4NHQB5D.js → computer-viewer-S6TE6TN7.js} +8 -8
- package/dist/connect.js +12 -11
- package/dist/desktop.js +2 -2
- package/dist/editor.js +2 -2
- package/dist/{embedded-new-voice-X4ZW6SY4.js → embedded-new-voice-ZDZPGX25.js} +8 -8
- package/dist/{embedded-voice-4OD6Z3HU.js → embedded-voice-FKCUXSJO.js} +8 -8
- package/dist/{fleet-decision-row-5UCJXTDP.js → fleet-decision-row-VCGWYJAV.js} +2 -2
- package/dist/hooks/page-wake.d.ts +21 -0
- package/dist/hooks/use-session-events.d.ts +1 -0
- package/dist/index.js +206 -205
- package/dist/interaction.js +9 -9
- package/dist/{latest-question-VGVNUGAU.js → latest-question-SINEV4U6.js} +3 -3
- package/dist/lib/format.d.ts +3 -2
- package/dist/machines.js +6 -6
- package/dist/messages/en.d.ts +12 -3
- package/dist/messages.js +1 -1
- package/dist/model-picker-model.js +2 -2
- package/dist/{model-policy-picker-menu-XOPYY6YA.js → model-policy-picker-menu-66JPM3G5.js} +6 -6
- package/dist/model-policy-picker-menu-66JPM3G5.js.map +1 -0
- package/dist/model-policy.js +1 -1
- package/dist/native-previews.js +3 -3
- package/dist/{platform-activity-row-56XOVTRA.js → platform-activity-row-LU5WABI2.js} +2 -2
- package/dist/{queue-surface-implementation-OZDOBJ6W.js → queue-surface-implementation-Y4OUVS7N.js} +8 -7
- package/dist/{queue-surface-implementation-OZDOBJ6W.js.map → queue-surface-implementation-Y4OUVS7N.js.map} +1 -1
- package/dist/realtime.js +7 -7
- package/dist/{sandbox-files-LJCR437H.js → sandbox-files-NBIVKVCZ.js} +11 -11
- package/dist/sandbox-files-NBIVKVCZ.js.map +1 -0
- package/dist/session-app.js +266 -260
- package/dist/session-list-model.js +3 -3
- package/dist/{session-realtime-UISLBZ4A.js → session-realtime-3PALSNMJ.js} +3 -3
- package/dist/session-realtime-3PALSNMJ.js.map +1 -0
- package/dist/session-realtime.js +2 -2
- package/dist/session-ui.js +62 -61
- package/dist/session.d.ts +1 -1
- package/dist/session.js +17 -17
- package/dist/sites.js +2 -2
- package/dist/terminal.js +2 -2
- package/dist/this-computer.js +3 -3
- package/dist/timeline/annotation-model.d.ts +48 -0
- package/dist/{timeline-annotation-markers-ACT7XRMW.js → timeline-annotation-markers-6526H2NM.js} +11 -9
- package/dist/{timeline-annotation-markers-ACT7XRMW.js.map → timeline-annotation-markers-6526H2NM.js.map} +1 -1
- package/dist/{timeline-annotation-selection-2IA7T5VR.js → timeline-annotation-selection-KV5SM6TA.js} +16 -62
- package/dist/timeline-annotation-selection-KV5SM6TA.js.map +1 -0
- package/dist/{timeline-annotations-dialog-W5B2HMYY.js → timeline-annotations-dialog-7CDHWC7Y.js} +12 -10
- package/dist/{timeline-annotations-dialog-W5B2HMYY.js.map → timeline-annotations-dialog-7CDHWC7Y.js.map} +1 -1
- package/dist/timeline-model.d.ts +3 -0
- package/dist/timeline-model.js +40 -14
- package/dist/ui/access-list.js +24 -24
- package/dist/ui/choice-cards.js +2 -2
- package/dist/ui/composer-menu-action.js +2 -2
- package/dist/ui/context-menu.d.ts +3 -1
- package/dist/ui/context-menu.js +3 -1
- package/dist/ui/detail-page.js +3 -3
- package/dist/ui/detail-sheet.js +3 -3
- package/dist/ui/diff-view.js +3 -3
- package/dist/ui/disclosure.js +5 -5
- package/dist/ui/dropdown-menu.js +1 -1
- package/dist/ui/flush-form-page.js +5 -5
- package/dist/ui/form-dialog.js +4 -4
- package/dist/ui/list-row.js +5 -5
- package/dist/ui/load-failure.js +3 -3
- package/dist/ui/page-actions.js +3 -3
- package/dist/ui/revision-history.js +11 -11
- package/dist/ui/role-select.js +8 -8
- package/dist/ui/segmented-control.js +1 -1
- package/dist/ui/settings-nav.js +3 -3
- package/dist/ui/toolbar.js +3 -3
- package/dist/usage.js +2 -2
- package/dist/workbench.js +11 -11
- package/package.json +4 -4
- package/src/app/app-state.tsx +2 -1
- package/src/app/components/command-menu/chat-switcher.tsx +135 -0
- package/src/app/components/command-menu/command-menu.tsx +840 -0
- package/src/app/components/command-menu/keycaps.tsx +56 -0
- package/src/app/components/command-menu/shortcut-sheet.tsx +155 -0
- package/src/app/components/credits/credit-refusal-notice.test.tsx +132 -0
- package/src/app/components/credits/credit-refusal-notice.tsx +92 -0
- package/src/app/components/rail/rail-context.tsx +28 -5
- package/src/app/components/rail/rail-sections.tsx +3 -5
- package/src/app/components/rail/session-header-mute.test.tsx +23 -1
- package/src/app/components/rail/session-header.test.tsx +21 -2
- package/src/app/components/rail/session-header.tsx +31 -1
- package/src/app/components/rail/session-list.tsx +89 -16
- package/src/app/components/rail/session-shell.tsx +0 -14
- package/src/app/components/session/session-search-dialog.tsx +12 -1
- package/src/app/embed/session-app.tsx +6 -3
- package/src/app/lib/actions/actions-provider.tsx +486 -0
- package/src/app/lib/actions/actions.test.ts +249 -0
- package/src/app/lib/actions/chat-directory.ts +231 -0
- package/src/app/lib/actions/chat-operations.ts +145 -0
- package/src/app/lib/actions/chat-switcher.ts +62 -0
- package/src/app/lib/actions/chords.ts +185 -0
- package/src/app/lib/actions/events.ts +10 -0
- package/src/app/lib/actions/rank.ts +119 -0
- package/src/app/lib/actions/registry.ts +333 -0
- package/src/app/lib/credit-coverage.test.ts +83 -0
- package/src/app/lib/credit-coverage.tsx +48 -0
- package/src/app/lib/free-credit-gap.test.ts +32 -1
- package/src/app/lib/free-credit-gap.tsx +32 -2
- package/src/app/lib/integration-connect-analytics.test.ts +1 -0
- package/src/app/lib/integration-connect-analytics.tsx +4 -0
- package/src/app/lib/models-route.test.ts +18 -0
- package/src/app/lib/models-route.tsx +26 -4
- package/src/app/lib/session-search-route.tsx +6 -1
- package/src/app/lib/session-ui-features.tsx +28 -9
- package/src/app/routes/session.tsx +74 -16
- package/src/app/routes/sessions-index.tsx +83 -4
- package/src/components/timeline-annotation-selection.tsx +9 -64
- package/src/components/timeline-annotation-shared.ts +9 -57
- package/src/hooks/page-wake.ts +80 -0
- package/src/hooks/use-session-events.ts +309 -81
- package/src/lib/format.ts +3 -2
- package/src/messages/en.ts +13 -3
- package/src/model-picker-model.ts +3 -0
- package/src/model-policy.ts +9 -1
- package/src/session.ts +1 -0
- package/src/timeline/annotation-model.ts +217 -0
- package/src/timeline/projection.ts +27 -21
- package/src/timeline-model.ts +14 -0
- package/src/ui/context-menu.tsx +16 -0
- package/src/ui/dropdown-menu.tsx +4 -1
- package/src/ui/segmented-control.tsx +3 -0
- package/styles/compiled.css +92 -0
- package/dist/app/lib/keyboard-shortcuts.d.ts +0 -51
- package/dist/app/lib/keyboard-shortcuts.js +0 -16
- package/dist/chunk-2MXUB3ZO.js.map +0 -1
- package/dist/chunk-2RIUMV7S.js.map +0 -1
- package/dist/chunk-53IXIUYP.js +0 -39
- package/dist/chunk-53IXIUYP.js.map +0 -1
- package/dist/chunk-DN3TKURW.js.map +0 -1
- package/dist/chunk-F2GXK2Z6.js.map +0 -1
- package/dist/chunk-G7VLL3PG.js.map +0 -1
- package/dist/chunk-GRLPRM56.js.map +0 -1
- package/dist/chunk-HUQHJSPV.js.map +0 -1
- package/dist/chunk-IO6K6UYJ.js.map +0 -1
- package/dist/chunk-KWB5U3ZT.js.map +0 -1
- package/dist/chunk-L5UCO2UV.js.map +0 -1
- package/dist/chunk-MOF3XSUM.js.map +0 -1
- package/dist/chunk-N2BEUKXT.js.map +0 -1
- package/dist/chunk-OS3EQOIS.js.map +0 -1
- package/dist/chunk-OYJY4Y4A.js.map +0 -1
- package/dist/chunk-Q2ZJOECN.js.map +0 -1
- package/dist/chunk-QWCTYLMD.js.map +0 -1
- package/dist/chunk-RZV7SXED.js.map +0 -1
- package/dist/chunk-S3M5WCZW.js.map +0 -1
- package/dist/chunk-SOOWLNC5.js.map +0 -1
- package/dist/chunk-SWWYYGQO.js.map +0 -1
- package/dist/chunk-UO36FC3S.js.map +0 -1
- package/dist/chunk-UYSZKDQY.js.map +0 -1
- package/dist/chunk-VE3FKXJ7.js.map +0 -1
- package/dist/chunk-VVFWOBAM.js.map +0 -1
- package/dist/chunk-ZSERYHHT.js.map +0 -1
- package/dist/timeline-annotation-selection-2IA7T5VR.js.map +0 -1
- package/src/app/lib/keyboard-shortcuts.test.ts +0 -47
- package/src/app/lib/keyboard-shortcuts.tsx +0 -58
- /package/dist/app/{lib/keyboard-shortcuts.js.map → components/command-menu/keycaps.js.map} +0 -0
- /package/dist/{browser-viewer-ZRFZX3VN.js.map → app/components/credits/credit-refusal-notice.js.map} +0 -0
- /package/dist/{chat-interactive-block-HUMYWVCK.js.map → app/lib/actions/actions-provider.js.map} +0 -0
- /package/dist/{computer-viewer-D4NHQB5D.js.map → app/lib/credit-coverage.js.map} +0 -0
- /package/dist/{embedded-new-voice-X4ZW6SY4.js.map → browser-viewer-HPUMK7UP.js.map} +0 -0
- /package/dist/{embedded-voice-4OD6Z3HU.js.map → chat-interactive-block-22PPECCT.js.map} +0 -0
- /package/dist/{chunk-GVIQ7H62.js.map → chunk-2LUBBDZV.js.map} +0 -0
- /package/dist/{chunk-XMMVIY7B.js.map → chunk-3CCJWHQY.js.map} +0 -0
- /package/dist/{chunk-XS2FZ6DX.js.map → chunk-3F5ZPIWI.js.map} +0 -0
- /package/dist/{chunk-72US6QNB.js.map → chunk-3J2YZRY5.js.map} +0 -0
- /package/dist/{chunk-D4YQF4E3.js.map → chunk-3SMJ2BIQ.js.map} +0 -0
- /package/dist/{chunk-TBJINQXA.js.map → chunk-3WCYK36X.js.map} +0 -0
- /package/dist/{chunk-WPCF34V6.js.map → chunk-3WG3CRL7.js.map} +0 -0
- /package/dist/{chunk-JI5BYQKO.js.map → chunk-3X46PNBX.js.map} +0 -0
- /package/dist/{chunk-PBK44WJC.js.map → chunk-4GJ37O6G.js.map} +0 -0
- /package/dist/{chunk-LEXPBQ56.js.map → chunk-4SKJX3C4.js.map} +0 -0
- /package/dist/{chunk-ZA6YD2LW.js.map → chunk-57SYK776.js.map} +0 -0
- /package/dist/{chunk-22LBKJDE.js.map → chunk-5DIAN5GQ.js.map} +0 -0
- /package/dist/{chunk-LJ3TDK2L.js.map → chunk-5FA455GR.js.map} +0 -0
- /package/dist/{chunk-YPR5INHV.js.map → chunk-5X3E2Z3D.js.map} +0 -0
- /package/dist/{chunk-OXNWZTEU.js.map → chunk-5ZJCL6X4.js.map} +0 -0
- /package/dist/{chunk-62OAZ4LO.js.map → chunk-6C5GQQMC.js.map} +0 -0
- /package/dist/{chunk-VGITH57T.js.map → chunk-6ERTXDZM.js.map} +0 -0
- /package/dist/{chunk-ZQ7XQZCF.js.map → chunk-6FX73Y4I.js.map} +0 -0
- /package/dist/{chunk-QZO2KK2F.js.map → chunk-6P44NG6Y.js.map} +0 -0
- /package/dist/{chunk-N2DDJLTM.js.map → chunk-6T7Y33JA.js.map} +0 -0
- /package/dist/{chunk-RBAGC2MJ.js.map → chunk-75VE5QUS.js.map} +0 -0
- /package/dist/{chunk-MRXOGI3O.js.map → chunk-77CUDSHG.js.map} +0 -0
- /package/dist/{chunk-GZ65XQR5.js.map → chunk-7T7FHSGS.js.map} +0 -0
- /package/dist/{chunk-YGAH34CD.js.map → chunk-A3S26JSP.js.map} +0 -0
- /package/dist/{chunk-GYPAO6RS.js.map → chunk-A664GSDM.js.map} +0 -0
- /package/dist/{chunk-JSZSNMDR.js.map → chunk-ASUYLXKO.js.map} +0 -0
- /package/dist/{chunk-RTK7SUPL.js.map → chunk-AUUJLVA3.js.map} +0 -0
- /package/dist/{chunk-OOTBYSCA.js.map → chunk-BBWKPNJB.js.map} +0 -0
- /package/dist/{chunk-BGZIMIUU.js.map → chunk-BCUYWOQU.js.map} +0 -0
- /package/dist/{chunk-EKN4N4LS.js.map → chunk-BDFMNJZJ.js.map} +0 -0
- /package/dist/{chunk-YZKGOWCC.js.map → chunk-BIDXQAGO.js.map} +0 -0
- /package/dist/{chunk-Q2UUANHF.js.map → chunk-BIKAJ4DY.js.map} +0 -0
- /package/dist/{chunk-5IQBF2X3.js.map → chunk-BJPJ2OUX.js.map} +0 -0
- /package/dist/{chunk-EY2EMHZW.js.map → chunk-BPM2OTYK.js.map} +0 -0
- /package/dist/{chunk-MT4TBRQB.js.map → chunk-BSWS2RUZ.js.map} +0 -0
- /package/dist/{chunk-T7YD3VGK.js.map → chunk-C52MNKXU.js.map} +0 -0
- /package/dist/{chunk-THNW33K7.js.map → chunk-CEUDV4OA.js.map} +0 -0
- /package/dist/{chunk-LHGIS6SZ.js.map → chunk-CVK74BH7.js.map} +0 -0
- /package/dist/{chunk-DFO2UCYG.js.map → chunk-CW5I65ZX.js.map} +0 -0
- /package/dist/{chunk-SKRLKQEG.js.map → chunk-DOSC2HRQ.js.map} +0 -0
- /package/dist/{chunk-KVB6XDLP.js.map → chunk-DPJ2CWVN.js.map} +0 -0
- /package/dist/{chunk-4J6V4DH7.js.map → chunk-DXMRO2MU.js.map} +0 -0
- /package/dist/{chunk-42I4O4WQ.js.map → chunk-EE55IDDR.js.map} +0 -0
- /package/dist/{chunk-2RA6XABP.js.map → chunk-EEERTLFF.js.map} +0 -0
- /package/dist/{chunk-PTOTKUKO.js.map → chunk-EEO744XR.js.map} +0 -0
- /package/dist/{chunk-LD3HVI2J.js.map → chunk-EMFGBAQL.js.map} +0 -0
- /package/dist/{chunk-FQGUK4ST.js.map → chunk-ENPJKVMN.js.map} +0 -0
- /package/dist/{chunk-HDHK3SXK.js.map → chunk-EU6RLHMP.js.map} +0 -0
- /package/dist/{chunk-MRUWRQBX.js.map → chunk-FET6XHGS.js.map} +0 -0
- /package/dist/{chunk-M6KUY3YH.js.map → chunk-FIICQA55.js.map} +0 -0
- /package/dist/{chunk-NLWLCYCT.js.map → chunk-FTZXCPE3.js.map} +0 -0
- /package/dist/{chunk-FN2KA3MJ.js.map → chunk-FUS76DO4.js.map} +0 -0
- /package/dist/{chunk-AM4IIPWI.js.map → chunk-G7N5NPRJ.js.map} +0 -0
- /package/dist/{chunk-CCQ7YKOD.js.map → chunk-GBYZ6653.js.map} +0 -0
- /package/dist/{chunk-YKKVIJVX.js.map → chunk-GQDSC6QZ.js.map} +0 -0
- /package/dist/{chunk-5X6JP75Q.js.map → chunk-GRSODLVO.js.map} +0 -0
- /package/dist/{chunk-73YP3R5X.js.map → chunk-GSESCQFY.js.map} +0 -0
- /package/dist/{chunk-MZLEBFUZ.js.map → chunk-GZD6VBIK.js.map} +0 -0
- /package/dist/{chunk-IZR2QRFF.js.map → chunk-H3HH5AHS.js.map} +0 -0
- /package/dist/{chunk-OJPUVUB6.js.map → chunk-HAOZCLLA.js.map} +0 -0
- /package/dist/{chunk-ZBHDGAYL.js.map → chunk-HEFE4OZJ.js.map} +0 -0
- /package/dist/{chunk-WTG34JVA.js.map → chunk-HI75UTI6.js.map} +0 -0
- /package/dist/{chunk-OMBIG3NC.js.map → chunk-HM633ROV.js.map} +0 -0
- /package/dist/{chunk-WDFZWSKD.js.map → chunk-HRIP4M6H.js.map} +0 -0
- /package/dist/{chunk-A2BCW6CQ.js.map → chunk-HU2DRFFI.js.map} +0 -0
- /package/dist/{chunk-PO35PBAB.js.map → chunk-HVH7FFJH.js.map} +0 -0
- /package/dist/{chunk-EG7KNUF7.js.map → chunk-HYTXTKST.js.map} +0 -0
- /package/dist/{chunk-TFHG75A4.js.map → chunk-I4XMDFUJ.js.map} +0 -0
- /package/dist/{chunk-IZHVZZQA.js.map → chunk-ICAUYWSL.js.map} +0 -0
- /package/dist/{chunk-DCLPWYP3.js.map → chunk-IEVPJ3G6.js.map} +0 -0
- /package/dist/{chunk-EVWZHDSF.js.map → chunk-IKH3VTA4.js.map} +0 -0
- /package/dist/{chunk-TYHLEFD2.js.map → chunk-IZJNMRIR.js.map} +0 -0
- /package/dist/{chunk-D2SR3TEB.js.map → chunk-J243WGUA.js.map} +0 -0
- /package/dist/{chunk-QGSGIYE3.js.map → chunk-J2C6LB6W.js.map} +0 -0
- /package/dist/{chunk-MT6TRTXF.js.map → chunk-J5MEDX7C.js.map} +0 -0
- /package/dist/{chunk-6QHUKBJP.js.map → chunk-J7SKOO44.js.map} +0 -0
- /package/dist/{chunk-W2QK7PYS.js.map → chunk-JAAST75A.js.map} +0 -0
- /package/dist/{chunk-NQCMS4AJ.js.map → chunk-JQCGPTZ6.js.map} +0 -0
- /package/dist/{chunk-CMUXJHGH.js.map → chunk-JRSCWQMC.js.map} +0 -0
- /package/dist/{chunk-Q4OHNGGB.js.map → chunk-JRXHSVD5.js.map} +0 -0
- /package/dist/{chunk-SD2K5ZN5.js.map → chunk-JXYLDT6X.js.map} +0 -0
- /package/dist/{chunk-IXX6ZOL2.js.map → chunk-KGTMHEAP.js.map} +0 -0
- /package/dist/{chunk-22OBGVEJ.js.map → chunk-KOXVGPW4.js.map} +0 -0
- /package/dist/{chunk-NOZ5CGZE.js.map → chunk-L5GPPMUB.js.map} +0 -0
- /package/dist/{chunk-4FOOHMTU.js.map → chunk-LY6727IF.js.map} +0 -0
- /package/dist/{chunk-PT7MTXRE.js.map → chunk-MAOCN7J6.js.map} +0 -0
- /package/dist/{chunk-4K2JSJNX.js.map → chunk-MB5LZVDO.js.map} +0 -0
- /package/dist/{chunk-5LES64PP.js.map → chunk-MKOQAVOE.js.map} +0 -0
- /package/dist/{chunk-BMV2SNYX.js.map → chunk-MUPWNSEJ.js.map} +0 -0
- /package/dist/{chunk-Y5TRG22C.js.map → chunk-NRXIECWC.js.map} +0 -0
- /package/dist/{chunk-GOE7G5JX.js.map → chunk-NWSAF6P5.js.map} +0 -0
- /package/dist/{chunk-DUM363VS.js.map → chunk-OFZQJNF6.js.map} +0 -0
- /package/dist/{chunk-CKN5QPEL.js.map → chunk-OMF7POEY.js.map} +0 -0
- /package/dist/{chunk-MVXKO2BD.js.map → chunk-OXD6ET34.js.map} +0 -0
- /package/dist/{chunk-47JUEVME.js.map → chunk-PALX6HWV.js.map} +0 -0
- /package/dist/{chunk-B6OGSG7I.js.map → chunk-PE3BLBDT.js.map} +0 -0
- /package/dist/{chunk-RVISSNVE.js.map → chunk-PMZKJOG6.js.map} +0 -0
- /package/dist/{chunk-CESAMXWX.js.map → chunk-PQUTMG3S.js.map} +0 -0
- /package/dist/{chunk-7VFCOKPG.js.map → chunk-PWBGODZU.js.map} +0 -0
- /package/dist/{chunk-MOPAXD2H.js.map → chunk-QCADUTYX.js.map} +0 -0
- /package/dist/{chunk-CT5FBO7E.js.map → chunk-RPOUJI25.js.map} +0 -0
- /package/dist/{chunk-WKHYOS72.js.map → chunk-RW4GFE56.js.map} +0 -0
- /package/dist/{chunk-FH4GO7HO.js.map → chunk-RYLVVDR7.js.map} +0 -0
- /package/dist/{chunk-QZRDCFHI.js.map → chunk-S66SBBFQ.js.map} +0 -0
- /package/dist/{chunk-CQJFIPAH.js.map → chunk-S7TNV2I7.js.map} +0 -0
- /package/dist/{chunk-ZBQSIGGR.js.map → chunk-SC773IMJ.js.map} +0 -0
- /package/dist/{chunk-FBJ2HK7A.js.map → chunk-SGPJ3YS2.js.map} +0 -0
- /package/dist/{chunk-A2EWJQXX.js.map → chunk-SM5QX6UK.js.map} +0 -0
- /package/dist/{chunk-RKZWCTXV.js.map → chunk-TAEKDMEF.js.map} +0 -0
- /package/dist/{chunk-6AVCAUGL.js.map → chunk-TASEV25T.js.map} +0 -0
- /package/dist/{chunk-3XOISKZC.js.map → chunk-TLGDPMUX.js.map} +0 -0
- /package/dist/{chunk-5IUW34PG.js.map → chunk-TY3QYPJ6.js.map} +0 -0
- /package/dist/{chunk-VQFR4EU4.js.map → chunk-U3JK5VJV.js.map} +0 -0
- /package/dist/{chunk-2AWMJO54.js.map → chunk-U42P3RMZ.js.map} +0 -0
- /package/dist/{chunk-GUU75DES.js.map → chunk-UEJTOPLW.js.map} +0 -0
- /package/dist/{chunk-OZOEWLGR.js.map → chunk-UT6JAORE.js.map} +0 -0
- /package/dist/{chunk-5TELOQA6.js.map → chunk-UTHPUINA.js.map} +0 -0
- /package/dist/{chunk-26RQ6JBR.js.map → chunk-VBVCNH6D.js.map} +0 -0
- /package/dist/{chunk-P646DND6.js.map → chunk-VCMQPCME.js.map} +0 -0
- /package/dist/{chunk-LV7FMIMM.js.map → chunk-VGUHAHHV.js.map} +0 -0
- /package/dist/{chunk-GYVXARCY.js.map → chunk-VIBPFVU4.js.map} +0 -0
- /package/dist/{chunk-KHPOKZ6Z.js.map → chunk-VMAC66JX.js.map} +0 -0
- /package/dist/{chunk-SHKRS6I5.js.map → chunk-VRPNETPK.js.map} +0 -0
- /package/dist/{chunk-6U4J6RVS.js.map → chunk-WCHW4XN7.js.map} +0 -0
- /package/dist/{chunk-CJH6QUQJ.js.map → chunk-WD3UXNJV.js.map} +0 -0
- /package/dist/{chunk-H5EVWF6L.js.map → chunk-WR67FJMX.js.map} +0 -0
- /package/dist/{chunk-XLIJ36RG.js.map → chunk-WRMQ7EX4.js.map} +0 -0
- /package/dist/{chunk-7KLCFJ5G.js.map → chunk-X4PPGXQG.js.map} +0 -0
- /package/dist/{chunk-ZE2JTVCQ.js.map → chunk-X5BMQXFD.js.map} +0 -0
- /package/dist/{chunk-UECU6LZI.js.map → chunk-XXRBOSWV.js.map} +0 -0
- /package/dist/{chunk-SPKAIDWX.js.map → chunk-XZEFCPBL.js.map} +0 -0
- /package/dist/{chunk-EZ5NYRHK.js.map → chunk-YL6N7QLA.js.map} +0 -0
- /package/dist/{chunk-VAIESMPY.js.map → chunk-YVBHGMKC.js.map} +0 -0
- /package/dist/{chunk-AR62NQXE.js.map → chunk-Z2S5VQG7.js.map} +0 -0
- /package/dist/{chunk-7UQJEADK.js.map → chunk-ZL2O4BYP.js.map} +0 -0
- /package/dist/{chunk-FOOITLHR.js.map → chunk-ZZHBT5WQ.js.map} +0 -0
- /package/dist/{chunk-X6VJQJYY.js.map → chunk-ZZWHKC6A.js.map} +0 -0
- /package/dist/{model-policy-picker-menu-XOPYY6YA.js.map → computer-viewer-S6TE6TN7.js.map} +0 -0
- /package/dist/{sandbox-files-LJCR437H.js.map → embedded-new-voice-ZDZPGX25.js.map} +0 -0
- /package/dist/{session-realtime-UISLBZ4A.js.map → embedded-voice-FKCUXSJO.js.map} +0 -0
- /package/dist/{fleet-decision-row-5UCJXTDP.js.map → fleet-decision-row-VCGWYJAV.js.map} +0 -0
- /package/dist/{latest-question-VGVNUGAU.js.map → latest-question-SINEV4U6.js.map} +0 -0
- /package/dist/{platform-activity-row-56XOVTRA.js.map → platform-activity-row-LU5WABI2.js.map} +0 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
ActionsProvider,
|
|
4
|
+
useActionShortcut,
|
|
5
|
+
useAppActions
|
|
6
|
+
} from "../../../chunk-JRJUSKDY.js";
|
|
7
|
+
import "../../../chunk-4IWBQUQU.js";
|
|
8
|
+
import "../../../chunk-MF464AKA.js";
|
|
9
|
+
import "../../../chunk-OSI2QWSL.js";
|
|
10
|
+
import "../../../chunk-O5S57N6H.js";
|
|
11
|
+
import "../../../chunk-SF3M27AN.js";
|
|
12
|
+
import "../../../chunk-TXIIBNCA.js";
|
|
13
|
+
import "../../../chunk-3RWVKGQM.js";
|
|
14
|
+
import "../../../chunk-XXZKL5UI.js";
|
|
15
|
+
import "../../../chunk-7ZEGSUR7.js";
|
|
16
|
+
import "../../../chunk-XFNLU7EW.js";
|
|
17
|
+
import "../../../chunk-HQA6FUM5.js";
|
|
18
|
+
import "../../../chunk-WGPLDFEC.js";
|
|
19
|
+
import "../../../chunk-FABYS4WM.js";
|
|
20
|
+
import "../../../chunk-YG6NARQY.js";
|
|
21
|
+
import "../../../chunk-MYNUBDU7.js";
|
|
22
|
+
import "../../../chunk-IZUAIHR4.js";
|
|
23
|
+
import "../../../chunk-W6KAUGXO.js";
|
|
24
|
+
import "../../../chunk-J2C6LB6W.js";
|
|
25
|
+
import "../../../chunk-CFEFYPNR.js";
|
|
26
|
+
import "../../../chunk-DHXKEJBH.js";
|
|
27
|
+
export {
|
|
28
|
+
ActionsProvider,
|
|
29
|
+
useActionShortcut,
|
|
30
|
+
useAppActions
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=actions-provider.js.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type SessionListRow } from "../../../session-list-model.js";
|
|
2
|
+
export type ChatRecord = {
|
|
3
|
+
id: string;
|
|
4
|
+
workspaceId: string;
|
|
5
|
+
title: string;
|
|
6
|
+
updatedAt: number;
|
|
7
|
+
pinned: boolean;
|
|
8
|
+
archived: boolean;
|
|
9
|
+
/** Present when the app holds a full or list row, needed for pin and archive. */
|
|
10
|
+
row: SessionListRow | null;
|
|
11
|
+
};
|
|
12
|
+
export declare function chatRecordFromRow(row: SessionListRow): ChatRecord;
|
|
13
|
+
/** Remember rows the app has read (sidebar pages, search results, the open chat). */
|
|
14
|
+
export declare function rememberChats(subjectId: string, workspaceId: string, rows: readonly SessionListRow[]): void;
|
|
15
|
+
/** The chat was opened: move it to the front of the recent list. */
|
|
16
|
+
export declare function recordChatVisit(subjectId: string, workspaceId: string, row: SessionListRow): void;
|
|
17
|
+
/** A chat was deleted or is no longer reachable: forget it. */
|
|
18
|
+
export declare function forgetChat(subjectId: string, workspaceId: string, chatId: string): void;
|
|
19
|
+
/** The sidebar reports the chats it shows, in order, so next and previous follow it. */
|
|
20
|
+
export declare function setSidebarOrder(subjectId: string, workspaceId: string, order: readonly string[], pinnedOrder: readonly string[]): void;
|
|
21
|
+
export type ChatDirectorySnapshot = Readonly<{
|
|
22
|
+
rows: ReadonlyMap<string, ChatRecord>;
|
|
23
|
+
recent: readonly string[];
|
|
24
|
+
sidebarOrder: readonly string[];
|
|
25
|
+
pinnedOrder: readonly string[];
|
|
26
|
+
version: number;
|
|
27
|
+
}>;
|
|
28
|
+
export declare function readChatDirectory(subjectId: string, workspaceId: string): ChatDirectorySnapshot;
|
|
29
|
+
/** Re-renders when the directory changes; read the snapshot through `readChatDirectory`. */
|
|
30
|
+
export declare function useChatDirectoryVersion(subjectId: string, workspaceId: string): number;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SessionListRow } from "../../../session-list-model.js";
|
|
2
|
+
export type ChatOperations = {
|
|
3
|
+
/** The chat's shareable address. */
|
|
4
|
+
linkTo(chat: Pick<SessionListRow, "id" | "workspaceId">): string;
|
|
5
|
+
copyLink(chat: Pick<SessionListRow, "id" | "workspaceId">): Promise<void>;
|
|
6
|
+
setPinned(chat: SessionListRow, pinned: boolean): Promise<void>;
|
|
7
|
+
setArchived(chat: SessionListRow, archived: boolean): Promise<void>;
|
|
8
|
+
setUnread(chat: SessionListRow, unread: boolean): Promise<void>;
|
|
9
|
+
};
|
|
10
|
+
export declare function chatPath(chat: Pick<SessionListRow, "id" | "workspaceId">): string;
|
|
11
|
+
export declare function useChatOperations(): ChatOperations;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Control+Tab in the desktop app: switch between recently viewed chats, most
|
|
3
|
+
* recent first, as ⌘Tab switches apps. A quick press goes back to the previous
|
|
4
|
+
* chat (press again to return); holding Control shows the list, each Tab moves
|
|
5
|
+
* down it (Shift+Tab up), and releasing Control opens the highlighted chat.
|
|
6
|
+
*
|
|
7
|
+
* The list is read once when the switcher opens, so it holds still while the
|
|
8
|
+
* person cycles through it.
|
|
9
|
+
*/
|
|
10
|
+
import type { ChatDirectorySnapshot } from "./chat-directory.js";
|
|
11
|
+
/** At most this many chats; older ones are a search away in ⌘K. */
|
|
12
|
+
export declare const SWITCHER_LIMIT = 10;
|
|
13
|
+
/** A press shorter than this switches without ever drawing the list. */
|
|
14
|
+
export declare const SWITCHER_SHOW_DELAY_MS = 140;
|
|
15
|
+
export type ChatSwitcherState = Readonly<{
|
|
16
|
+
/** Chats in the order shown, most recently viewed first. */
|
|
17
|
+
ids: readonly string[];
|
|
18
|
+
/** The highlighted chat. */
|
|
19
|
+
index: number;
|
|
20
|
+
/** Whether the list is drawn (after the delay, or once Tab is pressed again). */
|
|
21
|
+
visible: boolean;
|
|
22
|
+
}>;
|
|
23
|
+
/**
|
|
24
|
+
* The chats to switch between, most recently viewed first, with the open chat
|
|
25
|
+
* (when there is one) at the front. Null when there is nowhere to switch to.
|
|
26
|
+
*/
|
|
27
|
+
export declare function openChatSwitcher(directory: Pick<ChatDirectorySnapshot, "recent" | "rows">, currentChatId: string | null, backwards: boolean): ChatSwitcherState | null;
|
|
28
|
+
/** Tab moves down the list and Shift+Tab up, wrapping at the ends. */
|
|
29
|
+
export declare function stepChatSwitcher(state: ChatSwitcherState, step: 1 | -1): ChatSwitcherState;
|
|
30
|
+
/** Control+Tab exactly: no ⌘, no ⌥ (Shift reverses). */
|
|
31
|
+
export declare function isSwitcherKey(event: Pick<KeyboardEvent, "code" | "ctrlKey" | "metaKey" | "altKey">): boolean;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Keyboard chords: matching, platform notation and desktop accelerators.
|
|
3
|
+
*
|
|
4
|
+
* A chord always has ⌘ (Mac) or Ctrl (Windows and Linux) unless it is a
|
|
5
|
+
* navigation chord with ⌥/Alt, so it never fights with typing. Chords match on
|
|
6
|
+
* `KeyboardEvent.code`, which names the physical key, so they work on every
|
|
7
|
+
* keyboard layout. Punctuation also matches the character typed, because many
|
|
8
|
+
* layouts put it elsewhere: "/" is ⇧7 on Nordic and German keyboards.
|
|
9
|
+
*/
|
|
10
|
+
export type ChordPlatform = "mac" | "other";
|
|
11
|
+
export type ActionSurface = "web" | "desktop";
|
|
12
|
+
export type Chord = {
|
|
13
|
+
/** `KeyboardEvent.code`, e.g. `"KeyO"`, `"Comma"`, `"ArrowDown"`, `"Digit1"`. */
|
|
14
|
+
code: string;
|
|
15
|
+
/** ⌘ on Mac, Ctrl elsewhere. */
|
|
16
|
+
mod?: boolean;
|
|
17
|
+
shift?: boolean;
|
|
18
|
+
/** ⌥ on Mac, Alt elsewhere. */
|
|
19
|
+
alt?: boolean;
|
|
20
|
+
/** The Control key itself on Mac (⌃). Ignored elsewhere, where `mod` is Ctrl. */
|
|
21
|
+
control?: boolean;
|
|
22
|
+
/** Only on this surface (browsers reserve some keys). */
|
|
23
|
+
only?: ActionSurface;
|
|
24
|
+
/** Only on this platform. */
|
|
25
|
+
platform?: ChordPlatform;
|
|
26
|
+
};
|
|
27
|
+
export declare function currentPlatform(): ChordPlatform;
|
|
28
|
+
/** The chords that apply on this surface and platform, in priority order. */
|
|
29
|
+
export declare function applicableChords(chords: readonly Chord[] | undefined, surface: ActionSurface, platform: ChordPlatform): Chord[];
|
|
30
|
+
export declare function matchesChord(event: Pick<KeyboardEvent, "code" | "key" | "metaKey" | "ctrlKey" | "shiftKey" | "altKey" | "repeat" | "isComposing">, chord: Chord, platform: ChordPlatform): boolean;
|
|
31
|
+
/** The chord as keycaps, in the platform's own notation: `["⌘", "⇧", "O"]` or `["Ctrl", "Shift", "O"]`. */
|
|
32
|
+
export declare function chordKeys(chord: Chord, platform: ChordPlatform): string[];
|
|
33
|
+
/** One string for tooltips and `title`s: `⌘⇧O` on Mac, `Ctrl+Shift+O` elsewhere. */
|
|
34
|
+
export declare function chordLabel(chord: Chord, platform: ChordPlatform): string;
|
|
35
|
+
/** The `aria-keyshortcuts` value for a chord. */
|
|
36
|
+
export declare function chordAriaKeys(chord: Chord, platform: ChordPlatform): string;
|
|
37
|
+
/** An Electron accelerator for the desktop menu bar. */
|
|
38
|
+
export declare function chordAccelerator(chord: Chord): string;
|
|
39
|
+
/** True when typing into this element would insert text (so bare keys belong to it). */
|
|
40
|
+
export declare function isTextEntry(target: EventTarget | null): boolean;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** Page events that reach the action system from outside React's tree. */
|
|
2
|
+
/** Opens the ⌘K menu (older desktop menu commands, buttons). Sent on the window target. */
|
|
3
|
+
export declare const OPEN_COMMAND_MENU_EVENT = "opengeni:open-command-menu";
|
|
4
|
+
/** Asks the chat header to start renaming the chat on screen. Sent on the document target. */
|
|
5
|
+
export declare const RENAME_CURRENT_CHAT_EVENT = "opengeni:rename-current-chat";
|
|
6
|
+
export declare function requestCommandMenu(target: EventTarget): void;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ranks short labels (chat titles, action names) against what someone typed.
|
|
3
|
+
*
|
|
4
|
+
* Higher is better; `null` means no match. Tiers, best first:
|
|
5
|
+
* whole label starts with the query, a word starts with it, it appears
|
|
6
|
+
* anywhere, every query word appears in some order, and finally the query's
|
|
7
|
+
* letters appear in order ("kbsh" → "Keyboard shortcuts"). Within a tier,
|
|
8
|
+
* shorter labels and earlier positions win. Letters-in-order matches rank below
|
|
9
|
+
* `LOOSE_MATCH_BELOW`, so a list can drop them once it has real matches.
|
|
10
|
+
*/
|
|
11
|
+
/** Ranks below this are letters-in-order guesses rather than real matches. */
|
|
12
|
+
export declare const LOOSE_MATCH_BELOW = 400;
|
|
13
|
+
/** Case- and accent-insensitive form used for matching. */
|
|
14
|
+
export declare function foldForSearch(value: string): string;
|
|
15
|
+
export declare function rankLabel(rawLabel: string, rawQuery: string): number | null;
|
|
16
|
+
/** The best rank across a label and extra keywords (a keyword match ranks below the same match on the name). */
|
|
17
|
+
export declare function rankWithKeywords(label: string, keywords: readonly string[] | undefined, query: string): number | null;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The action registry: everything a person can do from the keyboard, the ⌘K
|
|
3
|
+
* menu, menus and the desktop menu bar. Each action is defined once here, with
|
|
4
|
+
* its name, keys and availability, so every surface shows and runs it the same
|
|
5
|
+
* way. See docs/command-menu-and-shortcuts.md.
|
|
6
|
+
*/
|
|
7
|
+
import { type LucideIcon } from "lucide-react";
|
|
8
|
+
import type { SessionListRow } from "../../../session-list-model.js";
|
|
9
|
+
import type { ActionSurface, Chord, ChordPlatform } from "./chords.js";
|
|
10
|
+
import type { ChatOperations } from "./chat-operations.js";
|
|
11
|
+
export type ActionGroup = "chat" | "navigate" | "view" | "help";
|
|
12
|
+
/** Where the desktop menu bar shows an action. */
|
|
13
|
+
export type DesktopMenuPlacement = "file" | "view" | "go" | "chat" | "help";
|
|
14
|
+
export type ActionEnv = {
|
|
15
|
+
workspaceId: string;
|
|
16
|
+
subjectId: string;
|
|
17
|
+
surface: ActionSurface;
|
|
18
|
+
platform: ChordPlatform;
|
|
19
|
+
/** The chat on screen, if any. */
|
|
20
|
+
currentChat: SessionListRow | null;
|
|
21
|
+
ops: ChatOperations;
|
|
22
|
+
/** Whether the sidebar's chat list is part of this surface. */
|
|
23
|
+
chatList: boolean;
|
|
24
|
+
newChat(): void;
|
|
25
|
+
openChat(chatId: string): void;
|
|
26
|
+
openInbox(): void;
|
|
27
|
+
toggleSidebar(): void;
|
|
28
|
+
findInChat(): void;
|
|
29
|
+
searchMessages(query?: string): void;
|
|
30
|
+
renameCurrentChat(): void;
|
|
31
|
+
openCommandMenu(): void;
|
|
32
|
+
openShortcutSheet(): void;
|
|
33
|
+
/** Back to the most recently viewed other chat (a quick Control+Tab). */
|
|
34
|
+
switchToRecentChat(): void;
|
|
35
|
+
/** Chats in sidebar order, and the pinned ones in their order. */
|
|
36
|
+
sidebarOrder(): readonly string[];
|
|
37
|
+
pinnedOrder(): readonly string[];
|
|
38
|
+
};
|
|
39
|
+
export type AppAction = {
|
|
40
|
+
id: string;
|
|
41
|
+
/** Plain words; chat actions may read the chat (Pin or Unpin). */
|
|
42
|
+
title: string | ((env: ActionEnv, chat: SessionListRow | null) => string);
|
|
43
|
+
group: ActionGroup;
|
|
44
|
+
icon: LucideIcon;
|
|
45
|
+
/** A different icon for some chats (Unpin for a pinned chat). */
|
|
46
|
+
iconFor?: (chat: SessionListRow | null) => LucideIcon;
|
|
47
|
+
/** Extra words the ⌘K menu matches, e.g. "share" for Copy link. */
|
|
48
|
+
keywords?: readonly string[];
|
|
49
|
+
chords?: readonly Chord[];
|
|
50
|
+
/** The cheat sheet's own key text when one action has many chords (⌘1 to ⌘9). */
|
|
51
|
+
chordSummary?: (platform: ChordPlatform) => string;
|
|
52
|
+
/** Acts on a chat: the current one, or the one a menu or ⌘K row points at. */
|
|
53
|
+
forChat?: boolean;
|
|
54
|
+
/** Listed in the ⌘K menu (some exist only as keys). Default true. */
|
|
55
|
+
inCommandMenu?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Opens a dialog of its own. From ⌘K it runs once the menu has handed focus
|
|
58
|
+
* back, so the new dialog returns focus to the same place when it closes.
|
|
59
|
+
*/
|
|
60
|
+
opensDialog?: boolean;
|
|
61
|
+
/** Offered in ⌘K before anything is typed. */
|
|
62
|
+
suggested?: boolean;
|
|
63
|
+
/** The desktop menu bar section, when it appears there. */
|
|
64
|
+
desktopMenu?: DesktopMenuPlacement;
|
|
65
|
+
available(env: ActionEnv, chat: SessionListRow | null): boolean;
|
|
66
|
+
run(env: ActionEnv, chat: SessionListRow | null, chord?: Chord): void | Promise<void>;
|
|
67
|
+
};
|
|
68
|
+
export declare function actionTitle(action: AppAction, env: ActionEnv, chat: SessionListRow | null): string;
|
|
69
|
+
export declare function actionIcon(action: AppAction, chat: SessionListRow | null): LucideIcon;
|
|
70
|
+
export declare const APP_ACTIONS: readonly AppAction[];
|
|
71
|
+
export declare function findAction(id: string): AppAction | undefined;
|
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
codexLiveUsageQueryKey,
|
|
5
5
|
recordCodexLiveUsage
|
|
6
6
|
} from "../../chunk-TSBE4KOQ.js";
|
|
7
|
-
import "../../chunk-
|
|
7
|
+
import "../../chunk-5ZJCL6X4.js";
|
|
8
|
+
import "../../chunk-RZLBICR5.js";
|
|
8
9
|
import "../../chunk-JKUICTLM.js";
|
|
9
10
|
import "../../chunk-IGVL3ELX.js";
|
|
10
|
-
import "../../chunk-RZLBICR5.js";
|
|
11
11
|
import "../../chunk-NAWXARTY.js";
|
|
12
12
|
import "../../chunk-CM7LVUKC.js";
|
|
13
13
|
import "../../chunk-TVQCDDSZ.js";
|
|
14
|
-
import "../../chunk-
|
|
14
|
+
import "../../chunk-F2YABPRJ.js";
|
|
15
15
|
export {
|
|
16
16
|
codexAccountsQueryKey,
|
|
17
17
|
codexLiveUsageQueryKey,
|
|
@@ -8,30 +8,31 @@ import {
|
|
|
8
8
|
followWorkspaceConnectorPolicy,
|
|
9
9
|
newSessionConnectorCustomizeState,
|
|
10
10
|
sessionConnectorPolicyIsCustomized
|
|
11
|
-
} from "../../chunk-
|
|
12
|
-
import "../../chunk-
|
|
11
|
+
} from "../../chunk-GBYZ6653.js";
|
|
12
|
+
import "../../chunk-3F5ZPIWI.js";
|
|
13
13
|
import "../../chunk-22NENBA3.js";
|
|
14
14
|
import "../../chunk-L4OF77LE.js";
|
|
15
|
-
import "../../chunk-
|
|
15
|
+
import "../../chunk-GSESCQFY.js";
|
|
16
16
|
import "../../chunk-M357MHH3.js";
|
|
17
|
-
import "../../chunk-
|
|
17
|
+
import "../../chunk-HAOZCLLA.js";
|
|
18
18
|
import "../../chunk-CUUJROYT.js";
|
|
19
|
-
import "../../chunk-
|
|
20
|
-
import "../../chunk-
|
|
19
|
+
import "../../chunk-57SYK776.js";
|
|
20
|
+
import "../../chunk-HYTXTKST.js";
|
|
21
21
|
import "../../chunk-OYQQJL3J.js";
|
|
22
|
-
import "../../chunk-
|
|
22
|
+
import "../../chunk-H3LIIAGE.js";
|
|
23
23
|
import "../../chunk-VHB3E6PT.js";
|
|
24
24
|
import "../../chunk-RZLBICR5.js";
|
|
25
|
-
import "../../chunk-
|
|
26
|
-
import "../../chunk-UNJPZGNK.js";
|
|
27
|
-
import "../../chunk-PEHTX3V7.js";
|
|
28
|
-
import "../../chunk-Y5TRG22C.js";
|
|
25
|
+
import "../../chunk-NRXIECWC.js";
|
|
29
26
|
import "../../chunk-J3BHDXQQ.js";
|
|
30
27
|
import "../../chunk-XEA5BCMA.js";
|
|
31
|
-
import "../../chunk-
|
|
28
|
+
import "../../chunk-PEHTX3V7.js";
|
|
29
|
+
import "../../chunk-UNJPZGNK.js";
|
|
30
|
+
import "../../chunk-DNJ23AWQ.js";
|
|
31
|
+
import "../../chunk-OB3YGXHQ.js";
|
|
32
|
+
import "../../chunk-MK54JLE4.js";
|
|
32
33
|
import "../../chunk-4NHJ6EXL.js";
|
|
33
34
|
import "../../chunk-TXS65BB2.js";
|
|
34
|
-
import "../../chunk-
|
|
35
|
+
import "../../chunk-F2YABPRJ.js";
|
|
35
36
|
export {
|
|
36
37
|
addsConnectorOutsideDefaults,
|
|
37
38
|
changedConnectorExclusions,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { BillingSummary } from "../types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Short, readable list of models: "GPT-6 Sol, GPT-6 Luna and 3 more". Labels
|
|
4
|
+
* come from the caller (catalog rows) or the shared display-name table.
|
|
5
|
+
*/
|
|
6
|
+
export declare function modelListSummary(labels: readonly string[], { limit }?: {
|
|
7
|
+
limit?: number;
|
|
8
|
+
}): string;
|
|
9
|
+
/** The models a scoped credit grant pays for, by display name. */
|
|
10
|
+
export declare function coveredModelsSummary(eligibleModelIds: readonly string[]): string;
|
|
11
|
+
/**
|
|
12
|
+
* Splits a balance into credit any credits-billed model can spend and credit
|
|
13
|
+
* only some models can spend. The total alone overstates what an uncovered
|
|
14
|
+
* model can use, so compact rows show both parts. Null without scoped credit.
|
|
15
|
+
*/
|
|
16
|
+
export declare function creditBalanceSplit(balance: BillingSummary["balance"]): {
|
|
17
|
+
generalMicros: number;
|
|
18
|
+
scopedMicros: number;
|
|
19
|
+
} | null;
|
|
20
|
+
/** "$0.00 for any model · $100.00 for selected models", or null without scoped credit. */
|
|
21
|
+
export declare function creditBalanceSplitLabel(balance: BillingSummary["balance"]): string | null;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
coveredModelsSummary,
|
|
4
|
+
creditBalanceSplit,
|
|
5
|
+
creditBalanceSplitLabel,
|
|
6
|
+
modelListSummary
|
|
7
|
+
} from "../../chunk-SWCLN6JE.js";
|
|
8
|
+
import "../../chunk-5TLEWXAB.js";
|
|
9
|
+
export {
|
|
10
|
+
coveredModelsSummary,
|
|
11
|
+
creditBalanceSplit,
|
|
12
|
+
creditBalanceSplitLabel,
|
|
13
|
+
modelListSummary
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=credit-coverage.js.map
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
import {
|
|
3
3
|
connectableSubscriptions,
|
|
4
4
|
isDeploymentFreeModel
|
|
5
|
-
} from "../../chunk-
|
|
5
|
+
} from "../../chunk-BDFMNJZJ.js";
|
|
6
6
|
import "../../chunk-PYSONAMV.js";
|
|
7
|
-
import "../../chunk-
|
|
7
|
+
import "../../chunk-CFEFYPNR.js";
|
|
8
8
|
export {
|
|
9
9
|
connectableSubscriptions,
|
|
10
10
|
isDeploymentFreeModel
|
package/dist/app/lib/events.js
CHANGED
|
@@ -8,35 +8,36 @@ import {
|
|
|
8
8
|
reasoningSummaryText,
|
|
9
9
|
sandboxProvisionInFlight,
|
|
10
10
|
summarizeSessionFailure
|
|
11
|
-
} from "../../chunk-
|
|
11
|
+
} from "../../chunk-5X3E2Z3D.js";
|
|
12
12
|
import "../../chunk-IIFO2H3P.js";
|
|
13
|
-
import "../../chunk-
|
|
13
|
+
import "../../chunk-MAOCN7J6.js";
|
|
14
14
|
import "../../chunk-A3KMTJZS.js";
|
|
15
|
-
import "../../chunk-
|
|
15
|
+
import "../../chunk-5FBZDEHE.js";
|
|
16
16
|
import "../../chunk-B27E3V37.js";
|
|
17
|
-
import "../../chunk-
|
|
18
|
-
import "../../chunk-
|
|
19
|
-
import "../../chunk-OS3EQOIS.js";
|
|
20
|
-
import "../../chunk-EG7KNUF7.js";
|
|
17
|
+
import "../../chunk-BCUYWOQU.js";
|
|
18
|
+
import "../../chunk-HYTXTKST.js";
|
|
21
19
|
import "../../chunk-OYQQJL3J.js";
|
|
22
|
-
import "../../chunk-
|
|
20
|
+
import "../../chunk-H3LIIAGE.js";
|
|
23
21
|
import "../../chunk-VHB3E6PT.js";
|
|
24
|
-
import "../../chunk-RZLBICR5.js";
|
|
25
22
|
import "../../chunk-YSRBFJMQ.js";
|
|
26
|
-
import "../../chunk-
|
|
23
|
+
import "../../chunk-RZLBICR5.js";
|
|
24
|
+
import "../../chunk-NRXIECWC.js";
|
|
25
|
+
import "../../chunk-J3BHDXQQ.js";
|
|
26
|
+
import "../../chunk-XEA5BCMA.js";
|
|
27
|
+
import "../../chunk-UD2PSIIX.js";
|
|
28
|
+
import "../../chunk-T4F5TW2X.js";
|
|
29
|
+
import "../../chunk-PEHTX3V7.js";
|
|
30
|
+
import "../../chunk-UNJPZGNK.js";
|
|
31
|
+
import "../../chunk-UBIJBLUK.js";
|
|
27
32
|
import "../../chunk-HEVQKE27.js";
|
|
28
33
|
import "../../chunk-ANHUMDJX.js";
|
|
29
|
-
import "../../chunk-STUCI6QA.js";
|
|
30
34
|
import "../../chunk-DNJ23AWQ.js";
|
|
31
|
-
import "../../chunk-
|
|
32
|
-
import "../../chunk-
|
|
33
|
-
import "../../chunk-
|
|
34
|
-
import "../../chunk-J3BHDXQQ.js";
|
|
35
|
-
import "../../chunk-XEA5BCMA.js";
|
|
36
|
-
import "../../chunk-UYSZKDQY.js";
|
|
35
|
+
import "../../chunk-OB3YGXHQ.js";
|
|
36
|
+
import "../../chunk-STUCI6QA.js";
|
|
37
|
+
import "../../chunk-MK54JLE4.js";
|
|
37
38
|
import "../../chunk-4NHJ6EXL.js";
|
|
38
39
|
import "../../chunk-TXS65BB2.js";
|
|
39
|
-
import "../../chunk-
|
|
40
|
+
import "../../chunk-F2YABPRJ.js";
|
|
40
41
|
export {
|
|
41
42
|
eventDisplayLabel,
|
|
42
43
|
eventLabel,
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
import {
|
|
3
3
|
classifyProviderFailure,
|
|
4
4
|
failedSessionCopy
|
|
5
|
-
} from "../../chunk-
|
|
6
|
-
import "../../chunk-
|
|
5
|
+
} from "../../chunk-PE3BLBDT.js";
|
|
6
|
+
import "../../chunk-ILBSBZGC.js";
|
|
7
7
|
import "../../chunk-PYSONAMV.js";
|
|
8
|
-
import "../../chunk-
|
|
8
|
+
import "../../chunk-MAOCN7J6.js";
|
|
9
9
|
import "../../chunk-A3KMTJZS.js";
|
|
10
|
-
import "../../chunk-
|
|
10
|
+
import "../../chunk-CFEFYPNR.js";
|
|
11
11
|
import "../../chunk-4NHJ6EXL.js";
|
|
12
|
-
import "../../chunk-
|
|
12
|
+
import "../../chunk-F2YABPRJ.js";
|
|
13
13
|
export {
|
|
14
14
|
classifyProviderFailure,
|
|
15
15
|
failedSessionCopy
|
|
@@ -23,6 +23,15 @@ export declare function freeCreditGap(rows: PickerModelRow[], model: string, opt
|
|
|
23
23
|
selectedModel?: string | null | undefined;
|
|
24
24
|
preferredModel?: string | null | undefined;
|
|
25
25
|
}): FreeCreditGap | null;
|
|
26
|
+
/**
|
|
27
|
+
* The API refused a Send or a new chat because no credit pays for its model.
|
|
28
|
+
* The refusal is authoritative even while the catalog still reports older
|
|
29
|
+
* funding, so the gap is named whether or not other models are covered.
|
|
30
|
+
*/
|
|
31
|
+
export declare function creditRefusalGap(rows: PickerModelRow[], model: string, options?: {
|
|
32
|
+
selectedModel?: string | null | undefined;
|
|
33
|
+
preferredModel?: string | null | undefined;
|
|
34
|
+
}): FreeCreditGap;
|
|
26
35
|
/** Headline for a credit stop that free credits could avoid on another model. */
|
|
27
36
|
export declare function freeCreditGapReason(gap: FreeCreditGap): string;
|
|
28
37
|
/**
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
coveredModelChoice,
|
|
4
|
+
creditRefusalGap,
|
|
4
5
|
freeCreditGap,
|
|
5
6
|
freeCreditGapReason
|
|
6
|
-
} from "../../chunk-
|
|
7
|
+
} from "../../chunk-ILBSBZGC.js";
|
|
7
8
|
import "../../chunk-PYSONAMV.js";
|
|
8
|
-
import "../../chunk-
|
|
9
|
+
import "../../chunk-CFEFYPNR.js";
|
|
9
10
|
export {
|
|
10
11
|
coveredModelChoice,
|
|
12
|
+
creditRefusalGap,
|
|
11
13
|
freeCreditGap,
|
|
12
14
|
freeCreditGapReason
|
|
13
15
|
};
|
|
@@ -5,7 +5,7 @@ type ModelClass = (typeof PRODUCT_LIFECYCLE_FACT_ATTRIBUTES)["model.connected"][
|
|
|
5
5
|
/** The `connection.created` provider classes (a test keeps them identical). */
|
|
6
6
|
export declare const INTEGRATION_CONNECTION_CLASSES: readonly ["slack", "github", "gitlab", "azure_devops", "bitbucket", "google", "microsoft", "linear", "atlassian", "notion", "supabase", "datadog", "posthog", "openai", "x", "other"];
|
|
7
7
|
/** The `model.connected` provider classes (a test keeps them identical). */
|
|
8
|
-
export declare const MODEL_CONNECTION_CLASSES: readonly ["codex", "supergrok", "vercel_gateway", "openrouter", "anthropic", "claude_subscription", "opper", "elevenlabs"];
|
|
8
|
+
export declare const MODEL_CONNECTION_CLASSES: readonly ["codex", "supergrok", "vercel_gateway", "openrouter", "anthropic", "claude_subscription", "opper", "elevenlabs", "openai", "azure_openai"];
|
|
9
9
|
export type IntegrationClass = ConnectionClass | ModelClass;
|
|
10
10
|
export declare const INTEGRATION_CONNECT_METHODS: readonly ["oauth", "api_key", "device_code", "app_install", "custom"];
|
|
11
11
|
export type IntegrationConnectMethod = (typeof INTEGRATION_CONNECT_METHODS)[number];
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
integrationConnectReturnOutcome,
|
|
15
15
|
modelConnectionClass,
|
|
16
16
|
useIntegrationConnectJourney
|
|
17
|
-
} from "../../chunk-
|
|
17
|
+
} from "../../chunk-46I7MMAL.js";
|
|
18
18
|
import "../../chunk-NRREC7JK.js";
|
|
19
19
|
import "../../chunk-55S3W7RZ.js";
|
|
20
20
|
export {
|
|
@@ -8,11 +8,11 @@ import {
|
|
|
8
8
|
creditsModelForCheckout,
|
|
9
9
|
includedDefaultModel,
|
|
10
10
|
preferredConnectedModelId
|
|
11
|
-
} from "../../chunk-
|
|
12
|
-
import "../../chunk-
|
|
11
|
+
} from "../../chunk-PWBGODZU.js";
|
|
12
|
+
import "../../chunk-MAOCN7J6.js";
|
|
13
13
|
import "../../chunk-A3KMTJZS.js";
|
|
14
|
-
import "../../chunk-
|
|
15
|
-
import "../../chunk-
|
|
14
|
+
import "../../chunk-CFEFYPNR.js";
|
|
15
|
+
import "../../chunk-F2YABPRJ.js";
|
|
16
16
|
export {
|
|
17
17
|
applyConnectedModelToNewSessionDraft,
|
|
18
18
|
composerFallbackModel,
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
export type ModelsProvider = "codex" | "supergrok" | "vercel" | "openrouter" | "opper" | "anthropic" | "claude_subscription";
|
|
1
|
+
export type ModelsProvider = "codex" | "supergrok" | "vercel" | "openrouter" | "opper" | "openai" | "azure_openai" | "anthropic" | "claude_subscription";
|
|
2
2
|
export type ModelsView = "connect" | "connect-workspace" | `connect:${ModelsProvider}` | `connect-org:${ModelsProvider}` | "allowed-models" | "compaction" | "account-rule-locks" | "model-access";
|
|
3
3
|
export declare function parseModelsView(value: unknown): ModelsView | undefined;
|
|
4
4
|
export declare function parseModelsAccount(value: unknown): string | undefined;
|
|
5
|
-
export type GatewayId = "vercel" | "openrouter" | "opper" | "anthropic" | "claude_subscription"
|
|
5
|
+
export type GatewayId = "vercel" | "openrouter" | "opper" | "anthropic" | "claude_subscription"
|
|
6
|
+
/** Organization only; workspace pages never address these. */
|
|
7
|
+
| "openai" | "azure_openai";
|
|
8
|
+
/** The API-key providers a workspace can hold as its own. */
|
|
9
|
+
export type WorkspaceGatewayId = Exclude<GatewayId, "openai" | "azure_openai">;
|
|
6
10
|
export type AccountKey = ({
|
|
7
11
|
provider: "codex" | "supergrok" | "claude";
|
|
8
12
|
id: string;
|
|
@@ -10,11 +10,14 @@ var PROVIDERS = [
|
|
|
10
10
|
"anthropic",
|
|
11
11
|
"claude_subscription"
|
|
12
12
|
];
|
|
13
|
+
var ORGANIZATION_ONLY_PROVIDERS = ["openai", "azure_openai"];
|
|
13
14
|
var VIEWS = /* @__PURE__ */ new Set([
|
|
14
15
|
"connect",
|
|
15
16
|
"connect-workspace",
|
|
16
17
|
...PROVIDERS.map((provider) => `connect:${provider}`),
|
|
17
|
-
...PROVIDERS.map(
|
|
18
|
+
...[...PROVIDERS, ...ORGANIZATION_ONLY_PROVIDERS].map(
|
|
19
|
+
(provider) => `connect-org:${provider}`
|
|
20
|
+
),
|
|
18
21
|
"allowed-models",
|
|
19
22
|
"compaction",
|
|
20
23
|
"account-rule-locks",
|
|
@@ -23,7 +26,7 @@ var VIEWS = /* @__PURE__ */ new Set([
|
|
|
23
26
|
function parseModelsView(value) {
|
|
24
27
|
return typeof value === "string" && VIEWS.has(value) ? value : void 0;
|
|
25
28
|
}
|
|
26
|
-
var ACCOUNT_KEY = /^(org:)?((codex|supergrok|claude):[\w-]{1,128}|gateway:(vercel|openrouter|opper|anthropic|claude_subscription))$/;
|
|
29
|
+
var ACCOUNT_KEY = /^((org:)?((codex|supergrok|claude):[\w-]{1,128}|gateway:(vercel|openrouter|opper|anthropic|claude_subscription))|org:gateway:(openai|azure_openai))$/;
|
|
27
30
|
function parseModelsAccount(value) {
|
|
28
31
|
return typeof value === "string" && ACCOUNT_KEY.test(value) ? value : void 0;
|
|
29
32
|
}
|
|
@@ -35,7 +38,7 @@ function accountKeyOf(value) {
|
|
|
35
38
|
if ((provider === "codex" || provider === "supergrok" || provider === "claude") && id) {
|
|
36
39
|
return { provider, id, organization };
|
|
37
40
|
}
|
|
38
|
-
if (provider === "gateway" && (id === "vercel" || id === "openrouter" || id === "opper" || id === "anthropic" || id === "claude_subscription")) {
|
|
41
|
+
if (provider === "gateway" && (id === "vercel" || id === "openrouter" || id === "opper" || id === "anthropic" || id === "claude_subscription" || (id === "openai" || id === "azure_openai") && organization)) {
|
|
39
42
|
return { provider, id, organization };
|
|
40
43
|
}
|
|
41
44
|
return null;
|