zidane-ui 9.1.1 → 9.1.3
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 +2 -0
- package/dist/adapters/index.js +1 -1
- package/dist/adapters/server-transcript-members.d.ts +1 -1
- package/dist/adapters/server-transcript-members.js +19 -1
- package/dist/app/ModalProvider.d.ts +3 -1
- package/dist/app/ModalProvider.js +15 -9
- package/dist/approvals/headless/index.js +1 -1
- package/dist/chat/HostTranscript.d.ts +3 -1
- package/dist/chat/HostTranscript.js +5 -3
- package/dist/chat/Transcript.js +1 -1
- package/dist/chat/composer/ComposerEditor.js +1 -1
- package/dist/chat/composer/index.js +1 -1
- package/dist/chat/composer/use-composer-stores.js +1 -1
- package/dist/chat/headless/block-runs.d.ts +57 -0
- package/dist/chat/headless/block-runs.js +123 -0
- package/dist/chat/headless/composer/index.js +2 -2
- package/dist/chat/headless/fixture-transcript.d.ts +6 -1
- package/dist/chat/headless/fixture-transcript.js +49 -0
- package/dist/chat/headless/host.d.ts +3 -0
- package/dist/chat/headless/index.d.ts +2 -1
- package/dist/chat/headless/index.js +12 -11
- package/dist/chat/headless/labels.d.ts +42 -0
- package/dist/chat/headless/labels.js +42 -0
- package/dist/chat/headless/session-list.d.ts +27 -0
- package/dist/chat/headless/sidebar/index.js +1 -1
- package/dist/chat/headless/sidebar/labels.d.ts +27 -0
- package/dist/chat/headless/streams/index.js +1 -1
- package/dist/chat/headless/streams/live-events.js +2 -1
- package/dist/chat/headless/streams/session-streams.js +2 -2
- package/dist/chat/headless/streams/store.js +2 -2
- package/dist/chat/headless/transcript/batch.d.ts +21 -1
- package/dist/chat/headless/transcript/batch.js +55 -10
- package/dist/chat/headless/transcript/collapse.js +18 -3
- package/dist/chat/headless/transcript/fold.js +26 -10
- package/dist/chat/headless/transcript/index.js +1 -1
- package/dist/chat/headless/transcript/rows.d.ts +7 -1
- package/dist/chat/index.d.ts +6 -1
- package/dist/chat/index.js +7 -2
- package/dist/chat/testing/contract.d.ts +6 -1
- package/dist/chat/testing/contract.js +30 -3
- package/dist/chat/transcript/AnsiText.d.ts +27 -0
- package/dist/chat/transcript/AnsiText.js +73 -0
- package/dist/chat/transcript/CodemodeScript.d.ts +33 -0
- package/dist/chat/transcript/CodemodeScript.js +212 -0
- package/dist/chat/transcript/LiveOutput.d.ts +21 -0
- package/dist/chat/transcript/LiveOutput.js +42 -0
- package/dist/chat/transcript/TranscriptRow.js +19 -2
- package/dist/chat/transcript/actions.d.ts +6 -0
- package/dist/chat/transcript/index.d.ts +6 -1
- package/dist/chat/transcript/index.js +6 -1
- package/dist/chat/transcript/markdown.js +9 -0
- package/dist/chat/transcript/renderers.d.ts +7 -0
- package/dist/chat/transcript/script-input.d.ts +17 -0
- package/dist/chat/transcript/script-input.js +16 -0
- package/dist/chat/transcript/shell-block-scope.d.ts +29 -0
- package/dist/chat/transcript/shell-block-scope.js +18 -0
- package/dist/chat/transcript/shell-block.d.ts +27 -0
- package/dist/chat/transcript/shell-block.js +306 -0
- package/dist/chat/transcript/tool-parts.d.ts +18 -6
- package/dist/chat/transcript/tool-parts.js +15 -5
- package/dist/chat/transcript/tool-payload.js +6 -3
- package/dist/chat/transcript/tool-row.js +155 -96
- package/dist/chat/transcript/user-bash.js +3 -2
- package/dist/code/HighlightedCode.js +3 -69
- package/dist/code/highlight-lines.d.ts +24 -0
- package/dist/code/highlight-lines.js +41 -0
- package/dist/code/use-highlighted-html.d.ts +5 -0
- package/dist/code/use-highlighted-html.js +75 -0
- package/dist/core.css +6 -2
- package/dist/dist/{index-CGbOWa7y.d.ts → index-WlE93Q6d.d.ts} +101 -3
- package/dist/extensions/ExtensionSettingsSidebar.js +19 -3
- package/dist/extensions/kit.d.ts +1 -1
- package/dist/git/BranchMenu.d.ts +1 -7
- package/dist/git/BranchMenu.js +17 -40
- package/dist/git/headless/labels.d.ts +0 -2
- package/dist/git/headless/labels.js +0 -2
- package/dist/index.d.ts +4 -3
- package/dist/index.js +2 -1
- package/dist/onboarding/index.js +1 -1
- package/dist/onboarding/steps/ConnectStep.js +1 -1
- package/dist/onboarding/steps/ExtensionsStep.js +1 -1
- package/dist/onboarding/steps/ReadyStep.js +1 -1
- package/dist/onboarding/steps/connect/ProviderPanel.js +1 -1
- package/dist/session/headless/index.js +2 -2
- package/dist/settings/SettingsShell.d.ts +3 -1
- package/dist/settings/SettingsShell.js +15 -8
- package/dist/settings/headless/catalog.js +5 -0
- package/dist/settings/headless/layout.js +2 -1
- package/dist/settings/headless/registry.d.ts +2 -0
- package/dist/settings/headless/search.d.ts +1 -1
- package/dist/settings/sections/environments/EnvironmentsSection.js +1 -1
- package/dist/settings/sections/extensions/ExtensionsSection.js +2 -2
- package/dist/settings/sections/models/ModelRows.js +1 -1
- package/dist/settings/sections/models/model-test.js +1 -1
- package/dist/styles.css +291 -2
- package/dist/terminal/TerminalProvider.d.ts +3 -1
- package/dist/terminal/TerminalProvider.js +5 -1
- package/dist/terminal/headless/store.d.ts +10 -0
- package/dist/terminal/headless/store.js +16 -0
- package/dist/terminal/index.d.ts +2 -2
- package/dist/terminal/index.js +2 -2
- package/dist/theme/runtime-icons.d.ts +50 -0
- package/dist/theme/runtime-icons.js +95 -0
- package/package.json +3 -6
- package/src/styles/primitives.css +5 -2
- package/src/styles/transcript.css +281 -0
- package/src/adapters/browser-appearance-host.ts +0 -51
- package/src/adapters/browser-keybindings-host.ts +0 -48
- package/src/adapters/browser-workspace-host.ts +0 -92
- package/src/adapters/closable-client.ts +0 -34
- package/src/adapters/extension-modules.ts +0 -360
- package/src/adapters/index.ts +0 -35
- package/src/adapters/live-events.ts +0 -6
- package/src/adapters/live.ts +0 -270
- package/src/adapters/run-host.ts +0 -238
- package/src/adapters/server-approvals-host.ts +0 -102
- package/src/adapters/server-client.ts +0 -15
- package/src/adapters/server-composer-host.ts +0 -459
- package/src/adapters/server-extensions-host.ts +0 -979
- package/src/adapters/server-files-host.ts +0 -287
- package/src/adapters/server-git-host.ts +0 -289
- package/src/adapters/server-host.ts +0 -489
- package/src/adapters/server-machines-host.ts +0 -283
- package/src/adapters/server-oauth-flow.ts +0 -133
- package/src/adapters/server-onboarding-host.ts +0 -363
- package/src/adapters/server-palette-host.ts +0 -134
- package/src/adapters/server-session-host.ts +0 -241
- package/src/adapters/server-settings-accounts.ts +0 -212
- package/src/adapters/server-settings-host.ts +0 -120
- package/src/adapters/server-settings-models.ts +0 -46
- package/src/adapters/server-settings-performance.ts +0 -58
- package/src/adapters/server-settings-sections.ts +0 -222
- package/src/adapters/server-sidebar-host.ts +0 -59
- package/src/adapters/server-terminal-host.ts +0 -124
- package/src/adapters/server-transcript-members.ts +0 -131
- package/src/adapters/sse-host.ts +0 -264
- package/src/adapters/sse-parser.ts +0 -82
- package/src/adapters/sse-protocol.ts +0 -118
- package/src/adapters/stream-pacer.ts +0 -122
- package/src/adapters/worker-host.ts +0 -192
- package/src/adapters/worker-protocol.ts +0 -97
- package/src/app/AppHostProvider.tsx +0 -135
- package/src/app/ModalProvider.tsx +0 -731
- package/src/app/headless/app-host.ts +0 -61
- package/src/app/headless/index.ts +0 -6
- package/src/app/headless/resource.ts +0 -444
- package/src/app/index.ts +0 -9
- package/src/app/testing/index.ts +0 -90
- package/src/app/useConfirm.tsx +0 -65
- package/src/app/useResource.ts +0 -30
- package/src/appearance/AppearanceProvider.tsx +0 -383
- package/src/appearance/apply.ts +0 -69
- package/src/appearance/headless/fixture-host.ts +0 -111
- package/src/appearance/headless/fonts.ts +0 -224
- package/src/appearance/headless/host.ts +0 -65
- package/src/appearance/headless/index.ts +0 -12
- package/src/appearance/headless/prefs.ts +0 -252
- package/src/appearance/headless/storage.ts +0 -127
- package/src/appearance/headless/zoom-commands.ts +0 -21
- package/src/appearance/index.ts +0 -11
- package/src/appearance/testing/contract.ts +0 -210
- package/src/appearance/testing/index.ts +0 -6
- package/src/approvals/ApprovalBar.tsx +0 -234
- package/src/approvals/ApprovalConcern.tsx +0 -33
- package/src/approvals/ApprovalShell.tsx +0 -69
- package/src/approvals/ApprovalsProvider.tsx +0 -110
- package/src/approvals/FileEditApproval.tsx +0 -310
- package/src/approvals/HunkPreviews.tsx +0 -225
- package/src/approvals/SafelistPanel.tsx +0 -149
- package/src/approvals/headless/fixture-host.ts +0 -73
- package/src/approvals/headless/fixtures.ts +0 -86
- package/src/approvals/headless/heads.ts +0 -81
- package/src/approvals/headless/host.ts +0 -80
- package/src/approvals/headless/index.ts +0 -12
- package/src/approvals/headless/labels.ts +0 -67
- package/src/approvals/headless/pending.ts +0 -91
- package/src/approvals/headless/preview.ts +0 -94
- package/src/approvals/headless/safelist.ts +0 -63
- package/src/approvals/index.ts +0 -13
- package/src/approvals/key-scope.ts +0 -33
- package/src/approvals/testing/contract.ts +0 -230
- package/src/approvals/testing/index.ts +0 -7
- package/src/brands/marks.ts +0 -298
- package/src/chat/ChatProvider.tsx +0 -60
- package/src/chat/DaemonOrb.tsx +0 -107
- package/src/chat/HostBadge.tsx +0 -71
- package/src/chat/HostStatusDot.tsx +0 -53
- package/src/chat/HostTranscript.tsx +0 -101
- package/src/chat/PdfPreview.tsx +0 -65
- package/src/chat/RunEstimateChip.tsx +0 -168
- package/src/chat/SessionFilterMenu.tsx +0 -397
- package/src/chat/SessionGroupHeader.tsx +0 -177
- package/src/chat/SessionHostHeader.tsx +0 -66
- package/src/chat/SessionList.tsx +0 -413
- package/src/chat/SessionListRow.tsx +0 -296
- package/src/chat/SessionStreamsProvider.tsx +0 -253
- package/src/chat/StatusDot.tsx +0 -128
- package/src/chat/TextPreview.tsx +0 -121
- package/src/chat/Throbber.tsx +0 -270
- package/src/chat/Transcript.tsx +0 -523
- package/src/chat/composer/AgentPicker.tsx +0 -155
- package/src/chat/composer/AgentPickerDialog.tsx +0 -99
- package/src/chat/composer/ApprovalDock.tsx +0 -64
- package/src/chat/composer/ArchivedBanner.tsx +0 -44
- package/src/chat/composer/AttachmentTiles.tsx +0 -211
- package/src/chat/composer/Composer.tsx +0 -500
- package/src/chat/composer/ComposerBadges.tsx +0 -339
- package/src/chat/composer/ComposerControls.tsx +0 -243
- package/src/chat/composer/ComposerEditor.tsx +0 -101
- package/src/chat/composer/ComposerHostProvider.tsx +0 -46
- package/src/chat/composer/ComposerShell.tsx +0 -129
- package/src/chat/composer/ContextBreakdown.tsx +0 -382
- package/src/chat/composer/ContextOrb.tsx +0 -176
- package/src/chat/composer/ConversationBadges.tsx +0 -168
- package/src/chat/composer/DockCard.tsx +0 -126
- package/src/chat/composer/EffortPickerDialog.tsx +0 -184
- package/src/chat/composer/HostComposer.tsx +0 -135
- package/src/chat/composer/HostContextOrb.tsx +0 -94
- package/src/chat/composer/HostModelChainList.tsx +0 -102
- package/src/chat/composer/HostPicker.tsx +0 -97
- package/src/chat/composer/HostPickers.tsx +0 -320
- package/src/chat/composer/ImageModelList.tsx +0 -151
- package/src/chat/composer/ModelChainList.tsx +0 -442
- package/src/chat/composer/ModelChainParts.tsx +0 -247
- package/src/chat/composer/ModelChainRow.tsx +0 -191
- package/src/chat/composer/ModelChainRows.tsx +0 -223
- package/src/chat/composer/ModelChainTooltip.tsx +0 -121
- package/src/chat/composer/ModelFacts.tsx +0 -204
- package/src/chat/composer/ModelOptionsPicker.tsx +0 -257
- package/src/chat/composer/ModelPicker.tsx +0 -513
- package/src/chat/composer/ModelPickerDialog.tsx +0 -99
- package/src/chat/composer/ModelProviderPills.tsx +0 -141
- package/src/chat/composer/PickerPill.tsx +0 -41
- package/src/chat/composer/ProjectMenu.tsx +0 -187
- package/src/chat/composer/PromptHistoryProvider.tsx +0 -214
- package/src/chat/composer/RetryPill.tsx +0 -47
- package/src/chat/composer/RunStatusChip.tsx +0 -150
- package/src/chat/composer/ScopeToggle.tsx +0 -94
- package/src/chat/composer/SelectTurnHint.tsx +0 -40
- package/src/chat/composer/SendButton.tsx +0 -89
- package/src/chat/composer/ServerScopeToggle.tsx +0 -188
- package/src/chat/composer/attachment-ingest.ts +0 -413
- package/src/chat/composer/attachments.tsx +0 -176
- package/src/chat/composer/badge-order.ts +0 -65
- package/src/chat/composer/composer-bus.ts +0 -317
- package/src/chat/composer/index.ts +0 -63
- package/src/chat/composer/load-composer-editor.ts +0 -25
- package/src/chat/composer/model-catalog.ts +0 -424
- package/src/chat/composer/model-list-layout.ts +0 -118
- package/src/chat/composer/prompt-history-nav.ts +0 -60
- package/src/chat/composer/scope-side.ts +0 -7
- package/src/chat/composer/suggestion-extension.ts +0 -113
- package/src/chat/composer/suggestions.tsx +0 -115
- package/src/chat/composer/use-agent-profiles.ts +0 -97
- package/src/chat/composer/use-cache-hints.ts +0 -93
- package/src/chat/composer/use-composer-stores.ts +0 -140
- package/src/chat/composer/use-draft-target.ts +0 -317
- package/src/chat/composer/use-new-session-defaults.ts +0 -201
- package/src/chat/composer/use-provider-ready-poll.ts +0 -35
- package/src/chat/composer/use-run-meter.ts +0 -140
- package/src/chat/composer/use-send-prompt.ts +0 -188
- package/src/chat/composer/use-session-meters.ts +0 -109
- package/src/chat/composer/use-sustained-work.ts +0 -74
- package/src/chat/composer/useAttachmentIngest.ts +0 -116
- package/src/chat/composer/useModelListSpy.ts +0 -19
- package/src/chat/headless/badge-refs.ts +0 -76
- package/src/chat/headless/chip-labels.ts +0 -40
- package/src/chat/headless/chip-settle.ts +0 -53
- package/src/chat/headless/chip-views.ts +0 -215
- package/src/chat/headless/composer/attachment-dedupe.ts +0 -50
- package/src/chat/headless/composer/commands.ts +0 -16
- package/src/chat/headless/composer/composer-sources.ts +0 -150
- package/src/chat/headless/composer/conversation-badges.ts +0 -227
- package/src/chat/headless/composer/draft-sync.ts +0 -199
- package/src/chat/headless/composer/editor-markdown.ts +0 -137
- package/src/chat/headless/composer/ghost-autocomplete.ts +0 -381
- package/src/chat/headless/composer/host-chrome.ts +0 -197
- package/src/chat/headless/composer/host.ts +0 -250
- package/src/chat/headless/composer/index.ts +0 -17
- package/src/chat/headless/composer/labels-chrome.ts +0 -83
- package/src/chat/headless/composer/labels-editor.ts +0 -44
- package/src/chat/headless/composer/labels.ts +0 -18
- package/src/chat/headless/composer/live-cost.ts +0 -67
- package/src/chat/headless/composer/model-knobs.ts +0 -179
- package/src/chat/headless/composer/model-names.ts +0 -145
- package/src/chat/headless/composer/model-picker-prefs.ts +0 -90
- package/src/chat/headless/composer/models.ts +0 -86
- package/src/chat/headless/composer/new-session-defaults.ts +0 -68
- package/src/chat/headless/composer/prompt-suggestions.ts +0 -72
- package/src/chat/headless/composer/remember-model-pick.ts +0 -132
- package/src/chat/headless/composer/run-meter.ts +0 -228
- package/src/chat/headless/composer-modes.ts +0 -170
- package/src/chat/headless/draft-scope.ts +0 -136
- package/src/chat/headless/draft-target.ts +0 -87
- package/src/chat/headless/extension-sources.ts +0 -64
- package/src/chat/headless/file-chip.ts +0 -175
- package/src/chat/headless/fixture-host.ts +0 -294
- package/src/chat/headless/fixture-transcript.ts +0 -125
- package/src/chat/headless/fixtures/demo-transcript-all-kinds.ts +0 -233
- package/src/chat/headless/fixtures/demo-transcript.ts +0 -244
- package/src/chat/headless/host.ts +0 -264
- package/src/chat/headless/hosts.ts +0 -55
- package/src/chat/headless/index.ts +0 -31
- package/src/chat/headless/labels.ts +0 -373
- package/src/chat/headless/markdown-chunks.ts +0 -134
- package/src/chat/headless/path-resolver.ts +0 -178
- package/src/chat/headless/prompt-origin.ts +0 -90
- package/src/chat/headless/reference-store.ts +0 -285
- package/src/chat/headless/send-flow.ts +0 -347
- package/src/chat/headless/session-list.ts +0 -400
- package/src/chat/headless/sidebar/activity.ts +0 -179
- package/src/chat/headless/sidebar/badges.ts +0 -190
- package/src/chat/headless/sidebar/compaction.ts +0 -98
- package/src/chat/headless/sidebar/directory.ts +0 -1046
- package/src/chat/headless/sidebar/dot-state.ts +0 -36
- package/src/chat/headless/sidebar/environment.ts +0 -70
- package/src/chat/headless/sidebar/estimates.ts +0 -146
- package/src/chat/headless/sidebar/host.ts +0 -41
- package/src/chat/headless/sidebar/index.ts +0 -18
- package/src/chat/headless/sidebar/labels.ts +0 -161
- package/src/chat/headless/sidebar/notifications.ts +0 -61
- package/src/chat/headless/sidebar/pinned-projects.ts +0 -51
- package/src/chat/headless/sidebar/pinned-sessions.ts +0 -27
- package/src/chat/headless/sidebar/project-icons.ts +0 -116
- package/src/chat/headless/sidebar/query.ts +0 -621
- package/src/chat/headless/sidebar/rows.ts +0 -427
- package/src/chat/headless/sidebar/types.ts +0 -96
- package/src/chat/headless/sidebar/view.ts +0 -367
- package/src/chat/headless/site-icons.ts +0 -51
- package/src/chat/headless/smooth-stream.ts +0 -76
- package/src/chat/headless/store.ts +0 -62
- package/src/chat/headless/streams/actions.ts +0 -85
- package/src/chat/headless/streams/index.ts +0 -25
- package/src/chat/headless/streams/live-events.ts +0 -124
- package/src/chat/headless/streams/merge.ts +0 -60
- package/src/chat/headless/streams/pacer.ts +0 -189
- package/src/chat/headless/streams/prompt-previews.ts +0 -64
- package/src/chat/headless/streams/scheduler.ts +0 -36
- package/src/chat/headless/streams/selectors.ts +0 -76
- package/src/chat/headless/streams/session-streams.ts +0 -407
- package/src/chat/headless/streams/store.ts +0 -1107
- package/src/chat/headless/streams/transcript.ts +0 -41
- package/src/chat/headless/streams/types.ts +0 -84
- package/src/chat/headless/transcript/batch.ts +0 -429
- package/src/chat/headless/transcript/collapse.ts +0 -789
- package/src/chat/headless/transcript/fold-actions.ts +0 -269
- package/src/chat/headless/transcript/fold-attachments.ts +0 -78
- package/src/chat/headless/transcript/fold.ts +0 -382
- package/src/chat/headless/transcript/index.ts +0 -41
- package/src/chat/headless/transcript/nesting.ts +0 -73
- package/src/chat/headless/transcript/pairing.ts +0 -124
- package/src/chat/headless/transcript/rows.ts +0 -377
- package/src/chat/headless/transcript/run-failures.ts +0 -72
- package/src/chat/headless/transcript/select-stops.ts +0 -151
- package/src/chat/headless/transcript/tool-media.ts +0 -42
- package/src/chat/headless/transcript-host.ts +0 -180
- package/src/chat/headless/transcript-labels.ts +0 -12
- package/src/chat/headless/turn-labels.ts +0 -28
- package/src/chat/headless/turn-prompt.ts +0 -32
- package/src/chat/index.ts +0 -31
- package/src/chat/interactions/HostInteractions.tsx +0 -76
- package/src/chat/interactions/InboxPanel.tsx +0 -226
- package/src/chat/interactions/InteractionCard.tsx +0 -111
- package/src/chat/interactions/PlanCard.tsx +0 -186
- package/src/chat/interactions/QuestionField.tsx +0 -336
- package/src/chat/interactions/QuestionForm.tsx +0 -283
- package/src/chat/interactions/card-ui.tsx +0 -86
- package/src/chat/interactions/hooks.ts +0 -49
- package/src/chat/interactions/index.ts +0 -8
- package/src/chat/provider-color.ts +0 -71
- package/src/chat/rich-composer/MentionList.tsx +0 -238
- package/src/chat/rich-composer/RichComposer.tsx +0 -1071
- package/src/chat/rich-composer/badge-decorations.ts +0 -157
- package/src/chat/rich-composer/composer-controls.tsx +0 -102
- package/src/chat/rich-composer/composer-extensions.ts +0 -388
- package/src/chat/rich-composer/composer-keys.ts +0 -416
- package/src/chat/rich-composer/ghost-plugin.ts +0 -89
- package/src/chat/rich-composer/index.ts +0 -3
- package/src/chat/rich-composer/mention-popover.ts +0 -336
- package/src/chat/rich-composer/slash-completion.ts +0 -143
- package/src/chat/rich-composer/use-composer-bus.ts +0 -57
- package/src/chat/rich-composer/use-composer-editor.ts +0 -216
- package/src/chat/rich-composer/use-composer-sources.ts +0 -90
- package/src/chat/rich-composer/use-draft-mirror.ts +0 -398
- package/src/chat/rich-composer/use-editor-handover.ts +0 -45
- package/src/chat/rich-composer/use-extension-composer.ts +0 -80
- package/src/chat/rich-composer/use-ghost-lifecycle.ts +0 -265
- package/src/chat/rich-composer/use-prompt-ghost.ts +0 -90
- package/src/chat/rich-composer/use-staged-attachments.ts +0 -65
- package/src/chat/sidebar/MainSessionRow.tsx +0 -102
- package/src/chat/sidebar/ProjectIcon.tsx +0 -399
- package/src/chat/sidebar/RowChips.tsx +0 -98
- package/src/chat/sidebar/SessionSidebar.tsx +0 -1039
- package/src/chat/sidebar/SidebarDecoration.tsx +0 -93
- package/src/chat/sidebar/SidebarFilterMenu.tsx +0 -270
- package/src/chat/sidebar/SidebarFooter.tsx +0 -244
- package/src/chat/sidebar/SidebarFrame.tsx +0 -154
- package/src/chat/sidebar/SidebarGroupHeader.tsx +0 -263
- package/src/chat/sidebar/SidebarHostProvider.tsx +0 -51
- package/src/chat/sidebar/SidebarRowView.tsx +0 -151
- package/src/chat/sidebar/SidebarSearchRow.tsx +0 -66
- package/src/chat/sidebar/SidebarSessionRow.tsx +0 -317
- package/src/chat/sidebar/SidebarToggleButton.tsx +0 -48
- package/src/chat/sidebar/SpaceSwitcher.tsx +0 -341
- package/src/chat/sidebar/SpacesSection.tsx +0 -259
- package/src/chat/sidebar/collapsed.ts +0 -61
- package/src/chat/sidebar/index.ts +0 -109
- package/src/chat/sidebar/session-menu.ts +0 -441
- package/src/chat/sidebar/sidebar-focus-hold.ts +0 -56
- package/src/chat/sidebar/sidebar-live.tsx +0 -666
- package/src/chat/sidebar/use-main-session.ts +0 -32
- package/src/chat/sidebar/useAgentNames.ts +0 -12
- package/src/chat/sidebar/useCompactionProgress.ts +0 -24
- package/src/chat/sidebar/usePinnedProjects.ts +0 -36
- package/src/chat/sidebar/useSaveViewAsSpace.ts +0 -42
- package/src/chat/sidebar/useSessionActivity.ts +0 -24
- package/src/chat/sidebar/useSessionBadges.ts +0 -26
- package/src/chat/sidebar/useSessionDirectoryView.ts +0 -128
- package/src/chat/sidebar/useSessionSearch.ts +0 -94
- package/src/chat/sidebar/useSidebarKeyboardNav.ts +0 -167
- package/src/chat/sidebar/useSidebarLabels.ts +0 -10
- package/src/chat/testing/composer.contract.ts +0 -508
- package/src/chat/testing/contract.ts +0 -634
- package/src/chat/testing/fixture-composer-chrome.ts +0 -159
- package/src/chat/testing/fixture-composer-host.ts +0 -147
- package/src/chat/testing/fixture-sidebar-host.ts +0 -99
- package/src/chat/testing/index.ts +0 -12
- package/src/chat/testing/sidebar.contract.ts +0 -196
- package/src/chat/transcript/BadgeMenu.tsx +0 -241
- package/src/chat/transcript/CardMarkdown.tsx +0 -102
- package/src/chat/transcript/ChipCard.tsx +0 -187
- package/src/chat/transcript/ChipCards.tsx +0 -100
- package/src/chat/transcript/DiffLines.tsx +0 -122
- package/src/chat/transcript/EarlierHistory.tsx +0 -136
- package/src/chat/transcript/EditDiffBlock.tsx +0 -176
- package/src/chat/transcript/FileChip.tsx +0 -361
- package/src/chat/transcript/ImageGenerationBlock.tsx +0 -239
- package/src/chat/transcript/InlineChipText.tsx +0 -57
- package/src/chat/transcript/InteractionToolBody.tsx +0 -211
- package/src/chat/transcript/LazyRow.tsx +0 -311
- package/src/chat/transcript/MermaidDiagram.tsx +0 -484
- package/src/chat/transcript/PromptEcho.tsx +0 -171
- package/src/chat/transcript/PromptOriginLabel.tsx +0 -44
- package/src/chat/transcript/ProseMarkdown.tsx +0 -168
- package/src/chat/transcript/ReferenceText.tsx +0 -198
- package/src/chat/transcript/SelectCursor.tsx +0 -118
- package/src/chat/transcript/SelectTurnHint.tsx +0 -81
- package/src/chat/transcript/SelectTurnProvider.tsx +0 -150
- package/src/chat/transcript/SubagentBlock.tsx +0 -224
- package/src/chat/transcript/TranscriptRow.tsx +0 -362
- package/src/chat/transcript/TranscriptSearch.tsx +0 -171
- package/src/chat/transcript/TurnMenu.tsx +0 -217
- package/src/chat/transcript/actions.tsx +0 -77
- package/src/chat/transcript/badges.tsx +0 -155
- package/src/chat/transcript/chip-details.ts +0 -169
- package/src/chat/transcript/chip-resolve.ts +0 -56
- package/src/chat/transcript/extension-renderers.tsx +0 -148
- package/src/chat/transcript/fold-attachments.tsx +0 -221
- package/src/chat/transcript/fold-status.tsx +0 -112
- package/src/chat/transcript/fold-worker.tsx +0 -160
- package/src/chat/transcript/fold.tsx +0 -522
- package/src/chat/transcript/frame.tsx +0 -326
- package/src/chat/transcript/index.ts +0 -66
- package/src/chat/transcript/markdown-cache.ts +0 -84
- package/src/chat/transcript/markdown-context.ts +0 -52
- package/src/chat/transcript/markdown.tsx +0 -351
- package/src/chat/transcript/messages.tsx +0 -169
- package/src/chat/transcript/notices.tsx +0 -508
- package/src/chat/transcript/prompt-lines.tsx +0 -55
- package/src/chat/transcript/prompt.tsx +0 -258
- package/src/chat/transcript/prose.tsx +0 -171
- package/src/chat/transcript/recent-map.ts +0 -32
- package/src/chat/transcript/references.ts +0 -108
- package/src/chat/transcript/remark-references.ts +0 -157
- package/src/chat/transcript/remark-refs.ts +0 -176
- package/src/chat/transcript/renderer-slots.tsx +0 -35
- package/src/chat/transcript/renderers.tsx +0 -251
- package/src/chat/transcript/row-estimate.ts +0 -158
- package/src/chat/transcript/run-rows.tsx +0 -291
- package/src/chat/transcript/site-icons.ts +0 -27
- package/src/chat/transcript/thumbnails.ts +0 -146
- package/src/chat/transcript/tool-batch.tsx +0 -102
- package/src/chat/transcript/tool-details.tsx +0 -31
- package/src/chat/transcript/tool-media.tsx +0 -132
- package/src/chat/transcript/tool-parts.tsx +0 -358
- package/src/chat/transcript/tool-payload.tsx +0 -76
- package/src/chat/transcript/tool-row.tsx +0 -496
- package/src/chat/transcript/turn-commands.ts +0 -101
- package/src/chat/transcript/use-transcript-rows.ts +0 -195
- package/src/chat/transcript/useComposerSearch.ts +0 -106
- package/src/chat/transcript/useSelectTurnKeys.ts +0 -204
- package/src/chat/transcript/useSettledReveal.ts +0 -57
- package/src/chat/transcript/useStickToBottom.ts +0 -600
- package/src/chat/transcript/useTranscriptFind.ts +0 -70
- package/src/chat/transcript/useTranscriptFindKey.ts +0 -52
- package/src/chat/transcript/useTranscriptScroll.ts +0 -163
- package/src/chat/transcript/useTranscriptSearch.tsx +0 -382
- package/src/chat/transcript/useTranscriptSelectionCopy.ts +0 -63
- package/src/chat/transcript/useWheelHoverPause.ts +0 -79
- package/src/chat/transcript/user-bash.tsx +0 -134
- package/src/chat/transcript-options.ts +0 -51
- package/src/chat/useChatLabels.ts +0 -14
- package/src/code/CodeHighlightProvider.tsx +0 -87
- package/src/code/HighlightedCode.tsx +0 -156
- package/src/code/code-themes.ts +0 -187
- package/src/code/editor/CodeCompletion.tsx +0 -719
- package/src/code/editor/CodeEditor.tsx +0 -480
- package/src/code/editor/CodeHover.tsx +0 -429
- package/src/code/editor/DiagnosticAnnotation.tsx +0 -73
- package/src/code/editor/DiagnosticsChip.tsx +0 -85
- package/src/code/editor/DiffView.tsx +0 -197
- package/src/code/editor/EditorColumn.tsx +0 -256
- package/src/code/editor/FileIcon.tsx +0 -89
- package/src/code/editor/FileTabPill.tsx +0 -101
- package/src/code/editor/FileTree.tsx +0 -414
- package/src/code/editor/FileView.tsx +0 -462
- package/src/code/editor/HighlightWorkers.tsx +0 -84
- package/src/code/editor/LanguageEditor.tsx +0 -210
- package/src/code/editor/_vendor/tree-icon-colors.ts +0 -72
- package/src/code/editor/diagnostics.ts +0 -140
- package/src/code/editor/edit-session.ts +0 -32
- package/src/code/editor/environment.tsx +0 -88
- package/src/code/editor/find/FindBar.tsx +0 -126
- package/src/code/editor/find/find-highlight.ts +0 -138
- package/src/code/editor/find/find-model.ts +0 -123
- package/src/code/editor/find/settle-scroll.ts +0 -77
- package/src/code/editor/find/useFind.ts +0 -203
- package/src/code/editor/fs-adapter.ts +0 -37
- package/src/code/editor/index.ts +0 -36
- package/src/code/editor/language.ts +0 -31
- package/src/code/editor/patch-parse.ts +0 -176
- package/src/code/editor/patch-parse.worker.ts +0 -12
- package/src/code/editor/pierre-theme.ts +0 -155
- package/src/code/editor/prime-diff.ts +0 -37
- package/src/code/editor/reveal.ts +0 -58
- package/src/code/editor/scroll-reach.ts +0 -28
- package/src/code/editor/useCodeDocument.ts +0 -226
- package/src/code/editor/useDefinition.ts +0 -159
- package/src/code/editor/useDetachCleanup.ts +0 -36
- package/src/code/editor/useFileDocument.ts +0 -87
- package/src/code/editor/useRevealLine.ts +0 -92
- package/src/code/editor/word-at.ts +0 -145
- package/src/code/highlight.worker.ts +0 -16
- package/src/code/highlighter.ts +0 -181
- package/src/code/highlights.ts +0 -51
- package/src/code/mermaid-lexer.ts +0 -331
- package/src/code/shiki-theme.ts +0 -46
- package/src/components/BrandMark.tsx +0 -118
- package/src/components/Breadcrumb.tsx +0 -105
- package/src/components/BrowserChrome.tsx +0 -189
- package/src/components/BrowserSignIn.tsx +0 -210
- package/src/components/ChoiceCards.tsx +0 -170
- package/src/components/CodeFrame.tsx +0 -225
- package/src/components/ConfirmDialog.tsx +0 -119
- package/src/components/CopyButton.tsx +0 -85
- package/src/components/EditableTitle.tsx +0 -199
- package/src/components/ErrorBoundary.tsx +0 -208
- package/src/components/Form.tsx +0 -593
- package/src/components/Highlighted.tsx +0 -68
- package/src/components/HowItWorks.tsx +0 -123
- package/src/components/IconButton.tsx +0 -101
- package/src/components/IconToggle.tsx +0 -71
- package/src/components/Keycap.tsx +0 -334
- package/src/components/Lightbox.tsx +0 -257
- package/src/components/LoadError.tsx +0 -45
- package/src/components/MediaNav.tsx +0 -85
- package/src/components/Menu.tsx +0 -435
- package/src/components/Overlay.tsx +0 -327
- package/src/components/PanelEmpty.tsx +0 -80
- package/src/components/PanelRows.tsx +0 -107
- package/src/components/PreviewWindow.tsx +0 -53
- package/src/components/ReorderTabs.tsx +0 -103
- package/src/components/RowActionsMenu.tsx +0 -383
- package/src/components/SegmentSpinner.tsx +0 -88
- package/src/components/Segmented.tsx +0 -126
- package/src/components/StepFrame.tsx +0 -151
- package/src/components/Stepper.tsx +0 -157
- package/src/components/Surface.tsx +0 -191
- package/src/components/SwatchPicker.tsx +0 -147
- package/src/components/SwitchGlyph.tsx +0 -56
- package/src/components/TabPill.tsx +0 -188
- package/src/components/ThemeThumb.tsx +0 -52
- package/src/components/ToggleCard.tsx +0 -120
- package/src/components/Tooltip.tsx +0 -288
- package/src/components/ZoomableImage.tsx +0 -322
- package/src/components/button.ts +0 -120
- package/src/components/floating/FloatingSurface.tsx +0 -158
- package/src/components/floating/HoverCard.tsx +0 -143
- package/src/components/floating/Popover.tsx +0 -166
- package/src/components/floating/useAnchoredPosition.ts +0 -186
- package/src/components/floating/usePopover.ts +0 -158
- package/src/components/image-clipboard.ts +0 -70
- package/src/components/keyboard-layout.ts +0 -115
- package/src/components/palette/PaletteList.tsx +0 -432
- package/src/components/palette/PalettePanel.tsx +0 -338
- package/src/components/palette/palette-layout.ts +0 -86
- package/src/components/report-error.ts +0 -142
- package/src/components/zoom.ts +0 -133
- package/src/extensions/ExtensionComponent.tsx +0 -167
- package/src/extensions/ExtensionDialogHost.tsx +0 -445
- package/src/extensions/ExtensionRenderer.tsx +0 -100
- package/src/extensions/ExtensionScreen.tsx +0 -122
- package/src/extensions/ExtensionSettingsPage.tsx +0 -112
- package/src/extensions/ExtensionSettingsPages.tsx +0 -44
- package/src/extensions/ExtensionSettingsSidebar.tsx +0 -373
- package/src/extensions/ExtensionSlot.tsx +0 -213
- package/src/extensions/ExtensionWebview.tsx +0 -104
- package/src/extensions/ExtensionsProvider.tsx +0 -124
- package/src/extensions/SettingsWireForm.tsx +0 -182
- package/src/extensions/headless/dialog-queue.ts +0 -92
- package/src/extensions/headless/effect-channel.ts +0 -50
- package/src/extensions/headless/effect-router.ts +0 -107
- package/src/extensions/headless/fixture-host.ts +0 -381
- package/src/extensions/headless/host.ts +0 -398
- package/src/extensions/headless/index.ts +0 -17
- package/src/extensions/headless/labels.ts +0 -64
- package/src/extensions/headless/links.ts +0 -56
- package/src/extensions/headless/select.ts +0 -249
- package/src/extensions/headless/webview-bridge.ts +0 -127
- package/src/extensions/headless/wire.ts +0 -175
- package/src/extensions/hooks.ts +0 -209
- package/src/extensions/index.ts +0 -25
- package/src/extensions/kit.ts +0 -79
- package/src/extensions/links.tsx +0 -165
- package/src/extensions/testing/contract.ts +0 -382
- package/src/extensions/testing/index.ts +0 -6
- package/src/extensions/useExtensionsLabels.ts +0 -14
- package/src/files/CodeViewer.tsx +0 -289
- package/src/files/DiffFileViewer.tsx +0 -143
- package/src/files/DiffsTab.tsx +0 -581
- package/src/files/EditorColumn.tsx +0 -453
- package/src/files/EditorEnvironmentRoot.tsx +0 -63
- package/src/files/FilesDiagnosticsChip.tsx +0 -32
- package/src/files/FilesProvider.tsx +0 -58
- package/src/files/FilesTab.tsx +0 -441
- package/src/files/MediaDiff.tsx +0 -61
- package/src/files/MediaView.tsx +0 -170
- package/src/files/ReviewDraft.tsx +0 -88
- package/src/files/ReviewableDiff.tsx +0 -72
- package/src/files/SearchPanel.tsx +0 -325
- package/src/files/TreeColumn.tsx +0 -229
- package/src/files/code-excerpt.ts +0 -265
- package/src/files/code-menu.ts +0 -53
- package/src/files/drafts-store.ts +0 -192
- package/src/files/file-actions.ts +0 -152
- package/src/files/headless/editor-prefs.ts +0 -230
- package/src/files/headless/entries.ts +0 -172
- package/src/files/headless/fixture-host.ts +0 -260
- package/src/files/headless/host.ts +0 -387
- package/src/files/headless/index.ts +0 -14
- package/src/files/headless/labels.ts +0 -123
- package/src/files/headless/lsp-edits.ts +0 -58
- package/src/files/headless/media.ts +0 -57
- package/src/files/headless/name-match.ts +0 -38
- package/src/files/headless/search.ts +0 -23
- package/src/files/headless/view.ts +0 -114
- package/src/files/headless/workspace-diff.ts +0 -82
- package/src/files/index.ts +0 -25
- package/src/files/lazy-tabs.tsx +0 -41
- package/src/files/session-patch.ts +0 -45
- package/src/files/tab-hooks.ts +0 -37
- package/src/files/testing/contract.ts +0 -279
- package/src/files/testing/demo.ts +0 -36
- package/src/files/testing/index.ts +0 -7
- package/src/files/useCodeReview.tsx +0 -177
- package/src/files/useDiagnostics.ts +0 -59
- package/src/files/useDiagnosticsRun.ts +0 -86
- package/src/files/useEntryActions.ts +0 -280
- package/src/files/useFilesDiagnostics.ts +0 -51
- package/src/files/useFilesLabels.ts +0 -14
- package/src/files/useFolderChanges.ts +0 -38
- package/src/files/useLsp.ts +0 -181
- package/src/files/useOpenFiles.ts +0 -402
- package/src/files/useWorkspace.ts +0 -148
- package/src/files/working-tree-diff.ts +0 -142
- package/src/git/BranchMenu.tsx +0 -988
- package/src/git/GitBar.tsx +0 -297
- package/src/git/GitProvider.tsx +0 -50
- package/src/git/ImportRepoDialog.tsx +0 -390
- package/src/git/MoveSessionDialog.tsx +0 -396
- package/src/git/RemoteFolderPicker.tsx +0 -475
- package/src/git/SyncChip.tsx +0 -275
- package/src/git/WherePicker.tsx +0 -358
- package/src/git/headless/environment.ts +0 -132
- package/src/git/headless/host.ts +0 -353
- package/src/git/headless/index.ts +0 -14
- package/src/git/headless/labels.ts +0 -230
- package/src/git/headless/move.ts +0 -101
- package/src/git/headless/remote-clone.ts +0 -44
- package/src/git/headless/status-reads.ts +0 -77
- package/src/git/headless/switcher.ts +0 -215
- package/src/git/headless/sync.ts +0 -71
- package/src/git/index.ts +0 -17
- package/src/git/testing/contract.ts +0 -551
- package/src/git/testing/index.ts +0 -537
- package/src/git/useEnvironmentChoices.ts +0 -50
- package/src/git/useGitBar.ts +0 -180
- package/src/hooks/keyed-store.ts +0 -65
- package/src/hooks/useDisplayPath.tsx +0 -93
- package/src/hooks/useHydrated.ts +0 -16
- package/src/hooks/useMinuteTick.ts +0 -49
- package/src/hooks/useNearViewport.ts +0 -111
- package/src/hooks/usePersistedState.ts +0 -98
- package/src/hooks/useResizeDrag.ts +0 -240
- package/src/hooks/useTabDrag.ts +0 -88
- package/src/index.ts +0 -119
- package/src/keybindings/KeyCommands.tsx +0 -123
- package/src/keybindings/KeyHint.tsx +0 -78
- package/src/keybindings/KeybindingsProvider.tsx +0 -231
- package/src/keybindings/headless/catalog.ts +0 -360
- package/src/keybindings/headless/commands.ts +0 -77
- package/src/keybindings/headless/fixture-host.ts +0 -51
- package/src/keybindings/headless/host.ts +0 -29
- package/src/keybindings/headless/index.ts +0 -13
- package/src/keybindings/headless/key-scope.ts +0 -91
- package/src/keybindings/headless/labels.ts +0 -14
- package/src/keybindings/headless/overrides.ts +0 -64
- package/src/keybindings/index.ts +0 -15
- package/src/keybindings/load-once.ts +0 -11
- package/src/keybindings/match.ts +0 -48
- package/src/keybindings/press.ts +0 -80
- package/src/keybindings/testing/contract.ts +0 -139
- package/src/keybindings/testing/index.ts +0 -6
- package/src/keybindings/useHelpKey.ts +0 -35
- package/src/keybindings/useKeybindingsLabels.ts +0 -14
- package/src/labels.tsx +0 -175
- package/src/machines/AddServerForm.tsx +0 -151
- package/src/machines/Banners.tsx +0 -172
- package/src/machines/DaemonMenu.tsx +0 -413
- package/src/machines/HostCapabilities.tsx +0 -245
- package/src/machines/HostSignIn.tsx +0 -63
- package/src/machines/HostSyncPanel.tsx +0 -275
- package/src/machines/HostsSection.tsx +0 -312
- package/src/machines/MachinesProvider.tsx +0 -164
- package/src/machines/ServerCard.tsx +0 -347
- package/src/machines/ServerMachinesPanel.tsx +0 -547
- package/src/machines/ServerUpdatePanel.tsx +0 -160
- package/src/machines/SyncAccounts.tsx +0 -148
- package/src/machines/SyncMarker.tsx +0 -87
- package/src/machines/SyncOutcomeBadge.tsx +0 -84
- package/src/machines/TokensPanel.tsx +0 -249
- package/src/machines/headless/fixture-host.ts +0 -519
- package/src/machines/headless/fixtures.ts +0 -164
- package/src/machines/headless/host.ts +0 -381
- package/src/machines/headless/index.ts +0 -13
- package/src/machines/headless/labels.ts +0 -364
- package/src/machines/headless/messages.ts +0 -209
- package/src/machines/headless/presence.ts +0 -110
- package/src/machines/headless/settings-focus.ts +0 -25
- package/src/machines/headless/stores.ts +0 -137
- package/src/machines/headless/sync.ts +0 -207
- package/src/machines/index.ts +0 -29
- package/src/machines/settings-section.tsx +0 -37
- package/src/machines/testing/contract.ts +0 -617
- package/src/machines/testing/index.ts +0 -7
- package/src/machines/testing/sync.contract.ts +0 -260
- package/src/motion/SwapIcon.tsx +0 -29
- package/src/motion/collapse.ts +0 -21
- package/src/motion/grow.tsx +0 -86
- package/src/motion/layout-animating.ts +0 -50
- package/src/motion/presence.ts +0 -191
- package/src/motion/provider.tsx +0 -63
- package/src/motion/reduced.ts +0 -36
- package/src/motion/roll.tsx +0 -131
- package/src/motion/shimmer.ts +0 -15
- package/src/motion/size.tsx +0 -192
- package/src/motion/springs.ts +0 -413
- package/src/motion/swap.tsx +0 -216
- package/src/motion/title-text.tsx +0 -74
- package/src/onboarding/ConnectProviderCard.tsx +0 -49
- package/src/onboarding/OnboardingFlow.tsx +0 -176
- package/src/onboarding/OnboardingProvider.tsx +0 -209
- package/src/onboarding/OnboardingStepFrame.tsx +0 -80
- package/src/onboarding/conversation.tsx +0 -196
- package/src/onboarding/demos/autonomy.tsx +0 -154
- package/src/onboarding/demos/extensions.tsx +0 -183
- package/src/onboarding/demos/features.tsx +0 -488
- package/src/onboarding/demos/how-it-works.tsx +0 -698
- package/src/onboarding/demos/index.ts +0 -11
- package/src/onboarding/demos/parts.tsx +0 -133
- package/src/onboarding/demos/tour.tsx +0 -217
- package/src/onboarding/headless/controller.ts +0 -110
- package/src/onboarding/headless/fixture-host.ts +0 -269
- package/src/onboarding/headless/fixtures.ts +0 -486
- package/src/onboarding/headless/host.ts +0 -176
- package/src/onboarding/headless/index.ts +0 -8
- package/src/onboarding/headless/labels.ts +0 -282
- package/src/onboarding/index.ts +0 -21
- package/src/onboarding/marks.tsx +0 -107
- package/src/onboarding/preview-attachments.ts +0 -39
- package/src/onboarding/skills/SkillSourceBrowser.tsx +0 -128
- package/src/onboarding/skills/parts.tsx +0 -464
- package/src/onboarding/sources/SourceBrowser.tsx +0 -400
- package/src/onboarding/steps/AutonomyStep.tsx +0 -128
- package/src/onboarding/steps/ConnectStep.tsx +0 -104
- package/src/onboarding/steps/ConnectorsStep.tsx +0 -222
- package/src/onboarding/steps/ConversationStep.tsx +0 -132
- package/src/onboarding/steps/ExtensionsStep.tsx +0 -113
- package/src/onboarding/steps/FeatureExample.tsx +0 -46
- package/src/onboarding/steps/FeaturesStep.tsx +0 -88
- package/src/onboarding/steps/ImportStep.tsx +0 -156
- package/src/onboarding/steps/LookStep.tsx +0 -276
- package/src/onboarding/steps/ReadyStep.tsx +0 -278
- package/src/onboarding/steps/SkillsStep.tsx +0 -45
- package/src/onboarding/steps/StepSection.tsx +0 -63
- package/src/onboarding/steps/Tradeoff.tsx +0 -45
- package/src/onboarding/steps/WelcomeStep.tsx +0 -147
- package/src/onboarding/steps/connect/KeyForm.tsx +0 -112
- package/src/onboarding/steps/connect/ProviderPanel.tsx +0 -149
- package/src/onboarding/steps/connect/ProviderReady.tsx +0 -171
- package/src/onboarding/steps/connect/ready-text.ts +0 -17
- package/src/onboarding/steps/index.ts +0 -12
- package/src/onboarding/steps/tasks.tsx +0 -84
- package/src/onboarding/testing/contract.ts +0 -472
- package/src/onboarding/testing/index.ts +0 -7
- package/src/onboarding/tutorials.tsx +0 -45
- package/src/onboarding/useSignIn.ts +0 -58
- package/src/palette/CommandPalette.tsx +0 -59
- package/src/palette/PaletteDialog.tsx +0 -186
- package/src/palette/PaletteProvider.tsx +0 -149
- package/src/palette/PaletteRows.tsx +0 -208
- package/src/palette/app-sources.ts +0 -62
- package/src/palette/headless/app-sources.ts +0 -515
- package/src/palette/headless/gather.ts +0 -50
- package/src/palette/headless/host.ts +0 -129
- package/src/palette/headless/index.ts +0 -15
- package/src/palette/headless/labels.ts +0 -124
- package/src/palette/headless/rank-protocol.ts +0 -23
- package/src/palette/headless/recents.ts +0 -35
- package/src/palette/headless/session-sources.ts +0 -218
- package/src/palette/headless/sources.ts +0 -313
- package/src/palette/headless/store.ts +0 -105
- package/src/palette/index.ts +0 -17
- package/src/palette/rank.worker.ts +0 -30
- package/src/palette/setup.ts +0 -19
- package/src/palette/testing/contract.ts +0 -250
- package/src/palette/testing/index.ts +0 -152
- package/src/palette/useConversationSearch.ts +0 -115
- package/src/palette/usePaletteController.ts +0 -229
- package/src/palette/useRankedItems.ts +0 -122
- package/src/path.ts +0 -199
- package/src/server/demo-tools.ts +0 -34
- package/src/server/environment.ts +0 -118
- package/src/server/index.ts +0 -7
- package/src/server/scripted-provider.ts +0 -174
- package/src/server/sse-handler.ts +0 -457
- package/src/server/testing/index.ts +0 -7
- package/src/session/ArtifactRowChips.tsx +0 -260
- package/src/session/ArtifactsPanel.tsx +0 -426
- package/src/session/DiffFileTree.tsx +0 -173
- package/src/session/PanelAttention.tsx +0 -131
- package/src/session/ProjectHome.tsx +0 -733
- package/src/session/ProviderUsageProvider.tsx +0 -113
- package/src/session/QueueTab.tsx +0 -669
- package/src/session/RunningWorkDialog.tsx +0 -178
- package/src/session/SessionCacheFacts.tsx +0 -190
- package/src/session/SessionDetailsDialog.tsx +0 -627
- package/src/session/SessionHeader.tsx +0 -242
- package/src/session/SessionProvider.tsx +0 -98
- package/src/session/SessionShell.tsx +0 -77
- package/src/session/SideChat.tsx +0 -320
- package/src/session/TodoList.tsx +0 -123
- package/src/session/TodosPanel.tsx +0 -279
- package/src/session/TurnDetailsDialog.tsx +0 -299
- package/src/session/UsagePanel.tsx +0 -358
- package/src/session/WelcomeScreen.tsx +0 -88
- package/src/session/headless/artifacts.ts +0 -101
- package/src/session/headless/diff-tree.ts +0 -167
- package/src/session/headless/fixture-host.ts +0 -362
- package/src/session/headless/home-layout.ts +0 -276
- package/src/session/headless/host.ts +0 -263
- package/src/session/headless/index.ts +0 -23
- package/src/session/headless/keyed.ts +0 -72
- package/src/session/headless/labels.ts +0 -337
- package/src/session/headless/queue-attachments.ts +0 -73
- package/src/session/headless/queue.ts +0 -122
- package/src/session/headless/running-work.ts +0 -85
- package/src/session/headless/session-actions.ts +0 -198
- package/src/session/headless/session-diffs.ts +0 -136
- package/src/session/headless/side.ts +0 -63
- package/src/session/headless/todos.ts +0 -62
- package/src/session/headless/usage-format.ts +0 -19
- package/src/session/headless/usage.ts +0 -407
- package/src/session/index.ts +0 -31
- package/src/session/modal-shell.tsx +0 -24
- package/src/session/testing/contract.ts +0 -588
- package/src/session/testing/demo.ts +0 -224
- package/src/session/testing/index.ts +0 -7
- package/src/session/useSessionLabels.ts +0 -14
- package/src/session/useUsageSummary.ts +0 -82
- package/src/settings/SettingsHeadingText.tsx +0 -54
- package/src/settings/SettingsHostSwitcher.tsx +0 -93
- package/src/settings/SettingsNav.tsx +0 -198
- package/src/settings/SettingsProvider.tsx +0 -127
- package/src/settings/SettingsRowsPage.tsx +0 -218
- package/src/settings/SettingsShell.tsx +0 -337
- package/src/settings/SettingsTutorial.tsx +0 -55
- package/src/settings/headless/catalog.ts +0 -570
- package/src/settings/headless/claude-import.ts +0 -61
- package/src/settings/headless/enabled.ts +0 -44
- package/src/settings/headless/fixture-accounts.ts +0 -260
- package/src/settings/headless/fixture-host.ts +0 -162
- package/src/settings/headless/fixture-models.ts +0 -51
- package/src/settings/headless/fixture-performance.ts +0 -350
- package/src/settings/headless/fixture-sections.ts +0 -391
- package/src/settings/headless/host.ts +0 -127
- package/src/settings/headless/index.ts +0 -22
- package/src/settings/headless/labels.ts +0 -63
- package/src/settings/headless/layout-sections.ts +0 -41
- package/src/settings/headless/layout.ts +0 -732
- package/src/settings/headless/mcp.ts +0 -319
- package/src/settings/headless/models.ts +0 -51
- package/src/settings/headless/page-counts.ts +0 -40
- package/src/settings/headless/performance.ts +0 -524
- package/src/settings/headless/providers.ts +0 -117
- package/src/settings/headless/registry.ts +0 -62
- package/src/settings/headless/resource.ts +0 -75
- package/src/settings/headless/search.ts +0 -142
- package/src/settings/headless/sections-host.ts +0 -340
- package/src/settings/index.ts +0 -32
- package/src/settings/rows.tsx +0 -152
- package/src/settings/section.tsx +0 -165
- package/src/settings/sections/appearance/AppearanceSection.tsx +0 -667
- package/src/settings/sections/appearance/labels.ts +0 -77
- package/src/settings/sections/claude-import/ClaudeImportDialog.tsx +0 -258
- package/src/settings/sections/claude-import/labels.ts +0 -42
- package/src/settings/sections/claude-import/use-claude-import-available.ts +0 -35
- package/src/settings/sections/descriptors.tsx +0 -261
- package/src/settings/sections/editor/EditorSection.tsx +0 -521
- package/src/settings/sections/editor/labels.ts +0 -84
- package/src/settings/sections/enabled-list/EnabledListSection.tsx +0 -112
- package/src/settings/sections/enabled-list/labels.ts +0 -37
- package/src/settings/sections/environments/EnvironmentsSection.tsx +0 -549
- package/src/settings/sections/environments/labels.ts +0 -31
- package/src/settings/sections/extensions/ChangeOriginDialog.tsx +0 -218
- package/src/settings/sections/extensions/CreateExtensionDialog.tsx +0 -210
- package/src/settings/sections/extensions/ExtensionConfigRows.tsx +0 -508
- package/src/settings/sections/extensions/ExtensionOptionsSection.tsx +0 -356
- package/src/settings/sections/extensions/ExtensionPicksBar.tsx +0 -112
- package/src/settings/sections/extensions/ExtensionSourceBrowser.tsx +0 -244
- package/src/settings/sections/extensions/ExtensionsSection.tsx +0 -665
- package/src/settings/sections/extensions/create-labels.ts +0 -31
- package/src/settings/sections/extensions/labels.ts +0 -64
- package/src/settings/sections/extensions/options-labels.ts +0 -34
- package/src/settings/sections/host-catalog/HostCatalogSection.tsx +0 -457
- package/src/settings/sections/host-catalog/labels.ts +0 -44
- package/src/settings/sections/index.ts +0 -60
- package/src/settings/sections/instructions/InstructionsSection.tsx +0 -385
- package/src/settings/sections/instructions/labels.ts +0 -33
- package/src/settings/sections/keybindings/KeybindingsSection.tsx +0 -124
- package/src/settings/sections/keybindings/labels.ts +0 -72
- package/src/settings/sections/keybindings/rows.ts +0 -103
- package/src/settings/sections/logs/LogsSection.tsx +0 -153
- package/src/settings/sections/logs/labels.ts +0 -20
- package/src/settings/sections/mcp/McpAddForm.tsx +0 -245
- package/src/settings/sections/mcp/McpSection.tsx +0 -358
- package/src/settings/sections/mcp/McpServerRow.tsx +0 -404
- package/src/settings/sections/mcp/labels.ts +0 -193
- package/src/settings/sections/models/AgentDefaults.tsx +0 -365
- package/src/settings/sections/models/ModelListPicker.tsx +0 -265
- package/src/settings/sections/models/ModelPickField.tsx +0 -220
- package/src/settings/sections/models/ModelRows.tsx +0 -381
- package/src/settings/sections/models/SpacesDefaultsSection.tsx +0 -102
- package/src/settings/sections/models/labels.ts +0 -119
- package/src/settings/sections/models/model-test.tsx +0 -125
- package/src/settings/sections/performance/PerfSparkline.tsx +0 -64
- package/src/settings/sections/performance/PerformanceHud.tsx +0 -110
- package/src/settings/sections/performance/PerformanceSection.tsx +0 -770
- package/src/settings/sections/performance/labels.ts +0 -114
- package/src/settings/sections/performance/use-perf-monitor.ts +0 -26
- package/src/settings/sections/plugins/PluginsSection.tsx +0 -151
- package/src/settings/sections/plugins/labels.ts +0 -23
- package/src/settings/sections/providers/CredentialSources.tsx +0 -237
- package/src/settings/sections/providers/ProvidersSection.tsx +0 -389
- package/src/settings/sections/providers/ServerProvidersSection.tsx +0 -244
- package/src/settings/sections/providers/ServerSignIn.tsx +0 -137
- package/src/settings/sections/providers/labels.ts +0 -160
- package/src/settings/sections/shared/catalog.tsx +0 -265
- package/src/settings/sections/shared/labels.ts +0 -31
- package/src/settings/sections/skills/SkillList.tsx +0 -494
- package/src/settings/sections/skills/SkillsSection.tsx +0 -249
- package/src/settings/sections/skills/labels.ts +0 -54
- package/src/settings/sections/use-section-labels.ts +0 -10
- package/src/settings/testing/accounts-demo.ts +0 -110
- package/src/settings/testing/accounts.contract.ts +0 -319
- package/src/settings/testing/claude-import.contract.ts +0 -93
- package/src/settings/testing/contract.ts +0 -192
- package/src/settings/testing/extension-options.contract.ts +0 -163
- package/src/settings/testing/index.ts +0 -11
- package/src/settings/testing/models.contract.ts +0 -135
- package/src/settings/testing/performance.contract.ts +0 -219
- package/src/settings/testing/sections.contract.ts +0 -306
- package/src/terminal/HostTerminalSurface.tsx +0 -917
- package/src/terminal/TerminalDrawer.tsx +0 -228
- package/src/terminal/TerminalPanel.tsx +0 -740
- package/src/terminal/TerminalProvider.tsx +0 -201
- package/src/terminal/TerminalSurface.tsx +0 -262
- package/src/terminal/box-glyphs.ts +0 -333
- package/src/terminal/ghostty.ts +0 -116
- package/src/terminal/grid-size.ts +0 -46
- package/src/terminal/headless/fixture-host.ts +0 -250
- package/src/terminal/headless/host.ts +0 -99
- package/src/terminal/headless/index.ts +0 -11
- package/src/terminal/headless/labels.ts +0 -69
- package/src/terminal/headless/layout.ts +0 -57
- package/src/terminal/headless/links.ts +0 -227
- package/src/terminal/headless/order.ts +0 -28
- package/src/terminal/headless/output-cursor.ts +0 -66
- package/src/terminal/headless/recent.ts +0 -20
- package/src/terminal/headless/replay.ts +0 -45
- package/src/terminal/headless/scope.ts +0 -60
- package/src/terminal/headless/store.ts +0 -637
- package/src/terminal/index.ts +0 -40
- package/src/terminal/keys.ts +0 -34
- package/src/terminal/testing/contract.ts +0 -274
- package/src/terminal/testing/demo.ts +0 -40
- package/src/terminal/testing/index.ts +0 -7
- package/src/terminal/theme.ts +0 -110
- package/src/terminal/useTerminalLabels.ts +0 -14
- package/src/theme/accents.ts +0 -46
- package/src/theme/color.ts +0 -450
- package/src/theme/css-vars.ts +0 -187
- package/src/theme/derive.ts +0 -700
- package/src/theme/from-theme.ts +0 -52
- package/src/theme/stylesheet.ts +0 -55
- package/src/theme/themes.ts +0 -767
- package/src/theme/without-transitions.ts +0 -18
- package/src/uno.ts +0 -167
- package/src/workspace/LayoutBudget.tsx +0 -143
- package/src/workspace/PanelContentView.tsx +0 -523
- package/src/workspace/PanelCorner.tsx +0 -111
- package/src/workspace/PanelGroups.tsx +0 -264
- package/src/workspace/PanelHome.tsx +0 -71
- package/src/workspace/PanelItems.tsx +0 -368
- package/src/workspace/PanelStrip.tsx +0 -316
- package/src/workspace/SidePanel.tsx +0 -240
- package/src/workspace/TabParking.tsx +0 -120
- package/src/workspace/WorkspaceProvider.tsx +0 -558
- package/src/workspace/dnd/engine.ts +0 -371
- package/src/workspace/dnd/hooks.ts +0 -72
- package/src/workspace/dnd/index.ts +0 -57
- package/src/workspace/dnd/parking.tsx +0 -181
- package/src/workspace/extension-tabs.tsx +0 -174
- package/src/workspace/frame-motion.ts +0 -160
- package/src/workspace/headless/contents.ts +0 -125
- package/src/workspace/headless/host.ts +0 -129
- package/src/workspace/headless/index.ts +0 -33
- package/src/workspace/headless/labels.ts +0 -44
- package/src/workspace/headless/layout-memory.ts +0 -649
- package/src/workspace/headless/layouts.ts +0 -224
- package/src/workspace/headless/open-target.ts +0 -125
- package/src/workspace/headless/ops.ts +0 -163
- package/src/workspace/headless/panel-focus.ts +0 -58
- package/src/workspace/headless/panel-tree.ts +0 -259
- package/src/workspace/headless/resolve.ts +0 -146
- package/src/workspace/headless/reveal-at.ts +0 -27
- package/src/workspace/headless/strip-drop.ts +0 -81
- package/src/workspace/headless/tree.ts +0 -480
- package/src/workspace/headless/view.ts +0 -164
- package/src/workspace/index.ts +0 -23
- package/src/workspace/panel-group-keys.ts +0 -36
- package/src/workspace/panel-visibility.ts +0 -28
- package/src/workspace/tab-scopes.ts +0 -245
- package/src/workspace/testing/contract.ts +0 -282
- package/src/workspace/testing/index.ts +0 -140
- package/src/workspace/use-split-drag.ts +0 -73
- package/src/workspace/useScopeLayout.ts +0 -26
- package/src/workspace/useViewport.ts +0 -22
- package/src/workspace/useWorkspaceLabels.ts +0 -14
- package/src/workspace/workspace-key-commands.ts +0 -108
- /package/dist/dist/{types-bDQagoiL.d.ts → types-2HrgolQz.d.ts} +0 -0
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The Appearance settings section's strings. One flat dictionary an app
|
|
3
|
-
* overrides with `<LabelsProvider>`; keys you leave out keep the default
|
|
4
|
-
* English label.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
/** The default English strings of the Appearance section. */
|
|
8
|
-
export const DEFAULT_APPEARANCE_SECTION_LABELS = {
|
|
9
|
-
appearanceSectionTitle: 'Appearance',
|
|
10
|
-
appearanceSectionMode: 'Mode',
|
|
11
|
-
appearanceSectionModeSystem: 'System',
|
|
12
|
-
appearanceSectionModeLight: 'Light',
|
|
13
|
-
appearanceSectionModeDark: 'Dark',
|
|
14
|
-
appearanceSectionModeCaption: 'System follows macOS.',
|
|
15
|
-
appearanceSectionDarkTheme: 'Dark theme',
|
|
16
|
-
appearanceSectionLightTheme: 'Light theme',
|
|
17
|
-
appearanceSectionNoThemes: 'No themes of this kind installed.',
|
|
18
|
-
appearanceSectionActive: 'active',
|
|
19
|
-
appearanceSectionCodeTheme: 'Code theme',
|
|
20
|
-
appearanceSectionCodeDark: 'Dark',
|
|
21
|
-
appearanceSectionCodeLight: 'Light',
|
|
22
|
-
appearanceSectionCodeAuto: 'Auto (matches theme)',
|
|
23
|
-
appearanceSectionCodeThemeOf: (slot: string) => `${slot} code theme`,
|
|
24
|
-
appearanceSectionAccent: 'Accent',
|
|
25
|
-
appearanceSectionAccentTheme: 'Theme',
|
|
26
|
-
appearanceSectionAccentCaption: 'Overrides the theme accent. First swatch restores it.',
|
|
27
|
-
appearanceSectionAccentCustom: 'Custom color',
|
|
28
|
-
appearanceSectionAccentCustomAria: 'Custom accent color',
|
|
29
|
-
appearanceSectionAppIcon: 'App icon',
|
|
30
|
-
appearanceSectionContrast: 'Contrast',
|
|
31
|
-
appearanceSectionTextContrast: 'Text contrast',
|
|
32
|
-
appearanceSectionTextContrastDescription: 'Lower softens, higher sharpens.',
|
|
33
|
-
appearanceSectionFonts: 'Fonts',
|
|
34
|
-
appearanceSectionFontInterface: 'Interface',
|
|
35
|
-
appearanceSectionFontInterfaceDescription: 'Sidebar and controls.',
|
|
36
|
-
appearanceSectionFontInterfaceDefault: 'System',
|
|
37
|
-
appearanceSectionFontChat: 'Chat',
|
|
38
|
-
appearanceSectionFontChatDescription: 'Messages.',
|
|
39
|
-
appearanceSectionFontChatDefault: 'Same as interface',
|
|
40
|
-
appearanceSectionFontPrompt: 'Prompt',
|
|
41
|
-
appearanceSectionFontPromptDescription: 'Composer.',
|
|
42
|
-
appearanceSectionFontPromptDefault: 'Same as chat',
|
|
43
|
-
appearanceSectionFontCode: 'Code',
|
|
44
|
-
appearanceSectionFontCodeDescription: 'Code, diffs, paths.',
|
|
45
|
-
appearanceSectionFontCodeDefault: 'System monospace',
|
|
46
|
-
appearanceSectionFontOf: (label: string) => `${label} font`,
|
|
47
|
-
appearanceSectionFontSample: 'Aa Zz 0123 {}',
|
|
48
|
-
appearanceSectionFontsInstalled: (count: number) => `${count} installed fonts`,
|
|
49
|
-
appearanceSectionFontsUnavailable: 'Common fonts only. The full list is unavailable.',
|
|
50
|
-
appearanceSectionFontsCurated: 'Showing common installed fonts',
|
|
51
|
-
appearanceSectionFontsShowAll: 'Show all',
|
|
52
|
-
appearanceSectionSizes: 'Sizes',
|
|
53
|
-
appearanceSectionSizeChat: 'Chat text',
|
|
54
|
-
appearanceSectionSizePrompt: 'Prompt text',
|
|
55
|
-
appearanceSectionSizeCode: 'Code',
|
|
56
|
-
appearanceSectionInterfaceSize: 'Interface size',
|
|
57
|
-
appearanceSectionInterfaceSizeDescription: '⌘= / ⌘− / ⌘0',
|
|
58
|
-
appearanceSectionMotion: 'Motion',
|
|
59
|
-
appearanceSectionMotionSystem: 'System',
|
|
60
|
-
appearanceSectionMotionFull: 'Full',
|
|
61
|
-
appearanceSectionMotionReduced: 'Reduced',
|
|
62
|
-
appearanceSectionMotionOff: 'Off',
|
|
63
|
-
appearanceSectionMotionCaption: 'Reduced keeps fades, drops movement. Off is instant.',
|
|
64
|
-
appearanceSectionSprings: 'Spring animations',
|
|
65
|
-
appearanceSectionSpringsOn: 'Panels, menus and indicators settle with a slight bounce.',
|
|
66
|
-
appearanceSectionSpringsOff: 'Turn Motion to Full to use springs.',
|
|
67
|
-
appearanceSectionSpringsNeedsFull: 'Needs Full motion',
|
|
68
|
-
appearanceSectionPanelAnimation: 'Panel animation',
|
|
69
|
-
appearanceSectionPanelAnimationSprings: 'How long the sidebar and side panels take to settle.',
|
|
70
|
-
appearanceSectionPanelAnimationPlain: 'Sidebar and side panels.',
|
|
71
|
-
appearanceSectionReset: 'Reset',
|
|
72
|
-
appearanceSectionResetLabel: 'Reset appearance',
|
|
73
|
-
appearanceSectionResetDescription: 'Restore every default above.',
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
/** The shape of the Appearance section's label dictionary. */
|
|
77
|
-
export type AppearanceSectionLabels = typeof DEFAULT_APPEARANCE_SECTION_LABELS;
|
|
@@ -1,258 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Import from Claude Code (`SettingsHost.claudeImport`), the counterpart of
|
|
3
|
-
* the TUI's import modal, opened from Settings › General. Two phases:
|
|
4
|
-
*
|
|
5
|
-
* 1. Pick: which pieces to import (conversations, MCP servers, skills,
|
|
6
|
-
* commands and subagents) and the conversations' scope (this project
|
|
7
|
-
* or every Claude project), then run.
|
|
8
|
-
* 2. Done: what was imported, skipped or failed, and the notes on what is
|
|
9
|
-
* deliberately not imported.
|
|
10
|
-
*
|
|
11
|
-
* Everything goes to zidane's own places; `~/.claude` is never touched. A
|
|
12
|
-
* rerun skips what a previous run brought over.
|
|
13
|
-
*/
|
|
14
|
-
import { useCallback, useEffect, useRef, useState, type CSSProperties, type ReactNode } from 'react';
|
|
15
|
-
|
|
16
|
-
import { ModalShell } from '../../../app/ModalProvider';
|
|
17
|
-
import { ErrorNote, MetaChip, ROW_BUTTON_CLASS, RowText, Switch } from '../../../components/Form';
|
|
18
|
-
import { EmptyState, SectionLabel, Tray } from '../../../components/Surface';
|
|
19
|
-
import { BTN_LG_SECONDARY, BTN_LG_SOLID } from '../../../components/button';
|
|
20
|
-
import type {
|
|
21
|
-
SettingsClaudeImportCopy,
|
|
22
|
-
SettingsClaudeImportDetect,
|
|
23
|
-
SettingsClaudeImportSelection,
|
|
24
|
-
SettingsClaudeImportSummary,
|
|
25
|
-
} from '../../headless/claude-import';
|
|
26
|
-
import { toSettingsError } from '../../headless/host';
|
|
27
|
-
import { useSettingsHost } from '../../SettingsProvider';
|
|
28
|
-
import { useSectionLabels } from '../use-section-labels';
|
|
29
|
-
import { DEFAULT_CLAUDE_IMPORT_LABELS, type ClaudeImportLabels } from './labels';
|
|
30
|
-
|
|
31
|
-
/** The Claude Code import dialog's strings, overridable through `LabelsProvider`. */
|
|
32
|
-
export function useClaudeImportLabels(): ClaudeImportLabels {
|
|
33
|
-
return useSectionLabels(DEFAULT_CLAUDE_IMPORT_LABELS);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
/** Props for {@link ClaudeImportDialog}. */
|
|
37
|
-
export interface ClaudeImportDialogProps {
|
|
38
|
-
/** The folder whose conversations "this project" counts (`null`: none). */
|
|
39
|
-
cwd: string | null;
|
|
40
|
-
/** Dismisses the dialog. */
|
|
41
|
-
onClose: () => void;
|
|
42
|
-
/** Back to the settings page that opened it. Absent: no back button; Done closes. */
|
|
43
|
-
onBack?: () => void;
|
|
44
|
-
/** After an import ran (the app reads its session list again). */
|
|
45
|
-
onImported?: () => void | Promise<void>;
|
|
46
|
-
/** The active chat runs on this server: the import still targets this computer, and says so. */
|
|
47
|
-
activeServerName?: string;
|
|
48
|
-
/** Extra classes on the dialog's panel. */
|
|
49
|
-
className?: string;
|
|
50
|
-
/** Inline styles on the dialog's panel. */
|
|
51
|
-
style?: CSSProperties;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
const NOTHING: SettingsClaudeImportDetect = { available: false, counts: { project: 0, all: 0 } };
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* The Claude Code import dialog. Renders nothing when the host can't import.
|
|
58
|
-
*
|
|
59
|
-
* @param props - Component props.
|
|
60
|
-
*/
|
|
61
|
-
export function ClaudeImportDialog({
|
|
62
|
-
cwd,
|
|
63
|
-
onClose,
|
|
64
|
-
onBack,
|
|
65
|
-
onImported,
|
|
66
|
-
activeServerName,
|
|
67
|
-
className,
|
|
68
|
-
style,
|
|
69
|
-
}: ClaudeImportDialogProps) {
|
|
70
|
-
const l = useClaudeImportLabels();
|
|
71
|
-
const host = useSettingsHost().claudeImport;
|
|
72
|
-
const [detect, setDetect] = useState<SettingsClaudeImportDetect | null>(null);
|
|
73
|
-
const [options, setOptions] = useState<SettingsClaudeImportSelection>({
|
|
74
|
-
sessions: true,
|
|
75
|
-
allProjects: false,
|
|
76
|
-
mcps: true,
|
|
77
|
-
skills: true,
|
|
78
|
-
commands: true,
|
|
79
|
-
});
|
|
80
|
-
const [phase, setPhase] = useState<'pick' | 'running' | 'done'>('pick');
|
|
81
|
-
const [summary, setSummary] = useState<SettingsClaudeImportSummary | null>(null);
|
|
82
|
-
const [error, setError] = useState<string | null>(null);
|
|
83
|
-
// A second click can land before the re-render; two imports at once would race the copies.
|
|
84
|
-
const runningRef = useRef(false);
|
|
85
|
-
|
|
86
|
-
useEffect(() => {
|
|
87
|
-
if (!host) return undefined;
|
|
88
|
-
let cancelled = false;
|
|
89
|
-
host.detect(cwd ?? '').then(
|
|
90
|
-
(result) => {
|
|
91
|
-
if (!cancelled) setDetect(result);
|
|
92
|
-
},
|
|
93
|
-
(err: unknown) => {
|
|
94
|
-
if (cancelled) return;
|
|
95
|
-
const failure = toSettingsError(err);
|
|
96
|
-
setError(failure.detail ?? failure.kind);
|
|
97
|
-
setDetect(NOTHING);
|
|
98
|
-
},
|
|
99
|
-
);
|
|
100
|
-
return () => {
|
|
101
|
-
cancelled = true;
|
|
102
|
-
};
|
|
103
|
-
}, [host, cwd]);
|
|
104
|
-
|
|
105
|
-
const runImport = useCallback(async () => {
|
|
106
|
-
if (!host || runningRef.current) return;
|
|
107
|
-
runningRef.current = true;
|
|
108
|
-
setPhase('running');
|
|
109
|
-
let result: SettingsClaudeImportSummary | undefined;
|
|
110
|
-
try {
|
|
111
|
-
result = await host.run(cwd ?? '', options);
|
|
112
|
-
setSummary(result);
|
|
113
|
-
} catch (err) {
|
|
114
|
-
const failure = toSettingsError(err);
|
|
115
|
-
setError(failure.detail ?? failure.kind);
|
|
116
|
-
} finally {
|
|
117
|
-
setPhase('done');
|
|
118
|
-
runningRef.current = false;
|
|
119
|
-
}
|
|
120
|
-
// Outside the try: a failed refresh must not read as a failed import.
|
|
121
|
-
if (result) {
|
|
122
|
-
try {
|
|
123
|
-
await onImported?.();
|
|
124
|
-
} catch {
|
|
125
|
-
// The app reports its own refresh failures.
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}, [host, cwd, options, onImported]);
|
|
129
|
-
|
|
130
|
-
if (!host) return null;
|
|
131
|
-
|
|
132
|
-
const counts = detect?.counts ?? NOTHING.counts;
|
|
133
|
-
const found = options.allProjects ? counts.all : counts.project;
|
|
134
|
-
const pickRows: { key: keyof SettingsClaudeImportSelection; label: string; detail: string }[] = [
|
|
135
|
-
{ key: 'sessions', label: l.claudeImportConversations, detail: l.claudeImportTranscripts(found) },
|
|
136
|
-
{
|
|
137
|
-
key: 'allProjects',
|
|
138
|
-
label: l.claudeImportAllProjects,
|
|
139
|
-
detail: l.claudeImportProjectCounts(counts.project, counts.all),
|
|
140
|
-
},
|
|
141
|
-
{ key: 'mcps', label: l.claudeImportMcps, detail: l.claudeImportMcpsDetail },
|
|
142
|
-
{ key: 'skills', label: l.claudeImportSkills, detail: l.claudeImportSkillsDetail },
|
|
143
|
-
{ key: 'commands', label: l.claudeImportCommands, detail: l.claudeImportCommandsDetail },
|
|
144
|
-
];
|
|
145
|
-
|
|
146
|
-
return (
|
|
147
|
-
<ModalShell
|
|
148
|
-
title={l.claudeImportTitle}
|
|
149
|
-
description={l.claudeImportDescription}
|
|
150
|
-
onClose={onClose}
|
|
151
|
-
onBack={onBack}
|
|
152
|
-
size="large"
|
|
153
|
-
className={className}
|
|
154
|
-
style={style}
|
|
155
|
-
footer={
|
|
156
|
-
(detect?.available && phase === 'pick') || phase === 'done' ? (
|
|
157
|
-
<div className="flex items-center justify-end gap-2">
|
|
158
|
-
{phase === 'pick' ? (
|
|
159
|
-
<button
|
|
160
|
-
type="button"
|
|
161
|
-
onClick={() => void runImport()}
|
|
162
|
-
disabled={!options.sessions && !options.mcps && !options.skills && !options.commands}
|
|
163
|
-
className={BTN_LG_SOLID}
|
|
164
|
-
>
|
|
165
|
-
{l.claudeImportRun}
|
|
166
|
-
</button>
|
|
167
|
-
) : (
|
|
168
|
-
<button type="button" onClick={onBack ?? onClose} className={BTN_LG_SECONDARY}>
|
|
169
|
-
{l.claudeImportDone}
|
|
170
|
-
</button>
|
|
171
|
-
)}
|
|
172
|
-
</div>
|
|
173
|
-
) : undefined
|
|
174
|
-
}
|
|
175
|
-
>
|
|
176
|
-
<>
|
|
177
|
-
{detect === null && <div className="text-sm text-[var(--zg-text-muted)]">{l.claudeImportLooking}</div>}
|
|
178
|
-
|
|
179
|
-
{detect !== null && !detect.available && (
|
|
180
|
-
<EmptyState icon="i-ph-folder-dashed-duotone" title={l.claudeImportNone} />
|
|
181
|
-
)}
|
|
182
|
-
|
|
183
|
-
{activeServerName && (
|
|
184
|
-
<p className="m-0 mb-3 text-xs text-[var(--zg-text-muted)] zg-pretty" data-testid="claude-import-host-note">
|
|
185
|
-
{l.claudeImportHostNote(activeServerName)}
|
|
186
|
-
</p>
|
|
187
|
-
)}
|
|
188
|
-
|
|
189
|
-
{detect?.available && phase === 'pick' && (
|
|
190
|
-
<Tray radius="lg" className="p-1 flex flex-col">
|
|
191
|
-
{pickRows.map((row) => (
|
|
192
|
-
<button
|
|
193
|
-
key={row.key}
|
|
194
|
-
type="button"
|
|
195
|
-
aria-pressed={options[row.key]}
|
|
196
|
-
onClick={() => setOptions((prev) => ({ ...prev, [row.key]: !prev[row.key] }))}
|
|
197
|
-
className={ROW_BUTTON_CLASS}
|
|
198
|
-
>
|
|
199
|
-
<RowText label={row.label} description={row.detail} />
|
|
200
|
-
<Switch on={options[row.key]} />
|
|
201
|
-
</button>
|
|
202
|
-
))}
|
|
203
|
-
</Tray>
|
|
204
|
-
)}
|
|
205
|
-
|
|
206
|
-
{phase === 'running' && <div className="text-sm text-[var(--zg-text-muted)]">{l.claudeImportImporting}</div>}
|
|
207
|
-
|
|
208
|
-
{phase === 'done' && (
|
|
209
|
-
<div className="space-y-3 text-sm">
|
|
210
|
-
{error && <ErrorNote>{l.claudeImportFailed(error)}</ErrorNote>}
|
|
211
|
-
{summary?.sessions && (
|
|
212
|
-
<SummaryBlock title={l.claudeImportConversations}>
|
|
213
|
-
<MetaChip tone="text">{l.claudeImportImported(summary.sessions.imported)}</MetaChip>
|
|
214
|
-
<MetaChip>{l.claudeImportAlready(summary.sessions.skipped)}</MetaChip>
|
|
215
|
-
<MetaChip>{l.claudeImportEmpty(summary.sessions.empty)}</MetaChip>
|
|
216
|
-
<Failed count={summary.sessions.failed.length} l={l} />
|
|
217
|
-
</SummaryBlock>
|
|
218
|
-
)}
|
|
219
|
-
{summary?.mcps && <CopySummary title={l.claudeImportMcps} result={summary.mcps} l={l} />}
|
|
220
|
-
{summary?.skills && <CopySummary title={l.claudeImportSkills} result={summary.skills} l={l} />}
|
|
221
|
-
{summary?.commands && <CopySummary title={l.claudeImportCommandsTitle} result={summary.commands} l={l} />}
|
|
222
|
-
{summary?.agents && <CopySummary title={l.claudeImportAgentsTitle} result={summary.agents} l={l} />}
|
|
223
|
-
{summary && summary.notes.length > 0 && (
|
|
224
|
-
<ul className="m-0 pl-4 list-disc text-xs text-[var(--zg-text-muted)] space-y-1">
|
|
225
|
-
{summary.notes.map((note) => (
|
|
226
|
-
<li key={note}>{note}</li>
|
|
227
|
-
))}
|
|
228
|
-
</ul>
|
|
229
|
-
)}
|
|
230
|
-
</div>
|
|
231
|
-
)}
|
|
232
|
-
</>
|
|
233
|
-
</ModalShell>
|
|
234
|
-
);
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
function SummaryBlock({ title, children }: { title: string; children: ReactNode }) {
|
|
238
|
-
return (
|
|
239
|
-
<Tray radius="md" className="px-3 py-2.5">
|
|
240
|
-
<SectionLabel className="mb-1">{title}</SectionLabel>
|
|
241
|
-
<div className="flex flex-wrap gap-1 tabular-nums">{children}</div>
|
|
242
|
-
</Tray>
|
|
243
|
-
);
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
function CopySummary({ title, result, l }: { title: string; result: SettingsClaudeImportCopy; l: ClaudeImportLabels }) {
|
|
247
|
-
return (
|
|
248
|
-
<SummaryBlock title={title}>
|
|
249
|
-
<MetaChip tone="text">{l.claudeImportCopied(result.copied.length)}</MetaChip>
|
|
250
|
-
<MetaChip title={l.claudeImportSkippedTitle}>{l.claudeImportSkipped(result.skipped.length)}</MetaChip>
|
|
251
|
-
<Failed count={result.failed.length} l={l} />
|
|
252
|
-
</SummaryBlock>
|
|
253
|
-
);
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
function Failed({ count, l }: { count: number; l: ClaudeImportLabels }) {
|
|
257
|
-
return count > 0 ? <MetaChip tone="danger">{l.claudeImportFailedCount(count)}</MetaChip> : null;
|
|
258
|
-
}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The Claude Code import dialog's strings. Overridable through `LabelsProvider`.
|
|
3
|
-
*/
|
|
4
|
-
const plural = (n: number, one: string, many: string) => `${n} ${n === 1 ? one : many}`;
|
|
5
|
-
|
|
6
|
-
/** The default English strings of the Claude Code import dialog. */
|
|
7
|
-
export const DEFAULT_CLAUDE_IMPORT_LABELS = {
|
|
8
|
-
claudeImportTitle: 'Import from Claude Code',
|
|
9
|
-
claudeImportDescription:
|
|
10
|
-
'Copy conversations, MCP servers, skills, commands and subagents from ~/.claude. Zidane never changes your Claude Code setup and skips what it already imported.',
|
|
11
|
-
claudeImportRun: 'Import',
|
|
12
|
-
claudeImportDone: 'Done',
|
|
13
|
-
claudeImportLooking: 'Looking for Claude Code…',
|
|
14
|
-
claudeImportNone: 'No Claude Code setup at ~/.claude. Nothing to import.',
|
|
15
|
-
/** The active chat runs on a server: the import still goes to this computer. */
|
|
16
|
-
claudeImportHostNote: (server: string) =>
|
|
17
|
-
`Imports go to this computer, not to ${server}. Find them in this computer's session list.`,
|
|
18
|
-
claudeImportConversations: 'Conversations',
|
|
19
|
-
claudeImportTranscripts: (n: number) => `${plural(n, 'transcript', 'transcripts')} found`,
|
|
20
|
-
claudeImportAllProjects: 'From all projects',
|
|
21
|
-
claudeImportProjectCounts: (project: number, all: number) => `${project} in this project, ${all} in all`,
|
|
22
|
-
claudeImportMcps: 'MCP servers',
|
|
23
|
-
claudeImportMcpsDetail: "Copy into Zidane's mcps.json. Servers you already have stay.",
|
|
24
|
-
claudeImportSkills: 'Skills',
|
|
25
|
-
claudeImportSkillsDetail: 'Copy .claude/skills into .zidane/skills',
|
|
26
|
-
claudeImportCommands: 'Commands and subagents',
|
|
27
|
-
claudeImportCommandsDetail: 'Copy .claude/commands and .claude/agents into .zidane/',
|
|
28
|
-
claudeImportImporting: 'Importing…',
|
|
29
|
-
claudeImportFailed: (error: string) => `Import failed: ${error}`,
|
|
30
|
-
claudeImportImported: (n: number) => `${n} imported`,
|
|
31
|
-
claudeImportAlready: (n: number) => `${n} already imported`,
|
|
32
|
-
claudeImportEmpty: (n: number) => `${n} empty`,
|
|
33
|
-
claudeImportCommandsTitle: 'Commands',
|
|
34
|
-
claudeImportAgentsTitle: 'Subagents',
|
|
35
|
-
claudeImportCopied: (n: number) => `${n} copied`,
|
|
36
|
-
claudeImportSkipped: (n: number) => `${n} skipped`,
|
|
37
|
-
claudeImportSkippedTitle: 'Zidane already has one with the same name',
|
|
38
|
-
claudeImportFailedCount: (n: number) => `${n} failed`,
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
/** The shape of the Claude Code import dialog's label dictionary. */
|
|
42
|
-
export type ClaudeImportLabels = typeof DEFAULT_CLAUDE_IMPORT_LABELS;
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Whether to offer Import from Claude Code: the host has a Claude Code setup
|
|
3
|
-
* (`SettingsHost.claudeImport.detect`), as the TUI hides the action on a
|
|
4
|
-
* machine without one. `~/.claude` is the same for every folder, so one read
|
|
5
|
-
* per host.
|
|
6
|
-
*/
|
|
7
|
-
import { useEffect, useState } from 'react';
|
|
8
|
-
|
|
9
|
-
import type { SettingsClaudeImportHost } from '../../headless/claude-import';
|
|
10
|
-
import { useSettingsHost } from '../../SettingsProvider';
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Whether the provided settings host has a Claude Code setup to import.
|
|
14
|
-
*
|
|
15
|
-
* @returns `false` until the host says so, and without `claudeImport`.
|
|
16
|
-
*/
|
|
17
|
-
export function useClaudeImportAvailable(): boolean {
|
|
18
|
-
const claudeImport = useSettingsHost().claudeImport;
|
|
19
|
-
// Keyed by the host it came from: another host's answer never shows.
|
|
20
|
-
const [found, setFound] = useState<{ from: SettingsClaudeImportHost; available: boolean } | null>(null);
|
|
21
|
-
useEffect(() => {
|
|
22
|
-
if (!claudeImport) return undefined;
|
|
23
|
-
let cancelled = false;
|
|
24
|
-
claudeImport
|
|
25
|
-
.detect('')
|
|
26
|
-
.then((result) => {
|
|
27
|
-
if (!cancelled) setFound({ from: claudeImport, available: result.available });
|
|
28
|
-
})
|
|
29
|
-
.catch(() => undefined);
|
|
30
|
-
return () => {
|
|
31
|
-
cancelled = true;
|
|
32
|
-
};
|
|
33
|
-
}, [claudeImport]);
|
|
34
|
-
return found !== null && found.from === claudeImport && found.available;
|
|
35
|
-
}
|
|
@@ -1,261 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The per-device preference sections as `SettingsSection`s for the shell:
|
|
3
|
-
* Appearance, Files & editor and Keybindings. Each takes its title, icon,
|
|
4
|
-
* nav group, description and search entries from zidane's settings layout
|
|
5
|
-
* (`SETTINGS_PAGES`, one list), and renders its body with the props given.
|
|
6
|
-
*
|
|
7
|
-
* <SettingsShell sections={[...kitSections, appearanceSettingsSection(), keybindingsSettingsSection()]} />
|
|
8
|
-
*/
|
|
9
|
-
import type { SettingsSection } from '../headless/registry';
|
|
10
|
-
import { describedOn, SETTINGS_PAGES, type SettingsPanelId } from '../headless/layout';
|
|
11
|
-
import { AppearanceSection, type AppearanceSectionProps } from './appearance/AppearanceSection';
|
|
12
|
-
import { EditorSection, type EditorSectionProps } from './editor/EditorSection';
|
|
13
|
-
import { KeybindingsSection, type KeybindingsSectionProps } from './keybindings/KeybindingsSection';
|
|
14
|
-
import { EnvironmentsSection, type EnvironmentsSectionProps } from './environments/EnvironmentsSection';
|
|
15
|
-
import { ExtensionsSection, type ExtensionsSectionProps } from './extensions/ExtensionsSection';
|
|
16
|
-
import { HostCatalogSection, type HostCatalogSectionProps } from './host-catalog/HostCatalogSection';
|
|
17
|
-
import { InstructionsSection, type InstructionsSectionProps } from './instructions/InstructionsSection';
|
|
18
|
-
import { LogsSection, type LogsSectionProps } from './logs/LogsSection';
|
|
19
|
-
import { PerformanceSection, type PerformanceSectionProps } from './performance/PerformanceSection';
|
|
20
|
-
import { PluginsSection, type PluginsSectionProps } from './plugins/PluginsSection';
|
|
21
|
-
import { SkillsSection, type SkillsSectionProps } from './skills/SkillsSection';
|
|
22
|
-
import { EnabledListSection, type EnabledListSectionProps } from './enabled-list/EnabledListSection';
|
|
23
|
-
import { McpSection, type McpSectionProps } from './mcp/McpSection';
|
|
24
|
-
import { ProvidersSection, type ProvidersSectionProps } from './providers/ProvidersSection';
|
|
25
|
-
import { ServerProvidersSection, type ServerProvidersSectionProps } from './providers/ServerProvidersSection';
|
|
26
|
-
|
|
27
|
-
/** What a preference section's descriptor may change from the layout's. */
|
|
28
|
-
export interface PreferenceSectionOverrides {
|
|
29
|
-
/** The nav and header title. Default: the layout page's label. */
|
|
30
|
-
title?: string;
|
|
31
|
-
/** Under the title. Default: the layout page's description. */
|
|
32
|
-
description?: string;
|
|
33
|
-
/** The nav group. Default: the layout page's parent. */
|
|
34
|
-
group?: string;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/** A layout page as a section; `host`: a server's page, worded for it. */
|
|
38
|
-
function fromLayout(
|
|
39
|
-
id: SettingsPanelId,
|
|
40
|
-
overrides: PreferenceSectionOverrides,
|
|
41
|
-
render: () => unknown,
|
|
42
|
-
host?: string,
|
|
43
|
-
): SettingsSection {
|
|
44
|
-
const page = SETTINGS_PAGES.find((p) => p.id === id);
|
|
45
|
-
const search = page && 'search' in page ? page.search : undefined;
|
|
46
|
-
return {
|
|
47
|
-
id,
|
|
48
|
-
title: overrides.title ?? page?.label ?? id,
|
|
49
|
-
icon: page?.icon,
|
|
50
|
-
group: overrides.group ?? page?.parent,
|
|
51
|
-
description: overrides.description ?? (page ? describedOn(page, host) : undefined),
|
|
52
|
-
search,
|
|
53
|
-
// Its async state (installed fonts, the tool lists) survives switching away, and its header actions get a slot.
|
|
54
|
-
keepMounted: true,
|
|
55
|
-
render,
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* The Appearance section, over the nearest `AppearanceProvider`.
|
|
61
|
-
*
|
|
62
|
-
* @param props - What {@link AppearanceSection} takes (the app's `appIcon`, `onReset`).
|
|
63
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
64
|
-
*/
|
|
65
|
-
export function appearanceSettingsSection(
|
|
66
|
-
props: AppearanceSectionProps = {},
|
|
67
|
-
overrides: PreferenceSectionOverrides = {},
|
|
68
|
-
): SettingsSection {
|
|
69
|
-
return fromLayout('appearance', overrides, () => <AppearanceSection {...props} />);
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* The Files & editor section, over the nearest `FilesProvider` (editor preferences) and `AppearanceProvider`.
|
|
74
|
-
*
|
|
75
|
-
* @param props - What {@link EditorSection} takes (the session `cwd`, the app's `openIn` and lists).
|
|
76
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
77
|
-
*/
|
|
78
|
-
export function editorSettingsSection(
|
|
79
|
-
props: EditorSectionProps,
|
|
80
|
-
overrides: PreferenceSectionOverrides = {},
|
|
81
|
-
): SettingsSection {
|
|
82
|
-
return fromLayout('editor', overrides, () => <EditorSection {...props} />);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* The Keybindings section, over the nearest `KeybindingsProvider`.
|
|
87
|
-
*
|
|
88
|
-
* @param props - What {@link KeybindingsSection} takes (extra header `actions`).
|
|
89
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
90
|
-
*/
|
|
91
|
-
export function keybindingsSettingsSection(
|
|
92
|
-
props: KeybindingsSectionProps = {},
|
|
93
|
-
overrides: PreferenceSectionOverrides = {},
|
|
94
|
-
): SettingsSection {
|
|
95
|
-
return fromLayout('keybindings', overrides, () => <KeybindingsSection {...props} />);
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
/**
|
|
99
|
-
* The Skills section, over the settings host's `skills` group.
|
|
100
|
-
*
|
|
101
|
-
* @param props - What {@link SkillsSection} takes (the folder, the app's `onEdit` and header `actions`).
|
|
102
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
103
|
-
*/
|
|
104
|
-
export function skillsSettingsSection(
|
|
105
|
-
props: SkillsSectionProps,
|
|
106
|
-
overrides: PreferenceSectionOverrides = {},
|
|
107
|
-
): SettingsSection {
|
|
108
|
-
return fromLayout('skills', overrides, () => <SkillsSection {...props} />);
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
/**
|
|
112
|
-
* The Extensions section, over the settings host's `extensions` group.
|
|
113
|
-
*
|
|
114
|
-
* @param props - What {@link ExtensionsSection} takes (the folder, `onEdit`, `onCreateExtension`, `children`).
|
|
115
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
116
|
-
*/
|
|
117
|
-
export function extensionsSettingsSection(
|
|
118
|
-
props: ExtensionsSectionProps,
|
|
119
|
-
overrides: PreferenceSectionOverrides = {},
|
|
120
|
-
): SettingsSection {
|
|
121
|
-
return fromLayout('extensions', overrides, () => <ExtensionsSection {...props} />);
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
/**
|
|
125
|
-
* The Plugins section, over the settings host's `plugins` group.
|
|
126
|
-
*
|
|
127
|
-
* @param props - What {@link PluginsSection} takes (the folder).
|
|
128
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
129
|
-
*/
|
|
130
|
-
export function pluginsSettingsSection(
|
|
131
|
-
props: PluginsSectionProps,
|
|
132
|
-
overrides: PreferenceSectionOverrides = {},
|
|
133
|
-
): SettingsSection {
|
|
134
|
-
return fromLayout('plugins', overrides, () => <PluginsSection {...props} />);
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
/**
|
|
138
|
-
* The Instructions section, over the settings host's `instructions` group.
|
|
139
|
-
*
|
|
140
|
-
* @param props - What {@link InstructionsSection} takes (the session).
|
|
141
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
142
|
-
*/
|
|
143
|
-
export function instructionsSettingsSection(
|
|
144
|
-
props: InstructionsSectionProps,
|
|
145
|
-
overrides: PreferenceSectionOverrides = {},
|
|
146
|
-
): SettingsSection {
|
|
147
|
-
return fromLayout('instructions', overrides, () => <InstructionsSection {...props} />);
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
* The Environments section, over the settings host's `environments` group.
|
|
152
|
-
*
|
|
153
|
-
* @param props - What {@link EnvironmentsSection} takes (the folder).
|
|
154
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
155
|
-
*/
|
|
156
|
-
export function environmentsSettingsSection(
|
|
157
|
-
props: EnvironmentsSectionProps,
|
|
158
|
-
overrides: PreferenceSectionOverrides = {},
|
|
159
|
-
): SettingsSection {
|
|
160
|
-
return fromLayout('environments', overrides, () => <EnvironmentsSection {...props} />);
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
/**
|
|
164
|
-
* The Logs section, over the settings host's `logs` group.
|
|
165
|
-
*
|
|
166
|
-
* @param props - What {@link LogsSection} takes.
|
|
167
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
168
|
-
*/
|
|
169
|
-
export function logsSettingsSection(
|
|
170
|
-
props: LogsSectionProps = {},
|
|
171
|
-
overrides: PreferenceSectionOverrides = {},
|
|
172
|
-
): SettingsSection {
|
|
173
|
-
return fromLayout('logs', overrides, () => <LogsSection {...props} />);
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
/**
|
|
177
|
-
* The Performance section, over the settings host's `performance` member. Kept mounted, it
|
|
178
|
-
* watches only while open.
|
|
179
|
-
*
|
|
180
|
-
* @param props - What {@link PerformanceSection} takes.
|
|
181
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
182
|
-
*/
|
|
183
|
-
export function performanceSettingsSection(
|
|
184
|
-
props: PerformanceSectionProps = {},
|
|
185
|
-
overrides: PreferenceSectionOverrides = {},
|
|
186
|
-
): SettingsSection {
|
|
187
|
-
return fromLayout('performance', overrides, () => <PerformanceSection {...props} />);
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
/**
|
|
191
|
-
* A host's own catalog (a server's Skills, Extensions or Plugins) in that page's place,
|
|
192
|
-
* over the settings host's `hostCatalog` group.
|
|
193
|
-
*
|
|
194
|
-
* @param props - What {@link HostCatalogSection} takes (the kind, the host's name, the folder there).
|
|
195
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
196
|
-
*/
|
|
197
|
-
export function hostCatalogSettingsSection(
|
|
198
|
-
props: HostCatalogSectionProps,
|
|
199
|
-
overrides: PreferenceSectionOverrides = {},
|
|
200
|
-
): SettingsSection {
|
|
201
|
-
return fromLayout(props.kind, overrides, () => <HostCatalogSection {...props} />, props.hostName);
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
/**
|
|
205
|
-
* Accounts (providers and keys), over the settings host's `providers` group.
|
|
206
|
-
*
|
|
207
|
-
* @param props - What {@link ProvidersSection} takes (the folder, an `intro`, `confirm`).
|
|
208
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
209
|
-
*/
|
|
210
|
-
export function providersSettingsSection(
|
|
211
|
-
props: ProvidersSectionProps = {},
|
|
212
|
-
overrides: PreferenceSectionOverrides = {},
|
|
213
|
-
): SettingsSection {
|
|
214
|
-
return fromLayout('accounts', overrides, () => <ProvidersSection {...props} />);
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
/**
|
|
218
|
-
* A server's Accounts as cards, over the settings host's `providers` group (that server's).
|
|
219
|
-
*
|
|
220
|
-
* @param props - What {@link ServerProvidersSection} takes (the server's name).
|
|
221
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
222
|
-
*/
|
|
223
|
-
export function serverProvidersSettingsSection(
|
|
224
|
-
props: ServerProvidersSectionProps,
|
|
225
|
-
overrides: PreferenceSectionOverrides = {},
|
|
226
|
-
): SettingsSection {
|
|
227
|
-
return fromLayout('accounts', overrides, () => <ServerProvidersSection {...props} />, props.hostName);
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
/**
|
|
231
|
-
* MCP servers, over the settings host's `mcp` group and its settings document.
|
|
232
|
-
*
|
|
233
|
-
* @param props - What {@link McpSection} takes (the folder, an `intro`, header `actions`).
|
|
234
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
235
|
-
*/
|
|
236
|
-
export function mcpSettingsSection(
|
|
237
|
-
props: McpSectionProps = {},
|
|
238
|
-
overrides: PreferenceSectionOverrides = {},
|
|
239
|
-
): SettingsSection {
|
|
240
|
-
return fromLayout('mcp', overrides, () => <McpSection {...props} />);
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
const ENABLED_LIST_PAGE = {
|
|
244
|
-
enabledSkills: 'skills',
|
|
245
|
-
enabledMcps: 'mcp',
|
|
246
|
-
enabledExtensions: 'extensions',
|
|
247
|
-
enabledPlugins: 'plugins',
|
|
248
|
-
} as const;
|
|
249
|
-
|
|
250
|
-
/**
|
|
251
|
-
* A host's enabled list (for a host that can't list its catalog) in its page's place.
|
|
252
|
-
*
|
|
253
|
-
* @param props - What {@link EnabledListSection} takes (the list, the host's name).
|
|
254
|
-
* @param overrides - The title, description or group, instead of the layout's.
|
|
255
|
-
*/
|
|
256
|
-
export function enabledListSettingsSection(
|
|
257
|
-
props: EnabledListSectionProps,
|
|
258
|
-
overrides: PreferenceSectionOverrides = {},
|
|
259
|
-
): SettingsSection {
|
|
260
|
-
return fromLayout(ENABLED_LIST_PAGE[props.settingKey], overrides, () => <EnabledListSection {...props} />);
|
|
261
|
-
}
|