koishi-plugin-market-next 3.4.5 → 3.4.7

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/CHANGELOG.md CHANGED
@@ -2,6 +2,19 @@
2
2
 
3
3
  本文件记录 `koishi-plugin-market-next` 已发布到 npm 的版本差异。
4
4
 
5
+ ## 3.4.7
6
+
7
+ - 修复移动端 / 部分 WebView 下市场 SVG 图标没有正确继承 scoped CSS,导致筛选、搜索、关闭等图标按原始尺寸撑爆页面的问题。
8
+ - 市场页增加 `.market-icon` 全局尺寸兜底,搜索框与筛选栏图标改用穿透选择器约束尺寸。
9
+
10
+ ## 3.4.6
11
+
12
+ - ChatLuna Tool 优化:增强工具描述,让模型更容易在插件搜索、推荐、对比、最近新增/更新、热门和风险查询场景调用市场工具。
13
+ - ChatLuna Tool 输入增加 `intent`、`requirements`、`names`,并允许 `category`、`status`、`names` 使用数组、单字符串或逗号分隔字符串。
14
+ - ChatLuna Tool 输出从 Markdown 列表改为 JSON 字符串,包含 `summary`、`filters`、`results`、`nextQueries` 和 stale/error 信息。
15
+ - ChatLuna Tool 注册增加成功、失败和注销诊断日志。
16
+ - 弱网优化:市场冷启动无缓存时先返回 loading payload,页面显示当前 registry、超时和自动路由状态,后端请求完成后自动刷新市场数据。
17
+
5
18
  ## 3.4.5
6
19
 
7
20
  - CI 和发布 workflow 增加 `audit:package`,要求 market-next 自身发布依赖树排除 peer runtime 后为 0 漏洞。
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # koishi-plugin-market-next
2
2
 
3
- ![Version](https://img.shields.io/badge/version-3.4.5-blue)
3
+ ![Version](https://img.shields.io/badge/version-3.4.7-blue)
4
4
  ![Koishi](https://img.shields.io/badge/Koishi-%5E4.18.11-6f42c1)
5
5
  ![TypeScript](https://img.shields.io/badge/TypeScript-5.x-3178c6)
6
6
  ![License](https://img.shields.io/badge/license-AGPL--3.0-orange)
@@ -181,9 +181,12 @@ koishi_plugin_market_search
181
181
 
182
182
  | 参数 | 说明 |
183
183
  | --- | --- |
184
+ | `intent` | 查询意图:`search`、`recommend`、`recent`、`popular`、`risk`、`compare`。省略时会根据参数自动推断。 |
184
185
  | `query` | 关键词搜索,匹配插件名、短名、描述和 keywords。 |
185
- | `category` | 分类过滤,例如 `adapter`、`ai`、`tool`、`game`、`webui`。 |
186
- | `status` | 状态过滤:`verified`、`insecure`、`preview`、`portable`、`deprecated`。 |
186
+ | `requirements` | 用户自然语言需求,例如“找一个好用的 onebot 适配器”。 |
187
+ | `names` | 插件包名或短名列表,用于精确查询或对比。 |
188
+ | `category` | 分类过滤,例如 `adapter`、`ai`、`tool`、`game`、`webui`。支持数组、单个字符串或逗号分隔字符串。 |
189
+ | `status` | 状态过滤:`verified`、`insecure`、`preview`、`portable`、`deprecated`。支持数组、单个字符串或逗号分隔字符串。 |
187
190
  | `createdAfter` / `createdBefore` | 创建时间范围,支持 `YYYY-MM-DD` 或 ISO 日期。 |
188
191
  | `updatedAfter` / `updatedBefore` | 更新时间范围。 |
189
192
  | `createdWithinDays` | 最近新增,例如 `30` 表示最近 30 天新增。 |
@@ -206,13 +209,20 @@ koishi_plugin_market_search
206
209
 
207
210
  ```json
208
211
  {
209
- "category": ["ai"],
210
- "updatedWithinDays": 30,
211
- "status": ["verified"]
212
+ "intent": "recommend",
213
+ "requirements": "找一个稳定的 AI 聊天插件",
214
+ "status": "verified"
212
215
  }
213
216
  ```
214
217
 
215
- 工具会在进程内缓存市场索引 10 分钟。请求失败但已有旧缓存时,会返回 stale 结果并标注失败原因;请求失败且没有缓存时,会返回明确错误。
218
+ ```json
219
+ {
220
+ "intent": "compare",
221
+ "names": ["koishi-plugin-adapter-onebot"]
222
+ }
223
+ ```
224
+
225
+ 工具返回 JSON 字符串,包含 `summary`、`results`、`filters` 和 `nextQueries`。工具会在进程内缓存市场索引 10 分钟。请求失败但已有旧缓存时,会返回 `stale: true` 的旧结果并标注失败原因;请求失败且没有缓存时,会返回 JSON 错误对象。
216
226
 
217
227
  ## 和原版 market 的区别
218
228
 
@@ -342,8 +352,8 @@ lib/ 后端与类型构建产物
342
352
  发布新版本时先提交 `package.json`、`README.md`、`CHANGELOG.md` 等版本变更,再推送匹配版本号的 tag:
343
353
 
344
354
  ```bash
345
- git tag v3.4.5
346
- git push origin v3.4.5
355
+ git tag v3.4.7
356
+ git push origin v3.4.7
347
357
  ```
348
358
 
349
359
  也可以在 GitHub Actions 页面手动运行 `Publish to npm`,但输入版本必须与 `package.json` 一致,并且只能从默认分支触发。workflow 会先检查 npm 上是否已经存在同版本,存在则直接失败,避免覆盖发布。
@@ -362,6 +372,19 @@ git push origin v3.4.5
362
372
 
363
373
  ## 版本更新
364
374
 
375
+ ### 3.4.7
376
+
377
+ - 修复移动端 / 部分 WebView 下市场 SVG 图标没有正确继承 scoped CSS,导致筛选、搜索、关闭等图标按原始尺寸撑爆页面的问题。
378
+ - 市场页增加 `.market-icon` 全局尺寸兜底,搜索框与筛选栏图标改用穿透选择器约束尺寸。
379
+
380
+ ### 3.4.6
381
+
382
+ - ChatLuna Tool 优化:增强工具描述,让模型更容易在插件搜索、推荐、对比、最近新增/更新、热门和风险查询场景调用市场工具。
383
+ - ChatLuna Tool 输入增加 `intent`、`requirements`、`names`,并允许 `category`、`status`、`names` 使用数组、单字符串或逗号分隔字符串。
384
+ - ChatLuna Tool 输出从 Markdown 列表改为 JSON 字符串,包含 `summary`、`filters`、`results`、`nextQueries` 和 stale/error 信息。
385
+ - ChatLuna Tool 注册增加成功、失败和注销诊断日志。
386
+ - 弱网优化:市场冷启动无缓存时先返回 loading payload,页面显示当前 registry、超时和自动路由状态,后端请求完成后自动刷新市场数据。
387
+
365
388
  ### 3.4.5
366
389
 
367
390
  - CI 和发布 workflow 增加 `audit:package`,要求 market-next 自身发布依赖树排除 peer runtime 后为 0 漏洞。
package/dist/index.css CHANGED
@@ -1 +1 @@
1
- .market-filter-item[data-v-b9c0ec9c]{display:flex;margin:4px 0;color:var(--k-text-normal);transition:color .5s;align-items:center;z-index:2;height:24px;cursor:pointer}.market-filter-item[data-v-b9c0ec9c]:hover{color:var(--k-text-dark)}.market-filter-item.active[data-v-b9c0ec9c]{color:var(--k-text-active)}.market-filter-item.active.verified[data-v-b9c0ec9c],.market-filter-item.active.newborn[data-v-b9c0ec9c]{color:var(--k-color-success)}.market-filter-item.active.preview[data-v-b9c0ec9c],.market-filter-item.active.portable[data-v-b9c0ec9c]{color:var(--k-color-warning)}.market-filter-item.active.insecure[data-v-b9c0ec9c]{color:var(--k-color-danger)}.market-filter-item.disabled[data-v-b9c0ec9c]{opacity:.5;text-decoration:line-through 2px}.market-filter-item .icon[data-v-b9c0ec9c]{display:inline-flex;width:1.75rem;margin-right:4px;align-items:center;justify-content:center}.market-filter-item:not(.active) .order[data-v-b9c0ec9c]{display:none}.market-filter-item .order[data-v-b9c0ec9c]{display:inline-flex;width:1.75rem;align-items:center;justify-content:center}.market-filter-item svg[data-v-b9c0ec9c]{height:1rem;max-width:1.125rem}.market-filter-item .text[data-v-b9c0ec9c],.market-filter-item .count[data-v-b9c0ec9c]{line-height:20px;font-size:14px;font-weight:500}.market-filter-item .count[data-v-b9c0ec9c]{margin-right:4px}.market-filter-item .spacer[data-v-b9c0ec9c]{flex:1}.cursor-pointer[data-v-9f322549]{cursor:pointer}.market-package[data-v-9f322549]{width:100%;max-width:540px;height:calc(12.5rem + 2px);margin:0;padding:1rem 1.25rem;box-sizing:border-box;transition:box-shadow .3s ease;box-shadow:0 0 0 2px inset transparent}.market-package[data-v-9f322549]:hover{box-shadow:0 0 0 2px inset var(--k-color-primary)}.market-package .market-icon[data-v-9f322549]{height:1em;display:inline}.market-package .header[data-v-9f322549],.market-package .footer[data-v-9f322549]{flex:0 0 auto}.market-package .header[data-v-9f322549]{position:relative}.market-package .header .left[data-v-9f322549]{width:3.5rem;height:3.5rem;border-radius:8px;border:1px solid var(--k-color-border);box-sizing:border-box}.market-package .header .left svg[data-v-9f322549]{height:1.75rem}.market-package .header h2[data-v-9f322549]{font-size:1.125rem;margin:0;line-height:1;display:flex;align-items:center}.market-package .header h2 .title[data-v-9f322549]{flex:0 1 auto;line-height:1.5rem;display:inline-block}.market-package .header h2 .icon[data-v-9f322549]{margin-left:.6rem;height:1.125rem;width:1.125rem;vertical-align:-2px;position:relative;display:inline-block;cursor:pointer}.market-package .header h2 .icon .market-icon[data-v-9f322549]{height:100%;transition:color .3s ease;z-index:10;position:relative}.market-package .header h2 .icon.verified[data-v-9f322549],.market-package .header h2 .icon.newborn[data-v-9f322549]{color:var(--k-color-success)}.market-package .header h2 .icon.preview[data-v-9f322549]{color:var(--k-color-warning)}.market-package .header h2 .icon.insecure[data-v-9f322549]{color:var(--k-color-danger)}.market-package .header h2 .icon.verified[data-v-9f322549]:before,.market-package .header h2 .icon.insecure[data-v-9f322549]:before{position:absolute;top:25%;left:25%;right:25%;bottom:25%;content:"";z-index:0;border-radius:100%;background-color:#fff}.market-package .header .rating[data-v-9f322549]{height:1.5rem;display:inline-flex;align-items:center;gap:0 .25rem;width:fit-content}.market-package .header .rating .market-icon[data-v-9f322549]{color:var(--k-color-warning);height:.875rem;transition:color .3s ease}.market-package .desc[data-v-9f322549]{margin:0;font-size:15px;flex:1 1 auto;line-height:1.5;overflow:hidden;word-break:break-word;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.market-package .footer[data-v-9f322549]{display:flex;gap:.5rem;align-items:center;height:1.5rem;margin-bottom:-.25rem;cursor:default;font-size:14px;transition:color .3s ease;overflow:hidden}.market-package .footer[data-v-9f322549]>*{flex:0 0 auto}.market-package .footer .spacer[data-v-9f322549]{flex:0 2 .5rem}.market-package .footer .long-spacer[data-v-9f322549]{flex:1 1 auto}.market-package .footer .market-icon[data-v-9f322549]{height:12px;width:16px;margin-right:6px;vertical-align:-1px}.market-package .footer .avatars[data-v-9f322549]{display:flex;gap:.25rem}.market-package .footer .avatars .avatar[data-v-9f322549]{cursor:pointer}.market-package .footer .avatars img[data-v-9f322549]{height:1.5rem;width:1.5rem;border-radius:100%;vertical-align:middle}.package-list[data-v-c6afd4f6]{display:grid;grid-template-columns:repeat(auto-fill,minmax(336px,1fr));gap:var(--card-margin);justify-items:center;flex:1 0 auto}.virtual-spacer[data-v-c6afd4f6]{grid-column:1/-1;width:100%;pointer-events:none}.k-empty[data-v-c6afd4f6]{flex:1 0 auto}.load-more[data-v-c6afd4f6],.load-complete[data-v-c6afd4f6]{margin:var(--card-margin) 0;display:flex;justify-content:center;color:var(--el-text-color-secondary);font-size:14px}.search-box[data-v-c2c992aa]{display:flex;margin:2rem auto 0;width:100%;max-width:600px;border-radius:1.5rem;align-items:center}.search-container[data-v-c2c992aa]{flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px 6px;padding:.75rem 1.25rem;padding-right:0}.search-container input[data-v-c2c992aa]{flex:1 1 auto;height:1.25rem;min-width:10rem;font-size:.9em;padding:0;box-sizing:border-box;color:inherit;background-color:transparent;border:none;outline:none}.search-action[data-v-c2c992aa]{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:3rem;height:2.5rem;cursor:pointer}.search-action .market-icon[data-v-c2c992aa]{height:1rem;opacity:.5}.search-action:hover .market-icon.search[data-v-c2c992aa]{display:none}.search-action:not(:hover) .market-icon.close[data-v-c2c992aa]{display:none}.search-word[data-v-c2c992aa]{flex:0 0 auto;display:inline-block;font-size:14px;height:1.25rem;line-height:1rem;border-radius:4px;padding:2px 6px;box-sizing:border-box;color:#fff;font-weight:500;white-space:nowrap;vertical-align:baseline;background-color:var(--k-fill-normal);cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .3s ease,background-color .3s ease}.search-word.invalid[data-v-c2c992aa]{opacity:.5;text-decoration:line-through}.search-word.invalid[data-v-c2c992aa]:hover{opacity:1}.manual-panel .k-comment{margin-top:0}.dep-package-view[data-v-8af0472c]{height:3rem;position:relative}.dep-package-view .el-button[data-v-8af0472c]{width:4rem}.dep-package-view .version-status[data-v-8af0472c]{display:inline-block;max-width:10rem;white-space:normal;line-height:1.3;font-size:.85em}.dep-package-view .version-status.muted[data-v-8af0472c]{color:var(--fg2)}.dep-package-view .version-status.danger[data-v-8af0472c]{color:var(--danger)}.page-deps{display:flex;flex-flow:column}.page-deps .body-container{transform:translateY(1px);margin-top:-1px}.page-deps table tr:first-child{border-top:none}.page-deps tbody tr{transition:.3s ease}.page-deps tbody tr:hover{background-color:var(--k-side-bg)}@media(max-width:768px){.page-deps td{padding:.5em}}.theme-color.primary{color:var(--primary)}.theme-color.success{color:var(--success)}.theme-color.warning{color:var(--warning)}.theme-color.danger{color:var(--danger)}.install-panel .el-dialog__header{display:flex;gap:0 .5em;align-items:center;padding-right:36px;padding-bottom:4px}.install-panel .el-dialog__header .el-dialog__title{font-weight:500;color:var(--fg1);margin-right:.5rem;flex:0 0 auto}.install-panel .el-dialog__header .el-select{flex:1 1 auto;max-width:12.5rem;margin:-2px 0 -4px}.install-panel .warning{color:var(--k-color-warning)}.install-panel .danger{color:var(--k-color-danger)}.install-panel .version-badges{float:right;margin-right:-12px}.install-panel .el-dialog__body{padding:0 20px;min-height:40px}.install-panel .el-dialog__body>div{margin:1rem 0}.install-panel .el-dialog__body:last-child{padding-bottom:1rem}.install-panel table thead td,.install-panel table thead th,.install-panel table tbody td,.install-panel table tbody th{padding:.5em .875em;white-space:nowrap}.install-panel span.link:hover{cursor:pointer;text-decoration:underline}.install-panel .el-button+.el-button{margin-left:1rem}.install-panel .el-dialog__footer{display:flex;justify-content:space-between;align-items:center}.install-panel .wrapper{position:relative;display:inline-flex}.install-panel .wrapper .shadow{letter-spacing:1px;visibility:hidden;padding-right:22px}.install-panel .wrapper .el-select{position:absolute;left:0;top:50%;right:0;transform:translateY(-50%)}.dot-hint:before{content:"";position:absolute;border-radius:100%;width:.5rem;height:.5rem;top:50%;right:20px;transform:translateY(-50%);background-color:currentColor;transition:background-color .3s ease;box-shadow:1px 1px 2px #3333}.confirm-panel td.arrow{padding:0}.confirm-panel td.arrow span{display:flex;justify-content:center;align-items:center}.confirm-panel .el-dialog__footer{display:flex;justify-content:space-between;align-items:center}.page-market .layout-main .el-scrollbar__view{padding:0 var(--card-margin);display:flex;flex-direction:column;min-height:100%}.page-market .layout-left .market-filter-group{padding:0 1.5rem;margin:2rem 0}.page-market .layout-left h2{margin:0;font-size:14px;padding:8px 0}.search-box{background-color:var(--k-card-bg);box-shadow:var(--k-card-shadow);transition:var(--color-transition)}.market-hint{width:100%;margin:1rem 0 -.5rem;color:var(--el-text-color-regular);font-size:var(--el-font-size-base);font-weight:var(--el-font-weight-primary);transition:color .3s ease}.market-hint .el-checkbox{margin-left:1.5rem}.market-stale.k-comment{width:100%;box-sizing:border-box;margin:1.25rem 0 -.25rem}.market-stale.k-comment p{margin:.25rem 0}.market-debug.k-comment{width:100%;box-sizing:border-box;margin:1.25rem 0 -.25rem;font-size:12px}.market-debug.k-comment p{margin:.25rem 0 .5rem}.market-debug-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.25rem 1rem}.market-debug-item{display:flex;justify-content:space-between;gap:.75rem;min-width:0}.market-debug-item span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg1)}.market-debug-timings,.market-debug-routes{display:flex;flex-wrap:wrap;gap:.35rem .75rem;margin-top:.5rem;color:var(--fg2)}.market-debug-route{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.market-container .k-button{padding:.35em .85em;transform:translateY(-1px);margin-left:1rem}.market-error.k-comment{margin-left:2rem;margin-right:2rem}.k-status .el-progress-bar{width:120px;margin-right:2px}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.grid{display:grid}.my-8{margin-top:2rem;margin-bottom:2rem}.ms{margin-inline-start:1rem}.inline{display:inline}.inline-block{display:inline-block}.hidden{display:none}.h2{height:.5rem}.flex{display:flex}.inline-flex{display:inline-flex}.shrink-0{flex-shrink:0}.grow-1{flex-grow:1}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.items-center{align-items:center}.justify-center{justify-content:center}.justify-around{justify-content:space-around}.gap-1{gap:.25rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-4{column-gap:1rem}.gap-y-2{row-gap:.5rem}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.b,.border{border-width:1px}.px{padding-left:1rem;padding-right:1rem}.pl-8{padding-left:2rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.shadow{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline{outline-style:solid}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease{transition-timing-function:cubic-bezier(.4,0,.2,1)}
1
+ .market-filter-item[data-v-5fd14f4e]{display:flex;margin:4px 0;color:var(--k-text-normal);transition:color .5s;align-items:center;z-index:2;height:24px;cursor:pointer}.market-filter-item[data-v-5fd14f4e]:hover{color:var(--k-text-dark)}.market-filter-item.active[data-v-5fd14f4e]{color:var(--k-text-active)}.market-filter-item.active.verified[data-v-5fd14f4e],.market-filter-item.active.newborn[data-v-5fd14f4e]{color:var(--k-color-success)}.market-filter-item.active.preview[data-v-5fd14f4e],.market-filter-item.active.portable[data-v-5fd14f4e]{color:var(--k-color-warning)}.market-filter-item.active.insecure[data-v-5fd14f4e]{color:var(--k-color-danger)}.market-filter-item.disabled[data-v-5fd14f4e]{opacity:.5;text-decoration:line-through 2px}.market-filter-item .icon[data-v-5fd14f4e]{display:inline-flex;width:1.75rem;height:1rem;margin-right:4px;align-items:center;justify-content:center;overflow:hidden}.market-filter-item:not(.active) .order[data-v-5fd14f4e]{display:none}.market-filter-item .order[data-v-5fd14f4e]{display:inline-flex;width:1.75rem;height:1rem;align-items:center;justify-content:center;overflow:hidden}.market-filter-item[data-v-5fd14f4e] .market-icon{display:block;width:1.125rem;height:1rem;max-width:1.125rem;max-height:1rem;min-width:0;flex:0 0 auto;line-height:1}.market-filter-item .text[data-v-5fd14f4e],.market-filter-item .count[data-v-5fd14f4e]{line-height:20px;font-size:14px;font-weight:500}.market-filter-item .count[data-v-5fd14f4e]{margin-right:4px}.market-filter-item .spacer[data-v-5fd14f4e]{flex:1}.cursor-pointer[data-v-9f322549]{cursor:pointer}.market-package[data-v-9f322549]{width:100%;max-width:540px;height:calc(12.5rem + 2px);margin:0;padding:1rem 1.25rem;box-sizing:border-box;transition:box-shadow .3s ease;box-shadow:0 0 0 2px inset transparent}.market-package[data-v-9f322549]:hover{box-shadow:0 0 0 2px inset var(--k-color-primary)}.market-package .market-icon[data-v-9f322549]{height:1em;display:inline}.market-package .header[data-v-9f322549],.market-package .footer[data-v-9f322549]{flex:0 0 auto}.market-package .header[data-v-9f322549]{position:relative}.market-package .header .left[data-v-9f322549]{width:3.5rem;height:3.5rem;border-radius:8px;border:1px solid var(--k-color-border);box-sizing:border-box}.market-package .header .left svg[data-v-9f322549]{height:1.75rem}.market-package .header h2[data-v-9f322549]{font-size:1.125rem;margin:0;line-height:1;display:flex;align-items:center}.market-package .header h2 .title[data-v-9f322549]{flex:0 1 auto;line-height:1.5rem;display:inline-block}.market-package .header h2 .icon[data-v-9f322549]{margin-left:.6rem;height:1.125rem;width:1.125rem;vertical-align:-2px;position:relative;display:inline-block;cursor:pointer}.market-package .header h2 .icon .market-icon[data-v-9f322549]{height:100%;transition:color .3s ease;z-index:10;position:relative}.market-package .header h2 .icon.verified[data-v-9f322549],.market-package .header h2 .icon.newborn[data-v-9f322549]{color:var(--k-color-success)}.market-package .header h2 .icon.preview[data-v-9f322549]{color:var(--k-color-warning)}.market-package .header h2 .icon.insecure[data-v-9f322549]{color:var(--k-color-danger)}.market-package .header h2 .icon.verified[data-v-9f322549]:before,.market-package .header h2 .icon.insecure[data-v-9f322549]:before{position:absolute;top:25%;left:25%;right:25%;bottom:25%;content:"";z-index:0;border-radius:100%;background-color:#fff}.market-package .header .rating[data-v-9f322549]{height:1.5rem;display:inline-flex;align-items:center;gap:0 .25rem;width:fit-content}.market-package .header .rating .market-icon[data-v-9f322549]{color:var(--k-color-warning);height:.875rem;transition:color .3s ease}.market-package .desc[data-v-9f322549]{margin:0;font-size:15px;flex:1 1 auto;line-height:1.5;overflow:hidden;word-break:break-word;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.market-package .footer[data-v-9f322549]{display:flex;gap:.5rem;align-items:center;height:1.5rem;margin-bottom:-.25rem;cursor:default;font-size:14px;transition:color .3s ease;overflow:hidden}.market-package .footer[data-v-9f322549]>*{flex:0 0 auto}.market-package .footer .spacer[data-v-9f322549]{flex:0 2 .5rem}.market-package .footer .long-spacer[data-v-9f322549]{flex:1 1 auto}.market-package .footer .market-icon[data-v-9f322549]{height:12px;width:16px;margin-right:6px;vertical-align:-1px}.market-package .footer .avatars[data-v-9f322549]{display:flex;gap:.25rem}.market-package .footer .avatars .avatar[data-v-9f322549]{cursor:pointer}.market-package .footer .avatars img[data-v-9f322549]{height:1.5rem;width:1.5rem;border-radius:100%;vertical-align:middle}.package-list[data-v-c6afd4f6]{display:grid;grid-template-columns:repeat(auto-fill,minmax(336px,1fr));gap:var(--card-margin);justify-items:center;flex:1 0 auto}.virtual-spacer[data-v-c6afd4f6]{grid-column:1/-1;width:100%;pointer-events:none}.k-empty[data-v-c6afd4f6]{flex:1 0 auto}.load-more[data-v-c6afd4f6],.load-complete[data-v-c6afd4f6]{margin:var(--card-margin) 0;display:flex;justify-content:center;color:var(--el-text-color-secondary);font-size:14px}.search-box[data-v-82efa22d]{display:flex;margin:2rem auto 0;width:100%;max-width:600px;border-radius:1.5rem;align-items:center}.search-container[data-v-82efa22d]{flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px 6px;padding:.75rem 1.25rem;padding-right:0}.search-container input[data-v-82efa22d]{flex:1 1 auto;height:1.25rem;min-width:10rem;font-size:.9em;padding:0;box-sizing:border-box;color:inherit;background-color:transparent;border:none;outline:none}.search-action[data-v-82efa22d]{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:3rem;height:2.5rem;cursor:pointer}.search-action[data-v-82efa22d] .market-icon{display:block;width:1rem;height:1rem;max-width:1rem;max-height:1rem;opacity:.5;flex:0 0 auto}.search-action[data-v-82efa22d]:hover .market-icon.search{display:none}.search-action[data-v-82efa22d]:not(:hover) .market-icon.close{display:none}.search-word[data-v-82efa22d]{flex:0 0 auto;display:inline-block;font-size:14px;height:1.25rem;line-height:1rem;border-radius:4px;padding:2px 6px;box-sizing:border-box;color:#fff;font-weight:500;white-space:nowrap;vertical-align:baseline;background-color:var(--k-fill-normal);cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .3s ease,background-color .3s ease}.search-word.invalid[data-v-82efa22d]{opacity:.5;text-decoration:line-through}.search-word.invalid[data-v-82efa22d]:hover{opacity:1}.manual-panel .k-comment{margin-top:0}.dep-package-view[data-v-8af0472c]{height:3rem;position:relative}.dep-package-view .el-button[data-v-8af0472c]{width:4rem}.dep-package-view .version-status[data-v-8af0472c]{display:inline-block;max-width:10rem;white-space:normal;line-height:1.3;font-size:.85em}.dep-package-view .version-status.muted[data-v-8af0472c]{color:var(--fg2)}.dep-package-view .version-status.danger[data-v-8af0472c]{color:var(--danger)}.page-deps{display:flex;flex-flow:column}.page-deps .body-container{transform:translateY(1px);margin-top:-1px}.page-deps table tr:first-child{border-top:none}.page-deps tbody tr{transition:.3s ease}.page-deps tbody tr:hover{background-color:var(--k-side-bg)}@media(max-width:768px){.page-deps td{padding:.5em}}.theme-color.primary{color:var(--primary)}.theme-color.success{color:var(--success)}.theme-color.warning{color:var(--warning)}.theme-color.danger{color:var(--danger)}.install-panel .el-dialog__header{display:flex;gap:0 .5em;align-items:center;padding-right:36px;padding-bottom:4px}.install-panel .el-dialog__header .el-dialog__title{font-weight:500;color:var(--fg1);margin-right:.5rem;flex:0 0 auto}.install-panel .el-dialog__header .el-select{flex:1 1 auto;max-width:12.5rem;margin:-2px 0 -4px}.install-panel .warning{color:var(--k-color-warning)}.install-panel .danger{color:var(--k-color-danger)}.install-panel .version-badges{float:right;margin-right:-12px}.install-panel .el-dialog__body{padding:0 20px;min-height:40px}.install-panel .el-dialog__body>div{margin:1rem 0}.install-panel .el-dialog__body:last-child{padding-bottom:1rem}.install-panel table thead td,.install-panel table thead th,.install-panel table tbody td,.install-panel table tbody th{padding:.5em .875em;white-space:nowrap}.install-panel span.link:hover{cursor:pointer;text-decoration:underline}.install-panel .el-button+.el-button{margin-left:1rem}.install-panel .el-dialog__footer{display:flex;justify-content:space-between;align-items:center}.install-panel .wrapper{position:relative;display:inline-flex}.install-panel .wrapper .shadow{letter-spacing:1px;visibility:hidden;padding-right:22px}.install-panel .wrapper .el-select{position:absolute;left:0;top:50%;right:0;transform:translateY(-50%)}.dot-hint:before{content:"";position:absolute;border-radius:100%;width:.5rem;height:.5rem;top:50%;right:20px;transform:translateY(-50%);background-color:currentColor;transition:background-color .3s ease;box-shadow:1px 1px 2px #3333}.confirm-panel td.arrow{padding:0}.confirm-panel td.arrow span{display:flex;justify-content:center;align-items:center}.confirm-panel .el-dialog__footer{display:flex;justify-content:space-between;align-items:center}.page-market .layout-main .el-scrollbar__view{padding:0 var(--card-margin);display:flex;flex-direction:column;min-height:100%}.page-market .market-icon{display:inline-block;width:auto;height:1em;max-width:100%;max-height:100%;flex:0 0 auto;line-height:1;vertical-align:-.125em}.page-market .layout-left .market-filter-group{padding:0 1.5rem;margin:2rem 0}.page-market .layout-left h2{margin:0;font-size:14px;padding:8px 0}.search-box{background-color:var(--k-card-bg);box-shadow:var(--k-card-shadow);transition:var(--color-transition)}.market-hint{width:100%;margin:1rem 0 -.5rem;color:var(--el-text-color-regular);font-size:var(--el-font-size-base);font-weight:var(--el-font-weight-primary);transition:color .3s ease}.market-hint .el-checkbox{margin-left:1.5rem}.market-stale.k-comment{width:100%;box-sizing:border-box;margin:1.25rem 0 -.25rem}.market-stale.k-comment p{margin:.25rem 0}.market-loading-detail{color:var(--el-text-color-secondary);font-size:12px}.market-loading-warning.k-comment{max-width:640px;margin:2rem auto;box-sizing:border-box}.market-loading-warning.k-comment p{margin:.25rem 0}.market-debug.k-comment{width:100%;box-sizing:border-box;margin:1.25rem 0 -.25rem;font-size:12px}.market-debug.k-comment p{margin:.25rem 0 .5rem}.market-debug-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.25rem 1rem}.market-debug-item{display:flex;justify-content:space-between;gap:.75rem;min-width:0}.market-debug-item span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg1)}.market-debug-timings,.market-debug-routes{display:flex;flex-wrap:wrap;gap:.35rem .75rem;margin-top:.5rem;color:var(--fg2)}.market-debug-route{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.market-container .k-button{padding:.35em .85em;transform:translateY(-1px);margin-left:1rem}.market-error.k-comment{margin-left:2rem;margin-right:2rem}.k-status .el-progress-bar{width:120px;margin-right:2px}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.grid{display:grid}.my-8{margin-top:2rem;margin-bottom:2rem}.ms{margin-inline-start:1rem}.inline{display:inline}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.h2{height:.5rem}.flex{display:flex}.inline-flex{display:inline-flex}.shrink-0{flex-shrink:0}.grow-1{flex-grow:1}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.items-center{align-items:center}.justify-center{justify-content:center}.justify-around{justify-content:space-around}.gap-1{gap:.25rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-4{column-gap:1rem}.gap-y-2{row-gap:.5rem}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.b,.border{border-width:1px}.px{padding-left:1rem;padding-right:1rem}.pl-8{padding-left:2rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.shadow{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / .1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--un-ring-offset-shadow),var(--un-ring-shadow),var(--un-shadow)}.outline{outline-style:solid}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease{transition-timing-function:cubic-bezier(.4,0,.2,1)}