* fix(ui): avoid tooltip trigger overlap when a side fits
* feat(ui): add navigation entry customization
* fix(test): keep tooltip geometry independent of JSX types
* fix(ui): align customization catalogs and integration fixtures
* test(ui): complete customization lifecycle and release integration coverage
* fix(ui): return entry discovery to the installed plugin list
* docs: refresh module graph for entry customization
* build: refresh workspace links for the moved entry customization package
* docs: regenerate catalogs and pairing hashes for the moved entry customization package
* test(web): cover default-loaded entry customization in the Web e2e
* test(ui): describe entry customization as a browser plugin in the host entry spec
* build: order entry customization publication files as workspace constraints require
* test(release): drop the moved entry customization package from the experimental family list
* style(ui): use the shared focus ring color on entry customization triggers
* test(web): re-record goldens for the default-loaded More navigation menus
* test(web): add the More conversation views trigger to the remaining CI-reported goldens
* docs: record region-owned pins for plugin entry customization
* refactor(ui): rebuild entry customization on region-owned pins and More menus
- Each navigation region (left sidebar, Conversation header, right sidebar
guide) persists its own unpinned list under
dsh.slot.manual-order.<list slot key>.v1, filters its own launchers, and
draws its own More button and Menu around its actions slot.
- ui-entry-customization only registers the shared menu rows (entries with
pin buttons, Browse other plugins, Create your plugin) into the three
actions slots and keeps no state.
- Remove ctx.layout.entryVisibility, the plugin store, left-sidebar drag
reordering, and agentPresetNavigation; ui-layout and ui-agent-preset match
release/dsh-0.2.1 again.
- Keep the release <nav> and Conversation tab-bar visibility conditions.
- Move the More glyph into ui-primitives as IconAppsAddOutline{Regular,Medium}.
* docs: compile the entry customization owner props example
* docs(ui): describe the wrapping Conversation tab row in the header comment
* fix(ui): return New Session to the Workspace blank and its unsent draft
- New Session (startSession without options) takes the blank-reuse path
again instead of creating a fresh Session on every call, which hid the
previous blank and its unsent draft since a5c9c2aaeef (#5775).
- A request that names an Agent preset skips blanks listing a different
preset, so Creator entries no longer take over an ordinary draft.
- Record the change in a v0.2.1-rc.2 upgrade guide; the Host refresh of a
stale loaded blank stays deferred (see the Agent Note).
* docs: regenerate the Cordis inspect catalog for New Session blank reuse
* fix(ui): keep the selected entry visible while unpinned
- Left-sidebar rows and View tabs keep the selected entry, with aria-current or aria-selected, until another entry is selected.
- Entry menu Creator action takes no region argument; the registration's region selects the prompt.
- Document the 2px panel-row and 32px View-tab gaps; drop commit hashes from the New Session Agent Note.
* fix(ui): leave a blank of another preset unstaged when starting Creator
startCreatorDraft stages cordis only when the main blank lists no preset or already lists cordis; navigation opens a separate Creator blank otherwise, so a Standard draft blank keeps its preset.
* feat(ui): choose whether a draft prompt replaces, appends to, or keeps an existing draft
- DraftInitializationOptions gains whenDraftExists ('replace' | 'append' | 'keep', default 'keep'); clearPreviousDraft stays and maps to 'replace' only when whenDraftExists is omitted.
- Append adds the prompt as new paragraphs after the existing text and references; attachments stay in every mode.
- The three Create your plugin entries append their regional prompt.
* test(web): align e2e with New Session blank reuse and the visible selected entry
* refactor(ui): share the draft paragraph writer between setDraft and appendDraft
---------
Co-authored-by: Yif <[email protected]>
Co-authored-by: imccyu <[email protected]>
53 lines
2.0 KiB
JSON
53 lines
2.0 KiB
JSON
{
|
|
"name": "@deepseek-ai/dsh-client-ui-entry-customization",
|
|
"version": "0.2.1-rc.2",
|
|
"description": "Customize plugin entries in the left sidebar, conversation views, and right sidebar, and quickly create new plugins.",
|
|
"publishConfig": { "access": "public" },
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/deepseek-ai/deepseek-harness.git",
|
|
"directory": "packages/client/ui-entry-customization"
|
|
},
|
|
"type": "module",
|
|
"main": "lib/index.js",
|
|
"types": "lib/types/index.d.ts",
|
|
"exports": {
|
|
".": { "types": "./lib/types/index.d.ts", "default": "./lib/index.js" },
|
|
"./client": { "types": "./lib/types/client/index.d.ts", "default": "./lib/client.js" },
|
|
"./src/*": "./src/*",
|
|
"./package.json": "./package.json",
|
|
"./locale/*.json": "./locale/*.json"
|
|
},
|
|
"files": ["locale/*.json", "lib/index.js", "lib/client.js", "lib/types/**/*.d.ts"],
|
|
"license": "MIT",
|
|
"peerDependencies": { "@deepseek-ai/cordis": "workspace:~" },
|
|
"devDependencies": {
|
|
"@deepseek-ai/cordis": "workspace:~",
|
|
"@deepseek-ai/dsh-client-locale": "workspace:*",
|
|
"@deepseek-ai/dsh-client-ui-sidebar": "workspace:*",
|
|
"@deepseek-ai/dsh-client-ui-conversation": "workspace:*",
|
|
"@deepseek-ai/dsh-client-ui-sidebar-right": "workspace:*",
|
|
"@deepseek-ai/dsh-client-ui-plugin-manager": "workspace:*",
|
|
"@deepseek-ai/dsh-client-ui-workspace": "workspace:*",
|
|
"@deepseek-ai/dsh-client-ui-primitives": "workspace:*",
|
|
"@deepseek-ai/dsh-client-ui-renderer": "workspace:*",
|
|
"@deepseek-ai/dsh-client-ui-slots": "workspace:*",
|
|
"@deepseek-ai/dsh-client-test-runtime": "workspace:*",
|
|
"clsx": "^2.1.1",
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"@testing-library/react": "^16.3.3"
|
|
},
|
|
"dsh": {
|
|
"client": {
|
|
"platform": "web",
|
|
"inject": [
|
|
"@deepseek-ai/dsh-client-locale",
|
|
"@deepseek-ai/dsh-client-ui-plugin-manager",
|
|
"@deepseek-ai/dsh-client-ui-workspace"
|
|
]
|
|
}
|
|
},
|
|
"scripts": { "bundle": "tsdown", "watch": "tsdown --watch" }
|
|
}
|