@dungsil/dsh-plugin-cli-proxy-api 0.2.2 → 0.2.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/dist/client.js CHANGED
@@ -19,12 +19,13 @@ function installStyles(css) {
19
19
  return () => style.remove();
20
20
  }
21
21
  // ../../tools/ui/src/settings.tsx
22
- /** The rc.5 settings shell has no icon slot, so decorate only the matching navigation rows. */
22
+ /** Decorate matching navigation rows in both the rc.5 and 0.2.2 settings shells. */
23
23
  function installSettingsIcon(id, labels, icon) {
24
24
  const attribute = "data-dsh-settings-icon";
25
25
  const selector = `[${attribute}="${id}"]`;
26
26
  const removeStyles = installStyles(`
27
- ${selector} > svg { display: none; }
27
+ ${selector} > svg,
28
+ ${selector} > [aria-hidden="true"]:not([data-dsh-settings-icon-glyph]) { display: none; }
28
29
  ${typeof icon === "string" ? `${selector}::before { content: ''; display: block; flex: none; width: 16px; height: 16px; background: currentColor; mask: url("data:image/svg+xml,${encodeURIComponent(icon)}") center / contain no-repeat; }` : ""}
29
30
  ${selector} > [data-dsh-settings-icon-glyph] { display: inline-flex; flex: none; }
30
31
  `);
@@ -89,6 +90,22 @@ function SettingsRow({ label, children }) {
89
90
  }), children]
90
91
  });
91
92
  }
93
+ // ../../tools/ui/src/page.tsx
94
+ function PluginPage({ children, className = "", contentClassName = "" }) {
95
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
96
+ className: `dsh-plugin-page ${className}`,
97
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
98
+ className: `dsh-plugin-page-content ${contentClassName}`,
99
+ children
100
+ })
101
+ });
102
+ }
103
+ // ../../tools/ui/src/page-styles.ts
104
+ const pageStyles = `
105
+ .dsh-plugin-page { box-sizing: border-box; height: 100%; min-height: 0; overflow: auto; padding: 24px; padding-inline-start: max(24px, var(--dsh-frame-leading-clearance, 0px)); }
106
+ .dsh-plugin-page-content { max-width: 960px; margin: 0 auto; }
107
+ .dsh-plugin-page h1 { margin: 0 0 24px; font-size: 20px; line-height: 28px; font-weight: 500; }
108
+ `;
92
109
  // src/protocol.ts
93
110
  const channel = "/api";
94
111
  const endpointPrefix = "dungsil-cli-proxy-api/";
@@ -776,13 +793,10 @@ const inject = [
776
793
  "locale",
777
794
  "slots"
778
795
  ];
779
- const styles = `${settingsStyles}${quotaStyles}
796
+ const styles = `${settingsStyles}${quotaStyles}${pageStyles}
780
797
  .dsh-cli-proxy-icon { display: inline-flex; }
781
798
  .dsh-cli-proxy-icon > svg { width: 100%; height: 100%; }
782
799
  .dsh-cli-proxy { container-type: inline-size; color: var(--dsw-alias-label-primary); font: 14px/22px var(--dsw-font-family, system-ui); }
783
- .dsh-cli-proxy-page { height: 100%; min-height: 0; box-sizing: border-box; overflow-y: auto; padding: 24px; padding-inline-start: max(24px, var(--dsh-frame-leading-clearance, 0px)); }
784
- .dsh-cli-proxy-page > .dsh-cli-proxy { max-width: 960px; margin: 0 auto; }
785
- .dsh-cli-proxy h1 { font-size: 20px; line-height: 28px; font-weight: 500; margin: 0 0 24px; }
786
800
  .dsh-cli-proxy h3 { margin: 24px 0 0; font: inherit; color: var(--dsw-alias-label-secondary); }
787
801
  .dsh-cli-proxy .controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; min-width: 0; max-width: 65%; }
788
802
  .dsh-cli-proxy .controls > span:has(> input) { box-sizing: border-box; width: 280px; min-width: 0; max-width: 100%; }
@@ -1164,15 +1178,12 @@ function ProxyPage({ ctx, cache, settings = false }) {
1164
1178
  });
1165
1179
  }
1166
1180
  function ProxyPanel({ ctx, cache }) {
1167
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
1168
- className: "dsh-cli-proxy-page",
1169
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
1170
- className: "dsh-cli-proxy",
1171
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("h1", { children: "CLIProxyAPI" }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ProxyPage, {
1172
- ctx,
1173
- cache
1174
- })]
1175
- })
1181
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(PluginPage, {
1182
+ contentClassName: "dsh-cli-proxy",
1183
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("h1", { children: "CLIProxyAPI" }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ProxyPage, {
1184
+ ctx,
1185
+ cache
1186
+ })]
1176
1187
  });
1177
1188
  }
1178
1189
  function apply(ctx) {
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { createHash, randomUUID } from "node:crypto";
2
2
  import { clientRequestSchema } from "@deepseek-ai/dsh-client-connection";
3
3
  import { credentialRef } from "@deepseek-ai/dsh-credentials";
4
- // ../../node_modules/.pnpm/@deepseek-ai+cosmokit@1.8.6/node_modules/@deepseek-ai/cosmokit/lib/index.js
4
+ // ../../node_modules/.pnpm/@deepseek-ai+cosmokit@1.9.0/node_modules/@deepseek-ai/cosmokit/lib/index.js
5
5
  /** Return true when a value is `null` or `undefined`. */
6
6
  function isNullable(value) {
7
7
  return value === null || value === void 0;
@@ -254,7 +254,7 @@ var Time;
254
254
  }
255
255
  Time.template = template;
256
256
  })(Time || (Time = {}));
257
- // ../../node_modules/.pnpm/@deepseek-ai+schemastery@3.18.5/node_modules/@deepseek-ai/schemastery/lib/index.mjs
257
+ // ../../node_modules/.pnpm/@deepseek-ai+schemastery@3.19.0/node_modules/@deepseek-ai/schemastery/lib/index.mjs
258
258
  const kSchema = Symbol.for("schemastery");
259
259
  const kValidationError = Symbol.for("ValidationError");
260
260
  globalThis.__schemastery_index__ ??= 0;
@@ -1455,7 +1455,7 @@ function apply(ctx, config) {
1455
1455
  ctx.effect(() => () => lifetime.abort());
1456
1456
  const currentURL = () => serverURL(config.baseURL.get());
1457
1457
  const ownerEntry = () => {
1458
- const entries = ctx.configEditor.entries().filter((entry) => entry.fiber === ctx.fiber);
1458
+ const entries = ctx.configEditor.entries().filter((entry) => entry.fiber?.uid === ctx.fiber.uid);
1459
1459
  if (entries.length !== 1) throw new Error("unavailable");
1460
1460
  return entries[0];
1461
1461
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dungsil/dsh-plugin-cli-proxy-api",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "description": "CLIProxyAPI model provider and owner-only management settings for DeepSeek Harness.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -24,21 +24,20 @@
24
24
  "access": "public"
25
25
  },
26
26
  "devDependencies": {
27
- "@deepseek-ai/cordis": "4.0.5",
28
- "@deepseek-ai/dsh-app-boot": "0.2.1-rc.5",
29
- "@deepseek-ai/dsh-client-connection": "0.2.1-rc.5",
30
- "@deepseek-ai/dsh-client-locale": "0.2.1-rc.5",
31
- "@deepseek-ai/dsh-client-ui-layout": "0.2.1-rc.5",
32
- "@deepseek-ai/dsh-client-ui-primitives": "0.2.1-rc.5",
33
- "@deepseek-ai/dsh-client-ui-renderer": "0.2.1-rc.5",
34
- "@deepseek-ai/dsh-client-ui-settings": "0.2.1-rc.5",
35
- "@deepseek-ai/dsh-client-ui-sidebar": "0.2.1-rc.5",
36
- "@deepseek-ai/dsh-config-editor": "0.2.1-rc.5",
37
- "@deepseek-ai/dsh-credentials": "0.2.1-rc.5",
38
- "@deepseek-ai/dsh-credentials-local": "0.2.1-rc.5",
39
- "@deepseek-ai/dsh-llm": "0.2.1-rc.5",
40
- "@deepseek-ai/dsh-llm-pi-ai": "0.2.1-rc.5",
41
- "@deepseek-ai/schemastery": "3.18.5",
27
+ "@deepseek-ai/cordis": "4.1.0",
28
+ "@deepseek-ai/dsh-app-boot": "0.2.2-rc.1",
29
+ "@deepseek-ai/dsh-client-connection": "0.2.2-rc.1",
30
+ "@deepseek-ai/dsh-client-locale": "0.2.2-rc.1",
31
+ "@deepseek-ai/dsh-client-ui-layout": "0.2.2-rc.1",
32
+ "@deepseek-ai/dsh-client-ui-renderer": "0.2.2-rc.1",
33
+ "@deepseek-ai/dsh-client-ui-settings": "0.2.2-rc.1",
34
+ "@deepseek-ai/dsh-client-ui-sidebar": "0.2.2-rc.1",
35
+ "@deepseek-ai/dsh-config-editor": "0.2.2-rc.1",
36
+ "@deepseek-ai/dsh-credentials": "0.2.2-rc.1",
37
+ "@deepseek-ai/dsh-credentials-local": "0.2.2-rc.1",
38
+ "@deepseek-ai/dsh-llm": "0.2.2-rc.1",
39
+ "@deepseek-ai/dsh-llm-pi-ai": "0.2.2-rc.1",
40
+ "@deepseek-ai/schemastery": "3.19.0",
42
41
  "@dungsil/dsh-tsconfig": "0.0.0",
43
42
  "@dungsil/dsh-tsdown": "0.0.0",
44
43
  "@dungsil/dsh-ui": "0.0.0",
@@ -50,15 +49,15 @@
50
49
  },
51
50
  "peerDependencies": {
52
51
  "@deepseek-ai/cordis": "^4.0.5",
53
- "@deepseek-ai/dsh-client-connection": "^0.2.1-rc.5",
54
- "@deepseek-ai/dsh-client-ui-primitives": "^0.2.1-rc.5",
55
- "@deepseek-ai/dsh-config-editor": "^0.2.1-rc.5",
56
- "@deepseek-ai/dsh-credentials": "^0.2.1-rc.5",
57
- "@deepseek-ai/dsh-llm": "^0.2.1-rc.5",
58
- "@deepseek-ai/dsh-llm-pi-ai": "^0.2.1-rc.5"
52
+ "@deepseek-ai/dsh-client-connection": "^0.2.1-rc.5 || ^0.2.2-rc.1",
53
+ "@deepseek-ai/dsh-client-ui-primitives": "^0.2.1-rc.5 || ^0.2.2-rc.1",
54
+ "@deepseek-ai/dsh-config-editor": "^0.2.1-rc.5 || ^0.2.2-rc.1",
55
+ "@deepseek-ai/dsh-credentials": "^0.2.1-rc.5 || ^0.2.2-rc.1",
56
+ "@deepseek-ai/dsh-llm": "^0.2.1-rc.5 || ^0.2.2-rc.1",
57
+ "@deepseek-ai/dsh-llm-pi-ai": "^0.2.1-rc.5 || ^0.2.2-rc.1"
59
58
  },
60
59
  "engines": {
61
- "dsh": "^0.2.1-rc.5",
60
+ "dsh": "^0.2.1-rc.5 || ^0.2.2-rc.1",
62
61
  "node": ">=24.9.0"
63
62
  },
64
63
  "dsh": {