@sparkelf/dsh-client-ui-skill-center 0.2.0-rc.10 → 0.2.0-rc.12

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.
Files changed (2) hide show
  1. package/lib/client.js +94 -83
  2. package/package.json +1 -1
package/lib/client.js CHANGED
@@ -8,7 +8,7 @@ window.__ModuleLoader__.load({
8
8
  let _deepseek_ai_dsh_client_ui_primitives = require("@deepseek-ai/dsh-client-ui-primitives");
9
9
  let react_jsx_runtime = require("react/jsx-runtime");
10
10
  //#region \0dsh-css:/root/projects/deepseek-harness-plus/packages/plus/ui-skill-center/src/client/SkillCenterPage.module.css.mjs
11
- const css = ".DGiSta_page{box-sizing:border-box;height:100%;color:var(--dsw-alias-label-primary);flex-direction:column;align-items:center;gap:32px;padding:28px clamp(24px,4vw,48px) 48px;display:flex;overflow:auto}.DGiSta_page>*{width:100%;max-width:900px}.DGiSta_pageHead{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.DGiSta_pageTitle{margin:0;font-size:20px;font-weight:500;line-height:28px}.DGiSta_pageIntro{color:var(--dsw-alias-label-secondary);margin:4px 0 0;font-size:13px;line-height:20px}.DGiSta_toolbar{justify-content:flex-end;align-items:center;gap:8px;display:flex}.DGiSta_button{border:.5px solid var(--dsw-alias-border-l3);height:32px;color:var(--dsw-alias-label-primary);cursor:pointer;background:0 0;border-radius:8px;padding:0 12px;font-size:13px}.DGiSta_button:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.DGiSta_button:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:1px}.DGiSta_primaryButton{background:var(--dsw-alias-brand-primary);height:32px;color:var(--dsw-alias-label-primary);cursor:pointer;border:none;border-radius:8px;padding:0 14px;font-size:13px}.DGiSta_search{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l3);width:100%;height:36px;color:var(--dsw-alias-label-primary);background:0 0;border-radius:10px;padding:0 12px;font-size:13px}.DGiSta_search::placeholder{color:var(--dsw-alias-label-tertiary)}.DGiSta_group{margin-top:32px}.DGiSta_groupTitle{align-items:baseline;gap:8px;margin:0 0 4px;font-size:15px;font-weight:500;line-height:22px;display:flex}.DGiSta_groupCount{color:var(--dsw-alias-label-tertiary);font-size:13px;font-weight:400}.DGiSta_groupHint{color:var(--dsw-alias-label-caption);font-size:12px;font-weight:400}.DGiSta_cards{margin:0;padding:0;list-style:none}.DGiSta_card{border-radius:12px;min-width:0;margin:0 -8px}.DGiSta_card:hover{background:var(--dsw-alias-interactive-bg-hover)}.DGiSta_cardHead{align-items:center;gap:14px;padding:8px;display:flex}.DGiSta_cardIcon{border:.5px solid var(--dsw-alias-border-l3);width:48px;height:48px;color:var(--dsw-alias-label-secondary);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.DGiSta_cardMain{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.DGiSta_cardTitle{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;line-height:20px;overflow:hidden}.DGiSta_cardDesc{color:var(--dsw-alias-label-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:18px;display:-webkit-box;overflow:hidden}.DGiSta_cardWhenToUse{color:var(--dsw-alias-label-caption);font-size:12px;line-height:18px}.DGiSta_cardMarks{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.DGiSta_mark{border:.5px solid var(--dsw-alias-border-l3);color:var(--dsw-alias-label-tertiary);border-radius:4px;padding:1px 6px;font-size:11px;line-height:16px}.DGiSta_markOn{border-color:var(--dsw-alias-state-business-primary);color:var(--dsw-alias-state-business-primary)}.DGiSta_markOff{border-color:var(--dsw-alias-border-l4);color:var(--dsw-alias-label-caption)}.DGiSta_markDanger{border-color:var(--dsw-alias-state-error-primary);color:var(--dsw-alias-state-error-primary)}.DGiSta_cardEnd{flex:none;align-items:center;gap:8px;display:flex}.DGiSta_switch{background:var(--dsw-alias-border-l3);cursor:pointer;border:none;border-radius:10px;width:36px;height:20px;transition:background .12s;position:relative}.DGiSta_switch:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:1px}.DGiSta_switchOn{background:var(--dsw-alias-state-success-primary)}.DGiSta_switch:after{content:\"\";background:var(--dsw-alias-bg-layer-1);border-radius:50%;width:16px;height:16px;transition:transform .12s;position:absolute;top:2px;left:2px}.DGiSta_switchOn:after{transform:translate(16px)}.DGiSta_form{border:.5px solid var(--dsw-alias-border-l3);border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.DGiSta_field{flex-direction:column;gap:4px;display:flex}.DGiSta_fieldLabel{color:var(--dsw-alias-label-secondary);font-size:12px;line-height:18px}.DGiSta_input{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l3);height:32px;color:var(--dsw-alias-label-primary);background:0 0;border-radius:8px;padding:0 10px;font-size:13px}.DGiSta_textarea{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l3);min-height:80px;color:var(--dsw-alias-label-primary);font-family:var(--dsw-font-markdown-code-block-small);resize:vertical;background:0 0;border-radius:8px;padding:8px 10px;font-size:12px}.DGiSta_formActions{justify-content:flex-end;gap:8px;display:flex}.DGiSta_status{text-align:center;color:var(--dsw-alias-label-tertiary);padding:32px 0;font-size:13px}.DGiSta_statusError{color:var(--dsw-alias-state-error-primary)}";
11
+ const css = ".DGiSta_page{box-sizing:border-box;height:100%;color:var(--dsw-alias-label-primary);flex-direction:column;align-items:center;gap:32px;padding:28px clamp(24px,4vw,48px) 48px;display:flex;overflow:auto}.DGiSta_page>*{width:100%;max-width:960px}.DGiSta_pageHead{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.DGiSta_pageTitle{margin:0;font-size:20px;font-weight:500;line-height:28px}.DGiSta_pageIntro{color:var(--dsw-alias-label-secondary);margin:4px 0 0;font-size:13px;line-height:20px}.DGiSta_toolbar{justify-content:flex-end;align-items:center;gap:16px;display:flex}.DGiSta_iconButton{width:28px;height:28px;color:var(--dsw-alias-label-caption);cursor:pointer;background:0 0;border:0;border-radius:28px;justify-content:center;align-items:center;display:inline-flex}.DGiSta_iconButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.DGiSta_iconButton:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:1px}.DGiSta_iconWrap{display:inline-flex}.DGiSta_button{border:.5px solid var(--dsw-alias-border-l3);height:32px;color:var(--dsw-alias-label-primary);cursor:pointer;background:0 0;border-radius:8px;padding:0 12px;font-size:13px}.DGiSta_button:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}.DGiSta_button:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:1px}.DGiSta_search{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l3);width:100%;height:36px;color:var(--dsw-alias-label-primary);background:0 0;border-radius:10px;padding:0 12px;font-size:13px}.DGiSta_search::placeholder{color:var(--dsw-alias-label-tertiary)}.DGiSta_group{margin-top:32px}.DGiSta_groupTitle{align-items:baseline;gap:8px;margin:0 0 4px;font-size:15px;font-weight:500;line-height:22px;display:flex}.DGiSta_groupCount{color:var(--dsw-alias-label-tertiary);font-size:13px;font-weight:400}.DGiSta_groupHint{color:var(--dsw-alias-label-caption);font-size:12px;font-weight:400}.DGiSta_cards{margin:0;padding:0;list-style:none}.DGiSta_card{border-radius:12px;min-width:0;margin:0 -8px}.DGiSta_card:hover{background:var(--dsw-alias-interactive-bg-hover)}.DGiSta_cardHead{align-items:center;gap:14px;padding:8px;display:flex}.DGiSta_cardIcon{border:.5px solid var(--dsw-alias-border-l3);width:48px;height:48px;color:var(--dsw-alias-label-secondary);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.DGiSta_cardMain{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.DGiSta_cardTitle{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;line-height:20px;overflow:hidden}.DGiSta_cardDesc{color:var(--dsw-alias-label-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:18px;display:-webkit-box;overflow:hidden}.DGiSta_cardWhenToUse{color:var(--dsw-alias-label-caption);font-size:12px;line-height:18px}.DGiSta_cardMarks{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.DGiSta_mark{border:.5px solid var(--dsw-alias-border-l3);color:var(--dsw-alias-label-tertiary);border-radius:4px;padding:1px 6px;font-size:11px;line-height:16px}.DGiSta_markOn{border-color:var(--dsw-alias-state-business-primary);color:var(--dsw-alias-state-business-primary)}.DGiSta_markOff{border-color:var(--dsw-alias-border-l4);color:var(--dsw-alias-label-caption)}.DGiSta_markDanger{border-color:var(--dsw-alias-state-error-primary);color:var(--dsw-alias-state-error-primary)}.DGiSta_cardEnd{flex:none;align-items:center;gap:8px;display:flex}.DGiSta_switch{background:var(--dsw-alias-border-l3);cursor:pointer;border:none;border-radius:10px;width:36px;height:20px;transition:background .12s;position:relative}.DGiSta_switch:focus-visible{outline:2px solid var(--dsw-alias-brand-primary);outline-offset:1px}.DGiSta_switchOn{background:var(--dsw-alias-state-success-primary)}.DGiSta_switch:after{content:\"\";background:var(--dsw-alias-bg-layer-1);border-radius:50%;width:16px;height:16px;transition:transform .12s;position:absolute;top:2px;left:2px}.DGiSta_switchOn:after{transform:translate(16px)}.DGiSta_form{flex-direction:column;gap:12px;display:flex}.DGiSta_field{flex-direction:column;gap:4px;display:flex}.DGiSta_fieldLabel{color:var(--dsw-alias-label-secondary);font-size:12px;line-height:18px}.DGiSta_input{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l3);height:32px;color:var(--dsw-alias-label-primary);background:0 0;border-radius:8px;padding:0 10px;font-size:13px}.DGiSta_textarea{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l3);min-height:80px;color:var(--dsw-alias-label-primary);font-family:var(--dsw-font-markdown-code-block-small);resize:vertical;background:0 0;border-radius:8px;padding:8px 10px;font-size:12px}.DGiSta_status{text-align:center;color:var(--dsw-alias-label-tertiary);padding:32px 0;font-size:13px}.DGiSta_statusError{color:var(--dsw-alias-state-error-primary)}";
12
12
  const tagId = "@sparkelf/dsh-client-ui-skill-center/SkillCenterPage.module.css";
13
13
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
14
14
  const tag = document.createElement("style");
@@ -32,11 +32,12 @@ window.__ModuleLoader__.load({
32
32
  "field": "DGiSta_field",
33
33
  "fieldLabel": "DGiSta_fieldLabel",
34
34
  "form": "DGiSta_form",
35
- "formActions": "DGiSta_formActions",
36
35
  "group": "DGiSta_group",
37
36
  "groupCount": "DGiSta_groupCount",
38
37
  "groupHint": "DGiSta_groupHint",
39
38
  "groupTitle": "DGiSta_groupTitle",
39
+ "iconButton": "DGiSta_iconButton",
40
+ "iconWrap": "DGiSta_iconWrap",
40
41
  "input": "DGiSta_input",
41
42
  "mark": "DGiSta_mark",
42
43
  "markDanger": "DGiSta_markDanger",
@@ -46,7 +47,6 @@ window.__ModuleLoader__.load({
46
47
  "pageHead": "DGiSta_pageHead",
47
48
  "pageIntro": "DGiSta_pageIntro",
48
49
  "pageTitle": "DGiSta_pageTitle",
49
- "primaryButton": "DGiSta_primaryButton",
50
50
  "search": "DGiSta_search",
51
51
  "status": "DGiSta_status",
52
52
  "statusError": "DGiSta_statusError",
@@ -336,7 +336,7 @@ window.__ModuleLoader__.load({
336
336
  return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
337
337
  className: SkillCenterPage_module_css_default.page,
338
338
  children: [
339
- /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
339
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("header", {
340
340
  className: SkillCenterPage_module_css_default.pageHead,
341
341
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("h1", {
342
342
  className: SkillCenterPage_module_css_default.pageTitle,
@@ -348,14 +348,21 @@ window.__ModuleLoader__.load({
348
348
  className: SkillCenterPage_module_css_default.toolbar,
349
349
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
350
350
  type: "button",
351
- className: SkillCenterPage_module_css_default.button,
351
+ className: SkillCenterPage_module_css_default.iconButton,
352
+ "aria-label": t("action.refresh"),
353
+ title: t("action.refresh"),
352
354
  onClick: () => {
353
355
  load();
354
356
  },
355
- children: t("action.refresh")
356
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
357
- type: "button",
358
- className: SkillCenterPage_module_css_default.primaryButton,
357
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
358
+ className: SkillCenterPage_module_css_default.iconWrap,
359
+ "aria-hidden": "true",
360
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconRefreshOutline16, {})
361
+ })
362
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
363
+ variant: "primary",
364
+ size: "sm",
365
+ icon: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconPlusOutline16, { size: 13 }),
359
366
  onClick: () => {
360
367
  setCreating((v) => !v);
361
368
  },
@@ -363,81 +370,85 @@ window.__ModuleLoader__.load({
363
370
  })]
364
371
  })]
365
372
  }),
366
- creating ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
367
- className: SkillCenterPage_module_css_default.form,
368
- children: [
369
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DraftField, {
370
- label: t("create.name"),
371
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
372
- className: SkillCenterPage_module_css_default.input,
373
- value: draft.name,
374
- onChange: set("name")
375
- })
376
- }),
377
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DraftField, {
378
- label: t("create.description"),
379
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
380
- className: SkillCenterPage_module_css_default.input,
381
- value: draft.description,
382
- onChange: set("description")
383
- })
384
- }),
385
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DraftField, {
386
- label: t("create.whenToUse"),
387
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
388
- className: SkillCenterPage_module_css_default.input,
389
- value: draft.whenToUse,
390
- onChange: set("whenToUse")
391
- })
392
- }),
393
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DraftField, {
394
- label: t("create.content"),
395
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("textarea", {
396
- className: SkillCenterPage_module_css_default.textarea,
397
- value: draft.content,
398
- onChange: set("content")
399
- })
400
- }),
401
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DraftField, {
402
- label: t("create.root"),
403
- children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("select", {
404
- className: SkillCenterPage_module_css_default.input,
405
- value: draft.root,
406
- onChange: (e) => {
407
- setDraft((d) => ({
408
- ...d,
409
- root: e.target.value === "project" ? "project" : "user"
410
- }));
411
- },
412
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
413
- value: "user",
414
- children: t("create.rootUser")
415
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
416
- value: "project",
417
- children: t("create.rootProject")
418
- })]
373
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Modal, {
374
+ open: creating,
375
+ onClose: () => {
376
+ setCreating(false);
377
+ },
378
+ title: t("create.title"),
379
+ closeLabel: t("action.cancel"),
380
+ footer: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
381
+ variant: "outline",
382
+ autoFocus: true,
383
+ onClick: () => {
384
+ setCreating(false);
385
+ },
386
+ children: t("action.cancel")
387
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
388
+ variant: "primary",
389
+ onClick: () => {
390
+ submit();
391
+ },
392
+ children: t("action.confirm")
393
+ })] }),
394
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
395
+ className: SkillCenterPage_module_css_default.form,
396
+ children: [
397
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DraftField, {
398
+ label: t("create.name"),
399
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
400
+ className: SkillCenterPage_module_css_default.input,
401
+ value: draft.name,
402
+ onChange: set("name")
403
+ })
404
+ }),
405
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DraftField, {
406
+ label: t("create.description"),
407
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
408
+ className: SkillCenterPage_module_css_default.input,
409
+ value: draft.description,
410
+ onChange: set("description")
411
+ })
412
+ }),
413
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DraftField, {
414
+ label: t("create.whenToUse"),
415
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
416
+ className: SkillCenterPage_module_css_default.input,
417
+ value: draft.whenToUse,
418
+ onChange: set("whenToUse")
419
+ })
420
+ }),
421
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DraftField, {
422
+ label: t("create.content"),
423
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("textarea", {
424
+ className: SkillCenterPage_module_css_default.textarea,
425
+ value: draft.content,
426
+ onChange: set("content")
427
+ })
428
+ }),
429
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DraftField, {
430
+ label: t("create.root"),
431
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("select", {
432
+ className: SkillCenterPage_module_css_default.input,
433
+ value: draft.root,
434
+ onChange: (e) => {
435
+ setDraft((d) => ({
436
+ ...d,
437
+ root: e.target.value === "project" ? "project" : "user"
438
+ }));
439
+ },
440
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
441
+ value: "user",
442
+ children: t("create.rootUser")
443
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
444
+ value: "project",
445
+ children: t("create.rootProject")
446
+ })]
447
+ })
419
448
  })
420
- }),
421
- /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
422
- className: SkillCenterPage_module_css_default.formActions,
423
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
424
- type: "button",
425
- className: SkillCenterPage_module_css_default.button,
426
- onClick: () => {
427
- setCreating(false);
428
- },
429
- children: t("action.cancel")
430
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
431
- type: "button",
432
- className: SkillCenterPage_module_css_default.primaryButton,
433
- onClick: () => {
434
- submit();
435
- },
436
- children: t("action.confirm")
437
- })]
438
- })
439
- ]
440
- }) : null,
449
+ ]
450
+ })
451
+ }),
441
452
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
442
453
  className: SkillCenterPage_module_css_default.search,
443
454
  placeholder: t("search.placeholder"),
package/package.json CHANGED
@@ -61,5 +61,5 @@
61
61
  },
62
62
  "type": "module",
63
63
  "types": "lib/types/index.d.ts",
64
- "version": "0.2.0-rc.10"
64
+ "version": "0.2.0-rc.12"
65
65
  }