@jingyi0605/codingns4dsh 0.2.1-rc.3 → 0.2.1-rc.5
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.en.md +3 -3
- package/README.md +3 -3
- package/data/build/dist/client/bundle.js +1838 -223
- package/data/build/dist/client/bundle.js.map +1 -1
- package/data/build/dist/client/cli-session-config-cache.d.ts.map +1 -1
- package/data/build/dist/client/cli-session-config-cache.js +9 -3
- package/data/build/dist/client/cli-session-config-cache.js.map +1 -1
- package/data/build/dist/client/client.native-workspace-store.js +7 -1
- package/data/build/dist/client/client.native-workspace-store.js.map +1 -1
- package/data/build/dist/client/client.transport.js +276 -60
- package/data/build/dist/client/client.transport.js.map +1 -1
- package/data/build/dist/client/desktop-assistant.js +274 -58
- package/data/build/dist/client/features/cli-adapters.d.ts.map +1 -1
- package/data/build/dist/client/features/cli-adapters.js +13 -1
- package/data/build/dist/client/features/cli-adapters.js.map +1 -1
- package/data/build/dist/client/features/index.d.ts.map +1 -1
- package/data/build/dist/client/features/index.js +2 -0
- package/data/build/dist/client/features/index.js.map +1 -1
- package/data/build/dist/client/features/magpie-management-controls.d.ts.map +1 -1
- package/data/build/dist/client/features/magpie-management-controls.js +45 -10
- package/data/build/dist/client/features/magpie-management-controls.js.map +1 -1
- package/data/build/dist/client/features/magpie-management-page.d.ts +6 -1
- package/data/build/dist/client/features/magpie-management-page.d.ts.map +1 -1
- package/data/build/dist/client/features/magpie-management-page.js +109 -37
- package/data/build/dist/client/features/magpie-management-page.js.map +1 -1
- package/data/build/dist/client/features/magpie-management.d.ts.map +1 -1
- package/data/build/dist/client/features/magpie-management.js +3 -2
- package/data/build/dist/client/features/magpie-management.js.map +1 -1
- package/data/build/dist/client/features/plugin-update.d.ts +3 -0
- package/data/build/dist/client/features/plugin-update.d.ts.map +1 -0
- package/data/build/dist/client/features/plugin-update.js +8 -0
- package/data/build/dist/client/features/plugin-update.js.map +1 -0
- package/data/build/dist/client/features/types.d.ts +3 -0
- package/data/build/dist/client/features/types.d.ts.map +1 -1
- package/data/build/dist/client/locale.d.ts.map +1 -1
- package/data/build/dist/client/locale.js +3 -0
- package/data/build/dist/client/locale.js.map +1 -1
- package/data/build/dist/client/locales/magpie.d.ts.map +1 -1
- package/data/build/dist/client/locales/magpie.js +92 -12
- package/data/build/dist/client/locales/magpie.js.map +1 -1
- package/data/build/dist/client/locales/pluginUpdate.d.ts +3 -0
- package/data/build/dist/client/locales/pluginUpdate.d.ts.map +1 -0
- package/data/build/dist/client/locales/pluginUpdate.js +131 -0
- package/data/build/dist/client/locales/pluginUpdate.js.map +1 -0
- package/data/build/dist/client/locales/usage.d.ts.map +1 -1
- package/data/build/dist/client/locales/usage.js +2 -0
- package/data/build/dist/client/locales/usage.js.map +1 -1
- package/data/build/dist/client/magpie-context-meter.d.ts +18 -0
- package/data/build/dist/client/magpie-context-meter.d.ts.map +1 -0
- package/data/build/dist/client/magpie-context-meter.js +274 -0
- package/data/build/dist/client/magpie-context-meter.js.map +1 -0
- package/data/build/dist/client/magpie-context-store.d.ts +32 -0
- package/data/build/dist/client/magpie-context-store.d.ts.map +1 -0
- package/data/build/dist/client/magpie-context-store.js +165 -0
- package/data/build/dist/client/magpie-context-store.js.map +1 -0
- package/data/build/dist/client/settings-promo-styles.d.ts +5 -0
- package/data/build/dist/client/settings-promo-styles.d.ts.map +1 -1
- package/data/build/dist/client/settings-promo-styles.js +15 -2
- package/data/build/dist/client/settings-promo-styles.js.map +1 -1
- package/data/build/dist/client/settings-promo.d.ts +4 -2
- package/data/build/dist/client/settings-promo.d.ts.map +1 -1
- package/data/build/dist/client/settings-promo.js +4 -4
- package/data/build/dist/client/settings-promo.js.map +1 -1
- package/data/build/dist/client/settings-section.d.ts +2 -3
- package/data/build/dist/client/settings-section.d.ts.map +1 -1
- package/data/build/dist/client/settings-section.js +7 -7
- package/data/build/dist/client/settings-section.js.map +1 -1
- package/data/build/dist/client/settings-update.d.ts +8 -0
- package/data/build/dist/client/settings-update.d.ts.map +1 -0
- package/data/build/dist/client/settings-update.js +57 -0
- package/data/build/dist/client/settings-update.js.map +1 -0
- package/data/build/dist/client/subscription-slot.d.ts +3 -2
- package/data/build/dist/client/subscription-slot.d.ts.map +1 -1
- package/data/build/dist/client/subscription-slot.js +115 -43
- package/data/build/dist/client/subscription-slot.js.map +1 -1
- package/data/build/dist/client/update-panel-styles.d.ts +29 -0
- package/data/build/dist/client/update-panel-styles.d.ts.map +1 -0
- package/data/build/dist/client/update-panel-styles.js +69 -0
- package/data/build/dist/client/update-panel-styles.js.map +1 -0
- package/data/build/dist/client/update-panel.d.ts +7 -0
- package/data/build/dist/client/update-panel.d.ts.map +1 -0
- package/data/build/dist/client/update-panel.js +52 -0
- package/data/build/dist/client/update-panel.js.map +1 -0
- package/data/build/dist/client/update-store.d.ts +43 -0
- package/data/build/dist/client/update-store.d.ts.map +1 -0
- package/data/build/dist/client/update-store.js +207 -0
- package/data/build/dist/client/update-store.js.map +1 -0
- package/data/build/dist/dsh-capabilities/client/plugin-reload-adapter.d.ts +4 -0
- package/data/build/dist/dsh-capabilities/client/plugin-reload-adapter.d.ts.map +1 -0
- package/data/build/dist/dsh-capabilities/client/plugin-reload-adapter.js +6 -0
- package/data/build/dist/dsh-capabilities/client/plugin-reload-adapter.js.map +1 -0
- package/data/build/dist/dsh-capabilities/client/session-performance-adapter.d.ts +15 -1
- package/data/build/dist/dsh-capabilities/client/session-performance-adapter.d.ts.map +1 -1
- package/data/build/dist/dsh-capabilities/client/session-performance-adapter.js +53 -21
- package/data/build/dist/dsh-capabilities/client/session-performance-adapter.js.map +1 -1
- package/data/build/dist/dsh-capabilities/host/plugin-update-adapter.d.ts +22 -0
- package/data/build/dist/dsh-capabilities/host/plugin-update-adapter.d.ts.map +1 -0
- package/data/build/dist/dsh-capabilities/host/plugin-update-adapter.js +71 -0
- package/data/build/dist/dsh-capabilities/host/plugin-update-adapter.js.map +1 -0
- package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.d.ts +4 -0
- package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.d.ts.map +1 -1
- package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.js +16 -1
- package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.js.map +1 -1
- package/data/build/dist/dsh-capabilities/matrix.d.ts.map +1 -1
- package/data/build/dist/dsh-capabilities/matrix.js +4 -0
- package/data/build/dist/dsh-capabilities/matrix.js.map +1 -1
- package/data/build/dist/dsh-capabilities/routes.d.ts.map +1 -1
- package/data/build/dist/dsh-capabilities/routes.js +10 -0
- package/data/build/dist/dsh-capabilities/routes.js.map +1 -1
- package/data/build/dist/dsh-capabilities/types.d.ts +1 -1
- package/data/build/dist/dsh-capabilities/types.d.ts.map +1 -1
- package/data/build/dist/dsh-capabilities/types.js.map +1 -1
- package/data/build/dist/host/cli-adapters/feature.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/feature.js +230 -34
- package/data/build/dist/host/cli-adapters/feature.js.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-context.d.ts +9 -0
- package/data/build/dist/host/cli-adapters/magpie-context.d.ts.map +1 -0
- package/data/build/dist/host/cli-adapters/magpie-context.js +128 -0
- package/data/build/dist/host/cli-adapters/magpie-context.js.map +1 -0
- package/data/build/dist/host/cli-adapters/magpie-detection.d.ts +3 -3
- package/data/build/dist/host/cli-adapters/magpie-detection.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-detection.js +18 -4
- package/data/build/dist/host/cli-adapters/magpie-detection.js.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-management.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-management.js +95 -20
- package/data/build/dist/host/cli-adapters/magpie-management.js.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-update.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-update.js +14 -4
- package/data/build/dist/host/cli-adapters/magpie-update.js.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-usage.d.ts +17 -3
- package/data/build/dist/host/cli-adapters/magpie-usage.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-usage.js +382 -92
- package/data/build/dist/host/cli-adapters/magpie-usage.js.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-web.d.ts +15 -0
- package/data/build/dist/host/cli-adapters/magpie-web.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-web.js +100 -22
- package/data/build/dist/host/cli-adapters/magpie-web.js.map +1 -1
- package/data/build/dist/host/cli-adapters/process-utils.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/process-utils.js +4 -0
- package/data/build/dist/host/cli-adapters/process-utils.js.map +1 -1
- package/data/build/dist/host/cli-adapters/registry.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/registry.js +6 -5
- package/data/build/dist/host/cli-adapters/registry.js.map +1 -1
- package/data/build/dist/host/cli-adapters/session-performance-projection.d.ts +6 -0
- package/data/build/dist/host/cli-adapters/session-performance-projection.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/session-performance-projection.js +25 -0
- package/data/build/dist/host/cli-adapters/session-performance-projection.js.map +1 -1
- package/data/build/dist/host/features/index.d.ts.map +1 -1
- package/data/build/dist/host/features/index.js +2 -0
- package/data/build/dist/host/features/index.js.map +1 -1
- package/data/build/dist/host/features/plugin-update.d.ts +6 -0
- package/data/build/dist/host/features/plugin-update.d.ts.map +1 -0
- package/data/build/dist/host/features/plugin-update.js +45 -0
- package/data/build/dist/host/features/plugin-update.js.map +1 -0
- package/data/build/dist/host/index.d.ts.map +1 -1
- package/data/build/dist/host/index.js +31 -1
- package/data/build/dist/host/index.js.map +1 -1
- package/data/build/dist/host/native-session-bridge.d.ts +8 -0
- package/data/build/dist/host/native-session-bridge.d.ts.map +1 -1
- package/data/build/dist/host/native-session-bridge.js +43 -0
- package/data/build/dist/host/native-session-bridge.js.map +1 -1
- package/data/build/dist/host/rpc.d.ts +4 -1
- package/data/build/dist/host/rpc.d.ts.map +1 -1
- package/data/build/dist/host/rpc.js +33 -7
- package/data/build/dist/host/rpc.js.map +1 -1
- package/data/build/dist/host/session-handle-eviction.d.ts +29 -0
- package/data/build/dist/host/session-handle-eviction.d.ts.map +1 -0
- package/data/build/dist/host/session-handle-eviction.js +413 -0
- package/data/build/dist/host/session-handle-eviction.js.map +1 -0
- package/data/build/dist/host/settings.d.ts.map +1 -1
- package/data/build/dist/host/settings.js +12 -1
- package/data/build/dist/host/settings.js.map +1 -1
- package/data/build/dist/host/update/application-result.d.ts +3 -0
- package/data/build/dist/host/update/application-result.d.ts.map +1 -0
- package/data/build/dist/host/update/application-result.js +13 -0
- package/data/build/dist/host/update/application-result.js.map +1 -0
- package/data/build/dist/host/update/http.d.ts +7 -0
- package/data/build/dist/host/update/http.d.ts.map +1 -0
- package/data/build/dist/host/update/http.js +55 -0
- package/data/build/dist/host/update/http.js.map +1 -0
- package/data/build/dist/host/update/metadata.d.ts +14 -0
- package/data/build/dist/host/update/metadata.d.ts.map +1 -0
- package/data/build/dist/host/update/metadata.js +75 -0
- package/data/build/dist/host/update/metadata.js.map +1 -0
- package/data/build/dist/host/update/release-notes.d.ts +6 -0
- package/data/build/dist/host/update/release-notes.d.ts.map +1 -0
- package/data/build/dist/host/update/release-notes.js +52 -0
- package/data/build/dist/host/update/release-notes.js.map +1 -0
- package/data/build/dist/host/update/service.d.ts +25 -0
- package/data/build/dist/host/update/service.d.ts.map +1 -0
- package/data/build/dist/host/update/service.js +209 -0
- package/data/build/dist/host/update/service.js.map +1 -0
- package/data/build/dist/shared/contracts/config.d.ts +17 -0
- package/data/build/dist/shared/contracts/config.d.ts.map +1 -1
- package/data/build/dist/shared/contracts/config.js +8 -0
- package/data/build/dist/shared/contracts/config.js.map +1 -1
- package/data/build/dist/shared/contracts/magpie-management.d.ts +59 -0
- package/data/build/dist/shared/contracts/magpie-management.d.ts.map +1 -1
- package/data/build/dist/shared/contracts/plugin-update.d.ts +93 -0
- package/data/build/dist/shared/contracts/plugin-update.d.ts.map +1 -0
- package/data/build/dist/shared/contracts/plugin-update.js +128 -0
- package/data/build/dist/shared/contracts/plugin-update.js.map +1 -0
- package/data/build/dist/shared/contracts/subscription.d.ts +5 -0
- package/data/build/dist/shared/contracts/subscription.d.ts.map +1 -1
- package/data/build/dist/shared/contracts/subscription.js.map +1 -1
- package/data/build/dist/shared/contracts/version.d.ts +1 -1
- package/data/build/dist/shared/contracts/version.js +1 -1
- package/data/build/dist/shared/index.d.ts +2 -1
- package/data/build/dist/shared/index.d.ts.map +1 -1
- package/data/build/dist/shared/index.js +1 -0
- package/data/build/dist/shared/index.js.map +1 -1
- package/data/build/dist/shared/magpie-provider-id.d.ts +12 -0
- package/data/build/dist/shared/magpie-provider-id.d.ts.map +1 -0
- package/data/build/dist/shared/magpie-provider-id.js +16 -0
- package/data/build/dist/shared/magpie-provider-id.js.map +1 -0
- package/package.json +2 -1
- package/profile/README.md +2 -2
- package/profile/package.json +2 -2
- package/profile/version.json +1 -1
- package/version.json +1 -1
|
@@ -9,11 +9,16 @@
|
|
|
9
9
|
/** 推广条的元素类名;结构由组件决定,视觉由本模块的样式表决定。 */
|
|
10
10
|
export declare const settingsPromoClass: {
|
|
11
11
|
readonly root: "codingns4dsh-settings-promo";
|
|
12
|
+
readonly row: "codingns4dsh-settings-promo-row";
|
|
12
13
|
readonly brand: "codingns4dsh-settings-promo-brand";
|
|
13
14
|
readonly headline: "codingns4dsh-settings-promo-headline";
|
|
14
15
|
readonly logo: "codingns4dsh-settings-promo-logo";
|
|
15
16
|
readonly title: "codingns4dsh-settings-promo-title";
|
|
16
17
|
readonly version: "codingns4dsh-settings-promo-version";
|
|
18
|
+
readonly versionControl: "codingns4dsh-settings-promo-version-control";
|
|
19
|
+
readonly badgeSlot: "codingns4dsh-settings-promo-badge-slot";
|
|
20
|
+
readonly badge: "codingns4dsh-settings-promo-update-badge";
|
|
21
|
+
readonly details: "codingns4dsh-settings-promo-update-details";
|
|
17
22
|
readonly text: "codingns4dsh-settings-promo-text";
|
|
18
23
|
readonly hand: "codingns4dsh-settings-promo-hand";
|
|
19
24
|
readonly action: "codingns4dsh-settings-promo-action";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-promo-styles.d.ts","sourceRoot":"","sources":["../../../../src/client/settings-promo-styles.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,qCAAqC;AACrC,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"settings-promo-styles.d.ts","sourceRoot":"","sources":["../../../../src/client/settings-promo-styles.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,qCAAqC;AACrC,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;CAerB,CAAA;AAEV;;;;;GAKG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,IAAI,CAUvD"}
|
|
@@ -10,11 +10,16 @@ const STYLE_ID = 'codingns4dsh-settings-promo';
|
|
|
10
10
|
/** 推广条的元素类名;结构由组件决定,视觉由本模块的样式表决定。 */
|
|
11
11
|
export const settingsPromoClass = {
|
|
12
12
|
root: 'codingns4dsh-settings-promo',
|
|
13
|
+
row: 'codingns4dsh-settings-promo-row',
|
|
13
14
|
brand: 'codingns4dsh-settings-promo-brand',
|
|
14
15
|
headline: 'codingns4dsh-settings-promo-headline',
|
|
15
16
|
logo: 'codingns4dsh-settings-promo-logo',
|
|
16
17
|
title: 'codingns4dsh-settings-promo-title',
|
|
17
18
|
version: 'codingns4dsh-settings-promo-version',
|
|
19
|
+
versionControl: 'codingns4dsh-settings-promo-version-control',
|
|
20
|
+
badgeSlot: 'codingns4dsh-settings-promo-badge-slot',
|
|
21
|
+
badge: 'codingns4dsh-settings-promo-update-badge',
|
|
22
|
+
details: 'codingns4dsh-settings-promo-update-details',
|
|
18
23
|
text: 'codingns4dsh-settings-promo-text',
|
|
19
24
|
hand: 'codingns4dsh-settings-promo-hand',
|
|
20
25
|
action: 'codingns4dsh-settings-promo-action',
|
|
@@ -40,19 +45,27 @@ export function installSettingsPromoStyles() {
|
|
|
40
45
|
}
|
|
41
46
|
const focusRing = 'outline:var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline-offset:2px';
|
|
42
47
|
const settingsPromoCss = `
|
|
43
|
-
.${settingsPromoClass.root}{box-sizing:border-box;display:flex;align-items:
|
|
48
|
+
.${settingsPromoClass.root}{box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%;padding:10px 14px;border:.5px solid var(--dsw-alias-border-l2);border-radius:var(--dsw-radius-md);background:var(--dsw-alias-bg-layer-1);box-shadow:var(--dsw-elevation-soft)}
|
|
49
|
+
.${settingsPromoClass.row}{display:flex;flex-wrap:nowrap;align-items:center;gap:12px;min-width:0;width:100%}
|
|
44
50
|
.${settingsPromoClass.brand}{display:flex;flex-direction:column;gap:6px;flex:0 0 auto;min-width:0}
|
|
45
51
|
.${settingsPromoClass.headline}{display:flex;align-items:center;gap:8px;min-width:0}
|
|
46
52
|
.${settingsPromoClass.logo}{flex:0 0 auto;color:var(--dsw-alias-button-info-fill)}
|
|
47
53
|
.${settingsPromoClass.title}{margin:0;color:var(--dsw-alias-label-primary);font-size:16px;line-height:1.25;font-weight:650;white-space:nowrap}
|
|
48
54
|
.${settingsPromoClass.version}{align-self:flex-start;box-sizing:border-box;padding:1px 8px;border:.5px solid var(--dsw-alias-border-l2);border-radius:999px;color:var(--dsw-alias-label-secondary);background:var(--dsw-specific-input-major);font-size:11px;line-height:16px;white-space:nowrap}
|
|
55
|
+
.${settingsPromoClass.versionControl}{position:relative;display:inline-flex;align-items:center;align-self:flex-start;min-width:0}
|
|
56
|
+
button.${settingsPromoClass.version}{appearance:none;flex:0 1 auto;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;font-family:inherit;cursor:pointer}
|
|
57
|
+
button.${settingsPromoClass.version}:hover{color:var(--dsw-alias-button-info-fill);border-color:var(--dsw-alias-button-info-fill)}
|
|
58
|
+
button.${settingsPromoClass.version}:focus-visible{${focusRing}}
|
|
59
|
+
.${settingsPromoClass.badgeSlot}{position:absolute;left:calc(100% + 4px);top:50%;display:inline-flex;align-items:center;width:42px;height:16px;transform:translateY(-50%);pointer-events:none}
|
|
60
|
+
.${settingsPromoClass.badge}{box-sizing:border-box;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px;border-radius:999px;color:var(--dsw-alias-button-info-fill);background:color-mix(in srgb,var(--dsw-alias-button-info-fill) 12%,transparent);font-size:10px;line-height:14px;font-weight:600}
|
|
61
|
+
.${settingsPromoClass.details}{align-self:stretch;box-sizing:border-box;width:100%;min-width:0;padding-top:12px;border-top:.5px solid var(--dsw-alias-border-l2)}
|
|
49
62
|
.${settingsPromoClass.text}{flex:1 1 auto;min-width:0;margin:0;color:var(--dsw-alias-button-info-fill);font-size:12px;line-height:1.5;text-align:right}
|
|
50
63
|
.${settingsPromoClass.hand}{margin-left:4px}
|
|
51
64
|
.${settingsPromoClass.action}{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;min-height:28px;padding:4px 12px;border:.5px solid var(--dsw-alias-button-info-fill);border-radius:var(--dsw-radius-sm);color:var(--dsw-alias-button-info-fill);background:color-mix(in srgb,var(--dsw-alias-button-info-fill) 10%,transparent);font-size:12px;line-height:1.3;font-weight:600;text-decoration:none;cursor:pointer;transition:background 160ms ease,color 160ms ease,border-color 160ms ease}
|
|
52
65
|
.${settingsPromoClass.action}:hover{background:var(--dsw-alias-button-info-hover);border-color:var(--dsw-alias-button-info-hover);color:var(--dsw-alias-label-primary-foreground)}
|
|
53
66
|
.${settingsPromoClass.action}:active{background:var(--dsw-alias-button-info-fill);border-color:var(--dsw-alias-button-info-fill);color:var(--dsw-alias-label-primary-foreground)}
|
|
54
67
|
.${settingsPromoClass.action}:focus-visible{${focusRing}}
|
|
55
|
-
@media (max-width:640px){.${settingsPromoClass.root}{flex-direction:column;align-items:center;gap:10px
|
|
68
|
+
@media (max-width:640px){.${settingsPromoClass.root}{gap:10px;padding:12px}.${settingsPromoClass.row}{flex-direction:column;align-items:center;gap:10px}.${settingsPromoClass.brand}{align-items:center}.${settingsPromoClass.version}{align-self:center}.${settingsPromoClass.versionControl}{align-self:center}.${settingsPromoClass.versionControl} button{flex-shrink:0}}
|
|
56
69
|
@media (prefers-reduced-motion:reduce){.${settingsPromoClass.action}{transition:none}}
|
|
57
70
|
`;
|
|
58
71
|
//# sourceMappingURL=settings-promo-styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-promo-styles.js","sourceRoot":"","sources":["../../../../src/client/settings-promo-styles.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,QAAQ,GAAG,6BAA6B,CAAA;AAE9C,qCAAqC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,6BAA6B;IACnC,KAAK,EAAE,mCAAmC;IAC1C,QAAQ,EAAE,sCAAsC;IAChD,IAAI,EAAE,kCAAkC;IACxC,KAAK,EAAE,mCAAmC;IAC1C,OAAO,EAAE,qCAAqC;IAC9C,IAAI,EAAE,kCAAkC;IACxC,IAAI,EAAE,kCAAkC;IACxC,MAAM,EAAE,oCAAoC;CACpC,CAAA;AAEV;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B;IACxC,IAAI,OAAO,QAAQ,KAAK,WAAW;QAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAA;IAC3D,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAmB,0BAA0B,QAAQ,IAAI,CAAC,CAAA;IACjG,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAA;IAC7C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC7C,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,cAAc,CAAA;IACrC,KAAK,CAAC,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAA;IAClC,KAAK,CAAC,WAAW,GAAG,gBAAgB,CAAA;IACpC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IAChC,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAA;AAC7B,CAAC;AAED,MAAM,SAAS,GAAG,kIAAkI,CAAA;AAEpJ,MAAM,gBAAgB,GAAG;GACtB,kBAAkB,CAAC,IAAI;GACvB,kBAAkB,CAAC,KAAK;GACxB,kBAAkB,CAAC,QAAQ;GAC3B,kBAAkB,CAAC,IAAI;GACvB,kBAAkB,CAAC,KAAK;GACxB,kBAAkB,CAAC,OAAO;GAC1B,kBAAkB,CAAC,IAAI;GACvB,kBAAkB,CAAC,IAAI;GACvB,kBAAkB,CAAC,MAAM;GACzB,kBAAkB,CAAC,MAAM;GACzB,kBAAkB,CAAC,MAAM;GACzB,kBAAkB,CAAC,MAAM,kBAAkB,SAAS;4BAC3B,kBAAkB,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"settings-promo-styles.js","sourceRoot":"","sources":["../../../../src/client/settings-promo-styles.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,QAAQ,GAAG,6BAA6B,CAAA;AAE9C,qCAAqC;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,6BAA6B;IACnC,GAAG,EAAE,iCAAiC;IACtC,KAAK,EAAE,mCAAmC;IAC1C,QAAQ,EAAE,sCAAsC;IAChD,IAAI,EAAE,kCAAkC;IACxC,KAAK,EAAE,mCAAmC;IAC1C,OAAO,EAAE,qCAAqC;IAC9C,cAAc,EAAE,6CAA6C;IAC7D,SAAS,EAAE,wCAAwC;IACnD,KAAK,EAAE,0CAA0C;IACjD,OAAO,EAAE,4CAA4C;IACrD,IAAI,EAAE,kCAAkC;IACxC,IAAI,EAAE,kCAAkC;IACxC,MAAM,EAAE,oCAAoC;CACpC,CAAA;AAEV;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B;IACxC,IAAI,OAAO,QAAQ,KAAK,WAAW;QAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAA;IAC3D,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAmB,0BAA0B,QAAQ,IAAI,CAAC,CAAA;IACjG,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAA;IAC7C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC7C,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,cAAc,CAAA;IACrC,KAAK,CAAC,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAA;IAClC,KAAK,CAAC,WAAW,GAAG,gBAAgB,CAAA;IACpC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IAChC,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAA;AAC7B,CAAC;AAED,MAAM,SAAS,GAAG,kIAAkI,CAAA;AAEpJ,MAAM,gBAAgB,GAAG;GACtB,kBAAkB,CAAC,IAAI;GACvB,kBAAkB,CAAC,GAAG;GACtB,kBAAkB,CAAC,KAAK;GACxB,kBAAkB,CAAC,QAAQ;GAC3B,kBAAkB,CAAC,IAAI;GACvB,kBAAkB,CAAC,KAAK;GACxB,kBAAkB,CAAC,OAAO;GAC1B,kBAAkB,CAAC,cAAc;SAC3B,kBAAkB,CAAC,OAAO;SAC1B,kBAAkB,CAAC,OAAO;SAC1B,kBAAkB,CAAC,OAAO,kBAAkB,SAAS;GAC3D,kBAAkB,CAAC,SAAS;GAC5B,kBAAkB,CAAC,KAAK;GACxB,kBAAkB,CAAC,OAAO;GAC1B,kBAAkB,CAAC,IAAI;GACvB,kBAAkB,CAAC,IAAI;GACvB,kBAAkB,CAAC,MAAM;GACzB,kBAAkB,CAAC,MAAM;GACzB,kBAAkB,CAAC,MAAM;GACzB,kBAAkB,CAAC,MAAM,kBAAkB,SAAS;4BAC3B,kBAAkB,CAAC,IAAI,2BAA2B,kBAAkB,CAAC,GAAG,uDAAuD,kBAAkB,CAAC,KAAK,wBAAwB,kBAAkB,CAAC,OAAO,uBAAuB,kBAAkB,CAAC,cAAc,uBAAuB,kBAAkB,CAAC,cAAc;0CAC3S,kBAAkB,CAAC,MAAM;CAClE,CAAA"}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
import type { ReactElement } from 'react';
|
|
1
|
+
import type { ReactElement, ReactNode } from 'react';
|
|
2
2
|
import { type CodingNsLocale } from './locale.js';
|
|
3
3
|
/** Codingns4DSH 的 GitHub 仓库;设置页的版本信息与推广按钮共用同一个地址。 */
|
|
4
4
|
export declare const CODINGNS_GITHUB_URL = "https://github.com/jingyi0605/Codingns4DSH";
|
|
5
5
|
export interface SettingsPromoProps {
|
|
6
6
|
readonly locale: CodingNsLocale;
|
|
7
|
+
readonly versionControl?: ReactNode;
|
|
8
|
+
readonly children?: ReactNode;
|
|
7
9
|
}
|
|
8
10
|
/**
|
|
9
11
|
* 渲染推广条。
|
|
10
12
|
*
|
|
11
13
|
* @param props.locale - DSH 语言服务;文案由 `codingns` 命名空间提供。
|
|
12
14
|
*/
|
|
13
|
-
export declare function CodingNsSettingsPromo({ locale }: SettingsPromoProps): ReactElement;
|
|
15
|
+
export declare function CodingNsSettingsPromo({ locale, versionControl, children }: SettingsPromoProps): ReactElement;
|
|
14
16
|
//# sourceMappingURL=settings-promo.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-promo.d.ts","sourceRoot":"","sources":["../../../../src/client/settings-promo.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"settings-promo.d.ts","sourceRoot":"","sources":["../../../../src/client/settings-promo.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACpD,OAAO,EAAyB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAA;AAIxE,qDAAqD;AACrD,eAAO,MAAM,mBAAmB,+CAA+C,CAAA;AAE/E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,CAAA;IACnC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAC9B;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,kBAAkB,GAAG,YAAY,CAkC5G"}
|
|
@@ -19,18 +19,18 @@ export const CODINGNS_GITHUB_URL = 'https://github.com/jingyi0605/Codingns4DSH';
|
|
|
19
19
|
*
|
|
20
20
|
* @param props.locale - DSH 语言服务;文案由 `codingns` 命名空间提供。
|
|
21
21
|
*/
|
|
22
|
-
export function CodingNsSettingsPromo({ locale }) {
|
|
22
|
+
export function CodingNsSettingsPromo({ locale, versionControl, children }) {
|
|
23
23
|
const t = useCodingNsTranslator(locale);
|
|
24
24
|
useEffect(() => installSettingsPromoStyles(), []);
|
|
25
|
-
return createElement('aside', { className: settingsPromoClass.root, 'aria-label': t('settings.promo.sectionLabel') }, createElement('div', { className: settingsPromoClass.brand }, createElement('div', { className: settingsPromoClass.headline }, createElement(StarBurstIcon, { className: settingsPromoClass.logo }), createElement('h3', { className: settingsPromoClass.title }, t('common.brand'))), createElement('span', { className: settingsPromoClass.version }, t('settings.promo.version', { version: CODINGNS_VERSION }))), createElement('p', { className: settingsPromoClass.text }, t('settings.promo.starHint'),
|
|
26
|
-
//
|
|
25
|
+
return createElement('aside', { className: settingsPromoClass.root, 'aria-label': t('settings.promo.sectionLabel') }, createElement('div', { className: settingsPromoClass.row }, createElement('div', { className: settingsPromoClass.brand }, createElement('div', { className: settingsPromoClass.headline }, createElement(StarBurstIcon, { className: settingsPromoClass.logo }), createElement('h3', { className: settingsPromoClass.title }, t('common.brand'))), versionControl ?? createElement('span', { className: settingsPromoClass.version }, t('settings.promo.version', { version: CODINGNS_VERSION }))), createElement('p', { className: settingsPromoClass.text }, t('settings.promo.starHint'),
|
|
26
|
+
// The pointer is decorative and is excluded from the accessible text.
|
|
27
27
|
createElement('span', { className: settingsPromoClass.hand, 'aria-hidden': true }, '👉')), createElement('a', {
|
|
28
28
|
className: settingsPromoClass.action,
|
|
29
29
|
href: CODINGNS_GITHUB_URL,
|
|
30
30
|
target: '_blank',
|
|
31
31
|
rel: 'noreferrer',
|
|
32
32
|
'aria-label': t('settings.promo.actionLabel'),
|
|
33
|
-
}, createElement(GitHubMarkIcon), createElement('span', undefined, t('settings.promo.github')), createElement('span', { 'aria-hidden': true }, '⭐')));
|
|
33
|
+
}, createElement(GitHubMarkIcon), createElement('span', undefined, t('settings.promo.github')), createElement('span', { 'aria-hidden': true }, '⭐'))), children);
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
36
|
* 品牌标识:八芒星。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-promo.js","sourceRoot":"","sources":["../../../../src/client/settings-promo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEhD,OAAO,EAAE,qBAAqB,EAAuB,MAAM,aAAa,CAAA;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAE3F,qDAAqD;AACrD,MAAM,CAAC,MAAM,mBAAmB,GAAG,4CAA4C,CAAA;
|
|
1
|
+
{"version":3,"file":"settings-promo.js","sourceRoot":"","sources":["../../../../src/client/settings-promo.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,9 +24,8 @@ export interface CodingNsSectionProps extends PropsRuntime<'settings.section'> {
|
|
|
24
24
|
/**
|
|
25
25
|
* DSH 设置页中的 Codingns4DSH 区块。
|
|
26
26
|
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* GitHub Star 推广条({@link CodingNsSettingsPromo}),属于纯展示内容。
|
|
27
|
+
* Module cards come from the registry. The header combines the existing brand
|
|
28
|
+
* banner with a version disclosure for update details.
|
|
30
29
|
*/
|
|
31
30
|
export declare function CodingNsSettingsSection({ settings, registry, services, restartStates }: CodingNsSectionProps): ReactElement;
|
|
32
31
|
//# sourceMappingURL=settings-section.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-section.d.ts","sourceRoot":"","sources":["../../../../src/client/settings-section.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,KAAK,EACV,yBAAyB,EAC1B,MAAM,4CAA4C,CAAA;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACtB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,KAAK,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAgB9F,OAAO,KAAK,EAA4B,qBAAqB,EAAE,MAAM,uCAAuC,CAAA;
|
|
1
|
+
{"version":3,"file":"settings-section.d.ts","sourceRoot":"","sources":["../../../../src/client/settings-section.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,KAAK,EACV,yBAAyB,EAC1B,MAAM,4CAA4C,CAAA;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACtB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,KAAK,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAgB9F,OAAO,KAAK,EAA4B,qBAAqB,EAAE,MAAM,uCAAuC,CAAA;AAU5G,OAAO,QAAQ,kCAAkC,CAAC;IAChD,UAAU,OAAO;QACf,kBAAkB,EAAE;YAClB,IAAI,EAAE,MAAM,CAAA;YACZ,KAAK,EAAE,MAAM,CAAA;YACb,KAAK,EAAE,yBAAyB,CAAA;SACjC,CAAA;KACF;CACF;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY,CAAC,kBAAkB,CAAC;IAC5E,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,CAAA;IAC1D,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,sBAAsB,EAAE,2BAA2B,CAAC,CAAA;IACvF,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAA;IACzC,kCAAkC;IAClC,QAAQ,CAAC,aAAa,CAAC,EAAE,oBAAoB,CAAA;CAC9C;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAkB,EAAE,EAAE,oBAAoB,GAAG,YAAY,CA+ChI"}
|
|
@@ -5,15 +5,15 @@ import { dshSettingsBodyStyle, dshSettingsCardStyle, dshSettingsHeaderStyle, dsh
|
|
|
5
5
|
import { useCodingNsTranslator } from './locale.js';
|
|
6
6
|
import { CODINGNS_VERSION, DSH_COMPATIBILITY, isLegacyDshVersion } from '../shared/contracts/version.js';
|
|
7
7
|
import { useMagpieInstallRequirement } from './feature-requirement.js';
|
|
8
|
-
import {
|
|
8
|
+
import { CODINGNS_GITHUB_URL } from './settings-promo.js';
|
|
9
|
+
import { CodingNsSettingsUpdate } from './settings-update.js';
|
|
9
10
|
import { SettingsSwitch } from './settings-controls.js';
|
|
10
11
|
import { uiFontSize } from './font-scale.js';
|
|
11
12
|
/**
|
|
12
13
|
* DSH 设置页中的 Codingns4DSH 区块。
|
|
13
14
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* GitHub Star 推广条({@link CodingNsSettingsPromo}),属于纯展示内容。
|
|
15
|
+
* Module cards come from the registry. The header combines the existing brand
|
|
16
|
+
* banner with a version disclosure for update details.
|
|
17
17
|
*/
|
|
18
18
|
export function CodingNsSettingsSection({ settings, registry, services, restartStates = {} }) {
|
|
19
19
|
// useSyncExternalStore 要求 subscribe/getSnapshot 保持稳定引用,否则 React
|
|
@@ -33,7 +33,7 @@ export function CodingNsSettingsSection({ settings, registry, services, restartS
|
|
|
33
33
|
role: toast.kind === 'error' ? 'alert' : 'status',
|
|
34
34
|
'aria-live': 'polite',
|
|
35
35
|
style: { ...dshSettingsToastStyle, borderColor: toast.kind === 'error' ? dshThemeColor.error : toast.kind === 'success' ? dshThemeColor.success : dshThemeColor.border },
|
|
36
|
-
}, toast.message), createElement(
|
|
36
|
+
}, toast.message), createElement(CodingNsSettingsUpdate, { services }),
|
|
37
37
|
// 标题交给 DSH 设置页自己的导航项;这里只保留一句作用域说明,避免同一页出现两级标题。
|
|
38
38
|
createElement('header', { style: dshSettingsHeaderStyle }, createElement('p', { style: dshSettingsSubtitleStyle }, t('settings.subtitle'))), createElement('div', { style: { display: 'flex', flexDirection: 'column', gap: 12 } }, settingsModules(registry).map((entry) => createElement(FeatureCard, {
|
|
39
39
|
key: entry.module.descriptor.name,
|
|
@@ -68,7 +68,7 @@ function FeatureCard({ entry, snapshot, services, restartStates, notify }) {
|
|
|
68
68
|
const needsRequirement = ui.requirementKey !== undefined;
|
|
69
69
|
const installedRequirement = useMagpieInstallRequirement(needsRequirement ? services : null);
|
|
70
70
|
const requirement = needsRequirement ? installedRequirement : null;
|
|
71
|
-
const requirementBlocked = requirement !== null && requirement.state
|
|
71
|
+
const requirementBlocked = !enabled && requirement !== null && requirement.state !== 'ready';
|
|
72
72
|
// 常驻模块不提供关闭入口;设置未就绪、只读或本机缺少依赖时也不允许切换。
|
|
73
73
|
const switchDisabled = temporarilyDisabled || ui.alwaysEnabled === true || !versionCompatible
|
|
74
74
|
|| snapshot.status === 'loading' || !snapshot.writable || requirementBlocked;
|
|
@@ -139,7 +139,7 @@ function FeatureCard({ entry, snapshot, services, restartStates, notify }) {
|
|
|
139
139
|
role: requirement.state === 'missing' ? 'alert' : 'status',
|
|
140
140
|
'data-codingns-requirement': requirement.state,
|
|
141
141
|
style: { marginBottom: 10, color: requirement.state === 'missing' ? dshThemeColor.error : dshThemeColor.labelSecondary },
|
|
142
|
-
}, t(requirement.state === 'missing' ? requirement.requirementKey : requirement.checkingKey)), !hasOpened || panel === undefined ? null : createElement(panel, { services, enabled, snapshot, notify })));
|
|
142
|
+
}, t(requirement.state === 'missing' ? requirement.requirementKey : requirement.checkingKey)), !hasOpened || panel === undefined ? null : createElement(panel, { services, enabled, snapshot, notify, requirement })));
|
|
143
143
|
}
|
|
144
144
|
/** 标题栏开关:真实 checkbox 语义,点击不会连带折叠卡片。 */
|
|
145
145
|
function FeatureSwitch({ label, checked, disabled, onChange }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-section.js","sourceRoot":"","sources":["../../../../src/client/settings-section.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAA;AAQzF,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,6BAA6B,GAG9B,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,eAAe,EAA+B,MAAM,qBAAqB,CAAA;AAElF,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,kCAAkC,EAClC,4BAA4B,EAC5B,uBAAuB,EACvB,2BAA2B,EAC3B,qBAAqB,EACrB,aAAa,GACd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AAExG,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAA;AAEtE,OAAO,EAAE,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"settings-section.js","sourceRoot":"","sources":["../../../../src/client/settings-section.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
2
|
+
import type { CodingNsClientServices } from './features/types.js';
|
|
3
|
+
import { type PluginUpdateSnapshot } from './update-store.js';
|
|
4
|
+
export declare function hasNewerPluginVersion(snapshot: PluginUpdateSnapshot): boolean;
|
|
5
|
+
export declare function CodingNsSettingsUpdate({ services }: {
|
|
6
|
+
readonly services: CodingNsClientServices;
|
|
7
|
+
}): ReactElement;
|
|
8
|
+
//# sourceMappingURL=settings-update.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings-update.d.ts","sourceRoot":"","sources":["../../../../src/client/settings-update.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAOjE,OAAO,EAAoD,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAE/G,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAM7E;AAED,wBAAgB,sBAAsB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAA;CAAE,GAAG,YAAY,CA2ChH"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { createElement as h, useEffect, useId, useMemo, useState, useSyncExternalStore } from 'react';
|
|
2
|
+
import { useCodingNsTranslator } from './locale.js';
|
|
3
|
+
import { CODINGNS_VERSION } from '../shared/contracts/version.js';
|
|
4
|
+
import { compareSemver, isSemver } from '../shared/contracts/plugin-update.js';
|
|
5
|
+
import { CodingNsSettingsPromo } from './settings-promo.js';
|
|
6
|
+
import { settingsPromoClass } from './settings-promo-styles.js';
|
|
7
|
+
import { PluginUpdatePanel } from './update-panel.js';
|
|
8
|
+
import { DEFAULT_PLUGIN_UPDATE_CHANNEL, PluginUpdateStore } from './update-store.js';
|
|
9
|
+
export function hasNewerPluginVersion(snapshot) {
|
|
10
|
+
const target = snapshot.check?.target;
|
|
11
|
+
if (!target)
|
|
12
|
+
return false;
|
|
13
|
+
return [CODINGNS_VERSION, snapshot.runtime?.runningHostVersion, snapshot.runtime?.installedVersion]
|
|
14
|
+
.filter((version) => typeof version === 'string' && isSemver(version))
|
|
15
|
+
.every(version => compareSemver(target.version, version) > 0);
|
|
16
|
+
}
|
|
17
|
+
export function CodingNsSettingsUpdate({ services }) {
|
|
18
|
+
const t = useCodingNsTranslator(services.locale);
|
|
19
|
+
const store = useMemo(() => new PluginUpdateStore(services.rpc), [services.rpc]);
|
|
20
|
+
const snapshot = useSyncExternalStore(store.subscribe, store.getSnapshot, store.getSnapshot);
|
|
21
|
+
const [open, setOpen] = useState(false);
|
|
22
|
+
const [hasOpened, setHasOpened] = useState(false);
|
|
23
|
+
const detailsId = useId();
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
void store.loadRuntime();
|
|
26
|
+
void store.recover();
|
|
27
|
+
let checked = false;
|
|
28
|
+
const visibility = () => {
|
|
29
|
+
const visible = typeof document === 'undefined' || document.visibilityState !== 'hidden';
|
|
30
|
+
store.setVisible(visible);
|
|
31
|
+
if (visible && !checked) {
|
|
32
|
+
checked = true;
|
|
33
|
+
void store.check({ kind: DEFAULT_PLUGIN_UPDATE_CHANNEL });
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
visibility();
|
|
37
|
+
if (typeof document !== 'undefined')
|
|
38
|
+
document.addEventListener('visibilitychange', visibility);
|
|
39
|
+
return () => {
|
|
40
|
+
if (typeof document !== 'undefined')
|
|
41
|
+
document.removeEventListener('visibilitychange', visibility);
|
|
42
|
+
store.dispose();
|
|
43
|
+
};
|
|
44
|
+
}, [store]);
|
|
45
|
+
const versionControl = h('div', { className: settingsPromoClass.versionControl }, h('button', {
|
|
46
|
+
type: 'button', className: settingsPromoClass.version,
|
|
47
|
+
'aria-expanded': open, 'aria-controls': detailsId,
|
|
48
|
+
title: t('update.toggleDetails'),
|
|
49
|
+
onClick: () => { setOpen(!open); setHasOpened(true); },
|
|
50
|
+
}, t('settings.promo.version', { version: CODINGNS_VERSION })), h('span', { className: settingsPromoClass.badgeSlot }, hasNewerPluginVersion(snapshot) ? h('span', {
|
|
51
|
+
className: settingsPromoClass.badge, role: 'status',
|
|
52
|
+
title: t('update.newVersion', { version: snapshot.check.target.version }),
|
|
53
|
+
'aria-label': t('update.newVersion', { version: snapshot.check.target.version }),
|
|
54
|
+
}, t('update.newVersionBadge')) : null));
|
|
55
|
+
return h(CodingNsSettingsPromo, { locale: services.locale, versionControl }, h('div', { id: detailsId, hidden: !open, className: settingsPromoClass.details }, hasOpened ? h(PluginUpdatePanel, { services, enabled: true, store }) : null));
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=settings-update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings-update.js","sourceRoot":"","sources":["../../../../src/client/settings-update.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ReactElement } from 'react';
|
|
1
|
+
import type { ReactElement, RefObject } from 'react';
|
|
2
2
|
import type { SlotRegistry } from '@deepseek-ai/dsh-client-ui-renderer/client';
|
|
3
3
|
import type { CliSubscriptionSnapshot, ProviderBalanceUsage } from '../shared/contracts/subscription.js';
|
|
4
4
|
import type { CodingNsRpcClient } from './features/types.js';
|
|
@@ -49,12 +49,13 @@ declare function CommandCodeSubscriptionSlot(props: SubscriptionSlotProps): Reac
|
|
|
49
49
|
* `MagpieRoutePanel` 渲染元素,真正的状态留在本组件内部。模态框内的请求明细
|
|
50
50
|
* 直接复用管理页的 `RequestsPage`,只把会话筛选固定为当前会话。
|
|
51
51
|
*/
|
|
52
|
-
export declare function MagpieRouteRequests({ rpc, sessionId, sessionName, agent, t }: {
|
|
52
|
+
export declare function MagpieRouteRequests({ rpc, sessionId, sessionName, agent, t, requestsDialogRef }: {
|
|
53
53
|
readonly rpc: CodingNsRpcClient;
|
|
54
54
|
readonly sessionId: string | null;
|
|
55
55
|
readonly sessionName: string | null;
|
|
56
56
|
readonly agent: string;
|
|
57
57
|
readonly t: CodingNsTranslator;
|
|
58
|
+
readonly requestsDialogRef?: RefObject<HTMLDivElement>;
|
|
58
59
|
}): ReactElement;
|
|
59
60
|
export declare function ProviderBalancePopover({ usage, providerName, t, nowMs }: {
|
|
60
61
|
readonly usage: ProviderBalanceUsage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscription-slot.d.ts","sourceRoot":"","sources":["../../../../src/client/subscription-slot.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"subscription-slot.d.ts","sourceRoot":"","sources":["../../../../src/client/subscription-slot.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAA;AAG9E,OAAO,KAAK,EAA6G,uBAAuB,EAAmH,oBAAoB,EAAsD,MAAM,qCAAqC,CAAA;AAGxX,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAE5D,OAAO,EAAoD,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAoB5H,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAGrD,OAAO,QAAQ,kCAAkC,CAAC;IAChD,UAAU,oBAAoB;QAC5B,SAAS,EAAE,MAAM,CAAA;KAClB;CACF;AAED,KAAK,eAAe,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,QAAQ,KAAK,QAAQ,CAAA;AAE7F,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAA;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,CAAA;IACrC,oCAAoC;IACpC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,MAAM,CAAA;IAC9C,6CAA6C;IAC7C,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAA;CACjC;AAeD;;;GAGG;AACH,KAAK,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AASvG,sCAAsC;AACtC,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAG/I;AAoBD,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAMtK;AAED;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,mlBAAmlB,CAAA;AAW3nB,sCAAsC;AACtC,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,iBAAiB,EAAE,sBAAsB,CAAC,EAAE,MAAM,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,MAAM,IAAI,CAehK;AAED,iBAAS,2BAA2B,CAAC,KAAK,EAAE,qBAAqB,GAAG,YAAY,GAAG,IAAI,CAoatF;AAoSD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE;IAChG,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAA;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,CAAC,EAAE,kBAAkB,CAAA;IAC9B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,CAAA;CACvD,GAAG,YAAY,CA+Gf;AAkfD,wBAAgB,sBAAsB,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,kBAAkB,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,CA+CvN;AAghBD,OAAO,EAAE,2BAA2B,EAAE,CAAA;AACtC,eAAO,MAAM,mCAAmC,iCAA2B,CAAA"}
|