@jxgame2020/dsh-token-quota 0.1.37 → 0.1.39
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/lib/client.js +406 -406
- package/lib/index.js +1 -1
- package/lib/types/client/TokenQuotaPanel.js +24 -24
- package/package.json +2 -3
package/lib/client.js
CHANGED
|
@@ -123,7 +123,7 @@ window.__ModuleLoader__.load({
|
|
|
123
123
|
d.musicOnlyCurrentSession = only;
|
|
124
124
|
},
|
|
125
125
|
setUpgrade: (d, upgrade) => {
|
|
126
|
-
const normalized = upgrade !== null && upgrade.latestVersion !== "" && upgrade.latestVersion !== "0.1.
|
|
126
|
+
const normalized = upgrade !== null && upgrade.latestVersion !== "" && upgrade.latestVersion !== "0.1.39" ? upgrade : null;
|
|
127
127
|
if (d.upgrade === null || d.upgrade.latestVersion !== normalized?.latestVersion) d.upgradeDismissed = false;
|
|
128
128
|
d.upgrade = normalized;
|
|
129
129
|
},
|
|
@@ -243,7 +243,7 @@ window.__ModuleLoader__.load({
|
|
|
243
243
|
}
|
|
244
244
|
//#endregion
|
|
245
245
|
//#region \0dsh-css:/Users/jxgame/Desktop/works/deepseek-harness-package/dsh-token-quota/packages/token-quota/src/client/TokenQuotaPanel.module.css.mjs
|
|
246
|
-
const css = ".NPLLIq_panel{box-sizing:border-box;background:var(--dsw-alias-bg-overlay);border:1px solid var(--dsw-alias-border-l1);pointer-events:auto;z-index:40;opacity:1;border-radius:12px;flex-direction:column;width:320px;max-height:min(72vh,560px);transition:opacity .18s;display:flex;position:fixed;top:56px;right:12px;overflow:hidden;box-shadow:0 8px 28px #0000002e}.NPLLIq_panelDim{opacity:.55}.NPLLIq_panelDimStrong{opacity:.3}.NPLLIq_header{border-bottom:1px solid var(--dsw-alias-border-l1);cursor:grab;user-select:none;touch-action:none;justify-content:space-between;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.NPLLIq_header:active{cursor:grabbing}.NPLLIq_headerText{flex-direction:column;gap:2px;min-width:0;display:flex}.NPLLIq_title{color:var(--dsw-alias-label-primary);align-items:baseline;gap:6px;font-size:13px;font-weight:600;display:flex}.NPLLIq_version{color:var(--dsw-alias-label-secondary);white-space:nowrap;font-size:10px;font-weight:500}.NPLLIq_versionNew{color:var(--dsw-alias-status-warning-foreground,#b56900);background:var(--dsw-alias-status-warning-background,#fff6d7);cursor:default;border-radius:4px;padding:1px 6px}.NPLLIq_subtitle{color:var(--dsw-alias-label-secondary);font-size:11px}.NPLLIq_notesBar{background:var(--dsw-alias-bg-layer-2);flex-wrap:wrap;align-items:center;gap:4px;padding:4px 12px 0;display:flex}.NPLLIq_noteChip{width:20px;height:20px;color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-bg-layer-1);border:1px solid var(--dsw-alias-border-l1);cursor:pointer;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:0;font-size:11px;line-height:1;transition:color .12s,border-color .12s;display:inline-flex}.NPLLIq_noteChip:hover{color:var(--dsw-alias-label-primary);border-color:var(--dsw-alias-border-l2)}.NPLLIq_noteChipOpen{color:var(--dsw-alias-brand-primary);border-color:var(--dsw-alias-brand-primary)}.NPLLIq_noteNew{width:22px;height:20px;color:var(--dsw-alias-label-secondary);border:1px dashed var(--dsw-alias-border-l2);cursor:pointer;background:0 0;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:0;transition:color .12s,border-color .12s;display:inline-flex;position:relative}.NPLLIq_noteNew:hover:not(:disabled){color:var(--dsw-alias-brand-primary);border-color:var(--dsw-alias-brand-primary)}.NPLLIq_noteNew:disabled{opacity:.4;cursor:not-allowed}.NPLLIq_noteNewPlus{color:inherit;font-size:10px;font-weight:700;line-height:1;position:absolute;bottom:-2px;right:-1px}.NPLLIq_noteWin{z-index:60;pointer-events:auto;box-sizing:border-box;background:var(--dsw-alias-bg-overlay);border:1px solid var(--dsw-alias-border-l1);border-radius:10px;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 24px #00000038}.NPLLIq_noteWinCollapsed{height:auto!important}.NPLLIq_noteWinBar{background:var(--dsw-alias-bg-layer-1);border-bottom:1px solid var(--dsw-alias-border-l1);cursor:grab;user-select:none;flex:none;align-items:center;gap:4px;padding:4px 6px;display:flex}.NPLLIq_noteWinBar:active{cursor:grabbing}.NPLLIq_noteWinGripBar{color:var(--dsw-alias-label-secondary);opacity:.7;flex:none;font-size:10px}.NPLLIq_noteWinTitleText{min-width:0;color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;padding:1px 2px;font-size:11px;font-weight:600;overflow:hidden}.NPLLIq_noteWinTitle{min-width:0;color:var(--dsw-alias-label-primary);background:0 0;border:1px solid #0000;border-radius:4px;outline:none;flex:1;padding:1px 2px;font-size:11px;font-weight:600}.NPLLIq_noteWinTitle:hover{border-color:var(--dsw-alias-border-l1)}.NPLLIq_noteWinTitle:focus{background:var(--dsw-alias-bg-overlay);border-color:var(--dsw-alias-brand-primary)}.NPLLIq_noteWinBtn{width:18px;height:18px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.NPLLIq_noteWinBtn:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-2)}.NPLLIq_noteWinText{box-sizing:border-box;width:100%;min-height:0;color:var(--dsw-alias-label-primary);resize:none;background:0 0;border:none;outline:none;flex:1;padding:6px 8px;font-family:inherit;font-size:11px;line-height:1.5}.NPLLIq_noteWinResize{cursor:nwse-resize;background:linear-gradient(135deg, transparent 0 45%, var(--dsw-alias-border-l2) 45% 55%, transparent 55% 70%, var(--dsw-alias-border-l2) 70% 80%, transparent 80%);width:14px;height:14px;position:absolute;bottom:0;right:0}.NPLLIq_noteMenuBackdrop{z-index:100;pointer-events:auto;position:fixed;inset:0}.NPLLIq_noteMenu{z-index:101;pointer-events:auto;background:var(--dsw-alias-bg-overlay);border:1px solid var(--dsw-alias-border-l1);border-radius:8px;flex-direction:column;min-width:96px;padding:4px;display:flex;position:fixed;box-shadow:0 8px 24px #0000003d}.NPLLIq_noteMenuItem{text-align:left;color:var(--dsw-alias-label-primary);cursor:pointer;background:0 0;border:none;border-radius:5px;padding:5px 8px;font-size:11px}.NPLLIq_noteMenuItem:hover{background:var(--dsw-alias-bg-layer-2)}.NPLLIq_collapse{color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;padding:2px 6px;font-size:11px}.NPLLIq_collapse:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_body{padding:4px 0;overflow-y:auto}.NPLLIq_row{border-bottom:1px solid var(--dsw-alias-border-l1);flex-direction:column;gap:6px;padding:8px 12px;display:flex}.NPLLIq_rowHeader{justify-content:space-between;align-items:center;gap:8px;display:flex}.NPLLIq_rowDrag{cursor:grab;color:var(--dsw-alias-label-secondary);user-select:none;border-radius:4px;flex:none;margin-right:2px;padding:2px 3px;font-size:11px;line-height:1}.NPLLIq_rowDrag:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_rowDrag:active{cursor:grabbing}.NPLLIq_rowDragging{opacity:.45}.NPLLIq_rowDropTarget{box-shadow:inset 0 2px 0 var(--dsw-alias-brand-primary)}.NPLLIq_rowName{min-width:0;color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;align-items:center;gap:6px;font-size:12px;font-weight:500;display:inline-flex;overflow:hidden}.NPLLIq_currentBadge{color:var(--dsw-alias-state-success-primary);border:1px solid var(--dsw-alias-state-success-primary);border-radius:8px;flex:none;padding:1px 6px;font-size:10px}.NPLLIq_rowMeta{color:var(--dsw-alias-label-secondary);font-variant-numeric:tabular-nums;flex:none;font-size:11px}.NPLLIq_bar{background:var(--dsw-alias-bg-layer-1);border-radius:3px;height:6px;overflow:hidden}.NPLLIq_fillIdle{background:var(--dsw-alias-brand-primary);height:100%;transition:width .2s}.NPLLIq_fillWarn{background:var(--dsw-alias-state-warn-primary);height:100%;transition:width .2s}.NPLLIq_fillOver{background:var(--dsw-alias-state-error-primary);height:100%;transition:width .2s}.NPLLIq_controls{align-items:center;gap:6px;display:flex}.NPLLIq_input{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);min-width:0;color:var(--dsw-alias-label-primary);border-radius:6px;flex:1;padding:4px 8px;font-size:11px}.NPLLIq_input::placeholder{color:var(--dsw-alias-label-secondary)}.NPLLIq_save,.NPLLIq_switch{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:6px;flex:none;padding:4px 10px;font-size:11px}.NPLLIq_save:hover,.NPLLIq_switch:hover:not(:disabled){background:var(--dsw-alias-bg-layer-2)}.NPLLIq_switch:disabled{opacity:.5;cursor:default}.NPLLIq_balanceToggle{margin-left:auto}.NPLLIq_balanceToggleOpen{color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_balanceWin{z-index:1199;background:var(--dsw-alias-bg-layer-2);width:280px;color:var(--dsw-alias-label-primary);border:1px solid var(--dsw-alias-border-l1);pointer-events:auto;border-radius:12px;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 24px #00000029}.NPLLIq_balanceWinHeader{border-bottom:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-3);user-select:none;align-items:center;gap:6px;padding:6px 8px 6px 12px;display:flex}.NPLLIq_balanceWinTitle{flex:1;font-size:12px;font-weight:600;line-height:1}.NPLLIq_balanceWinBody{font-variant-numeric:tabular-nums;padding:6px 10px 10px;font-size:11px}.NPLLIq_balanceRowHeader{border-bottom:1px solid var(--dsw-alias-border-l1);color:var(--dsw-alias-label-secondary);grid-template-columns:1fr auto 20px;align-items:center;gap:6px;padding:3px 2px;font-weight:600;display:grid}.NPLLIq_balanceSortBtn{all:unset;cursor:pointer;color:inherit;border-radius:4px;padding:1px 2px;font-size:10px;font-weight:600}.NPLLIq_balanceSortBtn:hover{color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_balanceRefreshAll{width:18px;height:18px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.NPLLIq_balanceRefreshAll:hover:not(:disabled){color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_balanceRefreshAll:disabled{opacity:.4;cursor:not-allowed}.NPLLIq_balanceRow{grid-template-columns:1fr auto 20px;align-items:center;gap:6px;padding:3px 2px;display:grid}.NPLLIq_balanceRow+.NPLLIq_balanceRow{border-top:1px dashed var(--dsw-alias-border-l1)}.NPLLIq_balanceRowName{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.NPLLIq_balanceRowValue{text-align:right;font-weight:600}.NPLLIq_balanceRowRefresh{width:18px;height:18px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.NPLLIq_balanceRowRefresh:hover:not(:disabled){color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_balanceRowRefresh:disabled{opacity:.4;cursor:not-allowed}.NPLLIq_balanceValueOk{color:var(--dsw-alias-label-primary)}.NPLLIq_balanceValueLow{color:var(--dsw-alias-state-warn-primary)}.NPLLIq_balanceValueError{color:var(--dsw-alias-state-error-primary)}.NPLLIq_balanceStateHint{color:var(--dsw-alias-label-secondary);font-style:italic;font-weight:500}.NPLLIq_balanceStateError{color:var(--dsw-alias-state-error-primary);font-weight:500}.NPLLIq_balanceLastLine{border-top:1px solid var(--dsw-alias-border-l1);color:var(--dsw-alias-label-tertiary);margin-top:6px;padding-top:5px;font-size:10px}.NPLLIq_balanceBar{color:var(--dsw-alias-label-primary);border-bottom:1px solid var(--dsw-alias-border-l1);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:6px;padding:5px 12px;font-size:11px;display:flex}.NPLLIq_balanceBarText{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;font-weight:600;display:inline-flex;overflow:hidden}.NPLLIq_balanceBarBadge{color:var(--dsw-alias-state-error-primary);background:var(--dsw-alias-bg-layer-1);border-radius:4px;flex:none;padding:0 4px;font-size:10px;font-weight:600}.NPLLIq_balanceBarDim{color:var(--dsw-alias-label-secondary);font-weight:500}.NPLLIq_balanceBarLow{color:var(--dsw-alias-state-warn-primary)}.NPLLIq_balanceBarError{color:var(--dsw-alias-state-error-primary)}.NPLLIq_balanceBarRefresh{width:18px;height:18px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.NPLLIq_balanceBarRefresh:hover:not(:disabled){color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_balanceBarRefresh:disabled{opacity:.4;cursor:not-allowed}.NPLLIq_notice,.NPLLIq_noticeError{color:var(--dsw-alias-label-secondary);padding:10px 12px;font-size:12px}.NPLLIq_noticeError{color:var(--dsw-alias-state-error-primary)}.NPLLIq_tab{background:var(--dsw-alias-brand-primary);border:1px solid var(--dsw-alias-brand-primary);color:var(--dsw-alias-bg-overlay);pointer-events:auto;cursor:pointer;z-index:90;border-radius:10px;align-items:center;gap:6px;padding:9px 14px;font-size:12px;font-weight:600;display:inline-flex;position:fixed;top:56px;right:12px;box-shadow:0 6px 20px #00000040}.NPLLIq_tab:hover{filter:brightness(1.08)}.NPLLIq_tabIcon{font-size:12px;line-height:1}.NPLLIq_tabLabel{white-space:nowrap}.NPLLIq_headerActions{flex:none;align-items:center;gap:4px;display:flex}.NPLLIq_settingsBtn{color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;padding:2px 6px;font-size:11px}.NPLLIq_settingsBtn:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_settingsBtnActive{color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-2,#0000000f);box-shadow:inset 0 0 0 1px var(--dsw-alias-brand-primary);font-weight:700}.NPLLIq_selectBtn{border:1px solid var(--dsw-alias-border-l1);color:var(--dsw-alias-brand-primary);cursor:pointer;background:0 0;border-radius:6px;flex:none;padding:1px 6px;font-size:10px}.NPLLIq_selectBtn:hover{background:var(--dsw-alias-bg-layer-1)}.NPLLIq_gearBtn{color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;flex:none;margin-left:6px;padding:0 2px;font-size:12px;line-height:1}.NPLLIq_gearBtn:hover{color:var(--dsw-alias-label-primary)}.NPLLIq_fullNotice{color:var(--dsw-alias-state-error-primary);background:var(--dsw-alias-bg-layer-1);border:1px solid var(--dsw-alias-state-error-primary);border-radius:8px;margin:6px 12px;padding:8px 10px;font-size:12px}.NPLLIq_upgradeBanner{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1);border:1px solid var(--dsw-alias-divider-1,#0000001a);border-radius:8px;margin:6px 12px;padding:10px 30px 10px 10px;font-size:12px;position:relative}@keyframes NPLLIq_upgradeBannerFlash{0%,to{border-color:var(--dsw-alias-divider-1,#0000001a);box-shadow:0 0 #f0a02000}50%{border-color:var(--dsw-alias-status-warning-foreground,#b56900);box-shadow:0 0 0 5px #f0a02073}}.NPLLIq_upgradeBannerFlash{border-color:var(--dsw-alias-status-warning-foreground,#b56900);animation:.6s ease-in-out 4 NPLLIq_upgradeBannerFlash}.NPLLIq_upgradeBannerText{margin-bottom:6px;font-weight:600}.NPLLIq_upgradeCommands{flex-direction:column;gap:4px;display:flex}.NPLLIq_upgradeCommandRow{align-items:center;gap:6px;display:flex}.NPLLIq_upgradeCommand{background:var(--dsw-alias-bg-layer-2,#0000000a);white-space:nowrap;border-radius:4px;flex:1;min-width:0;padding:4px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;overflow-x:auto}.NPLLIq_copyBtn{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-2,#0000000a);color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:4px;flex:none;padding:3px 8px;font-size:11px;transition:transform 80ms,background .12s,color .12s}.NPLLIq_copyBtn:hover{background:var(--dsw-alias-bg-layer-3,#00000014)}.NPLLIq_copyBtn:active{transform:scale(.92)}.NPLLIq_copyBtnDone{background:var(--dsw-alias-status-success-background,#14963c1f);border-color:var(--dsw-alias-status-success-foreground,#0a7d32);color:var(--dsw-alias-status-success-foreground,#0a7d32);font-weight:600}.NPLLIq_upgradeHint{color:var(--dsw-alias-label-secondary);margin-top:6px;font-size:11px}.NPLLIq_upgradeClose{width:20px;height:20px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;font-size:16px;line-height:1;position:absolute;top:4px;right:6px}.NPLLIq_upgradeClose:hover{background:var(--dsw-alias-bg-layer-2,#0000000a);color:var(--dsw-alias-label-primary)}.NPLLIq_checkUpdatesRow{justify-content:space-between;align-items:center;gap:12px;display:flex}.NPLLIq_checkUpdatesLabel{color:var(--dsw-alias-label-primary);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:flex}.NPLLIq_checkUpdatesLabel input{margin:0}.NPLLIq_checkUpdatesLabel input[type=range]{min-width:90px;accent-color:var(--dsw-alias-brand-primary);flex:1}.NPLLIq_checkUpdatesLabel select{background:var(--dsw-alias-bg-layer-2,#0000000a);min-width:90px;color:var(--dsw-alias-label-primary);border:1px solid var(--dsw-alias-divider-1,#00000026);border-radius:4px;flex:1;padding:2px 4px;font-size:12px}.NPLLIq_checkBtn{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-2,#0000000a);color:var(--dsw-alias-label-primary);cursor:pointer;white-space:nowrap;text-align:center;border-radius:4px;flex:none;min-width:72px;padding:4px 10px;font-size:12px}.NPLLIq_checkBtn:hover:not(:disabled){background:var(--dsw-alias-bg-layer-3,#00000014)}.NPLLIq_checkBtn:disabled{opacity:.6;cursor:default}.NPLLIq_checkErrorHint{color:var(--dsw-alias-state-error-primary,#c00);background:var(--dsw-alias-state-error-background,#ff00000f);border:1px solid var(--dsw-alias-state-error-border,#b4000040);word-break:break-all;border-radius:6px;margin-top:8px;padding:6px 8px;font-size:11px;line-height:1.4}.NPLLIq_dialog{z-index:100;pointer-events:auto;box-sizing:border-box;background:var(--dsw-alias-bg-overlay);border:1px solid var(--dsw-alias-border-l1);border-radius:12px;flex-direction:column;gap:12px;width:430px;max-width:94vw;max-height:80vh;padding:14px;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 8px 28px #00000040}.NPLLIq_dialogTabs{border-bottom:1px solid var(--dsw-alias-divider-1,#00000014);gap:2px;margin:-6px -14px 0;padding:0 14px;display:flex}.NPLLIq_dialogTab{appearance:none;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:6px 12px 8px;font-size:12px}.NPLLIq_dialogTab:hover{color:var(--dsw-alias-label-primary)}.NPLLIq_dialogTabActive{color:var(--dsw-alias-brand-primary);border-bottom-color:var(--dsw-alias-brand-primary);font-weight:600}.NPLLIq_settingsDialog{height:min(560px,80vh)}.NPLLIq_dialogTitle{color:var(--dsw-alias-label-primary);font-size:13px;font-weight:600}.NPLLIq_dialogSection{flex-direction:column;gap:6px;display:flex}.NPLLIq_dialogLabel{color:var(--dsw-alias-label-primary);font-size:12px;font-weight:500}.NPLLIq_monitorHint{color:var(--dsw-alias-label-secondary);font-size:11px}.NPLLIq_dialogHint{color:var(--dsw-alias-label-secondary);margin-top:4px;font-size:11px;line-height:1.4}.NPLLIq_monitorList{flex-direction:column;gap:2px;max-height:180px;display:flex;overflow-y:auto}.NPLLIq_monitorRow{color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:2px 4px;font-size:12px;display:flex}.NPLLIq_monitorRow:hover{background:var(--dsw-alias-bg-layer-1)}.NPLLIq_monitorName{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.NPLLIq_radioRow{color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:3px 4px;font-size:12px;display:flex}.NPLLIq_radioRow:hover{background:var(--dsw-alias-bg-layer-1)}.NPLLIq_dialogActions{justify-content:flex-end;gap:6px;display:flex}.NPLLIq_dialogBtn,.NPLLIq_dialogBtnPrimary{border:1px solid var(--dsw-alias-border-l1);cursor:pointer;border-radius:6px;padding:4px 12px;font-size:11px}.NPLLIq_dialogBtn{background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary)}.NPLLIq_dialogBtnPrimary{background:var(--dsw-alias-brand-primary);border-color:var(--dsw-alias-brand-primary);color:var(--dsw-alias-bg-overlay)}.NPLLIq_dialogHeader{z-index:2;background:var(--dsw-alias-bg-overlay);cursor:grab;user-select:none;touch-action:none;justify-content:space-between;align-items:center;gap:8px;margin:-14px -14px 0;padding:14px 14px 8px;display:flex;position:sticky;top:-14px}.NPLLIq_dialogHeader:active{cursor:grabbing}.NPLLIq_dialogClose{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:18px;line-height:1;display:flex}.NPLLIq_dialogClose:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_resetRow{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.NPLLIq_resetSelect{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary);border-radius:6px;padding:3px 6px;font-size:12px}.NPLLIq_logTable{border-collapse:collapse;width:100%;font-size:11px}.NPLLIq_logTable th{text-align:left;color:var(--dsw-alias-label-secondary);border-bottom:1px solid var(--dsw-alias-border-l1);padding:4px 6px;font-weight:500}.NPLLIq_logTable td{color:var(--dsw-alias-label-primary);border-bottom:1px solid var(--dsw-alias-border-l1);font-variant-numeric:tabular-nums;padding:4px 6px}.NPLLIq_logDayCol{white-space:nowrap;color:var(--dsw-alias-label-secondary)}.NPLLIq_logModelCol{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.NPLLIq_logUsedCol{text-align:right}.NPLLIq_logDialog{gap:0;width:380px;max-height:min(72vh,480px);padding:0}.NPLLIq_logHeader{background:var(--dsw-alias-bg-overlay);cursor:grab;user-select:none;touch-action:none;flex:none;justify-content:space-between;align-items:center;gap:8px;padding:14px 14px 8px;display:flex}.NPLLIq_logHeader:active{cursor:grabbing}.NPLLIq_logScroll{flex:1;min-height:0;padding:0 14px 14px;overflow:auto}.NPLLIq_logToolbar{flex:1;align-items:center;gap:6px;display:flex}.NPLLIq_logSearch{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-1,#0000000a);min-width:0;color:var(--dsw-alias-label-primary);border-radius:4px;flex:1;padding:3px 6px;font-size:11px}.NPLLIq_logSearch:focus{border-color:var(--dsw-alias-accent-1,#4a9eff);outline:none}.NPLLIq_logClearBtn{border:1px solid var(--dsw-alias-state-error-border,#b400004d);color:var(--dsw-alias-state-error-primary,#c00);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;flex:none;padding:3px 8px;font-size:11px}.NPLLIq_logClearBtn:hover{background:var(--dsw-alias-state-error-background,#ff00000f)}.NPLLIq_logPager{border-top:1px solid var(--dsw-alias-divider-1,#00000014);background:var(--dsw-alias-bg-overlay);color:var(--dsw-alias-label-secondary);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:6px 14px;font-size:11px;display:flex}.NPLLIq_logPagerInfo{white-space:nowrap}.NPLLIq_logPagerControls{align-items:center;gap:4px;display:flex}.NPLLIq_logPagerBtn{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-1,#0000000a);width:24px;height:24px;color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:4px;font-size:13px;line-height:1}.NPLLIq_logPagerBtn:disabled{opacity:.4;cursor:default}.NPLLIq_logPagerPages{text-align:center;min-width:50px;color:var(--dsw-alias-label-secondary)}.NPLLIq_logPageSizeSelect{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-1,#0000000a);color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:4px;padding:2px 4px;font-size:11px}.NPLLIq_dialogOverlay{z-index:100001;pointer-events:auto;background:#0000004d;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.NPLLIq_logClearDialog{gap:0;width:320px;padding:16px}.NPLLIq_dialogBody{color:var(--dsw-alias-label-secondary);margin:6px 0 10px;font-size:12px;line-height:1.5}.NPLLIq_logClearDate{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-1,#0000000a);width:100%;color:var(--dsw-alias-label-primary);border-radius:6px;margin-bottom:12px;padding:6px 8px;font-size:13px}.NPLLIq_logClearDate:focus{border-color:var(--dsw-alias-accent-1,#4a9eff);outline:none}";
|
|
246
|
+
const css = ".NPLLIq_panel{box-sizing:border-box;background:var(--dsw-alias-bg-overlay);border:1px solid var(--dsw-alias-border-l1);pointer-events:auto;z-index:40;opacity:1;border-radius:12px;flex-direction:column;width:320px;max-height:min(72vh,560px);transition:opacity .18s;display:flex;position:fixed;top:56px;right:12px;overflow:hidden;box-shadow:0 8px 28px #0000002e}.NPLLIq_panelDim{opacity:.55}.NPLLIq_panelDimStrong{opacity:.3}.NPLLIq_header{border-bottom:1px solid var(--dsw-alias-border-l1);cursor:grab;user-select:none;touch-action:none;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.NPLLIq_header:active{cursor:grabbing}.NPLLIq_headerText{flex-direction:column;gap:2px;min-width:0;display:flex}.NPLLIq_title{color:var(--dsw-alias-label-primary);align-items:baseline;gap:6px;font-size:13px;font-weight:600;display:flex}.NPLLIq_version{color:var(--dsw-alias-label-secondary);white-space:nowrap;font-size:10px;font-weight:500}.NPLLIq_versionNew{color:var(--dsw-alias-status-warning-foreground,#b56900);background:var(--dsw-alias-status-warning-background,#fff6d7);cursor:default;border-radius:4px;padding:1px 6px}.NPLLIq_subtitle{color:var(--dsw-alias-label-secondary);font-size:11px}.NPLLIq_notesBar{flex-wrap:wrap;flex:100%;align-items:center;gap:4px;padding:2px 0 0;display:flex}.NPLLIq_noteChip{width:20px;height:20px;color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-bg-layer-1);border:1px solid var(--dsw-alias-border-l1);cursor:pointer;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:0;font-size:11px;line-height:1;transition:color .12s,border-color .12s;display:inline-flex}.NPLLIq_noteChip:hover{color:var(--dsw-alias-label-primary);border-color:var(--dsw-alias-border-l2)}.NPLLIq_noteChipOpen{color:var(--dsw-alias-brand-primary);border-color:var(--dsw-alias-brand-primary)}.NPLLIq_noteNew{width:22px;height:20px;color:var(--dsw-alias-label-secondary);border:1px dashed var(--dsw-alias-border-l2);cursor:pointer;background:0 0;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:0;transition:color .12s,border-color .12s;display:inline-flex;position:relative}.NPLLIq_noteNew:hover:not(:disabled){color:var(--dsw-alias-brand-primary);border-color:var(--dsw-alias-brand-primary)}.NPLLIq_noteNew:disabled{opacity:.4;cursor:not-allowed}.NPLLIq_noteNewPlus{color:inherit;font-size:10px;font-weight:700;line-height:1;position:absolute;bottom:-2px;right:-1px}.NPLLIq_noteWin{z-index:60;pointer-events:auto;box-sizing:border-box;background:var(--dsw-alias-bg-overlay);border:1px solid var(--dsw-alias-border-l1);border-radius:10px;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 24px #00000038}.NPLLIq_noteWinCollapsed{height:auto!important}.NPLLIq_noteWinBar{background:var(--dsw-alias-bg-layer-1);border-bottom:1px solid var(--dsw-alias-border-l1);cursor:grab;user-select:none;flex:none;align-items:center;gap:4px;padding:4px 6px;display:flex}.NPLLIq_noteWinBar:active{cursor:grabbing}.NPLLIq_noteWinGripBar{color:var(--dsw-alias-label-secondary);opacity:.7;flex:none;font-size:10px}.NPLLIq_noteWinTitleText{min-width:0;color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;padding:1px 2px;font-size:11px;font-weight:600;overflow:hidden}.NPLLIq_noteWinTitle{min-width:0;color:var(--dsw-alias-label-primary);background:0 0;border:1px solid #0000;border-radius:4px;outline:none;flex:1;padding:1px 2px;font-size:11px;font-weight:600}.NPLLIq_noteWinTitle:hover{border-color:var(--dsw-alias-border-l1)}.NPLLIq_noteWinTitle:focus{background:var(--dsw-alias-bg-overlay);border-color:var(--dsw-alias-brand-primary)}.NPLLIq_noteWinBtn{width:18px;height:18px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.NPLLIq_noteWinBtn:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-2)}.NPLLIq_noteWinText{box-sizing:border-box;width:100%;min-height:0;color:var(--dsw-alias-label-primary);resize:none;background:0 0;border:none;outline:none;flex:1;padding:6px 8px;font-family:inherit;font-size:11px;line-height:1.5}.NPLLIq_noteWinResize{cursor:nwse-resize;background:linear-gradient(135deg, transparent 0 45%, var(--dsw-alias-border-l2) 45% 55%, transparent 55% 70%, var(--dsw-alias-border-l2) 70% 80%, transparent 80%);width:14px;height:14px;position:absolute;bottom:0;right:0}.NPLLIq_noteMenuBackdrop{z-index:100;pointer-events:auto;position:fixed;inset:0}.NPLLIq_noteMenu{z-index:101;pointer-events:auto;background:var(--dsw-alias-bg-overlay);border:1px solid var(--dsw-alias-border-l1);border-radius:8px;flex-direction:column;min-width:96px;padding:4px;display:flex;position:fixed;box-shadow:0 8px 24px #0000003d}.NPLLIq_noteMenuItem{text-align:left;color:var(--dsw-alias-label-primary);cursor:pointer;background:0 0;border:none;border-radius:5px;padding:5px 8px;font-size:11px}.NPLLIq_noteMenuItem:hover{background:var(--dsw-alias-bg-layer-2)}.NPLLIq_collapse{color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;padding:2px 6px;font-size:11px}.NPLLIq_collapse:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_body{padding:4px 0;overflow-y:auto}.NPLLIq_row{border-bottom:1px solid var(--dsw-alias-border-l1);flex-direction:column;gap:6px;padding:8px 12px;display:flex}.NPLLIq_rowHeader{justify-content:space-between;align-items:center;gap:8px;display:flex}.NPLLIq_rowDrag{cursor:grab;color:var(--dsw-alias-label-secondary);user-select:none;border-radius:4px;flex:none;margin-right:2px;padding:2px 3px;font-size:11px;line-height:1}.NPLLIq_rowDrag:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_rowDrag:active{cursor:grabbing}.NPLLIq_rowDragging{opacity:.45}.NPLLIq_rowDropTarget{box-shadow:inset 0 2px 0 var(--dsw-alias-brand-primary)}.NPLLIq_rowName{min-width:0;color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;align-items:center;gap:6px;font-size:12px;font-weight:500;display:inline-flex;overflow:hidden}.NPLLIq_currentBadge{color:var(--dsw-alias-state-success-primary);border:1px solid var(--dsw-alias-state-success-primary);border-radius:8px;flex:none;padding:1px 6px;font-size:10px}.NPLLIq_rowMeta{color:var(--dsw-alias-label-secondary);font-variant-numeric:tabular-nums;flex:none;font-size:11px}.NPLLIq_bar{background:var(--dsw-alias-bg-layer-1);border-radius:3px;height:6px;overflow:hidden}.NPLLIq_fillIdle{background:var(--dsw-alias-brand-primary);height:100%;transition:width .2s}.NPLLIq_fillWarn{background:var(--dsw-alias-state-warn-primary);height:100%;transition:width .2s}.NPLLIq_fillOver{background:var(--dsw-alias-state-error-primary);height:100%;transition:width .2s}.NPLLIq_controls{align-items:center;gap:6px;display:flex}.NPLLIq_input{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);min-width:0;color:var(--dsw-alias-label-primary);border-radius:6px;flex:1;padding:4px 8px;font-size:11px}.NPLLIq_input::placeholder{color:var(--dsw-alias-label-secondary)}.NPLLIq_save,.NPLLIq_switch{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:6px;flex:none;padding:4px 10px;font-size:11px}.NPLLIq_save:hover,.NPLLIq_switch:hover:not(:disabled){background:var(--dsw-alias-bg-layer-2)}.NPLLIq_switch:disabled{opacity:.5;cursor:default}.NPLLIq_balanceToggle{margin-left:auto}.NPLLIq_balanceToggleOpen{color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_balanceWin{z-index:1199;background:var(--dsw-alias-bg-layer-2);width:280px;color:var(--dsw-alias-label-primary);border:1px solid var(--dsw-alias-border-l1);pointer-events:auto;border-radius:12px;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 24px #00000029}.NPLLIq_balanceWinHeader{border-bottom:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-3);user-select:none;align-items:center;gap:6px;padding:6px 8px 6px 12px;display:flex}.NPLLIq_balanceWinTitle{flex:1;font-size:12px;font-weight:600;line-height:1}.NPLLIq_balanceWinBody{font-variant-numeric:tabular-nums;padding:6px 10px 10px;font-size:11px}.NPLLIq_balanceRowHeader{border-bottom:1px solid var(--dsw-alias-border-l1);color:var(--dsw-alias-label-secondary);grid-template-columns:1fr auto 20px;align-items:center;gap:6px;padding:3px 2px;font-weight:600;display:grid}.NPLLIq_balanceSortBtn{all:unset;cursor:pointer;color:inherit;border-radius:4px;padding:1px 2px;font-size:10px;font-weight:600}.NPLLIq_balanceSortBtn:hover{color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_balanceRefreshAll{width:18px;height:18px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.NPLLIq_balanceRefreshAll:hover:not(:disabled){color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_balanceRefreshAll:disabled{opacity:.4;cursor:not-allowed}.NPLLIq_balanceRow{grid-template-columns:1fr auto 20px;align-items:center;gap:6px;padding:3px 2px;display:grid}.NPLLIq_balanceRow+.NPLLIq_balanceRow{border-top:1px dashed var(--dsw-alias-border-l1)}.NPLLIq_balanceRowName{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.NPLLIq_balanceRowValue{text-align:right;font-weight:600}.NPLLIq_balanceRowRefresh{width:18px;height:18px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.NPLLIq_balanceRowRefresh:hover:not(:disabled){color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_balanceRowRefresh:disabled{opacity:.4;cursor:not-allowed}.NPLLIq_balanceValueOk{color:var(--dsw-alias-label-primary)}.NPLLIq_balanceValueLow{color:var(--dsw-alias-state-warn-primary)}.NPLLIq_balanceValueError{color:var(--dsw-alias-state-error-primary)}.NPLLIq_balanceStateHint{color:var(--dsw-alias-label-secondary);font-style:italic;font-weight:500}.NPLLIq_balanceStateError{color:var(--dsw-alias-state-error-primary);font-weight:500}.NPLLIq_balanceLastLine{border-top:1px solid var(--dsw-alias-border-l1);color:var(--dsw-alias-label-tertiary);margin-top:6px;padding-top:5px;font-size:10px}.NPLLIq_balanceBar{color:var(--dsw-alias-label-primary);border-bottom:1px solid var(--dsw-alias-border-l1);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:6px;padding:5px 12px;font-size:11px;display:flex}.NPLLIq_balanceBarText{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;font-weight:600;display:inline-flex;overflow:hidden}.NPLLIq_balanceBarBadge{color:var(--dsw-alias-state-error-primary);background:var(--dsw-alias-bg-layer-1);border-radius:4px;flex:none;padding:0 4px;font-size:10px;font-weight:600}.NPLLIq_balanceBarDim{color:var(--dsw-alias-label-secondary);font-weight:500}.NPLLIq_balanceBarLow{color:var(--dsw-alias-state-warn-primary)}.NPLLIq_balanceBarError{color:var(--dsw-alias-state-error-primary)}.NPLLIq_balanceBarRefresh{width:18px;height:18px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.NPLLIq_balanceBarRefresh:hover:not(:disabled){color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_balanceBarRefresh:disabled{opacity:.4;cursor:not-allowed}.NPLLIq_notice,.NPLLIq_noticeError{color:var(--dsw-alias-label-secondary);padding:10px 12px;font-size:12px}.NPLLIq_noticeError{color:var(--dsw-alias-state-error-primary)}.NPLLIq_tab{background:var(--dsw-alias-brand-primary);border:1px solid var(--dsw-alias-brand-primary);color:var(--dsw-alias-bg-overlay);pointer-events:auto;cursor:pointer;z-index:90;border-radius:10px;align-items:center;gap:6px;padding:9px 14px;font-size:12px;font-weight:600;display:inline-flex;position:fixed;top:56px;right:12px;box-shadow:0 6px 20px #00000040}.NPLLIq_tab:hover{filter:brightness(1.08)}.NPLLIq_tabIcon{font-size:12px;line-height:1}.NPLLIq_tabLabel{white-space:nowrap}.NPLLIq_headerActions{flex:none;align-items:center;gap:4px;display:flex}.NPLLIq_settingsBtn{color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;padding:2px 6px;font-size:11px}.NPLLIq_settingsBtn:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_settingsBtnActive{color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-bg-layer-2,#0000000f);box-shadow:inset 0 0 0 1px var(--dsw-alias-brand-primary);font-weight:700}.NPLLIq_selectBtn{border:1px solid var(--dsw-alias-border-l1);color:var(--dsw-alias-brand-primary);cursor:pointer;background:0 0;border-radius:6px;flex:none;padding:1px 6px;font-size:10px}.NPLLIq_selectBtn:hover{background:var(--dsw-alias-bg-layer-1)}.NPLLIq_gearBtn{color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;flex:none;margin-left:6px;padding:0 2px;font-size:12px;line-height:1}.NPLLIq_gearBtn:hover{color:var(--dsw-alias-label-primary)}.NPLLIq_fullNotice{color:var(--dsw-alias-state-error-primary);background:var(--dsw-alias-bg-layer-1);border:1px solid var(--dsw-alias-state-error-primary);border-radius:8px;margin:6px 12px;padding:8px 10px;font-size:12px}.NPLLIq_upgradeBanner{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1);border:1px solid var(--dsw-alias-divider-1,#0000001a);border-radius:8px;margin:6px 12px;padding:10px 30px 10px 10px;font-size:12px;position:relative}@keyframes NPLLIq_upgradeBannerFlash{0%,to{border-color:var(--dsw-alias-divider-1,#0000001a);box-shadow:0 0 #f0a02000}50%{border-color:var(--dsw-alias-status-warning-foreground,#b56900);box-shadow:0 0 0 5px #f0a02073}}.NPLLIq_upgradeBannerFlash{border-color:var(--dsw-alias-status-warning-foreground,#b56900);animation:.6s ease-in-out 4 NPLLIq_upgradeBannerFlash}.NPLLIq_upgradeBannerText{margin-bottom:6px;font-weight:600}.NPLLIq_upgradeCommands{flex-direction:column;gap:4px;display:flex}.NPLLIq_upgradeCommandRow{align-items:center;gap:6px;display:flex}.NPLLIq_upgradeCommand{background:var(--dsw-alias-bg-layer-2,#0000000a);white-space:nowrap;border-radius:4px;flex:1;min-width:0;padding:4px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;overflow-x:auto}.NPLLIq_copyBtn{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-2,#0000000a);color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:4px;flex:none;padding:3px 8px;font-size:11px;transition:transform 80ms,background .12s,color .12s}.NPLLIq_copyBtn:hover{background:var(--dsw-alias-bg-layer-3,#00000014)}.NPLLIq_copyBtn:active{transform:scale(.92)}.NPLLIq_copyBtnDone{background:var(--dsw-alias-status-success-background,#14963c1f);border-color:var(--dsw-alias-status-success-foreground,#0a7d32);color:var(--dsw-alias-status-success-foreground,#0a7d32);font-weight:600}.NPLLIq_upgradeHint{color:var(--dsw-alias-label-secondary);margin-top:6px;font-size:11px}.NPLLIq_upgradeClose{width:20px;height:20px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;font-size:16px;line-height:1;position:absolute;top:4px;right:6px}.NPLLIq_upgradeClose:hover{background:var(--dsw-alias-bg-layer-2,#0000000a);color:var(--dsw-alias-label-primary)}.NPLLIq_checkUpdatesRow{justify-content:space-between;align-items:center;gap:12px;display:flex}.NPLLIq_checkUpdatesLabel{color:var(--dsw-alias-label-primary);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:flex}.NPLLIq_checkUpdatesLabel input{margin:0}.NPLLIq_checkUpdatesLabel input[type=range]{min-width:90px;accent-color:var(--dsw-alias-brand-primary);flex:1}.NPLLIq_checkUpdatesLabel select{background:var(--dsw-alias-bg-layer-2,#0000000a);min-width:90px;color:var(--dsw-alias-label-primary);border:1px solid var(--dsw-alias-divider-1,#00000026);border-radius:4px;flex:1;padding:2px 4px;font-size:12px}.NPLLIq_checkBtn{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-2,#0000000a);color:var(--dsw-alias-label-primary);cursor:pointer;white-space:nowrap;text-align:center;border-radius:4px;flex:none;min-width:72px;padding:4px 10px;font-size:12px}.NPLLIq_checkBtn:hover:not(:disabled){background:var(--dsw-alias-bg-layer-3,#00000014)}.NPLLIq_checkBtn:disabled{opacity:.6;cursor:default}.NPLLIq_checkErrorHint{color:var(--dsw-alias-state-error-primary,#c00);background:var(--dsw-alias-state-error-background,#ff00000f);border:1px solid var(--dsw-alias-state-error-border,#b4000040);word-break:break-all;border-radius:6px;margin-top:8px;padding:6px 8px;font-size:11px;line-height:1.4}.NPLLIq_dialog{z-index:100;pointer-events:auto;box-sizing:border-box;background:var(--dsw-alias-bg-overlay);border:1px solid var(--dsw-alias-border-l1);border-radius:12px;flex-direction:column;gap:12px;width:430px;max-width:94vw;max-height:80vh;padding:14px;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 8px 28px #00000040}.NPLLIq_dialogTabs{border-bottom:1px solid var(--dsw-alias-divider-1,#00000014);gap:2px;margin:-6px -14px 0;padding:0 14px;display:flex}.NPLLIq_dialogTab{appearance:none;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:6px 12px 8px;font-size:12px}.NPLLIq_dialogTab:hover{color:var(--dsw-alias-label-primary)}.NPLLIq_dialogTabActive{color:var(--dsw-alias-brand-primary);border-bottom-color:var(--dsw-alias-brand-primary);font-weight:600}.NPLLIq_settingsDialog{height:min(560px,80vh)}.NPLLIq_dialogTitle{color:var(--dsw-alias-label-primary);font-size:13px;font-weight:600}.NPLLIq_dialogSection{flex-direction:column;gap:6px;display:flex}.NPLLIq_dialogLabel{color:var(--dsw-alias-label-primary);font-size:12px;font-weight:500}.NPLLIq_monitorHint{color:var(--dsw-alias-label-secondary);font-size:11px}.NPLLIq_dialogHint{color:var(--dsw-alias-label-secondary);margin-top:4px;font-size:11px;line-height:1.4}.NPLLIq_monitorList{flex-direction:column;gap:2px;max-height:180px;display:flex;overflow-y:auto}.NPLLIq_monitorRow{color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:2px 4px;font-size:12px;display:flex}.NPLLIq_monitorRow:hover{background:var(--dsw-alias-bg-layer-1)}.NPLLIq_monitorName{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.NPLLIq_radioRow{color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:3px 4px;font-size:12px;display:flex}.NPLLIq_radioRow:hover{background:var(--dsw-alias-bg-layer-1)}.NPLLIq_dialogActions{justify-content:flex-end;gap:6px;display:flex}.NPLLIq_dialogBtn,.NPLLIq_dialogBtnPrimary{border:1px solid var(--dsw-alias-border-l1);cursor:pointer;border-radius:6px;padding:4px 12px;font-size:11px}.NPLLIq_dialogBtn{background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary)}.NPLLIq_dialogBtnPrimary{background:var(--dsw-alias-brand-primary);border-color:var(--dsw-alias-brand-primary);color:var(--dsw-alias-bg-overlay)}.NPLLIq_dialogHeader{z-index:2;background:var(--dsw-alias-bg-overlay);cursor:grab;user-select:none;touch-action:none;justify-content:space-between;align-items:center;gap:8px;margin:-14px -14px 0;padding:14px 14px 8px;display:flex;position:sticky;top:-14px}.NPLLIq_dialogHeader:active{cursor:grabbing}.NPLLIq_dialogClose{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:18px;line-height:1;display:flex}.NPLLIq_dialogClose:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1)}.NPLLIq_resetRow{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.NPLLIq_resetSelect{border:1px solid var(--dsw-alias-border-l1);background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary);border-radius:6px;padding:3px 6px;font-size:12px}.NPLLIq_logTable{border-collapse:collapse;width:100%;font-size:11px}.NPLLIq_logTable th{text-align:left;color:var(--dsw-alias-label-secondary);border-bottom:1px solid var(--dsw-alias-border-l1);padding:4px 6px;font-weight:500}.NPLLIq_logTable td{color:var(--dsw-alias-label-primary);border-bottom:1px solid var(--dsw-alias-border-l1);font-variant-numeric:tabular-nums;padding:4px 6px}.NPLLIq_logDayCol{white-space:nowrap;color:var(--dsw-alias-label-secondary)}.NPLLIq_logModelCol{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.NPLLIq_logUsedCol{text-align:right}.NPLLIq_logDialog{gap:0;width:380px;max-height:min(72vh,480px);padding:0}.NPLLIq_logHeader{background:var(--dsw-alias-bg-overlay);cursor:grab;user-select:none;touch-action:none;flex:none;justify-content:space-between;align-items:center;gap:8px;padding:14px 14px 8px;display:flex}.NPLLIq_logHeader:active{cursor:grabbing}.NPLLIq_logScroll{flex:1;min-height:0;padding:0 14px 14px;overflow:auto}.NPLLIq_logToolbar{flex:1;align-items:center;gap:6px;display:flex}.NPLLIq_logSearch{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-1,#0000000a);min-width:0;color:var(--dsw-alias-label-primary);border-radius:4px;flex:1;padding:3px 6px;font-size:11px}.NPLLIq_logSearch:focus{border-color:var(--dsw-alias-accent-1,#4a9eff);outline:none}.NPLLIq_logClearBtn{border:1px solid var(--dsw-alias-state-error-border,#b400004d);color:var(--dsw-alias-state-error-primary,#c00);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;flex:none;padding:3px 8px;font-size:11px}.NPLLIq_logClearBtn:hover{background:var(--dsw-alias-state-error-background,#ff00000f)}.NPLLIq_logPager{border-top:1px solid var(--dsw-alias-divider-1,#00000014);background:var(--dsw-alias-bg-overlay);color:var(--dsw-alias-label-secondary);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:6px 14px;font-size:11px;display:flex}.NPLLIq_logPagerInfo{white-space:nowrap}.NPLLIq_logPagerControls{align-items:center;gap:4px;display:flex}.NPLLIq_logPagerBtn{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-1,#0000000a);width:24px;height:24px;color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:4px;font-size:13px;line-height:1}.NPLLIq_logPagerBtn:disabled{opacity:.4;cursor:default}.NPLLIq_logPagerPages{text-align:center;min-width:50px;color:var(--dsw-alias-label-secondary)}.NPLLIq_logPageSizeSelect{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-1,#0000000a);color:var(--dsw-alias-label-primary);cursor:pointer;border-radius:4px;padding:2px 4px;font-size:11px}.NPLLIq_dialogOverlay{z-index:100001;pointer-events:auto;background:#0000004d;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.NPLLIq_logClearDialog{gap:0;width:320px;padding:16px}.NPLLIq_dialogBody{color:var(--dsw-alias-label-secondary);margin:6px 0 10px;font-size:12px;line-height:1.5}.NPLLIq_logClearDate{border:1px solid var(--dsw-alias-divider-1,#00000026);background:var(--dsw-alias-bg-layer-1,#0000000a);width:100%;color:var(--dsw-alias-label-primary);border-radius:6px;margin-bottom:12px;padding:6px 8px;font-size:13px}.NPLLIq_logClearDate:focus{border-color:var(--dsw-alias-accent-1,#4a9eff);outline:none}";
|
|
247
247
|
const tagId = "@jxgame2020/dsh-token-quota/TokenQuotaPanel.module.css";
|
|
248
248
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
|
|
249
249
|
const tag = document.createElement("style");
|
|
@@ -253,142 +253,142 @@ window.__ModuleLoader__.load({
|
|
|
253
253
|
document.head.appendChild(tag);
|
|
254
254
|
}
|
|
255
255
|
var TokenQuotaPanel_module_css_default = {
|
|
256
|
-
"
|
|
257
|
-
"
|
|
258
|
-
"
|
|
256
|
+
"logPagerBtn": "NPLLIq_logPagerBtn",
|
|
257
|
+
"selectBtn": "NPLLIq_selectBtn",
|
|
258
|
+
"dialogOverlay": "NPLLIq_dialogOverlay",
|
|
259
|
+
"fillIdle": "NPLLIq_fillIdle",
|
|
260
|
+
"balanceBarText": "NPLLIq_balanceBarText",
|
|
261
|
+
"balanceWinBody": "NPLLIq_balanceWinBody",
|
|
262
|
+
"monitorRow": "NPLLIq_monitorRow",
|
|
263
|
+
"resetSelect": "NPLLIq_resetSelect",
|
|
264
|
+
"upgradeCommandRow": "NPLLIq_upgradeCommandRow",
|
|
265
|
+
"rowDrag": "NPLLIq_rowDrag",
|
|
266
|
+
"logClearDate": "NPLLIq_logClearDate",
|
|
267
|
+
"headerText": "NPLLIq_headerText",
|
|
268
|
+
"noteWinBtn": "NPLLIq_noteWinBtn",
|
|
269
|
+
"fillOver": "NPLLIq_fillOver",
|
|
259
270
|
"copyBtn": "NPLLIq_copyBtn",
|
|
260
|
-
"
|
|
261
|
-
"
|
|
262
|
-
"dialogLabel": "NPLLIq_dialogLabel",
|
|
263
|
-
"dialogBtnPrimary": "NPLLIq_dialogBtnPrimary",
|
|
264
|
-
"noteWinBar": "NPLLIq_noteWinBar",
|
|
265
|
-
"dialogBody": "NPLLIq_dialogBody",
|
|
266
|
-
"noteWinText": "NPLLIq_noteWinText",
|
|
271
|
+
"balanceBarLow": "NPLLIq_balanceBarLow",
|
|
272
|
+
"switch": "NPLLIq_switch",
|
|
267
273
|
"dialogHeader": "NPLLIq_dialogHeader",
|
|
268
|
-
"
|
|
274
|
+
"logSearch": "NPLLIq_logSearch",
|
|
275
|
+
"dialogClose": "NPLLIq_dialogClose",
|
|
276
|
+
"logPagerInfo": "NPLLIq_logPagerInfo",
|
|
277
|
+
"balanceToggleOpen": "NPLLIq_balanceToggleOpen",
|
|
278
|
+
"logPagerControls": "NPLLIq_logPagerControls",
|
|
279
|
+
"versionNew": "NPLLIq_versionNew",
|
|
269
280
|
"headerActions": "NPLLIq_headerActions",
|
|
270
|
-
"
|
|
271
|
-
"
|
|
272
|
-
"
|
|
273
|
-
"logPageSizeSelect": "NPLLIq_logPageSizeSelect",
|
|
274
|
-
"rowMeta": "NPLLIq_rowMeta",
|
|
275
|
-
"upgradeCommandRow": "NPLLIq_upgradeCommandRow",
|
|
276
|
-
"notesBar": "NPLLIq_notesBar",
|
|
277
|
-
"currentBadge": "NPLLIq_currentBadge",
|
|
278
|
-
"balanceRow": "NPLLIq_balanceRow",
|
|
279
|
-
"settingsBtn": "NPLLIq_settingsBtn",
|
|
280
|
-
"upgradeCommand": "NPLLIq_upgradeCommand",
|
|
281
|
-
"resetSelect": "NPLLIq_resetSelect",
|
|
281
|
+
"logPager": "NPLLIq_logPager",
|
|
282
|
+
"upgradeBannerFlash": "NPLLIq_upgradeBannerFlash",
|
|
283
|
+
"logScroll": "NPLLIq_logScroll",
|
|
282
284
|
"balanceRefreshAll": "NPLLIq_balanceRefreshAll",
|
|
283
|
-
"
|
|
284
|
-
"
|
|
285
|
-
"subtitle": "NPLLIq_subtitle",
|
|
286
|
-
"monitorRow": "NPLLIq_monitorRow",
|
|
287
|
-
"balanceValueOk": "NPLLIq_balanceValueOk",
|
|
288
|
-
"logPagerBtn": "NPLLIq_logPagerBtn",
|
|
289
|
-
"logModelCol": "NPLLIq_logModelCol",
|
|
290
|
-
"monitorHint": "NPLLIq_monitorHint",
|
|
291
|
-
"dialogOverlay": "NPLLIq_dialogOverlay",
|
|
292
|
-
"noteWinTitleText": "NPLLIq_noteWinTitleText",
|
|
293
|
-
"notice": "NPLLIq_notice",
|
|
294
|
-
"rowDropTarget": "NPLLIq_rowDropTarget",
|
|
295
|
-
"balanceSortBtn": "NPLLIq_balanceSortBtn",
|
|
296
|
-
"balanceRowValue": "NPLLIq_balanceRowValue",
|
|
297
|
-
"balanceWin": "NPLLIq_balanceWin",
|
|
298
|
-
"save": "NPLLIq_save",
|
|
299
|
-
"balanceBarRefresh": "NPLLIq_balanceBarRefresh",
|
|
300
|
-
"upgradeBannerText": "NPLLIq_upgradeBannerText",
|
|
301
|
-
"dialogTabActive": "NPLLIq_dialogTabActive",
|
|
302
|
-
"settingsDialog": "NPLLIq_settingsDialog",
|
|
285
|
+
"noteWinTitle": "NPLLIq_noteWinTitle",
|
|
286
|
+
"logDialog": "NPLLIq_logDialog",
|
|
303
287
|
"upgradeCommands": "NPLLIq_upgradeCommands",
|
|
304
|
-
"tabIcon": "NPLLIq_tabIcon",
|
|
305
|
-
"logClearDialog": "NPLLIq_logClearDialog",
|
|
306
|
-
"noteWinResize": "NPLLIq_noteWinResize",
|
|
307
|
-
"panelDimStrong": "NPLLIq_panelDimStrong",
|
|
308
|
-
"versionNew": "NPLLIq_versionNew",
|
|
309
|
-
"noteWinCollapsed": "NPLLIq_noteWinCollapsed",
|
|
310
|
-
"logPagerPages": "NPLLIq_logPagerPages",
|
|
311
|
-
"noteWin": "NPLLIq_noteWin",
|
|
312
|
-
"switch": "NPLLIq_switch",
|
|
313
|
-
"upgradeHint": "NPLLIq_upgradeHint",
|
|
314
|
-
"body": "NPLLIq_body",
|
|
315
|
-
"copyBtnDone": "NPLLIq_copyBtnDone",
|
|
316
|
-
"dialogClose": "NPLLIq_dialogClose",
|
|
317
|
-
"rowDrag": "NPLLIq_rowDrag",
|
|
318
|
-
"fillOver": "NPLLIq_fillOver",
|
|
319
|
-
"noteWinGripBar": "NPLLIq_noteWinGripBar",
|
|
320
288
|
"resetRow": "NPLLIq_resetRow",
|
|
321
|
-
"
|
|
289
|
+
"noteWinText": "NPLLIq_noteWinText",
|
|
290
|
+
"save": "NPLLIq_save",
|
|
291
|
+
"balanceBarError": "NPLLIq_balanceBarError",
|
|
292
|
+
"row": "NPLLIq_row",
|
|
293
|
+
"checkBtn": "NPLLIq_checkBtn",
|
|
294
|
+
"balanceValueLow": "NPLLIq_balanceValueLow",
|
|
295
|
+
"notesBar": "NPLLIq_notesBar",
|
|
296
|
+
"dialogActions": "NPLLIq_dialogActions",
|
|
297
|
+
"logDayCol": "NPLLIq_logDayCol",
|
|
298
|
+
"bar": "NPLLIq_bar",
|
|
299
|
+
"upgradeBannerText": "NPLLIq_upgradeBannerText",
|
|
300
|
+
"noteNew": "NPLLIq_noteNew",
|
|
301
|
+
"logModelCol": "NPLLIq_logModelCol",
|
|
322
302
|
"logTable": "NPLLIq_logTable",
|
|
323
|
-
"
|
|
324
|
-
"
|
|
325
|
-
"
|
|
326
|
-
"
|
|
327
|
-
"noteWinBtn": "NPLLIq_noteWinBtn",
|
|
303
|
+
"noteMenuBackdrop": "NPLLIq_noteMenuBackdrop",
|
|
304
|
+
"noteChip": "NPLLIq_noteChip",
|
|
305
|
+
"noteWinCollapsed": "NPLLIq_noteWinCollapsed",
|
|
306
|
+
"currentBadge": "NPLLIq_currentBadge",
|
|
328
307
|
"input": "NPLLIq_input",
|
|
329
|
-
"
|
|
330
|
-
"
|
|
331
|
-
"noticeError": "NPLLIq_noticeError",
|
|
308
|
+
"balanceSortBtn": "NPLLIq_balanceSortBtn",
|
|
309
|
+
"fillWarn": "NPLLIq_fillWarn",
|
|
332
310
|
"gearBtn": "NPLLIq_gearBtn",
|
|
333
|
-
"
|
|
334
|
-
"
|
|
311
|
+
"monitorList": "NPLLIq_monitorList",
|
|
312
|
+
"checkUpdatesRow": "NPLLIq_checkUpdatesRow",
|
|
313
|
+
"dialogTab": "NPLLIq_dialogTab",
|
|
314
|
+
"subtitle": "NPLLIq_subtitle",
|
|
315
|
+
"dialog": "NPLLIq_dialog",
|
|
316
|
+
"controls": "NPLLIq_controls",
|
|
317
|
+
"noticeError": "NPLLIq_noticeError",
|
|
318
|
+
"tabLabel": "NPLLIq_tabLabel",
|
|
319
|
+
"checkErrorHint": "NPLLIq_checkErrorHint",
|
|
320
|
+
"balanceStateError": "NPLLIq_balanceStateError",
|
|
321
|
+
"logHeader": "NPLLIq_logHeader",
|
|
322
|
+
"logClearDialog": "NPLLIq_logClearDialog",
|
|
323
|
+
"logClearBtn": "NPLLIq_logClearBtn",
|
|
324
|
+
"noteWinGripBar": "NPLLIq_noteWinGripBar",
|
|
325
|
+
"noteWinResize": "NPLLIq_noteWinResize",
|
|
326
|
+
"collapse": "NPLLIq_collapse",
|
|
327
|
+
"monitorHint": "NPLLIq_monitorHint",
|
|
335
328
|
"title": "NPLLIq_title",
|
|
336
|
-
"
|
|
337
|
-
"
|
|
338
|
-
"
|
|
329
|
+
"noteChipOpen": "NPLLIq_noteChipOpen",
|
|
330
|
+
"copyBtnDone": "NPLLIq_copyBtnDone",
|
|
331
|
+
"noteWinTitleText": "NPLLIq_noteWinTitleText",
|
|
332
|
+
"balanceLastLine": "NPLLIq_balanceLastLine",
|
|
333
|
+
"noteNewPlus": "NPLLIq_noteNewPlus",
|
|
334
|
+
"rowDropTarget": "NPLLIq_rowDropTarget",
|
|
335
|
+
"balanceValueError": "NPLLIq_balanceValueError",
|
|
339
336
|
"upgradeBanner": "NPLLIq_upgradeBanner",
|
|
340
|
-
"
|
|
341
|
-
"dialogHint": "NPLLIq_dialogHint",
|
|
337
|
+
"logToolbar": "NPLLIq_logToolbar",
|
|
342
338
|
"version": "NPLLIq_version",
|
|
339
|
+
"balanceRowRefresh": "NPLLIq_balanceRowRefresh",
|
|
343
340
|
"balanceStateHint": "NPLLIq_balanceStateHint",
|
|
344
|
-
"
|
|
345
|
-
"
|
|
341
|
+
"noteWinBar": "NPLLIq_noteWinBar",
|
|
342
|
+
"rowHeader": "NPLLIq_rowHeader",
|
|
343
|
+
"balanceWin": "NPLLIq_balanceWin",
|
|
346
344
|
"balanceWinTitle": "NPLLIq_balanceWinTitle",
|
|
347
|
-
"
|
|
348
|
-
"settingsBtnActive": "NPLLIq_settingsBtnActive",
|
|
349
|
-
"header": "NPLLIq_header",
|
|
350
|
-
"logScroll": "NPLLIq_logScroll",
|
|
351
|
-
"controls": "NPLLIq_controls",
|
|
352
|
-
"balanceBarBadge": "NPLLIq_balanceBarBadge",
|
|
353
|
-
"row": "NPLLIq_row",
|
|
354
|
-
"balanceValueError": "NPLLIq_balanceValueError",
|
|
355
|
-
"dialogSection": "NPLLIq_dialogSection",
|
|
356
|
-
"balanceRowRefresh": "NPLLIq_balanceRowRefresh",
|
|
357
|
-
"logDayCol": "NPLLIq_logDayCol",
|
|
358
|
-
"noteMenu": "NPLLIq_noteMenu",
|
|
345
|
+
"balanceBar": "NPLLIq_balanceBar",
|
|
359
346
|
"balanceRowName": "NPLLIq_balanceRowName",
|
|
360
|
-
"
|
|
361
|
-
"
|
|
362
|
-
"
|
|
363
|
-
"
|
|
364
|
-
"
|
|
365
|
-
"
|
|
366
|
-
"
|
|
367
|
-
"
|
|
368
|
-
"
|
|
347
|
+
"dialogTabs": "NPLLIq_dialogTabs",
|
|
348
|
+
"noteMenu": "NPLLIq_noteMenu",
|
|
349
|
+
"rowDragging": "NPLLIq_rowDragging",
|
|
350
|
+
"panelDimStrong": "NPLLIq_panelDimStrong",
|
|
351
|
+
"dialogSection": "NPLLIq_dialogSection",
|
|
352
|
+
"dialogLabel": "NPLLIq_dialogLabel",
|
|
353
|
+
"monitorName": "NPLLIq_monitorName",
|
|
354
|
+
"logPagerPages": "NPLLIq_logPagerPages",
|
|
355
|
+
"balanceValueOk": "NPLLIq_balanceValueOk",
|
|
356
|
+
"body": "NPLLIq_body",
|
|
357
|
+
"settingsBtnActive": "NPLLIq_settingsBtnActive",
|
|
358
|
+
"logPageSizeSelect": "NPLLIq_logPageSizeSelect",
|
|
359
|
+
"panel": "NPLLIq_panel",
|
|
360
|
+
"balanceRowHeader": "NPLLIq_balanceRowHeader",
|
|
369
361
|
"balanceBarDim": "NPLLIq_balanceBarDim",
|
|
362
|
+
"dialogBtn": "NPLLIq_dialogBtn",
|
|
363
|
+
"panelDim": "NPLLIq_panelDim",
|
|
364
|
+
"balanceWinHeader": "NPLLIq_balanceWinHeader",
|
|
365
|
+
"radioRow": "NPLLIq_radioRow",
|
|
366
|
+
"dialogBtnPrimary": "NPLLIq_dialogBtnPrimary",
|
|
367
|
+
"header": "NPLLIq_header",
|
|
370
368
|
"fullNotice": "NPLLIq_fullNotice",
|
|
371
|
-
"
|
|
372
|
-
"
|
|
369
|
+
"upgradeCommand": "NPLLIq_upgradeCommand",
|
|
370
|
+
"dialogTabActive": "NPLLIq_dialogTabActive",
|
|
371
|
+
"balanceRowValue": "NPLLIq_balanceRowValue",
|
|
372
|
+
"balanceToggle": "NPLLIq_balanceToggle",
|
|
373
|
+
"rowMeta": "NPLLIq_rowMeta",
|
|
374
|
+
"balanceBarRefresh": "NPLLIq_balanceBarRefresh",
|
|
375
|
+
"checkUpdatesLabel": "NPLLIq_checkUpdatesLabel",
|
|
376
|
+
"rowName": "NPLLIq_rowName",
|
|
377
|
+
"logUsedCol": "NPLLIq_logUsedCol",
|
|
378
|
+
"noteWin": "NPLLIq_noteWin",
|
|
379
|
+
"notice": "NPLLIq_notice",
|
|
380
|
+
"settingsDialog": "NPLLIq_settingsDialog",
|
|
381
|
+
"dialogHint": "NPLLIq_dialogHint",
|
|
382
|
+
"balanceBarBadge": "NPLLIq_balanceBarBadge",
|
|
373
383
|
"noteMenuItem": "NPLLIq_noteMenuItem",
|
|
374
|
-
"panel": "NPLLIq_panel",
|
|
375
|
-
"bar": "NPLLIq_bar",
|
|
376
|
-
"balanceToggleOpen": "NPLLIq_balanceToggleOpen",
|
|
377
|
-
"checkErrorHint": "NPLLIq_checkErrorHint",
|
|
378
|
-
"radioRow": "NPLLIq_radioRow",
|
|
379
|
-
"fillIdle": "NPLLIq_fillIdle",
|
|
380
|
-
"upgradeBannerFlash": "NPLLIq_upgradeBannerFlash",
|
|
381
|
-
"noteNew": "NPLLIq_noteNew",
|
|
382
|
-
"fillWarn": "NPLLIq_fillWarn",
|
|
383
|
-
"balanceWinBody": "NPLLIq_balanceWinBody",
|
|
384
|
-
"balanceBar": "NPLLIq_balanceBar",
|
|
385
|
-
"checkUpdatesRow": "NPLLIq_checkUpdatesRow",
|
|
386
|
-
"dialogActions": "NPLLIq_dialogActions",
|
|
387
384
|
"upgradeClose": "NPLLIq_upgradeClose",
|
|
388
|
-
"
|
|
389
|
-
"
|
|
390
|
-
"
|
|
391
|
-
"
|
|
385
|
+
"tab": "NPLLIq_tab",
|
|
386
|
+
"dialogTitle": "NPLLIq_dialogTitle",
|
|
387
|
+
"balanceRow": "NPLLIq_balanceRow",
|
|
388
|
+
"dialogBody": "NPLLIq_dialogBody",
|
|
389
|
+
"settingsBtn": "NPLLIq_settingsBtn",
|
|
390
|
+
"upgradeHint": "NPLLIq_upgradeHint",
|
|
391
|
+
"tabIcon": "NPLLIq_tabIcon"
|
|
392
392
|
};
|
|
393
393
|
//#endregion
|
|
394
394
|
//#region lib/types/client/TokenQuotaPanel.js
|
|
@@ -1043,13 +1043,13 @@ window.__ModuleLoader__.load({
|
|
|
1043
1043
|
onPointerLeave: () => {
|
|
1044
1044
|
setHovered(false);
|
|
1045
1045
|
},
|
|
1046
|
-
children: [
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1046
|
+
children: [(0, react_jsx_runtime.jsxs)("div", {
|
|
1047
|
+
className: TokenQuotaPanel_module_css_default.header,
|
|
1048
|
+
onPointerDown: (event) => {
|
|
1049
|
+
beginDrag(event, panelRef.current, applyPanelPos);
|
|
1050
|
+
},
|
|
1051
|
+
children: [
|
|
1052
|
+
(0, react_jsx_runtime.jsx)("div", {
|
|
1053
1053
|
className: TokenQuotaPanel_module_css_default.headerText,
|
|
1054
1054
|
children: (0, react_jsx_runtime.jsxs)("div", {
|
|
1055
1055
|
className: TokenQuotaPanel_module_css_default.title,
|
|
@@ -1058,16 +1058,17 @@ window.__ModuleLoader__.load({
|
|
|
1058
1058
|
title: t("upgradeAvailableHint"),
|
|
1059
1059
|
children: [
|
|
1060
1060
|
"v",
|
|
1061
|
-
"0.1.
|
|
1061
|
+
"0.1.39",
|
|
1062
1062
|
" → v",
|
|
1063
1063
|
upgrade.latestVersion
|
|
1064
1064
|
]
|
|
1065
1065
|
}) : (0, react_jsx_runtime.jsxs)("span", {
|
|
1066
1066
|
className: TokenQuotaPanel_module_css_default.version,
|
|
1067
|
-
children: ["v", "0.1.
|
|
1067
|
+
children: ["v", "0.1.39"]
|
|
1068
1068
|
})]
|
|
1069
1069
|
})
|
|
1070
|
-
}),
|
|
1070
|
+
}),
|
|
1071
|
+
(0, react_jsx_runtime.jsxs)("div", {
|
|
1071
1072
|
className: TokenQuotaPanel_module_css_default.headerActions,
|
|
1072
1073
|
onPointerDown: (event) => {
|
|
1073
1074
|
event.stopPropagation();
|
|
@@ -1106,296 +1107,295 @@ window.__ModuleLoader__.load({
|
|
|
1106
1107
|
children: t("collapse")
|
|
1107
1108
|
})
|
|
1108
1109
|
]
|
|
1109
|
-
})
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1110
|
+
}),
|
|
1111
|
+
(0, react_jsx_runtime.jsxs)("div", {
|
|
1112
|
+
className: TokenQuotaPanel_module_css_default.notesBar,
|
|
1113
|
+
onPointerDown: (event) => {
|
|
1114
|
+
event.stopPropagation();
|
|
1115
|
+
},
|
|
1116
|
+
children: [
|
|
1117
|
+
notes.map((note) => {
|
|
1118
|
+
const open = note.visible && !note.collapsed;
|
|
1119
|
+
return (0, react_jsx_runtime.jsx)("button", {
|
|
1120
|
+
type: "button",
|
|
1121
|
+
className: `${TokenQuotaPanel_module_css_default.noteChip}${open ? ` ${TokenQuotaPanel_module_css_default.noteChipOpen}` : ""}`,
|
|
1122
|
+
title: note.title.trim() === "" ? t("noteUntitled") : note.title,
|
|
1123
|
+
onClick: () => {
|
|
1124
|
+
patchNote(note.id, {
|
|
1125
|
+
visible: true,
|
|
1126
|
+
collapsed: false
|
|
1127
|
+
});
|
|
1128
|
+
},
|
|
1129
|
+
onContextMenu: (event) => {
|
|
1130
|
+
event.preventDefault();
|
|
1131
|
+
setNoteMenu({
|
|
1132
|
+
id: note.id,
|
|
1133
|
+
x: event.clientX,
|
|
1134
|
+
y: event.clientY
|
|
1135
|
+
});
|
|
1136
|
+
},
|
|
1137
|
+
children: noteInitial(note.title)
|
|
1138
|
+
}, note.id);
|
|
1139
|
+
}),
|
|
1140
|
+
(0, react_jsx_runtime.jsxs)("button", {
|
|
1141
|
+
type: "button",
|
|
1142
|
+
className: TokenQuotaPanel_module_css_default.noteNew,
|
|
1143
|
+
disabled: notes.length >= 5,
|
|
1144
|
+
title: notes.length >= 5 ? t("noteMaxHint") : t("noteNewHint"),
|
|
1145
|
+
onClick: createNote,
|
|
1146
|
+
children: [(0, react_jsx_runtime.jsxs)("svg", {
|
|
1147
|
+
viewBox: "0 0 16 16",
|
|
1148
|
+
width: "13",
|
|
1149
|
+
height: "13",
|
|
1150
|
+
"aria-hidden": "true",
|
|
1151
|
+
children: [(0, react_jsx_runtime.jsx)("path", {
|
|
1152
|
+
d: "M4 1.6h4.6L12.4 5.4v9H4z",
|
|
1153
|
+
fill: "none",
|
|
1154
|
+
stroke: "currentColor",
|
|
1155
|
+
strokeWidth: "1.2",
|
|
1156
|
+
strokeLinejoin: "round"
|
|
1157
|
+
}), (0, react_jsx_runtime.jsx)("path", {
|
|
1158
|
+
d: "M8.4 1.6v3.9h4",
|
|
1159
|
+
fill: "none",
|
|
1160
|
+
stroke: "currentColor",
|
|
1161
|
+
strokeWidth: "1.2",
|
|
1162
|
+
strokeLinejoin: "round"
|
|
1163
|
+
})]
|
|
1164
|
+
}), (0, react_jsx_runtime.jsx)("span", {
|
|
1165
|
+
className: TokenQuotaPanel_module_css_default.noteNewPlus,
|
|
1166
|
+
children: "+"
|
|
1167
|
+
})]
|
|
1168
|
+
}),
|
|
1169
|
+
balanceEnabled && (0, react_jsx_runtime.jsx)("button", {
|
|
1120
1170
|
type: "button",
|
|
1121
|
-
className: `${TokenQuotaPanel_module_css_default.
|
|
1122
|
-
title:
|
|
1171
|
+
className: `${TokenQuotaPanel_module_css_default.noteNew} ${TokenQuotaPanel_module_css_default.balanceToggle}${balanceOpen ? ` ${TokenQuotaPanel_module_css_default.balanceToggleOpen}` : ""}`,
|
|
1172
|
+
title: t("balanceTitle"),
|
|
1123
1173
|
onClick: () => {
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1174
|
+
if (balanceOpen) {
|
|
1175
|
+
setBalanceOpen(false);
|
|
1176
|
+
return;
|
|
1177
|
+
}
|
|
1178
|
+
const winW = 280;
|
|
1179
|
+
const rect = panelRef.current?.getBoundingClientRect();
|
|
1180
|
+
if (rect !== void 0) setBalancePos({
|
|
1181
|
+
x: Math.max(8, rect.left - winW - 8),
|
|
1182
|
+
y: rect.top
|
|
1127
1183
|
});
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
setNoteMenu({
|
|
1132
|
-
id: note.id,
|
|
1133
|
-
x: event.clientX,
|
|
1134
|
-
y: event.clientY
|
|
1184
|
+
else setBalancePos({
|
|
1185
|
+
x: Math.max(8, (typeof window !== "undefined" ? window.innerWidth : 800) - 12 - 320 - winW - 8),
|
|
1186
|
+
y: 56
|
|
1135
1187
|
});
|
|
1188
|
+
setBalanceOpen(true);
|
|
1136
1189
|
},
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
stroke: "currentColor",
|
|
1161
|
-
strokeWidth: "1.2",
|
|
1162
|
-
strokeLinejoin: "round"
|
|
1163
|
-
})]
|
|
1164
|
-
}), (0, react_jsx_runtime.jsx)("span", {
|
|
1165
|
-
className: TokenQuotaPanel_module_css_default.noteNewPlus,
|
|
1166
|
-
children: "+"
|
|
1167
|
-
})]
|
|
1168
|
-
}),
|
|
1169
|
-
balanceEnabled && (0, react_jsx_runtime.jsx)("button", {
|
|
1170
|
-
type: "button",
|
|
1171
|
-
className: `${TokenQuotaPanel_module_css_default.noteNew} ${TokenQuotaPanel_module_css_default.balanceToggle}${balanceOpen ? ` ${TokenQuotaPanel_module_css_default.balanceToggleOpen}` : ""}`,
|
|
1172
|
-
title: t("balanceTitle"),
|
|
1173
|
-
onClick: () => {
|
|
1174
|
-
if (balanceOpen) {
|
|
1175
|
-
setBalanceOpen(false);
|
|
1176
|
-
return;
|
|
1177
|
-
}
|
|
1178
|
-
const winW = 280;
|
|
1179
|
-
const rect = panelRef.current?.getBoundingClientRect();
|
|
1180
|
-
if (rect !== void 0) setBalancePos({
|
|
1181
|
-
x: Math.max(8, rect.left - winW - 8),
|
|
1182
|
-
y: rect.top
|
|
1183
|
-
});
|
|
1184
|
-
else setBalancePos({
|
|
1185
|
-
x: Math.max(8, (typeof window !== "undefined" ? window.innerWidth : 800) - 12 - 320 - winW - 8),
|
|
1186
|
-
y: 56
|
|
1187
|
-
});
|
|
1188
|
-
setBalanceOpen(true);
|
|
1189
|
-
},
|
|
1190
|
-
"aria-pressed": balanceOpen,
|
|
1191
|
-
children: (0, react_jsx_runtime.jsxs)("svg", {
|
|
1192
|
-
viewBox: "0 0 16 16",
|
|
1193
|
-
width: "13",
|
|
1194
|
-
height: "13",
|
|
1195
|
-
"aria-hidden": "true",
|
|
1196
|
-
children: [(0, react_jsx_runtime.jsx)("circle", {
|
|
1197
|
-
cx: "8",
|
|
1198
|
-
cy: "8",
|
|
1199
|
-
r: "6.3",
|
|
1200
|
-
fill: "none",
|
|
1201
|
-
stroke: "currentColor",
|
|
1202
|
-
strokeWidth: "1.3"
|
|
1203
|
-
}), (0, react_jsx_runtime.jsx)("text", {
|
|
1204
|
-
x: "8",
|
|
1205
|
-
y: "11",
|
|
1206
|
-
textAnchor: "middle",
|
|
1207
|
-
fontSize: "9",
|
|
1208
|
-
fontWeight: "700",
|
|
1209
|
-
fill: "currentColor",
|
|
1210
|
-
children: "¥"
|
|
1211
|
-
})]
|
|
1190
|
+
"aria-pressed": balanceOpen,
|
|
1191
|
+
children: (0, react_jsx_runtime.jsxs)("svg", {
|
|
1192
|
+
viewBox: "0 0 16 16",
|
|
1193
|
+
width: "13",
|
|
1194
|
+
height: "13",
|
|
1195
|
+
"aria-hidden": "true",
|
|
1196
|
+
children: [(0, react_jsx_runtime.jsx)("circle", {
|
|
1197
|
+
cx: "8",
|
|
1198
|
+
cy: "8",
|
|
1199
|
+
r: "6.3",
|
|
1200
|
+
fill: "none",
|
|
1201
|
+
stroke: "currentColor",
|
|
1202
|
+
strokeWidth: "1.3"
|
|
1203
|
+
}), (0, react_jsx_runtime.jsx)("text", {
|
|
1204
|
+
x: "8",
|
|
1205
|
+
y: "11",
|
|
1206
|
+
textAnchor: "middle",
|
|
1207
|
+
fontSize: "9",
|
|
1208
|
+
fontWeight: "700",
|
|
1209
|
+
fill: "currentColor",
|
|
1210
|
+
children: "¥"
|
|
1211
|
+
})]
|
|
1212
|
+
})
|
|
1212
1213
|
})
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1214
|
+
]
|
|
1215
|
+
})
|
|
1216
|
+
]
|
|
1217
|
+
}), (0, react_jsx_runtime.jsxs)("div", {
|
|
1218
|
+
className: TokenQuotaPanel_module_css_default.body,
|
|
1219
|
+
children: [
|
|
1220
|
+
loading && (0, react_jsx_runtime.jsx)("div", {
|
|
1221
|
+
className: TokenQuotaPanel_module_css_default.notice,
|
|
1222
|
+
children: t("loading")
|
|
1223
|
+
}),
|
|
1224
|
+
error !== null && (0, react_jsx_runtime.jsx)("div", {
|
|
1225
|
+
className: TokenQuotaPanel_module_css_default.noticeError,
|
|
1226
|
+
children: error
|
|
1227
|
+
}),
|
|
1228
|
+
fullNotice !== null && (0, react_jsx_runtime.jsx)("div", {
|
|
1229
|
+
className: TokenQuotaPanel_module_css_default.fullNotice,
|
|
1230
|
+
role: "alert",
|
|
1231
|
+
children: fullNotice
|
|
1232
|
+
}),
|
|
1233
|
+
upgrade !== null && !upgradeDismissed && (0, react_jsx_runtime.jsxs)("div", {
|
|
1234
|
+
className: `${TokenQuotaPanel_module_css_default.upgradeBanner}${upgradeFlash ? ` ${TokenQuotaPanel_module_css_default.upgradeBannerFlash}` : ""}`,
|
|
1235
|
+
role: "alert",
|
|
1236
|
+
children: [
|
|
1237
|
+
(0, react_jsx_runtime.jsx)("div", {
|
|
1238
|
+
className: TokenQuotaPanel_module_css_default.upgradeBannerText,
|
|
1239
|
+
children: t("upgradeAvailable").replace("{version}", upgrade.latestVersion)
|
|
1240
|
+
}),
|
|
1241
|
+
(0, react_jsx_runtime.jsx)("div", {
|
|
1242
|
+
className: TokenQuotaPanel_module_css_default.upgradeCommands,
|
|
1243
|
+
children: upgrade.commands.map((cmd) => (0, react_jsx_runtime.jsxs)("div", {
|
|
1244
|
+
className: TokenQuotaPanel_module_css_default.upgradeCommandRow,
|
|
1245
|
+
children: [(0, react_jsx_runtime.jsx)("code", {
|
|
1246
|
+
className: TokenQuotaPanel_module_css_default.upgradeCommand,
|
|
1247
|
+
children: cmd
|
|
1248
|
+
}), (0, react_jsx_runtime.jsx)("button", {
|
|
1249
|
+
type: "button",
|
|
1250
|
+
className: `${TokenQuotaPanel_module_css_default.copyBtn}${copiedCmd === cmd ? ` ${TokenQuotaPanel_module_css_default.copyBtnDone}` : ""}`,
|
|
1251
|
+
onClick: () => {
|
|
1252
|
+
copyUpgradeCommand(cmd);
|
|
1253
|
+
},
|
|
1254
|
+
children: copiedCmd === cmd ? t("copied") : t("copy")
|
|
1255
|
+
})]
|
|
1256
|
+
}, cmd))
|
|
1257
|
+
}),
|
|
1258
|
+
(0, react_jsx_runtime.jsx)("div", {
|
|
1259
|
+
className: TokenQuotaPanel_module_css_default.upgradeHint,
|
|
1260
|
+
children: t("upgradeHint")
|
|
1261
|
+
}),
|
|
1262
|
+
(0, react_jsx_runtime.jsx)("button", {
|
|
1263
|
+
type: "button",
|
|
1264
|
+
className: TokenQuotaPanel_module_css_default.upgradeClose,
|
|
1265
|
+
onClick: () => {
|
|
1266
|
+
actions.setUpgradeDismissed(true);
|
|
1267
|
+
},
|
|
1268
|
+
"aria-label": t("close"),
|
|
1269
|
+
children: "×"
|
|
1270
|
+
})
|
|
1271
|
+
]
|
|
1272
|
+
}),
|
|
1273
|
+
!loading && error === null && visibleRows.length === 0 && (0, react_jsx_runtime.jsx)("div", {
|
|
1274
|
+
className: TokenQuotaPanel_module_css_default.notice,
|
|
1275
|
+
children: monitored !== null && monitored.length === 0 ? t("noMonitored") : t("waiting")
|
|
1276
|
+
}),
|
|
1277
|
+
visibleRows.map((row) => {
|
|
1278
|
+
const state = barStateOf(row);
|
|
1279
|
+
const pct = row.limit > 0 ? Math.min(100, Math.round(row.used / row.limit * 100)) : 0;
|
|
1280
|
+
const barClass = state === "over" ? TokenQuotaPanel_module_css_default.fillOver : state === "warn" ? TokenQuotaPanel_module_css_default.fillWarn : TokenQuotaPanel_module_css_default.fillIdle;
|
|
1281
|
+
const editing = editingKey === row.key;
|
|
1282
|
+
return (0, react_jsx_runtime.jsxs)("div", {
|
|
1283
|
+
className: `${TokenQuotaPanel_module_css_default.row}${dragKey === row.key ? ` ${TokenQuotaPanel_module_css_default.rowDragging}` : ""}${dropKey === row.key && dragKey !== row.key ? ` ${TokenQuotaPanel_module_css_default.rowDropTarget}` : ""}`,
|
|
1284
|
+
onMouseEnter: () => {
|
|
1285
|
+
setHoveredRowKey(row.key);
|
|
1286
|
+
triggerRowBalanceRefreshIfStale(row.provider);
|
|
1287
|
+
},
|
|
1288
|
+
onMouseLeave: () => {
|
|
1289
|
+
setHoveredRowKey((prev) => prev === row.key ? null : prev);
|
|
1290
|
+
},
|
|
1291
|
+
onDragOver: (event) => {
|
|
1292
|
+
if (dragKey === null || dragKey === row.key) return;
|
|
1293
|
+
event.preventDefault();
|
|
1294
|
+
setDropKey(row.key);
|
|
1295
|
+
},
|
|
1296
|
+
onDrop: (event) => {
|
|
1297
|
+
event.preventDefault();
|
|
1298
|
+
if (dragKey !== null && dragKey !== row.key) setModelOrder(reorderKeys(rows.map((r) => r.key), dragKey, row.key));
|
|
1299
|
+
setDragKey(null);
|
|
1300
|
+
setDropKey(null);
|
|
1301
|
+
},
|
|
1302
|
+
onDragEnd: () => {
|
|
1303
|
+
setDragKey(null);
|
|
1304
|
+
setDropKey(null);
|
|
1305
|
+
},
|
|
1235
1306
|
children: [
|
|
1236
|
-
(0, react_jsx_runtime.
|
|
1237
|
-
className: TokenQuotaPanel_module_css_default.
|
|
1238
|
-
children:
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
}), (0, react_jsx_runtime.jsx)("button", {
|
|
1248
|
-
type: "button",
|
|
1249
|
-
className: `${TokenQuotaPanel_module_css_default.copyBtn}${copiedCmd === cmd ? ` ${TokenQuotaPanel_module_css_default.copyBtnDone}` : ""}`,
|
|
1250
|
-
onClick: () => {
|
|
1251
|
-
copyUpgradeCommand(cmd);
|
|
1307
|
+
(0, react_jsx_runtime.jsxs)("div", {
|
|
1308
|
+
className: TokenQuotaPanel_module_css_default.rowHeader,
|
|
1309
|
+
children: [
|
|
1310
|
+
(0, react_jsx_runtime.jsx)("span", {
|
|
1311
|
+
className: TokenQuotaPanel_module_css_default.rowDrag,
|
|
1312
|
+
draggable: true,
|
|
1313
|
+
title: t("reorderHint"),
|
|
1314
|
+
onDragStart: (event) => {
|
|
1315
|
+
setDragKey(row.key);
|
|
1316
|
+
event.dataTransfer.effectAllowed = "move";
|
|
1317
|
+
event.dataTransfer.setData("text/plain", row.key);
|
|
1252
1318
|
},
|
|
1253
|
-
children:
|
|
1254
|
-
})
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
actions.setUpgradeDismissed(true);
|
|
1266
|
-
},
|
|
1267
|
-
"aria-label": t("close"),
|
|
1268
|
-
children: "×"
|
|
1269
|
-
})
|
|
1270
|
-
]
|
|
1271
|
-
}),
|
|
1272
|
-
!loading && error === null && visibleRows.length === 0 && (0, react_jsx_runtime.jsx)("div", {
|
|
1273
|
-
className: TokenQuotaPanel_module_css_default.notice,
|
|
1274
|
-
children: monitored !== null && monitored.length === 0 ? t("noMonitored") : t("waiting")
|
|
1275
|
-
}),
|
|
1276
|
-
visibleRows.map((row) => {
|
|
1277
|
-
const state = barStateOf(row);
|
|
1278
|
-
const pct = row.limit > 0 ? Math.min(100, Math.round(row.used / row.limit * 100)) : 0;
|
|
1279
|
-
const barClass = state === "over" ? TokenQuotaPanel_module_css_default.fillOver : state === "warn" ? TokenQuotaPanel_module_css_default.fillWarn : TokenQuotaPanel_module_css_default.fillIdle;
|
|
1280
|
-
const editing = editingKey === row.key;
|
|
1281
|
-
return (0, react_jsx_runtime.jsxs)("div", {
|
|
1282
|
-
className: `${TokenQuotaPanel_module_css_default.row}${dragKey === row.key ? ` ${TokenQuotaPanel_module_css_default.rowDragging}` : ""}${dropKey === row.key && dragKey !== row.key ? ` ${TokenQuotaPanel_module_css_default.rowDropTarget}` : ""}`,
|
|
1283
|
-
onMouseEnter: () => {
|
|
1284
|
-
setHoveredRowKey(row.key);
|
|
1285
|
-
triggerRowBalanceRefreshIfStale(row.provider);
|
|
1286
|
-
},
|
|
1287
|
-
onMouseLeave: () => {
|
|
1288
|
-
setHoveredRowKey((prev) => prev === row.key ? null : prev);
|
|
1289
|
-
},
|
|
1290
|
-
onDragOver: (event) => {
|
|
1291
|
-
if (dragKey === null || dragKey === row.key) return;
|
|
1292
|
-
event.preventDefault();
|
|
1293
|
-
setDropKey(row.key);
|
|
1294
|
-
},
|
|
1295
|
-
onDrop: (event) => {
|
|
1296
|
-
event.preventDefault();
|
|
1297
|
-
if (dragKey !== null && dragKey !== row.key) setModelOrder(reorderKeys(rows.map((r) => r.key), dragKey, row.key));
|
|
1298
|
-
setDragKey(null);
|
|
1299
|
-
setDropKey(null);
|
|
1300
|
-
},
|
|
1301
|
-
onDragEnd: () => {
|
|
1302
|
-
setDragKey(null);
|
|
1303
|
-
setDropKey(null);
|
|
1304
|
-
},
|
|
1305
|
-
children: [
|
|
1306
|
-
(0, react_jsx_runtime.jsxs)("div", {
|
|
1307
|
-
className: TokenQuotaPanel_module_css_default.rowHeader,
|
|
1308
|
-
children: [
|
|
1309
|
-
(0, react_jsx_runtime.jsx)("span", {
|
|
1310
|
-
className: TokenQuotaPanel_module_css_default.rowDrag,
|
|
1311
|
-
draggable: true,
|
|
1312
|
-
title: t("reorderHint"),
|
|
1313
|
-
onDragStart: (event) => {
|
|
1314
|
-
setDragKey(row.key);
|
|
1315
|
-
event.dataTransfer.effectAllowed = "move";
|
|
1316
|
-
event.dataTransfer.setData("text/plain", row.key);
|
|
1317
|
-
},
|
|
1318
|
-
children: "⠿"
|
|
1319
|
-
}),
|
|
1320
|
-
(0, react_jsx_runtime.jsxs)("span", {
|
|
1321
|
-
className: TokenQuotaPanel_module_css_default.rowName,
|
|
1322
|
-
title: row.key,
|
|
1323
|
-
children: [
|
|
1324
|
-
row.name,
|
|
1325
|
-
row.current && (0, react_jsx_runtime.jsx)("span", {
|
|
1326
|
-
className: TokenQuotaPanel_module_css_default.currentBadge,
|
|
1327
|
-
children: t("current")
|
|
1328
|
-
}),
|
|
1329
|
-
sessionId !== void 0 && !row.current && (0, react_jsx_runtime.jsx)("button", {
|
|
1330
|
-
type: "button",
|
|
1331
|
-
className: TokenQuotaPanel_module_css_default.selectBtn,
|
|
1332
|
-
onClick: () => {
|
|
1333
|
-
selectModel(sessionId, row.provider, row.model);
|
|
1334
|
-
},
|
|
1335
|
-
children: t("select")
|
|
1336
|
-
})
|
|
1337
|
-
]
|
|
1338
|
-
}),
|
|
1339
|
-
(0, react_jsx_runtime.jsxs)("span", {
|
|
1340
|
-
className: TokenQuotaPanel_module_css_default.rowMeta,
|
|
1341
|
-
children: [(() => {
|
|
1342
|
-
const bt = balanceTextForRow(row);
|
|
1343
|
-
return hoveredRowKey === row.key && bt.text !== "" && metaToggle === 1 ? (0, react_jsx_runtime.jsx)("span", {
|
|
1344
|
-
className: bt.cls,
|
|
1345
|
-
children: bt.text
|
|
1346
|
-
}) : (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: quotaText(row) });
|
|
1347
|
-
})(), (0, react_jsx_runtime.jsx)("button", {
|
|
1319
|
+
children: "⠿"
|
|
1320
|
+
}),
|
|
1321
|
+
(0, react_jsx_runtime.jsxs)("span", {
|
|
1322
|
+
className: TokenQuotaPanel_module_css_default.rowName,
|
|
1323
|
+
title: row.key,
|
|
1324
|
+
children: [
|
|
1325
|
+
row.name,
|
|
1326
|
+
row.current && (0, react_jsx_runtime.jsx)("span", {
|
|
1327
|
+
className: TokenQuotaPanel_module_css_default.currentBadge,
|
|
1328
|
+
children: t("current")
|
|
1329
|
+
}),
|
|
1330
|
+
sessionId !== void 0 && !row.current && (0, react_jsx_runtime.jsx)("button", {
|
|
1348
1331
|
type: "button",
|
|
1349
|
-
className: TokenQuotaPanel_module_css_default.
|
|
1350
|
-
title: t("setLimitHint"),
|
|
1332
|
+
className: TokenQuotaPanel_module_css_default.selectBtn,
|
|
1351
1333
|
onClick: () => {
|
|
1352
|
-
|
|
1334
|
+
selectModel(sessionId, row.provider, row.model);
|
|
1353
1335
|
},
|
|
1354
|
-
children: "
|
|
1355
|
-
})
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1336
|
+
children: t("select")
|
|
1337
|
+
})
|
|
1338
|
+
]
|
|
1339
|
+
}),
|
|
1340
|
+
(0, react_jsx_runtime.jsxs)("span", {
|
|
1341
|
+
className: TokenQuotaPanel_module_css_default.rowMeta,
|
|
1342
|
+
children: [(() => {
|
|
1343
|
+
const bt = balanceTextForRow(row);
|
|
1344
|
+
return hoveredRowKey === row.key && bt.text !== "" && metaToggle === 1 ? (0, react_jsx_runtime.jsx)("span", {
|
|
1345
|
+
className: bt.cls,
|
|
1346
|
+
children: bt.text
|
|
1347
|
+
}) : (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: quotaText(row) });
|
|
1348
|
+
})(), (0, react_jsx_runtime.jsx)("button", {
|
|
1349
|
+
type: "button",
|
|
1350
|
+
className: TokenQuotaPanel_module_css_default.gearBtn,
|
|
1351
|
+
title: t("setLimitHint"),
|
|
1352
|
+
onClick: () => {
|
|
1353
|
+
setEditingKey(editing ? null : row.key);
|
|
1354
|
+
},
|
|
1355
|
+
children: "⚙"
|
|
1356
|
+
})]
|
|
1364
1357
|
})
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
step: 1e4,
|
|
1373
|
-
placeholder: t("limitPlaceholder"),
|
|
1374
|
-
value: drafts[row.key] ?? "",
|
|
1375
|
-
onChange: (event) => {
|
|
1376
|
-
setDrafts((prev) => ({
|
|
1377
|
-
...prev,
|
|
1378
|
-
[row.key]: event.target.value
|
|
1379
|
-
}));
|
|
1380
|
-
},
|
|
1381
|
-
onKeyDown: (event) => {
|
|
1382
|
-
if (event.key === "Enter") commitLimit(row);
|
|
1383
|
-
}
|
|
1384
|
-
}), (0, react_jsx_runtime.jsx)("button", {
|
|
1385
|
-
type: "button",
|
|
1386
|
-
className: TokenQuotaPanel_module_css_default.save,
|
|
1387
|
-
onClick: () => {
|
|
1388
|
-
commitLimit(row);
|
|
1389
|
-
},
|
|
1390
|
-
children: t("save")
|
|
1391
|
-
})]
|
|
1358
|
+
]
|
|
1359
|
+
}),
|
|
1360
|
+
(0, react_jsx_runtime.jsx)("div", {
|
|
1361
|
+
className: TokenQuotaPanel_module_css_default.bar,
|
|
1362
|
+
children: (0, react_jsx_runtime.jsx)("div", {
|
|
1363
|
+
className: barClass,
|
|
1364
|
+
style: { width: `${pct}%` }
|
|
1392
1365
|
})
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1366
|
+
}),
|
|
1367
|
+
editing && (0, react_jsx_runtime.jsxs)("div", {
|
|
1368
|
+
className: TokenQuotaPanel_module_css_default.controls,
|
|
1369
|
+
children: [(0, react_jsx_runtime.jsx)("input", {
|
|
1370
|
+
className: TokenQuotaPanel_module_css_default.input,
|
|
1371
|
+
type: "number",
|
|
1372
|
+
min: 0,
|
|
1373
|
+
step: 1e4,
|
|
1374
|
+
placeholder: t("limitPlaceholder"),
|
|
1375
|
+
value: drafts[row.key] ?? "",
|
|
1376
|
+
onChange: (event) => {
|
|
1377
|
+
setDrafts((prev) => ({
|
|
1378
|
+
...prev,
|
|
1379
|
+
[row.key]: event.target.value
|
|
1380
|
+
}));
|
|
1381
|
+
},
|
|
1382
|
+
onKeyDown: (event) => {
|
|
1383
|
+
if (event.key === "Enter") commitLimit(row);
|
|
1384
|
+
}
|
|
1385
|
+
}), (0, react_jsx_runtime.jsx)("button", {
|
|
1386
|
+
type: "button",
|
|
1387
|
+
className: TokenQuotaPanel_module_css_default.save,
|
|
1388
|
+
onClick: () => {
|
|
1389
|
+
commitLimit(row);
|
|
1390
|
+
},
|
|
1391
|
+
children: t("save")
|
|
1392
|
+
})]
|
|
1393
|
+
})
|
|
1394
|
+
]
|
|
1395
|
+
}, row.key);
|
|
1396
|
+
})
|
|
1397
|
+
]
|
|
1398
|
+
})]
|
|
1399
1399
|
}),
|
|
1400
1400
|
dialogOpen && (0, react_jsx_runtime.jsxs)("div", {
|
|
1401
1401
|
ref: settingsRef,
|
package/lib/index.js
CHANGED
|
@@ -619,7 +619,7 @@ var TokenQuotaService = class TokenQuotaService extends Service {
|
|
|
619
619
|
return this.upgradeCheck;
|
|
620
620
|
}
|
|
621
621
|
async doRefreshUpgrade() {
|
|
622
|
-
const current = "0.1.
|
|
622
|
+
const current = "0.1.39";
|
|
623
623
|
let latest;
|
|
624
624
|
try {
|
|
625
625
|
const response = await fetch(REGISTRY_LATEST_URL, {
|
|
@@ -727,30 +727,30 @@ export function TokenQuotaPanel({ t, load, setLimit, selectModel, setMonitored,
|
|
|
727
727
|
: '';
|
|
728
728
|
return (_jsxs(_Fragment, { children: [_jsxs("div", { ref: panelRef, className: `${css.panel}${panelDimClass !== '' ? ` ${panelDimClass}` : ''}`, style: panelPos !== null ? { left: panelPos.x, top: panelPos.y, right: 'auto' } : undefined, onPointerEnter: () => { setHovered(true); }, onPointerLeave: () => { setHovered(false); }, children: [_jsxs("div", { className: css.header, onPointerDown: (event) => { beginDrag(event, panelRef.current, applyPanelPos); }, children: [_jsx("div", { className: css.headerText, children: _jsxs("div", { className: css.title, children: [t('title'), __TOKEN_QUOTA_VERSION__ !== undefined && __TOKEN_QUOTA_VERSION__ !== '' && (upgrade !== null
|
|
729
729
|
? (_jsxs("span", { className: `${css.version} ${css.versionNew}`, title: t('upgradeAvailableHint'), children: ["v", __TOKEN_QUOTA_VERSION__, " \u2192 v", upgrade.latestVersion] }))
|
|
730
|
-
: (_jsxs("span", { className: css.version, children: ["v", __TOKEN_QUOTA_VERSION__] })))] }) }), _jsxs("div", { className: css.headerActions, onPointerDown: (event) => { event.stopPropagation(); }, children: [_jsx("button", { type: "button", "aria-pressed": musicEnabled, className: `${css.settingsBtn}${musicEnabled ? ` ${css.settingsBtnActive}` : ''}`, title: `${t('musicLabel')}:${musicEnabled ? t('musicOn') : t('musicOff')}`, onClick: () => { setMusicEnabled(!musicEnabled); }, children: "\u266A" }), _jsx("button", { type: "button", className: css.settingsBtn, onClick: () => { actions.setLogOpen(true); }, children: t('logs') }), _jsx("button", { type: "button", className: css.settingsBtn, onClick: openSettings, children: t('settings') }), _jsx("button", { type: "button", className: css.collapse, onClick: () => { setCollapsed(true); }, children: t('collapse') })] })
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
730
|
+
: (_jsxs("span", { className: css.version, children: ["v", __TOKEN_QUOTA_VERSION__] })))] }) }), _jsxs("div", { className: css.headerActions, onPointerDown: (event) => { event.stopPropagation(); }, children: [_jsx("button", { type: "button", "aria-pressed": musicEnabled, className: `${css.settingsBtn}${musicEnabled ? ` ${css.settingsBtnActive}` : ''}`, title: `${t('musicLabel')}:${musicEnabled ? t('musicOn') : t('musicOff')}`, onClick: () => { setMusicEnabled(!musicEnabled); }, children: "\u266A" }), _jsx("button", { type: "button", className: css.settingsBtn, onClick: () => { actions.setLogOpen(true); }, children: t('logs') }), _jsx("button", { type: "button", className: css.settingsBtn, onClick: openSettings, children: t('settings') }), _jsx("button", { type: "button", className: css.collapse, onClick: () => { setCollapsed(true); }, children: t('collapse') })] }), _jsxs("div", { className: css.notesBar, onPointerDown: (event) => { event.stopPropagation(); }, children: [notes.map((note) => {
|
|
731
|
+
const open = note.visible && !note.collapsed;
|
|
732
|
+
return (_jsx("button", { type: "button", className: `${css.noteChip}${open ? ` ${css.noteChipOpen}` : ''}`, title: note.title.trim() === '' ? t('noteUntitled') : note.title, onClick: () => { patchNote(note.id, { visible: true, collapsed: false }); }, onContextMenu: (event) => {
|
|
733
|
+
event.preventDefault();
|
|
734
|
+
setNoteMenu({ id: note.id, x: event.clientX, y: event.clientY });
|
|
735
|
+
}, children: noteInitial(note.title) }, note.id));
|
|
736
|
+
}), _jsxs("button", { type: "button", className: css.noteNew, disabled: notes.length >= TOKEN_QUOTA_MAX_NOTES, title: notes.length >= TOKEN_QUOTA_MAX_NOTES ? t('noteMaxHint') : t('noteNewHint'), onClick: createNote, children: [_jsxs("svg", { viewBox: "0 0 16 16", width: "13", height: "13", "aria-hidden": "true", children: [_jsx("path", { d: "M4 1.6h4.6L12.4 5.4v9H4z", fill: "none", stroke: "currentColor", strokeWidth: "1.2", strokeLinejoin: "round" }), _jsx("path", { d: "M8.4 1.6v3.9h4", fill: "none", stroke: "currentColor", strokeWidth: "1.2", strokeLinejoin: "round" })] }), _jsx("span", { className: css.noteNewPlus, children: "+" })] }), balanceEnabled && (_jsx("button", { type: "button", className: `${css.noteNew} ${css.balanceToggle}${balanceOpen ? ` ${css.balanceToggleOpen}` : ''}`, title: t('balanceTitle'), onClick: () => {
|
|
737
|
+
if (balanceOpen) {
|
|
738
|
+
setBalanceOpen(false);
|
|
739
|
+
return;
|
|
740
|
+
}
|
|
741
|
+
const winW = 280;
|
|
742
|
+
const rect = panelRef.current?.getBoundingClientRect();
|
|
743
|
+
if (rect !== undefined) {
|
|
744
|
+
setBalancePos({
|
|
745
|
+
x: Math.max(8, rect.left - winW - 8),
|
|
746
|
+
y: rect.top,
|
|
747
|
+
});
|
|
748
|
+
}
|
|
749
|
+
else {
|
|
750
|
+
setBalancePos({ x: Math.max(8, (typeof window !== 'undefined' ? window.innerWidth : 800) - 12 - 320 - winW - 8), y: 56 });
|
|
751
|
+
}
|
|
752
|
+
setBalanceOpen(true);
|
|
753
|
+
}, "aria-pressed": balanceOpen, children: _jsxs("svg", { viewBox: "0 0 16 16", width: "13", height: "13", "aria-hidden": "true", children: [_jsx("circle", { cx: "8", cy: "8", r: "6.3", fill: "none", stroke: "currentColor", strokeWidth: "1.3" }), _jsx("text", { x: "8", y: "11", textAnchor: "middle", fontSize: "9", fontWeight: "700", fill: "currentColor", children: "\u00A5" })] }) }))] })] }), _jsxs("div", { className: css.body, children: [loading && _jsx("div", { className: css.notice, children: t('loading') }), error !== null && _jsx("div", { className: css.noticeError, children: error }), fullNotice !== null && (_jsx("div", { className: css.fullNotice, role: "alert", children: fullNotice })), upgrade !== null && !upgradeDismissed && (_jsxs("div", { className: `${css.upgradeBanner}${upgradeFlash ? ` ${css.upgradeBannerFlash}` : ''}`, role: "alert", children: [_jsx("div", { className: css.upgradeBannerText, children: t('upgradeAvailable').replace('{version}', upgrade.latestVersion) }), _jsx("div", { className: css.upgradeCommands, children: upgrade.commands.map(cmd => (_jsxs("div", { className: css.upgradeCommandRow, children: [_jsx("code", { className: css.upgradeCommand, children: cmd }), _jsx("button", { type: "button", className: `${css.copyBtn}${copiedCmd === cmd ? ` ${css.copyBtnDone}` : ''}`, onClick: () => { copyUpgradeCommand(cmd); }, children: copiedCmd === cmd ? t('copied') : t('copy') })] }, cmd))) }), _jsx("div", { className: css.upgradeHint, children: t('upgradeHint') }), _jsx("button", { type: "button", className: css.upgradeClose, onClick: () => { actions.setUpgradeDismissed(true); }, "aria-label": t('close'), children: "\u00D7" })] })), !loading && error === null && visibleRows.length === 0 && (_jsx("div", { className: css.notice, children: monitored !== null && monitored.length === 0 ? t('noMonitored') : t('waiting') })), visibleRows.map((row) => {
|
|
754
754
|
const state = barStateOf(row);
|
|
755
755
|
const pct = row.limit > 0 ? Math.min(100, Math.round((row.used / row.limit) * 100)) : 0;
|
|
756
756
|
const barClass = state === 'over'
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jxgame2020/dsh-token-quota",
|
|
3
3
|
"description": "Daily per-model token quota accounting, enforcement, and a floating quota panel for the DeepSeek Harness — a fully self-contained plugin (no core-Harness wiring, no generated RPC contract)",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.39",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -53,7 +53,6 @@
|
|
|
53
53
|
"lib/types/**/*.d.ts"
|
|
54
54
|
],
|
|
55
55
|
"license": "MIT",
|
|
56
|
-
"dependencies": {},
|
|
57
56
|
"peerDependencies": {
|
|
58
57
|
"@deepseek-ai/cordis": "*",
|
|
59
58
|
"@deepseek-ai/dsh-agent": "*",
|
|
@@ -169,4 +168,4 @@
|
|
|
169
168
|
"optional": true
|
|
170
169
|
}
|
|
171
170
|
}
|
|
172
|
-
}
|
|
171
|
+
}
|