@kortix/ui 0.0.0-stage → 0.14.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +347 -2
- package/dist/_vendor/kortix-shared.js +10838 -0
- package/dist/_vendor/shared/channel-header.d.ts +12 -0
- package/dist/_vendor/shared/channel-message.d.ts +38 -0
- package/dist/_vendor/shared/chat-mention.d.ts +6 -0
- package/dist/_vendor/shared/code-language.d.ts +25 -0
- package/dist/_vendor/shared/connector-sections.d.ts +180 -0
- package/dist/_vendor/shared/constants/auto-topup.d.ts +13 -0
- package/dist/_vendor/shared/constants/upload-limits.d.ts +23 -0
- package/dist/_vendor/shared/file-tags.d.ts +28 -0
- package/dist/_vendor/shared/index.d.ts +28 -0
- package/dist/_vendor/shared/markdown-math.d.ts +46 -0
- package/dist/_vendor/shared/meta-agent.d.ts +7 -0
- package/dist/_vendor/shared/pasted-content.d.ts +38 -0
- package/dist/_vendor/shared/project-glyphs.d.ts +93 -0
- package/dist/_vendor/shared/prompt-attachments.d.ts +20 -0
- package/dist/_vendor/shared/reminder-prompt.d.ts +21 -0
- package/dist/_vendor/shared/room-prompt.d.ts +66 -0
- package/dist/_vendor/shared/runtime-versions.d.ts +57 -0
- package/dist/_vendor/shared/session-attachments.d.ts +8 -0
- package/dist/_vendor/shared/slack-text.d.ts +21 -0
- package/dist/_vendor/shared/tag-blocks.d.ts +118 -0
- package/dist/_vendor/shared/tool-output/background-workers.d.ts +11 -0
- package/dist/_vendor/shared/tool-output/diagnostics.d.ts +25 -0
- package/dist/_vendor/shared/tool-output/index.d.ts +25 -0
- package/dist/_vendor/shared/tool-output/markdown-detect.d.ts +18 -0
- package/dist/_vendor/shared/tool-output/media-path.d.ts +15 -0
- package/dist/_vendor/shared/tool-output/memory-entry.d.ts +55 -0
- package/dist/_vendor/shared/tool-output/memory-search.d.ts +41 -0
- package/dist/_vendor/shared/tool-output/projects.d.ts +81 -0
- package/dist/_vendor/shared/tool-output/scan.d.ts +39 -0
- package/dist/_vendor/shared/tool-output/session-dump.d.ts +62 -0
- package/dist/_vendor/shared/tool-output/session-get.d.ts +47 -0
- package/dist/_vendor/shared/tool-output/session-search.d.ts +15 -0
- package/dist/_vendor/shared/tool-output/skill.d.ts +6 -0
- package/dist/_vendor/shared/tool-output/tags.d.ts +19 -0
- package/dist/_vendor/shared/tool-output/triggers.d.ts +22 -0
- package/dist/_vendor/shared/tools/html-text.d.ts +12 -0
- package/dist/_vendor/shared/tools/index.d.ts +6 -0
- package/dist/_vendor/shared/tools/safe-url.d.ts +9 -0
- package/dist/_vendor/shared/tools/tool-registry-lookup.d.ts +2 -0
- package/dist/_vendor/shared/trigger-event.d.ts +21 -0
- package/dist/_vendor/shared/utils/ambiguous-write.d.ts +32 -0
- package/dist/_vendor/shared/utils/chalk-colors.d.ts +15 -0
- package/dist/_vendor/shared/utils/configure-prompts.d.ts +11 -0
- package/dist/_vendor/shared/utils/credit-formatter.d.ts +53 -0
- package/dist/_vendor/shared/utils/format-relative.d.ts +27 -0
- package/dist/_vendor/shared/utils/index.d.ts +12 -0
- package/dist/_vendor/shared/utils/json.d.ts +24 -0
- package/dist/_vendor/shared/utils/string.d.ts +18 -0
- package/dist/_vendor/shared/utils/unicode.d.ts +41 -0
- package/dist/_vendor/shared/utils/url-autolink.d.ts +48 -0
- package/dist/_vendor/shared/webhook-signing.d.ts +14 -0
- package/dist/access/access/access-detail-shell.d.ts +34 -0
- package/dist/access/access/access-detail-shell.js +22 -0
- package/dist/access/access/access-dialog-share.d.ts +54 -0
- package/dist/access/access/access-dialog-share.js +206 -0
- package/dist/access/access/access-dialog.d.ts +207 -0
- package/dist/access/access/access-dialog.js +982 -0
- package/dist/access/access/access-row.d.ts +106 -0
- package/dist/access/access/access-row.js +79 -0
- package/dist/access/access/access-shared.d.ts +86 -0
- package/dist/access/access/access-shared.js +143 -0
- package/dist/access/access/account-role-editor.d.ts +52 -0
- package/dist/access/access/account-role-editor.js +63 -0
- package/dist/access/access/agent-principals.d.ts +97 -0
- package/dist/access/access/agent-principals.js +210 -0
- package/dist/access/access/copy-row.d.ts +19 -0
- package/dist/access/access/copy-row.js +41 -0
- package/dist/access/access/index.d.ts +9 -0
- package/dist/access/access/index.js +16 -0
- package/dist/access/access/principal-picker.d.ts +90 -0
- package/dist/access/access/principal-picker.js +271 -0
- package/dist/access/access/project-select.d.ts +41 -0
- package/dist/access/access/project-select.js +59 -0
- package/dist/access/access/role-select.d.ts +108 -0
- package/dist/access/access/role-select.js +199 -0
- package/dist/access/iam/add-github-account-dialog.d.ts +33 -0
- package/dist/access/iam/add-github-account-dialog.js +51 -0
- package/dist/access/iam/api-key-expiry.d.ts +53 -0
- package/dist/access/iam/api-key-expiry.js +68 -0
- package/dist/access/iam/api-key-rows.d.ts +161 -0
- package/dist/access/iam/api-key-rows.js +178 -0
- package/dist/access/iam/managed-git-notice.d.ts +2 -0
- package/dist/access/iam/managed-git-notice.js +44 -0
- package/dist/access/iam/session-oversight-card.d.ts +4 -0
- package/dist/access/iam/session-oversight-card.js +52 -0
- package/dist/access/index.d.ts +7 -0
- package/dist/access/index.js +7 -0
- package/dist/access/sandbox-template-menu.d.ts +41 -0
- package/dist/access/sandbox-template-menu.js +69 -0
- package/dist/access/sharing-intent.d.ts +31 -0
- package/dist/access/sharing-intent.js +28 -0
- package/dist/access/sharing-picker.d.ts +55 -0
- package/dist/access/sharing-picker.js +61 -0
- package/dist/animated-copy-icon.d.ts +5 -0
- package/dist/animated-copy-icon.js +6 -0
- package/dist/apps/app-preview-pool.d.ts +31 -0
- package/dist/apps/app-preview-pool.js +157 -0
- package/dist/apps/app-preview.d.ts +128 -0
- package/dist/apps/app-preview.js +258 -0
- package/dist/apps/app-shared.d.ts +154 -0
- package/dist/apps/app-shared.js +213 -0
- package/dist/apps/index.d.ts +7 -0
- package/dist/apps/index.js +7 -0
- package/dist/apps/kortix-app-url.d.ts +7 -0
- package/dist/apps/kortix-app-url.js +20 -0
- package/dist/browser/app-in-browser.d.ts +20 -0
- package/dist/browser/app-in-browser.js +79 -0
- package/dist/browser/browser-landing.d.ts +32 -0
- package/dist/browser/browser-landing.js +103 -0
- package/dist/browser/browser-panel.d.ts +15 -0
- package/dist/browser/browser-panel.js +317 -0
- package/dist/browser/index.d.ts +5 -0
- package/dist/browser/index.js +5 -0
- package/dist/browser/sandbox-browser-chrome.d.ts +69 -0
- package/dist/browser/sandbox-browser-chrome.js +149 -0
- package/dist/changes/change-list.d.ts +50 -0
- package/dist/changes/change-list.js +129 -0
- package/dist/changes/change-vocabulary.d.ts +154 -0
- package/dist/changes/change-vocabulary.js +289 -0
- package/dist/changes/index.d.ts +2 -0
- package/dist/changes/index.js +2 -0
- package/dist/customize/agents/agent-apps-grant.d.ts +19 -0
- package/dist/customize/agents/agent-apps-grant.js +23 -0
- package/dist/customize/agents/agent-authority-card.d.ts +8 -0
- package/dist/customize/agents/agent-authority-card.js +46 -0
- package/dist/customize/agents/agent-detail-aside.d.ts +81 -0
- package/dist/customize/agents/agent-detail-aside.js +249 -0
- package/dist/customize/agents/agent-drives-section.d.ts +11 -0
- package/dist/customize/agents/agent-drives-section.js +67 -0
- package/dist/customize/agents/agent-filter.d.ts +27 -0
- package/dist/customize/agents/agent-filter.js +32 -0
- package/dist/customize/agents/agent-grant-pages.d.ts +33 -0
- package/dist/customize/agents/agent-grant-pages.js +203 -0
- package/dist/customize/agents/agent-page.d.ts +4 -0
- package/dist/customize/agents/agent-page.js +453 -0
- package/dist/customize/agents/agent-people-section.d.ts +8 -0
- package/dist/customize/agents/agent-people-section.js +152 -0
- package/dist/customize/agents/agent-share-control.d.ts +6 -0
- package/dist/customize/agents/agent-share-control.js +63 -0
- package/dist/customize/agents/agent-status.d.ts +7 -0
- package/dist/customize/agents/agent-status.js +9 -0
- package/dist/customize/agents/agent-triggers-section.d.ts +17 -0
- package/dist/customize/agents/agent-triggers-section.js +107 -0
- package/dist/customize/agents/agents-page.d.ts +24 -0
- package/dist/customize/agents/agents-page.js +214 -0
- package/dist/customize/agents/use-agent-grants.d.ts +1 -0
- package/dist/customize/agents/use-agent-grants.js +13 -0
- package/dist/customize/agents/use-default-agent.d.ts +1 -0
- package/dist/customize/agents/use-default-agent.js +19 -0
- package/dist/customize/connectors/add-mcp/add-mcp-server-deps.d.ts +3 -0
- package/dist/customize/connectors/add-mcp/add-mcp-server-deps.js +25 -0
- package/dist/customize/connectors/add-mcp/add-mcp-server-dialog.d.ts +20 -0
- package/dist/customize/connectors/add-mcp/add-mcp-server-dialog.js +114 -0
- package/dist/customize/connectors/add-mcp/add-mcp-server.d.ts +77 -0
- package/dist/customize/connectors/add-mcp/add-mcp-server.js +97 -0
- package/dist/customize/connectors/catalog/browse-sections.d.ts +62 -0
- package/dist/customize/connectors/catalog/browse-sections.js +119 -0
- package/dist/customize/connectors/catalog/catalog-entry.d.ts +111 -0
- package/dist/customize/connectors/catalog/catalog-entry.js +172 -0
- package/dist/customize/connectors/catalog/catalog-foot.d.ts +24 -0
- package/dist/customize/connectors/catalog/catalog-foot.js +39 -0
- package/dist/customize/connectors/catalog/catalog-paging.d.ts +34 -0
- package/dist/customize/connectors/catalog/catalog-paging.js +33 -0
- package/dist/customize/connectors/catalog/connector-browse.d.ts +34 -0
- package/dist/customize/connectors/catalog/connector-browse.js +151 -0
- package/dist/customize/connectors/catalog/connector-categories.d.ts +20 -0
- package/dist/customize/connectors/catalog/connector-categories.js +25 -0
- package/dist/customize/connectors/catalog/merge-search.d.ts +10 -0
- package/dist/customize/connectors/catalog/merge-search.js +26 -0
- package/dist/customize/connectors/catalog/use-catalog-autoload.d.ts +29 -0
- package/dist/customize/connectors/catalog/use-catalog-autoload.js +79 -0
- package/dist/customize/connectors/catalog/use-catalog.d.ts +161 -0
- package/dist/customize/connectors/catalog/use-catalog.js +336 -0
- package/dist/customize/connectors/connector-filter.d.ts +80 -0
- package/dist/customize/connectors/connector-filter.js +79 -0
- package/dist/customize/connectors/connector-identity.d.ts +35 -0
- package/dist/customize/connectors/connector-identity.js +67 -0
- package/dist/customize/connectors/connector-moves-banner.d.ts +4 -0
- package/dist/customize/connectors/connector-moves-banner.js +25 -0
- package/dist/customize/connectors/connector-routes.d.ts +40 -0
- package/dist/customize/connectors/connector-routes.js +74 -0
- package/dist/customize/connectors/connectors-app-return-bar.d.ts +18 -0
- package/dist/customize/connectors/connectors-app-return-bar.js +56 -0
- package/dist/customize/connectors/connectors-page.d.ts +40 -0
- package/dist/customize/connectors/connectors-page.js +412 -0
- package/dist/customize/connectors/detail/account-info.d.ts +5 -0
- package/dist/customize/connectors/detail/account-info.js +24 -0
- package/dist/customize/connectors/detail/app-page.d.ts +4 -0
- package/dist/customize/connectors/detail/app-page.js +263 -0
- package/dist/customize/connectors/detail/connector-accounts.d.ts +51 -0
- package/dist/customize/connectors/detail/connector-accounts.js +42 -0
- package/dist/customize/connectors/detail/connector-advanced-tools.d.ts +13 -0
- package/dist/customize/connectors/detail/connector-advanced-tools.js +75 -0
- package/dist/customize/connectors/detail/connector-detail-tabs.d.ts +10 -0
- package/dist/customize/connectors/detail/connector-detail-tabs.js +18 -0
- package/dist/customize/connectors/detail/connector-header-cta.d.ts +23 -0
- package/dist/customize/connectors/detail/connector-header-cta.js +9 -0
- package/dist/customize/connectors/detail/connector-modal.d.ts +32 -0
- package/dist/customize/connectors/detail/connector-modal.js +117 -0
- package/dist/customize/connectors/detail/connector-move-row.d.ts +17 -0
- package/dist/customize/connectors/detail/connector-move-row.js +73 -0
- package/dist/customize/connectors/detail/connector-notice-view.d.ts +22 -0
- package/dist/customize/connectors/detail/connector-notice-view.js +22 -0
- package/dist/customize/connectors/detail/connector-notice.d.ts +76 -0
- package/dist/customize/connectors/detail/connector-notice.js +79 -0
- package/dist/customize/connectors/detail/connector-page-state.d.ts +57 -0
- package/dist/customize/connectors/detail/connector-page-state.js +51 -0
- package/dist/customize/connectors/detail/connector-page.d.ts +19 -0
- package/dist/customize/connectors/detail/connector-page.js +343 -0
- package/dist/customize/connectors/detail/connector-settings.d.ts +36 -0
- package/dist/customize/connectors/detail/connector-settings.js +81 -0
- package/dist/customize/connectors/detail/connector-status.d.ts +20 -0
- package/dist/customize/connectors/detail/connector-status.js +42 -0
- package/dist/customize/connectors/detail/connector-tabs.d.ts +29 -0
- package/dist/customize/connectors/detail/connector-tabs.js +39 -0
- package/dist/customize/connectors/detail/connector-tools.d.ts +37 -0
- package/dist/customize/connectors/detail/connector-tools.js +224 -0
- package/dist/customize/connectors/detail/connector-triggers.d.ts +24 -0
- package/dist/customize/connectors/detail/connector-triggers.js +57 -0
- package/dist/customize/connectors/detail/detail-page-shell.d.ts +6 -0
- package/dist/customize/connectors/detail/detail-page-shell.js +5 -0
- package/dist/customize/connectors/detail/find-easy-connect-app.d.ts +29 -0
- package/dist/customize/connectors/detail/find-easy-connect-app.js +22 -0
- package/dist/customize/connectors/detail/provider-info.d.ts +14 -0
- package/dist/customize/connectors/detail/provider-info.js +32 -0
- package/dist/customize/connectors/detail/status-badge.d.ts +5 -0
- package/dist/customize/connectors/detail/status-badge.js +16 -0
- package/dist/customize/connectors/detail/use-connector-detail.d.ts +37 -0
- package/dist/customize/connectors/detail/use-connector-detail.js +134 -0
- package/dist/customize/connectors/install/install-menu.d.ts +19 -0
- package/dist/customize/connectors/install/install-menu.js +14 -0
- package/dist/customize/connectors/install/install.d.ts +71 -0
- package/dist/customize/connectors/install/install.js +97 -0
- package/dist/customize/connectors/install/mcp-first.d.ts +15 -0
- package/dist/customize/connectors/install/mcp-first.js +17 -0
- package/dist/customize/connectors/install/pick-surface.d.ts +22 -0
- package/dist/customize/connectors/install/pick-surface.js +32 -0
- package/dist/customize/connectors/install/use-install.d.ts +28 -0
- package/dist/customize/connectors/install/use-install.js +126 -0
- package/dist/customize/connectors/invalidate-connections.d.ts +2 -0
- package/dist/customize/connectors/invalidate-connections.js +4 -0
- package/dist/customize/connectors/provider-label.d.ts +20 -0
- package/dist/customize/connectors/provider-label.js +41 -0
- package/dist/customize/connectors/tools/pattern-rule-draft.d.ts +40 -0
- package/dist/customize/connectors/tools/pattern-rule-draft.js +43 -0
- package/dist/customize/connectors/tools/tool-groups.d.ts +46 -0
- package/dist/customize/connectors/tools/tool-groups.js +55 -0
- package/dist/customize/connectors/tools/tool-policy-control.d.ts +30 -0
- package/dist/customize/connectors/tools/tool-policy-control.js +47 -0
- package/dist/customize/connectors/tools/tool-policy-labels.d.ts +30 -0
- package/dist/customize/connectors/tools/tool-policy-labels.js +42 -0
- package/dist/customize/connectors/tools/tool-policy.d.ts +83 -0
- package/dist/customize/connectors/tools/tool-policy.js +116 -0
- package/dist/customize/index.d.ts +13 -0
- package/dist/customize/index.js +13 -0
- package/dist/customize/migrate-to-v2/index.d.ts +6 -0
- package/dist/customize/migrate-to-v2/index.js +6 -0
- package/dist/customize/migrate-to-v2/migration-prompt.d.ts +28 -0
- package/dist/customize/migrate-to-v2/migration-prompt.js +260 -0
- package/dist/customize/migrate-to-v2/upgrade-defs.d.ts +30 -0
- package/dist/customize/migrate-to-v2/upgrade-defs.js +42 -0
- package/dist/customize/migrate-to-v2/upgrade-view.d.ts +32 -0
- package/dist/customize/migrate-to-v2/upgrade-view.js +152 -0
- package/dist/customize/migrate-to-v2/use-migrate-to-v2.d.ts +9 -0
- package/dist/customize/migrate-to-v2/use-migrate-to-v2.js +24 -0
- package/dist/customize/migrate-to-v2/use-run-upgrade.d.ts +18 -0
- package/dist/customize/migrate-to-v2/use-run-upgrade.js +16 -0
- package/dist/customize/models/app-return-bar.d.ts +20 -0
- package/dist/customize/models/app-return-bar.js +42 -0
- package/dist/customize/models/app-return.d.ts +8 -0
- package/dist/customize/models/app-return.js +11 -0
- package/dist/customize/models/models-page.d.ts +28 -0
- package/dist/customize/models/models-page.js +35 -0
- package/dist/customize/project-settings/project-settings-page.d.ts +106 -0
- package/dist/customize/project-settings/project-settings-page.js +286 -0
- package/dist/customize/project-settings/project-settings-sections.d.ts +84 -0
- package/dist/customize/project-settings/project-settings-sections.js +99 -0
- package/dist/customize/providers/provider-accordion.d.ts +54 -0
- package/dist/customize/providers/provider-accordion.js +296 -0
- package/dist/customize/providers/provider-connect.d.ts +106 -0
- package/dist/customize/providers/provider-connect.js +277 -0
- package/dist/customize/providers/provider-sheet.d.ts +88 -0
- package/dist/customize/providers/provider-sheet.js +301 -0
- package/dist/customize/secrets/secrets-page.d.ts +29 -0
- package/dist/customize/secrets/secrets-page.js +35 -0
- package/dist/customize/sections/add-account-fields.d.ts +39 -0
- package/dist/customize/sections/add-account-fields.js +39 -0
- package/dist/customize/sections/component/byo-wizard-modal.d.ts +13 -0
- package/dist/customize/sections/component/byo-wizard-modal.js +18 -0
- package/dist/customize/sections/component/channel-connect-hero.d.ts +27 -0
- package/dist/customize/sections/component/channel-connect-hero.js +19 -0
- package/dist/customize/sections/component/channel-row.d.ts +29 -0
- package/dist/customize/sections/component/channel-row.js +62 -0
- package/dist/customize/sections/component/config-entity-source-path.d.ts +1 -0
- package/dist/customize/sections/component/config-entity-source-path.js +3 -0
- package/dist/customize/sections/component/manifest-copy-block.d.ts +12 -0
- package/dist/customize/sections/component/manifest-copy-block.js +81 -0
- package/dist/customize/sections/component/section-wrapper.d.ts +32 -0
- package/dist/customize/sections/component/section-wrapper.js +52 -0
- package/dist/customize/sections/component/slack-byo-wizard.d.ts +5 -0
- package/dist/customize/sections/component/slack-byo-wizard.js +120 -0
- package/dist/customize/sections/component/slack-connect-card.d.ts +5 -0
- package/dist/customize/sections/component/slack-connect-card.js +54 -0
- package/dist/customize/sections/component/teams-byo-wizard.d.ts +7 -0
- package/dist/customize/sections/component/teams-byo-wizard.js +155 -0
- package/dist/customize/sections/component/teams-connect-card.d.ts +6 -0
- package/dist/customize/sections/component/teams-connect-card.js +49 -0
- package/dist/customize/sections/component/telegram-channel-row.d.ts +6 -0
- package/dist/customize/sections/component/telegram-channel-row.js +77 -0
- package/dist/customize/sections/connector-connection-form.d.ts +56 -0
- package/dist/customize/sections/connector-connection-form.js +148 -0
- package/dist/customize/sections/connector-connection-header.d.ts +36 -0
- package/dist/customize/sections/connector-connection-header.js +33 -0
- package/dist/customize/sections/connector-connection-modal.d.ts +34 -0
- package/dist/customize/sections/connector-connection-modal.js +70 -0
- package/dist/customize/sections/connector-credential-target.d.ts +29 -0
- package/dist/customize/sections/connector-credential-target.js +23 -0
- package/dist/customize/sections/connector-oauth2-application-fields.d.ts +6 -0
- package/dist/customize/sections/connector-oauth2-application-fields.js +14 -0
- package/dist/customize/sections/connector-oauth2-auto.d.ts +45 -0
- package/dist/customize/sections/connector-oauth2-auto.js +78 -0
- package/dist/customize/sections/connector-oauth2-fields.d.ts +7 -0
- package/dist/customize/sections/connector-oauth2-fields.js +14 -0
- package/dist/customize/sections/connector-oauth2-scope-fields.d.ts +7 -0
- package/dist/customize/sections/connector-oauth2-scope-fields.js +10 -0
- package/dist/customize/sections/connector-oauth2-start.d.ts +22 -0
- package/dist/customize/sections/connector-oauth2-start.js +40 -0
- package/dist/customize/sections/connector-oauth2.d.ts +50 -0
- package/dist/customize/sections/connector-oauth2.js +165 -0
- package/dist/customize/sections/connectors-view.d.ts +103 -0
- package/dist/customize/sections/connectors-view.js +1267 -0
- package/dist/customize/sections/discover-catalogue-card.d.ts +19 -0
- package/dist/customize/sections/discover-catalogue-card.js +26 -0
- package/dist/customize/sections/discover-catalogue-detail.d.ts +15 -0
- package/dist/customize/sections/discover-catalogue-detail.js +24 -0
- package/dist/customize/sections/discover-catalogue.d.ts +17 -0
- package/dist/customize/sections/discover-catalogue.js +132 -0
- package/dist/customize/sections/gateway-access-tab.d.ts +6 -0
- package/dist/customize/sections/gateway-access-tab.js +66 -0
- package/dist/customize/sections/gateway-view.d.ts +176 -0
- package/dist/customize/sections/gateway-view.js +244 -0
- package/dist/customize/sections/llm-provider/chatgpt-device-challenge.d.ts +6 -0
- package/dist/customize/sections/llm-provider/chatgpt-device-challenge.js +11 -0
- package/dist/customize/sections/llm-provider/chatgpt-subscription-connect.d.ts +66 -0
- package/dist/customize/sections/llm-provider/chatgpt-subscription-connect.js +163 -0
- package/dist/customize/sections/llm-provider/constants.d.ts +3 -0
- package/dist/customize/sections/llm-provider/constants.js +4 -0
- package/dist/customize/sections/llm-provider/custom-provider-form.d.ts +16 -0
- package/dist/customize/sections/llm-provider/custom-provider-form.js +114 -0
- package/dist/customize/sections/llm-provider/custom-provider-panel.d.ts +12 -0
- package/dist/customize/sections/llm-provider/custom-provider-panel.js +179 -0
- package/dist/customize/sections/llm-provider/device-grant.d.ts +15 -0
- package/dist/customize/sections/llm-provider/device-grant.js +53 -0
- package/dist/customize/sections/llm-provider/llm-provider-modal.d.ts +3 -0
- package/dist/customize/sections/llm-provider/llm-provider-modal.js +86 -0
- package/dist/customize/sections/llm-provider/model-capability-icons.d.ts +13 -0
- package/dist/customize/sections/llm-provider/model-capability-icons.js +23 -0
- package/dist/customize/sections/llm-provider/model-rows.d.ts +23 -0
- package/dist/customize/sections/llm-provider/model-rows.js +73 -0
- package/dist/customize/sections/llm-provider/models-tab-group.d.ts +6 -0
- package/dist/customize/sections/llm-provider/models-tab-group.js +36 -0
- package/dist/customize/sections/llm-provider/models-tab-row.d.ts +28 -0
- package/dist/customize/sections/llm-provider/models-tab-row.js +109 -0
- package/dist/customize/sections/llm-provider/models-tab.d.ts +13 -0
- package/dist/customize/sections/llm-provider/models-tab.js +94 -0
- package/dist/customize/sections/llm-provider/provider-access-menu.d.ts +10 -0
- package/dist/customize/sections/llm-provider/provider-access-menu.js +23 -0
- package/dist/customize/sections/llm-provider/provider-loading-state.d.ts +10 -0
- package/dist/customize/sections/llm-provider/provider-loading-state.js +3 -0
- package/dist/customize/sections/llm-provider/subscription-control.d.ts +42 -0
- package/dist/customize/sections/llm-provider/subscription-control.js +42 -0
- package/dist/customize/sections/llm-provider/types.d.ts +43 -0
- package/dist/customize/sections/llm-provider/types.js +1 -0
- package/dist/customize/sections/llm-provider/use-connected-providers.d.ts +6 -0
- package/dist/customize/sections/llm-provider/use-connected-providers.js +70 -0
- package/dist/customize/sections/llm-provider/use-live-catalog.d.ts +23 -0
- package/dist/customize/sections/llm-provider/use-live-catalog.js +44 -0
- package/dist/customize/sections/llm-provider/utils.d.ts +141 -0
- package/dist/customize/sections/llm-provider/utils.js +276 -0
- package/dist/customize/sections/models-page-sheet.d.ts +24 -0
- package/dist/customize/sections/models-page-sheet.js +34 -0
- package/dist/customize/sections/use-add-request.d.ts +11 -0
- package/dist/customize/sections/use-add-request.js +23 -0
- package/dist/customize/sections/use-create-custom-connector.d.ts +19 -0
- package/dist/customize/sections/use-create-custom-connector.js +36 -0
- package/dist/customize/sections/view/account-secret-resources-panel.d.ts +18 -0
- package/dist/customize/sections/view/account-secret-resources-panel.js +295 -0
- package/dist/customize/sections/view/agent-editor-access-fields.d.ts +63 -0
- package/dist/customize/sections/view/agent-editor-access-fields.js +129 -0
- package/dist/customize/sections/view/agent-editor-basics-fields.d.ts +37 -0
- package/dist/customize/sections/view/agent-editor-basics-fields.js +102 -0
- package/dist/customize/sections/view/agent-editor-catalog.d.ts +64 -0
- package/dist/customize/sections/view/agent-editor-catalog.js +234 -0
- package/dist/customize/sections/view/agent-editor-primitives.d.ts +73 -0
- package/dist/customize/sections/view/agent-editor-primitives.js +66 -0
- package/dist/customize/sections/view/agent-editor.d.ts +330 -0
- package/dist/customize/sections/view/agent-editor.js +358 -0
- package/dist/customize/sections/view/audience-badge.d.ts +18 -0
- package/dist/customize/sections/view/audience-badge.js +40 -0
- package/dist/customize/sections/view/channel-binding-tabs.d.ts +9 -0
- package/dist/customize/sections/view/channel-binding-tabs.js +14 -0
- package/dist/customize/sections/view/channel-settings-patch.d.ts +19 -0
- package/dist/customize/sections/view/channel-settings-patch.js +19 -0
- package/dist/customize/sections/view/channels-view.d.ts +3 -0
- package/dist/customize/sections/view/channels-view.js +611 -0
- package/dist/customize/sections/view/connector-connections.d.ts +87 -0
- package/dist/customize/sections/view/connector-connections.js +101 -0
- package/dist/customize/sections/view/connectors-personal.d.ts +13 -0
- package/dist/customize/sections/view/connectors-personal.js +22 -0
- package/dist/customize/sections/view/gateway/_metrics.d.ts +101 -0
- package/dist/customize/sections/view/gateway/_metrics.js +99 -0
- package/dist/customize/sections/view/gateway/_shared.d.ts +35 -0
- package/dist/customize/sections/view/gateway/_shared.js +50 -0
- package/dist/customize/sections/view/gateway/gateway-api-reference.d.ts +27 -0
- package/dist/customize/sections/view/gateway/gateway-api-reference.js +173 -0
- package/dist/customize/sections/view/gateway/gateway-budgets.d.ts +38 -0
- package/dist/customize/sections/view/gateway/gateway-budgets.js +270 -0
- package/dist/customize/sections/view/gateway/gateway-keys.d.ts +24 -0
- package/dist/customize/sections/view/gateway/gateway-keys.js +133 -0
- package/dist/customize/sections/view/gateway/gateway-logs.d.ts +111 -0
- package/dist/customize/sections/view/gateway/gateway-logs.js +500 -0
- package/dist/customize/sections/view/gateway/gateway-overview.d.ts +31 -0
- package/dist/customize/sections/view/gateway/gateway-overview.js +189 -0
- package/dist/customize/sections/view/gateway/gateway-routing.d.ts +30 -0
- package/dist/customize/sections/view/gateway/gateway-routing.js +500 -0
- package/dist/customize/sections/view/gateway/generation-controls.d.ts +22 -0
- package/dist/customize/sections/view/gateway/generation-controls.js +60 -0
- package/dist/customize/sections/view/git-view-helpers.d.ts +65 -0
- package/dist/customize/sections/view/git-view-helpers.js +81 -0
- package/dist/customize/sections/view/git-view.d.ts +38 -0
- package/dist/customize/sections/view/git-view.js +510 -0
- package/dist/customize/sections/view/grant-mode-field.d.ts +54 -0
- package/dist/customize/sections/view/grant-mode-field.js +97 -0
- package/dist/customize/sections/view/permission-editor.d.ts +13 -0
- package/dist/customize/sections/view/permission-editor.js +117 -0
- package/dist/customize/sections/view/review-center-connected.d.ts +3 -0
- package/dist/customize/sections/view/review-center-connected.js +250 -0
- package/dist/customize/sections/view/review-view.d.ts +8 -0
- package/dist/customize/sections/view/review-view.js +19 -0
- package/dist/customize/sections/view/sandbox-provider-coverage.d.ts +52 -0
- package/dist/customize/sections/view/sandbox-provider-coverage.js +85 -0
- package/dist/customize/sections/view/sandbox-provider-result.d.ts +47 -0
- package/dist/customize/sections/view/sandbox-provider-result.js +79 -0
- package/dist/customize/sections/view/secret-audience.d.ts +12 -0
- package/dist/customize/sections/view/secret-audience.js +42 -0
- package/dist/customize/sections/view/secret-delivery.d.ts +449 -0
- package/dist/customize/sections/view/secret-delivery.js +720 -0
- package/dist/customize/sections/view/secret-optimistic-cache.d.ts +19 -0
- package/dist/customize/sections/view/secret-optimistic-cache.js +60 -0
- package/dist/customize/sections/view/secrets-view.d.ts +60 -0
- package/dist/customize/sections/view/secrets-view.js +699 -0
- package/dist/customize/sections/view/undecryptable-value.d.ts +13 -0
- package/dist/customize/sections/view/undecryptable-value.js +18 -0
- package/dist/customize/settings/rail-copy-context.d.ts +20 -0
- package/dist/customize/settings/rail-copy-context.js +29 -0
- package/dist/customize/settings/rail.d.ts +51 -0
- package/dist/customize/settings/rail.js +246 -0
- package/dist/customize/settings/settings-tab-header.d.ts +30 -0
- package/dist/customize/settings/settings-tab-header.js +42 -0
- package/dist/customize/settings/settings-tabs.d.ts +121 -0
- package/dist/customize/settings/settings-tabs.js +353 -0
- package/dist/customize/settings/tabs/connected-apps.d.ts +13 -0
- package/dist/customize/settings/tabs/connected-apps.js +85 -0
- package/dist/customize/settings/tabs/experimental-tab.d.ts +110 -0
- package/dist/customize/settings/tabs/experimental-tab.js +277 -0
- package/dist/customize/settings/tabs/fact-cell.d.ts +10 -0
- package/dist/customize/settings/tabs/fact-cell.js +5 -0
- package/dist/customize/settings/tabs/general-tab.d.ts +102 -0
- package/dist/customize/settings/tabs/general-tab.js +290 -0
- package/dist/customize/settings/tabs/project-edit-patch.d.ts +83 -0
- package/dist/customize/settings/tabs/project-edit-patch.js +76 -0
- package/dist/customize/settings/tabs/sandbox-tab.d.ts +123 -0
- package/dist/customize/settings/tabs/sandbox-tab.js +338 -0
- package/dist/customize/settings/tabs/sandbox-template-form.d.ts +9 -0
- package/dist/customize/settings/tabs/sandbox-template-form.js +162 -0
- package/dist/customize/settings/tabs/snapshots-query.d.ts +11 -0
- package/dist/customize/settings/tabs/snapshots-query.js +16 -0
- package/dist/customize/settings/tabs/snapshots-tab.d.ts +142 -0
- package/dist/customize/settings/tabs/snapshots-tab.js +358 -0
- package/dist/customize/settings/tabs/tokens-tab.d.ts +32 -0
- package/dist/customize/settings/tabs/tokens-tab.js +418 -0
- package/dist/customize/settings/type.d.ts +42 -0
- package/dist/customize/settings/type.js +1 -0
- package/dist/customize/shared/app-return-url.d.ts +7 -0
- package/dist/customize/shared/app-return-url.js +36 -0
- package/dist/customize/shared/capability-access-gate.d.ts +19 -0
- package/dist/customize/shared/capability-access-gate.js +52 -0
- package/dist/customize/shared/capability-page-shell.d.ts +43 -0
- package/dist/customize/shared/capability-page-shell.js +26 -0
- package/dist/customize/shared/capability-scroll-root.d.ts +12 -0
- package/dist/customize/shared/capability-scroll-root.js +43 -0
- package/dist/customize/shared/capability-skeleton.d.ts +14 -0
- package/dist/customize/shared/capability-skeleton.js +19 -0
- package/dist/customize/shared/capability-tabs.d.ts +3 -0
- package/dist/customize/shared/capability-tabs.js +136 -0
- package/dist/customize/shared/catalog/catalog-card.d.ts +45 -0
- package/dist/customize/shared/catalog/catalog-card.js +31 -0
- package/dist/customize/shared/catalog/catalog-empty-state.d.ts +31 -0
- package/dist/customize/shared/catalog/catalog-empty-state.js +22 -0
- package/dist/customize/shared/catalog/catalog-empty.d.ts +18 -0
- package/dist/customize/shared/catalog/catalog-empty.js +22 -0
- package/dist/customize/shared/catalog/catalog-error.d.ts +9 -0
- package/dist/customize/shared/catalog/catalog-error.js +65 -0
- package/dist/customize/shared/catalog/catalog-grid-tokens.d.ts +58 -0
- package/dist/customize/shared/catalog/catalog-grid-tokens.js +58 -0
- package/dist/customize/shared/catalog/catalog-grid.d.ts +53 -0
- package/dist/customize/shared/catalog/catalog-grid.js +66 -0
- package/dist/customize/shared/detail-selection.d.ts +54 -0
- package/dist/customize/shared/detail-selection.js +11 -0
- package/dist/customize/shared/entity/entity-files.d.ts +26 -0
- package/dist/customize/shared/entity/entity-files.js +121 -0
- package/dist/customize/shared/entity/entity-modal.d.ts +58 -0
- package/dist/customize/shared/entity/entity-modal.js +144 -0
- package/dist/customize/shared/feature-gate-screen.d.ts +11 -0
- package/dist/customize/shared/feature-gate-screen.js +44 -0
- package/dist/customize/shared/new-entity-menu.d.ts +61 -0
- package/dist/customize/shared/new-entity-menu.js +41 -0
- package/dist/customize/shared/standalone-settings-nav.d.ts +38 -0
- package/dist/customize/shared/standalone-settings-nav.js +129 -0
- package/dist/customize/shared/use-customize-prefetch.d.ts +67 -0
- package/dist/customize/shared/use-customize-prefetch.js +231 -0
- package/dist/customize/shared/utils.d.ts +21 -0
- package/dist/customize/shared/utils.js +23 -0
- package/dist/customize/shared/with-search.d.ts +2 -0
- package/dist/customize/shared/with-search.js +10 -0
- package/dist/customize/skills/new-skill-modal.d.ts +12 -0
- package/dist/customize/skills/new-skill-modal.js +57 -0
- package/dist/customize/skills/skill-scope.d.ts +14 -0
- package/dist/customize/skills/skill-scope.js +18 -0
- package/dist/customize/skills/skills-page.d.ts +22 -0
- package/dist/customize/skills/skills-page.js +117 -0
- package/dist/customize/triggers/schedule/composer-parts.d.ts +12 -0
- package/dist/customize/triggers/schedule/composer-parts.js +16 -0
- package/dist/customize/triggers/schedule/event-account-picker.d.ts +16 -0
- package/dist/customize/triggers/schedule/event-account-picker.js +82 -0
- package/dist/customize/triggers/schedule/event-apps-strip.d.ts +7 -0
- package/dist/customize/triggers/schedule/event-apps-strip.js +21 -0
- package/dist/customize/triggers/schedule/event-check-times.d.ts +11 -0
- package/dist/customize/triggers/schedule/event-check-times.js +41 -0
- package/dist/customize/triggers/schedule/event-count.d.ts +5 -0
- package/dist/customize/triggers/schedule/event-count.js +11 -0
- package/dist/customize/triggers/schedule/event-trigger-copy.d.ts +176 -0
- package/dist/customize/triggers/schedule/event-trigger-copy.js +451 -0
- package/dist/customize/triggers/schedule/event-trigger-fields.d.ts +17 -0
- package/dist/customize/triggers/schedule/event-trigger-fields.js +47 -0
- package/dist/customize/triggers/schedule/schedule-builder.d.ts +25 -0
- package/dist/customize/triggers/schedule/schedule-builder.js +284 -0
- package/dist/customize/triggers/schedule/schedule-copy.d.ts +139 -0
- package/dist/customize/triggers/schedule/schedule-copy.js +368 -0
- package/dist/customize/triggers/schedule/schedule-detail-sheet.d.ts +37 -0
- package/dist/customize/triggers/schedule/schedule-detail-sheet.js +287 -0
- package/dist/customize/triggers/schedule/schedule-fields.d.ts +97 -0
- package/dist/customize/triggers/schedule/schedule-fields.js +172 -0
- package/dist/customize/triggers/schedule/then-fields.d.ts +12 -0
- package/dist/customize/triggers/schedule/then-fields.js +36 -0
- package/dist/customize/triggers/schedule/trigger-callouts.d.ts +12 -0
- package/dist/customize/triggers/schedule/trigger-callouts.js +34 -0
- package/dist/customize/triggers/schedule/trigger-composer-logic.d.ts +149 -0
- package/dist/customize/triggers/schedule/trigger-composer-logic.js +252 -0
- package/dist/customize/triggers/schedule/trigger-composer.d.ts +24 -0
- package/dist/customize/triggers/schedule/trigger-composer.js +273 -0
- package/dist/customize/triggers/schedule/trigger-controls.d.ts +3 -0
- package/dist/customize/triggers/schedule/trigger-controls.js +19 -0
- package/dist/customize/triggers/schedule/trigger-edit-logic.d.ts +18 -0
- package/dist/customize/triggers/schedule/trigger-edit-logic.js +133 -0
- package/dist/customize/triggers/schedule/trigger-filter.d.ts +54 -0
- package/dist/customize/triggers/schedule/trigger-filter.js +77 -0
- package/dist/customize/triggers/schedule/trigger-list.d.ts +28 -0
- package/dist/customize/triggers/schedule/trigger-list.js +87 -0
- package/dist/customize/triggers/schedule/trigger-options.d.ts +14 -0
- package/dist/customize/triggers/schedule/trigger-options.js +38 -0
- package/dist/customize/triggers/schedule/trigger-readonly.d.ts +8 -0
- package/dist/customize/triggers/schedule/trigger-readonly.js +51 -0
- package/dist/customize/triggers/schedule/trigger-runs-histogram.d.ts +14 -0
- package/dist/customize/triggers/schedule/trigger-runs-histogram.js +68 -0
- package/dist/customize/triggers/schedule/trigger-runs-logic.d.ts +49 -0
- package/dist/customize/triggers/schedule/trigger-runs-logic.js +90 -0
- package/dist/customize/triggers/schedule/trigger-runs-panel.d.ts +32 -0
- package/dist/customize/triggers/schedule/trigger-runs-panel.js +216 -0
- package/dist/customize/triggers/schedule/trigger-selection-bar.d.ts +22 -0
- package/dist/customize/triggers/schedule/trigger-selection-bar.js +47 -0
- package/dist/customize/triggers/schedule/trigger-selection.d.ts +33 -0
- package/dist/customize/triggers/schedule/trigger-selection.js +42 -0
- package/dist/customize/triggers/schedule/trigger-session-access-copy.d.ts +46 -0
- package/dist/customize/triggers/schedule/trigger-session-access-copy.js +35 -0
- package/dist/customize/triggers/schedule/trigger-status-badge.d.ts +13 -0
- package/dist/customize/triggers/schedule/trigger-status-badge.js +34 -0
- package/dist/customize/triggers/schedule/trigger-test-dialog.d.ts +7 -0
- package/dist/customize/triggers/schedule/trigger-test-dialog.js +61 -0
- package/dist/customize/triggers/schedule/trigger-tile.d.ts +51 -0
- package/dist/customize/triggers/schedule/trigger-tile.js +67 -0
- package/dist/customize/triggers/schedule/trigger-toast.d.ts +15 -0
- package/dist/customize/triggers/schedule/trigger-toast.js +50 -0
- package/dist/customize/triggers/schedule/use-event-app-connect.d.ts +8 -0
- package/dist/customize/triggers/schedule/use-event-app-connect.js +205 -0
- package/dist/customize/triggers/schedule/use-event-titles.d.ts +11 -0
- package/dist/customize/triggers/schedule/use-event-titles.js +28 -0
- package/dist/customize/triggers/schedule/use-trigger-mutations.d.ts +33 -0
- package/dist/customize/triggers/schedule/use-trigger-mutations.js +67 -0
- package/dist/customize/triggers/schedule/when-event-summary.d.ts +13 -0
- package/dist/customize/triggers/schedule/when-event-summary.js +28 -0
- package/dist/customize/triggers/schedule/when-event.d.ts +18 -0
- package/dist/customize/triggers/schedule/when-event.js +162 -0
- package/dist/customize/triggers/schedule/when-schedule.d.ts +8 -0
- package/dist/customize/triggers/schedule/when-schedule.js +11 -0
- package/dist/customize/triggers/schedule/when-webhook-address.d.ts +10 -0
- package/dist/customize/triggers/schedule/when-webhook-address.js +20 -0
- package/dist/customize/triggers/schedule/when-webhook.d.ts +8 -0
- package/dist/customize/triggers/schedule/when-webhook.js +16 -0
- package/dist/customize/triggers/schedule-view.d.ts +56 -0
- package/dist/customize/triggers/schedule-view.js +421 -0
- package/dist/customize/triggers/triggers-page.d.ts +21 -0
- package/dist/customize/triggers/triggers-page.js +24 -0
- package/dist/customize/use-configure-thread.d.ts +15 -0
- package/dist/customize/use-configure-thread.js +47 -0
- package/dist/diff/diff-view.d.ts +49 -0
- package/dist/diff/diff-view.js +61 -0
- package/dist/diff/index.d.ts +4 -0
- package/dist/diff/index.js +4 -0
- package/dist/files/drives/session-drives-chip.d.ts +19 -0
- package/dist/files/drives/session-drives-chip.js +71 -0
- package/dist/files/drives/use-drives.d.ts +10 -0
- package/dist/files/drives/use-drives.js +32 -0
- package/dist/files/editor/code-editor.d.ts +28 -0
- package/dist/files/editor/code-editor.js +518 -0
- package/dist/files/editor/codemirror-diagnostics.d.ts +29 -0
- package/dist/files/editor/codemirror-diagnostics.js +243 -0
- package/dist/files/editor/external-content.d.ts +19 -0
- package/dist/files/editor/external-content.js +17 -0
- package/dist/files/editor/lazy-code-editor.d.ts +9 -0
- package/dist/files/editor/lazy-code-editor.js +14 -0
- package/dist/files/editor/target-line.d.ts +9 -0
- package/dist/files/editor/target-line.js +35 -0
- package/dist/files/file-preview-dialog.d.ts +2 -0
- package/dist/files/file-preview-dialog.js +43 -0
- package/dist/files/file-preview-host.d.ts +5 -0
- package/dist/files/file-preview-host.js +18 -0
- package/dist/files/index.d.ts +23 -0
- package/dist/files/index.js +23 -0
- package/dist/files/project/api/branches.d.ts +8 -0
- package/dist/files/project/api/branches.js +10 -0
- package/dist/files/project/api/change-requests.d.ts +36 -0
- package/dist/files/project/api/change-requests.js +42 -0
- package/dist/files/project/api/commits.d.ts +15 -0
- package/dist/files/project/api/commits.js +14 -0
- package/dist/files/project/api/git-history.d.ts +14 -0
- package/dist/files/project/api/git-history.js +63 -0
- package/dist/files/project/api/runtime-files.d.ts +103 -0
- package/dist/files/project/api/runtime-files.js +289 -0
- package/dist/files/project/change-request-recovery.d.ts +26 -0
- package/dist/files/project/change-request-recovery.js +59 -0
- package/dist/files/project/components/change-request-detail-dialog.d.ts +13 -0
- package/dist/files/project/components/change-request-detail-dialog.js +187 -0
- package/dist/files/project/components/change-requests-panel.d.ts +14 -0
- package/dist/files/project/components/change-requests-panel.js +94 -0
- package/dist/files/project/components/checkpoint-detail-dialog.d.ts +11 -0
- package/dist/files/project/components/checkpoint-detail-dialog.js +201 -0
- package/dist/files/project/components/checkpoints-panel.d.ts +18 -0
- package/dist/files/project/components/checkpoints-panel.js +76 -0
- package/dist/files/project/components/diff-preview-banner.d.ts +30 -0
- package/dist/files/project/components/diff-preview-banner.js +45 -0
- package/dist/files/project/components/diff-renderer.d.ts +19 -0
- package/dist/files/project/components/diff-renderer.js +14 -0
- package/dist/files/project/components/drive-create-dialog.d.ts +26 -0
- package/dist/files/project/components/drive-create-dialog.js +52 -0
- package/dist/files/project/components/drive-empty-art.d.ts +2 -0
- package/dist/files/project/components/drive-empty-art.js +5 -0
- package/dist/files/project/components/drive-explorer.d.ts +84 -0
- package/dist/files/project/components/drive-explorer.js +1055 -0
- package/dist/files/project/components/drive-folder-thumbnail.d.ts +27 -0
- package/dist/files/project/components/drive-folder-thumbnail.js +63 -0
- package/dist/files/project/components/drive-grid-view.d.ts +72 -0
- package/dist/files/project/components/drive-grid-view.js +133 -0
- package/dist/files/project/components/drive-header.d.ts +61 -0
- package/dist/files/project/components/drive-header.js +75 -0
- package/dist/files/project/components/drive-list-view.d.ts +37 -0
- package/dist/files/project/components/drive-list-view.js +128 -0
- package/dist/files/project/components/drive-rename-dialog.d.ts +19 -0
- package/dist/files/project/components/drive-rename-dialog.js +57 -0
- package/dist/files/project/components/drive-selection-bar.d.ts +22 -0
- package/dist/files/project/components/drive-selection-bar.js +30 -0
- package/dist/files/project/components/drive-selection-ui.d.ts +18 -0
- package/dist/files/project/components/drive-selection-ui.js +17 -0
- package/dist/files/project/components/drive-selection.d.ts +68 -0
- package/dist/files/project/components/drive-selection.js +73 -0
- package/dist/files/project/components/drive-toolbar.d.ts +121 -0
- package/dist/files/project/components/drive-toolbar.js +185 -0
- package/dist/files/project/components/drive-upload-tray.d.ts +9 -0
- package/dist/files/project/components/drive-upload-tray.js +74 -0
- package/dist/files/project/components/file-breadcrumbs.d.ts +23 -0
- package/dist/files/project/components/file-breadcrumbs.js +147 -0
- package/dist/files/project/components/file-content-renderer.d.ts +5 -0
- package/dist/files/project/components/file-content-renderer.js +11 -0
- package/dist/files/project/components/file-explorer-page.d.ts +11 -0
- package/dist/files/project/components/file-explorer-page.js +367 -0
- package/dist/files/project/components/file-history-popover.d.ts +6 -0
- package/dist/files/project/components/file-history-popover.js +103 -0
- package/dist/files/project/components/file-icon.d.ts +16 -0
- package/dist/files/project/components/file-icon.js +203 -0
- package/dist/files/project/components/file-preview-modal.d.ts +14 -0
- package/dist/files/project/components/file-preview-modal.js +46 -0
- package/dist/files/project/components/file-route-state.d.ts +2 -0
- package/dist/files/project/components/file-route-state.js +3 -0
- package/dist/files/project/components/file-search.d.ts +1 -0
- package/dist/files/project/components/file-search.js +135 -0
- package/dist/files/project/components/file-thumbnail.d.ts +28 -0
- package/dist/files/project/components/file-thumbnail.js +81 -0
- package/dist/files/project/components/index.d.ts +18 -0
- package/dist/files/project/components/index.js +17 -0
- package/dist/files/project/components/load-more-row.d.ts +18 -0
- package/dist/files/project/components/load-more-row.js +35 -0
- package/dist/files/project/components/open-change-request-dialog.d.ts +12 -0
- package/dist/files/project/components/open-change-request-dialog.js +129 -0
- package/dist/files/project/components/own-clicks.d.ts +12 -0
- package/dist/files/project/components/own-clicks.js +20 -0
- package/dist/files/project/components/review-panel.d.ts +73 -0
- package/dist/files/project/components/review-panel.js +72 -0
- package/dist/files/project/components/use-drive-row-interactions.d.ts +27 -0
- package/dist/files/project/components/use-drive-row-interactions.js +121 -0
- package/dist/files/project/components/version-selector.d.ts +1 -0
- package/dist/files/project/components/version-selector.js +66 -0
- package/dist/files/project/context.d.ts +32 -0
- package/dist/files/project/context.js +38 -0
- package/dist/files/project/drop-tree.d.ts +34 -0
- package/dist/files/project/drop-tree.js +63 -0
- package/dist/files/project/explorer-source.d.ts +163 -0
- package/dist/files/project/explorer-source.js +14 -0
- package/dist/files/project/file-source.d.ts +11 -0
- package/dist/files/project/file-source.js +30 -0
- package/dist/files/project/git-ref-explorer-source.d.ts +6 -0
- package/dist/files/project/git-ref-explorer-source.js +50 -0
- package/dist/files/project/hooks/index.d.ts +14 -0
- package/dist/files/project/hooks/index.js +24 -0
- package/dist/files/project/hooks/use-binary-blob.d.ts +26 -0
- package/dist/files/project/hooks/use-binary-blob.js +72 -0
- package/dist/files/project/hooks/use-branches.d.ts +14 -0
- package/dist/files/project/hooks/use-branches.js +23 -0
- package/dist/files/project/hooks/use-change-request-recovery.d.ts +5 -0
- package/dist/files/project/hooks/use-change-request-recovery.js +53 -0
- package/dist/files/project/hooks/use-change-requests.d.ts +140 -0
- package/dist/files/project/hooks/use-change-requests.js +298 -0
- package/dist/files/project/hooks/use-commits.d.ts +30 -0
- package/dist/files/project/hooks/use-commits.js +57 -0
- package/dist/files/project/hooks/use-directory-download.d.ts +10 -0
- package/dist/files/project/hooks/use-directory-download.js +46 -0
- package/dist/files/project/hooks/use-file-content.d.ts +13 -0
- package/dist/files/project/hooks/use-file-content.js +52 -0
- package/dist/files/project/hooks/use-file-history.d.ts +31 -0
- package/dist/files/project/hooks/use-file-history.js +55 -0
- package/dist/files/project/hooks/use-file-list.d.ts +39 -0
- package/dist/files/project/hooks/use-file-list.js +83 -0
- package/dist/files/project/hooks/use-file-mutations.d.ts +22 -0
- package/dist/files/project/hooks/use-file-mutations.js +46 -0
- package/dist/files/project/hooks/use-file-search.d.ts +23 -0
- package/dist/files/project/hooks/use-file-search.js +54 -0
- package/dist/files/project/hooks/use-git-status.d.ts +21 -0
- package/dist/files/project/hooks/use-git-status.js +36 -0
- package/dist/files/project/hooks/use-server-health.d.ts +27 -0
- package/dist/files/project/hooks/use-server-health.js +36 -0
- package/dist/files/project/index.d.ts +20 -0
- package/dist/files/project/index.js +32 -0
- package/dist/files/project/search/workspace-search-service.d.ts +18 -0
- package/dist/files/project/search/workspace-search-service.js +19 -0
- package/dist/files/project/store/upload-store.d.ts +25 -0
- package/dist/files/project/store/upload-store.js +16 -0
- package/dist/files/project/store/version-store.d.ts +19 -0
- package/dist/files/project/store/version-store.js +25 -0
- package/dist/files/project/upload-batch.d.ts +92 -0
- package/dist/files/project/upload-batch.js +105 -0
- package/dist/files/renderers/csv/csv-copy.d.ts +8 -0
- package/dist/files/renderers/csv/csv-copy.js +36 -0
- package/dist/files/renderers/csv/csv-renderer.d.ts +15 -0
- package/dist/files/renderers/csv/csv-renderer.js +18 -0
- package/dist/files/renderers/csv/csv-viewer.d.ts +18 -0
- package/dist/files/renderers/csv/csv-viewer.js +342 -0
- package/dist/files/renderers/docx/docx-annotation-card.d.ts +4 -0
- package/dist/files/renderers/docx/docx-annotation-card.js +62 -0
- package/dist/files/renderers/docx/docx-renderer.d.ts +38 -0
- package/dist/files/renderers/docx/docx-renderer.js +49 -0
- package/dist/files/renderers/docx/docx-viewer.d.ts +13 -0
- package/dist/files/renderers/docx/docx-viewer.js +621 -0
- package/dist/files/renderers/image-renderer.d.ts +29 -0
- package/dist/files/renderers/image-renderer.js +285 -0
- package/dist/files/renderers/mermaid/mermaid-diagram.d.ts +10 -0
- package/dist/files/renderers/mermaid/mermaid-diagram.js +159 -0
- package/dist/files/renderers/mermaid/mermaid-utils.d.ts +44 -0
- package/dist/files/renderers/mermaid/mermaid-utils.js +119 -0
- package/dist/files/renderers/pdf/pdf-engine-loader.d.ts +2 -0
- package/dist/files/renderers/pdf/pdf-engine-loader.js +15 -0
- package/dist/files/renderers/pdf/pdf-renderer.d.ts +21 -0
- package/dist/files/renderers/pdf/pdf-renderer.js +54 -0
- package/dist/files/renderers/pdf/pdf-viewer.d.ts +83 -0
- package/dist/files/renderers/pdf/pdf-viewer.js +1352 -0
- package/dist/files/renderers/pptx-i18n.d.ts +2 -0
- package/dist/files/renderers/pptx-i18n.js +33 -0
- package/dist/files/renderers/pptx-renderer.d.ts +26 -0
- package/dist/files/renderers/pptx-renderer.js +153 -0
- package/dist/files/renderers/pptx-viewer.css +147 -0
- package/dist/files/renderers/presentation/FullScreenPresentationViewer.d.ts +10 -0
- package/dist/files/renderers/presentation/FullScreenPresentationViewer.js +337 -0
- package/dist/files/renderers/presentation/presentation-utils.d.ts +20 -0
- package/dist/files/renderers/presentation/presentation-utils.js +53 -0
- package/dist/files/renderers/presentation/presentation-viewer-store.d.ts +27 -0
- package/dist/files/renderers/presentation/presentation-viewer-store.js +37 -0
- package/dist/files/renderers/shared/document-viewer-sidebar.d.ts +15 -0
- package/dist/files/renderers/shared/document-viewer-sidebar.js +61 -0
- package/dist/files/renderers/shared/file-thumbnail.d.ts +17 -0
- package/dist/files/renderers/shared/file-thumbnail.js +71 -0
- package/dist/files/renderers/shared/scroll-area-compat.d.ts +45 -0
- package/dist/files/renderers/shared/scroll-area-compat.js +41 -0
- package/dist/files/renderers/shared/select-compat.d.ts +11 -0
- package/dist/files/renderers/shared/select-compat.js +19 -0
- package/dist/files/renderers/shared/spinner.d.ts +3 -0
- package/dist/files/renderers/shared/spinner.js +7 -0
- package/dist/files/renderers/shared/use-viewer-search.d.ts +13 -0
- package/dist/files/renderers/shared/use-viewer-search.js +86 -0
- package/dist/files/renderers/shared/viewer-copy-menu.d.ts +9 -0
- package/dist/files/renderers/shared/viewer-copy-menu.js +16 -0
- package/dist/files/renderers/shared/viewer-download-button.d.ts +10 -0
- package/dist/files/renderers/shared/viewer-download-button.js +27 -0
- package/dist/files/renderers/shared/viewer-file-name.d.ts +11 -0
- package/dist/files/renderers/shared/viewer-file-name.js +16 -0
- package/dist/files/renderers/shared/viewer-frame.d.ts +6 -0
- package/dist/files/renderers/shared/viewer-frame.js +26 -0
- package/dist/files/renderers/show-content-renderer.d.ts +116 -0
- package/dist/files/renderers/show-content-renderer.js +707 -0
- package/dist/files/renderers/show-type-utils.d.ts +45 -0
- package/dist/files/renderers/show-type-utils.js +85 -0
- package/dist/files/renderers/sqlite-renderer.d.ts +14 -0
- package/dist/files/renderers/sqlite-renderer.js +727 -0
- package/dist/files/renderers/video-renderer.d.ts +14 -0
- package/dist/files/renderers/video-renderer.js +181 -0
- package/dist/files/renderers/xlsx/xlsx-renderer.d.ts +25 -0
- package/dist/files/renderers/xlsx/xlsx-renderer.js +72 -0
- package/dist/files/renderers/xlsx/xlsx-viewer.d.ts +39 -0
- package/dist/files/renderers/xlsx/xlsx-viewer.js +722 -0
- package/dist/files/renderers/zip/zip-entries.d.ts +154 -0
- package/dist/files/renderers/zip/zip-entries.js +271 -0
- package/dist/files/renderers/zip/zip-renderer.d.ts +20 -0
- package/dist/files/renderers/zip/zip-renderer.js +317 -0
- package/dist/files/runtime/components/file-content-renderer.d.ts +5 -0
- package/dist/files/runtime/components/file-content-renderer.js +10 -0
- package/dist/files/runtime/file-source.d.ts +6 -0
- package/dist/files/runtime/file-source.js +22 -0
- package/dist/files/runtime/hooks/blob-identity.d.ts +12 -0
- package/dist/files/runtime/hooks/blob-identity.js +23 -0
- package/dist/files/runtime/hooks/index.d.ts +12 -0
- package/dist/files/runtime/hooks/index.js +21 -0
- package/dist/files/runtime/hooks/server-health-state.d.ts +18 -0
- package/dist/files/runtime/hooks/server-health-state.js +20 -0
- package/dist/files/runtime/hooks/system-dir.d.ts +1 -0
- package/dist/files/runtime/hooks/system-dir.js +16 -0
- package/dist/files/runtime/hooks/use-binary-blob.d.ts +29 -0
- package/dist/files/runtime/hooks/use-binary-blob.js +102 -0
- package/dist/files/runtime/hooks/use-directory-download.d.ts +16 -0
- package/dist/files/runtime/hooks/use-directory-download.js +59 -0
- package/dist/files/runtime/hooks/use-file-content.d.ts +17 -0
- package/dist/files/runtime/hooks/use-file-content.js +53 -0
- package/dist/files/runtime/hooks/use-file-history.d.ts +35 -0
- package/dist/files/runtime/hooks/use-file-history.js +75 -0
- package/dist/files/runtime/hooks/use-file-list.d.ts +172 -0
- package/dist/files/runtime/hooks/use-file-list.js +67 -0
- package/dist/files/runtime/hooks/use-file-mutations.d.ts +22 -0
- package/dist/files/runtime/hooks/use-file-mutations.js +122 -0
- package/dist/files/runtime/hooks/use-file-refresh.d.ts +16 -0
- package/dist/files/runtime/hooks/use-file-refresh.js +32 -0
- package/dist/files/runtime/hooks/use-file-search.d.ts +14 -0
- package/dist/files/runtime/hooks/use-file-search.js +26 -0
- package/dist/files/runtime/hooks/use-git-status.d.ts +16 -0
- package/dist/files/runtime/hooks/use-git-status.js +61 -0
- package/dist/files/runtime/hooks/use-server-health.d.ts +33 -0
- package/dist/files/runtime/hooks/use-server-health.js +49 -0
- package/dist/files/runtime/hooks/use-workspace-search.d.ts +54 -0
- package/dist/files/runtime/hooks/use-workspace-search.js +91 -0
- package/dist/files/runtime/index.d.ts +15 -0
- package/dist/files/runtime/index.js +25 -0
- package/dist/files/runtime/path-utils.d.ts +15 -0
- package/dist/files/runtime/path-utils.js +20 -0
- package/dist/files/runtime/sandbox-explorer-source.d.ts +7 -0
- package/dist/files/runtime/sandbox-explorer-source.js +74 -0
- package/dist/files/runtime/sandbox-file-explorer.d.ts +30 -0
- package/dist/files/runtime/sandbox-file-explorer.js +77 -0
- package/dist/files/runtime/search/workspace-search-service.d.ts +3 -0
- package/dist/files/runtime/search/workspace-search-service.js +7 -0
- package/dist/files/tree/components/file-tree-item.d.ts +31 -0
- package/dist/files/tree/components/file-tree-item.js +176 -0
- package/dist/files/tree/hooks/use-file-events.d.ts +11 -0
- package/dist/files/tree/hooks/use-file-events.js +14 -0
- package/dist/files/viewer/file-content-renderer.d.ts +45 -0
- package/dist/files/viewer/file-content-renderer.js +128 -0
- package/dist/files/viewer/file-header.d.ts +37 -0
- package/dist/files/viewer/file-header.js +21 -0
- package/dist/files/viewer/file-preview-modal.d.ts +63 -0
- package/dist/files/viewer/file-preview-modal.js +320 -0
- package/dist/files/viewer/file-source.d.ts +116 -0
- package/dist/files/viewer/file-source.js +14 -0
- package/dist/files/viewer/file-viewer.d.ts +36 -0
- package/dist/files/viewer/file-viewer.js +196 -0
- package/dist/files/viewer/html-preview.d.ts +32 -0
- package/dist/files/viewer/html-preview.js +101 -0
- package/dist/files/viewer/index.d.ts +20 -0
- package/dist/files/viewer/index.js +15 -0
- package/dist/files/viewer/json-tree-view.d.ts +3 -0
- package/dist/files/viewer/json-tree-view.js +49 -0
- package/dist/files/viewer/markdown-pdf.d.ts +38 -0
- package/dist/files/viewer/markdown-pdf.js +111 -0
- package/dist/files/viewer/preview-fit.d.ts +50 -0
- package/dist/files/viewer/preview-fit.js +51 -0
- package/dist/files/viewer/preview-policy.d.ts +46 -0
- package/dist/files/viewer/preview-policy.js +190 -0
- package/dist/files/viewer/print-document.d.ts +29 -0
- package/dist/files/viewer/print-document.js +88 -0
- package/dist/files/viewer/save-as-pdf-button.d.ts +22 -0
- package/dist/files/viewer/save-as-pdf-button.js +63 -0
- package/dist/files/viewer/use-content-revision.d.ts +18 -0
- package/dist/files/viewer/use-content-revision.js +29 -0
- package/dist/files/viewer/use-file-content-state.d.ts +60 -0
- package/dist/files/viewer/use-file-content-state.js +352 -0
- package/dist/files/viewer/viewer-actions.d.ts +99 -0
- package/dist/files/viewer/viewer-actions.js +262 -0
- package/dist/files/viewer/viewer-chrome.d.ts +27 -0
- package/dist/files/viewer/viewer-chrome.js +61 -0
- package/dist/hooks/use-debounce.d.ts +4 -0
- package/dist/hooks/use-debounce.js +17 -0
- package/dist/hooks/use-is-dark.d.ts +8 -0
- package/dist/hooks/use-is-dark.js +22 -0
- package/dist/hooks/use-mobile.d.ts +2 -0
- package/dist/hooks/use-mobile.js +15 -0
- package/dist/hooks/use-proximity-hover.d.ts +52 -0
- package/dist/hooks/use-proximity-hover.js +232 -0
- package/dist/i18n/en.d.ts +6921 -0
- package/dist/i18n/en.js +6922 -0
- package/dist/i18n/index.d.ts +18 -0
- package/dist/i18n/index.js +33 -0
- package/dist/i18n/ui-catalog/account-hub-translation-keys.generated.d.ts +1 -0
- package/dist/i18n/ui-catalog/account-hub-translation-keys.generated.js +30 -0
- package/dist/i18n/ui-catalog/app-registry-translation-keys.generated.d.ts +1 -0
- package/dist/i18n/ui-catalog/app-registry-translation-keys.generated.js +109 -0
- package/dist/i18n/ui-catalog/localize-ui-catalog.d.ts +4 -0
- package/dist/i18n/ui-catalog/localize-ui-catalog.js +49 -0
- package/dist/i18n/ui-catalog/product-catalog-translation-keys.generated.d.ts +1 -0
- package/dist/i18n/ui-catalog/product-catalog-translation-keys.generated.js +149 -0
- package/dist/i18n/ui-catalog/remaining-ui-translation-keys.generated.d.ts +1 -0
- package/dist/i18n/ui-catalog/remaining-ui-translation-keys.generated.js +902 -0
- package/dist/i18n/ui-catalog/review-meta-translation-keys.generated.d.ts +1 -0
- package/dist/i18n/ui-catalog/review-meta-translation-keys.generated.js +21 -0
- package/dist/i18n/ui-catalog/review-mock-translation-keys.generated.d.ts +1 -0
- package/dist/i18n/ui-catalog/review-mock-translation-keys.generated.js +43 -0
- package/dist/i18n/ui-catalog/use-localized-ui-catalog.d.ts +1 -0
- package/dist/i18n/ui-catalog/use-localized-ui-catalog.js +9 -0
- package/dist/icons/close.d.ts +2 -0
- package/dist/icons/close.js +7 -0
- package/dist/icons/copy.d.ts +3 -0
- package/dist/icons/copy.js +6 -0
- package/dist/icons/index.d.ts +6 -0
- package/dist/icons/index.js +6 -0
- package/dist/icons/sidebar-toggle.d.ts +13 -0
- package/dist/icons/sidebar-toggle.js +13 -0
- package/dist/index.d.ts +38 -0
- package/dist/index.js +47 -0
- package/dist/internal/account-hub/account-hub-entry.d.ts +5 -0
- package/dist/internal/account-hub/account-hub-entry.js +22 -0
- package/dist/internal/account-hub/account-hub-location.d.ts +54 -0
- package/dist/internal/account-hub/account-hub-location.js +113 -0
- package/dist/internal/account-hub/account-settings-shell.d.ts +7 -0
- package/dist/internal/account-hub/account-settings-shell.js +87 -0
- package/dist/internal/account-hub/account-settings-sidebar.d.ts +2 -0
- package/dist/internal/account-hub/account-settings-sidebar.js +169 -0
- package/dist/internal/account-hub/hub-sheet.d.ts +39 -0
- package/dist/internal/account-hub/hub-sheet.js +46 -0
- package/dist/internal/account-hub/sections.d.ts +95 -0
- package/dist/internal/account-hub/sections.js +232 -0
- package/dist/internal/account-hub/use-account-detail.d.ts +2 -0
- package/dist/internal/account-hub/use-account-detail.js +20 -0
- package/dist/internal/account-hub/use-account-hub-access.d.ts +56 -0
- package/dist/internal/account-hub/use-account-hub-access.js +156 -0
- package/dist/internal/account-hub/use-account-members.d.ts +2 -0
- package/dist/internal/account-hub/use-account-members.js +24 -0
- package/dist/internal/auth/auth-card-shell.d.ts +36 -0
- package/dist/internal/auth/auth-card-shell.js +66 -0
- package/dist/internal/auth/auth-consent.d.ts +71 -0
- package/dist/internal/auth/auth-consent.js +75 -0
- package/dist/internal/auth/auth-primitives.d.ts +67 -0
- package/dist/internal/auth/auth-primitives.js +94 -0
- package/dist/internal/auth/code-input-logic.d.ts +23 -0
- package/dist/internal/auth/code-input-logic.js +33 -0
- package/dist/internal/auth/mfa-pending-action.d.ts +8 -0
- package/dist/internal/auth/mfa-pending-action.js +24 -0
- package/dist/internal/billing/account-state-gating.d.ts +23 -0
- package/dist/internal/billing/account-state-gating.js +21 -0
- package/dist/internal/billing/compute-pricing.d.ts +88 -0
- package/dist/internal/billing/compute-pricing.js +119 -0
- package/dist/internal/billing/index.d.ts +20 -0
- package/dist/internal/billing/index.js +36 -0
- package/dist/internal/billing/session-cost-format.d.ts +4 -0
- package/dist/internal/billing/session-cost-format.js +37 -0
- package/dist/internal/billing/use-account-state.d.ts +64 -0
- package/dist/internal/billing/use-account-state.js +231 -0
- package/dist/internal/billing/use-cost-explorer.d.ts +73 -0
- package/dist/internal/billing/use-cost-explorer.js +90 -0
- package/dist/internal/billing/use-download-restriction.d.ts +33 -0
- package/dist/internal/billing/use-download-restriction.js +60 -0
- package/dist/internal/billing/use-session-costs.d.ts +75 -0
- package/dist/internal/billing/use-session-costs.js +105 -0
- package/dist/internal/billing/use-transactions.d.ts +5 -0
- package/dist/internal/billing/use-transactions.js +34 -0
- package/dist/internal/branding/branding-provider.d.ts +39 -0
- package/dist/internal/branding/branding-provider.js +203 -0
- package/dist/internal/capture/use-capture-area.d.ts +51 -0
- package/dist/internal/capture/use-capture-area.js +96 -0
- package/dist/internal/components/clickable-path.d.ts +64 -0
- package/dist/internal/components/clickable-path.js +170 -0
- package/dist/internal/components/hover-prefetch-link.d.ts +32 -0
- package/dist/internal/components/hover-prefetch-link.js +39 -0
- package/dist/internal/components/mobile-store-qr.d.ts +18 -0
- package/dist/internal/components/mobile-store-qr.js +40 -0
- package/dist/internal/components/repository-disconnected.d.ts +46 -0
- package/dist/internal/components/repository-disconnected.js +80 -0
- package/dist/internal/desktop/desktop-back-button.d.ts +93 -0
- package/dist/internal/desktop/desktop-back-button.js +128 -0
- package/dist/internal/desktop/titlebar-control.d.ts +16 -0
- package/dist/internal/desktop/titlebar-control.js +15 -0
- package/dist/internal/files/file-availability.d.ts +34 -0
- package/dist/internal/files/file-availability.js +81 -0
- package/dist/internal/files/file-read-retry.d.ts +28 -0
- package/dist/internal/files/file-read-retry.js +109 -0
- package/dist/internal/files/git-history.d.ts +35 -0
- package/dist/internal/files/git-history.js +221 -0
- package/dist/internal/files/runtime-file-read.d.ts +5 -0
- package/dist/internal/files/runtime-file-read.js +29 -0
- package/dist/internal/files/runtime-files.d.ts +52 -0
- package/dist/internal/files/runtime-files.js +193 -0
- package/dist/internal/files/session-drive-files.d.ts +63 -0
- package/dist/internal/files/session-drive-files.js +109 -0
- package/dist/internal/files/types.d.ts +137 -0
- package/dist/internal/files/types.js +5 -0
- package/dist/internal/files/use-oc-file-open.d.ts +25 -0
- package/dist/internal/files/use-oc-file-open.js +234 -0
- package/dist/internal/hooks/account/use-accounts-list.d.ts +105 -0
- package/dist/internal/hooks/account/use-accounts-list.js +103 -0
- package/dist/internal/hooks/account/use-my-invites.d.ts +15 -0
- package/dist/internal/hooks/account/use-my-invites.js +22 -0
- package/dist/internal/hooks/admin/use-admin-role.d.ts +6 -0
- package/dist/internal/hooks/admin/use-admin-role.js +6 -0
- package/dist/internal/hooks/channels/use-channels-installations.d.ts +49 -0
- package/dist/internal/hooks/channels/use-channels-installations.js +151 -0
- package/dist/internal/hooks/connectors/use-add-account.d.ts +38 -0
- package/dist/internal/hooks/connectors/use-add-account.js +138 -0
- package/dist/internal/hooks/connectors/use-add-managed-account.d.ts +18 -0
- package/dist/internal/hooks/connectors/use-add-managed-account.js +33 -0
- package/dist/internal/hooks/connectors/use-connect-link.d.ts +20 -0
- package/dist/internal/hooks/connectors/use-connect-link.js +115 -0
- package/dist/internal/hooks/connectors/use-oauth2-return.d.ts +8 -0
- package/dist/internal/hooks/connectors/use-oauth2-return.js +33 -0
- package/dist/internal/hooks/connectors/use-pipedream-connect-member.d.ts +10 -0
- package/dist/internal/hooks/connectors/use-pipedream-connect-member.js +38 -0
- package/dist/internal/hooks/connectors/use-pipedream-connect-project.d.ts +67 -0
- package/dist/internal/hooks/connectors/use-pipedream-connect-project.js +112 -0
- package/dist/internal/hooks/connectors/use-tool-connect.d.ts +45 -0
- package/dist/internal/hooks/connectors/use-tool-connect.js +50 -0
- package/dist/internal/hooks/index.d.ts +7 -0
- package/dist/internal/hooks/index.js +6 -0
- package/dist/internal/hooks/projects/new-session-failure.d.ts +26 -0
- package/dist/internal/hooks/projects/new-session-failure.js +72 -0
- package/dist/internal/hooks/projects/new-session-guard.d.ts +48 -0
- package/dist/internal/hooks/projects/new-session-guard.js +63 -0
- package/dist/internal/hooks/projects/project-rename-cache.d.ts +42 -0
- package/dist/internal/hooks/projects/project-rename-cache.js +51 -0
- package/dist/internal/hooks/projects/session-reload-progress.d.ts +10 -0
- package/dist/internal/hooks/projects/session-reload-progress.js +28 -0
- package/dist/internal/hooks/projects/use-agent-config.d.ts +49 -0
- package/dist/internal/hooks/projects/use-agent-config.js +73 -0
- package/dist/internal/hooks/projects/use-new-project-session.d.ts +65 -0
- package/dist/internal/hooks/projects/use-new-project-session.js +296 -0
- package/dist/internal/hooks/projects/use-project-can-run.d.ts +8 -0
- package/dist/internal/hooks/projects/use-project-can-run.js +46 -0
- package/dist/internal/hooks/projects/use-restart-project-session.d.ts +49 -0
- package/dist/internal/hooks/projects/use-restart-project-session.js +90 -0
- package/dist/internal/hooks/projects/use-session-config-freshness.d.ts +106 -0
- package/dist/internal/hooks/projects/use-session-config-freshness.js +291 -0
- package/dist/internal/hooks/projects/use-warm-project-session.d.ts +270 -0
- package/dist/internal/hooks/projects/use-warm-project-session.js +362 -0
- package/dist/internal/hooks/projects/warm-session-seed.d.ts +66 -0
- package/dist/internal/hooks/projects/warm-session-seed.js +80 -0
- package/dist/internal/hooks/projects/warm-session-taken-registry.d.ts +61 -0
- package/dist/internal/hooks/projects/warm-session-taken-registry.js +141 -0
- package/dist/internal/hooks/use-auto-scroll-physics.d.ts +129 -0
- package/dist/internal/hooks/use-auto-scroll-physics.js +191 -0
- package/dist/internal/hooks/use-auto-scroll.d.ts +30 -0
- package/dist/internal/hooks/use-auto-scroll.js +469 -0
- package/dist/internal/hooks/use-bounded-runtime-wait.d.ts +4 -0
- package/dist/internal/hooks/use-bounded-runtime-wait.js +20 -0
- package/dist/internal/hooks/use-channel-bindings.d.ts +8 -0
- package/dist/internal/hooks/use-channel-bindings.js +27 -0
- package/dist/internal/hooks/use-copy.d.ts +11 -0
- package/dist/internal/hooks/use-copy.js +38 -0
- package/dist/internal/hooks/use-debounced-value.d.ts +2 -0
- package/dist/internal/hooks/use-debounced-value.js +9 -0
- package/dist/internal/hooks/use-heic-url.d.ts +9 -0
- package/dist/internal/hooks/use-heic-url.js +49 -0
- package/dist/internal/hooks/use-media-query.d.ts +2 -0
- package/dist/internal/hooks/use-media-query.js +15 -0
- package/dist/internal/hooks/use-notification-center.d.ts +43 -0
- package/dist/internal/hooks/use-notification-center.js +111 -0
- package/dist/internal/hooks/use-open-preview-link.d.ts +30 -0
- package/dist/internal/hooks/use-open-preview-link.js +42 -0
- package/dist/internal/hooks/use-opened-once.d.ts +9 -0
- package/dist/internal/hooks/use-opened-once.js +15 -0
- package/dist/internal/hooks/use-preview-frame-url.d.ts +13 -0
- package/dist/internal/hooks/use-preview-frame-url.js +24 -0
- package/dist/internal/hooks/use-review-session-summary.d.ts +53 -0
- package/dist/internal/hooks/use-review-session-summary.js +84 -0
- package/dist/internal/hooks/use-sandbox-proxy.d.ts +31 -0
- package/dist/internal/hooks/use-sandbox-proxy.js +40 -0
- package/dist/internal/hooks/use-slash-focus.d.ts +15 -0
- package/dist/internal/hooks/use-slash-focus.js +44 -0
- package/dist/internal/hooks/use-stable-callback.d.ts +15 -0
- package/dist/internal/hooks/use-stable-callback.js +22 -0
- package/dist/internal/icons/claude-code.d.ts +5 -0
- package/dist/internal/icons/claude-code.js +7 -0
- package/dist/internal/icons/claude.d.ts +4 -0
- package/dist/internal/icons/claude.js +8 -0
- package/dist/internal/icons/codex.d.ts +5 -0
- package/dist/internal/icons/codex.js +14 -0
- package/dist/internal/icons/cursor.d.ts +5 -0
- package/dist/internal/icons/cursor.js +11 -0
- package/dist/internal/icons/customize.d.ts +5 -0
- package/dist/internal/icons/customize.js +6 -0
- package/dist/internal/icons/download.d.ts +2 -0
- package/dist/internal/icons/download.js +6 -0
- package/dist/internal/icons/email.d.ts +5 -0
- package/dist/internal/icons/email.js +7 -0
- package/dist/internal/icons/github.d.ts +4 -0
- package/dist/internal/icons/github.js +8 -0
- package/dist/internal/icons/home.d.ts +5 -0
- package/dist/internal/icons/home.js +7 -0
- package/dist/internal/icons/kortix.d.ts +14 -0
- package/dist/internal/icons/kortix.js +25 -0
- package/dist/internal/icons/mcp.d.ts +9 -0
- package/dist/internal/icons/mcp.js +9 -0
- package/dist/internal/icons/microsoft-teams.d.ts +4 -0
- package/dist/internal/icons/microsoft-teams.js +11 -0
- package/dist/internal/icons/open-ai.d.ts +4 -0
- package/dist/internal/icons/open-ai.js +8 -0
- package/dist/internal/icons/plus.d.ts +4 -0
- package/dist/internal/icons/plus.js +6 -0
- package/dist/internal/icons/schedule.d.ts +5 -0
- package/dist/internal/icons/schedule.js +7 -0
- package/dist/internal/icons/slack.d.ts +4 -0
- package/dist/internal/icons/slack.js +6 -0
- package/dist/internal/icons/solid-check-icon.d.ts +2 -0
- package/dist/internal/icons/solid-check-icon.js +6 -0
- package/dist/internal/icons/telegram.d.ts +4 -0
- package/dist/internal/icons/telegram.js +6 -0
- package/dist/internal/layout/connect-mcp-modal.d.ts +35 -0
- package/dist/internal/layout/connect-mcp-modal.js +78 -0
- package/dist/internal/layout/files-nav-label.d.ts +14 -0
- package/dist/internal/layout/files-nav-label.js +10 -0
- package/dist/internal/layout/open-command-palette.d.ts +22 -0
- package/dist/internal/layout/open-command-palette.js +34 -0
- package/dist/internal/layout/project-nav-row.d.ts +9 -0
- package/dist/internal/layout/project-nav-row.js +15 -0
- package/dist/internal/layout/project-page-header.d.ts +16 -0
- package/dist/internal/layout/project-page-header.js +19 -0
- package/dist/internal/layout/project-settings-nav.d.ts +125 -0
- package/dist/internal/layout/project-settings-nav.js +206 -0
- package/dist/internal/layout/settings-nav-context.d.ts +74 -0
- package/dist/internal/layout/settings-nav-context.js +58 -0
- package/dist/internal/layout/sidebar-opener.d.ts +74 -0
- package/dist/internal/layout/sidebar-opener.js +86 -0
- package/dist/internal/layout/sidebar-toggle.d.ts +44 -0
- package/dist/internal/layout/sidebar-toggle.js +56 -0
- package/dist/internal/lib/account-secret-access.d.ts +42 -0
- package/dist/internal/lib/account-secret-access.js +46 -0
- package/dist/internal/lib/approval-expired.d.ts +3 -0
- package/dist/internal/lib/approval-expired.js +4 -0
- package/dist/internal/lib/attachment-mime.d.ts +30 -0
- package/dist/internal/lib/attachment-mime.js +123 -0
- package/dist/internal/lib/billing/billing-gate-state.d.ts +126 -0
- package/dist/internal/lib/billing/billing-gate-state.js +217 -0
- package/dist/internal/lib/browser-error-noise.d.ts +23 -0
- package/dist/internal/lib/browser-error-noise.js +68 -0
- package/dist/internal/lib/browser-noise/evidence.d.ts +73 -0
- package/dist/internal/lib/browser-noise/evidence.js +101 -0
- package/dist/internal/lib/browser-noise/rules/chunk-load.d.ts +37 -0
- package/dist/internal/lib/browser-noise/rules/chunk-load.js +158 -0
- package/dist/internal/lib/browser-noise/rules/expected-states.d.ts +85 -0
- package/dist/internal/lib/browser-noise/rules/expected-states.js +390 -0
- package/dist/internal/lib/browser-noise/rules/extensions.d.ts +196 -0
- package/dist/internal/lib/browser-noise/rules/extensions.js +722 -0
- package/dist/internal/lib/browser-noise/rules/graphics.d.ts +142 -0
- package/dist/internal/lib/browser-noise/rules/graphics.js +606 -0
- package/dist/internal/lib/browser-noise/rules/injected-scripts.d.ts +80 -0
- package/dist/internal/lib/browser-noise/rules/injected-scripts.js +229 -0
- package/dist/internal/lib/browser-noise/rules/messages.d.ts +5 -0
- package/dist/internal/lib/browser-noise/rules/messages.js +81 -0
- package/dist/internal/lib/browser-noise/rules/network.d.ts +117 -0
- package/dist/internal/lib/browser-noise/rules/network.js +441 -0
- package/dist/internal/lib/browser-noise/rules/old-browsers.d.ts +216 -0
- package/dist/internal/lib/browser-noise/rules/old-browsers.js +684 -0
- package/dist/internal/lib/browser-noise/rules/pdf.d.ts +60 -0
- package/dist/internal/lib/browser-noise/rules/pdf.js +184 -0
- package/dist/internal/lib/browser-noise/rules/react.d.ts +99 -0
- package/dist/internal/lib/browser-noise/rules/react.js +504 -0
- package/dist/internal/lib/browser-noise/rules/rejections.d.ts +130 -0
- package/dist/internal/lib/browser-noise/rules/rejections.js +517 -0
- package/dist/internal/lib/browser-noise/rules/storage.d.ts +65 -0
- package/dist/internal/lib/browser-noise/rules/storage.js +190 -0
- package/dist/internal/lib/browser-noise/rules/webview.d.ts +103 -0
- package/dist/internal/lib/browser-noise/rules/webview.js +392 -0
- package/dist/internal/lib/capability-tab-routes.d.ts +160 -0
- package/dist/internal/lib/capability-tab-routes.js +176 -0
- package/dist/internal/lib/chunk-load-recovery.d.ts +46 -0
- package/dist/internal/lib/chunk-load-recovery.js +107 -0
- package/dist/internal/lib/chunk-reload.d.ts +31 -0
- package/dist/internal/lib/chunk-reload.js +59 -0
- package/dist/internal/lib/code-theme.d.ts +22 -0
- package/dist/internal/lib/code-theme.js +16 -0
- package/dist/internal/lib/codemirror-pierre-theme.d.ts +3 -0
- package/dist/internal/lib/codemirror-pierre-theme.js +138 -0
- package/dist/internal/lib/delivered-but-disconnected.d.ts +4 -0
- package/dist/internal/lib/delivered-but-disconnected.js +106 -0
- package/dist/internal/lib/desktop-detect.d.ts +17 -0
- package/dist/internal/lib/desktop-detect.js +36 -0
- package/dist/internal/lib/desktop.d.ts +237 -0
- package/dist/internal/lib/desktop.js +356 -0
- package/dist/internal/lib/error-handler.d.ts +25 -0
- package/dist/internal/lib/error-handler.js +327 -0
- package/dist/internal/lib/github-installations.d.ts +47 -0
- package/dist/internal/lib/github-installations.js +54 -0
- package/dist/internal/lib/github-user-proof.d.ts +3 -0
- package/dist/internal/lib/github-user-proof.js +38 -0
- package/dist/internal/lib/interface-theme-defaults.d.ts +6 -0
- package/dist/internal/lib/interface-theme-defaults.js +2 -0
- package/dist/internal/lib/kortix-cli.d.ts +12 -0
- package/dist/internal/lib/kortix-cli.js +31 -0
- package/dist/internal/lib/llm-providers.d.ts +185 -0
- package/dist/internal/lib/llm-providers.js +197 -0
- package/dist/internal/lib/logger.d.ts +29 -0
- package/dist/internal/lib/logger.js +36 -0
- package/dist/internal/lib/manifest-version.d.ts +21 -0
- package/dist/internal/lib/manifest-version.js +55 -0
- package/dist/internal/lib/mermaid-utils.d.ts +22 -0
- package/dist/internal/lib/mermaid-utils.js +85 -0
- package/dist/internal/lib/mobile-store-urls.d.ts +9 -0
- package/dist/internal/lib/mobile-store-urls.js +8 -0
- package/dist/internal/lib/model-pricing.d.ts +33 -0
- package/dist/internal/lib/model-pricing.js +107 -0
- package/dist/internal/lib/navigation/modified-click.d.ts +15 -0
- package/dist/internal/lib/navigation/modified-click.js +21 -0
- package/dist/internal/lib/navigation/router-bridge.d.ts +20 -0
- package/dist/internal/lib/navigation/router-bridge.js +60 -0
- package/dist/internal/lib/navigation/session-href.d.ts +24 -0
- package/dist/internal/lib/navigation/session-href.js +31 -0
- package/dist/internal/lib/object-url-cache.d.ts +30 -0
- package/dist/internal/lib/object-url-cache.js +72 -0
- package/dist/internal/lib/onboarding/landing-destination.d.ts +111 -0
- package/dist/internal/lib/onboarding/landing-destination.js +155 -0
- package/dist/internal/lib/onboarding/last-project-cookie.d.ts +44 -0
- package/dist/internal/lib/onboarding/last-project-cookie.js +77 -0
- package/dist/internal/lib/onboarding/provision-errors.d.ts +29 -0
- package/dist/internal/lib/onboarding/provision-errors.js +47 -0
- package/dist/internal/lib/onboarding/use-app-home.d.ts +17 -0
- package/dist/internal/lib/onboarding/use-app-home.js +22 -0
- package/dist/internal/lib/project-actions.d.ts +75 -0
- package/dist/internal/lib/project-actions.js +133 -0
- package/dist/internal/lib/project-preamble.d.ts +71 -0
- package/dist/internal/lib/project-preamble.js +112 -0
- package/dist/internal/lib/promo-art.d.ts +9 -0
- package/dist/internal/lib/promo-art.js +9 -0
- package/dist/internal/lib/provider-branding.d.ts +26 -0
- package/dist/internal/lib/provider-branding.js +175 -0
- package/dist/internal/lib/query-client-singleton.d.ts +9 -0
- package/dist/internal/lib/query-client-singleton.js +34 -0
- package/dist/internal/lib/relative-time.d.ts +22 -0
- package/dist/internal/lib/relative-time.js +48 -0
- package/dist/internal/lib/safe-url.d.ts +2 -0
- package/dist/internal/lib/safe-url.js +7 -0
- package/dist/internal/lib/sandbox-providers.d.ts +11 -0
- package/dist/internal/lib/sandbox-providers.js +27 -0
- package/dist/internal/lib/security/iframe-sandbox.d.ts +15 -0
- package/dist/internal/lib/security/iframe-sandbox.js +26 -0
- package/dist/internal/lib/security/privileged-frame-origins.d.ts +10 -0
- package/dist/internal/lib/security/privileged-frame-origins.js +22 -0
- package/dist/internal/lib/settings-tab-id.d.ts +3 -0
- package/dist/internal/lib/settings-tab-id.js +1 -0
- package/dist/internal/lib/shaders-react.d.ts +2 -0
- package/dist/internal/lib/shaders-react.js +1 -0
- package/dist/internal/lib/site-metadata.d.ts +17 -0
- package/dist/internal/lib/site-metadata.js +16 -0
- package/dist/internal/lib/sounds.d.ts +37 -0
- package/dist/internal/lib/sounds.js +131 -0
- package/dist/internal/lib/storage/managed-storage.d.ts +2 -0
- package/dist/internal/lib/storage/managed-storage.js +5 -0
- package/dist/internal/lib/timeout-toast-policy.d.ts +5 -0
- package/dist/internal/lib/timeout-toast-policy.js +14 -0
- package/dist/internal/lib/turn-broadcast.d.ts +47 -0
- package/dist/internal/lib/turn-broadcast.js +90 -0
- package/dist/internal/lib/use-deployment-cli-install-command.d.ts +7 -0
- package/dist/internal/lib/use-deployment-cli-install-command.js +15 -0
- package/dist/internal/lib/use-permission.d.ts +23 -0
- package/dist/internal/lib/use-permission.js +79 -0
- package/dist/internal/lib/use-project-can.d.ts +37 -0
- package/dist/internal/lib/use-project-can.js +64 -0
- package/dist/internal/lib/use-project-feature-flags.d.ts +26 -0
- package/dist/internal/lib/use-project-feature-flags.js +72 -0
- package/dist/internal/lib/utils/app-access-token.d.ts +10 -0
- package/dist/internal/lib/utils/app-access-token.js +20 -0
- package/dist/internal/lib/utils/clipboard.d.ts +7 -0
- package/dist/internal/lib/utils/clipboard.js +19 -0
- package/dist/internal/lib/utils/download.d.ts +2 -0
- package/dist/internal/lib/utils/download.js +11 -0
- package/dist/internal/lib/utils/file-utils.d.ts +44 -0
- package/dist/internal/lib/utils/file-utils.js +287 -0
- package/dist/internal/lib/utils/focus-without-scroll.d.ts +19 -0
- package/dist/internal/lib/utils/focus-without-scroll.js +18 -0
- package/dist/internal/lib/utils/heic-convert.d.ts +7 -0
- package/dist/internal/lib/utils/heic-convert.js +13 -0
- package/dist/internal/lib/utils/kortix-system-tags.d.ts +45 -0
- package/dist/internal/lib/utils/kortix-system-tags.js +222 -0
- package/dist/internal/lib/utils/kortix-tool-output.d.ts +58 -0
- package/dist/internal/lib/utils/kortix-tool-output.js +148 -0
- package/dist/internal/lib/utils/path-detection.d.ts +43 -0
- package/dist/internal/lib/utils/path-detection.js +339 -0
- package/dist/internal/lib/utils/random-uuid.d.ts +9 -0
- package/dist/internal/lib/utils/random-uuid.js +16 -0
- package/dist/internal/lib/utils/safe-scroll-to.d.ts +20 -0
- package/dist/internal/lib/utils/safe-scroll-to.js +21 -0
- package/dist/internal/lib/utils/sandbox-proxy.d.ts +8 -0
- package/dist/internal/lib/utils/sandbox-proxy.js +15 -0
- package/dist/internal/lib/utils/session-context.d.ts +25 -0
- package/dist/internal/lib/utils/session-context.js +42 -0
- package/dist/internal/lib/utils/strip-html-tags.d.ts +6 -0
- package/dist/internal/lib/utils/strip-html-tags.js +13 -0
- package/dist/internal/lib/utils/structured-output.d.ts +51 -0
- package/dist/internal/lib/utils/structured-output.js +178 -0
- package/dist/internal/lib/utils/time-budget.d.ts +37 -0
- package/dist/internal/lib/utils/time-budget.js +37 -0
- package/dist/internal/lib/utils.d.ts +8 -0
- package/dist/internal/lib/utils.js +58 -0
- package/dist/internal/lib/web-notifications.d.ts +121 -0
- package/dist/internal/lib/web-notifications.js +653 -0
- package/dist/internal/notifications/notification-bell.d.ts +33 -0
- package/dist/internal/notifications/notification-bell.js +135 -0
- package/dist/internal/notifications/notification-rows.d.ts +86 -0
- package/dist/internal/notifications/notification-rows.js +128 -0
- package/dist/internal/notifications/session-toast-cards.d.ts +26 -0
- package/dist/internal/notifications/session-toast-cards.js +32 -0
- package/dist/internal/notifications/web-push.d.ts +63 -0
- package/dist/internal/notifications/web-push.js +193 -0
- package/dist/internal/outcomes/outcome-card.d.ts +81 -0
- package/dist/internal/outcomes/outcome-card.js +54 -0
- package/dist/internal/outcomes/outcome-types.d.ts +77 -0
- package/dist/internal/outcomes/outcome-types.js +15 -0
- package/dist/internal/outcomes/outcome-vocabulary.d.ts +95 -0
- package/dist/internal/outcomes/outcome-vocabulary.js +99 -0
- package/dist/internal/project-scope.d.ts +13 -0
- package/dist/internal/project-scope.js +15 -0
- package/dist/internal/reminders/reminder-format.d.ts +20 -0
- package/dist/internal/reminders/reminder-format.js +72 -0
- package/dist/internal/reminders/use-refetch-after-fire.d.ts +10 -0
- package/dist/internal/reminders/use-refetch-after-fire.js +30 -0
- package/dist/internal/selection/selection-bar.d.ts +31 -0
- package/dist/internal/selection/selection-bar.js +45 -0
- package/dist/internal/selection/selection.d.ts +9 -0
- package/dist/internal/selection/selection.js +25 -0
- package/dist/internal/session-types/index.d.ts +30 -0
- package/dist/internal/session-types/index.js +28 -0
- package/dist/internal/session-types/types.d.ts +78 -0
- package/dist/internal/session-types/types.js +20 -0
- package/dist/internal/share/public-share-link-button.d.ts +14 -0
- package/dist/internal/share/public-share-link-button.js +17 -0
- package/dist/internal/share/public-share-link-confirm.d.ts +15 -0
- package/dist/internal/share/public-share-link-confirm.js +13 -0
- package/dist/internal/share/session-shares-modal.d.ts +7 -0
- package/dist/internal/share/session-shares-modal.js +59 -0
- package/dist/internal/share/use-public-share-link.d.ts +39 -0
- package/dist/internal/share/use-public-share-link.js +110 -0
- package/dist/internal/share/use-session-public-shares.d.ts +60 -0
- package/dist/internal/share/use-session-public-shares.js +140 -0
- package/dist/internal/stores/account-panel-store.d.ts +94 -0
- package/dist/internal/stores/account-panel-store.js +183 -0
- package/dist/internal/stores/account-settings-modal-store.d.ts +41 -0
- package/dist/internal/stores/account-settings-modal-store.js +33 -0
- package/dist/internal/stores/billing-account-context.d.ts +16 -0
- package/dist/internal/stores/billing-account-context.js +20 -0
- package/dist/internal/stores/browser-recents-store.d.ts +36 -0
- package/dist/internal/stores/browser-recents-store.js +50 -0
- package/dist/internal/stores/chat-send-store.d.ts +34 -0
- package/dist/internal/stores/chat-send-store.js +22 -0
- package/dist/internal/stores/composer-prefill-store.d.ts +37 -0
- package/dist/internal/stores/composer-prefill-store.js +27 -0
- package/dist/internal/stores/connector-gate-store.d.ts +27 -0
- package/dist/internal/stores/connector-gate-store.js +9 -0
- package/dist/internal/stores/current-account-store.d.ts +28 -0
- package/dist/internal/stores/current-account-store.js +12 -0
- package/dist/internal/stores/diagnostics-store.d.ts +2 -0
- package/dist/internal/stores/diagnostics-store.js +5 -0
- package/dist/internal/stores/file-preview-store.d.ts +15 -0
- package/dist/internal/stores/file-preview-store.js +24 -0
- package/dist/internal/stores/files-store.d.ts +155 -0
- package/dist/internal/stores/files-store.js +316 -0
- package/dist/internal/stores/first-chat-store.d.ts +23 -0
- package/dist/internal/stores/first-chat-store.js +53 -0
- package/dist/internal/stores/kortix-computer-store.d.ts +230 -0
- package/dist/internal/stores/kortix-computer-store.js +437 -0
- package/dist/internal/stores/message-jump-store.d.ts +8 -0
- package/dist/internal/stores/message-jump-store.js +6 -0
- package/dist/internal/stores/mobile-app-promo-store.d.ts +19 -0
- package/dist/internal/stores/mobile-app-promo-store.js +28 -0
- package/dist/internal/stores/onboarding-mode-store.d.ts +34 -0
- package/dist/internal/stores/onboarding-mode-store.js +20 -0
- package/dist/internal/stores/panel-fallback-store.d.ts +32 -0
- package/dist/internal/stores/panel-fallback-store.js +21 -0
- package/dist/internal/stores/persisted-store-registry.d.ts +58 -0
- package/dist/internal/stores/persisted-store-registry.js +57 -0
- package/dist/internal/stores/project-switch-store.d.ts +49 -0
- package/dist/internal/stores/project-switch-store.js +39 -0
- package/dist/internal/stores/provider-modal-store.d.ts +10 -0
- package/dist/internal/stores/provider-modal-store.js +7 -0
- package/dist/internal/stores/session-browser-store.d.ts +111 -0
- package/dist/internal/stores/session-browser-store.js +115 -0
- package/dist/internal/stores/session-expanded-store.d.ts +21 -0
- package/dist/internal/stores/session-expanded-store.js +42 -0
- package/dist/internal/stores/session-filter-store.d.ts +91 -0
- package/dist/internal/stores/session-filter-store.js +192 -0
- package/dist/internal/stores/session-history-view-store.d.ts +23 -0
- package/dist/internal/stores/session-history-view-store.js +43 -0
- package/dist/internal/stores/session-hover-store.d.ts +49 -0
- package/dist/internal/stores/session-hover-store.js +91 -0
- package/dist/internal/stores/session-panel-memory-store.d.ts +57 -0
- package/dist/internal/stores/session-panel-memory-store.js +74 -0
- package/dist/internal/stores/session-switch-store.d.ts +24 -0
- package/dist/internal/stores/session-switch-store.js +25 -0
- package/dist/internal/stores/settings-panel-store.d.ts +38 -0
- package/dist/internal/stores/settings-panel-store.js +35 -0
- package/dist/internal/stores/sidebar-nav-store.d.ts +78 -0
- package/dist/internal/stores/sidebar-nav-store.js +121 -0
- package/dist/internal/stores/sound-store.d.ts +51 -0
- package/dist/internal/stores/sound-store.js +42 -0
- package/dist/internal/stores/subscription-store.d.ts +36 -0
- package/dist/internal/stores/subscription-store.js +57 -0
- package/dist/internal/stores/tab-store.d.ts +79 -0
- package/dist/internal/stores/tab-store.js +222 -0
- package/dist/internal/stores/turn-attention-store.d.ts +20 -0
- package/dist/internal/stores/turn-attention-store.js +12 -0
- package/dist/internal/stores/upgrade-dialog-store.d.ts +34 -0
- package/dist/internal/stores/upgrade-dialog-store.js +20 -0
- package/dist/internal/stores/user-preferences-store.d.ts +80 -0
- package/dist/internal/stores/user-preferences-store.js +63 -0
- package/dist/internal/stores/web-notification-store.d.ts +50 -0
- package/dist/internal/stores/web-notification-store.js +76 -0
- package/dist/internal/tunnel/computer-connect.d.ts +175 -0
- package/dist/internal/tunnel/computer-connect.js +355 -0
- package/dist/internal/tunnel/tunnel-connect-command.d.ts +23 -0
- package/dist/internal/tunnel/tunnel-connect-command.js +23 -0
- package/dist/lib/dotmatrix-core.d.ts +112 -0
- package/dist/lib/dotmatrix-core.js +919 -0
- package/dist/lib/dotmatrix-hooks.d.ts +28 -0
- package/dist/lib/dotmatrix-hooks.js +151 -0
- package/dist/lib/favicon.d.ts +4 -0
- package/dist/lib/favicon.js +21 -0
- package/dist/lib/font-weight.d.ts +6 -0
- package/dist/lib/font-weight.js +6 -0
- package/dist/lib/host-env.d.ts +22 -0
- package/dist/lib/host-env.js +9 -0
- package/dist/lib/icon-config.d.ts +33 -0
- package/dist/lib/icon-config.js +22 -0
- package/dist/lib/icon-context.d.ts +34 -0
- package/dist/lib/icon-context.js +81 -0
- package/dist/lib/lazy-client.d.ts +10 -0
- package/dist/lib/lazy-client.js +20 -0
- package/dist/lib/portal-container.d.ts +12 -0
- package/dist/lib/portal-container.js +23 -0
- package/dist/lib/portal-root.d.ts +8 -0
- package/dist/lib/portal-root.js +26 -0
- package/dist/lib/routes.d.ts +52 -0
- package/dist/lib/routes.js +54 -0
- package/dist/lib/settle.d.ts +16 -0
- package/dist/lib/settle.js +29 -0
- package/dist/lib/springs.d.ts +31 -0
- package/dist/lib/springs.js +29 -0
- package/dist/lib/telemetry.d.ts +44 -0
- package/dist/lib/telemetry.js +24 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.js +12 -0
- package/dist/lib/z-stack.d.ts +55 -0
- package/dist/lib/z-stack.js +130 -0
- package/dist/markdown/code/children-text.d.ts +15 -0
- package/dist/markdown/code/children-text.js +29 -0
- package/dist/markdown/code/code-block.d.ts +33 -0
- package/dist/markdown/code/code-block.js +88 -0
- package/dist/markdown/code/copy-overlay.d.ts +6 -0
- package/dist/markdown/code/copy-overlay.js +15 -0
- package/dist/markdown/code/genui-fence.d.ts +35 -0
- package/dist/markdown/code/genui-fence.js +81 -0
- package/dist/markdown/code/index.d.ts +6 -0
- package/dist/markdown/code/index.js +18 -0
- package/dist/markdown/code/inline-chip.d.ts +42 -0
- package/dist/markdown/code/inline-chip.js +108 -0
- package/dist/markdown/code/inline-code.d.ts +6 -0
- package/dist/markdown/code/inline-code.js +150 -0
- package/dist/markdown/code/inside-link-context.d.ts +15 -0
- package/dist/markdown/code/inside-link-context.js +17 -0
- package/dist/markdown/code/markdown-code.d.ts +41 -0
- package/dist/markdown/code/markdown-code.js +92 -0
- package/dist/markdown/code/shiki-highlighter.d.ts +45 -0
- package/dist/markdown/code/shiki-highlighter.js +261 -0
- package/dist/markdown/copy-button.d.ts +8 -0
- package/dist/markdown/copy-button.js +51 -0
- package/dist/markdown/file-links.d.ts +13 -0
- package/dist/markdown/file-links.js +93 -0
- package/dist/markdown/genui/block-telemetry.d.ts +21 -0
- package/dist/markdown/genui/block-telemetry.js +39 -0
- package/dist/markdown/genui/components/charts.d.ts +7 -0
- package/dist/markdown/genui/components/charts.js +185 -0
- package/dist/markdown/genui/components/data.d.ts +15 -0
- package/dist/markdown/genui/components/data.js +110 -0
- package/dist/markdown/genui/components/index.d.ts +4 -0
- package/dist/markdown/genui/components/index.js +38 -0
- package/dist/markdown/genui/components/inline.d.ts +17 -0
- package/dist/markdown/genui/components/inline.js +53 -0
- package/dist/markdown/genui/components/layout.d.ts +6 -0
- package/dist/markdown/genui/components/layout.js +180 -0
- package/dist/markdown/genui/components/map-canvas.d.ts +35 -0
- package/dist/markdown/genui/components/map-canvas.js +109 -0
- package/dist/markdown/genui/components/map-geo.d.ts +45 -0
- package/dist/markdown/genui/components/map-geo.js +52 -0
- package/dist/markdown/genui/components/map.d.ts +6 -0
- package/dist/markdown/genui/components/map.js +77 -0
- package/dist/markdown/genui/components/pending.d.ts +19 -0
- package/dist/markdown/genui/components/pending.js +38 -0
- package/dist/markdown/genui/genui-message-block.d.ts +12 -0
- package/dist/markdown/genui/genui-message-block.js +18 -0
- package/dist/markdown/genui/index.d.ts +11 -0
- package/dist/markdown/genui/index.js +11 -0
- package/dist/markdown/genui/sdk.d.ts +10 -0
- package/dist/markdown/genui/sdk.js +9 -0
- package/dist/markdown/genui/to-markdown.d.ts +46 -0
- package/dist/markdown/genui/to-markdown.js +86 -0
- package/dist/markdown/genui/use-genui-enabled.d.ts +4 -0
- package/dist/markdown/genui/use-genui-enabled.js +10 -0
- package/dist/markdown/index.d.ts +16 -0
- package/dist/markdown/index.js +14 -0
- package/dist/markdown/katex-block.d.ts +4 -0
- package/dist/markdown/katex-block.js +25 -0
- package/dist/markdown/katex-markdown.d.ts +24 -0
- package/dist/markdown/katex-markdown.js +163 -0
- package/dist/markdown/markdown-frontmatter.d.ts +31 -0
- package/dist/markdown/markdown-frontmatter.js +118 -0
- package/dist/markdown/markdown-policy.d.ts +48 -0
- package/dist/markdown/markdown-policy.js +31 -0
- package/dist/markdown/ordered-list.d.ts +31 -0
- package/dist/markdown/ordered-list.js +40 -0
- package/dist/markdown/setup-link-blocks.d.ts +32 -0
- package/dist/markdown/setup-link-blocks.js +114 -0
- package/dist/markdown/setup-links/api-base.d.ts +2 -0
- package/dist/markdown/setup-links/api-base.js +5 -0
- package/dist/markdown/setup-links/approval-decision.d.ts +72 -0
- package/dist/markdown/setup-links/approval-decision.js +322 -0
- package/dist/markdown/setup-links/connector-handshake.d.ts +60 -0
- package/dist/markdown/setup-links/connector-handshake.js +71 -0
- package/dist/markdown/setup-links/connector-link-info.d.ts +3 -0
- package/dist/markdown/setup-links/connector-link-info.js +15 -0
- package/dist/markdown/setup-links/secret-intake-form.d.ts +14 -0
- package/dist/markdown/setup-links/secret-intake-form.js +168 -0
- package/dist/markdown/setup-links/setup-link-button.d.ts +26 -0
- package/dist/markdown/setup-links/setup-link-button.js +150 -0
- package/dist/markdown/setup-links/setup-link-close-finalize.d.ts +23 -0
- package/dist/markdown/setup-links/setup-link-close-finalize.js +33 -0
- package/dist/markdown/setup-links/util.d.ts +80 -0
- package/dist/markdown/setup-links/util.js +220 -0
- package/dist/markdown/stream-words.d.ts +68 -0
- package/dist/markdown/stream-words.js +113 -0
- package/dist/markdown/unified-markdown-utils.d.ts +68 -0
- package/dist/markdown/unified-markdown-utils.js +151 -0
- package/dist/markdown/unified-markdown.d.ts +46 -0
- package/dist/markdown/unified-markdown.js +293 -0
- package/dist/primitives/accordion.d.ts +7 -0
- package/dist/primitives/accordion.js +18 -0
- package/dist/primitives/alert-dialog.d.ts +19 -0
- package/dist/primitives/alert-dialog.js +50 -0
- package/dist/primitives/alert.d.ts +13 -0
- package/dist/primitives/alert.js +67 -0
- package/dist/primitives/avatar.d.ts +11 -0
- package/dist/primitives/avatar.js +23 -0
- package/dist/primitives/back-pill.d.ts +13 -0
- package/dist/primitives/back-pill.js +18 -0
- package/dist/primitives/badge.d.ts +10 -0
- package/dist/primitives/badge.js +42 -0
- package/dist/primitives/breadcrumb.d.ts +11 -0
- package/dist/primitives/breadcrumb.js +28 -0
- package/dist/primitives/bubble.d.ts +20 -0
- package/dist/primitives/bubble.js +38 -0
- package/dist/primitives/button-group.d.ts +9 -0
- package/dist/primitives/button-group.js +32 -0
- package/dist/primitives/button.d.ts +13 -0
- package/dist/primitives/button.js +67 -0
- package/dist/primitives/calendar.d.ts +4 -0
- package/dist/primitives/calendar.js +39 -0
- package/dist/primitives/card.d.ts +96 -0
- package/dist/primitives/card.js +291 -0
- package/dist/primitives/chain-of-thought.d.ts +75 -0
- package/dist/primitives/chain-of-thought.js +66 -0
- package/dist/primitives/chart.d.ts +65 -0
- package/dist/primitives/chart.js +118 -0
- package/dist/primitives/checkbox-group.d.ts +19 -0
- package/dist/primitives/checkbox-group.js +41 -0
- package/dist/primitives/checkbox.d.ts +14 -0
- package/dist/primitives/checkbox.js +27 -0
- package/dist/primitives/collapsible.d.ts +5 -0
- package/dist/primitives/collapsible.js +14 -0
- package/dist/primitives/command.d.ts +58 -0
- package/dist/primitives/command.js +135 -0
- package/dist/primitives/confirm-dialog.d.ts +19 -0
- package/dist/primitives/confirm-dialog.js +30 -0
- package/dist/primitives/context-menu.d.ts +48 -0
- package/dist/primitives/context-menu.js +94 -0
- package/dist/primitives/count-badge.d.ts +26 -0
- package/dist/primitives/count-badge.js +26 -0
- package/dist/primitives/data-grid.d.ts +24 -0
- package/dist/primitives/data-grid.js +107 -0
- package/dist/primitives/date-range-picker.d.ts +119 -0
- package/dist/primitives/date-range-picker.js +190 -0
- package/dist/primitives/definition-list.d.ts +15 -0
- package/dist/primitives/definition-list.js +26 -0
- package/dist/primitives/dialog.d.ts +32 -0
- package/dist/primitives/dialog.js +54 -0
- package/dist/primitives/disclosure.d.ts +121 -0
- package/dist/primitives/disclosure.js +138 -0
- package/dist/primitives/dot-matrix/dotm-3x3-10.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-10.js +29 -0
- package/dist/primitives/dot-matrix/dotm-3x3-12.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-12.js +19 -0
- package/dist/primitives/dot-matrix/dotm-3x3-13.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-13.js +19 -0
- package/dist/primitives/dot-matrix/dotm-3x3-15.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-15.js +22 -0
- package/dist/primitives/dot-matrix/dotm-3x3-16.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-16.js +5 -0
- package/dist/primitives/dot-matrix/dotm-3x3-18.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-18.js +5 -0
- package/dist/primitives/dot-matrix/dotm-3x3-19.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-19.js +5 -0
- package/dist/primitives/dot-matrix/dotm-3x3-2.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-2.js +3 -0
- package/dist/primitives/dot-matrix/dotm-3x3-20.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-20.js +5 -0
- package/dist/primitives/dot-matrix/dotm-3x3-21.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-21.js +5 -0
- package/dist/primitives/dot-matrix/dotm-3x3-3.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-3.js +3 -0
- package/dist/primitives/dot-matrix/dotm-3x3-4.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-4.js +3 -0
- package/dist/primitives/dot-matrix/dotm-3x3-5.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-5.js +3 -0
- package/dist/primitives/dot-matrix/dotm-3x3-6.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-6.js +19 -0
- package/dist/primitives/dot-matrix/dotm-3x3-7.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-7.js +19 -0
- package/dist/primitives/dot-matrix/dotm-3x3-8.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-8.js +19 -0
- package/dist/primitives/dot-matrix/dotm-3x3-9.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-3x3-9.js +23 -0
- package/dist/primitives/dot-matrix/dotm-circular-1.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-1.js +28 -0
- package/dist/primitives/dot-matrix/dotm-circular-10.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-10.js +40 -0
- package/dist/primitives/dot-matrix/dotm-circular-11.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-11.js +37 -0
- package/dist/primitives/dot-matrix/dotm-circular-12.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-12.js +42 -0
- package/dist/primitives/dot-matrix/dotm-circular-14.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-14.js +37 -0
- package/dist/primitives/dot-matrix/dotm-circular-15.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-15.js +49 -0
- package/dist/primitives/dot-matrix/dotm-circular-17.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-17.js +31 -0
- package/dist/primitives/dot-matrix/dotm-circular-2.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-2.js +37 -0
- package/dist/primitives/dot-matrix/dotm-circular-3.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-3.js +54 -0
- package/dist/primitives/dot-matrix/dotm-circular-4.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-4.js +35 -0
- package/dist/primitives/dot-matrix/dotm-circular-5.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-5.js +30 -0
- package/dist/primitives/dot-matrix/dotm-circular-6.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-6.js +37 -0
- package/dist/primitives/dot-matrix/dotm-circular-7.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-7.js +25 -0
- package/dist/primitives/dot-matrix/dotm-circular-8.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-8.js +26 -0
- package/dist/primitives/dot-matrix/dotm-circular-9.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-circular-9.js +41 -0
- package/dist/primitives/dot-matrix/dotm-square-1.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-1.js +27 -0
- package/dist/primitives/dot-matrix/dotm-square-10.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-10.js +27 -0
- package/dist/primitives/dot-matrix/dotm-square-11.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-11.js +25 -0
- package/dist/primitives/dot-matrix/dotm-square-12.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-12.js +28 -0
- package/dist/primitives/dot-matrix/dotm-square-13.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-13.js +45 -0
- package/dist/primitives/dot-matrix/dotm-square-14.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-14.js +38 -0
- package/dist/primitives/dot-matrix/dotm-square-15.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-15.js +31 -0
- package/dist/primitives/dot-matrix/dotm-square-16.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-16.js +33 -0
- package/dist/primitives/dot-matrix/dotm-square-17.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-17.js +27 -0
- package/dist/primitives/dot-matrix/dotm-square-18.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-18.js +29 -0
- package/dist/primitives/dot-matrix/dotm-square-19.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-19.js +74 -0
- package/dist/primitives/dot-matrix/dotm-square-2.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-2.js +72 -0
- package/dist/primitives/dot-matrix/dotm-square-20.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-20.js +79 -0
- package/dist/primitives/dot-matrix/dotm-square-3.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-3.js +23 -0
- package/dist/primitives/dot-matrix/dotm-square-4.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-4.js +41 -0
- package/dist/primitives/dot-matrix/dotm-square-5.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-5.js +23 -0
- package/dist/primitives/dot-matrix/dotm-square-6.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-6.js +20 -0
- package/dist/primitives/dot-matrix/dotm-square-7.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-7.js +43 -0
- package/dist/primitives/dot-matrix/dotm-square-8.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-8.js +57 -0
- package/dist/primitives/dot-matrix/dotm-square-9.d.ts +4 -0
- package/dist/primitives/dot-matrix/dotm-square-9.js +89 -0
- package/dist/primitives/dot-matrix/session-dot-matrix.d.ts +46 -0
- package/dist/primitives/dot-matrix/session-dot-matrix.js +153 -0
- package/dist/primitives/drawer.d.ts +15 -0
- package/dist/primitives/drawer.js +37 -0
- package/dist/primitives/dropdown-menu.d.ts +52 -0
- package/dist/primitives/dropdown-menu.js +114 -0
- package/dist/primitives/emoji-picker.d.ts +15 -0
- package/dist/primitives/emoji-picker.js +137 -0
- package/dist/primitives/emoji-tint.d.ts +41 -0
- package/dist/primitives/emoji-tint.js +131 -0
- package/dist/primitives/empty-state.d.ts +14 -0
- package/dist/primitives/empty-state.js +23 -0
- package/dist/primitives/empty.d.ts +11 -0
- package/dist/primitives/empty.js +33 -0
- package/dist/primitives/entity-avatar.d.ts +84 -0
- package/dist/primitives/entity-avatar.js +106 -0
- package/dist/primitives/error-boundary.d.ts +24 -0
- package/dist/primitives/error-boundary.js +25 -0
- package/dist/primitives/error-state.d.ts +12 -0
- package/dist/primitives/error-state.js +21 -0
- package/dist/primitives/faded-scroll-area.d.ts +8 -0
- package/dist/primitives/faded-scroll-area.js +80 -0
- package/dist/primitives/favicon-avatar.d.ts +32 -0
- package/dist/primitives/favicon-avatar.js +18 -0
- package/dist/primitives/field.d.ts +15 -0
- package/dist/primitives/field.js +48 -0
- package/dist/primitives/file-tree.d.ts +32 -0
- package/dist/primitives/file-tree.js +30 -0
- package/dist/primitives/glyph-face.d.ts +18 -0
- package/dist/primitives/glyph-face.js +37 -0
- package/dist/primitives/glyph-paths-source.d.ts +2 -0
- package/dist/primitives/glyph-paths-source.js +40 -0
- package/dist/primitives/glyph-paths.generated.d.ts +2 -0
- package/dist/primitives/glyph-paths.generated.js +207 -0
- package/dist/primitives/glyph-picker.d.ts +22 -0
- package/dist/primitives/glyph-picker.js +118 -0
- package/dist/primitives/glyph-registry.d.ts +36 -0
- package/dist/primitives/glyph-registry.js +479 -0
- package/dist/primitives/glyph-tint.d.ts +6 -0
- package/dist/primitives/glyph-tint.js +93 -0
- package/dist/primitives/hint.d.ts +14 -0
- package/dist/primitives/hint.js +12 -0
- package/dist/primitives/histogram-bars.d.ts +38 -0
- package/dist/primitives/histogram-bars.js +93 -0
- package/dist/primitives/hover-card.d.ts +28 -0
- package/dist/primitives/hover-card.js +40 -0
- package/dist/primitives/icon-provider.d.ts +23 -0
- package/dist/primitives/icon-provider.js +30 -0
- package/dist/primitives/info-banner.d.ts +14 -0
- package/dist/primitives/info-banner.js +72 -0
- package/dist/primitives/inline-meta.d.ts +6 -0
- package/dist/primitives/inline-meta.js +8 -0
- package/dist/primitives/input-group.d.ts +19 -0
- package/dist/primitives/input-group.js +73 -0
- package/dist/primitives/input.d.ts +26 -0
- package/dist/primitives/input.js +23 -0
- package/dist/primitives/item.d.ts +23 -0
- package/dist/primitives/item.js +67 -0
- package/dist/primitives/kbd.d.ts +3 -0
- package/dist/primitives/kbd.js +20 -0
- package/dist/primitives/kortix-asterisk.d.ts +6 -0
- package/dist/primitives/kortix-asterisk.js +17 -0
- package/dist/primitives/kortix-icons.d.ts +2 -0
- package/dist/primitives/kortix-icons.js +17 -0
- package/dist/primitives/kortix-loader.d.ts +76 -0
- package/dist/primitives/kortix-loader.js +74 -0
- package/dist/primitives/kortix-logo.d.ts +30 -0
- package/dist/primitives/kortix-logo.js +47 -0
- package/dist/primitives/label.d.ts +4 -0
- package/dist/primitives/label.js +9 -0
- package/dist/primitives/list.d.ts +15 -0
- package/dist/primitives/list.js +25 -0
- package/dist/primitives/loading.d.ts +19 -0
- package/dist/primitives/loading.js +31 -0
- package/dist/primitives/local-time.d.ts +34 -0
- package/dist/primitives/local-time.js +60 -0
- package/dist/primitives/map.d.ts +101 -0
- package/dist/primitives/map.js +257 -0
- package/dist/primitives/marker.d.ts +14 -0
- package/dist/primitives/marker.js +28 -0
- package/dist/primitives/menu-recipe.d.ts +102 -0
- package/dist/primitives/menu-recipe.js +129 -0
- package/dist/primitives/mermaid-render.d.ts +52 -0
- package/dist/primitives/mermaid-render.js +135 -0
- package/dist/primitives/mermaid-renderer.d.ts +13 -0
- package/dist/primitives/mermaid-renderer.js +262 -0
- package/dist/primitives/message.d.ts +15 -0
- package/dist/primitives/message.js +26 -0
- package/dist/primitives/modal.d.ts +107 -0
- package/dist/primitives/modal.js +181 -0
- package/dist/primitives/navigation-menu.d.ts +16 -0
- package/dist/primitives/navigation-menu.js +35 -0
- package/dist/primitives/page-search-bar.d.ts +11 -0
- package/dist/primitives/page-search-bar.js +13 -0
- package/dist/primitives/paper-wallpaper-shaders.d.ts +14 -0
- package/dist/primitives/paper-wallpaper-shaders.js +73 -0
- package/dist/primitives/phone-input.d.ts +7 -0
- package/dist/primitives/phone-input.js +59 -0
- package/dist/primitives/pixel-kortix-mark.d.ts +13 -0
- package/dist/primitives/pixel-kortix-mark.js +40 -0
- package/dist/primitives/popover.d.ts +10 -0
- package/dist/primitives/popover.js +40 -0
- package/dist/primitives/portal.d.ts +5 -0
- package/dist/primitives/portal.js +17 -0
- package/dist/primitives/preview-image.d.ts +17 -0
- package/dist/primitives/preview-image.js +59 -0
- package/dist/primitives/progress-ring.d.ts +6 -0
- package/dist/primitives/progress-ring.js +9 -0
- package/dist/primitives/progress.d.ts +6 -0
- package/dist/primitives/progress.js +8 -0
- package/dist/primitives/project-icon-picker.d.ts +11 -0
- package/dist/primitives/project-icon-picker.js +56 -0
- package/dist/primitives/radio-group.d.ts +12 -0
- package/dist/primitives/radio-group.js +20 -0
- package/dist/primitives/resizable.d.ts +24 -0
- package/dist/primitives/resizable.js +16 -0
- package/dist/primitives/scroll-area.d.ts +5 -0
- package/dist/primitives/scroll-area.js +11 -0
- package/dist/primitives/section-card.d.ts +37 -0
- package/dist/primitives/section-card.js +14 -0
- package/dist/primitives/section.d.ts +10 -0
- package/dist/primitives/section.js +22 -0
- package/dist/primitives/select.d.ts +25 -0
- package/dist/primitives/select.js +61 -0
- package/dist/primitives/separator.d.ts +4 -0
- package/dist/primitives/separator.js +8 -0
- package/dist/primitives/settings-row.d.ts +54 -0
- package/dist/primitives/settings-row.js +43 -0
- package/dist/primitives/settings-section-header.d.ts +13 -0
- package/dist/primitives/settings-section-header.js +11 -0
- package/dist/primitives/settings-subsection-header.d.ts +48 -0
- package/dist/primitives/settings-subsection-header.js +37 -0
- package/dist/primitives/shader-safe.d.ts +48 -0
- package/dist/primitives/shader-safe.js +74 -0
- package/dist/primitives/sheet.d.ts +35 -0
- package/dist/primitives/sheet.js +56 -0
- package/dist/primitives/sidebar-context.d.ts +72 -0
- package/dist/primitives/sidebar-context.js +36 -0
- package/dist/primitives/sidebar-menu-primitives.d.ts +38 -0
- package/dist/primitives/sidebar-menu-primitives.js +97 -0
- package/dist/primitives/sidebar-panel.d.ts +36 -0
- package/dist/primitives/sidebar-panel.js +265 -0
- package/dist/primitives/sidebar-peek.d.ts +27 -0
- package/dist/primitives/sidebar-peek.js +70 -0
- package/dist/primitives/sidebar-width.d.ts +48 -0
- package/dist/primitives/sidebar-width.js +62 -0
- package/dist/primitives/sidebar.d.ts +18 -0
- package/dist/primitives/sidebar.js +194 -0
- package/dist/primitives/skeleton.d.ts +3 -0
- package/dist/primitives/skeleton.js +6 -0
- package/dist/primitives/slider-native.d.ts +7 -0
- package/dist/primitives/slider-native.js +16 -0
- package/dist/primitives/slider.d.ts +14 -0
- package/dist/primitives/slider.js +48 -0
- package/dist/primitives/sliding-tab-indicator.d.ts +61 -0
- package/dist/primitives/sliding-tab-indicator.js +128 -0
- package/dist/primitives/split-sheet.d.ts +61 -0
- package/dist/primitives/split-sheet.js +239 -0
- package/dist/primitives/spotlight-card.d.ts +8 -0
- package/dist/primitives/spotlight-card.js +43 -0
- package/dist/primitives/status-ring.d.ts +38 -0
- package/dist/primitives/status-ring.js +38 -0
- package/dist/primitives/status.d.ts +58 -0
- package/dist/primitives/status.js +76 -0
- package/dist/primitives/stepper.d.ts +28 -0
- package/dist/primitives/stepper.js +73 -0
- package/dist/primitives/switch.d.ts +8 -0
- package/dist/primitives/switch.js +131 -0
- package/dist/primitives/system-message.d.ts +23 -0
- package/dist/primitives/system-message.js +51 -0
- package/dist/primitives/table.d.ts +10 -0
- package/dist/primitives/table.js +28 -0
- package/dist/primitives/tabs.d.ts +73 -0
- package/dist/primitives/tabs.js +207 -0
- package/dist/primitives/tag.d.ts +7 -0
- package/dist/primitives/tag.js +22 -0
- package/dist/primitives/text-shimmer.d.ts +13 -0
- package/dist/primitives/text-shimmer.js +91 -0
- package/dist/primitives/textarea.d.ts +33 -0
- package/dist/primitives/textarea.js +87 -0
- package/dist/primitives/toast.d.ts +105 -0
- package/dist/primitives/toast.js +233 -0
- package/dist/primitives/toggle.d.ts +12 -0
- package/dist/primitives/toggle.js +26 -0
- package/dist/primitives/tooltip.d.ts +9 -0
- package/dist/primitives/tooltip.js +19 -0
- package/dist/primitives/trigger-variants.d.ts +14 -0
- package/dist/primitives/trigger-variants.js +67 -0
- package/dist/primitives/type-to-confirm-dialog.d.ts +88 -0
- package/dist/primitives/type-to-confirm-dialog.js +101 -0
- package/dist/primitives/typed-title-logic.d.ts +22 -0
- package/dist/primitives/typed-title-logic.js +33 -0
- package/dist/primitives/typed-title.d.ts +38 -0
- package/dist/primitives/typed-title.js +66 -0
- package/dist/primitives/typing-animation.d.ts +36 -0
- package/dist/primitives/typing-animation.js +141 -0
- package/dist/primitives/user-avatar.d.ts +47 -0
- package/dist/primitives/user-avatar.js +46 -0
- package/dist/primitives/wallpaper-shaders.d.ts +7 -0
- package/dist/primitives/wallpaper-shaders.js +50 -0
- package/dist/providers/motion-features.d.ts +1 -0
- package/dist/providers/motion-features.js +3 -0
- package/dist/providers/session-ids.d.ts +21 -0
- package/dist/providers/session-ids.js +13 -0
- package/dist/providers/ui-provider.d.ts +336 -0
- package/dist/providers/ui-provider.js +214 -0
- package/dist/providers/use-host-preview-url.d.ts +14 -0
- package/dist/providers/use-host-preview-url.js +32 -0
- package/dist/session/actions/project-session-list-helpers.d.ts +156 -0
- package/dist/session/actions/project-session-list-helpers.js +339 -0
- package/dist/session/actions/rename-session-cache.d.ts +35 -0
- package/dist/session/actions/rename-session-cache.js +50 -0
- package/dist/session/actions/session-delete-modal.d.ts +17 -0
- package/dist/session/actions/session-delete-modal.js +128 -0
- package/dist/session/actions/session-label.d.ts +107 -0
- package/dist/session/actions/session-label.js +149 -0
- package/dist/session/actions/use-rename-session.d.ts +9 -0
- package/dist/session/actions/use-rename-session.js +66 -0
- package/dist/session/actions/use-session-list-actions.d.ts +10 -0
- package/dist/session/actions/use-session-list-actions.js +51 -0
- package/dist/session/composer/ComposerAboveCard.d.ts +23 -0
- package/dist/session/composer/ComposerAboveCard.js +28 -0
- package/dist/session/composer/ComposerCard.d.ts +72 -0
- package/dist/session/composer/ComposerCard.js +59 -0
- package/dist/session/composer/agent-selector.d.ts +20 -0
- package/dist/session/composer/agent-selector.js +142 -0
- package/dist/session/composer/animated-placeholder.d.ts +65 -0
- package/dist/session/composer/animated-placeholder.js +119 -0
- package/dist/session/composer/attachment-submission.d.ts +184 -0
- package/dist/session/composer/attachment-submission.js +302 -0
- package/dist/session/composer/attachment-tile.d.ts +84 -0
- package/dist/session/composer/attachment-tile.js +124 -0
- package/dist/session/composer/attachment-tiles.d.ts +53 -0
- package/dist/session/composer/attachment-tiles.js +201 -0
- package/dist/session/composer/clipboard-files.d.ts +16 -0
- package/dist/session/composer/clipboard-files.js +23 -0
- package/dist/session/composer/command-attachments.d.ts +151 -0
- package/dist/session/composer/command-attachments.js +128 -0
- package/dist/session/composer/composer-agent-access.d.ts +83 -0
- package/dist/session/composer/composer-agent-access.js +89 -0
- package/dist/session/composer/composer-chat-input.d.ts +89 -0
- package/dist/session/composer/composer-chat-input.js +143 -0
- package/dist/session/composer/composer-draft-recovery.d.ts +42 -0
- package/dist/session/composer/composer-draft-recovery.js +83 -0
- package/dist/session/composer/composer-drop-zone.d.ts +22 -0
- package/dist/session/composer/composer-drop-zone.js +79 -0
- package/dist/session/composer/composer-logic.d.ts +395 -0
- package/dist/session/composer/composer-logic.js +389 -0
- package/dist/session/composer/composer-reset.d.ts +34 -0
- package/dist/session/composer/composer-reset.js +21 -0
- package/dist/session/composer/composer-text-metrics.d.ts +28 -0
- package/dist/session/composer/composer-text-metrics.js +28 -0
- package/dist/session/composer/composer-toolbar.d.ts +117 -0
- package/dist/session/composer/composer-toolbar.js +17 -0
- package/dist/session/composer/composer-underbar.d.ts +54 -0
- package/dist/session/composer/composer-underbar.js +56 -0
- package/dist/session/composer/composer.d.ts +356 -0
- package/dist/session/composer/composer.js +1426 -0
- package/dist/session/composer/context-ring.d.ts +6 -0
- package/dist/session/composer/context-ring.js +21 -0
- package/dist/session/composer/context-usage.d.ts +48 -0
- package/dist/session/composer/context-usage.js +93 -0
- package/dist/session/composer/delivery-chain.d.ts +28 -0
- package/dist/session/composer/delivery-chain.js +60 -0
- package/dist/session/composer/draft/composer-draft-store.d.ts +21 -0
- package/dist/session/composer/draft/composer-draft-store.js +41 -0
- package/dist/session/composer/draft/composer-draft.d.ts +142 -0
- package/dist/session/composer/draft/composer-draft.js +188 -0
- package/dist/session/composer/draft/draft-uploads.d.ts +29 -0
- package/dist/session/composer/draft/draft-uploads.js +84 -0
- package/dist/session/composer/draft/use-composer-draft.d.ts +49 -0
- package/dist/session/composer/draft/use-composer-draft.js +169 -0
- package/dist/session/composer/editor/composer-editor.d.ts +266 -0
- package/dist/session/composer/editor/composer-editor.js +436 -0
- package/dist/session/composer/editor/extensions.d.ts +65 -0
- package/dist/session/composer/editor/extensions.js +80 -0
- package/dist/session/composer/editor/first-visual-line.d.ts +13 -0
- package/dist/session/composer/editor/first-visual-line.js +19 -0
- package/dist/session/composer/editor/mention-node.d.ts +51 -0
- package/dist/session/composer/editor/mention-node.js +125 -0
- package/dist/session/composer/editor/serialize.d.ts +69 -0
- package/dist/session/composer/editor/serialize.js +175 -0
- package/dist/session/composer/editor/suggestion.d.ts +87 -0
- package/dist/session/composer/editor/suggestion.js +76 -0
- package/dist/session/composer/entitlements-pending.d.ts +60 -0
- package/dist/session/composer/entitlements-pending.js +57 -0
- package/dist/session/composer/esc-to-stop.d.ts +50 -0
- package/dist/session/composer/esc-to-stop.js +24 -0
- package/dist/session/composer/held-commands.d.ts +44 -0
- package/dist/session/composer/held-commands.js +41 -0
- package/dist/session/composer/held-send-guard.d.ts +9 -0
- package/dist/session/composer/held-send-guard.js +26 -0
- package/dist/session/composer/hooks/use-composer-escape-stop.d.ts +6 -0
- package/dist/session/composer/hooks/use-composer-escape-stop.js +28 -0
- package/dist/session/composer/hooks/use-composer-focus.d.ts +33 -0
- package/dist/session/composer/hooks/use-composer-focus.js +181 -0
- package/dist/session/composer/hooks/use-debounced-value.d.ts +8 -0
- package/dist/session/composer/hooks/use-debounced-value.js +27 -0
- package/dist/session/composer/hooks/use-file-search.d.ts +137 -0
- package/dist/session/composer/hooks/use-file-search.js +205 -0
- package/dist/session/composer/hooks/use-latest-ref.d.ts +8 -0
- package/dist/session/composer/hooks/use-latest-ref.js +15 -0
- package/dist/session/composer/inbox-live-prompt.d.ts +9 -0
- package/dist/session/composer/inbox-live-prompt.js +10 -0
- package/dist/session/composer/inbox-row-claims.d.ts +64 -0
- package/dist/session/composer/inbox-row-claims.js +61 -0
- package/dist/session/composer/index.d.ts +24 -0
- package/dist/session/composer/index.js +22 -0
- package/dist/session/composer/menus/mention-controller.d.ts +40 -0
- package/dist/session/composer/menus/mention-controller.js +107 -0
- package/dist/session/composer/menus/mention-menu.d.ts +45 -0
- package/dist/session/composer/menus/mention-menu.js +80 -0
- package/dist/session/composer/menus/menu-items.d.ts +27 -0
- package/dist/session/composer/menus/menu-items.js +89 -0
- package/dist/session/composer/menus/menu-nav-state.d.ts +169 -0
- package/dist/session/composer/menus/menu-nav-state.js +194 -0
- package/dist/session/composer/menus/menu-navigation.d.ts +3 -0
- package/dist/session/composer/menus/menu-navigation.js +29 -0
- package/dist/session/composer/menus/menu-selection.d.ts +15 -0
- package/dist/session/composer/menus/menu-selection.js +23 -0
- package/dist/session/composer/menus/menu-shell.d.ts +69 -0
- package/dist/session/composer/menus/menu-shell.js +91 -0
- package/dist/session/composer/menus/mount.d.ts +79 -0
- package/dist/session/composer/menus/mount.js +128 -0
- package/dist/session/composer/menus/slash-actions.d.ts +58 -0
- package/dist/session/composer/menus/slash-actions.js +69 -0
- package/dist/session/composer/menus/slash-controller.d.ts +80 -0
- package/dist/session/composer/menus/slash-controller.js +152 -0
- package/dist/session/composer/menus/slash-files.d.ts +69 -0
- package/dist/session/composer/menus/slash-files.js +97 -0
- package/dist/session/composer/menus/slash-items.d.ts +86 -0
- package/dist/session/composer/menus/slash-items.js +168 -0
- package/dist/session/composer/menus/slash-menu.d.ts +44 -0
- package/dist/session/composer/menus/slash-menu.js +138 -0
- package/dist/session/composer/pasted-text.d.ts +25 -0
- package/dist/session/composer/pasted-text.js +55 -0
- package/dist/session/composer/queue-projection.d.ts +102 -0
- package/dist/session/composer/queue-projection.js +144 -0
- package/dist/session/composer/queued-message-restore.d.ts +58 -0
- package/dist/session/composer/queued-message-restore.js +67 -0
- package/dist/session/composer/queued-prompt-edit.d.ts +79 -0
- package/dist/session/composer/queued-prompt-edit.js +114 -0
- package/dist/session/composer/queued-prompt-list.d.ts +36 -0
- package/dist/session/composer/queued-prompt-list.js +84 -0
- package/dist/session/composer/quote-list.d.ts +47 -0
- package/dist/session/composer/quote-list.js +41 -0
- package/dist/session/composer/reasoning-effort-selector.d.ts +36 -0
- package/dist/session/composer/reasoning-effort-selector.js +121 -0
- package/dist/session/composer/send-blockers.d.ts +101 -0
- package/dist/session/composer/send-blockers.js +122 -0
- package/dist/session/composer/send-stop-control.d.ts +39 -0
- package/dist/session/composer/send-stop-control.js +68 -0
- package/dist/session/composer/sent-attachment-previews.d.ts +59 -0
- package/dist/session/composer/sent-attachment-previews.js +128 -0
- package/dist/session/composer/session-chat-input.d.ts +8 -0
- package/dist/session/composer/session-chat-input.js +7 -0
- package/dist/session/composer/session-composer-readiness.d.ts +173 -0
- package/dist/session/composer/session-composer-readiness.js +158 -0
- package/dist/session/composer/stores/queued-draft-store.d.ts +46 -0
- package/dist/session/composer/stores/queued-draft-store.js +33 -0
- package/dist/session/composer/stores/session-composer-handoff-store.d.ts +125 -0
- package/dist/session/composer/stores/session-composer-handoff-store.js +142 -0
- package/dist/session/composer/stores/session-composer-prefill-store.d.ts +54 -0
- package/dist/session/composer/stores/session-composer-prefill-store.js +57 -0
- package/dist/session/composer/submit-latch.d.ts +9 -0
- package/dist/session/composer/submit-latch.js +27 -0
- package/dist/session/composer/token-progress.d.ts +35 -0
- package/dist/session/composer/token-progress.js +102 -0
- package/dist/session/composer/types.d.ts +60 -0
- package/dist/session/composer/types.js +9 -0
- package/dist/session/composer/uploaded-file-refs.d.ts +51 -0
- package/dist/session/composer/uploaded-file-refs.js +90 -0
- package/dist/session/composer/use-instant-session-send.d.ts +82 -0
- package/dist/session/composer/use-instant-session-send.js +383 -0
- package/dist/session/header/compact-modal.d.ts +10 -0
- package/dist/session/header/compact-modal.js +24 -0
- package/dist/session/header/export-transcript-modal.d.ts +31 -0
- package/dist/session/header/export-transcript-modal.js +158 -0
- package/dist/session/header/session-changes-indicator.d.ts +3 -0
- package/dist/session/header/session-changes-indicator.js +82 -0
- package/dist/session/header/session-config-indicator.d.ts +34 -0
- package/dist/session/header/session-config-indicator.js +127 -0
- package/dist/session/header/session-pending-approvals-indicator.d.ts +3 -0
- package/dist/session/header/session-pending-approvals-indicator.js +43 -0
- package/dist/session/header/session-reload-progress-view.d.ts +4 -0
- package/dist/session/header/session-reload-progress-view.js +12 -0
- package/dist/session/header/session-reminders-indicator.d.ts +3 -0
- package/dist/session/header/session-reminders-indicator.js +78 -0
- package/dist/session/header/session-site-header.d.ts +12 -0
- package/dist/session/header/session-site-header.js +287 -0
- package/dist/session/header/session-title-input.d.ts +20 -0
- package/dist/session/header/session-title-input.js +56 -0
- package/dist/session/header/subagent-hover-card.d.ts +23 -0
- package/dist/session/header/subagent-hover-card.js +35 -0
- package/dist/session/index.d.ts +65 -0
- package/dist/session/index.js +63 -0
- package/dist/session/media/image-output-path.d.ts +9 -0
- package/dist/session/media/image-output-path.js +43 -0
- package/dist/session/media/image-preview.d.ts +11 -0
- package/dist/session/media/image-preview.js +13 -0
- package/dist/session/media/sandbox-image.d.ts +24 -0
- package/dist/session/media/sandbox-image.js +144 -0
- package/dist/session/media/sandbox-url-detector.d.ts +29 -0
- package/dist/session/media/sandbox-url-detector.js +180 -0
- package/dist/session/models/ask-owner-for-credits-button.d.ts +7 -0
- package/dist/session/models/ask-owner-for-credits-button.js +33 -0
- package/dist/session/models/chatgpt-connection-action.d.ts +22 -0
- package/dist/session/models/chatgpt-connection-action.js +33 -0
- package/dist/session/models/model-availability.d.ts +48 -0
- package/dist/session/models/model-availability.js +40 -0
- package/dist/session/models/model-connection-gate.d.ts +38 -0
- package/dist/session/models/model-connection-gate.js +76 -0
- package/dist/session/models/model-grouping.d.ts +85 -0
- package/dist/session/models/model-grouping.js +125 -0
- package/dist/session/models/model-search-empty.d.ts +6 -0
- package/dist/session/models/model-search-empty.js +10 -0
- package/dist/session/models/model-selector.d.ts +86 -0
- package/dist/session/models/model-selector.js +328 -0
- package/dist/session/models/model-tags.d.ts +27 -0
- package/dist/session/models/model-tags.js +35 -0
- package/dist/session/models/provider-failure-recovery.d.ts +11 -0
- package/dist/session/models/provider-failure-recovery.js +12 -0
- package/dist/session/models/use-model-connection-gate.d.ts +57 -0
- package/dist/session/models/use-model-connection-gate.js +162 -0
- package/dist/session/outcomes/anchor-outcomes.d.ts +18 -0
- package/dist/session/outcomes/anchor-outcomes.js +48 -0
- package/dist/session/outcomes/change-request-outcomes.d.ts +28 -0
- package/dist/session/outcomes/change-request-outcomes.js +80 -0
- package/dist/session/outcomes/session-outcomes-provider.d.ts +14 -0
- package/dist/session/outcomes/session-outcomes-provider.js +79 -0
- package/dist/session/outcomes/turn-outcomes.d.ts +10 -0
- package/dist/session/outcomes/turn-outcomes.js +38 -0
- package/dist/session/overrides/provider-pool-draft-context.d.ts +17 -0
- package/dist/session/overrides/provider-pool-draft-context.js +26 -0
- package/dist/session/overrides/provider-pool-draft.d.ts +48 -0
- package/dist/session/overrides/provider-pool-draft.js +62 -0
- package/dist/session/overrides/provider-secret-pool-editor.d.ts +13 -0
- package/dist/session/overrides/provider-secret-pool-editor.js +110 -0
- package/dist/session/overrides/session-overrides-composer.d.ts +44 -0
- package/dist/session/overrides/session-overrides-composer.js +37 -0
- package/dist/session/overrides/session-overrides-control.d.ts +71 -0
- package/dist/session/overrides/session-overrides-control.js +71 -0
- package/dist/session/overrides/session-overrides-toolbar.d.ts +56 -0
- package/dist/session/overrides/session-overrides-toolbar.js +323 -0
- package/dist/session/panel/action-panel.d.ts +1 -0
- package/dist/session/panel/action-panel.js +28 -0
- package/dist/session/panel/advanced/advanced-panel.d.ts +15 -0
- package/dist/session/panel/advanced/advanced-panel.js +67 -0
- package/dist/session/panel/audit/audit-credential-label.d.ts +20 -0
- package/dist/session/panel/audit/audit-credential-label.js +22 -0
- package/dist/session/panel/diff-dialog.d.ts +7 -0
- package/dist/session/panel/diff-dialog.js +24 -0
- package/dist/session/panel/easy/app-preview.d.ts +19 -0
- package/dist/session/panel/easy/app-preview.js +270 -0
- package/dist/session/panel/easy/apps-card.d.ts +5 -0
- package/dist/session/panel/easy/apps-card.js +67 -0
- package/dist/session/panel/easy/context-card.d.ts +18 -0
- package/dist/session/panel/easy/context-card.js +150 -0
- package/dist/session/panel/easy/detail-view.d.ts +193 -0
- package/dist/session/panel/easy/detail-view.js +385 -0
- package/dist/session/panel/easy/easy-panel-logic.d.ts +187 -0
- package/dist/session/panel/easy/easy-panel-logic.js +241 -0
- package/dist/session/panel/easy/easy-panel.d.ts +1 -0
- package/dist/session/panel/easy/easy-panel.js +66 -0
- package/dist/session/panel/easy/file-preview.d.ts +58 -0
- package/dist/session/panel/easy/file-preview.js +250 -0
- package/dist/session/panel/easy/outputs-card.d.ts +22 -0
- package/dist/session/panel/easy/outputs-card.js +209 -0
- package/dist/session/panel/easy/panel-card.d.ts +58 -0
- package/dist/session/panel/easy/panel-card.js +44 -0
- package/dist/session/panel/easy/plan-card.d.ts +20 -0
- package/dist/session/panel/easy/plan-card.js +108 -0
- package/dist/session/panel/easy/preview-load.d.ts +193 -0
- package/dist/session/panel/easy/preview-load.js +165 -0
- package/dist/session/panel/easy/step-detail-body.d.ts +24 -0
- package/dist/session/panel/easy/step-detail-body.js +33 -0
- package/dist/session/panel/easy/step-icon.d.ts +6 -0
- package/dist/session/panel/easy/step-icon.js +44 -0
- package/dist/session/panel/index.d.ts +17 -0
- package/dist/session/panel/index.js +17 -0
- package/dist/session/panel/mobile-tool-drawer.d.ts +5 -0
- package/dist/session/panel/mobile-tool-drawer.js +42 -0
- package/dist/session/panel/open-session-quick-view.d.ts +6 -0
- package/dist/session/panel/open-session-quick-view.js +76 -0
- package/dist/session/panel/panel-fallback.d.ts +8 -0
- package/dist/session/panel/panel-fallback.js +62 -0
- package/dist/session/panel/session-action-panel-column.d.ts +11 -0
- package/dist/session/panel/session-action-panel-column.js +180 -0
- package/dist/session/panel/session-audit-panel.d.ts +4 -0
- package/dist/session/panel/session-audit-panel.js +100 -0
- package/dist/session/panel/session-audit-shared.d.ts +102 -0
- package/dist/session/panel/session-audit-shared.js +188 -0
- package/dist/session/panel/session-changes-shared.d.ts +57 -0
- package/dist/session/panel/session-changes-shared.js +92 -0
- package/dist/session/panel/session-detail-panel.d.ts +1 -0
- package/dist/session/panel/session-detail-panel.js +50 -0
- package/dist/session/panel/session-diff-viewer.d.ts +12 -0
- package/dist/session/panel/session-diff-viewer.js +60 -0
- package/dist/session/panel/session-files-explorer-logic.d.ts +47 -0
- package/dist/session/panel/session-files-explorer-logic.js +48 -0
- package/dist/session/panel/session-files-explorer.d.ts +38 -0
- package/dist/session/panel/session-files-explorer.js +114 -0
- package/dist/session/panel/session-files-panel.d.ts +22 -0
- package/dist/session/panel/session-files-panel.js +98 -0
- package/dist/session/panel/session-files-store-registry.d.ts +3 -0
- package/dist/session/panel/session-files-store-registry.js +23 -0
- package/dist/session/panel/session-panel-header.d.ts +15 -0
- package/dist/session/panel/session-panel-header.js +23 -0
- package/dist/session/panel/session-panel-provider.d.ts +59 -0
- package/dist/session/panel/session-panel-provider.js +569 -0
- package/dist/session/panel/session-panel-sizing.d.ts +82 -0
- package/dist/session/panel/session-panel-sizing.js +109 -0
- package/dist/session/panel/session-wallpaper-layer.d.ts +13 -0
- package/dist/session/panel/session-wallpaper-layer.js +17 -0
- package/dist/session/panel/shared/action-navigator-logic.d.ts +44 -0
- package/dist/session/panel/shared/action-navigator-logic.js +69 -0
- package/dist/session/panel/shared/action-navigator.d.ts +11 -0
- package/dist/session/panel/shared/action-navigator.js +65 -0
- package/dist/session/panel/shared/collect-tool-parts.d.ts +38 -0
- package/dist/session/panel/shared/collect-tool-parts.js +56 -0
- package/dist/session/panel/shared/deliverable-readiness.d.ts +22 -0
- package/dist/session/panel/shared/deliverable-readiness.js +34 -0
- package/dist/session/panel/shared/derive-panels.d.ts +81 -0
- package/dist/session/panel/shared/derive-panels.js +475 -0
- package/dist/session/panel/shared/latest-run.d.ts +9 -0
- package/dist/session/panel/shared/latest-run.js +22 -0
- package/dist/session/panel/shared/output-priority.d.ts +40 -0
- package/dist/session/panel/shared/output-priority.js +119 -0
- package/dist/session/panel/shared/run-outcome.d.ts +13 -0
- package/dist/session/panel/shared/run-outcome.js +34 -0
- package/dist/session/panel/shared/use-deliverable-readiness.d.ts +9 -0
- package/dist/session/panel/shared/use-deliverable-readiness.js +90 -0
- package/dist/session/panel/shared/use-panel-derivations.d.ts +23 -0
- package/dist/session/panel/shared/use-panel-derivations.js +64 -0
- package/dist/session/panel/shared/use-panel-handoffs.d.ts +13 -0
- package/dist/session/panel/shared/use-panel-handoffs.js +170 -0
- package/dist/session/panel/use-session-panel-layout.d.ts +22 -0
- package/dist/session/panel/use-session-panel-layout.js +222 -0
- package/dist/session/panel/use-session-panel-state.d.ts +19 -0
- package/dist/session/panel/use-session-panel-state.js +116 -0
- package/dist/session/participants/session-participants.d.ts +29 -0
- package/dist/session/participants/session-participants.js +58 -0
- package/dist/session/print/load-entire-history.d.ts +66 -0
- package/dist/session/print/load-entire-history.js +61 -0
- package/dist/session/print/print-chain.d.ts +64 -0
- package/dist/session/print/print-chain.js +69 -0
- package/dist/session/print/session-print-header.d.ts +26 -0
- package/dist/session/print/session-print-header.js +32 -0
- package/dist/session/print/use-session-print.d.ts +45 -0
- package/dist/session/print/use-session-print.js +108 -0
- package/dist/session/prompts/approval-request.d.ts +195 -0
- package/dist/session/prompts/approval-request.js +514 -0
- package/dist/session/prompts/question-prompt.d.ts +26 -0
- package/dist/session/prompts/question-prompt.js +224 -0
- package/dist/session/prompts/session-approval-prompt.d.ts +68 -0
- package/dist/session/prompts/session-approval-prompt.js +169 -0
- package/dist/session/prompts/session-approval-review.d.ts +85 -0
- package/dist/session/prompts/session-approval-review.js +176 -0
- package/dist/session/prompts/session-permission-prompt.d.ts +19 -0
- package/dist/session/prompts/session-permission-prompt.js +223 -0
- package/dist/session/scope/create-scoped-session.d.ts +12 -0
- package/dist/session/scope/create-scoped-session.js +28 -0
- package/dist/session/scope/session-scope-control.d.ts +31 -0
- package/dist/session/scope/session-scope-control.js +83 -0
- package/dist/session/scope/session-scope-model.d.ts +113 -0
- package/dist/session/scope/session-scope-model.js +249 -0
- package/dist/session/scope/session-scope-toolbar.d.ts +22 -0
- package/dist/session/scope/session-scope-toolbar.js +76 -0
- package/dist/session/scope/use-session-scope.d.ts +61 -0
- package/dist/session/scope/use-session-scope.js +206 -0
- package/dist/session/status/agent-git-reconciliation.d.ts +2 -0
- package/dist/session/status/agent-git-reconciliation.js +32 -0
- package/dist/session/status/previous-repository-session.d.ts +17 -0
- package/dist/session/status/previous-repository-session.js +130 -0
- package/dist/session/status/provisioning-failure.d.ts +22 -0
- package/dist/session/status/provisioning-failure.js +97 -0
- package/dist/session/status/reload-forensics.d.ts +77 -0
- package/dist/session/status/reload-forensics.js +200 -0
- package/dist/session/status/sandbox-loading-boundary.d.ts +3 -0
- package/dist/session/status/sandbox-loading-boundary.js +43 -0
- package/dist/session/status/session-busy-indicator.d.ts +19 -0
- package/dist/session/status/session-busy-indicator.js +55 -0
- package/dist/session/status/session-chat-busy.d.ts +17 -0
- package/dist/session/status/session-chat-busy.js +15 -0
- package/dist/session/status/session-error-banner.d.ts +82 -0
- package/dist/session/status/session-error-banner.js +327 -0
- package/dist/session/status/session-load-state.d.ts +98 -0
- package/dist/session/status/session-load-state.js +86 -0
- package/dist/session/status/session-notice-banner.d.ts +27 -0
- package/dist/session/status/session-notice-banner.js +27 -0
- package/dist/session/status/session-resume.d.ts +126 -0
- package/dist/session/status/session-resume.js +142 -0
- package/dist/session/status/session-route-prefetch.d.ts +40 -0
- package/dist/session/status/session-route-prefetch.js +18 -0
- package/dist/session/status/session-start-gate.d.ts +27 -0
- package/dist/session/status/session-start-gate.js +25 -0
- package/dist/session/status/session-starting-loader.d.ts +83 -0
- package/dist/session/status/session-starting-loader.js +190 -0
- package/dist/session/status/session-surface.d.ts +175 -0
- package/dist/session/status/session-surface.js +129 -0
- package/dist/session/status/session-tab-title-sync.d.ts +20 -0
- package/dist/session/status/session-tab-title-sync.js +44 -0
- package/dist/session/status/session-tab-title.d.ts +33 -0
- package/dist/session/status/session-tab-title.js +60 -0
- package/dist/session/status/session-terminal-state.d.ts +70 -0
- package/dist/session/status/session-terminal-state.js +62 -0
- package/dist/session/status/stop-refusal.d.ts +14 -0
- package/dist/session/status/stop-refusal.js +21 -0
- package/dist/session/status/use-readiness-settling.d.ts +18 -0
- package/dist/session/status/use-readiness-settling.js +43 -0
- package/dist/session/thread/chat-minimap-items.d.ts +94 -0
- package/dist/session/thread/chat-minimap-items.js +234 -0
- package/dist/session/thread/chat-minimap.d.ts +8 -0
- package/dist/session/thread/chat-minimap.js +138 -0
- package/dist/session/thread/detect-command.d.ts +13 -0
- package/dist/session/thread/detect-command.js +117 -0
- package/dist/session/thread/first-prompt-handover.d.ts +54 -0
- package/dist/session/thread/first-prompt-handover.js +78 -0
- package/dist/session/thread/mention-chip.d.ts +51 -0
- package/dist/session/thread/mention-chip.js +86 -0
- package/dist/session/thread/mention-segments.d.ts +47 -0
- package/dist/session/thread/mention-segments.js +117 -0
- package/dist/session/thread/message-parsing.d.ts +80 -0
- package/dist/session/thread/message-parsing.js +244 -0
- package/dist/session/thread/optimistic-turn.d.ts +89 -0
- package/dist/session/thread/optimistic-turn.js +207 -0
- package/dist/session/thread/persisted-turn-failure.d.ts +25 -0
- package/dist/session/thread/persisted-turn-failure.js +36 -0
- package/dist/session/thread/pinned-root-session.d.ts +16 -0
- package/dist/session/thread/pinned-root-session.js +18 -0
- package/dist/session/thread/plan-surface.d.ts +9 -0
- package/dist/session/thread/plan-surface.js +29 -0
- package/dist/session/thread/reply-context.d.ts +38 -0
- package/dist/session/thread/reply-context.js +179 -0
- package/dist/session/thread/session-body.d.ts +28 -0
- package/dist/session/thread/session-body.js +50 -0
- package/dist/session/thread/session-chat.d.ts +62 -0
- package/dist/session/thread/session-chat.js +3657 -0
- package/dist/session/thread/session-context-message-explorer.d.ts +44 -0
- package/dist/session/thread/session-context-message-explorer.js +118 -0
- package/dist/session/thread/session-context-metrics.d.ts +24 -0
- package/dist/session/thread/session-context-metrics.js +44 -0
- package/dist/session/thread/session-context-modal.d.ts +34 -0
- package/dist/session/thread/session-context-modal.js +228 -0
- package/dist/session/thread/session-context-sub-sessions.d.ts +16 -0
- package/dist/session/thread/session-context-sub-sessions.js +142 -0
- package/dist/session/thread/session-history-scroll.d.ts +55 -0
- package/dist/session/thread/session-history-scroll.js +88 -0
- package/dist/session/thread/session-history.d.ts +22 -0
- package/dist/session/thread/session-history.js +90 -0
- package/dist/session/thread/session-older-autoload.d.ts +82 -0
- package/dist/session/thread/session-older-autoload.js +55 -0
- package/dist/session/thread/session-older-loading.d.ts +41 -0
- package/dist/session/thread/session-older-loading.js +57 -0
- package/dist/session/thread/session-thread.d.ts +26 -0
- package/dist/session/thread/session-thread.js +13 -0
- package/dist/session/thread/session-transcript-class.d.ts +19 -0
- package/dist/session/thread/session-transcript-class.js +19 -0
- package/dist/session/thread/session-turn-meta-rows.d.ts +44 -0
- package/dist/session/thread/session-turn-meta-rows.js +82 -0
- package/dist/session/thread/session-turn-meta.d.ts +9 -0
- package/dist/session/thread/session-turn-meta.js +54 -0
- package/dist/session/thread/session-welcome.d.ts +1 -0
- package/dist/session/thread/session-welcome.js +7 -0
- package/dist/session/thread/sub-session-modal-content.d.ts +8 -0
- package/dist/session/thread/sub-session-modal-content.js +23 -0
- package/dist/session/thread/sub-session-modal.d.ts +2 -0
- package/dist/session/thread/sub-session-modal.js +14 -0
- package/dist/session/thread/transcript.d.ts +351 -0
- package/dist/session/thread/transcript.js +1213 -0
- package/dist/session/tool/foreign-tool-calls.d.ts +11 -0
- package/dist/session/tool/foreign-tool-calls.js +60 -0
- package/dist/session/tool/generic-tool.d.ts +16 -0
- package/dist/session/tool/generic-tool.js +74 -0
- package/dist/session/tool/inline-permission-reply.d.ts +8 -0
- package/dist/session/tool/inline-permission-reply.js +18 -0
- package/dist/session/tool/shared/error-and-connector.d.ts +19 -0
- package/dist/session/tool/shared/error-and-connector.js +106 -0
- package/dist/session/tool/shared/file-list.d.ts +35 -0
- package/dist/session/tool/shared/file-list.js +91 -0
- package/dist/session/tool/shared/infrastructure-contexts.d.ts +65 -0
- package/dist/session/tool/shared/infrastructure-contexts.js +101 -0
- package/dist/session/tool/shared/infrastructure-files.d.ts +60 -0
- package/dist/session/tool/shared/infrastructure-files.js +129 -0
- package/dist/session/tool/shared/infrastructure-output.d.ts +32 -0
- package/dist/session/tool/shared/infrastructure-output.js +93 -0
- package/dist/session/tool/shared/infrastructure-parts.d.ts +18 -0
- package/dist/session/tool/shared/infrastructure-parts.js +201 -0
- package/dist/session/tool/shared/infrastructure-preview.d.ts +60 -0
- package/dist/session/tool/shared/infrastructure-preview.js +245 -0
- package/dist/session/tool/shared/infrastructure-row-header.d.ts +53 -0
- package/dist/session/tool/shared/infrastructure-row-header.js +133 -0
- package/dist/session/tool/shared/infrastructure-rows.d.ts +2 -0
- package/dist/session/tool/shared/infrastructure-rows.js +153 -0
- package/dist/session/tool/shared/infrastructure.d.ts +9 -0
- package/dist/session/tool/shared/infrastructure.js +10 -0
- package/dist/session/tool/shared/output-block.d.ts +66 -0
- package/dist/session/tool/shared/output-block.js +71 -0
- package/dist/session/tool/shared/patch-helpers.d.ts +26 -0
- package/dist/session/tool/shared/patch-helpers.js +52 -0
- package/dist/session/tool/shared/registry.d.ts +17 -0
- package/dist/session/tool/shared/registry.js +55 -0
- package/dist/session/tool/shared/result-card.d.ts +28 -0
- package/dist/session/tool/shared/result-card.js +54 -0
- package/dist/session/tool/shared/session-helpers.d.ts +17 -0
- package/dist/session/tool/shared/session-helpers.js +116 -0
- package/dist/session/tool/shared/show-helpers.d.ts +96 -0
- package/dist/session/tool/shared/show-helpers.js +359 -0
- package/dist/session/tool/shared/structured-output.d.ts +4 -0
- package/dist/session/tool/shared/structured-output.js +51 -0
- package/dist/session/tool/shared/sub-agent.d.ts +57 -0
- package/dist/session/tool/shared/sub-agent.js +103 -0
- package/dist/session/tool/shared/surface.d.ts +80 -0
- package/dist/session/tool/shared/surface.js +84 -0
- package/dist/session/tool/shared/todo-helpers.d.ts +24 -0
- package/dist/session/tool/shared/todo-helpers.js +95 -0
- package/dist/session/tool/shared/tool-action-bar.d.ts +21 -0
- package/dist/session/tool/shared/tool-action-bar.js +14 -0
- package/dist/session/tool/shared/types.d.ts +42 -0
- package/dist/session/tool/shared/types.js +1 -0
- package/dist/session/tool/shared/web-source-row.d.ts +4 -0
- package/dist/session/tool/shared/web-source-row.js +26 -0
- package/dist/session/tool/show-group-renderer.d.ts +19 -0
- package/dist/session/tool/show-group-renderer.js +22 -0
- package/dist/session/tool/tool-error.d.ts +4 -0
- package/dist/session/tool/tool-error.js +30 -0
- package/dist/session/tool/tool-meta.d.ts +15 -0
- package/dist/session/tool/tool-meta.js +27 -0
- package/dist/session/tool/tool-part-renderer.d.ts +39 -0
- package/dist/session/tool/tool-part-renderer.js +150 -0
- package/dist/session/tool/tool-renderers.d.ts +8 -0
- package/dist/session/tool/tool-renderers.js +8 -0
- package/dist/session/tool/tools/agent-message-tool.d.ts +2 -0
- package/dist/session/tool/tools/agent-message-tool.js +29 -0
- package/dist/session/tool/tools/agent-spawn-tool.d.ts +2 -0
- package/dist/session/tool/tools/agent-spawn-tool.js +69 -0
- package/dist/session/tool/tools/agent-status-tool.d.ts +2 -0
- package/dist/session/tool/tools/agent-status-tool.js +47 -0
- package/dist/session/tool/tools/agent-stop-tool.d.ts +2 -0
- package/dist/session/tool/tools/agent-stop-tool.js +17 -0
- package/dist/session/tool/tools/agent-task-update-tool.d.ts +2 -0
- package/dist/session/tool/tools/agent-task-update-tool.js +43 -0
- package/dist/session/tool/tools/apply-patch-tool.d.ts +2 -0
- package/dist/session/tool/tools/apply-patch-tool.js +122 -0
- package/dist/session/tool/tools/bash-tool.d.ts +54 -0
- package/dist/session/tool/tools/bash-tool.js +279 -0
- package/dist/session/tool/tools/channel-send-card.d.ts +18 -0
- package/dist/session/tool/tools/channel-send-card.js +42 -0
- package/dist/session/tool/tools/channel-send.d.ts +38 -0
- package/dist/session/tool/tools/channel-send.js +191 -0
- package/dist/session/tool/tools/codemode-tool.d.ts +21 -0
- package/dist/session/tool/tools/codemode-tool.js +106 -0
- package/dist/session/tool/tools/connector-get-tool.d.ts +2 -0
- package/dist/session/tool/tools/connector-get-tool.js +22 -0
- package/dist/session/tool/tools/connector-list-tool.d.ts +2 -0
- package/dist/session/tool/tools/connector-list-tool.js +27 -0
- package/dist/session/tool/tools/connector-setup-tool.d.ts +2 -0
- package/dist/session/tool/tools/connector-setup-tool.js +39 -0
- package/dist/session/tool/tools/connector-tools.d.ts +5 -0
- package/dist/session/tool/tools/connector-tools.js +129 -0
- package/dist/session/tool/tools/edit-tool.d.ts +2 -0
- package/dist/session/tool/tools/edit-tool.js +123 -0
- package/dist/session/tool/tools/get-mem-tool.d.ts +2 -0
- package/dist/session/tool/tools/get-mem-tool.js +57 -0
- package/dist/session/tool/tools/glob-tool.d.ts +2 -0
- package/dist/session/tool/tools/glob-tool.js +70 -0
- package/dist/session/tool/tools/grep-tool.d.ts +2 -0
- package/dist/session/tool/tools/grep-tool.js +48 -0
- package/dist/session/tool/tools/image-gen-tool.d.ts +2 -0
- package/dist/session/tool/tools/image-gen-tool.js +61 -0
- package/dist/session/tool/tools/image-search-tool.d.ts +2 -0
- package/dist/session/tool/tools/image-search-tool.js +90 -0
- package/dist/session/tool/tools/list-tool.d.ts +2 -0
- package/dist/session/tool/tools/list-tool.js +57 -0
- package/dist/session/tool/tools/memory-search-tool.d.ts +11 -0
- package/dist/session/tool/tools/memory-search-tool.js +65 -0
- package/dist/session/tool/tools/memory-tool.d.ts +51 -0
- package/dist/session/tool/tools/memory-tool.js +175 -0
- package/dist/session/tool/tools/presentation-gen-tool.d.ts +2 -0
- package/dist/session/tool/tools/presentation-gen-tool.js +83 -0
- package/dist/session/tool/tools/project-create-tool.d.ts +2 -0
- package/dist/session/tool/tools/project-create-tool.js +39 -0
- package/dist/session/tool/tools/project-delete-tool.d.ts +2 -0
- package/dist/session/tool/tools/project-delete-tool.js +55 -0
- package/dist/session/tool/tools/project-get-tool.d.ts +2 -0
- package/dist/session/tool/tools/project-get-tool.js +24 -0
- package/dist/session/tool/tools/project-list-tool.d.ts +2 -0
- package/dist/session/tool/tools/project-list-tool.js +22 -0
- package/dist/session/tool/tools/project-select-tool.d.ts +2 -0
- package/dist/session/tool/tools/project-select-tool.js +36 -0
- package/dist/session/tool/tools/pty-kill-tool.d.ts +2 -0
- package/dist/session/tool/tools/pty-kill-tool.js +26 -0
- package/dist/session/tool/tools/pty-read-tool.d.ts +21 -0
- package/dist/session/tool/tools/pty-read-tool.js +100 -0
- package/dist/session/tool/tools/pty-spawn-tool.d.ts +2 -0
- package/dist/session/tool/tools/pty-spawn-tool.js +54 -0
- package/dist/session/tool/tools/pty-write-tool.d.ts +2 -0
- package/dist/session/tool/tools/pty-write-tool.js +20 -0
- package/dist/session/tool/tools/question-tool.d.ts +2 -0
- package/dist/session/tool/tools/question-tool.js +79 -0
- package/dist/session/tool/tools/read-tool.d.ts +2 -0
- package/dist/session/tool/tools/read-tool.js +72 -0
- package/dist/session/tool/tools/register.d.ts +55 -0
- package/dist/session/tool/tools/register.js +55 -0
- package/dist/session/tool/tools/removed-connector-tool.d.ts +2 -0
- package/dist/session/tool/tools/removed-connector-tool.js +21 -0
- package/dist/session/tool/tools/scrape-webpage-tool.d.ts +2 -0
- package/dist/session/tool/tools/scrape-webpage-tool.js +81 -0
- package/dist/session/tool/tools/session-get-tool.d.ts +3 -0
- package/dist/session/tool/tools/session-get-tool.js +45 -0
- package/dist/session/tool/tools/session-lineage-tool.d.ts +2 -0
- package/dist/session/tool/tools/session-lineage-tool.js +28 -0
- package/dist/session/tool/tools/session-list-background-tool.d.ts +2 -0
- package/dist/session/tool/tools/session-list-background-tool.js +31 -0
- package/dist/session/tool/tools/session-message-tool.d.ts +2 -0
- package/dist/session/tool/tools/session-message-tool.js +23 -0
- package/dist/session/tool/tools/session-read-tool.d.ts +2 -0
- package/dist/session/tool/tools/session-read-tool.js +79 -0
- package/dist/session/tool/tools/session-search-tool.d.ts +2 -0
- package/dist/session/tool/tools/session-search-tool.js +31 -0
- package/dist/session/tool/tools/session-spawn-tool.d.ts +2 -0
- package/dist/session/tool/tools/session-spawn-tool.js +58 -0
- package/dist/session/tool/tools/session-spawn-urls.d.ts +16 -0
- package/dist/session/tool/tools/session-spawn-urls.js +26 -0
- package/dist/session/tool/tools/session-stats-tool.d.ts +2 -0
- package/dist/session/tool/tools/session-stats-tool.js +17 -0
- package/dist/session/tool/tools/show-tool.d.ts +13 -0
- package/dist/session/tool/tools/show-tool.js +197 -0
- package/dist/session/tool/tools/skill-tool.d.ts +10 -0
- package/dist/session/tool/tools/skill-tool.js +47 -0
- package/dist/session/tool/tools/task-delete-tool.d.ts +2 -0
- package/dist/session/tool/tools/task-delete-tool.js +21 -0
- package/dist/session/tool/tools/task-done-tool.d.ts +2 -0
- package/dist/session/tool/tools/task-done-tool.js +19 -0
- package/dist/session/tool/tools/task-list-tool.d.ts +2 -0
- package/dist/session/tool/tools/task-list-tool.js +21 -0
- package/dist/session/tool/tools/task-tool.d.ts +24 -0
- package/dist/session/tool/tools/task-tool.js +140 -0
- package/dist/session/tool/tools/todo-write-tool.d.ts +2 -0
- package/dist/session/tool/tools/todo-write-tool.js +53 -0
- package/dist/session/tool/tools/triggers-tool.d.ts +2 -0
- package/dist/session/tool/tools/triggers-tool.js +132 -0
- package/dist/session/tool/tools/video-gen-tool.d.ts +2 -0
- package/dist/session/tool/tools/video-gen-tool.js +21 -0
- package/dist/session/tool/tools/web-fetch-tool.d.ts +2 -0
- package/dist/session/tool/tools/web-fetch-tool.js +53 -0
- package/dist/session/tool/tools/web-search-tool.d.ts +2 -0
- package/dist/session/tool/tools/web-search-tool.js +64 -0
- package/dist/session/tool/tools/write-tool.d.ts +23 -0
- package/dist/session/tool/tools/write-tool.js +92 -0
- package/dist/session/turn/activity-burst.d.ts +65 -0
- package/dist/session/turn/activity-burst.js +117 -0
- package/dist/session/turn/activity-file-chips.d.ts +44 -0
- package/dist/session/turn/activity-file-chips.js +238 -0
- package/dist/session/turn/activity-group-step.d.ts +101 -0
- package/dist/session/turn/activity-group-step.js +62 -0
- package/dist/session/turn/activity-step.d.ts +34 -0
- package/dist/session/turn/activity-step.js +116 -0
- package/dist/session/turn/answered-question-step.d.ts +15 -0
- package/dist/session/turn/answered-question-step.js +58 -0
- package/dist/session/turn/attachment-preview.d.ts +7 -0
- package/dist/session/turn/attachment-preview.js +46 -0
- package/dist/session/turn/burst-step-body.d.ts +20 -0
- package/dist/session/turn/burst-step-body.js +64 -0
- package/dist/session/turn/burst-summary-trigger.d.ts +7 -0
- package/dist/session/turn/burst-summary-trigger.js +17 -0
- package/dist/session/turn/chain-step-trigger.d.ts +7 -0
- package/dist/session/turn/chain-step-trigger.js +7 -0
- package/dist/session/turn/channel-brand.d.ts +22 -0
- package/dist/session/turn/channel-brand.js +34 -0
- package/dist/session/turn/channel-message.d.ts +27 -0
- package/dist/session/turn/channel-message.js +33 -0
- package/dist/session/turn/checkpoint.d.ts +8 -0
- package/dist/session/turn/checkpoint.js +11 -0
- package/dist/session/turn/compaction-card.d.ts +41 -0
- package/dist/session/turn/compaction-card.js +82 -0
- package/dist/session/turn/expandable-output.d.ts +87 -0
- package/dist/session/turn/expandable-output.js +147 -0
- package/dist/session/turn/fallback-row.d.ts +10 -0
- package/dist/session/turn/fallback-row.js +31 -0
- package/dist/session/turn/message-author-label.d.ts +5 -0
- package/dist/session/turn/message-author-label.js +63 -0
- package/dist/session/turn/message-author.d.ts +47 -0
- package/dist/session/turn/message-author.js +75 -0
- package/dist/session/turn/message-time-label.d.ts +14 -0
- package/dist/session/turn/message-time-label.js +103 -0
- package/dist/session/turn/plan-anchor.d.ts +92 -0
- package/dist/session/turn/plan-anchor.js +59 -0
- package/dist/session/turn/plan-card.d.ts +113 -0
- package/dist/session/turn/plan-card.js +316 -0
- package/dist/session/turn/queued-prompt-bubbles.d.ts +23 -0
- package/dist/session/turn/queued-prompt-bubbles.js +27 -0
- package/dist/session/turn/same-parts.d.ts +21 -0
- package/dist/session/turn/same-parts.js +31 -0
- package/dist/session/turn/served-model.d.ts +63 -0
- package/dist/session/turn/served-model.js +92 -0
- package/dist/session/turn/source-pill.d.ts +26 -0
- package/dist/session/turn/source-pill.js +20 -0
- package/dist/session/turn/status-elapsed.d.ts +12 -0
- package/dist/session/turn/status-elapsed.js +14 -0
- package/dist/session/turn/streaming-cadence.d.ts +69 -0
- package/dist/session/turn/streaming-cadence.js +304 -0
- package/dist/session/turn/thought-chain-step.d.ts +58 -0
- package/dist/session/turn/thought-chain-step.js +161 -0
- package/dist/session/turn/throttled-markdown.d.ts +38 -0
- package/dist/session/turn/throttled-markdown.js +123 -0
- package/dist/session/turn/turn-viewport.d.ts +146 -0
- package/dist/session/turn/turn-viewport.js +165 -0
- package/dist/session/turn/turn-work-accordion.d.ts +12 -0
- package/dist/session/turn/turn-work-accordion.js +25 -0
- package/dist/session/turn/user-message.d.ts +353 -0
- package/dist/session/turn/user-message.js +1089 -0
- package/dist/styles/components.css +187 -0
- package/dist/styles/dotmatrix-loader.css +1239 -0
- package/dist/styles/fonts.css +46 -0
- package/dist/styles/print.css +461 -0
- package/dist/styles/tailwind.css +10 -0
- package/dist/styles/theme.css +1060 -0
- package/dist/styles/tokens.css +146 -0
- package/dist/styles.css +2 -0
- package/dist/terminal/index.d.ts +7 -0
- package/dist/terminal/index.js +7 -0
- package/dist/terminal/pty-attach-status.d.ts +15 -0
- package/dist/terminal/pty-attach-status.js +42 -0
- package/dist/terminal/pty-connection.d.ts +83 -0
- package/dist/terminal/pty-connection.js +86 -0
- package/dist/terminal/pty-terminal-sanitize.d.ts +2 -0
- package/dist/terminal/pty-terminal-sanitize.js +26 -0
- package/dist/terminal/pty-terminal.d.ts +19 -0
- package/dist/terminal/pty-terminal.js +162 -0
- package/dist/terminal/session-terminal-connect-bar.d.ts +15 -0
- package/dist/terminal/session-terminal-connect-bar.js +67 -0
- package/dist/terminal/session-terminal-panel.d.ts +17 -0
- package/dist/terminal/session-terminal-panel.js +242 -0
- package/dist/terminal/terminal-card-gate.d.ts +51 -0
- package/dist/terminal/terminal-card-gate.js +54 -0
- package/dist/terminal/use-pty-connection.d.ts +59 -0
- package/dist/terminal/use-pty-connection.js +380 -0
- package/dist/theme/index.d.ts +3 -0
- package/dist/theme/index.js +5 -0
- package/dist/theme/theme-scope.d.ts +24 -0
- package/dist/theme/theme-scope.js +39 -0
- package/dist/theme/theme.d.ts +123 -0
- package/dist/theme/theme.js +224 -0
- package/dist/theme/wallpapers.d.ts +26 -0
- package/dist/theme/wallpapers.js +54 -0
- package/dist/workspace/home/access-requests-bell.d.ts +34 -0
- package/dist/workspace/home/access-requests-bell.js +48 -0
- package/dist/workspace/home/first-chat-name.d.ts +7 -0
- package/dist/workspace/home/first-chat-name.js +12 -0
- package/dist/workspace/home/first-chat.d.ts +39 -0
- package/dist/workspace/home/first-chat.js +101 -0
- package/dist/workspace/home/home-greeting.d.ts +34 -0
- package/dist/workspace/home/home-greeting.js +27 -0
- package/dist/workspace/home/mobile-app-promo.d.ts +7 -0
- package/dist/workspace/home/mobile-app-promo.js +55 -0
- package/dist/workspace/home/sandbox-picker.d.ts +13 -0
- package/dist/workspace/home/sandbox-picker.js +24 -0
- package/dist/workspace/home/welcome-body.d.ts +54 -0
- package/dist/workspace/home/welcome-body.js +67 -0
- package/dist/workspace/index.d.ts +25 -0
- package/dist/workspace/index.js +25 -0
- package/dist/workspace/instant-session-shell.d.ts +48 -0
- package/dist/workspace/instant-session-shell.js +216 -0
- package/dist/workspace/layout/new-session-create.d.ts +26 -0
- package/dist/workspace/layout/new-session-create.js +41 -0
- package/dist/workspace/layout/project-files-skeleton.d.ts +15 -0
- package/dist/workspace/layout/project-files-skeleton.js +19 -0
- package/dist/workspace/layout/project-files-view.d.ts +3 -0
- package/dist/workspace/layout/project-files-view.js +54 -0
- package/dist/workspace/layout/project-home.d.ts +39 -0
- package/dist/workspace/layout/project-home.js +195 -0
- package/dist/workspace/layout/resolve-files-ref.d.ts +29 -0
- package/dist/workspace/layout/resolve-files-ref.js +18 -0
- package/dist/workspace/layout/sidebar-cookie.d.ts +12 -0
- package/dist/workspace/layout/sidebar-cookie.js +17 -0
- package/dist/workspace/layout/use-project-home-send.d.ts +20 -0
- package/dist/workspace/layout/use-project-home-send.js +136 -0
- package/dist/workspace/new/account-param.d.ts +3 -0
- package/dist/workspace/new/account-param.js +34 -0
- package/dist/workspace/new/account-picker.d.ts +71 -0
- package/dist/workspace/new/account-picker.js +92 -0
- package/dist/workspace/new/advanced-fields.d.ts +30 -0
- package/dist/workspace/new/advanced-fields.js +261 -0
- package/dist/workspace/new/clone-param.d.ts +11 -0
- package/dist/workspace/new/clone-param.js +15 -0
- package/dist/workspace/new/create-workspace-key.d.ts +10 -0
- package/dist/workspace/new/create-workspace-key.js +106 -0
- package/dist/workspace/new/github-source.d.ts +136 -0
- package/dist/workspace/new/github-source.js +205 -0
- package/dist/workspace/new/github-user-authorization.d.ts +28 -0
- package/dist/workspace/new/github-user-authorization.js +37 -0
- package/dist/workspace/new/new-workspace-form.d.ts +179 -0
- package/dist/workspace/new/new-workspace-form.js +247 -0
- package/dist/workspace/new/repository-options.d.ts +89 -0
- package/dist/workspace/new/repository-options.js +126 -0
- package/dist/workspace/new/source-param.d.ts +19 -0
- package/dist/workspace/new/source-param.js +20 -0
- package/dist/workspace/new/use-creatable-accounts.d.ts +8 -0
- package/dist/workspace/new/use-creatable-accounts.js +24 -0
- package/dist/workspace/new/use-create-workspace.d.ts +520 -0
- package/dist/workspace/new/use-create-workspace.js +751 -0
- package/dist/workspace/new/use-project-quota.d.ts +24 -0
- package/dist/workspace/new/use-project-quota.js +30 -0
- package/dist/workspace/new/workspace-handoff.d.ts +52 -0
- package/dist/workspace/new/workspace-handoff.js +76 -0
- package/dist/workspace/new/workspace-name.d.ts +27 -0
- package/dist/workspace/new/workspace-name.js +71 -0
- package/dist/workspace/project-selector/project-selector-model.d.ts +99 -0
- package/dist/workspace/project-selector/project-selector-model.js +151 -0
- package/dist/workspace/projects/modal/github-import-pickers.d.ts +16 -0
- package/dist/workspace/projects/modal/github-import-pickers.js +78 -0
- package/dist/workspace/projects/modal/project-icon-field.d.ts +74 -0
- package/dist/workspace/projects/modal/project-icon-field.js +225 -0
- package/dist/workspace/projects/onboarding/app-logo.d.ts +5 -0
- package/dist/workspace/projects/onboarding/app-logo.js +18 -0
- package/dist/workspace/projects/onboarding/connect-app.d.ts +37 -0
- package/dist/workspace/projects/onboarding/connect-app.js +48 -0
- package/dist/workspace/projects/policies-panel.d.ts +58 -0
- package/dist/workspace/projects/policies-panel.js +270 -0
- package/dist/workspace/projects/session-shared-icon.d.ts +8 -0
- package/dist/workspace/projects/session-shared-icon.js +12 -0
- package/dist/workspace/projects/session-starter.d.ts +19 -0
- package/dist/workspace/projects/session-starter.js +17 -0
- package/dist/workspace/repository-disconnected.d.ts +12 -0
- package/dist/workspace/repository-disconnected.js +28 -0
- package/dist/workspace/review/approval-modal.d.ts +43 -0
- package/dist/workspace/review/approval-modal.js +91 -0
- package/dist/workspace/review/change-files.d.ts +3 -0
- package/dist/workspace/review/change-files.js +58 -0
- package/dist/workspace/review/hooks/use-review-items.d.ts +64 -0
- package/dist/workspace/review/hooks/use-review-items.js +109 -0
- package/dist/workspace/review/map.d.ts +24 -0
- package/dist/workspace/review/map.js +47 -0
- package/dist/workspace/review/mock-data.d.ts +10 -0
- package/dist/workspace/review/mock-data.js +408 -0
- package/dist/workspace/review/review-actions.d.ts +98 -0
- package/dist/workspace/review/review-actions.js +177 -0
- package/dist/workspace/review/review-center.d.ts +46 -0
- package/dist/workspace/review/review-center.js +798 -0
- package/dist/workspace/review/review-detail.d.ts +30 -0
- package/dist/workspace/review/review-detail.js +210 -0
- package/dist/workspace/review/review-meta.d.ts +59 -0
- package/dist/workspace/review/review-meta.js +100 -0
- package/dist/workspace/review/review-reducer.d.ts +51 -0
- package/dist/workspace/review/review-reducer.js +120 -0
- package/dist/workspace/review/types.d.ts +42 -0
- package/dist/workspace/review/types.js +16 -0
- package/dist/workspace/saved-session-skeleton-rows.d.ts +18 -0
- package/dist/workspace/saved-session-skeleton-rows.js +20 -0
- package/dist/workspace/saved-session-skeleton-shape.d.ts +65 -0
- package/dist/workspace/saved-session-skeleton-shape.js +75 -0
- package/dist/workspace/saved-session-skeleton.d.ts +7 -0
- package/dist/workspace/saved-session-skeleton.js +43 -0
- package/dist/workspace/session-workspace.d.ts +35 -0
- package/dist/workspace/session-workspace.js +234 -0
- package/dist/workspace/sessions/deleted-session-row.d.ts +11 -0
- package/dist/workspace/sessions/deleted-session-row.js +25 -0
- package/dist/workspace/sessions/project-sessions-helpers.d.ts +88 -0
- package/dist/workspace/sessions/project-sessions-helpers.js +208 -0
- package/dist/workspace/sessions/project-sessions-view.d.ts +3 -0
- package/dist/workspace/sessions/project-sessions-view.js +571 -0
- package/dist/workspace/sessions/session-detail.d.ts +10 -0
- package/dist/workspace/sessions/session-detail.js +20 -0
- package/dist/workspace/sessions/session-label-badges.d.ts +7 -0
- package/dist/workspace/sessions/session-label-badges.js +13 -0
- package/dist/workspace/sessions/session-owner-filters.d.ts +61 -0
- package/dist/workspace/sessions/session-owner-filters.js +106 -0
- package/dist/workspace/sessions/session-row.d.ts +57 -0
- package/dist/workspace/sessions/session-row.js +156 -0
- package/dist/workspace/sessions/session-starter-mark.d.ts +15 -0
- package/dist/workspace/sessions/session-starter-mark.js +53 -0
- package/dist/workspace/sessions/sessions-bulk-delete-dialog.d.ts +8 -0
- package/dist/workspace/sessions/sessions-bulk-delete-dialog.js +15 -0
- package/dist/workspace/sessions/sessions-empty-state.d.ts +16 -0
- package/dist/workspace/sessions/sessions-empty-state.js +25 -0
- package/dist/workspace/sessions/sessions-selection-bar.d.ts +15 -0
- package/dist/workspace/sessions/sessions-selection-bar.js +14 -0
- package/dist/workspace/sessions/sessions-toolbar.d.ts +18 -0
- package/dist/workspace/sessions/sessions-toolbar.js +40 -0
- package/dist/workspace/sidebar/customize-sidebar-modal.d.ts +9 -0
- package/dist/workspace/sidebar/customize-sidebar-modal.js +198 -0
- package/dist/workspace/sidebar/footer/project-apps-nav.d.ts +10 -0
- package/dist/workspace/sidebar/footer/project-apps-nav.js +34 -0
- package/dist/workspace/sidebar/footer/project-balance-warning.d.ts +10 -0
- package/dist/workspace/sidebar/footer/project-balance-warning.js +47 -0
- package/dist/workspace/sidebar/footer/project-computer-nav.d.ts +17 -0
- package/dist/workspace/sidebar/footer/project-computer-nav.js +71 -0
- package/dist/workspace/sidebar/footer/project-files-nav.d.ts +29 -0
- package/dist/workspace/sidebar/footer/project-files-nav.js +80 -0
- package/dist/workspace/sidebar/footer/project-manifest-upgrade-alert.d.ts +13 -0
- package/dist/workspace/sidebar/footer/project-manifest-upgrade-alert.js +48 -0
- package/dist/workspace/sidebar/footer/project-mcp-nav.d.ts +10 -0
- package/dist/workspace/sidebar/footer/project-mcp-nav.js +46 -0
- package/dist/workspace/sidebar/footer/project-rooms-nav.d.ts +9 -0
- package/dist/workspace/sidebar/footer/project-rooms-nav.js +32 -0
- package/dist/workspace/sidebar/footer/project-sandbox-alert.d.ts +3 -0
- package/dist/workspace/sidebar/footer/project-sandbox-alert.js +125 -0
- package/dist/workspace/sidebar/footer/project-upgrade-button.d.ts +6 -0
- package/dist/workspace/sidebar/footer/project-upgrade-button.js +46 -0
- package/dist/workspace/sidebar/footer/promo-nav-row.d.ts +10 -0
- package/dist/workspace/sidebar/footer/promo-nav-row.js +7 -0
- package/dist/workspace/sidebar/footer/sandbox-alert-state.d.ts +31 -0
- package/dist/workspace/sidebar/footer/sandbox-alert-state.js +47 -0
- package/dist/workspace/sidebar/footer/sandbox-health.d.ts +22 -0
- package/dist/workspace/sidebar/footer/sandbox-health.js +107 -0
- package/dist/workspace/sidebar/footer/sidebar-alert.d.ts +54 -0
- package/dist/workspace/sidebar/footer/sidebar-alert.js +86 -0
- package/dist/workspace/sidebar/invitations-menu-group.d.ts +6 -0
- package/dist/workspace/sidebar/invitations-menu-group.js +56 -0
- package/dist/workspace/sidebar/modal/rename-session-modal.d.ts +10 -0
- package/dist/workspace/sidebar/modal/rename-session-modal.js +41 -0
- package/dist/workspace/sidebar/modal/session-labels-modal.d.ts +13 -0
- package/dist/workspace/sidebar/modal/session-labels-modal.js +91 -0
- package/dist/workspace/sidebar/modal/session-labels.d.ts +10 -0
- package/dist/workspace/sidebar/modal/session-labels.js +17 -0
- package/dist/workspace/sidebar/modal/session-public-link-section.d.ts +13 -0
- package/dist/workspace/sidebar/modal/session-public-link-section.js +66 -0
- package/dist/workspace/sidebar/modal/share-session-access.d.ts +33 -0
- package/dist/workspace/sidebar/modal/share-session-access.js +44 -0
- package/dist/workspace/sidebar/modal/share-session-cache.d.ts +15 -0
- package/dist/workspace/sidebar/modal/share-session-cache.js +16 -0
- package/dist/workspace/sidebar/modal/share-session-modal.d.ts +8 -0
- package/dist/workspace/sidebar/modal/share-session-modal.js +109 -0
- package/dist/workspace/sidebar/nav-row-meta.d.ts +14 -0
- package/dist/workspace/sidebar/nav-row-meta.js +70 -0
- package/dist/workspace/sidebar/project-nav-items.d.ts +12 -0
- package/dist/workspace/sidebar/project-nav-items.js +99 -0
- package/dist/workspace/sidebar/project-session-list.d.ts +5 -0
- package/dist/workspace/sidebar/project-session-list.js +611 -0
- package/dist/workspace/sidebar/project-sidebar.d.ts +15 -0
- package/dist/workspace/sidebar/project-sidebar.js +101 -0
- package/dist/workspace/sidebar/session-brief-hover-card.d.ts +51 -0
- package/dist/workspace/sidebar/session-brief-hover-card.js +153 -0
- package/dist/workspace/sidebar/session-filter-menu.d.ts +79 -0
- package/dist/workspace/sidebar/session-filter-menu.js +253 -0
- package/dist/workspace/sidebar/session-grouping.d.ts +142 -0
- package/dist/workspace/sidebar/session-grouping.js +199 -0
- package/dist/workspace/sidebar/session-label-facet.d.ts +14 -0
- package/dist/workspace/sidebar/session-label-facet.js +19 -0
- package/dist/workspace/sidebar/session-open-intent.d.ts +30 -0
- package/dist/workspace/sidebar/session-open-intent.js +58 -0
- package/dist/workspace/sidebar/session-section-labels.d.ts +3 -0
- package/dist/workspace/sidebar/session-section-labels.js +4 -0
- package/dist/workspace/sidebar/session-source-icons.d.ts +19 -0
- package/dist/workspace/sidebar/session-source-icons.js +31 -0
- package/dist/workspace/sidebar/session-status-mark.d.ts +5 -0
- package/dist/workspace/sidebar/session-status-mark.js +24 -0
- package/dist/workspace/sidebar/session-title.d.ts +24 -0
- package/dist/workspace/sidebar/session-title.js +26 -0
- package/dist/workspace/sidebar/workspace-grouping.d.ts +83 -0
- package/dist/workspace/sidebar/workspace-grouping.js +135 -0
- package/dist/workspace/sidebar/workspace-menu-model.d.ts +12 -0
- package/dist/workspace/sidebar/workspace-menu-model.js +108 -0
- package/dist/workspace/sidebar/workspace-menu-section.d.ts +1 -0
- package/dist/workspace/sidebar/workspace-menu-section.js +124 -0
- package/package.json +2279 -4
- package/skills/kortix-ui/SKILL.md +150 -0
- package/skills/kortix-ui/references/custom-dashboard.md +471 -0
- package/skills/kortix-ui/references/modules.md +417 -0
- package/skills/kortix-ui/references/theming.md +107 -0
|
@@ -0,0 +1,1426 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { errorToast } from '../../primitives/toast.js';
|
|
4
|
+
import { useTranslations } from '../../i18n/index.js';
|
|
5
|
+
import { cn } from '../../lib/utils.js';
|
|
6
|
+
import { isImageFile } from '../../internal/lib/utils/file-utils.js';
|
|
7
|
+
import { usePromptAttachments, useRuntimeSessions } from '@kortix/sdk/react';
|
|
8
|
+
import { newPastedContentId, splitPastedContent, trimPastedText } from '../../_vendor/kortix-shared.js';
|
|
9
|
+
import { memo, useCallback, useEffect, useId, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore, } from 'react';
|
|
10
|
+
import { extractClipboardFiles } from './clipboard-files.js';
|
|
11
|
+
import { mergeFailedSubmissionFiles } from './composer-draft-recovery.js';
|
|
12
|
+
import { resolveComposerResetOnSend } from './composer-reset.js';
|
|
13
|
+
import { disownSentAttachmentPreviews, revokeUnsentPreview } from './sent-attachment-previews.js';
|
|
14
|
+
import { isModelRequiredButUnavailable, NO_MODEL_AVAILABLE_ACTION_MESSAGE, NO_MODEL_AVAILABLE_MESSAGE, resolveAvailableSelectedModel, modelRejectingAttachedImages, } from '../models/model-availability.js';
|
|
15
|
+
import { useModelConnectionGate } from '../models/use-model-connection-gate.js';
|
|
16
|
+
import { NO_AGENT_ACCESS_HINT, NO_AGENT_ACCESS_LABEL } from './composer-agent-access.js';
|
|
17
|
+
import { useComposerDropZone } from './composer-drop-zone.js';
|
|
18
|
+
import { useComposerEscapeStop } from './hooks/use-composer-escape-stop.js';
|
|
19
|
+
import { finishedDraftUploads, keepUnsentUploadFile, restoreDraftUploads } from './draft/draft-uploads.js';
|
|
20
|
+
import { useComposerDraft } from './draft/use-composer-draft.js';
|
|
21
|
+
import { commandBlocker, sendBlocker, sendBlockerMessage } from './send-blockers.js';
|
|
22
|
+
import { ComposerAboveCard, } from './ComposerAboveCard.js';
|
|
23
|
+
import { ComposerCard } from './ComposerCard.js';
|
|
24
|
+
import { handleBillingError } from '../../internal/lib/error-handler.js';
|
|
25
|
+
import { attachedFileUploadId, attachmentsBlockSend, captureAttachmentSubmission, dispatchLatched, planAttachmentReplacement, refusedFilesToast, runComposerSend, heldTraySizes, splitComposerFiles, stageComposerFiles, takeNewBillingRefusals, } from './attachment-submission.js';
|
|
26
|
+
import { draftWillRunCommand, planCommandAttachments, planUnresolvedCommandChip, readCommandChipLabel, } from './command-attachments.js';
|
|
27
|
+
import { appendComposerQuote, classifyPaste, isUndoKey, popPasteUndo, extractReplyQuotes, nextPastedTextFileName, planDraftSubmission, planFailedSendRecovery, planPrefillMerge, planQuoteRequests, removeComposerQuote, resolveEditorPlaceholder, restoreComposerQuotes, shouldApplyPrefill, shouldSubmitPrefill, textToDocument, } from './composer-logic.js';
|
|
28
|
+
import { getContextUsage } from './context-ring.js';
|
|
29
|
+
import { useComposerFocus } from './hooks/use-composer-focus.js';
|
|
30
|
+
import { useMenuRevalidation } from './hooks/use-file-search.js';
|
|
31
|
+
import { controlToOpenFor, localizedSlashActions } from './menus/slash-actions.js';
|
|
32
|
+
import { createSubmitLatch } from './submit-latch.js';
|
|
33
|
+
/**
|
|
34
|
+
* The composer's outer shell — max width, centering, and the horizontal gutter
|
|
35
|
+
* everything in the composer (notice bar, card, under-row, model connection
|
|
36
|
+
* bar) is measured from.
|
|
37
|
+
*
|
|
38
|
+
* The BASE gutter is `px-4` and it carries no breakpoint, deliberately. This
|
|
39
|
+
* was `px-2 sm:px-0`, and `sm:` is a VIEWPORT query answering a CONTAINER
|
|
40
|
+
* question. This element's width is set by the session layout — sidebar,
|
|
41
|
+
* action-panel column, and the browser/terminal/files detail panel — never by
|
|
42
|
+
* the window:
|
|
43
|
+
*
|
|
44
|
+
* - Action panel or a detail tab open on a 1512px screen: the viewport is
|
|
45
|
+
* still ≥640px, so `sm:px-0` zeroed the gutter while the chat column was
|
|
46
|
+
* only ~600px wide. The column is narrower than `max-w-210`, so `mx-auto`
|
|
47
|
+
* has no slack to donate and the card sat flush against the panel divider.
|
|
48
|
+
* - Everything closed: the column grows past `max-w-210`, `mx-auto` produces
|
|
49
|
+
* slack on both sides, and the gutter appears to "work" again.
|
|
50
|
+
*
|
|
51
|
+
* Same class, opposite result, decided by a query that cannot see the panel —
|
|
52
|
+
* which is exactly the "sometimes there's padding, sometimes there isn't" bug.
|
|
53
|
+
* A constant gutter is correct in all of them: when the column is wide the
|
|
54
|
+
* 16px is invisible inside the centering slack, and when it is narrow it is
|
|
55
|
+
* the only thing keeping the card off the edge.
|
|
56
|
+
*
|
|
57
|
+
* 16px is not arbitrary — it is the transcript's own gutter (`session-chat.tsx`:
|
|
58
|
+
* `mx-auto w-full max-w-3xl min-w-0 px-4 pt-6`). Whenever the column is
|
|
59
|
+
* narrower than either max-width — every panel-open case — the card's edges
|
|
60
|
+
* land on exactly the same rails as the messages above it.
|
|
61
|
+
*
|
|
62
|
+
* The gutter is equal on both sides. It used to carry `md:pr-1`, a right-side
|
|
63
|
+
* trim against the collapsed action-panel chevron rail, which then took ~37px
|
|
64
|
+
* of the row's width. That rail now takes no width (`COLLAPSED_RAIL_OFFSET` in
|
|
65
|
+
* `session-action-panel-column.tsx`), so the trim only shifted the card 5.5px
|
|
66
|
+
* right of center. A breakpoint may never ZERO this gutter — zero is what let
|
|
67
|
+
* the card touch the panel divider, and `composer-underbar.test.tsx` guards
|
|
68
|
+
* exactly that line.
|
|
69
|
+
*
|
|
70
|
+
* Do not add breakpoints. If this needs to respond to width,
|
|
71
|
+
* it has to be a container query on the chat column, not a media query — the
|
|
72
|
+
* media query cannot see the panel, which is the whole reason it broke before.
|
|
73
|
+
*/
|
|
74
|
+
export const COMPOSER_SHELL_CLASS = 'relative z-10 mx-auto w-full max-w-210 shrink-0 px-4';
|
|
75
|
+
/**
|
|
76
|
+
* The inset strip above the card that hosts `inputSlot` — the queued messages,
|
|
77
|
+
* the approval notice, the permission notice, and `QuestionPrompt`.
|
|
78
|
+
*
|
|
79
|
+
* `items-center` is load-bearing and it BITES: a flex column sizes each child
|
|
80
|
+
* to its content unless the child says otherwise, so anything mounted here that
|
|
81
|
+
* omits `w-full` renders as a narrow box floating in the middle of the strip,
|
|
82
|
+
* with a width that tracks whatever text happens to be inside it. Exported so
|
|
83
|
+
* the invariant is pinned by a test (composer-input-slot.test.tsx) rather than
|
|
84
|
+
* rediscovered by the next notice that gets added.
|
|
85
|
+
*/
|
|
86
|
+
export const COMPOSER_INPUT_SLOT_CLASS = 'bg-sidebar border-border flex w-full flex-col items-center gap-2 rounded-t-xl border border-b-0 p-1 empty:hidden';
|
|
87
|
+
/** Stable empty defaults so a fresh `[]` per render never breaks memoization. */
|
|
88
|
+
export const EMPTY_AGENTS = [];
|
|
89
|
+
export const EMPTY_COMMANDS = [];
|
|
90
|
+
export const EMPTY_MODELS = [];
|
|
91
|
+
export const EMPTY_VARIANTS = [];
|
|
92
|
+
export const EMPTY_SLASH_FILES = [];
|
|
93
|
+
const NO_QUOTE_REQUESTS = [];
|
|
94
|
+
/** Stable identities for the command-chip subscription below. */
|
|
95
|
+
const NO_SUBSCRIPTION = () => { };
|
|
96
|
+
const NO_COMMAND_CHIP = () => null;
|
|
97
|
+
const EMPTY_DOCUMENT = textToDocument('');
|
|
98
|
+
function setDocumentWithoutStealingFocus(handle, doc) {
|
|
99
|
+
if (!handle)
|
|
100
|
+
return;
|
|
101
|
+
const el = handle.getElement();
|
|
102
|
+
const wasFocused = !!el && (document.activeElement === el || el.contains(document.activeElement));
|
|
103
|
+
const previouslyFocused = wasFocused ? null : document.activeElement;
|
|
104
|
+
handle.setDocument(doc);
|
|
105
|
+
if (!wasFocused) {
|
|
106
|
+
previouslyFocused?.focus?.();
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
function ComposerImpl(props) {
|
|
110
|
+
const { onSend, promptAttachments: hostPromptAttachments, isBusy = false, sessionWorking, runtimeReady = true, onStop, stopDisabled = false, canStop = true, isSending = false, rewind, agents = EMPTY_AGENTS, selectedAgent = null, onAgentChange, noAccessibleAgents = false, commands = EMPTY_COMMANDS,
|
|
111
|
+
/** Whether the live command list has EVER resolved — see `planUnresolvedCommandChip`. */
|
|
112
|
+
commandsResolved = false, slashFiles = EMPTY_SLASH_FILES, onCommand, onHoldCommand, models = EMPTY_MODELS, selectedModel = null, onModelChange, modelDefaultControls, variants = EMPTY_VARIANTS, selectedVariant = null, onVariantChange, messages, sessionId, projectId, draftScope = null, draftActive = true, disabled = false, notice = null, onNoticeRetry, clearOnSend = true, modelRequired = false, modelsLoading = false, autoFocus, placeholder = 'Ask anything…', hint, onArrowUpAtStart, prefill = null, onPrefillApplied, attachRequestId = null, providers, onContextClick, onCompactClick, inputSlot, toolbarSlot, underbarPlacement = 'below', slashMenuPlacement = 'above', cardClassName, quoteRequests = NO_QUOTE_REQUESTS, onQuoteRequestsApplied, lockForQuestion = false, lockForApproval = false, onCustomAnswer, questionButtonLabel = null, questionCanAct = true, onQuestionAction, escCount = 0, parentClassName, } = props;
|
|
113
|
+
const tI18nComplete = useTranslations('hardcodedUi.i18nComplete');
|
|
114
|
+
const tModelGate = useTranslations('sessionUi.modelGate');
|
|
115
|
+
const tComposerAttachments = useTranslations('hardcodedUi.composerAttachments');
|
|
116
|
+
const tHardcodedUi = useTranslations('hardcodedUi');
|
|
117
|
+
const tThreads = useTranslations('threads');
|
|
118
|
+
const dockId = `composer-slash-dock-${useId().replace(/[^a-zA-Z0-9]/g, '')}`;
|
|
119
|
+
const [attachedFiles, setAttachedFiles] = useState([]);
|
|
120
|
+
// Synchronous mirror of `attachedFiles`, for the one reader that cannot
|
|
121
|
+
// wait for a React flush: the submit latch's stash (see `handleSubmit`).
|
|
122
|
+
const attachedFilesRef = useRef([]);
|
|
123
|
+
useEffect(() => {
|
|
124
|
+
attachedFilesRef.current = attachedFiles;
|
|
125
|
+
}, [attachedFiles]);
|
|
126
|
+
/**
|
|
127
|
+
* The reply quotes, in send order — the card above the input. Not part of
|
|
128
|
+
* the editor document: a send prepends them (`planDraftSubmission`).
|
|
129
|
+
* `quotesRef` is the synchronous mirror, for the same reader
|
|
130
|
+
* `attachedFilesRef` exists for, and `setQuoteList` writes both.
|
|
131
|
+
*/
|
|
132
|
+
const [quotes, setQuotes] = useState([]);
|
|
133
|
+
const quotesRef = useRef([]);
|
|
134
|
+
const nextQuoteIdRef = useRef(0);
|
|
135
|
+
const setQuoteList = useCallback((update) => {
|
|
136
|
+
const next = update(quotesRef.current);
|
|
137
|
+
if (next === quotesRef.current)
|
|
138
|
+
return;
|
|
139
|
+
quotesRef.current = next;
|
|
140
|
+
setQuotes(next);
|
|
141
|
+
}, []);
|
|
142
|
+
/** Append quote texts, each with a fresh local id. Blank and repeated texts are skipped. */
|
|
143
|
+
const appendQuoteTexts = useCallback((texts) => {
|
|
144
|
+
setQuoteList((current) => texts.reduce((list, text) => {
|
|
145
|
+
const next = appendComposerQuote(list, text, `quote-${nextQuoteIdRef.current + 1}`);
|
|
146
|
+
if (next !== list)
|
|
147
|
+
nextQuoteIdRef.current += 1;
|
|
148
|
+
return next;
|
|
149
|
+
}, current));
|
|
150
|
+
}, [setQuoteList]);
|
|
151
|
+
/** Put quotes that left with a draft back at the head of the list (`restoreComposerQuotes`). */
|
|
152
|
+
const restoreQuoteTexts = useCallback((texts) => {
|
|
153
|
+
setQuoteList((current) => restoreComposerQuotes(current, texts, () => `quote-${++nextQuoteIdRef.current}`));
|
|
154
|
+
}, [setQuoteList]);
|
|
155
|
+
const handleRemoveQuote = useCallback((id) => setQuoteList((current) => removeComposerQuote(current, id)), [setQuoteList]);
|
|
156
|
+
const quoteTexts = useMemo(() => quotes.map((quote) => quote.text), [quotes]);
|
|
157
|
+
/**
|
|
158
|
+
* The pasted-text tiles, in send order. Like the quotes, not part of the
|
|
159
|
+
* editor document: a send writes each as a `<pasted_content>` block ahead of
|
|
160
|
+
* the typed text (`planDraftSubmission`). `pastesRef` is the synchronous
|
|
161
|
+
* mirror, and `setPasteList` writes both.
|
|
162
|
+
*/
|
|
163
|
+
const [pastes, setPastes] = useState([]);
|
|
164
|
+
const pastesRef = useRef([]);
|
|
165
|
+
const setPasteList = useCallback((update) => {
|
|
166
|
+
const next = update(pastesRef.current);
|
|
167
|
+
if (next === pastesRef.current)
|
|
168
|
+
return;
|
|
169
|
+
pastesRef.current = next;
|
|
170
|
+
setPastes(next);
|
|
171
|
+
}, []);
|
|
172
|
+
/** Put tiles that left with a draft back at the head of the row, skipping ids already there. */
|
|
173
|
+
const restorePastes = useCallback((restored) => {
|
|
174
|
+
if (restored.length === 0)
|
|
175
|
+
return;
|
|
176
|
+
setPasteList((current) => [
|
|
177
|
+
...restored,
|
|
178
|
+
...current.filter((paste) => !restored.some((r) => r.id === paste.id)),
|
|
179
|
+
]);
|
|
180
|
+
}, [setPasteList]);
|
|
181
|
+
const removePaste = useCallback((id) => setPasteList((current) => current.filter((paste) => paste.id !== id)), [setPasteList]);
|
|
182
|
+
const quoteListLabels = useMemo(() => ({
|
|
183
|
+
count: tThreads('quoteCount', { count: quotes.length }),
|
|
184
|
+
expand: tThreads('expandQuotes'),
|
|
185
|
+
collapse: tThreads('collapseQuotes'),
|
|
186
|
+
remove: tHardcodedUi.raw('componentsSessionSessionChatInput.removeQuoteAriaLabel'),
|
|
187
|
+
}), [tThreads, tHardcodedUi, quotes.length]);
|
|
188
|
+
const [isDragOver, setIsDragOver] = useState(false);
|
|
189
|
+
const [isEmpty, setIsEmpty] = useState(true);
|
|
190
|
+
const [menuOpen, setMenuOpen] = useState(false);
|
|
191
|
+
useMenuRevalidation(menuOpen, projectId);
|
|
192
|
+
const fileInputRef = useRef(null);
|
|
193
|
+
const dragDepthRef = useRef(0);
|
|
194
|
+
const savedDocBeforeQuestionRef = useRef(null);
|
|
195
|
+
// A host that owns the controller leaves this composer's own one idle: hooks
|
|
196
|
+
// run unconditionally, and a controller without a project does nothing.
|
|
197
|
+
const ownPromptAttachments = usePromptAttachments(hostPromptAttachments ? null : projectId);
|
|
198
|
+
const promptAttachments = hostPromptAttachments ?? ownPromptAttachments;
|
|
199
|
+
const promptAttachmentsRef = useRef(promptAttachments);
|
|
200
|
+
useEffect(() => {
|
|
201
|
+
promptAttachmentsRef.current = promptAttachments;
|
|
202
|
+
}, [promptAttachments]);
|
|
203
|
+
const activeSubmissionIdsRef = useRef(new Set());
|
|
204
|
+
const { addMany: addPromptAttachments, attachments: promptAttachmentItems, remove: removePromptAttachment, retry: retryPromptAttachment, } = promptAttachments;
|
|
205
|
+
// A plan or credit refusal at attach (402) opens the billing path once per refusal. The tile
|
|
206
|
+
// keeps saying why; Retry cannot fix it.
|
|
207
|
+
const seenBillingRefusalsRef = useRef(new WeakSet());
|
|
208
|
+
useEffect(() => {
|
|
209
|
+
const [refusal] = takeNewBillingRefusals(promptAttachmentItems, seenBillingRefusalsRef.current);
|
|
210
|
+
if (refusal)
|
|
211
|
+
handleBillingError(refusal, tI18nComplete);
|
|
212
|
+
}, [promptAttachmentItems, tI18nComplete]);
|
|
213
|
+
const editorRef = useRef(null);
|
|
214
|
+
const [editorElement, setEditorElement] = useState(null);
|
|
215
|
+
const setEditorRef = useCallback((handle) => {
|
|
216
|
+
editorRef.current = handle;
|
|
217
|
+
setEditorElement(handle?.getElement() ?? null);
|
|
218
|
+
}, []);
|
|
219
|
+
/**
|
|
220
|
+
* The tray's finished uploads. The draft keeps their handles, so a session
|
|
221
|
+
* switch or a reload brings the files back (`draft/draft-uploads.ts`).
|
|
222
|
+
*/
|
|
223
|
+
const finishedUploads = useMemo(() => finishedDraftUploads(attachedFiles, promptAttachmentItems), [attachedFiles, promptAttachmentItems]);
|
|
224
|
+
const draftUploads = useMemo(() => finishedUploads.map(({ upload }) => upload), [finishedUploads]);
|
|
225
|
+
const finishedUploadsRef = useRef(finishedUploads);
|
|
226
|
+
useEffect(() => {
|
|
227
|
+
finishedUploadsRef.current = finishedUploads;
|
|
228
|
+
}, [finishedUploads]);
|
|
229
|
+
const keepFilesForThisTab = useCallback(() => {
|
|
230
|
+
for (const { upload, file } of finishedUploadsRef.current) {
|
|
231
|
+
if (file)
|
|
232
|
+
keepUnsentUploadFile(upload.attachment_id, file);
|
|
233
|
+
}
|
|
234
|
+
}, []);
|
|
235
|
+
// A replacement composer (the boot shell hands its draft to the live chat)
|
|
236
|
+
// restores in a passive effect, after this layout effect: keep the Files
|
|
237
|
+
// first, so its tiles come back with their pictures.
|
|
238
|
+
useLayoutEffect(() => {
|
|
239
|
+
if (draftActive === false)
|
|
240
|
+
keepFilesForThisTab();
|
|
241
|
+
}, [draftActive, keepFilesForThisTab]);
|
|
242
|
+
// A finished upload outlives this composer while a draft keeps its handle:
|
|
243
|
+
// release it from the controller, so the controller's dispose does not delete
|
|
244
|
+
// it. Without a draft scope nothing keeps the handle, and dispose deletes it.
|
|
245
|
+
const draftScopedRef = useRef(!!draftScope);
|
|
246
|
+
useEffect(() => {
|
|
247
|
+
draftScopedRef.current = !!draftScope;
|
|
248
|
+
}, [draftScope]);
|
|
249
|
+
useEffect(() => () => {
|
|
250
|
+
if (!draftScopedRef.current)
|
|
251
|
+
return;
|
|
252
|
+
keepFilesForThisTab();
|
|
253
|
+
promptAttachmentsRef.current.forget(finishedUploadsRef.current.map(({ uploadId }) => uploadId));
|
|
254
|
+
}, [keepFilesForThisTab]);
|
|
255
|
+
/**
|
|
256
|
+
* Put a stored draft back into the live editor.
|
|
257
|
+
*
|
|
258
|
+
* `setDocumentWithoutStealingFocus`, not `setDocument`: this fires on mount,
|
|
259
|
+
* and `setDocument` force-focuses the document end — a session page would
|
|
260
|
+
* yank focus into the composer on every reload.
|
|
261
|
+
*
|
|
262
|
+
* Attachments are only seeded into an EMPTY tray. Anything already attached
|
|
263
|
+
* was added by the person in this mount and outranks a stored list. A
|
|
264
|
+
* finished upload comes back by its handle (`restoreDraftUploads`); an
|
|
265
|
+
* unfinished one was never stored.
|
|
266
|
+
*/
|
|
267
|
+
const handleDraftRestore = useCallback((draft) => {
|
|
268
|
+
setDocumentWithoutStealingFocus(editorRef.current, draft.doc);
|
|
269
|
+
const uploads = draft.uploads ?? [];
|
|
270
|
+
if ((draft.files.length > 0 || uploads.length > 0) && attachedFilesRef.current.length === 0) {
|
|
271
|
+
let restored = [];
|
|
272
|
+
try {
|
|
273
|
+
restored = restoreDraftUploads(uploads, {
|
|
274
|
+
restore: promptAttachmentsRef.current.restore,
|
|
275
|
+
createObjectURL: (file) => URL.createObjectURL(file),
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
catch (error) {
|
|
279
|
+
// Over a message limit: the stored files are not restored.
|
|
280
|
+
errorToast(error instanceof Error ? error.message : tComposerAttachments('couldNotAttach'));
|
|
281
|
+
}
|
|
282
|
+
const next = [...draft.files, ...restored];
|
|
283
|
+
attachedFilesRef.current = next;
|
|
284
|
+
setAttachedFiles(next);
|
|
285
|
+
}
|
|
286
|
+
restoreQuoteTexts(draft.quotes ?? []);
|
|
287
|
+
restorePastes(draft.pastes ?? []);
|
|
288
|
+
}, [restoreQuoteTexts, restorePastes, tComposerAttachments]);
|
|
289
|
+
const { handleDocChange, clearSavedDraft } = useComposerDraft({
|
|
290
|
+
active: draftActive,
|
|
291
|
+
scope: draftScope,
|
|
292
|
+
editorRef,
|
|
293
|
+
editorReady: editorElement != null,
|
|
294
|
+
attachedFiles,
|
|
295
|
+
quotes: quoteTexts,
|
|
296
|
+
pastes,
|
|
297
|
+
uploads: draftUploads,
|
|
298
|
+
hasPrefill: !!prefill,
|
|
299
|
+
onRestore: handleDraftRestore,
|
|
300
|
+
});
|
|
301
|
+
/**
|
|
302
|
+
* Tiles pasted since the editor last changed, newest last. A tile paste never
|
|
303
|
+
* reaches the editor's history, so Mod-z takes these back first (`isUndoKey`);
|
|
304
|
+
* any document change clears them, and undo is the editor's again.
|
|
305
|
+
*/
|
|
306
|
+
const pasteUndoRef = useRef([]);
|
|
307
|
+
const handleEditorDocChange = useCallback((doc, isEmpty) => {
|
|
308
|
+
pasteUndoRef.current = [];
|
|
309
|
+
handleDocChange(doc, isEmpty);
|
|
310
|
+
}, [handleDocChange]);
|
|
311
|
+
const { data: allSessions } = useRuntimeSessions();
|
|
312
|
+
const primaryAgents = useMemo(() => agents.filter((a) => !a.hidden && a.mode !== 'subagent'), [agents]);
|
|
313
|
+
const editorDisabled = disabled || lockForApproval;
|
|
314
|
+
const appendAttachedFiles = useCallback((files) => {
|
|
315
|
+
// One empty or oversized file must not refuse the whole drop: the SDK
|
|
316
|
+
// checks a batch at once, so the files that fit are split off first and
|
|
317
|
+
// each refused one is named (KRTX-2557).
|
|
318
|
+
const held = heldTraySizes(attachedFilesRef.current);
|
|
319
|
+
const { accepted, refused } = splitComposerFiles(Array.from(files), {
|
|
320
|
+
count: held.length,
|
|
321
|
+
bytes: held.reduce((sum, size) => sum + size, 0),
|
|
322
|
+
});
|
|
323
|
+
if (refused.length > 0) {
|
|
324
|
+
const toast = refusedFilesToast(refused, tComposerAttachments);
|
|
325
|
+
errorToast(toast.title, { description: toast.description });
|
|
326
|
+
}
|
|
327
|
+
try {
|
|
328
|
+
const newFiles = stageComposerFiles(accepted, {
|
|
329
|
+
addMany: addPromptAttachments,
|
|
330
|
+
createObjectURL: (file) => URL.createObjectURL(file),
|
|
331
|
+
isImage: isImageFile,
|
|
332
|
+
});
|
|
333
|
+
if (newFiles.length === 0)
|
|
334
|
+
return;
|
|
335
|
+
const next = [...attachedFilesRef.current, ...newFiles];
|
|
336
|
+
attachedFilesRef.current = next;
|
|
337
|
+
setAttachedFiles(next);
|
|
338
|
+
}
|
|
339
|
+
catch (error) {
|
|
340
|
+
errorToast(error instanceof Error ? error.message : tComposerAttachments('couldNotAttach'));
|
|
341
|
+
}
|
|
342
|
+
}, [addPromptAttachments, tComposerAttachments]);
|
|
343
|
+
useEffect(() => () => {
|
|
344
|
+
for (const file of attachedFilesRef.current) {
|
|
345
|
+
if (file.kind === 'local')
|
|
346
|
+
revokeUnsentPreview(file.localUrl);
|
|
347
|
+
}
|
|
348
|
+
}, []);
|
|
349
|
+
const handleFileSelect = useCallback((e) => {
|
|
350
|
+
if (disabled || lockForQuestion) {
|
|
351
|
+
e.target.value = '';
|
|
352
|
+
return;
|
|
353
|
+
}
|
|
354
|
+
const files = e.target.files;
|
|
355
|
+
if (!files)
|
|
356
|
+
return;
|
|
357
|
+
appendAttachedFiles(Array.from(files));
|
|
358
|
+
e.target.value = '';
|
|
359
|
+
}, [disabled, lockForQuestion, appendAttachedFiles]);
|
|
360
|
+
const handleAttachClick = useCallback(() => {
|
|
361
|
+
fileInputRef.current?.click();
|
|
362
|
+
}, []);
|
|
363
|
+
// "Add context" (Task 5): a fresh `attachRequestId` opens the same file
|
|
364
|
+
// picker `handleAttachClick` opens for a manual click or the `/attach-file`
|
|
365
|
+
// command — see `session-composer-prefill-store.ts` for the held/id-keyed
|
|
366
|
+
// handoff this consumes.
|
|
367
|
+
useEffect(() => {
|
|
368
|
+
if (attachRequestId == null)
|
|
369
|
+
return;
|
|
370
|
+
handleAttachClick();
|
|
371
|
+
}, [attachRequestId, handleAttachClick]);
|
|
372
|
+
const dragHasFiles = useCallback((e) => {
|
|
373
|
+
return Array.from(e.dataTransfer?.types ?? []).includes('Files');
|
|
374
|
+
}, []);
|
|
375
|
+
const handleDragEnter = useCallback((e) => {
|
|
376
|
+
if (disabled || lockForQuestion || !dragHasFiles(e))
|
|
377
|
+
return;
|
|
378
|
+
e.preventDefault();
|
|
379
|
+
dragDepthRef.current += 1;
|
|
380
|
+
setIsDragOver(true);
|
|
381
|
+
}, [disabled, lockForQuestion, dragHasFiles]);
|
|
382
|
+
const handleDragOver = useCallback((e) => {
|
|
383
|
+
if (disabled || lockForQuestion || !dragHasFiles(e))
|
|
384
|
+
return;
|
|
385
|
+
e.preventDefault();
|
|
386
|
+
e.dataTransfer.dropEffect = 'copy';
|
|
387
|
+
}, [disabled, lockForQuestion, dragHasFiles]);
|
|
388
|
+
const handleDragLeave = useCallback((e) => {
|
|
389
|
+
if (!dragHasFiles(e))
|
|
390
|
+
return;
|
|
391
|
+
e.preventDefault();
|
|
392
|
+
dragDepthRef.current = Math.max(0, dragDepthRef.current - 1);
|
|
393
|
+
if (dragDepthRef.current === 0) {
|
|
394
|
+
setIsDragOver(false);
|
|
395
|
+
}
|
|
396
|
+
}, [dragHasFiles]);
|
|
397
|
+
const handleDropFiles = useCallback((e) => {
|
|
398
|
+
if (disabled || lockForQuestion || !dragHasFiles(e))
|
|
399
|
+
return;
|
|
400
|
+
e.preventDefault();
|
|
401
|
+
dragDepthRef.current = 0;
|
|
402
|
+
setIsDragOver(false);
|
|
403
|
+
const dropped = e.dataTransfer.files;
|
|
404
|
+
if (!dropped || dropped.length === 0)
|
|
405
|
+
return;
|
|
406
|
+
appendAttachedFiles(Array.from(dropped));
|
|
407
|
+
}, [appendAttachedFiles, disabled, lockForQuestion, dragHasFiles]);
|
|
408
|
+
// On the session page a file dropped anywhere in the column lands here
|
|
409
|
+
// (`ComposerDropZone`), and the editor takes focus for the message.
|
|
410
|
+
const acceptZoneDrop = useCallback((files) => {
|
|
411
|
+
appendAttachedFiles(files);
|
|
412
|
+
editorRef.current?.focus();
|
|
413
|
+
}, [appendAttachedFiles]);
|
|
414
|
+
const inDropZone = useComposerDropZone(disabled || lockForQuestion ? null : acceptZoneDrop);
|
|
415
|
+
const removeAttachedFile = useCallback((index) => {
|
|
416
|
+
const removed = attachedFilesRef.current[index];
|
|
417
|
+
if (!removed)
|
|
418
|
+
return;
|
|
419
|
+
if (removed.kind === 'local')
|
|
420
|
+
revokeUnsentPreview(removed.localUrl);
|
|
421
|
+
const next = attachedFilesRef.current.filter((_, i) => i !== index);
|
|
422
|
+
attachedFilesRef.current = next;
|
|
423
|
+
setAttachedFiles(next);
|
|
424
|
+
const uploadId = attachedFileUploadId(removed);
|
|
425
|
+
// Aborts a running upload. The server DELETE is best-effort; this never rejects.
|
|
426
|
+
if (uploadId)
|
|
427
|
+
void removePromptAttachment(uploadId);
|
|
428
|
+
}, [removePromptAttachment]);
|
|
429
|
+
const retryAttachedFile = useCallback((id) => {
|
|
430
|
+
try {
|
|
431
|
+
retryPromptAttachment(id);
|
|
432
|
+
}
|
|
433
|
+
catch (error) {
|
|
434
|
+
errorToast(error instanceof Error ? error.message : tComposerAttachments('couldNotRetry'));
|
|
435
|
+
}
|
|
436
|
+
}, [retryPromptAttachment, tComposerAttachments]);
|
|
437
|
+
useEffect(() => {
|
|
438
|
+
if (!editorElement)
|
|
439
|
+
return;
|
|
440
|
+
const onPasteCapture = (e) => {
|
|
441
|
+
if (disabled || lockForQuestion)
|
|
442
|
+
return;
|
|
443
|
+
const files = extractClipboardFiles(e.clipboardData);
|
|
444
|
+
if (files.length > 0) {
|
|
445
|
+
e.preventDefault();
|
|
446
|
+
appendAttachedFiles(files);
|
|
447
|
+
return;
|
|
448
|
+
}
|
|
449
|
+
// A long paste becomes a tile instead of flooding the editor; one too
|
|
450
|
+
// large to send inline goes out as a `.txt` attachment (`classifyPaste`).
|
|
451
|
+
const text = e.clipboardData?.getData('text/plain') ?? '';
|
|
452
|
+
const kind = classifyPaste(text, editorRef.current?.getContent().text ?? '', pastesRef.current);
|
|
453
|
+
if (kind === 'inline')
|
|
454
|
+
return;
|
|
455
|
+
e.preventDefault();
|
|
456
|
+
if (kind === 'tile') {
|
|
457
|
+
const id = newPastedContentId();
|
|
458
|
+
pasteUndoRef.current.push(id);
|
|
459
|
+
setPasteList((current) => [...current, { id, text: trimPastedText(text) }]);
|
|
460
|
+
return;
|
|
461
|
+
}
|
|
462
|
+
const names = attachedFilesRef.current.map((af) => af.kind === 'local' ? af.file.name : af.filename);
|
|
463
|
+
appendAttachedFiles([
|
|
464
|
+
new File([text], nextPastedTextFileName(names), { type: 'text/plain' }),
|
|
465
|
+
]);
|
|
466
|
+
};
|
|
467
|
+
// Capture, so this runs before the editor's own undo keymap.
|
|
468
|
+
const onKeyDownCapture = (e) => {
|
|
469
|
+
if (!isUndoKey(e))
|
|
470
|
+
return;
|
|
471
|
+
const id = popPasteUndo(pasteUndoRef.current, pastesRef.current);
|
|
472
|
+
if (id === undefined)
|
|
473
|
+
return;
|
|
474
|
+
e.preventDefault();
|
|
475
|
+
e.stopPropagation();
|
|
476
|
+
setPasteList((current) => current.filter((paste) => paste.id !== id));
|
|
477
|
+
};
|
|
478
|
+
editorElement.addEventListener('paste', onPasteCapture, true);
|
|
479
|
+
editorElement.addEventListener('keydown', onKeyDownCapture, true);
|
|
480
|
+
return () => {
|
|
481
|
+
editorElement.removeEventListener('paste', onPasteCapture, true);
|
|
482
|
+
editorElement.removeEventListener('keydown', onKeyDownCapture, true);
|
|
483
|
+
};
|
|
484
|
+
}, [editorElement, disabled, lockForQuestion, appendAttachedFiles, setPasteList]);
|
|
485
|
+
/**
|
|
486
|
+
* Whether the draft carries a `/` command chip — the other half of the
|
|
487
|
+
* attachment guard in `command-attachments.ts`.
|
|
488
|
+
*
|
|
489
|
+
* Watched ONLY while something is attached, because that is the only state
|
|
490
|
+
* in which the answer changes anything. With no attachments nothing is
|
|
491
|
+
* observed and nothing is read, so ordinary typing costs what it did before.
|
|
492
|
+
*
|
|
493
|
+
* A `MutationObserver` rather than an editor callback: `onEmptyChange` fires
|
|
494
|
+
* on the empty↔non-empty boundary only (`trackEmptyBoundary`), so it never
|
|
495
|
+
* sees a chip inserted into a draft that already has text — and adding a new
|
|
496
|
+
* prop to `ComposerEditor` would reach outside this change. The chip is an
|
|
497
|
+
* atom node with a stable `data-mention` attribute, and the selector is
|
|
498
|
+
* pinned to `MentionNode`'s real rendered output by a test.
|
|
499
|
+
*
|
|
500
|
+
* Both orders are covered: attach-then-type is caught by the observer, and
|
|
501
|
+
* type-then-attach by the snapshot React reads when the subscription changes
|
|
502
|
+
* on the first attachment.
|
|
503
|
+
*
|
|
504
|
+
* `useSyncExternalStore`, not `useState` + an effect: the editor's DOM is
|
|
505
|
+
* literally an external store here, and reading it in an effect would render
|
|
506
|
+
* once with a stale answer and again with the real one.
|
|
507
|
+
*/
|
|
508
|
+
const hasAttachments = attachedFiles.length > 0;
|
|
509
|
+
const subscribeToCommandChip = useCallback((onChange) => {
|
|
510
|
+
if (!editorElement || !hasAttachments)
|
|
511
|
+
return NO_SUBSCRIPTION;
|
|
512
|
+
const observer = new MutationObserver(onChange);
|
|
513
|
+
observer.observe(editorElement, { childList: true, subtree: true });
|
|
514
|
+
return () => observer.disconnect();
|
|
515
|
+
}, [editorElement, hasAttachments]);
|
|
516
|
+
// A string or null, so the snapshot is stable by value and cannot loop.
|
|
517
|
+
const readChipSnapshot = useCallback(() => (hasAttachments ? readCommandChipLabel(editorElement) : null), [editorElement, hasAttachments]);
|
|
518
|
+
const draftCommandChipLabel = useSyncExternalStore(subscribeToCommandChip, readChipSnapshot, NO_COMMAND_CHIP);
|
|
519
|
+
// One predicate for both switch affordances — the editor's cycle shortcut
|
|
520
|
+
// and the /switch-agent slash row: with zero or one selectable agent there
|
|
521
|
+
// is nothing to switch to, and a slash row that highlights, offers "Use",
|
|
522
|
+
// and does nothing is worse than no row (the `set-scope` lesson).
|
|
523
|
+
const canSwitchAgent = primaryAgents.length > 1 && Boolean(onAgentChange);
|
|
524
|
+
const cycleAgent = useCallback(() => {
|
|
525
|
+
// The `!onAgentChange` re-check is a type guard: `canSwitchAgent` already
|
|
526
|
+
// implies it, but the captured boolean cannot narrow the callback's closure.
|
|
527
|
+
if (!canSwitchAgent || !onAgentChange)
|
|
528
|
+
return false;
|
|
529
|
+
const currentIdx = primaryAgents.findIndex((a) => a.name === selectedAgent);
|
|
530
|
+
const nextIdx = (currentIdx + 1) % primaryAgents.length;
|
|
531
|
+
onAgentChange(primaryAgents[nextIdx].name);
|
|
532
|
+
return true;
|
|
533
|
+
}, [canSwitchAgent, primaryAgents, onAgentChange, selectedAgent]);
|
|
534
|
+
useEffect(() => {
|
|
535
|
+
if (!editorElement)
|
|
536
|
+
return;
|
|
537
|
+
const onKeyDown = (e) => {
|
|
538
|
+
if (e.key === 'Tab' && !e.defaultPrevented) {
|
|
539
|
+
if (cycleAgent())
|
|
540
|
+
e.preventDefault();
|
|
541
|
+
}
|
|
542
|
+
};
|
|
543
|
+
editorElement.addEventListener('keydown', onKeyDown);
|
|
544
|
+
return () => editorElement.removeEventListener('keydown', onKeyDown);
|
|
545
|
+
}, [editorElement, cycleAgent]);
|
|
546
|
+
useEffect(() => {
|
|
547
|
+
if (!editorElement)
|
|
548
|
+
return;
|
|
549
|
+
const isSuggestionListbox = (el) => {
|
|
550
|
+
if (!(el instanceof HTMLElement))
|
|
551
|
+
return false;
|
|
552
|
+
if (el.getAttribute('role') !== 'listbox')
|
|
553
|
+
return false;
|
|
554
|
+
const label = el.getAttribute('aria-label');
|
|
555
|
+
return label === 'Mention suggestions' || label === 'Commands and actions';
|
|
556
|
+
};
|
|
557
|
+
let attached = null;
|
|
558
|
+
let attrObserver = null;
|
|
559
|
+
let bodyObserver = null;
|
|
560
|
+
const sync = () => {
|
|
561
|
+
if (!attached)
|
|
562
|
+
return;
|
|
563
|
+
if (!attached.id) {
|
|
564
|
+
const suffix = attached.getAttribute('aria-label') === 'Mention suggestions' ? 'mention' : 'slash';
|
|
565
|
+
attached.id = `composer-suggestions-${suffix}`;
|
|
566
|
+
}
|
|
567
|
+
editorElement.setAttribute('aria-controls', attached.id);
|
|
568
|
+
const activeId = attached.getAttribute('aria-activedescendant');
|
|
569
|
+
if (activeId)
|
|
570
|
+
editorElement.setAttribute('aria-activedescendant', activeId);
|
|
571
|
+
else
|
|
572
|
+
editorElement.removeAttribute('aria-activedescendant');
|
|
573
|
+
};
|
|
574
|
+
const detachListbox = () => {
|
|
575
|
+
attrObserver?.disconnect();
|
|
576
|
+
attrObserver = null;
|
|
577
|
+
attached = null;
|
|
578
|
+
editorElement.removeAttribute('aria-controls');
|
|
579
|
+
editorElement.removeAttribute('aria-activedescendant');
|
|
580
|
+
};
|
|
581
|
+
const attachListbox = (el) => {
|
|
582
|
+
attached = el;
|
|
583
|
+
attrObserver = new MutationObserver(sync);
|
|
584
|
+
attrObserver.observe(el, { attributes: true, attributeFilter: ['aria-activedescendant'] });
|
|
585
|
+
sync();
|
|
586
|
+
};
|
|
587
|
+
const findListbox = () => {
|
|
588
|
+
const candidates = document.body.querySelectorAll('[role="listbox"]');
|
|
589
|
+
for (const el of candidates) {
|
|
590
|
+
if (isSuggestionListbox(el))
|
|
591
|
+
return el;
|
|
592
|
+
}
|
|
593
|
+
return null;
|
|
594
|
+
};
|
|
595
|
+
const reconcile = () => {
|
|
596
|
+
const found = findListbox();
|
|
597
|
+
if (found && found !== attached) {
|
|
598
|
+
detachListbox();
|
|
599
|
+
attachListbox(found);
|
|
600
|
+
}
|
|
601
|
+
else if (!found && attached) {
|
|
602
|
+
detachListbox();
|
|
603
|
+
}
|
|
604
|
+
};
|
|
605
|
+
const startObserving = () => {
|
|
606
|
+
if (bodyObserver)
|
|
607
|
+
return;
|
|
608
|
+
reconcile(); // initial sync — no waiting for the first future mutation
|
|
609
|
+
bodyObserver = new MutationObserver(reconcile);
|
|
610
|
+
bodyObserver.observe(document.body, { childList: true, subtree: true });
|
|
611
|
+
};
|
|
612
|
+
const stopObserving = () => {
|
|
613
|
+
bodyObserver?.disconnect();
|
|
614
|
+
bodyObserver = null;
|
|
615
|
+
detachListbox();
|
|
616
|
+
};
|
|
617
|
+
const onFocusIn = () => startObserving();
|
|
618
|
+
const onFocusOut = () => stopObserving();
|
|
619
|
+
editorElement.addEventListener('focusin', onFocusIn);
|
|
620
|
+
editorElement.addEventListener('focusout', onFocusOut);
|
|
621
|
+
if (document.activeElement === editorElement ||
|
|
622
|
+
editorElement.contains(document.activeElement)) {
|
|
623
|
+
startObserving();
|
|
624
|
+
}
|
|
625
|
+
return () => {
|
|
626
|
+
editorElement.removeEventListener('focusin', onFocusIn);
|
|
627
|
+
editorElement.removeEventListener('focusout', onFocusOut);
|
|
628
|
+
stopObserving();
|
|
629
|
+
};
|
|
630
|
+
}, [editorElement]);
|
|
631
|
+
const composerFocusRef = useMemo(() => ({ current: editorElement }), [editorElement]);
|
|
632
|
+
const handleTypeAhead = useCallback((char) => {
|
|
633
|
+
editorRef.current?.insertAtCursor(char);
|
|
634
|
+
}, []);
|
|
635
|
+
useComposerFocus({
|
|
636
|
+
ref: composerFocusRef,
|
|
637
|
+
autoFocus,
|
|
638
|
+
disabled: editorDisabled,
|
|
639
|
+
onTypeAhead: handleTypeAhead,
|
|
640
|
+
});
|
|
641
|
+
const { hasSelectableModels, isSelectableModel, entitlementsPending } = useModelConnectionGate(models);
|
|
642
|
+
const availableSelectedModel = entitlementsPending
|
|
643
|
+
? selectedModel
|
|
644
|
+
: resolveAvailableSelectedModel(selectedModel, isSelectableModel);
|
|
645
|
+
const modelUnavailable = isModelRequiredButUnavailable({
|
|
646
|
+
modelRequired,
|
|
647
|
+
selectedModel: availableSelectedModel,
|
|
648
|
+
lockForQuestion,
|
|
649
|
+
// The same two "not in yet" flags `noModelsConnected` below reads. Without
|
|
650
|
+
// them this refused every send made before the catalog landed — project
|
|
651
|
+
// home paints a focusable composer ~1.1s after navigation, while
|
|
652
|
+
// `/model-picker`, `/detail` and `/model-defaults` are all still in flight.
|
|
653
|
+
modelsLoading,
|
|
654
|
+
entitlementsPending,
|
|
655
|
+
});
|
|
656
|
+
const noModelsConnected = modelRequired &&
|
|
657
|
+
!lockForQuestion &&
|
|
658
|
+
!modelsLoading &&
|
|
659
|
+
!entitlementsPending &&
|
|
660
|
+
(!availableSelectedModel || !hasSelectableModels);
|
|
661
|
+
// Quotes alone are a message — but not an answer: a question-locked send
|
|
662
|
+
// takes only the typed text, so quotes cannot enable it there.
|
|
663
|
+
const canSubmit = !isEmpty ||
|
|
664
|
+
attachedFiles.length > 0 ||
|
|
665
|
+
(!lockForQuestion && (quotes.length > 0 || pastes.length > 0));
|
|
666
|
+
useComposerEscapeStop({
|
|
667
|
+
editorElement,
|
|
668
|
+
enabled: isBusy && canStop && !stopDisabled && !isSending && !lockForQuestion && !props.submitLabel,
|
|
669
|
+
hasDraft: canSubmit,
|
|
670
|
+
onStop,
|
|
671
|
+
});
|
|
672
|
+
/**
|
|
673
|
+
* No agent may run this prompt. Refused here rather than at the server:
|
|
674
|
+
* `lockForQuestion` is exempt because answering an open question is not a new
|
|
675
|
+
* prompt and runs under the agent that asked it.
|
|
676
|
+
*/
|
|
677
|
+
const agentUnavailable = noAccessibleAgents && !lockForQuestion;
|
|
678
|
+
const submitDisabled = disabled || modelUnavailable || agentUnavailable || lockForApproval;
|
|
679
|
+
/** A failed upload refuses Send. The Send control's tooltip says why. */
|
|
680
|
+
const attachmentFailed = attachmentsBlockSend(promptAttachmentItems);
|
|
681
|
+
/** The selected model cannot read an attached image: the tray under the card and Send say so. */
|
|
682
|
+
const modelRejectingImages = modelRejectingAttachedImages({
|
|
683
|
+
files: attachedFiles,
|
|
684
|
+
models,
|
|
685
|
+
selectedModel: availableSelectedModel,
|
|
686
|
+
});
|
|
687
|
+
const imagesUnsupportedReason = modelRejectingImages
|
|
688
|
+
? `${tModelGate('imagesUnsupported', { model: modelRejectingImages })} — ${tModelGate('imagesUnsupportedHint')}`
|
|
689
|
+
: null;
|
|
690
|
+
/**
|
|
691
|
+
* A `/` command cannot carry the attached files, so this state refuses the
|
|
692
|
+
* submit and says why — before anything is sent and before anything is
|
|
693
|
+
* cleared. See `command-attachments.ts` for why carrying them is not
|
|
694
|
+
* reachable from here.
|
|
695
|
+
*
|
|
696
|
+
* Kept out of `submitDisabled` on purpose: that value also gates the voice
|
|
697
|
+
* recorder, and dictation is one of the ways out of this state.
|
|
698
|
+
*/
|
|
699
|
+
const commandAttachmentPlan = planCommandAttachments({
|
|
700
|
+
isCommand: draftWillRunCommand(draftCommandChipLabel, commands),
|
|
701
|
+
attachmentCount: attachedFiles.length,
|
|
702
|
+
}, tI18nComplete);
|
|
703
|
+
const prefillId = prefill?.id;
|
|
704
|
+
const prefillText = prefill?.text ?? '';
|
|
705
|
+
const prefillFiles = prefill?.files;
|
|
706
|
+
const prefillMode = prefill?.mode;
|
|
707
|
+
const prefillSubmit = prefill?.submit === true;
|
|
708
|
+
// `handleSubmit` is declared further down; the prefill effect reaches it
|
|
709
|
+
// through this ref, bound in an effect right after that declaration.
|
|
710
|
+
const handleSubmitRef = useRef(() => undefined);
|
|
711
|
+
const submittedPrefillIdRef = useRef(null);
|
|
712
|
+
const onPrefillAppliedRef = useRef(onPrefillApplied);
|
|
713
|
+
useEffect(() => {
|
|
714
|
+
onPrefillAppliedRef.current = onPrefillApplied;
|
|
715
|
+
}, [onPrefillApplied]);
|
|
716
|
+
useEffect(() => {
|
|
717
|
+
if (!shouldApplyPrefill({
|
|
718
|
+
prefillId,
|
|
719
|
+
prefillText,
|
|
720
|
+
prefillFiles,
|
|
721
|
+
prefillMode,
|
|
722
|
+
editorReady: editorElement != null,
|
|
723
|
+
})) {
|
|
724
|
+
return;
|
|
725
|
+
}
|
|
726
|
+
// `<reply_context>` blocks in the prefill (a failed send coming back, a
|
|
727
|
+
// rewind, a queued message taken back) go to the quote list, never into
|
|
728
|
+
// the document as raw XML the next send would wrap again. They lead the
|
|
729
|
+
// list, ahead of quotes already there, in both modes: a replace prefill
|
|
730
|
+
// replaces the typed text, but it does not throw away quotes the user
|
|
731
|
+
// collected.
|
|
732
|
+
// `<pasted_content>` blocks come back as tiles the same way.
|
|
733
|
+
const quoted = extractReplyQuotes(prefillText);
|
|
734
|
+
const pasted = splitPastedContent(quoted.text);
|
|
735
|
+
const incoming = { quotes: quoted.quotes, text: pasted.text };
|
|
736
|
+
if (prefillMode === 'merge') {
|
|
737
|
+
const merged = planPrefillMerge({
|
|
738
|
+
prefillDoc: textToDocument(incoming.text),
|
|
739
|
+
prefillIsEmpty: incoming.text.length === 0,
|
|
740
|
+
currentDoc: editorRef.current?.getDocument() ?? EMPTY_DOCUMENT,
|
|
741
|
+
currentIsEmpty: editorRef.current?.isEmpty() ?? true,
|
|
742
|
+
});
|
|
743
|
+
if (merged)
|
|
744
|
+
editorRef.current?.setDocument(merged);
|
|
745
|
+
}
|
|
746
|
+
else {
|
|
747
|
+
editorRef.current?.setContent(incoming.text);
|
|
748
|
+
}
|
|
749
|
+
restoreQuoteTexts(incoming.quotes);
|
|
750
|
+
restorePastes(pasted.pastes);
|
|
751
|
+
if (prefillFiles?.length) {
|
|
752
|
+
try {
|
|
753
|
+
const liveIds = new Set(promptAttachmentsRef.current.attachments.map((attachment) => attachment.id));
|
|
754
|
+
// A restored upload has no File to stage again: it carries over only while listed.
|
|
755
|
+
const usableFiles = prefillFiles.filter((file) => file.kind !== 'uploaded' || liveIds.has(file.uploadId));
|
|
756
|
+
const localToStage = usableFiles.filter((file) => file.kind === 'local' && (!file.uploadId || !liveIds.has(file.uploadId)));
|
|
757
|
+
const newlyStaged = stageComposerFiles(localToStage.map((file) => file.file), {
|
|
758
|
+
addMany: addPromptAttachments,
|
|
759
|
+
createObjectURL: (file) => URL.createObjectURL(file),
|
|
760
|
+
isImage: isImageFile,
|
|
761
|
+
});
|
|
762
|
+
let localIndex = 0;
|
|
763
|
+
const prepared = usableFiles.map((file) => {
|
|
764
|
+
if (file.kind === 'remote')
|
|
765
|
+
return file;
|
|
766
|
+
if (file.uploadId && liveIds.has(file.uploadId))
|
|
767
|
+
return file;
|
|
768
|
+
return newlyStaged[localIndex++];
|
|
769
|
+
});
|
|
770
|
+
const current = attachedFilesRef.current;
|
|
771
|
+
const next = prefillMode === 'merge' ? mergeFailedSubmissionFiles(current, prepared) : prepared;
|
|
772
|
+
if (prefillMode !== 'merge') {
|
|
773
|
+
const replacement = planAttachmentReplacement(current, next, activeSubmissionIdsRef.current);
|
|
774
|
+
for (const uploadId of replacement.idsToRemove)
|
|
775
|
+
void removePromptAttachment(uploadId);
|
|
776
|
+
for (const url of replacement.urlsToRevoke)
|
|
777
|
+
revokeUnsentPreview(url);
|
|
778
|
+
}
|
|
779
|
+
attachedFilesRef.current = next;
|
|
780
|
+
setAttachedFiles(next);
|
|
781
|
+
}
|
|
782
|
+
catch (error) {
|
|
783
|
+
errorToast(error instanceof Error ? error.message : tComposerAttachments('couldNotAttach'));
|
|
784
|
+
}
|
|
785
|
+
}
|
|
786
|
+
editorRef.current?.focus();
|
|
787
|
+
// Reported AFTER the text is in the editor, in the same statement run — a
|
|
788
|
+
// holder that clears on this signal cannot clear a draft that has not
|
|
789
|
+
// landed. `prefillId` is non-undefined here: `shouldApplyPrefill` returned
|
|
790
|
+
// true, which requires it.
|
|
791
|
+
//
|
|
792
|
+
// Through a ref, deliberately: this callback in the dependency array would
|
|
793
|
+
// re-run the effect whenever the caller re-created it, and a `merge` prefill
|
|
794
|
+
// applied twice appends its text twice.
|
|
795
|
+
onPrefillAppliedRef.current?.(prefillId);
|
|
796
|
+
// Last, so the prefill is fully applied and reported before the submit
|
|
797
|
+
// takes the draft out of the editor.
|
|
798
|
+
if (shouldSubmitPrefill({
|
|
799
|
+
prefillId,
|
|
800
|
+
prefillSubmit,
|
|
801
|
+
submittedPrefillId: submittedPrefillIdRef.current,
|
|
802
|
+
})) {
|
|
803
|
+
submittedPrefillIdRef.current = prefillId;
|
|
804
|
+
handleSubmitRef.current();
|
|
805
|
+
}
|
|
806
|
+
}, [
|
|
807
|
+
prefillId,
|
|
808
|
+
prefillText,
|
|
809
|
+
prefillFiles,
|
|
810
|
+
prefillMode,
|
|
811
|
+
prefillSubmit,
|
|
812
|
+
editorElement,
|
|
813
|
+
addPromptAttachments,
|
|
814
|
+
removePromptAttachment,
|
|
815
|
+
tComposerAttachments,
|
|
816
|
+
restoreQuoteTexts,
|
|
817
|
+
restorePastes,
|
|
818
|
+
]);
|
|
819
|
+
useEffect(() => {
|
|
820
|
+
if (lockForQuestion) {
|
|
821
|
+
const wasEmpty = editorRef.current?.isEmpty() ?? true;
|
|
822
|
+
savedDocBeforeQuestionRef.current = wasEmpty
|
|
823
|
+
? null
|
|
824
|
+
: (editorRef.current?.getDocument() ?? null);
|
|
825
|
+
editorRef.current?.clear();
|
|
826
|
+
}
|
|
827
|
+
else if (savedDocBeforeQuestionRef.current) {
|
|
828
|
+
setDocumentWithoutStealingFocus(editorRef.current, savedDocBeforeQuestionRef.current);
|
|
829
|
+
savedDocBeforeQuestionRef.current = null;
|
|
830
|
+
}
|
|
831
|
+
}, [lockForQuestion]);
|
|
832
|
+
// Each quote request appends to the list, at once — locked, disabled or
|
|
833
|
+
// not, editor mounted or not. The list is not the editor document, so the
|
|
834
|
+
// question lock's save/restore of that document cannot touch it.
|
|
835
|
+
const appliedQuoteRequestIdsRef = useRef(new Set());
|
|
836
|
+
const onQuoteRequestsAppliedRef = useRef(onQuoteRequestsApplied);
|
|
837
|
+
useEffect(() => {
|
|
838
|
+
onQuoteRequestsAppliedRef.current = onQuoteRequestsApplied;
|
|
839
|
+
}, [onQuoteRequestsApplied]);
|
|
840
|
+
useEffect(() => {
|
|
841
|
+
const pending = planQuoteRequests({
|
|
842
|
+
requests: quoteRequests,
|
|
843
|
+
appliedIds: appliedQuoteRequestIdsRef.current,
|
|
844
|
+
});
|
|
845
|
+
if (pending.length === 0)
|
|
846
|
+
return;
|
|
847
|
+
for (const request of pending)
|
|
848
|
+
appliedQuoteRequestIdsRef.current.add(request.id);
|
|
849
|
+
appendQuoteTexts(pending.map((request) => request.text));
|
|
850
|
+
onQuoteRequestsAppliedRef.current?.(pending.map((request) => request.id));
|
|
851
|
+
}, [quoteRequests, appendQuoteTexts]);
|
|
852
|
+
/**
|
|
853
|
+
* The model popover's open state, hoisted out of `ModelSelector` so the `/`
|
|
854
|
+
* palette can open it. `focusSection` is what separates the palette's two
|
|
855
|
+
* model-related rows: reasoning effort is a footer row INSIDE this popover
|
|
856
|
+
* rather than a control of its own (see `model-selector.tsx`), so both rows
|
|
857
|
+
* open the same element and only the landing point differs.
|
|
858
|
+
*/
|
|
859
|
+
/**
|
|
860
|
+
* Open state for the two toolbar controls the `/` palette can reach.
|
|
861
|
+
* Hoisted out of the controls themselves so a palette row can open them;
|
|
862
|
+
* both stay uncontrolled for every other consumer.
|
|
863
|
+
*
|
|
864
|
+
* Two separate flags, not one with a "which section" discriminator: model
|
|
865
|
+
* and reasoning effort are now two distinct dropdowns, so a single flag
|
|
866
|
+
* would open both or neither.
|
|
867
|
+
*/
|
|
868
|
+
const [agentMenuOpen, setAgentMenuOpen] = useState(false);
|
|
869
|
+
const [modelMenuOpen, setModelMenuOpen] = useState(false);
|
|
870
|
+
const [reasoningMenuOpen, setReasoningMenuOpen] = useState(false);
|
|
871
|
+
/**
|
|
872
|
+
* `SLASH_ACTIONS` with the live agent name filled into the "Switch agent"
|
|
873
|
+
* row, so the palette shows what you are switching FROM without opening
|
|
874
|
+
* anything. The static list cannot know it; this component holds
|
|
875
|
+
* `selectedAgent`, so the derivation belongs here.
|
|
876
|
+
*
|
|
877
|
+
* Memoized on `selectedAgent` alone. The `/` menu reads this through a ref
|
|
878
|
+
* at open time (`composer-editor.tsx`'s `actionsRef`), so identity churn
|
|
879
|
+
* would not produce a wrong menu — but `ComposerEditorLazy` is memoized on
|
|
880
|
+
* its props, and a fresh array every render would defeat that on every
|
|
881
|
+
* keystroke.
|
|
882
|
+
*/
|
|
883
|
+
/**
|
|
884
|
+
* The live context-window snapshot behind the "Show context" row — the ring
|
|
885
|
+
* icon reads percent + tone, the palette's detail pane renders the full
|
|
886
|
+
* `ContextUsageCard` from the rest. Two memos on purpose: `messages`
|
|
887
|
+
* changes identity on every streamed token, so the derivation re-runs
|
|
888
|
+
* cheaply — but the OBJECT is pinned to its scalar fields, which change
|
|
889
|
+
* only when a turn completes and reports usage. Without the pin, every
|
|
890
|
+
* token would ripple through `slashActions` into the memoized editor.
|
|
891
|
+
*/
|
|
892
|
+
const rawContextUsage = useMemo(() => getContextUsage(messages, models, availableSelectedModel), [messages, models, availableSelectedModel]);
|
|
893
|
+
const contextUsage = useMemo(() => ({
|
|
894
|
+
percent: rawContextUsage.percent,
|
|
895
|
+
tone: rawContextUsage.tone,
|
|
896
|
+
ratio: rawContextUsage.ratio,
|
|
897
|
+
limit: rawContextUsage.limit,
|
|
898
|
+
modelName: rawContextUsage.modelName,
|
|
899
|
+
breakdown: rawContextUsage.breakdown,
|
|
900
|
+
}),
|
|
901
|
+
// Deliberately keyed on the leaf scalars, not the objects: `breakdown` is
|
|
902
|
+
// rebuilt every derivation, so its identity would defeat the pin.
|
|
903
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
904
|
+
[
|
|
905
|
+
rawContextUsage.percent,
|
|
906
|
+
rawContextUsage.tone,
|
|
907
|
+
rawContextUsage.ratio,
|
|
908
|
+
rawContextUsage.limit,
|
|
909
|
+
rawContextUsage.modelName,
|
|
910
|
+
rawContextUsage.breakdown.input,
|
|
911
|
+
rawContextUsage.breakdown.output,
|
|
912
|
+
rawContextUsage.breakdown.reasoning,
|
|
913
|
+
rawContextUsage.breakdown.cache,
|
|
914
|
+
rawContextUsage.breakdown.total,
|
|
915
|
+
]);
|
|
916
|
+
const slashActions = useMemo(() => {
|
|
917
|
+
// Rows whose handler this host did not provide are dropped, not shown
|
|
918
|
+
// dead — the `set-scope` lesson in `slash-actions.ts`: a row that
|
|
919
|
+
// highlights, offers "Use", and does nothing is worse than no row.
|
|
920
|
+
const available = localizedSlashActions(tI18nComplete).filter((action) => {
|
|
921
|
+
if (action.id === 'switch-agent')
|
|
922
|
+
return canSwitchAgent;
|
|
923
|
+
if (action.id === 'compact-session')
|
|
924
|
+
return Boolean(onCompactClick);
|
|
925
|
+
if (action.id === 'show-context')
|
|
926
|
+
return Boolean(onContextClick);
|
|
927
|
+
return true;
|
|
928
|
+
});
|
|
929
|
+
return available.map((action) => {
|
|
930
|
+
if (action.id === 'switch-agent' && selectedAgent) {
|
|
931
|
+
return { ...action, value: selectedAgent };
|
|
932
|
+
}
|
|
933
|
+
// The ring icon (via `context`) plus the reading as the row's
|
|
934
|
+
// "current setting" text — same grammar as the agent row's value.
|
|
935
|
+
if (action.id === 'show-context') {
|
|
936
|
+
return { ...action, value: `${contextUsage.percent}%`, context: contextUsage };
|
|
937
|
+
}
|
|
938
|
+
return action;
|
|
939
|
+
});
|
|
940
|
+
}, [selectedAgent, canSwitchAgent, onCompactClick, onContextClick, contextUsage, tI18nComplete]);
|
|
941
|
+
const handleSelectAction = useCallback((action) => {
|
|
942
|
+
// Which control a row opens lives in `controlToOpenFor`
|
|
943
|
+
// (menus/slash-actions.ts) so it can be tested; this file cannot be.
|
|
944
|
+
const control = controlToOpenFor(action.id);
|
|
945
|
+
if (control === 'agent') {
|
|
946
|
+
setAgentMenuOpen(true);
|
|
947
|
+
return;
|
|
948
|
+
}
|
|
949
|
+
if (control === 'model') {
|
|
950
|
+
setModelMenuOpen(true);
|
|
951
|
+
return;
|
|
952
|
+
}
|
|
953
|
+
if (control === 'reasoning') {
|
|
954
|
+
setReasoningMenuOpen(true);
|
|
955
|
+
return;
|
|
956
|
+
}
|
|
957
|
+
switch (action.id) {
|
|
958
|
+
case 'attach-file':
|
|
959
|
+
fileInputRef.current?.click();
|
|
960
|
+
return;
|
|
961
|
+
case 'compact-session':
|
|
962
|
+
onCompactClick?.();
|
|
963
|
+
return;
|
|
964
|
+
case 'show-context':
|
|
965
|
+
onContextClick?.();
|
|
966
|
+
return;
|
|
967
|
+
}
|
|
968
|
+
}, [onCompactClick, onContextClick]);
|
|
969
|
+
const submitPlacementRef = useRef('transcript');
|
|
970
|
+
const dispatchSubmission = useCallback(async (stash) => {
|
|
971
|
+
const placement = stash?.placement ?? submitPlacementRef.current;
|
|
972
|
+
// Ahead of the model check: with no agent to run it, the model this prompt
|
|
973
|
+
// would have used is not the user's problem.
|
|
974
|
+
if (agentUnavailable) {
|
|
975
|
+
errorToast(NO_AGENT_ACCESS_LABEL, { description: NO_AGENT_ACCESS_HINT });
|
|
976
|
+
return;
|
|
977
|
+
}
|
|
978
|
+
if (modelUnavailable) {
|
|
979
|
+
errorToast(NO_MODEL_AVAILABLE_MESSAGE, {
|
|
980
|
+
description: NO_MODEL_AVAILABLE_ACTION_MESSAGE,
|
|
981
|
+
});
|
|
982
|
+
return;
|
|
983
|
+
}
|
|
984
|
+
// Enter as well as the disabled Send: the tray under the card says why.
|
|
985
|
+
if (modelRejectingImages)
|
|
986
|
+
return;
|
|
987
|
+
// What refuses EVERY submission — a prompt, a `/` command, and a custom
|
|
988
|
+
// answer alike. `hasActiveQuestion` is deliberately not consulted here: an
|
|
989
|
+
// open question does not refuse a submission, it REROUTES it to
|
|
990
|
+
// `onCustomAnswer` further down. The command branch passes it for real,
|
|
991
|
+
// because a command is not an answer.
|
|
992
|
+
const submissionBlocker = sendBlocker({
|
|
993
|
+
hasActiveQuestion: false,
|
|
994
|
+
// The composer only knows "something is pending", not how many.
|
|
995
|
+
pendingPermissionCount: lockForApproval ? 1 : 0,
|
|
996
|
+
readOnly: disabled,
|
|
997
|
+
});
|
|
998
|
+
if (submissionBlocker) {
|
|
999
|
+
const copy = sendBlockerMessage(submissionBlocker, tI18nComplete);
|
|
1000
|
+
errorToast(copy.message, copy.description ? { description: copy.description } : undefined);
|
|
1001
|
+
return;
|
|
1002
|
+
}
|
|
1003
|
+
// A stashed draft was captured out of the editor (and the editor cleared)
|
|
1004
|
+
// when its Enter arrived mid-send — see `createSubmitLatch`. It is
|
|
1005
|
+
// submitted as captured; the live editor belongs to whatever the user
|
|
1006
|
+
// typed since.
|
|
1007
|
+
const draft = stash ? stash.content : editorRef.current?.getContent();
|
|
1008
|
+
const filesNow = stash ? stash.files : attachedFilesRef.current;
|
|
1009
|
+
const quotesNow = stash ? stash.quotes : quotesRef.current;
|
|
1010
|
+
const pastesNow = stash ? stash.pastes : pastesRef.current;
|
|
1011
|
+
// Every quote leads the message, or the command args, as its own
|
|
1012
|
+
// `<reply_context>` line. A question's custom answer below reads
|
|
1013
|
+
// `draft.text`, so it never carries them.
|
|
1014
|
+
const plan = planDraftSubmission({
|
|
1015
|
+
commandName: draft?.commandName,
|
|
1016
|
+
text: draft?.text ?? '',
|
|
1017
|
+
commands: commands ?? [],
|
|
1018
|
+
commandSplit: draft?.commandSplit,
|
|
1019
|
+
quotes: quotesNow.map((quote) => quote.text),
|
|
1020
|
+
pastes: pastesNow,
|
|
1021
|
+
mentions: draft?.mentions,
|
|
1022
|
+
});
|
|
1023
|
+
if (plan.kind === 'command') {
|
|
1024
|
+
// A command cannot deliver the attached files, and the code below is
|
|
1025
|
+
// about to clear them and revoke their object URLs. Refuse the whole
|
|
1026
|
+
// submission instead — before either dispatch path and before the clear,
|
|
1027
|
+
// so the direct call and the queued entry are guarded by one check
|
|
1028
|
+
// rather than two that can drift. Nothing is sent, nothing is cleared,
|
|
1029
|
+
// and the reason is already on screen next to the send button; the toast
|
|
1030
|
+
// covers the keyboard path, which no disabled button can gate.
|
|
1031
|
+
const guard = planCommandAttachments({
|
|
1032
|
+
isCommand: true,
|
|
1033
|
+
attachmentCount: filesNow.length,
|
|
1034
|
+
}, tI18nComplete);
|
|
1035
|
+
if (guard.kind === 'refuse') {
|
|
1036
|
+
errorToast(guard.message, { description: guard.description });
|
|
1037
|
+
return;
|
|
1038
|
+
}
|
|
1039
|
+
// A command cannot go out while the session is working or its sandbox
|
|
1040
|
+
// is waking. A PROMPT never waits here: it is a server-side inbox row,
|
|
1041
|
+
// and the admission gate orders it. A COMMAND has no row — `runCommand`
|
|
1042
|
+
// dispatches it, never `POST .../prompts` — so one put on the wire
|
|
1043
|
+
// mid-turn aborts the answer in progress, and one sent at a box that is
|
|
1044
|
+
// not up is swallowed by `runCommand`'s `runtimeActionReady` guard.
|
|
1045
|
+
//
|
|
1046
|
+
// So the host HOLDS it (`onHoldCommand`, `held-commands.ts`): a visible
|
|
1047
|
+
// row in the queued list, released by server turn authority once the
|
|
1048
|
+
// inbox is empty — not by the debounced `isBusy` the old localStorage
|
|
1049
|
+
// queue guessed from. A host without a hold refuses it and keeps the
|
|
1050
|
+
// draft in the editor.
|
|
1051
|
+
const blocker = commandBlocker({
|
|
1052
|
+
hasActiveQuestion: lockForQuestion,
|
|
1053
|
+
// The composer only knows "something is pending", not how many.
|
|
1054
|
+
pendingPermissionCount: lockForApproval ? 1 : 0,
|
|
1055
|
+
readOnly: disabled,
|
|
1056
|
+
isWorking: sessionWorking ?? isBusy,
|
|
1057
|
+
runtimeReady,
|
|
1058
|
+
});
|
|
1059
|
+
// A turn or a waking box only DELAYS a command: a host that can hold
|
|
1060
|
+
// it does, and the queued list shows it with a Remove (KRTX-2464). A
|
|
1061
|
+
// question, a permission or a read-only viewer refuse it outright.
|
|
1062
|
+
const holdable = blocker === 'session_working' || blocker === 'runtime_waking';
|
|
1063
|
+
if (blocker && holdable && onHoldCommand) {
|
|
1064
|
+
onHoldCommand(plan.command, plan.args, plan.split);
|
|
1065
|
+
}
|
|
1066
|
+
else if (blocker) {
|
|
1067
|
+
const copy = sendBlockerMessage(blocker, tI18nComplete);
|
|
1068
|
+
errorToast(copy.message, copy.description ? { description: copy.description } : undefined);
|
|
1069
|
+
return;
|
|
1070
|
+
}
|
|
1071
|
+
else {
|
|
1072
|
+
onCommand?.(plan.command, plan.args, plan.split);
|
|
1073
|
+
}
|
|
1074
|
+
// The command is on its way; the draft that produced it is spent.
|
|
1075
|
+
// Deliberately NOT on either refusal path above (`guard.kind ===
|
|
1076
|
+
// 'refuse'`, `blocker`) — those keep the text in the editor on
|
|
1077
|
+
// purpose, so its draft has to survive with it.
|
|
1078
|
+
clearSavedDraft();
|
|
1079
|
+
// The same reset rule the message path uses, so a `'text-only'` host
|
|
1080
|
+
// (project home) empties its box here too WITHOUT revoking preview URLs
|
|
1081
|
+
// the next surface still draws from.
|
|
1082
|
+
const commandReset = resolveComposerResetOnSend(clearOnSend, attachedFilesRef.current);
|
|
1083
|
+
if (commandReset.clear && !stash) {
|
|
1084
|
+
editorRef.current?.clear();
|
|
1085
|
+
setQuoteList(() => []);
|
|
1086
|
+
setPasteList(() => []);
|
|
1087
|
+
for (const url of commandReset.urlsToRevoke)
|
|
1088
|
+
revokeUnsentPreview(url);
|
|
1089
|
+
attachedFilesRef.current = [];
|
|
1090
|
+
setAttachedFiles([]);
|
|
1091
|
+
}
|
|
1092
|
+
return 'sent';
|
|
1093
|
+
}
|
|
1094
|
+
if (lockForQuestion) {
|
|
1095
|
+
const trimmed = (draft?.text ?? '').trim();
|
|
1096
|
+
if (trimmed && onCustomAnswer) {
|
|
1097
|
+
onCustomAnswer(trimmed);
|
|
1098
|
+
if (!stash)
|
|
1099
|
+
editorRef.current?.clear();
|
|
1100
|
+
// The answer takes only the text; a stash gets its files back.
|
|
1101
|
+
return 'answered';
|
|
1102
|
+
}
|
|
1103
|
+
if (onQuestionAction) {
|
|
1104
|
+
onQuestionAction();
|
|
1105
|
+
return;
|
|
1106
|
+
}
|
|
1107
|
+
return;
|
|
1108
|
+
}
|
|
1109
|
+
// A chip the live list cannot resolve YET must not ride out as an
|
|
1110
|
+
// ordinary prompt while files are staged — the whole story, including
|
|
1111
|
+
// why only the never-resolved list refuses, lives on
|
|
1112
|
+
// `planUnresolvedCommandChip`'s doc comment (KRTX-1903). It sits below
|
|
1113
|
+
// the question-lock reroute: an answer takes only the text and hands
|
|
1114
|
+
// the files back to the stash, so there is nothing there to lose.
|
|
1115
|
+
const unresolvedGuard = planUnresolvedCommandChip({
|
|
1116
|
+
commandName: draft?.commandName,
|
|
1117
|
+
commandsResolved,
|
|
1118
|
+
attachmentCount: filesNow.length,
|
|
1119
|
+
}, tI18nComplete);
|
|
1120
|
+
if (unresolvedGuard.kind === 'refuse') {
|
|
1121
|
+
errorToast(unresolvedGuard.message, { description: unresolvedGuard.description });
|
|
1122
|
+
return;
|
|
1123
|
+
}
|
|
1124
|
+
const content = draft ?? { text: '', mentions: [] };
|
|
1125
|
+
const trimmed = plan.text;
|
|
1126
|
+
if ((!trimmed && filesNow.length === 0) || submitDisabled)
|
|
1127
|
+
return;
|
|
1128
|
+
// Send never waits for an upload: the selection is handed to this send
|
|
1129
|
+
// now. Only a failed upload refuses, and the Send control says why.
|
|
1130
|
+
const attachmentSubmission = stash?.attachmentSubmission ?? captureAttachmentSubmission(filesNow, promptAttachments);
|
|
1131
|
+
if (!attachmentSubmission)
|
|
1132
|
+
return;
|
|
1133
|
+
const filesToSend = filesNow.length > 0 ? [...filesNow] : undefined;
|
|
1134
|
+
const mentionsToSend = content.mentions.length > 0 ? [...content.mentions] : undefined;
|
|
1135
|
+
const submittedDoc = stash ? stash.doc : (editorRef.current?.getDocument() ?? null);
|
|
1136
|
+
const submittedIsEmpty = stash ? false : (editorRef.current?.isEmpty() ?? true);
|
|
1137
|
+
const reset = resolveComposerResetOnSend(clearOnSend, filesNow);
|
|
1138
|
+
if (reset.clear && !stash) {
|
|
1139
|
+
editorRef.current?.clear();
|
|
1140
|
+
setQuoteList(() => []);
|
|
1141
|
+
setPasteList(() => []);
|
|
1142
|
+
attachedFilesRef.current = [];
|
|
1143
|
+
setAttachedFiles([]);
|
|
1144
|
+
}
|
|
1145
|
+
// At hand-off, BEFORE the host runs: a send with uploads posts later, and a
|
|
1146
|
+
// reload in that window must not restore the sent draft. Explicit, NOT
|
|
1147
|
+
// derived from `reset.clear`: a composer can hand a send off without
|
|
1148
|
+
// emptying itself (`clearOnSend={false}`) and its saved draft still has
|
|
1149
|
+
// to go. A refused send saves the draft again in `onFailed`.
|
|
1150
|
+
clearSavedDraft();
|
|
1151
|
+
// The host paints the message, then returns. A send with uploads returns
|
|
1152
|
+
// right after the paint (`deliverAfterPaint`), so the next Send never waits
|
|
1153
|
+
// behind them. The host releases the uploads after its POST; a send it keeps
|
|
1154
|
+
// on screen as failed still holds them for its Retry.
|
|
1155
|
+
await runComposerSend({
|
|
1156
|
+
submission: attachmentSubmission,
|
|
1157
|
+
controller: promptAttachments,
|
|
1158
|
+
active: activeSubmissionIdsRef.current,
|
|
1159
|
+
send: () => onSend(trimmed, filesToSend, mentionsToSend, attachmentSubmission, placement),
|
|
1160
|
+
onSent: () => {
|
|
1161
|
+
for (const url of reset.urlsToRevoke)
|
|
1162
|
+
revokeUnsentPreview(url);
|
|
1163
|
+
},
|
|
1164
|
+
onFailed: () => {
|
|
1165
|
+
// The host refused the send before anything durable happened. Its uploads
|
|
1166
|
+
// are back in the tray, and the draft returns: a failed file shows its
|
|
1167
|
+
// Retry; a ready one sends again without re-upload.
|
|
1168
|
+
const currentDoc = editorRef.current?.getDocument() ?? null;
|
|
1169
|
+
const currentIsEmpty = editorRef.current?.isEmpty() ?? true;
|
|
1170
|
+
const sentFiles = filesToSend ?? [];
|
|
1171
|
+
const plan = planFailedSendRecovery({
|
|
1172
|
+
// `reset.clear`, not `clearOnSend`: recovery is owed to every
|
|
1173
|
+
// composer that EMPTIED itself, and `'text-only'` (project home)
|
|
1174
|
+
// now does while still being neither `true` nor `false`. Keying it
|
|
1175
|
+
// on the raw prop returned `null` there and left a refused send
|
|
1176
|
+
// with an empty box and no draft to get back.
|
|
1177
|
+
clearOnSend: reset.clear,
|
|
1178
|
+
submittedDoc,
|
|
1179
|
+
submittedIsEmpty,
|
|
1180
|
+
currentDoc,
|
|
1181
|
+
currentIsEmpty,
|
|
1182
|
+
currentAttachedFiles: attachedFilesRef.current,
|
|
1183
|
+
sentFiles,
|
|
1184
|
+
});
|
|
1185
|
+
if (plan?.restoreDoc) {
|
|
1186
|
+
setDocumentWithoutStealingFocus(editorRef.current, plan.restoreDoc);
|
|
1187
|
+
}
|
|
1188
|
+
if (plan) {
|
|
1189
|
+
attachedFilesRef.current = plan.attachedFiles;
|
|
1190
|
+
setAttachedFiles(plan.attachedFiles);
|
|
1191
|
+
}
|
|
1192
|
+
// The quotes left the list with this send (a direct send cleared
|
|
1193
|
+
// it, a stash took them); they lead it again.
|
|
1194
|
+
if (reset.clear || stash) {
|
|
1195
|
+
restoreQuoteTexts(quotesNow.map((quote) => quote.text));
|
|
1196
|
+
restorePastes(pastesNow);
|
|
1197
|
+
}
|
|
1198
|
+
// The tray draws these files again, so the sent cache no longer owns their pictures.
|
|
1199
|
+
disownSentAttachmentPreviews(sentFiles);
|
|
1200
|
+
// The draft was cleared at hand-off; the editor holds it again, so save it. Only where
|
|
1201
|
+
// Send cleared the editor — a composer that kept its draft on screen (`clearOnSend`
|
|
1202
|
+
// false) never lost it, and a connector-gate Retry that sends it later must not bring
|
|
1203
|
+
// it back as a saved draft.
|
|
1204
|
+
const restoredDoc = editorRef.current?.getDocument();
|
|
1205
|
+
if (reset.clear && restoredDoc)
|
|
1206
|
+
handleDocChange(restoredDoc, editorRef.current?.isEmpty() ?? true);
|
|
1207
|
+
},
|
|
1208
|
+
});
|
|
1209
|
+
return 'sent';
|
|
1210
|
+
}, [
|
|
1211
|
+
agentUnavailable,
|
|
1212
|
+
modelUnavailable,
|
|
1213
|
+
modelRejectingImages,
|
|
1214
|
+
lockForApproval,
|
|
1215
|
+
disabled,
|
|
1216
|
+
commands,
|
|
1217
|
+
commandsResolved,
|
|
1218
|
+
lockForQuestion,
|
|
1219
|
+
submitDisabled,
|
|
1220
|
+
clearOnSend,
|
|
1221
|
+
tI18nComplete,
|
|
1222
|
+
sessionWorking,
|
|
1223
|
+
isBusy,
|
|
1224
|
+
runtimeReady,
|
|
1225
|
+
onCommand,
|
|
1226
|
+
onHoldCommand,
|
|
1227
|
+
clearSavedDraft,
|
|
1228
|
+
handleDocChange,
|
|
1229
|
+
setQuoteList,
|
|
1230
|
+
restoreQuoteTexts,
|
|
1231
|
+
setPasteList,
|
|
1232
|
+
restorePastes,
|
|
1233
|
+
onCustomAnswer,
|
|
1234
|
+
onQuestionAction,
|
|
1235
|
+
onSend,
|
|
1236
|
+
promptAttachments,
|
|
1237
|
+
]);
|
|
1238
|
+
/**
|
|
1239
|
+
* One user action = one submission — without eating the next one. The whole
|
|
1240
|
+
* story (why a latch exists, why a blanket `if (inFlight) return` silently
|
|
1241
|
+
* dropped the second message a user typed while the previous send's ACK was
|
|
1242
|
+
* pending, and how a double-fire is told apart from a distinct message) lives
|
|
1243
|
+
* on `createSubmitLatch`.
|
|
1244
|
+
*
|
|
1245
|
+
* Created ONCE and dispatching through a ref: the latch's in-flight state
|
|
1246
|
+
* must survive re-renders (a fresh latch mid-send would reopen the
|
|
1247
|
+
* double-fire window), while each later submit must read the CURRENT
|
|
1248
|
+
* dispatch closure, not the one from the render that created the latch.
|
|
1249
|
+
*
|
|
1250
|
+
* A layout effect, so it runs before every passive effect of the same
|
|
1251
|
+
* commit: the prefill effect above submits in the commit that delivers the
|
|
1252
|
+
* prefill, and must send with this render's agent, model and effort.
|
|
1253
|
+
*/
|
|
1254
|
+
const dispatchSubmissionRef = useRef(dispatchSubmission);
|
|
1255
|
+
useLayoutEffect(() => {
|
|
1256
|
+
dispatchSubmissionRef.current = dispatchSubmission;
|
|
1257
|
+
});
|
|
1258
|
+
const submitLatchRef = useRef(null);
|
|
1259
|
+
const handleSubmit = useCallback((placement = 'transcript') => {
|
|
1260
|
+
submitPlacementRef.current = placement;
|
|
1261
|
+
// A stash whose dispatch no host took comes back as it left: merged into
|
|
1262
|
+
// whatever the user typed since, with its files back in the tray.
|
|
1263
|
+
const restoreStashedDraft = (stash, withText) => {
|
|
1264
|
+
// The stash handed its pictures to the sent cache at capture. The tray draws them again.
|
|
1265
|
+
disownSentAttachmentPreviews(stash.files);
|
|
1266
|
+
// A question answer takes only the text, so the quotes come back
|
|
1267
|
+
// whatever the outcome.
|
|
1268
|
+
restoreQuoteTexts(stash.quotes.map((quote) => quote.text));
|
|
1269
|
+
restorePastes(stash.pastes);
|
|
1270
|
+
const editor = editorRef.current;
|
|
1271
|
+
const plan = planFailedSendRecovery({
|
|
1272
|
+
clearOnSend: true,
|
|
1273
|
+
submittedDoc: withText ? stash.doc : null,
|
|
1274
|
+
submittedIsEmpty: !withText,
|
|
1275
|
+
currentDoc: editor?.getDocument() ?? null,
|
|
1276
|
+
currentIsEmpty: editor?.isEmpty() ?? true,
|
|
1277
|
+
currentAttachedFiles: attachedFilesRef.current,
|
|
1278
|
+
sentFiles: stash.files,
|
|
1279
|
+
});
|
|
1280
|
+
if (!plan)
|
|
1281
|
+
return;
|
|
1282
|
+
if (plan.restoreDoc)
|
|
1283
|
+
setDocumentWithoutStealingFocus(editor, plan.restoreDoc);
|
|
1284
|
+
attachedFilesRef.current = plan.attachedFiles;
|
|
1285
|
+
setAttachedFiles(plan.attachedFiles);
|
|
1286
|
+
};
|
|
1287
|
+
// Lazy-created at the first submit (never during render, which the
|
|
1288
|
+
// compiler's ref rules forbid) and reused forever after.
|
|
1289
|
+
submitLatchRef.current ??= createSubmitLatch((stash) => dispatchLatched(stash, (current) => dispatchSubmissionRef.current(current), promptAttachmentsRef.current, restoreStashedDraft),
|
|
1290
|
+
// Typed text is what marks a re-entrant submit as a distinct message
|
|
1291
|
+
// worth stashing; a double-fire arrives with the editor already
|
|
1292
|
+
// cleared. The stash takes the draft OUT of the editor right now — the
|
|
1293
|
+
// user sees the message leave on Enter, exactly as a direct send — and
|
|
1294
|
+
// submits it immediately, even while another acceptance is pending. Files ride
|
|
1295
|
+
// along from the synchronous mirror, not from React state that may not
|
|
1296
|
+
// have flushed.
|
|
1297
|
+
() => {
|
|
1298
|
+
const editor = editorRef.current;
|
|
1299
|
+
const content = editor?.getContent();
|
|
1300
|
+
// Typed text only. Quotes alone do not arm the stash: a question-locked
|
|
1301
|
+
// double-fire keeps its quotes in the list, and would run the question
|
|
1302
|
+
// action twice. A quote-only Enter mid-send is ignored; the quotes stay.
|
|
1303
|
+
if (!editor || !content || !content.text.trim())
|
|
1304
|
+
return null;
|
|
1305
|
+
const quotes = quotesRef.current;
|
|
1306
|
+
const pastes = pastesRef.current;
|
|
1307
|
+
const doc = editor.getDocument() ?? null;
|
|
1308
|
+
const files = attachedFilesRef.current;
|
|
1309
|
+
// Handed off before the editor clears. A failed upload keeps the draft
|
|
1310
|
+
// in the editor, where the Send control says why.
|
|
1311
|
+
const attachmentSubmission = captureAttachmentSubmission(files, promptAttachmentsRef.current);
|
|
1312
|
+
if (!attachmentSubmission)
|
|
1313
|
+
return null;
|
|
1314
|
+
editor.clear();
|
|
1315
|
+
setQuoteList(() => []);
|
|
1316
|
+
setPasteList(() => []);
|
|
1317
|
+
attachedFilesRef.current = [];
|
|
1318
|
+
setAttachedFiles([]);
|
|
1319
|
+
return {
|
|
1320
|
+
content,
|
|
1321
|
+
doc,
|
|
1322
|
+
files,
|
|
1323
|
+
quotes,
|
|
1324
|
+
pastes,
|
|
1325
|
+
attachmentSubmission,
|
|
1326
|
+
placement: submitPlacementRef.current,
|
|
1327
|
+
};
|
|
1328
|
+
});
|
|
1329
|
+
return submitLatchRef.current();
|
|
1330
|
+
// `restoreQuoteTexts`, `setQuoteList`, `restorePastes` and `setPasteList`
|
|
1331
|
+
// are stable (`useCallback` over refs), so the handler stays created
|
|
1332
|
+
// once, like its other ref inputs.
|
|
1333
|
+
}, []);
|
|
1334
|
+
useEffect(() => {
|
|
1335
|
+
handleSubmitRef.current = () => void handleSubmit();
|
|
1336
|
+
}, [handleSubmit]);
|
|
1337
|
+
// A question lock owns the editor: Up there is a caret move, never a take-back.
|
|
1338
|
+
const handleArrowUpAtStart = useCallback(() => (lockForQuestion ? false : (onArrowUpAtStart?.() ?? false)), [lockForQuestion, onArrowUpAtStart]);
|
|
1339
|
+
const editorPlaceholder = resolveEditorPlaceholder({
|
|
1340
|
+
lockForApproval,
|
|
1341
|
+
lockForQuestion,
|
|
1342
|
+
questionButtonLabel,
|
|
1343
|
+
placeholder: hint ?? placeholder,
|
|
1344
|
+
});
|
|
1345
|
+
/**
|
|
1346
|
+
* The rotating-hint overlay owns the placeholder only in the plain idle
|
|
1347
|
+
* state. A lock's copy is functional ("Answer the question…"), and a
|
|
1348
|
+
* disabled editor should not advertise shortcuts it will not honour — in
|
|
1349
|
+
* both cases the static TipTap placeholder keeps the job. While the overlay
|
|
1350
|
+
* IS active the editor gets `''`, so its `::before` renders empty and two
|
|
1351
|
+
* placeholders never paint at once (see animated-placeholder.tsx).
|
|
1352
|
+
*/
|
|
1353
|
+
const animatePlaceholder = isEmpty && !editorDisabled && !lockForQuestion && !hint;
|
|
1354
|
+
/**
|
|
1355
|
+
* Whether the inset strip above the card has anything to show. Gated on
|
|
1356
|
+
* actual CONTENT, never on `sessionId`: that was truthy in every session, so
|
|
1357
|
+
* the strip's padded, bordered shell rendered as an empty rounded sliver
|
|
1358
|
+
* floating above the notice bar whenever it was empty. A session's queued
|
|
1359
|
+
* messages render here, as the first child of `inputSlot`
|
|
1360
|
+
* (`queued-prompt-list.tsx`).
|
|
1361
|
+
*/
|
|
1362
|
+
const showQueueStrip = Boolean(inputSlot);
|
|
1363
|
+
const cardProps = {
|
|
1364
|
+
tHardcodedUi,
|
|
1365
|
+
isDragOver,
|
|
1366
|
+
// Inside a `ComposerDropZone` the zone owns every file drag.
|
|
1367
|
+
handleDragEnter: inDropZone ? undefined : handleDragEnter,
|
|
1368
|
+
handleDragOver: inDropZone ? undefined : handleDragOver,
|
|
1369
|
+
handleDragLeave: inDropZone ? undefined : handleDragLeave,
|
|
1370
|
+
handleDropFiles: inDropZone ? undefined : handleDropFiles,
|
|
1371
|
+
attachedFiles,
|
|
1372
|
+
promptAttachmentItems,
|
|
1373
|
+
removeAttachedFile,
|
|
1374
|
+
retryAttachedFile,
|
|
1375
|
+
pastes,
|
|
1376
|
+
removePaste,
|
|
1377
|
+
commandAttachmentPlan,
|
|
1378
|
+
editorDisabled,
|
|
1379
|
+
editorRef,
|
|
1380
|
+
setEditorRef,
|
|
1381
|
+
editorPlaceholder,
|
|
1382
|
+
animatePlaceholder,
|
|
1383
|
+
handleSubmit,
|
|
1384
|
+
handleArrowUpAtStart,
|
|
1385
|
+
setIsEmpty,
|
|
1386
|
+
handleDocChange: handleEditorDocChange,
|
|
1387
|
+
allSessions,
|
|
1388
|
+
slashActions,
|
|
1389
|
+
handleSelectAction,
|
|
1390
|
+
dockId,
|
|
1391
|
+
setMenuOpen,
|
|
1392
|
+
fileInputRef,
|
|
1393
|
+
handleFileSelect,
|
|
1394
|
+
handleAttachClick,
|
|
1395
|
+
primaryAgents,
|
|
1396
|
+
availableSelectedModel,
|
|
1397
|
+
agentMenuOpen,
|
|
1398
|
+
setAgentMenuOpen,
|
|
1399
|
+
modelMenuOpen,
|
|
1400
|
+
setModelMenuOpen,
|
|
1401
|
+
reasoningMenuOpen,
|
|
1402
|
+
setReasoningMenuOpen,
|
|
1403
|
+
isEmpty,
|
|
1404
|
+
canSubmit,
|
|
1405
|
+
submitDisabled,
|
|
1406
|
+
attachmentFailed,
|
|
1407
|
+
modelRejectingImages,
|
|
1408
|
+
imagesUnsupportedReason,
|
|
1409
|
+
modelUnavailable,
|
|
1410
|
+
agentUnavailable,
|
|
1411
|
+
noModelsConnected,
|
|
1412
|
+
};
|
|
1413
|
+
const aboveProps = {
|
|
1414
|
+
dockId,
|
|
1415
|
+
quotes,
|
|
1416
|
+
quoteListLabels,
|
|
1417
|
+
handleRemoveQuote,
|
|
1418
|
+
};
|
|
1419
|
+
return (_jsxs("div", { className: cn(COMPOSER_SHELL_CLASS,
|
|
1420
|
+
// `'below'` docks the `/` menu as an overlay of later siblings
|
|
1421
|
+
// (starter suggestions). `twMerge` replaces the shell's `z-10` so
|
|
1422
|
+
// this stacking context sits above them; the dock's own `z-99` only
|
|
1423
|
+
// ranks inside this shell and cannot do that job.
|
|
1424
|
+
slashMenuPlacement === 'below' && 'z-50', parentClassName), children: [_jsx(ComposerAboveCard, { ...props, ...aboveProps }), _jsx(ComposerCard, { ...props, ...cardProps })] }));
|
|
1425
|
+
}
|
|
1426
|
+
export const Composer = memo(ComposerImpl);
|