quota-keepalive 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.en.md CHANGED
@@ -129,7 +129,7 @@ enable automatic keepalive by default.
129
129
  they do not send a request immediately.
130
130
  - Account **Run check-in** / **Run keepalive** buttons: execute one account now.
131
131
  Manual keepalive asks for confirmation and still requires the provider to be enabled.
132
- - Circular refresh: refresh all enabled providers; each provider row also has a
132
+ - **Refresh quota**: refresh all enabled providers; each provider row also has a
133
133
  provider-only refresh button.
134
134
  - **Save schedule**: set the shared interval and action type.
135
135
  - **Short probe / Long context**: choose the request shape used by keepalive.
package/README.md CHANGED
@@ -147,7 +147,7 @@ npm publish --access public --otp=<6 位动态码>
147
147
  - 账号后的“执行签到/执行保活”:只对当前账号立即执行一次;执行保活会先弹出确认框。
148
148
  - 连续切换多个开关时会合并成最后一次状态写入,并按 Magpie 的页面配置限频串行保存,
149
149
  不会因为快速连续点击触发“每秒只能写入一次”的报错。
150
- - 圆形刷新按钮:立即刷新全部启用供应商额度;供应商卡片内的刷新按钮只刷新该供应商。
150
+ - `刷新额度`按钮:立即刷新全部启用供应商额度;供应商卡片内的刷新按钮只刷新该供应商。
151
151
  - `保存计划`:设置统一执行间隔和任务类型。计划默认关闭,防止无意间消耗积分。
152
152
  - `短探活/长上下文`:短探活风险、耗时和额度消耗更低;长上下文会按 `inputTokens`
153
153
  填充请求,适合明确需要维持长上下文窗口的场景。
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "quota-keepalive",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Unofficial multi-provider quota inventory, check-in, keepalive scheduling, history, and quota trends for Magpie",
5
5
  "keywords": [
6
6
  "magpie",
package/ui/index.html CHANGED
@@ -53,16 +53,19 @@
53
53
  </button>
54
54
  </div>
55
55
  <button
56
- class="refresh-button"
56
+ class="button refresh-button"
57
57
  id="refresh"
58
58
  type="button"
59
- title="刷新全部启用供应商额度"
60
- aria-label="刷新全部启用供应商额度"
59
+ title="刷新全部启用供应商的实时额度"
60
+ aria-label="刷新全部启用供应商的实时额度"
61
61
  >
62
- <svg viewBox="0 0 16 16" width="15" height="15" fill="none" stroke="currentColor"
63
- stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
64
- <path d="M13.5 8a5.5 5.5 0 1 1-1.6-3.9M13.5 2v3h-3"></path>
65
- </svg>
62
+ <span class="refresh-icon" aria-hidden="true">
63
+ <svg viewBox="0 0 16 16" width="15" height="15" fill="none" stroke="currentColor"
64
+ stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
65
+ <path d="M13.5 8a5.5 5.5 0 1 1-1.6-3.9M13.5 2v3h-3"></path>
66
+ </svg>
67
+ </span>
68
+ <span>刷新额度</span>
66
69
  </button>
67
70
  </div>
68
71
  </header>
package/ui/style.css CHANGED
@@ -180,19 +180,29 @@ h2 { margin-bottom: 2px; font-size: 16px; letter-spacing: -.015em; }
180
180
  background: color-mix(in srgb, var(--green) 8%, var(--card));
181
181
  }
182
182
  .refresh-button {
183
- display: inline-grid;
184
- place-items: center;
185
- width: 38px;
183
+ display: inline-flex;
184
+ align-items: center;
185
+ justify-content: center;
186
+ gap: 6px;
187
+ width: auto;
186
188
  height: 38px;
187
189
  flex: none;
188
- padding: 0;
190
+ padding: 0 11px;
189
191
  border: 1px solid var(--line);
190
- border-radius: 50%;
191
- color: var(--muted);
192
+ border-radius: 9px;
193
+ color: var(--ink-2);
192
194
  background: color-mix(in srgb, var(--bg) 62%, var(--card));
195
+ font-size: 11px;
196
+ font-weight: 600;
197
+ white-space: nowrap;
193
198
  cursor: pointer;
194
199
  transition: color .15s ease, border-color .15s ease, background .15s ease, box-shadow .15s ease;
195
200
  }
201
+ .refresh-icon {
202
+ display: grid;
203
+ place-items: center;
204
+ color: var(--accent);
205
+ }
196
206
  .refresh-button:hover:not(:disabled) {
197
207
  color: var(--accent);
198
208
  border-color: color-mix(in srgb, var(--accent) 28%, var(--line));
@@ -200,8 +210,8 @@ h2 { margin-bottom: 2px; font-size: 16px; letter-spacing: -.015em; }
200
210
  box-shadow: 0 2px 8px color-mix(in srgb, var(--ink) 8%, transparent);
201
211
  }
202
212
  .refresh-button:disabled { cursor: default; opacity: .62; }
203
- .refresh-button svg > * { transform-box: view-box; transform-origin: 50% 50%; }
204
- .refresh-button.spin svg > * { animation: spin .8s linear infinite; }
213
+ .refresh-button .refresh-icon { transform-origin: 50% 50%; }
214
+ .refresh-button.spin .refresh-icon { animation: spin .8s linear infinite; }
205
215
  .provider-refresh {
206
216
  display: inline-grid;
207
217
  place-items: center;
@@ -1138,8 +1148,9 @@ h2 { margin-bottom: 2px; font-size: 16px; letter-spacing: -.015em; }
1138
1148
  @media (max-width: 760px) {
1139
1149
  .page-shell { width: min(100% - 20px, 680px); padding-top: 12px; }
1140
1150
  .hero { flex-direction: column; padding: 18px; }
1141
- .hero-tools { width: 100%; align-items: stretch; }
1142
- .actions { width: 100%; }
1151
+ .hero-tools { width: 100%; align-items: stretch; flex-wrap: wrap; }
1152
+ .actions { width: 100%; flex-basis: 100%; }
1153
+ .refresh-button { margin-left: auto; }
1143
1154
  .summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
1144
1155
  .command-copy { display: grid; gap: 2px; }
1145
1156
  .command-copy span { white-space: normal; }