zidane-ui 9.1.4 → 9.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/server-extensions-host.js +1 -1
- package/dist/adapters/server-host.js +2 -1
- package/dist/adapters/server-machines-host.js +1 -1
- package/dist/adapters/server-session-host.js +87 -13
- package/dist/adapters/server-settings-host.js +1 -1
- package/dist/appearance/AppearanceProvider.js +2 -2
- package/dist/appearance/headless/index.js +1 -1
- package/dist/approvals/headless/index.js +2 -2
- package/dist/chat/HostTranscript.d.ts +5 -1
- package/dist/chat/HostTranscript.js +16 -4
- package/dist/chat/RunEstimateChip.d.ts +5 -3
- package/dist/chat/RunEstimateChip.js +33 -3
- package/dist/chat/Transcript.js +1 -1
- package/dist/chat/composer/ConversationBadges.js +16 -10
- package/dist/chat/composer/composer-bus.d.ts +2 -2
- package/dist/chat/composer/composer-bus.js +2 -2
- package/dist/chat/composer/use-composer-stores.js +1 -1
- package/dist/chat/composer/use-run-meter.js +1 -1
- package/dist/chat/headless/composer/conversation-badges.d.ts +8 -3
- package/dist/chat/headless/composer/conversation-badges.js +26 -11
- package/dist/chat/headless/composer/index.js +2 -2
- package/dist/chat/headless/composer/labels-chrome.d.ts +3 -1
- package/dist/chat/headless/composer/labels-chrome.js +3 -1
- package/dist/chat/headless/index.d.ts +6 -3
- package/dist/chat/headless/index.js +16 -13
- package/dist/chat/headless/labels.d.ts +54 -1
- package/dist/chat/headless/labels.js +62 -2
- package/dist/chat/headless/secrets.d.ts +32 -0
- package/dist/chat/headless/secrets.js +43 -0
- package/dist/chat/headless/session-list.d.ts +45 -0
- package/dist/chat/headless/sidebar/estimates.js +13 -1
- package/dist/chat/headless/sidebar/history.d.ts +71 -0
- package/dist/chat/headless/sidebar/history.js +174 -0
- package/dist/chat/headless/sidebar/index.d.ts +3 -2
- package/dist/chat/headless/sidebar/index.js +2 -1
- package/dist/chat/headless/sidebar/labels.d.ts +50 -0
- package/dist/chat/headless/sidebar/labels.js +1 -0
- package/dist/chat/headless/sidebar/query.d.ts +2 -2
- package/dist/chat/headless/sidebar/query.js +6 -3
- package/dist/chat/headless/sidebar/types.d.ts +7 -1
- package/dist/chat/headless/sidebar/view.js +2 -0
- package/dist/chat/headless/transcript/auth-failure.d.ts +67 -0
- package/dist/chat/headless/transcript/auth-failure.js +87 -0
- package/dist/chat/headless/transcript/index.d.ts +2 -1
- package/dist/chat/headless/transcript/index.js +2 -1
- package/dist/chat/headless/transcript/nesting.d.ts +3 -3
- package/dist/chat/headless/transcript/nesting.js +12 -4
- package/dist/chat/index.d.ts +4 -2
- package/dist/chat/index.js +3 -1
- package/dist/chat/interactions/InboxPanel.d.ts +6 -2
- package/dist/chat/interactions/InboxPanel.js +82 -44
- package/dist/chat/interactions/PlanCard.d.ts +2 -2
- package/dist/chat/interactions/PlanCard.js +1 -1
- package/dist/chat/interactions/QuestionField.d.ts +8 -3
- package/dist/chat/interactions/QuestionField.js +89 -8
- package/dist/chat/interactions/QuestionForm.d.ts +3 -1
- package/dist/chat/interactions/QuestionForm.js +48 -10
- package/dist/chat/interactions/SecretInput.d.ts +32 -0
- package/dist/chat/interactions/SecretInput.js +72 -0
- package/dist/chat/interactions/card-ui.d.ts +5 -3
- package/dist/chat/interactions/card-ui.js +5 -3
- package/dist/chat/interactions/index.d.ts +2 -1
- package/dist/chat/interactions/index.js +2 -1
- package/dist/chat/sidebar/SessionSidebar.js +2 -0
- package/dist/chat/sidebar/SidebarFilterMenu.d.ts +7 -2
- package/dist/chat/sidebar/SidebarFilterMenu.js +26 -2
- package/dist/chat/sidebar/SidebarSessionRow.d.ts +3 -1
- package/dist/chat/sidebar/SidebarSessionRow.js +8 -3
- package/dist/chat/sidebar/sidebar-live.js +8 -4
- package/dist/chat/transcript/AuthFailureCard.d.ts +34 -0
- package/dist/chat/transcript/AuthFailureCard.js +358 -0
- package/dist/chat/transcript/InteractionToolBody.js +12 -2
- package/dist/chat/transcript/actions.d.ts +24 -1
- package/dist/chat/transcript/index.d.ts +3 -2
- package/dist/chat/transcript/index.js +2 -1
- package/dist/chat/transcript/notices.d.ts +2 -1
- package/dist/chat/transcript/notices.js +13 -1
- package/dist/chat/transcript/script-input.d.ts +1 -1
- package/dist/chat/transcript/shell-block.js +1 -1
- package/dist/components/HowItWorks.d.ts +8 -1
- package/dist/components/HowItWorks.js +2 -2
- package/dist/components/RowActionsMenu.d.ts +6 -1
- package/dist/components/RowActionsMenu.js +4 -0
- package/dist/core.css +24 -0
- package/dist/dist/{index-WlE93Q6d.d.ts → index-DqCio7Nd.d.ts} +36 -3
- package/dist/dist/index-f-XWIoYo.d.ts +1 -0
- package/dist/dist/index.d.ts +6 -0
- package/dist/dist/sandbox-B4OW6oNx.d.ts +2 -0
- package/dist/dist/timeout-B5pO5I5a.d.ts +30 -0
- package/dist/extensions/ExtensionSettingsPage.js +1 -1
- package/dist/extensions/ExtensionSettingsSidebar.js +1 -1
- package/dist/extensions/headless/fixture-host.js +1 -1
- package/dist/extensions/headless/index.js +4 -4
- package/dist/extensions/hooks.js +1 -1
- package/dist/files/DiffsTab.js +1 -1
- package/dist/files/EditorColumn.js +1 -1
- package/dist/files/MediaDiff.js +1 -1
- package/dist/files/SearchPanel.js +121 -53
- package/dist/files/headless/name-match.js +29 -14
- package/dist/files/useEntryActions.js +1 -1
- package/dist/files/useOpenFiles.js +1 -1
- package/dist/git/WherePicker.js +2 -2
- package/dist/git/headless/environment.d.ts +6 -1
- package/dist/git/headless/environment.js +5 -2
- package/dist/git/headless/labels.d.ts +2 -0
- package/dist/git/headless/labels.js +2 -0
- package/dist/git/index.d.ts +2 -1
- package/dist/git/index.js +2 -1
- package/dist/git/useStartFromPanel.d.ts +22 -0
- package/dist/git/useStartFromPanel.js +91 -0
- package/dist/keybindings/KeyCommands.js +1 -1
- package/dist/keybindings/KeybindingsProvider.js +1 -1
- package/dist/keybindings/headless/catalog.d.ts +1 -1
- package/dist/keybindings/headless/catalog.js +14 -2
- package/dist/keybindings/headless/index.js +2 -2
- package/dist/keybindings/headless/key-scope.d.ts +4 -2
- package/dist/keybindings/headless/key-scope.js +17 -2
- package/dist/keybindings/headless/overrides.js +1 -1
- package/dist/machines/HostSyncPanel.js +1 -1
- package/dist/machines/SyncOutcomeBadge.js +1 -1
- package/dist/machines/headless/index.js +1 -1
- package/dist/onboarding/demos/features.d.ts +9 -1
- package/dist/onboarding/demos/features.js +107 -2
- package/dist/onboarding/demos/how-it-works.d.ts +5 -1
- package/dist/onboarding/demos/how-it-works.js +120 -2
- package/dist/onboarding/demos/index.js +1 -1
- package/dist/onboarding/headless/labels.d.ts +17 -0
- package/dist/onboarding/headless/labels.js +17 -0
- package/dist/onboarding/index.js +4 -4
- package/dist/onboarding/marks.d.ts +1 -2
- package/dist/onboarding/marks.js +4 -12
- package/dist/onboarding/steps/ConnectorsStep.js +1 -1
- package/dist/onboarding/steps/ReadyStep.js +1 -1
- package/dist/onboarding/steps/SkillsStep.js +1 -1
- package/dist/onboarding/steps/connect/ProviderPanel.js +1 -1
- package/dist/onboarding/tutorials.d.ts +3 -1
- package/dist/onboarding/tutorials.js +2 -1
- package/dist/palette/app-sources.js +1 -1
- package/dist/palette/headless/app-sources.js +10 -0
- package/dist/palette/headless/labels.js +2 -0
- package/dist/session/ArtifactsPanel.js +1 -1
- package/dist/session/PanelAttention.d.ts +14 -6
- package/dist/session/PanelAttention.js +35 -24
- package/dist/session/PlanTracker.d.ts +54 -0
- package/dist/session/PlanTracker.js +413 -0
- package/dist/session/ProjectHome.d.ts +15 -2
- package/dist/session/ProjectHome.js +158 -85
- package/dist/session/RemindersPanel.d.ts +25 -0
- package/dist/session/RemindersPanel.js +526 -0
- package/dist/session/SecretsPanel.d.ts +19 -0
- package/dist/session/SecretsPanel.js +241 -0
- package/dist/session/SessionProvider.d.ts +26 -5
- package/dist/session/SessionProvider.js +51 -6
- package/dist/session/StepStatusIcon.d.ts +24 -0
- package/dist/session/StepStatusIcon.js +50 -0
- package/dist/session/TodoList.d.ts +4 -3
- package/dist/session/TodoList.js +6 -5
- package/dist/session/headless/fixture-host.d.ts +32 -22
- package/dist/session/headless/fixture-host.js +86 -51
- package/dist/session/headless/fixture-plans.d.ts +57 -0
- package/dist/session/headless/fixture-plans.js +141 -0
- package/dist/session/headless/fixture-schedules.d.ts +49 -0
- package/dist/session/headless/fixture-schedules.js +133 -0
- package/dist/session/headless/home-layout.d.ts +10 -2
- package/dist/session/headless/home-layout.js +7 -2
- package/dist/session/headless/host.d.ts +85 -13
- package/dist/session/headless/index.d.ts +5 -3
- package/dist/session/headless/index.js +5 -3
- package/dist/session/headless/labels.d.ts +95 -12
- package/dist/session/headless/labels.js +67 -18
- package/dist/session/headless/plans.d.ts +53 -0
- package/dist/session/headless/plans.js +78 -0
- package/dist/session/headless/reminder-labels.d.ts +63 -0
- package/dist/session/headless/reminder-labels.js +84 -0
- package/dist/session/headless/schedules.d.ts +93 -0
- package/dist/session/headless/schedules.js +190 -0
- package/dist/session/headless/secrets.d.ts +28 -0
- package/dist/session/headless/secrets.js +48 -0
- package/dist/session/index.d.ts +7 -5
- package/dist/session/index.js +6 -4
- package/dist/session/testing/contract.d.ts +18 -5
- package/dist/session/testing/contract.js +351 -43
- package/dist/session/testing/index.d.ts +4 -2
- package/dist/session/testing/index.js +4 -2
- package/dist/settings/headless/catalog.js +17 -1
- package/dist/settings/headless/index.d.ts +2 -2
- package/dist/settings/headless/index.js +3 -3
- package/dist/settings/headless/labels.d.ts +0 -2
- package/dist/settings/headless/labels.js +0 -2
- package/dist/settings/headless/layout.js +7 -1
- package/dist/settings/headless/providers.d.ts +17 -1
- package/dist/settings/headless/providers.js +19 -1
- package/dist/settings/headless/search.d.ts +1 -1
- package/dist/settings/rows.d.ts +1 -1
- package/dist/settings/rows.js +2 -2
- package/dist/settings/sections/appearance/AppearanceSection.js +2 -2
- package/dist/settings/sections/claude-import/ClaudeImportDialog.js +1 -1
- package/dist/settings/sections/editor/EditorSection.js +1 -1
- package/dist/settings/sections/environments/EnvironmentsSection.js +1 -1
- package/dist/settings/sections/extensions/ChangeOriginDialog.js +1 -1
- package/dist/settings/sections/extensions/CreateExtensionDialog.js +1 -1
- package/dist/settings/sections/extensions/ExtensionsSection.js +1 -1
- package/dist/settings/sections/host-catalog/HostCatalogSection.js +1 -1
- package/dist/settings/sections/instructions/InstructionsSection.js +1 -1
- package/dist/settings/sections/keybindings/labels.d.ts +2 -0
- package/dist/settings/sections/keybindings/labels.js +2 -0
- package/dist/settings/sections/keybindings/rows.js +8 -0
- package/dist/settings/sections/mcp/McpSection.js +1 -1
- package/dist/settings/sections/mcp/McpServerRow.js +1 -1
- package/dist/settings/sections/models/ModelRows.js +2 -2
- package/dist/settings/sections/providers/ProvidersSection.js +209 -201
- package/dist/settings/sections/providers/ServerProvidersSection.js +1 -1
- package/dist/settings/sections/shared/catalog.js +1 -1
- package/dist/settings/sections/skills/SkillList.js +1 -1
- package/dist/settings/sections/skills/SkillsSection.js +2 -2
- package/dist/styles.css +59 -1
- package/dist/terminal/HostTerminalSurface.js +2 -2
- package/dist/workspace/PanelContentView.d.ts +22 -4
- package/dist/workspace/PanelContentView.js +112 -16
- package/dist/workspace/PanelGlyph.d.ts +21 -0
- package/dist/workspace/PanelGlyph.js +33 -0
- package/dist/workspace/PanelHome.js +5 -3
- package/dist/workspace/PanelStrip.js +11 -4
- package/dist/workspace/PanelToolbar.d.ts +32 -0
- package/dist/workspace/PanelToolbar.js +194 -0
- package/dist/workspace/WorkspaceProvider.d.ts +3 -1
- package/dist/workspace/WorkspaceProvider.js +6 -2
- package/dist/workspace/extension-tabs.js +5 -2
- package/dist/workspace/headless/host.d.ts +4 -0
- package/dist/workspace/headless/index.d.ts +3 -1
- package/dist/workspace/headless/index.js +4 -2
- package/dist/workspace/headless/labels.d.ts +10 -0
- package/dist/workspace/headless/labels.js +11 -1
- package/dist/workspace/headless/pages.d.ts +15 -0
- package/dist/workspace/headless/pages.js +49 -0
- package/dist/workspace/headless/tab-mark.d.ts +14 -0
- package/dist/workspace/headless/tab-mark.js +27 -0
- package/dist/workspace/headless/view.d.ts +7 -1
- package/dist/workspace/index.d.ts +3 -2
- package/dist/workspace/index.js +3 -2
- package/dist/workspace/testing/index.js +6 -0
- package/dist/workspace/workspace-key-commands.js +3 -3
- package/package.json +2 -2
- package/src/styles/motion.css +13 -0
- package/src/styles/onboarding.css +0 -1
- package/src/styles/primitives.css +10 -0
- package/src/styles/workspace.css +17 -0
- package/dist/session/TodosPanel.d.ts +0 -19
- package/dist/session/TodosPanel.js +0 -251
- package/dist/session/headless/todos.d.ts +0 -22
- package/dist/session/headless/todos.js +0 -38
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Readable, Writable, constant, useReadable, writable } from "./store.js";
|
|
2
2
|
import { SessionNotification, SessionNotificationStore, createNotificationStore } from "./sidebar/notifications.js";
|
|
3
|
-
import { SessionActivityFilter, SessionArchiveFilter, SidebarExtensionView, SidebarGroupBy, SidebarListSession, SidebarSortBy, SidebarView, VIEW_CHOICE } from "./sidebar/types.js";
|
|
3
|
+
import { SessionActivityFilter, SessionArchiveFilter, SidebarExtensionView, SidebarGroupBy, SidebarListSession, SidebarOrigin, SidebarSortBy, SidebarView, VIEW_CHOICE } from "./sidebar/types.js";
|
|
4
4
|
import { DEFAULT_SIDEBAR_VIEW, DEFAULT_SWITCHER_PREFS, SIDEBAR_SPACE_KEY, SIDEBAR_SWITCHER_KEY, SIDEBAR_VIEW_KEY, SidebarLastSessions, SidebarViewMap, SidebarViewRecord, SidebarViews, SidebarViewsHost, SidebarViewsOptions, SidebarViewsStorage, SpaceSwitcherPrefs, createSidebarViews, parseSidebarView, parseSwitcherPrefs, readSidebarViews } from "./sidebar/view.js";
|
|
5
5
|
import { AGENT_GROUPING, MAX_ROW_CHIPS, NO_SIDEBAR_CONTRIBUTIONS, SidebarContributionStores, SidebarContributions, SidebarGrouping, SidebarItemEntry, SidebarQueryLayer, SidebarRowChip, SidebarRowDecoration, SidebarSpace, claimChildSessions, clearedViewFilters, createDecorator, extensionSpaceOf, filterQueryOf, filtersForSpace, itemsForSpace, mergeSidebarSpaces, nextSavedViewName, resolveGrouping, resolveSort, sidebarContributionsOf, spaceMembership, switcherSpaces, viewFilterOf, viewFiltersOn } from "./sidebar/query.js";
|
|
6
6
|
import { DirectoryServer, DirectorySettings, ProjectInSpace, SessionDirectory, SessionDirectoryOptions, SessionDirectorySource, SessionDirectoryState, SessionDirectoryStreams, SessionRef, SessionRemoval, availableProjectsOf, createSessionDirectory, filterDirectorySessions, projectKeyOf, sessionRefsOf } from "./sidebar/directory.js";
|
|
@@ -14,7 +14,8 @@ import { EMPTY_RUN_METER, RunMeter, RunMeterRow, RunMeterSignal, RunMeterState,
|
|
|
14
14
|
import { ComposerAgentProfile, ComposerAgents, ComposerCacheImpact, ComposerCacheImpactChange, ComposerContext, ComposerContextBreakdown, ComposerContextStatus, ComposerControls, ComposerCostStatus, ComposerEffort, ComposerModels, ComposerPrefs, ComposerPrefsState, ComposerRememberedModel, ComposerRunProgress, ComposerRuns, ComposerSessionView } from "./composer/host-chrome.js";
|
|
15
15
|
import { DEFAULT_MODEL_PICKER_PREFS, MODEL_PICKER_STORAGE_KEY, ModelPickerPrefs, ModelPickerPrefsStorage, ModelPickerPrefsStore, createModelPickerPrefs, parseModelPickerPrefs } from "./composer/model-picker-prefs.js";
|
|
16
16
|
import { CommandArgSuggestionSummary, CommandSummary, ComposerAttachment, ComposerAutocomplete, ComposerCommandArgs, ComposerCompletions, ComposerDraftAttachmentsListener, ComposerDrafts, ComposerExtensionItem, ComposerExtensionProvider, ComposerFolderLocation, ComposerFolders, ComposerHost, ComposerPromptSuggestion, ComposerScope, ComposerSharedGhost, ComposerSuggestions, FileEntry, PromptAttachment, SharedDraft, SharedDraftAttachmentsChange, SharedDraftChange, SkillConfig } from "./composer/host.js";
|
|
17
|
-
import {
|
|
17
|
+
import { SecretTimeLeft, secretTimeLeft, secretTimeLeftIso } from "./secrets.js";
|
|
18
|
+
import { ChatLabels, DEFAULT_CHAT_LABELS, secretExpiryWords } from "./labels.js";
|
|
18
19
|
import { HostStatus, HostView, hostReachable, hostStatusLabel } from "./hosts.js";
|
|
19
20
|
import { SessionBadgesEntry, SessionBadgesSource, SessionBadgesStore, createSessionBadges } from "./sidebar/badges.js";
|
|
20
21
|
import { SessionWindowMode, SidebarEnvironmentHost, SidebarHost } from "./sidebar/host.js";
|
|
@@ -38,6 +39,7 @@ import { nestToolCalls, nestedCallVisible } from "./transcript/nesting.js";
|
|
|
38
39
|
import { PairingResult, ToolPairing, pairToolEvents } from "./transcript/pairing.js";
|
|
39
40
|
import { FoldActionItem, FoldActionState, foldActionItems, toolAction } from "./transcript/fold-actions.js";
|
|
40
41
|
import { RunFailure, failureTooltip, markRunFailures } from "./transcript/run-failures.js";
|
|
42
|
+
import { AuthCardPlan, AuthFixes, AuthSettingsTarget, authFailureDetails, createAuthFixes, isAuthFixed, planAuthCard } from "./transcript/auth-failure.js";
|
|
41
43
|
import { SelectStops, computeSelectStops, rowTurnIds, stopForRow } from "./transcript/select-stops.js";
|
|
42
44
|
import "./transcript/index.js";
|
|
43
45
|
import { FrameScheduler, defaultFrameScheduler } from "./streams/scheduler.js";
|
|
@@ -62,6 +64,7 @@ import { COMMON_EMOJI, MAIN_SESSION_ICON_KEY, PROJECT_ICONS_KEY, ProjectIcon, Pr
|
|
|
62
64
|
import { SessionActivity, SessionActivitySignal, SessionActivityStore, activityLabel, createSessionActivity, reduceActivity } from "./sidebar/activity.js";
|
|
63
65
|
import { RunEstimatesRow, RunEstimatesSignal, RunEstimatesStore, createRunEstimates, pickRunEstimate } from "./sidebar/estimates.js";
|
|
64
66
|
import { CompactionProgress, CompactionProgressStore, CompactionSignal, createCompactionProgress, reduceCompaction } from "./sidebar/compaction.js";
|
|
67
|
+
import { SESSION_HISTORY_LIMIT, SessionHistory, SessionHistoryDirection, SessionHistoryOptions, SessionHistoryPage, SessionHistoryState, SessionHistoryStore, createSessionHistory, parseSessionHistory } from "./sidebar/history.js";
|
|
65
68
|
import { DotStateInput, SidebarDotState, deriveDotState } from "./sidebar/dot-state.js";
|
|
66
69
|
import { deleteSessionPrompt, environmentKindLabel, environmentSummaryText, runsInRemoteSandbox } from "./sidebar/environment.js";
|
|
67
70
|
import "./sidebar/index.js";
|
|
@@ -76,4 +79,4 @@ import { EffortPickerTarget, defaultModelPatch, effortPickerTarget, rememberedDe
|
|
|
76
79
|
import { ConversationBadge, ConversationBadgeData, ConversationBadgeInput, InboxSummary, MAX_EXTENSION_COMPOSER_BADGES, conversationBadges, resolveBadgePanel } from "./composer/conversation-badges.js";
|
|
77
80
|
import { ModelNames, ModelNamesProvider, ModelNamesStore, createModelNames, modelNamesOf, namerFor } from "./composer/model-names.js";
|
|
78
81
|
import "./composer/index.js";
|
|
79
|
-
export { AGENT_GROUPING, type BashExitMeta, BuildQuerySidebarRowsOptions, BuildSidebarRowsOptions, CHATS_BUCKET, CHUNK_THRESHOLD, COMMON_EMOJI, CalendarOptions, ChatAttachment, ChatBadgeActions, ChatBlockRunOptions, ChatBlockRunTransport, ChatBlockRuns, ChatChipDetails, ChatCommandFacts, ChatCommit, ChatContextFacts, ChatEvent, ChatHost, ChatInteraction, ChatLabels, ChatModel, ChatModelProvider, ChatPaths, ChatReferences, ChatReferencesChange, ChatResolvedPath, ChatSearchState, ChatSearchSync, ChatSession, ChatSessionFacts, ChatSessionStatus, ChatSiteIcons, ChatSkillFacts, ChipResolution, ChipViewLabels, type Cluster, type CommandArgSuggestionSummary, type CommandSummary, CompactionProgress, CompactionProgressStore, CompactionSignal, ComposerAgentProfile, ComposerAgents, ComposerAttachment, ComposerAutocomplete, ComposerCacheImpact, ComposerCacheImpactChange, ComposerChromeLabels, ComposerCommandArgs, ComposerCompletions, ComposerContext, ComposerContextBreakdown, ComposerContextStatus, ComposerControls, ComposerCostStatus, ComposerDraftAttachmentsListener, ComposerDrafts, ComposerEffort, ComposerExtensionItem, ComposerExtensionProvider, ComposerFolderLocation, ComposerFolders, ComposerHost, ComposerLabels, type ComposerListScope, type ComposerLists, ComposerMode, ComposerModelEntry, ComposerModelOption, ComposerModels, ComposerPrefs, ComposerPrefsState, ComposerPromptSuggestion, ComposerRememberedModel, ComposerRunProgress, ComposerRuns, ComposerScope, ComposerSessionView, ComposerSharedGhost, ComposerSuggestions, ConversationBadge, ConversationBadgeData, ConversationBadgeInput, DEFAULT_CHAT_LABELS, DEFAULT_COMPOSER_CHROME_LABELS, DEFAULT_COMPOSER_LABELS, DEFAULT_MODEL_PICKER_PREFS, DEFAULT_SIDEBAR_LABELS, DEFAULT_SIDEBAR_VIEW, DEFAULT_SWITCHER_PREFS, DeltaBucket, DirectoryServer, DirectorySettings, DotStateInput, type DotVariant, DraftFolderSource, DraftFolderState, DraftScope, DraftScopeState, DraftScopeStore, DraftScopeStoreOptions, type DrainPlan, EMPTY_RUN_METER, EffortPickerTarget, type ExchangeFoldStats, FileChip, FileChipKind, type FileEntry, type FoldActionItem, type FoldActionState, type FrameScheduler, type GroupCluster, HostStatus, HostView, ImageModelRow, InboxSummary, LIVE_BLOCK_RUN_LINES, type LazyList, ListableSession, LiveBlockRun, LiveCostStatus, LiveStreamProgress, type LoadEarlierOptions, MAIN_SESSION_ICON_KEY, MAX_EXTENSION_COMPOSER_BADGES, MAX_ROW_CHIPS, MODEL_PICKER_STORAGE_KEY, ModelCatalogRow, ModelKnobs, ModelKnobsMemory, ModelKnobsStore, ModelNames, ModelNamesProvider, ModelNamesStore, ModelPickRef, ModelPickerPrefs, ModelPickerPrefsStorage, ModelPickerPrefsStore, NO_PROVIDER_ERROR, NO_SIDEBAR_CONTRIBUTIONS, NewSessionDefaults, NewSessionRequest, OpenFence, type OtherStreamSignal, type Owned, PINNED_PROJECTS_KEY, PROJECT_GROUP_CAP, PROJECT_ICONS_KEY, type PairingResult, PathResolver, PathResolverOptions, PinsBySpace, ProjectIcon, ProjectIconMap, ProjectInSpace, type PromptAttachment, type PromptOrigin, REFERENCES_STORAGE_KEY, RELATIVE_TIME_DATE_AFTER_DAYS, Readable, ReferenceStore, ReferenceStoreOptions, ReferenceViewEntry, type ResourceSnapshot, type Row, RunEstimatesRow, RunEstimatesSignal, RunEstimatesStore, type RunFailure, RunMeter, RunMeterRow, RunMeterSignal, RunMeterState, SIDEBAR_SPACE_KEY, SIDEBAR_SWITCHER_KEY, SIDEBAR_VIEW_KEY, SMOOTH_TICK_MS, type SelectStops, SendAttachment, SendDraft, SendFlowDeps, SendInput, SendPromptAttachment, SendRequest, SessionActivity, SessionActivityFilter, SessionActivitySignal, SessionActivityStore, SessionArchiveFilter, SessionBadgesEntry, SessionBadgesSource, SessionBadgesStore, SessionDirectory, SessionDirectoryOptions, SessionDirectorySource, SessionDirectoryState, SessionDirectoryStreams, type SessionFallbackModel, SessionGroupBy, SessionListOptions, SessionListRow, SessionNotification, SessionNotificationStore, type SessionPageState, SessionRef, SessionRemoval, type SessionRetryState, SessionSearchHit, SessionSortBy, type SessionStreamActions, type SessionStreamPage, type SessionStreamSignal, SessionStreamStore, type SessionStreamStoreOptions, type SessionStreamWrite, type SessionStreams, type SessionStreamsOptions, SessionWindowMode, SetDefaultModel, SharedDraft, SharedDraftAttachmentsChange, SharedDraftChange, SidebarContributionStores, SidebarContributions, SidebarDotState, SidebarEnvironmentHost, SidebarExtensionView, SidebarGroupBy, SidebarGrouping, SidebarHost, SidebarItemEntry, SidebarLabels, SidebarLastSessions, SidebarListRow, SidebarListSession, SidebarNode, SidebarQueryLayer, SidebarRowChip, SidebarRowDecoration, SidebarSortBy, SidebarSpace, SidebarView, SidebarViewMap, SidebarViewRecord, SidebarViews, SidebarViewsHost, SidebarViewsOptions, SidebarViewsStorage, type SkillConfig, SpaceSwitcherPrefs, type SpawnMeta, type ToolPairing, type ToolRowModel, Transcript, TranscriptState, TurnPromptDraft, VIEW_CHOICE, Writable, activityLabel, availableProjectsOf, batchThinkingRuns, batchToolRuns, beginChipWork, buildHostSidebarRows, buildQuerySidebarRows, buildSessionRows, buildSidebarRows, caretEffectivelyAtStart, chipForPath, chipWorkBusy, claimChildSessions, classifyInlineCode, clearedViewFilters, clusterByOwner, collapseEvents, commandName, commandRef, commandView, commitModelPick, commitView, compareSessions, composeLiveCost, composeSubmitText, computeSelectStops, constant, conversationBadges, createChatBlockRuns, createCompactionProgress, createComposerLists, createDecorator, createDraftScopeStore, createModelKnobs, createModelNames, createModelPickerPrefs, createNotificationStore, createPathResolver, createReferenceStore, createRunEstimates, createRunMeter, createSessionActivity, createSessionBadges, createSessionDirectory, createSessionStreamActions, createSessionStreams, createSidebarViews, createSiteIcons, dateBucket, decodeHistoryEntry, defaultFrameScheduler, defaultModelPatch, deleteSessionPrompt, deriveDotState, dockRunReceipts, dotVariantFor, draftFolderPath, draftLocalFolder, draftScopeOf, drainBucket, effortPickerTarget, encodeHistoryDraft, environmentKindLabel, environmentSummaryText, exitsModeOnKey, extensionSpaceOf, failureTooltip, filterDirectorySessions, filterQueryOf, filterSessions, filtersForSpace, findCommand, findLastStreamingRow, firstGrapheme, firstRowId, foldActionItems, foldExchanges, foldWorkerRows, formatElapsedShort, formatSessionCostLabel, groupsByFolder, hostReachable, hostStatusLabel, inheritRowIdentity, isProjectIcon, isProjectMember, itemRows, itemsForSpace, lastModelChainOf, markRunFailures, mergeLiveTail, mergePromptPreviews, mergeSidebarSpaces, missingPreviewData, modeForTypedChar, modelKnobsOf, modelNamesOf, namerFor, nestSidebarRows, nestToolCalls, nestedCallVisible, newSessionRequest, nextSavedViewName, openFenceOf, pairToolEvents, parseBashExitMeta, parseModelPickerPrefs, parsePinnedProjects, parseProjectIcons, parseSidebarView, parseSwitcherPrefs, partitionMainSession, pickRunEstimate, pinSession, pinnedSessions, projectKeyOf, projectPathOf, promptAttachments, promptDraftOf, promptRefs, readSidebarViews, recentHostFolders, recentLocalFolders, reduceActivity, reduceCompaction, refusedSpawn, relativeTime, rememberableChain, rememberedDefaultModel, rememberedPick, repoGroups, resetChipWorkForTests, resolveBadgePanel, resolveChipPath, resolveGrouping, resolveSort, rowTurnIds, runsInRemoteSandbox, safeSurrogateSlice, selectEditEvents, sendPrompt, sessionForToken, sessionRefsOf, sessionView, settledResource, shellCommandOf, shortUrl, sidebarContributionsOf, siteOrigin, skillName, skillView, spaceMembership, splitMarkdown, stableSelection, stopForRow, switcherSpaces, tickBucket, toolAction, toolFailed, unsentDraft, urlRefs, useReadable, viewFilterOf, viewFiltersOn, whenChipsSettle, wireAttachmentsToChat, withPinnedProject, withoutPartialFence, writable };
|
|
82
|
+
export { AGENT_GROUPING, type AuthCardPlan, type AuthFixes, type AuthSettingsTarget, type BashExitMeta, BuildQuerySidebarRowsOptions, BuildSidebarRowsOptions, CHATS_BUCKET, CHUNK_THRESHOLD, COMMON_EMOJI, CalendarOptions, ChatAttachment, ChatBadgeActions, ChatBlockRunOptions, ChatBlockRunTransport, ChatBlockRuns, ChatChipDetails, ChatCommandFacts, ChatCommit, ChatContextFacts, ChatEvent, ChatHost, ChatInteraction, ChatLabels, ChatModel, ChatModelProvider, ChatPaths, ChatReferences, ChatReferencesChange, ChatResolvedPath, ChatSearchState, ChatSearchSync, ChatSession, ChatSessionFacts, ChatSessionStatus, ChatSiteIcons, ChatSkillFacts, ChipResolution, ChipViewLabels, type Cluster, type CommandArgSuggestionSummary, type CommandSummary, CompactionProgress, CompactionProgressStore, CompactionSignal, ComposerAgentProfile, ComposerAgents, ComposerAttachment, ComposerAutocomplete, ComposerCacheImpact, ComposerCacheImpactChange, ComposerChromeLabels, ComposerCommandArgs, ComposerCompletions, ComposerContext, ComposerContextBreakdown, ComposerContextStatus, ComposerControls, ComposerCostStatus, ComposerDraftAttachmentsListener, ComposerDrafts, ComposerEffort, ComposerExtensionItem, ComposerExtensionProvider, ComposerFolderLocation, ComposerFolders, ComposerHost, ComposerLabels, type ComposerListScope, type ComposerLists, ComposerMode, ComposerModelEntry, ComposerModelOption, ComposerModels, ComposerPrefs, ComposerPrefsState, ComposerPromptSuggestion, ComposerRememberedModel, ComposerRunProgress, ComposerRuns, ComposerScope, ComposerSessionView, ComposerSharedGhost, ComposerSuggestions, ConversationBadge, ConversationBadgeData, ConversationBadgeInput, DEFAULT_CHAT_LABELS, DEFAULT_COMPOSER_CHROME_LABELS, DEFAULT_COMPOSER_LABELS, DEFAULT_MODEL_PICKER_PREFS, DEFAULT_SIDEBAR_LABELS, DEFAULT_SIDEBAR_VIEW, DEFAULT_SWITCHER_PREFS, DeltaBucket, DirectoryServer, DirectorySettings, DotStateInput, type DotVariant, DraftFolderSource, DraftFolderState, DraftScope, DraftScopeState, DraftScopeStore, DraftScopeStoreOptions, type DrainPlan, EMPTY_RUN_METER, EffortPickerTarget, type ExchangeFoldStats, FileChip, FileChipKind, type FileEntry, type FoldActionItem, type FoldActionState, type FrameScheduler, type GroupCluster, HostStatus, HostView, ImageModelRow, InboxSummary, LIVE_BLOCK_RUN_LINES, type LazyList, ListableSession, LiveBlockRun, LiveCostStatus, LiveStreamProgress, type LoadEarlierOptions, MAIN_SESSION_ICON_KEY, MAX_EXTENSION_COMPOSER_BADGES, MAX_ROW_CHIPS, MODEL_PICKER_STORAGE_KEY, ModelCatalogRow, ModelKnobs, ModelKnobsMemory, ModelKnobsStore, ModelNames, ModelNamesProvider, ModelNamesStore, ModelPickRef, ModelPickerPrefs, ModelPickerPrefsStorage, ModelPickerPrefsStore, NO_PROVIDER_ERROR, NO_SIDEBAR_CONTRIBUTIONS, NewSessionDefaults, NewSessionRequest, OpenFence, type OtherStreamSignal, type Owned, PINNED_PROJECTS_KEY, PROJECT_GROUP_CAP, PROJECT_ICONS_KEY, type PairingResult, PathResolver, PathResolverOptions, PinsBySpace, ProjectIcon, ProjectIconMap, ProjectInSpace, type PromptAttachment, type PromptOrigin, REFERENCES_STORAGE_KEY, RELATIVE_TIME_DATE_AFTER_DAYS, Readable, ReferenceStore, ReferenceStoreOptions, ReferenceViewEntry, type ResourceSnapshot, type Row, RunEstimatesRow, RunEstimatesSignal, RunEstimatesStore, type RunFailure, RunMeter, RunMeterRow, RunMeterSignal, RunMeterState, SESSION_HISTORY_LIMIT, SIDEBAR_SPACE_KEY, SIDEBAR_SWITCHER_KEY, SIDEBAR_VIEW_KEY, SMOOTH_TICK_MS, SecretTimeLeft, type SelectStops, SendAttachment, SendDraft, SendFlowDeps, SendInput, SendPromptAttachment, SendRequest, SessionActivity, SessionActivityFilter, SessionActivitySignal, SessionActivityStore, SessionArchiveFilter, SessionBadgesEntry, SessionBadgesSource, SessionBadgesStore, SessionDirectory, SessionDirectoryOptions, SessionDirectorySource, SessionDirectoryState, SessionDirectoryStreams, type SessionFallbackModel, SessionGroupBy, SessionHistory, SessionHistoryDirection, SessionHistoryOptions, SessionHistoryPage, SessionHistoryState, SessionHistoryStore, SessionListOptions, SessionListRow, SessionNotification, SessionNotificationStore, type SessionPageState, SessionRef, SessionRemoval, type SessionRetryState, SessionSearchHit, SessionSortBy, type SessionStreamActions, type SessionStreamPage, type SessionStreamSignal, SessionStreamStore, type SessionStreamStoreOptions, type SessionStreamWrite, type SessionStreams, type SessionStreamsOptions, SessionWindowMode, SetDefaultModel, SharedDraft, SharedDraftAttachmentsChange, SharedDraftChange, SidebarContributionStores, SidebarContributions, SidebarDotState, SidebarEnvironmentHost, SidebarExtensionView, SidebarGroupBy, SidebarGrouping, SidebarHost, SidebarItemEntry, SidebarLabels, SidebarLastSessions, SidebarListRow, SidebarListSession, SidebarNode, SidebarOrigin, SidebarQueryLayer, SidebarRowChip, SidebarRowDecoration, SidebarSortBy, SidebarSpace, SidebarView, SidebarViewMap, SidebarViewRecord, SidebarViews, SidebarViewsHost, SidebarViewsOptions, SidebarViewsStorage, type SkillConfig, SpaceSwitcherPrefs, type SpawnMeta, type ToolPairing, type ToolRowModel, Transcript, TranscriptState, TurnPromptDraft, VIEW_CHOICE, Writable, activityLabel, authFailureDetails, availableProjectsOf, batchThinkingRuns, batchToolRuns, beginChipWork, buildHostSidebarRows, buildQuerySidebarRows, buildSessionRows, buildSidebarRows, caretEffectivelyAtStart, chipForPath, chipWorkBusy, claimChildSessions, classifyInlineCode, clearedViewFilters, clusterByOwner, collapseEvents, commandName, commandRef, commandView, commitModelPick, commitView, compareSessions, composeLiveCost, composeSubmitText, computeSelectStops, constant, conversationBadges, createAuthFixes, createChatBlockRuns, createCompactionProgress, createComposerLists, createDecorator, createDraftScopeStore, createModelKnobs, createModelNames, createModelPickerPrefs, createNotificationStore, createPathResolver, createReferenceStore, createRunEstimates, createRunMeter, createSessionActivity, createSessionBadges, createSessionDirectory, createSessionHistory, createSessionStreamActions, createSessionStreams, createSidebarViews, createSiteIcons, dateBucket, decodeHistoryEntry, defaultFrameScheduler, defaultModelPatch, deleteSessionPrompt, deriveDotState, dockRunReceipts, dotVariantFor, draftFolderPath, draftLocalFolder, draftScopeOf, drainBucket, effortPickerTarget, encodeHistoryDraft, environmentKindLabel, environmentSummaryText, exitsModeOnKey, extensionSpaceOf, failureTooltip, filterDirectorySessions, filterQueryOf, filterSessions, filtersForSpace, findCommand, findLastStreamingRow, firstGrapheme, firstRowId, foldActionItems, foldExchanges, foldWorkerRows, formatElapsedShort, formatSessionCostLabel, groupsByFolder, hostReachable, hostStatusLabel, inheritRowIdentity, isAuthFixed, isProjectIcon, isProjectMember, itemRows, itemsForSpace, lastModelChainOf, markRunFailures, mergeLiveTail, mergePromptPreviews, mergeSidebarSpaces, missingPreviewData, modeForTypedChar, modelKnobsOf, modelNamesOf, namerFor, nestSidebarRows, nestToolCalls, nestedCallVisible, newSessionRequest, nextSavedViewName, openFenceOf, pairToolEvents, parseBashExitMeta, parseModelPickerPrefs, parsePinnedProjects, parseProjectIcons, parseSessionHistory, parseSidebarView, parseSwitcherPrefs, partitionMainSession, pickRunEstimate, pinSession, pinnedSessions, planAuthCard, projectKeyOf, projectPathOf, promptAttachments, promptDraftOf, promptRefs, readSidebarViews, recentHostFolders, recentLocalFolders, reduceActivity, reduceCompaction, refusedSpawn, relativeTime, rememberableChain, rememberedDefaultModel, rememberedPick, repoGroups, resetChipWorkForTests, resolveBadgePanel, resolveChipPath, resolveGrouping, resolveSort, rowTurnIds, runsInRemoteSandbox, safeSurrogateSlice, secretExpiryWords, secretTimeLeft, secretTimeLeftIso, selectEditEvents, sendPrompt, sessionForToken, sessionRefsOf, sessionView, settledResource, shellCommandOf, shortUrl, sidebarContributionsOf, siteOrigin, skillName, skillView, spaceMembership, splitMarkdown, stableSelection, stopForRow, switcherSpaces, tickBucket, toolAction, toolFailed, unsentDraft, urlRefs, useReadable, viewFilterOf, viewFiltersOn, whenChipsSettle, wireAttachmentsToChat, withPinnedProject, withoutPartialFence, writable };
|
|
@@ -1,7 +1,18 @@
|
|
|
1
1
|
import { constant, useReadable, writable } from "./store.js";
|
|
2
|
+
import { pairToolEvents } from "./transcript/pairing.js";
|
|
3
|
+
import { firstRowId, parseBashExitMeta } from "./transcript/rows.js";
|
|
4
|
+
import { collapseEvents, inheritRowIdentity, refusedSpawn, toolFailed } from "./transcript/collapse.js";
|
|
5
|
+
import { mergeLiveTail } from "./streams/merge.js";
|
|
6
|
+
import { mergePromptPreviews, missingPreviewData } from "./streams/prompt-previews.js";
|
|
7
|
+
import { defaultFrameScheduler } from "./streams/scheduler.js";
|
|
8
|
+
import { SessionStreamStore } from "./streams/store.js";
|
|
9
|
+
import { LIVE_BLOCK_RUN_LINES, createChatBlockRuns } from "./block-runs.js";
|
|
10
|
+
import { DEFAULT_MODEL_PICKER_PREFS, MODEL_PICKER_STORAGE_KEY, createModelPickerPrefs, parseModelPickerPrefs } from "./composer/model-picker-prefs.js";
|
|
11
|
+
import { EMPTY_RUN_METER, createRunMeter } from "./composer/run-meter.js";
|
|
12
|
+
import { SMOOTH_TICK_MS, drainBucket, safeSurrogateSlice, tickBucket } from "./smooth-stream.js";
|
|
2
13
|
import { DEFAULT_COMPOSER_CHROME_LABELS } from "./composer/labels-chrome.js";
|
|
3
14
|
import { DEFAULT_COMPOSER_LABELS } from "./composer/labels.js";
|
|
4
|
-
import { DEFAULT_CHAT_LABELS } from "./labels.js";
|
|
15
|
+
import { DEFAULT_CHAT_LABELS, secretExpiryWords } from "./labels.js";
|
|
5
16
|
import { commandRef, shortUrl, urlRefs } from "./badge-refs.js";
|
|
6
17
|
import { chipForPath, classifyInlineCode, resolveChipPath } from "./file-chip.js";
|
|
7
18
|
import { createSiteIcons, siteOrigin } from "./site-icons.js";
|
|
@@ -12,23 +23,13 @@ import { beginChipWork, chipWorkBusy, resetChipWorkForTests, whenChipsSettle } f
|
|
|
12
23
|
import { createPathResolver } from "./path-resolver.js";
|
|
13
24
|
import { REFERENCES_STORAGE_KEY, createReferenceStore } from "./reference-store.js";
|
|
14
25
|
import { CHUNK_THRESHOLD, openFenceOf, splitMarkdown, withoutPartialFence } from "./markdown-chunks.js";
|
|
15
|
-
import { pairToolEvents } from "./transcript/pairing.js";
|
|
16
|
-
import { firstRowId, parseBashExitMeta } from "./transcript/rows.js";
|
|
17
|
-
import { collapseEvents, inheritRowIdentity, refusedSpawn, toolFailed } from "./transcript/collapse.js";
|
|
18
|
-
import { mergeLiveTail } from "./streams/merge.js";
|
|
19
|
-
import { mergePromptPreviews, missingPreviewData } from "./streams/prompt-previews.js";
|
|
20
|
-
import { defaultFrameScheduler } from "./streams/scheduler.js";
|
|
21
|
-
import { SessionStreamStore } from "./streams/store.js";
|
|
22
|
-
import { LIVE_BLOCK_RUN_LINES, createChatBlockRuns } from "./block-runs.js";
|
|
23
|
-
import { DEFAULT_MODEL_PICKER_PREFS, MODEL_PICKER_STORAGE_KEY, createModelPickerPrefs, parseModelPickerPrefs } from "./composer/model-picker-prefs.js";
|
|
24
|
-
import { EMPTY_RUN_METER, createRunMeter } from "./composer/run-meter.js";
|
|
25
|
-
import { SMOOTH_TICK_MS, drainBucket, safeSurrogateSlice, tickBucket } from "./smooth-stream.js";
|
|
26
26
|
import { hostReachable, hostStatusLabel } from "./hosts.js";
|
|
27
27
|
import { batchThinkingRuns, batchToolRuns, clusterByOwner } from "./transcript/batch.js";
|
|
28
28
|
import { foldActionItems, toolAction } from "./transcript/fold-actions.js";
|
|
29
29
|
import { dockRunReceipts, dotVariantFor, findLastStreamingRow, foldExchanges, foldWorkerRows } from "./transcript/fold.js";
|
|
30
30
|
import { nestToolCalls, nestedCallVisible } from "./transcript/nesting.js";
|
|
31
31
|
import { failureTooltip, markRunFailures } from "./transcript/run-failures.js";
|
|
32
|
+
import { authFailureDetails, createAuthFixes, isAuthFixed, planAuthCard } from "./transcript/auth-failure.js";
|
|
32
33
|
import { computeSelectStops, rowTurnIds, stopForRow } from "./transcript/select-stops.js";
|
|
33
34
|
import { createRunEstimates, pickRunEstimate } from "./sidebar/estimates.js";
|
|
34
35
|
import { createSessionStreams } from "./streams/session-streams.js";
|
|
@@ -42,6 +43,7 @@ import { MAX_EXTENSION_COMPOSER_BADGES, conversationBadges, resolveBadgePanel }
|
|
|
42
43
|
import { draftFolderPath, draftLocalFolder, recentHostFolders, recentLocalFolders } from "./draft-target.js";
|
|
43
44
|
import { NO_PROVIDER_ERROR, newSessionRequest, promptAttachments, promptRefs, sendPrompt, shellCommandOf } from "./send-flow.js";
|
|
44
45
|
import { defaultModelPatch, effortPickerTarget, rememberedDefaultModel } from "./composer/new-session-defaults.js";
|
|
46
|
+
import { secretTimeLeft, secretTimeLeftIso } from "./secrets.js";
|
|
45
47
|
import { wireAttachmentsToChat } from "./composer/draft-sync.js";
|
|
46
48
|
import { promptDraftOf } from "./turn-prompt.js";
|
|
47
49
|
import { COMMON_EMOJI, MAIN_SESSION_ICON_KEY, PROJECT_ICONS_KEY, firstGrapheme, isProjectIcon, parseProjectIcons } from "./sidebar/project-icons.js";
|
|
@@ -56,10 +58,11 @@ import { activityLabel, createSessionActivity, reduceActivity } from "./sidebar/
|
|
|
56
58
|
import { createCompactionProgress, reduceCompaction } from "./sidebar/compaction.js";
|
|
57
59
|
import { createSessionBadges } from "./sidebar/badges.js";
|
|
58
60
|
import { DEFAULT_SIDEBAR_VIEW, DEFAULT_SWITCHER_PREFS, SIDEBAR_SPACE_KEY, SIDEBAR_SWITCHER_KEY, SIDEBAR_VIEW_KEY, createSidebarViews, parseSidebarView, parseSwitcherPrefs, readSidebarViews } from "./sidebar/view.js";
|
|
61
|
+
import { SESSION_HISTORY_LIMIT, createSessionHistory, parseSessionHistory } from "./sidebar/history.js";
|
|
59
62
|
import { createNotificationStore } from "./sidebar/notifications.js";
|
|
60
63
|
import { AGENT_GROUPING, MAX_ROW_CHIPS, NO_SIDEBAR_CONTRIBUTIONS, claimChildSessions, clearedViewFilters, createDecorator, extensionSpaceOf, filterQueryOf, filtersForSpace, itemsForSpace, mergeSidebarSpaces, nextSavedViewName, resolveGrouping, resolveSort, sidebarContributionsOf, spaceMembership, switcherSpaces, viewFilterOf, viewFiltersOn } from "./sidebar/query.js";
|
|
61
64
|
import { availableProjectsOf, createSessionDirectory, filterDirectorySessions, projectKeyOf, sessionRefsOf } from "./sidebar/directory.js";
|
|
62
65
|
import { deriveDotState } from "./sidebar/dot-state.js";
|
|
63
66
|
import { deleteSessionPrompt, environmentKindLabel, environmentSummaryText, runsInRemoteSandbox } from "./sidebar/environment.js";
|
|
64
67
|
import { createComposerLists } from "./composer/composer-sources.js";
|
|
65
|
-
export { AGENT_GROUPING, CHATS_BUCKET, CHUNK_THRESHOLD, COMMON_EMOJI, DEFAULT_CHAT_LABELS, DEFAULT_COMPOSER_CHROME_LABELS, DEFAULT_COMPOSER_LABELS, DEFAULT_MODEL_PICKER_PREFS, DEFAULT_SIDEBAR_LABELS, DEFAULT_SIDEBAR_VIEW, DEFAULT_SWITCHER_PREFS, EMPTY_RUN_METER, LIVE_BLOCK_RUN_LINES, MAIN_SESSION_ICON_KEY, MAX_EXTENSION_COMPOSER_BADGES, MAX_ROW_CHIPS, MODEL_PICKER_STORAGE_KEY, NO_PROVIDER_ERROR, NO_SIDEBAR_CONTRIBUTIONS, PINNED_PROJECTS_KEY, PROJECT_GROUP_CAP, PROJECT_ICONS_KEY, REFERENCES_STORAGE_KEY, RELATIVE_TIME_DATE_AFTER_DAYS, SIDEBAR_SPACE_KEY, SIDEBAR_SWITCHER_KEY, SIDEBAR_VIEW_KEY, SMOOTH_TICK_MS, SessionStreamStore, VIEW_CHOICE, activityLabel, availableProjectsOf, batchThinkingRuns, batchToolRuns, beginChipWork, buildHostSidebarRows, buildQuerySidebarRows, buildSessionRows, buildSidebarRows, caretEffectivelyAtStart, chipForPath, chipWorkBusy, claimChildSessions, classifyInlineCode, clearedViewFilters, clusterByOwner, collapseEvents, commandName, commandRef, commandView, commitModelPick, commitView, compareSessions, composeLiveCost, composeSubmitText, computeSelectStops, constant, conversationBadges, createChatBlockRuns, createCompactionProgress, createComposerLists, createDecorator, createDraftScopeStore, createModelKnobs, createModelNames, createModelPickerPrefs, createNotificationStore, createPathResolver, createReferenceStore, createRunEstimates, createRunMeter, createSessionActivity, createSessionBadges, createSessionDirectory, createSessionStreamActions, createSessionStreams, createSidebarViews, createSiteIcons, dateBucket, decodeHistoryEntry, defaultFrameScheduler, defaultModelPatch, deleteSessionPrompt, deriveDotState, dockRunReceipts, dotVariantFor, draftFolderPath, draftLocalFolder, draftScopeOf, drainBucket, effortPickerTarget, encodeHistoryDraft, environmentKindLabel, environmentSummaryText, exitsModeOnKey, extensionSpaceOf, failureTooltip, filterDirectorySessions, filterQueryOf, filterSessions, filtersForSpace, findCommand, findLastStreamingRow, firstGrapheme, firstRowId, foldActionItems, foldExchanges, foldWorkerRows, formatElapsedShort, formatSessionCostLabel, groupsByFolder, hostReachable, hostStatusLabel, inheritRowIdentity, isProjectIcon, isProjectMember, itemRows, itemsForSpace, lastModelChainOf, markRunFailures, mergeLiveTail, mergePromptPreviews, mergeSidebarSpaces, missingPreviewData, modeForTypedChar, modelKnobsOf, modelNamesOf, namerFor, nestSidebarRows, nestToolCalls, nestedCallVisible, newSessionRequest, nextSavedViewName, openFenceOf, pairToolEvents, parseBashExitMeta, parseModelPickerPrefs, parsePinnedProjects, parseProjectIcons, parseSidebarView, parseSwitcherPrefs, partitionMainSession, pickRunEstimate, pinSession, pinnedSessions, projectKeyOf, projectPathOf, promptAttachments, promptDraftOf, promptRefs, readSidebarViews, recentHostFolders, recentLocalFolders, reduceActivity, reduceCompaction, refusedSpawn, relativeTime, rememberableChain, rememberedDefaultModel, rememberedPick, repoGroups, resetChipWorkForTests, resolveBadgePanel, resolveChipPath, resolveGrouping, resolveSort, rowTurnIds, runsInRemoteSandbox, safeSurrogateSlice, selectEditEvents, sendPrompt, sessionForToken, sessionRefsOf, sessionView, settledResource, shellCommandOf, shortUrl, sidebarContributionsOf, siteOrigin, skillName, skillView, spaceMembership, splitMarkdown, stableSelection, stopForRow, switcherSpaces, tickBucket, toolAction, toolFailed, unsentDraft, urlRefs, useReadable, viewFilterOf, viewFiltersOn, whenChipsSettle, wireAttachmentsToChat, withPinnedProject, withoutPartialFence, writable };
|
|
68
|
+
export { AGENT_GROUPING, CHATS_BUCKET, CHUNK_THRESHOLD, COMMON_EMOJI, DEFAULT_CHAT_LABELS, DEFAULT_COMPOSER_CHROME_LABELS, DEFAULT_COMPOSER_LABELS, DEFAULT_MODEL_PICKER_PREFS, DEFAULT_SIDEBAR_LABELS, DEFAULT_SIDEBAR_VIEW, DEFAULT_SWITCHER_PREFS, EMPTY_RUN_METER, LIVE_BLOCK_RUN_LINES, MAIN_SESSION_ICON_KEY, MAX_EXTENSION_COMPOSER_BADGES, MAX_ROW_CHIPS, MODEL_PICKER_STORAGE_KEY, NO_PROVIDER_ERROR, NO_SIDEBAR_CONTRIBUTIONS, PINNED_PROJECTS_KEY, PROJECT_GROUP_CAP, PROJECT_ICONS_KEY, REFERENCES_STORAGE_KEY, RELATIVE_TIME_DATE_AFTER_DAYS, SESSION_HISTORY_LIMIT, SIDEBAR_SPACE_KEY, SIDEBAR_SWITCHER_KEY, SIDEBAR_VIEW_KEY, SMOOTH_TICK_MS, SessionStreamStore, VIEW_CHOICE, activityLabel, authFailureDetails, availableProjectsOf, batchThinkingRuns, batchToolRuns, beginChipWork, buildHostSidebarRows, buildQuerySidebarRows, buildSessionRows, buildSidebarRows, caretEffectivelyAtStart, chipForPath, chipWorkBusy, claimChildSessions, classifyInlineCode, clearedViewFilters, clusterByOwner, collapseEvents, commandName, commandRef, commandView, commitModelPick, commitView, compareSessions, composeLiveCost, composeSubmitText, computeSelectStops, constant, conversationBadges, createAuthFixes, createChatBlockRuns, createCompactionProgress, createComposerLists, createDecorator, createDraftScopeStore, createModelKnobs, createModelNames, createModelPickerPrefs, createNotificationStore, createPathResolver, createReferenceStore, createRunEstimates, createRunMeter, createSessionActivity, createSessionBadges, createSessionDirectory, createSessionHistory, createSessionStreamActions, createSessionStreams, createSidebarViews, createSiteIcons, dateBucket, decodeHistoryEntry, defaultFrameScheduler, defaultModelPatch, deleteSessionPrompt, deriveDotState, dockRunReceipts, dotVariantFor, draftFolderPath, draftLocalFolder, draftScopeOf, drainBucket, effortPickerTarget, encodeHistoryDraft, environmentKindLabel, environmentSummaryText, exitsModeOnKey, extensionSpaceOf, failureTooltip, filterDirectorySessions, filterQueryOf, filterSessions, filtersForSpace, findCommand, findLastStreamingRow, firstGrapheme, firstRowId, foldActionItems, foldExchanges, foldWorkerRows, formatElapsedShort, formatSessionCostLabel, groupsByFolder, hostReachable, hostStatusLabel, inheritRowIdentity, isAuthFixed, isProjectIcon, isProjectMember, itemRows, itemsForSpace, lastModelChainOf, markRunFailures, mergeLiveTail, mergePromptPreviews, mergeSidebarSpaces, missingPreviewData, modeForTypedChar, modelKnobsOf, modelNamesOf, namerFor, nestSidebarRows, nestToolCalls, nestedCallVisible, newSessionRequest, nextSavedViewName, openFenceOf, pairToolEvents, parseBashExitMeta, parseModelPickerPrefs, parsePinnedProjects, parseProjectIcons, parseSessionHistory, parseSidebarView, parseSwitcherPrefs, partitionMainSession, pickRunEstimate, pinSession, pinnedSessions, planAuthCard, projectKeyOf, projectPathOf, promptAttachments, promptDraftOf, promptRefs, readSidebarViews, recentHostFolders, recentLocalFolders, reduceActivity, reduceCompaction, refusedSpawn, relativeTime, rememberableChain, rememberedDefaultModel, rememberedPick, repoGroups, resetChipWorkForTests, resolveBadgePanel, resolveChipPath, resolveGrouping, resolveSort, rowTurnIds, runsInRemoteSandbox, safeSurrogateSlice, secretExpiryWords, secretTimeLeft, secretTimeLeftIso, selectEditEvents, sendPrompt, sessionForToken, sessionRefsOf, sessionView, settledResource, shellCommandOf, shortUrl, sidebarContributionsOf, siteOrigin, skillName, skillView, spaceMembership, splitMarkdown, stableSelection, stopForRow, switcherSpaces, tickBucket, toolAction, toolFailed, unsentDraft, urlRefs, useReadable, viewFilterOf, viewFiltersOn, whenChipsSettle, wireAttachmentsToChat, withPinnedProject, withoutPartialFence, writable };
|
|
@@ -1,4 +1,12 @@
|
|
|
1
|
+
import { SecretTimeLeft } from "./secrets.js";
|
|
2
|
+
import { AuthFailure, SecretTtl } from "zidane/chat/pure";
|
|
1
3
|
//#region src/chat/headless/labels.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* When a saved secret goes, in words.
|
|
6
|
+
*
|
|
7
|
+
* @param left - The time it has left.
|
|
8
|
+
*/
|
|
9
|
+
declare const secretExpiryWords: (left: SecretTimeLeft) => string;
|
|
2
10
|
/** The default English strings of the chat layer, merged over the design system's labels. Override any of them through {@link ChatProvider}. */
|
|
3
11
|
declare const DEFAULT_CHAT_LABELS: {
|
|
4
12
|
today: string;
|
|
@@ -42,6 +50,7 @@ declare const DEFAULT_CHAT_LABELS: {
|
|
|
42
50
|
estimateDueTitle: string;
|
|
43
51
|
estimateOver: string;
|
|
44
52
|
estimateOverTitle: string;
|
|
53
|
+
estimateProblemTitle: (reason: string, message?: string) => string;
|
|
45
54
|
runningFor: (elapsed: string) => string;
|
|
46
55
|
agent: string;
|
|
47
56
|
stepRunning: string;
|
|
@@ -70,6 +79,27 @@ declare const DEFAULT_CHAT_LABELS: {
|
|
|
70
79
|
continueRun: string;
|
|
71
80
|
continueHint: string;
|
|
72
81
|
resetsAt: (time: string) => string;
|
|
82
|
+
authCard: string;
|
|
83
|
+
authHeadline: (auth: AuthFailure, label: string) => string;
|
|
84
|
+
authSignInAgain: string;
|
|
85
|
+
authUseAccount: (account: string) => string;
|
|
86
|
+
authSwitching: (account: string) => string;
|
|
87
|
+
authSettings: string;
|
|
88
|
+
authSettingsHint: string;
|
|
89
|
+
authCopyDetails: string;
|
|
90
|
+
authCopied: string;
|
|
91
|
+
authOpeningBrowser: string;
|
|
92
|
+
authWaiting: string;
|
|
93
|
+
authOpenPage: string;
|
|
94
|
+
authEnterCode: (code: string) => string;
|
|
95
|
+
authPaste: string;
|
|
96
|
+
authPasteSend: string;
|
|
97
|
+
authCancel: string;
|
|
98
|
+
authSignedIn: string;
|
|
99
|
+
authSignedInRetrying: string;
|
|
100
|
+
authFixed: string;
|
|
101
|
+
authTryAgain: string;
|
|
102
|
+
authFailed: (message: string) => string;
|
|
73
103
|
sessionEventLabel: (title: string, verb: string, needsAttention: boolean) => string;
|
|
74
104
|
clickToAnswer: string;
|
|
75
105
|
openSession: string;
|
|
@@ -274,6 +304,9 @@ declare const DEFAULT_CHAT_LABELS: {
|
|
|
274
304
|
questionCount: (count: number) => string;
|
|
275
305
|
interactionsLabel: string;
|
|
276
306
|
inboxEmpty: string;
|
|
307
|
+
inboxNeedsYou: string;
|
|
308
|
+
inboxInProgress: string;
|
|
309
|
+
inboxRecent: string;
|
|
277
310
|
inboxPreviousSession: string;
|
|
278
311
|
unsupportedInteraction: (tool: string) => string;
|
|
279
312
|
planRejectNote: string;
|
|
@@ -298,6 +331,19 @@ declare const DEFAULT_CHAT_LABELS: {
|
|
|
298
331
|
noAnswer: string;
|
|
299
332
|
confirmYes: string;
|
|
300
333
|
confirmNo: string;
|
|
334
|
+
secretValueLabel: string;
|
|
335
|
+
secretValuePlaceholder: string;
|
|
336
|
+
secretTtlLabel: string;
|
|
337
|
+
secretTtlName: (ttl: SecretTtl) => string;
|
|
338
|
+
saveSecurely: string;
|
|
339
|
+
declineSecret: string;
|
|
340
|
+
declineSecretHint: string;
|
|
341
|
+
secretNote: (ttl: SecretTtl) => string;
|
|
342
|
+
secretSaved: (name: string, left: SecretTimeLeft) => string;
|
|
343
|
+
secretSent: (name: string) => string;
|
|
344
|
+
secretDeclined: (name: string) => string;
|
|
345
|
+
secretReused: (name: string) => string;
|
|
346
|
+
openSecrets: string;
|
|
301
347
|
filterSessions: string;
|
|
302
348
|
filterView: string;
|
|
303
349
|
filterStatus: string;
|
|
@@ -343,6 +389,13 @@ declare const DEFAULT_CHAT_LABELS: {
|
|
|
343
389
|
/** A space's own grouping or sort, among the view's choices. */
|
|
344
390
|
filterSpaceDefault: string;
|
|
345
391
|
filterSaveView: string;
|
|
392
|
+
/** Whether a reminder started the session (zidane's schedules). */
|
|
393
|
+
filterOrigin: string;
|
|
394
|
+
filterOrigins: {
|
|
395
|
+
all: string;
|
|
396
|
+
scheduled: string;
|
|
397
|
+
unscheduled: string;
|
|
398
|
+
};
|
|
346
399
|
hostStatuses: {
|
|
347
400
|
local: string;
|
|
348
401
|
connected: string;
|
|
@@ -528,4 +581,4 @@ declare const DEFAULT_CHAT_LABELS: {
|
|
|
528
581
|
/** The shape of the chat label dictionary: every key of {@link DEFAULT_CHAT_LABELS}. Some values are functions that build a string. */
|
|
529
582
|
type ChatLabels = typeof DEFAULT_CHAT_LABELS;
|
|
530
583
|
//#endregion
|
|
531
|
-
export { ChatLabels, DEFAULT_CHAT_LABELS };
|
|
584
|
+
export { ChatLabels, DEFAULT_CHAT_LABELS, secretExpiryWords };
|
|
@@ -1,12 +1,27 @@
|
|
|
1
1
|
import { DEFAULT_LABELS } from "../../labels.js";
|
|
2
2
|
import { TRANSCRIPT_LABELS } from "./transcript-labels.js";
|
|
3
|
-
import { RUN_WAITING_LABEL, runRetryingLabel } from "zidane/chat/pure";
|
|
3
|
+
import { RUN_WAITING_LABEL, authFailureHeadline, runRetryingLabel } from "zidane/chat/pure";
|
|
4
4
|
//#region src/chat/headless/labels.ts
|
|
5
5
|
/**
|
|
6
6
|
* The chat layer's strings, on top of the design system's (`labels.tsx`).
|
|
7
7
|
* One flat dictionary so an app overrides any of them with one
|
|
8
8
|
* `<LabelsProvider>`; the headless helpers take it as an argument.
|
|
9
9
|
*/
|
|
10
|
+
/** A count and its unit in words: `1 hour`, `24 hours`, `7 days`. */
|
|
11
|
+
const duration = (count, unit) => `${count} ${unit}${count === 1 ? "" : "s"}`;
|
|
12
|
+
/** Each TTL as the picker names it. */
|
|
13
|
+
const SECRET_TTL_NAMES = {
|
|
14
|
+
"1h": "1 hour",
|
|
15
|
+
"24h": "24 hours",
|
|
16
|
+
"7d": "7 days",
|
|
17
|
+
never: "Until revoked"
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* When a saved secret goes, in words.
|
|
21
|
+
*
|
|
22
|
+
* @param left - The time it has left.
|
|
23
|
+
*/
|
|
24
|
+
const secretExpiryWords = (left) => left.kind === "never" ? "kept until you revoke it" : left.kind === "expired" ? "expired" : `expires in ${duration(left.count, left.unit)}`;
|
|
10
25
|
/** The default English strings of the chat layer, merged over the design system's labels. Override any of them through {@link ChatProvider}. */
|
|
11
26
|
const DEFAULT_CHAT_LABELS = {
|
|
12
27
|
...DEFAULT_LABELS,
|
|
@@ -65,6 +80,7 @@ const DEFAULT_CHAT_LABELS = {
|
|
|
65
80
|
estimateDueTitle: "Past its estimate, so it should end soon",
|
|
66
81
|
estimateOver: "over",
|
|
67
82
|
estimateOverTitle: "Taking longer than estimated",
|
|
83
|
+
estimateProblemTitle: (reason, message) => `No time estimate: the decision failed (${reason}${message ? `: ${message}` : ""}). Check the decision model in Settings › Agent › Helper models.`,
|
|
68
84
|
runningFor: (elapsed) => `Running for ${elapsed}`,
|
|
69
85
|
agent: "Agent",
|
|
70
86
|
stepRunning: "running",
|
|
@@ -97,6 +113,27 @@ const DEFAULT_CHAT_LABELS = {
|
|
|
97
113
|
continueRun: "Continue",
|
|
98
114
|
continueHint: "Ask the model to continue",
|
|
99
115
|
resetsAt: (time) => `Resets at ${time}`,
|
|
116
|
+
authCard: "Sign-in problem",
|
|
117
|
+
authHeadline: (auth, label) => authFailureHeadline(auth, label),
|
|
118
|
+
authSignInAgain: "Sign in again",
|
|
119
|
+
authUseAccount: (account) => `Use ${account}`,
|
|
120
|
+
authSwitching: (account) => `Switching to ${account}…`,
|
|
121
|
+
authSettings: "Settings",
|
|
122
|
+
authSettingsHint: "Open this account in Settings",
|
|
123
|
+
authCopyDetails: "Copy details",
|
|
124
|
+
authCopied: "Copied",
|
|
125
|
+
authOpeningBrowser: "Opening browser…",
|
|
126
|
+
authWaiting: "Waiting for sign-in",
|
|
127
|
+
authOpenPage: "Open the sign-in page",
|
|
128
|
+
authEnterCode: (code) => `Enter the code ${code}`,
|
|
129
|
+
authPaste: "Paste the code from the page",
|
|
130
|
+
authPasteSend: "Send",
|
|
131
|
+
authCancel: "Cancel",
|
|
132
|
+
authSignedIn: "Signed in",
|
|
133
|
+
authSignedInRetrying: "Signed in · retrying",
|
|
134
|
+
authFixed: "fixed",
|
|
135
|
+
authTryAgain: "Try again",
|
|
136
|
+
authFailed: (message) => `Sign-in failed: ${message}`,
|
|
100
137
|
sessionEventLabel: (title, verb, needsAttention) => `${title} ${verb}${needsAttention ? ". Click to answer" : ""}`,
|
|
101
138
|
clickToAnswer: "Answer",
|
|
102
139
|
openSession: "open →",
|
|
@@ -301,6 +338,9 @@ const DEFAULT_CHAT_LABELS = {
|
|
|
301
338
|
questionCount: (count) => `${count} questions`,
|
|
302
339
|
interactionsLabel: "Requests from the agent",
|
|
303
340
|
inboxEmpty: "Nothing waiting on you",
|
|
341
|
+
inboxNeedsYou: "Needs you",
|
|
342
|
+
inboxInProgress: "In progress",
|
|
343
|
+
inboxRecent: "Recent",
|
|
304
344
|
inboxPreviousSession: "previous session",
|
|
305
345
|
unsupportedInteraction: (tool) => `The agent is waiting on ${tool}, which this view cannot answer.`,
|
|
306
346
|
planRejectNote: "Rejecting stops the run. Add a note so the agent knows why.",
|
|
@@ -325,6 +365,19 @@ const DEFAULT_CHAT_LABELS = {
|
|
|
325
365
|
noAnswer: "No answer",
|
|
326
366
|
confirmYes: "yes",
|
|
327
367
|
confirmNo: "no",
|
|
368
|
+
secretValueLabel: "Secret value",
|
|
369
|
+
secretValuePlaceholder: "Paste the value",
|
|
370
|
+
secretTtlLabel: "Keep for",
|
|
371
|
+
secretTtlName: (ttl) => SECRET_TTL_NAMES[ttl],
|
|
372
|
+
saveSecurely: "Save securely",
|
|
373
|
+
declineSecret: "Decline",
|
|
374
|
+
declineSecretHint: "Answer without giving the value",
|
|
375
|
+
secretNote: (ttl) => ttl === "never" ? "Kept out of chat, in a private file this agent's commands can read until you revoke it" : `Kept out of chat, in a private file this agent's commands can read for ${SECRET_TTL_NAMES[ttl]}`,
|
|
376
|
+
secretSaved: (name, left) => `Saved ${name}, ${secretExpiryWords(left)}`,
|
|
377
|
+
secretSent: (name) => `Saved ${name}`,
|
|
378
|
+
secretDeclined: (name) => `Declined ${name}`,
|
|
379
|
+
secretReused: (name) => `Used saved ${name}`,
|
|
380
|
+
openSecrets: "Open Secrets",
|
|
328
381
|
filterSessions: "Filter sessions",
|
|
329
382
|
filterView: "View",
|
|
330
383
|
filterStatus: "Status",
|
|
@@ -370,6 +423,13 @@ const DEFAULT_CHAT_LABELS = {
|
|
|
370
423
|
/** A space's own grouping or sort, among the view's choices. */
|
|
371
424
|
filterSpaceDefault: "Space default",
|
|
372
425
|
filterSaveView: "Save view as space",
|
|
426
|
+
/** Whether a reminder started the session (zidane's schedules). */
|
|
427
|
+
filterOrigin: "Origin",
|
|
428
|
+
filterOrigins: {
|
|
429
|
+
all: "All",
|
|
430
|
+
scheduled: "Scheduled",
|
|
431
|
+
unscheduled: "Not scheduled"
|
|
432
|
+
},
|
|
373
433
|
hostStatuses: {
|
|
374
434
|
local: "connected",
|
|
375
435
|
connected: "connected",
|
|
@@ -408,4 +468,4 @@ const DEFAULT_CHAT_LABELS = {
|
|
|
408
468
|
contextCopied: "Copied"
|
|
409
469
|
};
|
|
410
470
|
//#endregion
|
|
411
|
-
export { DEFAULT_CHAT_LABELS };
|
|
471
|
+
export { DEFAULT_CHAT_LABELS, secretExpiryWords };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
//#region src/chat/headless/secrets.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Secret questions on the client side: the time a saved secret has left, for
|
|
4
|
+
* the transcript and the Secrets panel to word (labels). Pure, no React.
|
|
5
|
+
*/
|
|
6
|
+
/** How long a saved secret has left. */
|
|
7
|
+
type SecretTimeLeft = {
|
|
8
|
+
kind: 'left';
|
|
9
|
+
count: number;
|
|
10
|
+
unit: 'minute' | 'hour' | 'day';
|
|
11
|
+
} | {
|
|
12
|
+
kind: 'expired';
|
|
13
|
+
} | {
|
|
14
|
+
kind: 'never';
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* The time left until `expiresAt`, rounded to the unit a person reads: minutes under an hour, hours under two
|
|
18
|
+
* days, then days.
|
|
19
|
+
*
|
|
20
|
+
* @param expiresAt - Expiry in Unix ms, `null` when it stays until revoked.
|
|
21
|
+
* @param now - The current time, in Unix ms.
|
|
22
|
+
*/
|
|
23
|
+
declare function secretTimeLeft(expiresAt: number | null, now: number): SecretTimeLeft;
|
|
24
|
+
/**
|
|
25
|
+
* {@link secretTimeLeft} for an ISO expiry, as a `SecretReference` carries it.
|
|
26
|
+
*
|
|
27
|
+
* @param expiresAt - ISO expiry, `null` when it stays until revoked.
|
|
28
|
+
* @param now - The current time, in Unix ms.
|
|
29
|
+
*/
|
|
30
|
+
declare function secretTimeLeftIso(expiresAt: string | null, now: number): SecretTimeLeft;
|
|
31
|
+
//#endregion
|
|
32
|
+
export { SecretTimeLeft, secretTimeLeft, secretTimeLeftIso };
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
//#region src/chat/headless/secrets.ts
|
|
2
|
+
const MINUTE = 6e4;
|
|
3
|
+
const HOUR = 60 * MINUTE;
|
|
4
|
+
/**
|
|
5
|
+
* The time left until `expiresAt`, rounded to the unit a person reads: minutes under an hour, hours under two
|
|
6
|
+
* days, then days.
|
|
7
|
+
*
|
|
8
|
+
* @param expiresAt - Expiry in Unix ms, `null` when it stays until revoked.
|
|
9
|
+
* @param now - The current time, in Unix ms.
|
|
10
|
+
*/
|
|
11
|
+
function secretTimeLeft(expiresAt, now) {
|
|
12
|
+
if (expiresAt === null) return { kind: "never" };
|
|
13
|
+
const ms = expiresAt - now;
|
|
14
|
+
if (ms <= 0) return { kind: "expired" };
|
|
15
|
+
if (ms < HOUR) return {
|
|
16
|
+
kind: "left",
|
|
17
|
+
count: Math.max(1, Math.ceil(ms / MINUTE)),
|
|
18
|
+
unit: "minute"
|
|
19
|
+
};
|
|
20
|
+
if (ms < 48 * HOUR) return {
|
|
21
|
+
kind: "left",
|
|
22
|
+
count: Math.round(ms / HOUR),
|
|
23
|
+
unit: "hour"
|
|
24
|
+
};
|
|
25
|
+
return {
|
|
26
|
+
kind: "left",
|
|
27
|
+
count: Math.round(ms / (24 * HOUR)),
|
|
28
|
+
unit: "day"
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* {@link secretTimeLeft} for an ISO expiry, as a `SecretReference` carries it.
|
|
33
|
+
*
|
|
34
|
+
* @param expiresAt - ISO expiry, `null` when it stays until revoked.
|
|
35
|
+
* @param now - The current time, in Unix ms.
|
|
36
|
+
*/
|
|
37
|
+
function secretTimeLeftIso(expiresAt, now) {
|
|
38
|
+
if (expiresAt === null) return { kind: "never" };
|
|
39
|
+
const at = Date.parse(expiresAt);
|
|
40
|
+
return Number.isNaN(at) ? { kind: "never" } : secretTimeLeft(at, now);
|
|
41
|
+
}
|
|
42
|
+
//#endregion
|
|
43
|
+
export { secretTimeLeft, secretTimeLeftIso };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { SecretTimeLeft } from "./secrets.js";
|
|
1
2
|
import { ChatLabels } from "./labels.js";
|
|
2
3
|
//#region src/chat/headless/session-list.d.ts
|
|
3
4
|
/** The minimal session shape the list model needs. {@link ChatSession} satisfies it. */
|
|
@@ -152,6 +153,7 @@ declare function dateBucket(at: number, now: number, labels?: {
|
|
|
152
153
|
estimateDueTitle: string;
|
|
153
154
|
estimateOver: string;
|
|
154
155
|
estimateOverTitle: string;
|
|
156
|
+
estimateProblemTitle: (reason: string, message?: string) => string;
|
|
155
157
|
runningFor: (elapsed: string) => string;
|
|
156
158
|
agent: string;
|
|
157
159
|
stepRunning: string;
|
|
@@ -180,6 +182,27 @@ declare function dateBucket(at: number, now: number, labels?: {
|
|
|
180
182
|
continueRun: string;
|
|
181
183
|
continueHint: string;
|
|
182
184
|
resetsAt: (time: string) => string;
|
|
185
|
+
authCard: string;
|
|
186
|
+
authHeadline: (auth: import("zidane/chat/pure").AuthFailure, label: string) => string;
|
|
187
|
+
authSignInAgain: string;
|
|
188
|
+
authUseAccount: (account: string) => string;
|
|
189
|
+
authSwitching: (account: string) => string;
|
|
190
|
+
authSettings: string;
|
|
191
|
+
authSettingsHint: string;
|
|
192
|
+
authCopyDetails: string;
|
|
193
|
+
authCopied: string;
|
|
194
|
+
authOpeningBrowser: string;
|
|
195
|
+
authWaiting: string;
|
|
196
|
+
authOpenPage: string;
|
|
197
|
+
authEnterCode: (code: string) => string;
|
|
198
|
+
authPaste: string;
|
|
199
|
+
authPasteSend: string;
|
|
200
|
+
authCancel: string;
|
|
201
|
+
authSignedIn: string;
|
|
202
|
+
authSignedInRetrying: string;
|
|
203
|
+
authFixed: string;
|
|
204
|
+
authTryAgain: string;
|
|
205
|
+
authFailed: (message: string) => string;
|
|
183
206
|
sessionEventLabel: (title: string, verb: string, needsAttention: boolean) => string;
|
|
184
207
|
clickToAnswer: string;
|
|
185
208
|
openSession: string;
|
|
@@ -361,6 +384,9 @@ declare function dateBucket(at: number, now: number, labels?: {
|
|
|
361
384
|
questionCount: (count: number) => string;
|
|
362
385
|
interactionsLabel: string;
|
|
363
386
|
inboxEmpty: string;
|
|
387
|
+
inboxNeedsYou: string;
|
|
388
|
+
inboxInProgress: string;
|
|
389
|
+
inboxRecent: string;
|
|
364
390
|
inboxPreviousSession: string;
|
|
365
391
|
unsupportedInteraction: (tool: string) => string;
|
|
366
392
|
planRejectNote: string;
|
|
@@ -385,6 +411,19 @@ declare function dateBucket(at: number, now: number, labels?: {
|
|
|
385
411
|
noAnswer: string;
|
|
386
412
|
confirmYes: string;
|
|
387
413
|
confirmNo: string;
|
|
414
|
+
secretValueLabel: string;
|
|
415
|
+
secretValuePlaceholder: string;
|
|
416
|
+
secretTtlLabel: string;
|
|
417
|
+
secretTtlName: (ttl: import("zidane/chat/pure").SecretTtl) => string;
|
|
418
|
+
saveSecurely: string;
|
|
419
|
+
declineSecret: string;
|
|
420
|
+
declineSecretHint: string;
|
|
421
|
+
secretNote: (ttl: import("zidane/chat/pure").SecretTtl) => string;
|
|
422
|
+
secretSaved: (name: string, left: SecretTimeLeft) => string;
|
|
423
|
+
secretSent: (name: string) => string;
|
|
424
|
+
secretDeclined: (name: string) => string;
|
|
425
|
+
secretReused: (name: string) => string;
|
|
426
|
+
openSecrets: string;
|
|
388
427
|
filterSessions: string;
|
|
389
428
|
filterView: string;
|
|
390
429
|
filterStatus: string;
|
|
@@ -427,6 +466,12 @@ declare function dateBucket(at: number, now: number, labels?: {
|
|
|
427
466
|
filterPicked: (count: number) => string;
|
|
428
467
|
filterSpaceDefault: string;
|
|
429
468
|
filterSaveView: string;
|
|
469
|
+
filterOrigin: string;
|
|
470
|
+
filterOrigins: {
|
|
471
|
+
all: string;
|
|
472
|
+
scheduled: string;
|
|
473
|
+
unscheduled: string;
|
|
474
|
+
};
|
|
430
475
|
hostStatuses: {
|
|
431
476
|
local: string;
|
|
432
477
|
connected: string;
|
|
@@ -1,4 +1,16 @@
|
|
|
1
|
+
import { estimateViewAt } from "zidane/chat/pure";
|
|
1
2
|
//#region src/chat/headless/sidebar/estimates.ts
|
|
3
|
+
/**
|
|
4
|
+
* How long each session's runs have left (`Settings.runEstimates`), outside
|
|
5
|
+
* React: the session's own run and its subagents', as the host estimated
|
|
6
|
+
* them ({@link createRunEstimates}). Fed from the app's stream signals
|
|
7
|
+
* (`run:estimate`, cleared on `run:start` / `run:end`) and from session rows
|
|
8
|
+
* (`runEstimates`, the saved run records), so a window opened mid-run counts
|
|
9
|
+
* down from the same point as the one that saw the estimate arrive.
|
|
10
|
+
*
|
|
11
|
+
* The store holds the estimates, not the countdown: a reader computes what
|
|
12
|
+
* an estimate says now with `estimateReadout` (`zidane/chat/pure`).
|
|
13
|
+
*/
|
|
2
14
|
const NONE = [];
|
|
3
15
|
/**
|
|
4
16
|
* The estimate a row shows: the session's own run (`depth` 0), or the
|
|
@@ -47,7 +59,7 @@ function createRunEstimates(options) {
|
|
|
47
59
|
sessions.set(sessionId, runs);
|
|
48
60
|
}
|
|
49
61
|
const held = runs.get(view.runId);
|
|
50
|
-
if (held && !live && held
|
|
62
|
+
if (held && !live && estimateViewAt(held) >= estimateViewAt(view)) return false;
|
|
51
63
|
runs.set(view.runId, view);
|
|
52
64
|
return true;
|
|
53
65
|
};
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { Readable } from "../store.js";
|
|
2
|
+
//#region src/chat/headless/sidebar/history.d.ts
|
|
3
|
+
/** A page of the history: a session, or `null` for the new-chat draft. */
|
|
4
|
+
type SessionHistoryPage<K extends string = string> = K | null;
|
|
5
|
+
/** The history as it is kept: its pages, oldest first, and the cursor. */
|
|
6
|
+
interface SessionHistoryState<K extends string = string> {
|
|
7
|
+
/** The pages, oldest first. */
|
|
8
|
+
entries: readonly SessionHistoryPage<K>[];
|
|
9
|
+
/** The cursor: the entry on show (`-1` while there is none). */
|
|
10
|
+
index: number;
|
|
11
|
+
}
|
|
12
|
+
/** Where the history persists (the desktop app: main's database). */
|
|
13
|
+
interface SessionHistoryStore {
|
|
14
|
+
/** The saved history, as stored (checked by {@link parseSessionHistory}). */
|
|
15
|
+
load(): Promise<unknown>;
|
|
16
|
+
/** Saves the history. */
|
|
17
|
+
save(state: SessionHistoryState): Promise<unknown>;
|
|
18
|
+
}
|
|
19
|
+
/** Which way to move. */
|
|
20
|
+
type SessionHistoryDirection = 'back' | 'forward';
|
|
21
|
+
/** The window's page history, outside React. */
|
|
22
|
+
interface SessionHistory<K extends string = string> {
|
|
23
|
+
/** The pages and the cursor. */
|
|
24
|
+
state: Readable<SessionHistoryState<K>>;
|
|
25
|
+
/** Records a page shown other than by {@link back} / {@link forward}. */
|
|
26
|
+
visit(page: SessionHistoryPage<K>): void;
|
|
27
|
+
/** The entry on show becomes `page` (no-op with no entry). */
|
|
28
|
+
replace(page: SessionHistoryPage<K>): void;
|
|
29
|
+
/**
|
|
30
|
+
* The page one step back or forward, or `undefined` when there is none. Reads only.
|
|
31
|
+
*
|
|
32
|
+
* @param direction - Which way.
|
|
33
|
+
* @param canOpen - Whether a session can open now; the draft always can.
|
|
34
|
+
*/
|
|
35
|
+
peek(direction: SessionHistoryDirection, canOpen?: (id: K) => boolean): SessionHistoryPage<K> | undefined;
|
|
36
|
+
/** Moves the cursor back to the page {@link peek} finds and returns it (`undefined`: nowhere to go). */
|
|
37
|
+
back(canOpen?: (id: K) => boolean): SessionHistoryPage<K> | undefined;
|
|
38
|
+
/** Moves the cursor forward to the page {@link peek} finds and returns it (`undefined`: nowhere to go). */
|
|
39
|
+
forward(canOpen?: (id: K) => boolean): SessionHistoryPage<K> | undefined;
|
|
40
|
+
/** Removes a session from every entry (deleted). */
|
|
41
|
+
forget(id: K): void;
|
|
42
|
+
/** Reads the store once and merges it in (resolves at once without a store). */
|
|
43
|
+
load(): Promise<void>;
|
|
44
|
+
}
|
|
45
|
+
/** Options of {@link createSessionHistory}. */
|
|
46
|
+
interface SessionHistoryOptions {
|
|
47
|
+
/** Where the history persists; absent, it lasts as long as the window. */
|
|
48
|
+
store?: SessionHistoryStore;
|
|
49
|
+
/** The most entries kept (default {@link SESSION_HISTORY_LIMIT}). */
|
|
50
|
+
limit?: number;
|
|
51
|
+
/** A store read or write failed. */
|
|
52
|
+
onError?: (what: 'load' | 'save', error: unknown) => void;
|
|
53
|
+
}
|
|
54
|
+
/** The most entries a history keeps by default. */
|
|
55
|
+
declare const SESSION_HISTORY_LIMIT = 200;
|
|
56
|
+
/**
|
|
57
|
+
* A stored history, checked: entries are session keys (non-empty strings) or `null`, the cursor one of them.
|
|
58
|
+
* Anything malformed reads as no history.
|
|
59
|
+
*
|
|
60
|
+
* @param raw - The stored value.
|
|
61
|
+
* @param limit - The most entries kept.
|
|
62
|
+
*/
|
|
63
|
+
declare function parseSessionHistory<K extends string = string>(raw: unknown, limit?: number): SessionHistoryState<K>;
|
|
64
|
+
/**
|
|
65
|
+
* The history store: in memory, persisted through `store` once {@link SessionHistory.load} has read it.
|
|
66
|
+
*
|
|
67
|
+
* @param options - The store, the cap and the error report.
|
|
68
|
+
*/
|
|
69
|
+
declare function createSessionHistory<K extends string = string>(options?: SessionHistoryOptions): SessionHistory<K>;
|
|
70
|
+
//#endregion
|
|
71
|
+
export { SESSION_HISTORY_LIMIT, SessionHistory, SessionHistoryDirection, SessionHistoryOptions, SessionHistoryPage, SessionHistoryState, SessionHistoryStore, createSessionHistory, parseSessionHistory };
|