@deepseek-ai/dsh-client-ui-goal 0.1.2-alpha.5 → 0.1.3-alpha.2
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.i18n.yaml +2 -2
- package/README.md +1 -1
- package/README.zh.md +1 -1
- package/lib/client.js +45 -35
- package/lib/types/client/GoalCommandInputView.d.ts +6 -1
- package/lib/types/client/goal-command-input.d.ts +2 -0
- package/package.json +15 -15
package/README.i18n.yaml
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
# side as of the last confirmed-consistent state. Both languages carry equal authority;
|
|
3
3
|
# after editing either side, bring the other along and re-record with:
|
|
4
4
|
# pnpm run verify-translation-pairing --write packages/client/ui-goal/README.md
|
|
5
|
-
README.md:
|
|
6
|
-
README.zh.md:
|
|
5
|
+
README.md: 8556575b00e1d3073f251d83f3dee0bafb4c8969
|
|
6
|
+
README.zh.md: 22d0417bc2d37719150ec46aad849ad2bce8b460
|
package/README.md
CHANGED
|
@@ -29,7 +29,7 @@ Mount this plugin alongside `ui-conversation` and the goal domain package; the s
|
|
|
29
29
|
|
|
30
30
|
### The command-input bubble
|
|
31
31
|
|
|
32
|
-
Each durable `/goal` run projects as a right-aligned
|
|
32
|
+
Each durable `/goal` run projects as a right-aligned user-style bubble labeled `Command input` (or `指令输入`), rendered before the generic command result row; the leading `/goal` token renders as a command reference chip in the code face through ui-primitives `projectUserText`, and the objective stays plain body text. It carries no timestamp, copy, or branch actions, and reloading reconstructs it from the run.
|
|
33
33
|
|
|
34
34
|
### Failures
|
|
35
35
|
|
package/README.zh.md
CHANGED
|
@@ -29,7 +29,7 @@ kind: "package-reference"
|
|
|
29
29
|
|
|
30
30
|
### 指令输入气泡
|
|
31
31
|
|
|
32
|
-
每条持久的 `/goal`
|
|
32
|
+
每条持久的 `/goal` 运行都投影为一个右对齐的用户样式气泡,标签为 `Command input`(或 `指令输入`),渲染在通用命令结果行之前;开头的 `/goal` token 经 ui-primitives 的 `projectUserText` 以等宽代码字体渲染为指令引用 chip,目标文本保持正文字体。它不含时间戳、复制或分支操作,重新加载时会依据运行记录重建。
|
|
33
33
|
|
|
34
34
|
### 失败
|
|
35
35
|
|
package/lib/client.js
CHANGED
|
@@ -250,42 +250,9 @@ window.__ModuleLoader__.load({
|
|
|
250
250
|
});
|
|
251
251
|
}
|
|
252
252
|
//#endregion
|
|
253
|
-
//#region \0dsh-css:/home/runner/work/deepseek-harness/deepseek-harness/packages/client/ui-goal/src/client/GoalCommandInputView.module.css.mjs
|
|
254
|
-
const css = ".oRe1gG_row{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.oRe1gG_stack{min-width:0;max-width:min(calc(var(--dsh-chat-content-width,748px) * .702), 82%);flex-direction:column;align-items:flex-end;display:flex}.oRe1gG_bubble{overflow-wrap:anywhere;background:var(--dsw-specific-bubble);max-width:100%;color:var(--dsw-alias-label-primary);font:var(--dsw-font-markdown-code);font-size:var(--dsh-content-font-size,14px);line-height:calc(22px + var(--dsh-content-font-delta,0px));white-space:pre-wrap;border-radius:22px;padding:10px 16px}";
|
|
255
|
-
const tagId = "@deepseek-ai/dsh-client-ui-goal/GoalCommandInputView.module.css";
|
|
256
|
-
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
|
|
257
|
-
const tag = document.createElement("style");
|
|
258
|
-
tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-goal";
|
|
259
|
-
tag.dataset.pluginCss = tagId;
|
|
260
|
-
tag.textContent = css;
|
|
261
|
-
document.head.appendChild(tag);
|
|
262
|
-
}
|
|
263
|
-
var GoalCommandInputView_module_css_default = {
|
|
264
|
-
"bubble": "oRe1gG_bubble",
|
|
265
|
-
"row": "oRe1gG_row",
|
|
266
|
-
"stack": "oRe1gG_stack"
|
|
267
|
-
};
|
|
268
|
-
//#endregion
|
|
269
|
-
//#region lib/types/client/GoalCommandInputView.js
|
|
270
|
-
/** Right-aligned `/goal` input bubble without ordinary message actions. */
|
|
271
|
-
const GoalCommandInputView = (0, react.memo)(function GoalCommandInputView({ node, t }) {
|
|
272
|
-
const data = node.data;
|
|
273
|
-
return (0, react_jsx_runtime.jsx)("div", {
|
|
274
|
-
className: GoalCommandInputView_module_css_default.row,
|
|
275
|
-
"data-command-input": "",
|
|
276
|
-
role: "group",
|
|
277
|
-
"aria-label": t("commandInput.aria"),
|
|
278
|
-
children: (0, react_jsx_runtime.jsx)("div", {
|
|
279
|
-
className: GoalCommandInputView_module_css_default.stack,
|
|
280
|
-
children: (0, react_jsx_runtime.jsx)("div", {
|
|
281
|
-
className: GoalCommandInputView_module_css_default.bubble,
|
|
282
|
-
children: (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.MessageText, { text: data.text })
|
|
283
|
-
})
|
|
284
|
-
})
|
|
285
|
-
});
|
|
286
|
-
});
|
|
287
|
-
//#endregion
|
|
288
253
|
//#region lib/types/client/goal-command-input.js
|
|
254
|
+
/** The command name whose runs this projection owns. */
|
|
255
|
+
const GOAL_COMMAND = "goal";
|
|
289
256
|
/**
|
|
290
257
|
* Derive the visible command line from its structured durable run.
|
|
291
258
|
* @param event - `/goal` command run.
|
|
@@ -331,6 +298,49 @@ window.__ModuleLoader__.load({
|
|
|
331
298
|
}
|
|
332
299
|
};
|
|
333
300
|
//#endregion
|
|
301
|
+
//#region \0dsh-css:/home/runner/work/deepseek-harness/deepseek-harness/packages/client/ui-goal/src/client/GoalCommandInputView.module.css.mjs
|
|
302
|
+
const css = ".oRe1gG_row{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.oRe1gG_stack{min-width:0;max-width:min(calc(var(--dsh-chat-content-width,748px) * .702), 82%);flex-direction:column;align-items:flex-end;display:flex}.oRe1gG_bubble{overflow-wrap:anywhere;background:var(--dsw-specific-bubble);max-width:100%;color:var(--dsw-alias-label-primary);font-size:var(--dsh-content-font-size,14px);line-height:calc(22px + var(--dsh-content-font-delta,0px));white-space:pre-wrap;border-radius:22px;padding:10px 16px}";
|
|
303
|
+
const tagId = "@deepseek-ai/dsh-client-ui-goal/GoalCommandInputView.module.css";
|
|
304
|
+
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
|
|
305
|
+
const tag = document.createElement("style");
|
|
306
|
+
tag.dataset.plugin = "@deepseek-ai/dsh-client-ui-goal";
|
|
307
|
+
tag.dataset.pluginCss = tagId;
|
|
308
|
+
tag.textContent = css;
|
|
309
|
+
document.head.appendChild(tag);
|
|
310
|
+
}
|
|
311
|
+
var GoalCommandInputView_module_css_default = {
|
|
312
|
+
"bubble": "oRe1gG_bubble",
|
|
313
|
+
"row": "oRe1gG_row",
|
|
314
|
+
"stack": "oRe1gG_stack"
|
|
315
|
+
};
|
|
316
|
+
//#endregion
|
|
317
|
+
//#region lib/types/client/GoalCommandInputView.js
|
|
318
|
+
/**
|
|
319
|
+
* Right-aligned `/goal` input bubble without ordinary message actions. The
|
|
320
|
+
* echoed line decorates its leading `/goal` token as a command chip — the run
|
|
321
|
+
* this Node projects is the fact that that token was a command — and keeps
|
|
322
|
+
* the objective, `/goal` mentions included, as plain text.
|
|
323
|
+
*/
|
|
324
|
+
const GoalCommandInputView = (0, react.memo)(function GoalCommandInputView({ node, t }) {
|
|
325
|
+
const data = node.data;
|
|
326
|
+
const split = data.text.search(/\s/u);
|
|
327
|
+
const head = split === -1 ? data.text : data.text.slice(0, split);
|
|
328
|
+
const rest = split === -1 ? "" : data.text.slice(split);
|
|
329
|
+
return (0, react_jsx_runtime.jsx)("div", {
|
|
330
|
+
className: GoalCommandInputView_module_css_default.row,
|
|
331
|
+
"data-command-input": "",
|
|
332
|
+
role: "group",
|
|
333
|
+
"aria-label": t("commandInput.aria"),
|
|
334
|
+
children: (0, react_jsx_runtime.jsx)("div", {
|
|
335
|
+
className: GoalCommandInputView_module_css_default.stack,
|
|
336
|
+
children: (0, react_jsx_runtime.jsxs)("div", {
|
|
337
|
+
className: GoalCommandInputView_module_css_default.bubble,
|
|
338
|
+
children: [(0, _deepseek_ai_dsh_client_ui_primitives.projectUserText)(head, [], [GOAL_COMMAND], "command"), rest !== "" && (0, _deepseek_ai_dsh_client_ui_primitives.projectUserText)(rest, [])]
|
|
339
|
+
})
|
|
340
|
+
})
|
|
341
|
+
});
|
|
342
|
+
});
|
|
343
|
+
//#endregion
|
|
334
344
|
//#region lib/types/client/locales.js
|
|
335
345
|
/** `goal` namespace dictionaries. */
|
|
336
346
|
/** Simplified Chinese dictionary (the key-set source of truth). */
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import type { PropsLocale, PropsRuntime } from '@deepseek-ai/dsh-client-ui-slots';
|
|
2
2
|
type GoalCommandInputViewProps = PropsRuntime<'conversation.chat.node', 'command-input'> & PropsLocale<'goal'>;
|
|
3
|
-
/**
|
|
3
|
+
/**
|
|
4
|
+
* Right-aligned `/goal` input bubble without ordinary message actions. The
|
|
5
|
+
* echoed line decorates its leading `/goal` token as a command chip — the run
|
|
6
|
+
* this Node projects is the fact that that token was a command — and keeps
|
|
7
|
+
* the objective, `/goal` mentions included, as plain text.
|
|
8
|
+
*/
|
|
4
9
|
export declare const GoalCommandInputView: import("react").MemoExoticComponent<({ node, t, }: GoalCommandInputViewProps) => import("react").JSX.Element>;
|
|
5
10
|
export {};
|
|
6
11
|
//# sourceMappingURL=GoalCommandInputView.d.ts.map
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { SessionEvent } from '@deepseek-ai/dsh-session/types';
|
|
2
2
|
import type { CommandId } from '@deepseek-ai/dsh-commands/brand';
|
|
3
3
|
import type { ConversationNodeDefinition } from '@deepseek-ai/dsh-client-ui-conversation/client';
|
|
4
|
+
/** The command name whose runs this projection owns. */
|
|
5
|
+
export declare const GOAL_COMMAND = "goal";
|
|
4
6
|
/** Goal-owned human command input projected independently of model messages. */
|
|
5
7
|
export interface GoalCommandInputData {
|
|
6
8
|
readonly commandId: CommandId;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deepseek-ai/dsh-client-ui-goal",
|
|
3
3
|
"description": "Session goal surface: GoalBar docked above the composer, read from the goal session projection",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.3-alpha.2",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -48,21 +48,21 @@
|
|
|
48
48
|
"@types/react": "~18.3.1",
|
|
49
49
|
"react": "^18.2.0",
|
|
50
50
|
"react-dom": "^18.2.0",
|
|
51
|
-
"@deepseek-ai/dsh-api-remotes": "^0.1.
|
|
52
|
-
"@deepseek-ai/dsh-api-session-controller": "^0.1.
|
|
53
|
-
"@deepseek-ai/dsh-client-locale": "^0.1.
|
|
54
|
-
"@deepseek-ai/dsh-client-
|
|
55
|
-
"@deepseek-ai/dsh-client-ui-
|
|
56
|
-
"@deepseek-ai/dsh-client-
|
|
57
|
-
"@deepseek-ai/dsh-client-ui-
|
|
58
|
-
"@deepseek-ai/dsh-client-ui-
|
|
59
|
-
"@deepseek-ai/dsh-client-ui-renderer": "^0.1.
|
|
60
|
-
"@deepseek-ai/dsh-
|
|
61
|
-
"@deepseek-ai/dsh-
|
|
62
|
-
"@deepseek-ai/dsh-session": "^0.1.2-alpha.5",
|
|
51
|
+
"@deepseek-ai/dsh-api-remotes": "^0.1.3-alpha.2",
|
|
52
|
+
"@deepseek-ai/dsh-api-session-controller": "^0.1.3-alpha.2",
|
|
53
|
+
"@deepseek-ai/dsh-client-locale": "^0.1.3-alpha.2",
|
|
54
|
+
"@deepseek-ai/dsh-client-ui-chat": "^0.1.3-alpha.2",
|
|
55
|
+
"@deepseek-ai/dsh-client-ui-conversation": "^0.1.3-alpha.2",
|
|
56
|
+
"@deepseek-ai/dsh-client-test-runtime": "^0.1.3-alpha.2",
|
|
57
|
+
"@deepseek-ai/dsh-client-ui-primitives": "^0.1.3-alpha.2",
|
|
58
|
+
"@deepseek-ai/dsh-client-ui-slots": "^0.1.3-alpha.2",
|
|
59
|
+
"@deepseek-ai/dsh-client-ui-renderer": "^0.1.3-alpha.2",
|
|
60
|
+
"@deepseek-ai/dsh-commands": "^0.1.3-alpha.2",
|
|
61
|
+
"@deepseek-ai/dsh-goal": "^0.1.3-alpha.2",
|
|
63
62
|
"@deepseek-ai/cordis": "^4.0.2",
|
|
64
|
-
"@deepseek-ai/dsh-
|
|
65
|
-
"@deepseek-ai/dsh-
|
|
63
|
+
"@deepseek-ai/dsh-session": "^0.1.3-alpha.2",
|
|
64
|
+
"@deepseek-ai/dsh-client-ui-session": "^0.1.3-alpha.2",
|
|
65
|
+
"@deepseek-ai/dsh-typert-protocol": "^0.1.3-alpha.2"
|
|
66
66
|
},
|
|
67
67
|
"files": [
|
|
68
68
|
"lib/index.js",
|