@numa-tech/numa 1.20.3 → 1.20.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/README.md +24 -1
  2. package/dist/application-onboarding/schemas.d.ts +24 -0
  3. package/dist/application-onboarding/schemas.js +4 -0
  4. package/dist/application-onboarding/schemas.js.map +1 -1
  5. package/dist/application-onboarding/tui-model.d.ts +1 -0
  6. package/dist/application-onboarding/tui-model.js +10 -0
  7. package/dist/application-onboarding/tui-model.js.map +1 -1
  8. package/dist/application-onboarding/tui.js +1 -1
  9. package/dist/application-onboarding/tui.js.map +1 -1
  10. package/dist/authorization/application-client.d.ts +36 -1
  11. package/dist/authorization/application-client.js +4 -2
  12. package/dist/authorization/application-client.js.map +1 -1
  13. package/dist/authorization/application-commands.js +4 -3
  14. package/dist/authorization/application-commands.js.map +1 -1
  15. package/dist/authorization/application-schemas.d.ts +42 -7
  16. package/dist/authorization/application-schemas.js +19 -3
  17. package/dist/authorization/application-schemas.js.map +1 -1
  18. package/dist/business-issuer.js +8 -0
  19. package/dist/business-issuer.js.map +1 -1
  20. package/dist/cli.js +49 -31
  21. package/dist/cli.js.map +1 -1
  22. package/dist/command-catalog.js +18 -1
  23. package/dist/command-catalog.js.map +1 -1
  24. package/dist/kb/catalog.d.ts +2 -0
  25. package/dist/kb/catalog.js +14 -0
  26. package/dist/kb/catalog.js.map +1 -0
  27. package/dist/kb/client.d.ts +46 -0
  28. package/dist/kb/client.js +272 -0
  29. package/dist/kb/client.js.map +1 -0
  30. package/dist/kb/commands.d.ts +14 -0
  31. package/dist/kb/commands.js +121 -0
  32. package/dist/kb/commands.js.map +1 -0
  33. package/dist/kb/config.d.ts +15 -0
  34. package/dist/kb/config.js +76 -0
  35. package/dist/kb/config.js.map +1 -0
  36. package/dist/kb/errors.d.ts +9 -0
  37. package/dist/kb/errors.js +31 -0
  38. package/dist/kb/errors.js.map +1 -0
  39. package/dist/kb/transfers.d.ts +67 -0
  40. package/dist/kb/transfers.js +257 -0
  41. package/dist/kb/transfers.js.map +1 -0
  42. package/dist/kb/types.d.ts +81 -0
  43. package/dist/kb/types.js +2 -0
  44. package/dist/kb/types.js.map +1 -0
  45. package/dist/kb/upload-state.d.ts +20 -0
  46. package/dist/kb/upload-state.js +135 -0
  47. package/dist/kb/upload-state.js.map +1 -0
  48. package/dist/login-recovery.js +15 -1
  49. package/dist/login-recovery.js.map +1 -1
  50. package/dist/maintenance/modules.js +1 -1
  51. package/dist/maintenance/modules.js.map +1 -1
  52. package/dist/mcp/catalog.js +9 -1
  53. package/dist/mcp/catalog.js.map +1 -1
  54. package/dist/oss/commands.js +20 -0
  55. package/dist/oss/commands.js.map +1 -1
  56. package/dist/oss/download-links.d.ts +28 -0
  57. package/dist/oss/download-links.js +124 -0
  58. package/dist/oss/download-links.js.map +1 -0
  59. package/dist/oss/errors.js +1 -1
  60. package/dist/oss/errors.js.map +1 -1
  61. package/dist/oss/schemas.d.ts +15 -0
  62. package/dist/oss/schemas.js +2 -0
  63. package/dist/oss/schemas.js.map +1 -1
  64. package/dist/oss/signed-url-transfers.d.ts +41 -0
  65. package/dist/oss/signed-url-transfers.js +207 -0
  66. package/dist/oss/signed-url-transfers.js.map +1 -0
  67. package/dist/oss/tools.js +18 -0
  68. package/dist/oss/tools.js.map +1 -1
  69. package/dist/oss/transfer-pool.d.ts +2 -0
  70. package/dist/oss/transfer-pool.js +27 -0
  71. package/dist/oss/transfer-pool.js.map +1 -0
  72. package/dist/oss/transfer-worker.js +8 -17
  73. package/dist/oss/transfer-worker.js.map +1 -1
  74. package/dist/oss/transfers.d.ts +2 -0
  75. package/dist/oss/transfers.js +27 -0
  76. package/dist/oss/transfers.js.map +1 -1
  77. package/dist/oss/web-page.js +60 -5
  78. package/dist/oss/web-page.js.map +1 -1
  79. package/dist/oss/web.js +26 -0
  80. package/dist/oss/web.js.map +1 -1
  81. package/dist/platform-profile.d.ts +1 -1
  82. package/dist/server.d.ts +2 -0
  83. package/dist/server.js +2 -0
  84. package/dist/server.js.map +1 -1
  85. package/dist/tasks/commands.d.ts +9 -0
  86. package/dist/tasks/commands.js +60 -0
  87. package/dist/tasks/commands.js.map +1 -0
  88. package/dist/tasks/oss-query.d.ts +56 -0
  89. package/dist/tasks/oss-query.js +176 -0
  90. package/dist/tasks/oss-query.js.map +1 -0
  91. package/dist/tasks/runtime.d.ts +151 -0
  92. package/dist/tasks/runtime.js +71 -0
  93. package/dist/tasks/runtime.js.map +1 -0
  94. package/dist/tasks/tools.d.ts +3 -0
  95. package/dist/tasks/tools.js +16 -0
  96. package/dist/tasks/tools.js.map +1 -0
  97. package/dist/tasks/types.d.ts +14 -0
  98. package/dist/tasks/types.js +4 -0
  99. package/dist/tasks/types.js.map +1 -0
  100. package/dist/tasks/wecom-notify.d.ts +26 -0
  101. package/dist/tasks/wecom-notify.js +150 -0
  102. package/dist/tasks/wecom-notify.js.map +1 -0
  103. package/docs/agent-tasks.md +103 -0
  104. package/docs/application-default-groups.md +10 -2
  105. package/docs/design/kb-cli.md +94 -0
  106. package/docs/kb-access.md +85 -0
  107. package/package.json +13 -7
  108. package/scripts/export-kb-contract.py +158 -0
  109. package/skills/numa-ai-registry/SKILL.md +2 -2
  110. package/skills/numa-cli/SKILL.md +24 -9
  111. package/skills/numa-cli/agents/openai.yaml +2 -2
  112. package/skills/numa-cli/evals/evals.json +13 -1
  113. package/skills/numa-cli/numa-skill.json +1 -1
  114. package/skills/numa-cli/references/cli-bootstrap.md +8 -8
  115. package/skills/numa-cli/references/cli-mcp.md +28 -20
  116. package/skills/numa-cli/references/pipeline-release.md +9 -9
  117. package/skills/numa-cli/references/skills-command-contract.md +40 -40
  118. package/skills/numa-cli/references/skills-updates.md +13 -13
  119. package/skills/numa-cli/references/skills-workflows.md +4 -4
  120. package/skills/numa-create-application/SKILL.md +1 -1
  121. package/skills/numa-create-application/numa-skill.json +2 -2
  122. package/skills/numa-create-application/references/cli-bootstrap.md +3 -3
  123. package/skills/numa-create-application/references/numa-cli.md +16 -16
  124. package/skills/numa-jenkins-deployment/SKILL.md +8 -8
  125. package/skills/numa-jenkins-deployment/numa-skill.json +2 -2
  126. package/skills/numa-jenkins-deployment/references/cli-bootstrap.md +3 -3
  127. package/skills/numa-jenkins-deployment/references/cli-contract.md +7 -7
  128. package/skills/numa-jenkins-deployment/references/diagnostics.md +2 -2
  129. package/skills/numa-local-flux-deploy/SKILL.md +1 -1
  130. package/skills/numa-local-flux-deploy/numa-skill.json +2 -2
  131. package/skills/numa-local-flux-deploy/references/cli-bootstrap.md +3 -3
  132. package/skills/numa-nacos/SKILL.md +4 -4
  133. package/skills/numa-nacos/numa-skill.json +2 -2
  134. package/skills/numa-nacos/references/cli-bootstrap.md +3 -3
  135. package/skills/numa-nacos/references/command-contract.md +17 -17
  136. package/skills/numa-notion/SKILL.md +4 -4
  137. package/skills/numa-notion/numa-skill.json +2 -2
  138. package/skills/numa-notion/references/agents-automation.md +2 -2
  139. package/skills/numa-notion/references/cli-bootstrap.md +3 -3
  140. package/skills/numa-notion/references/cli.md +17 -17
  141. package/skills/numa-oss-access/SKILL.md +35 -77
  142. package/skills/numa-oss-access/agents/openai.yaml +2 -2
  143. package/skills/numa-oss-access/evals/evals.json +48 -0
  144. package/skills/numa-oss-access/numa-skill.json +2 -2
  145. package/skills/numa-oss-access/references/cli-bootstrap.md +5 -5
  146. package/skills/numa-oss-access/references/download-links.md +42 -0
  147. package/skills/numa-oss-access/references/object-operations.md +95 -0
  148. package/skills/numa-oss-access/references/search-and-mcp.md +17 -11
  149. package/skills/numa-wecom/SKILL.md +27 -62
  150. package/skills/numa-wecom/agents/openai.yaml +2 -2
  151. package/skills/numa-wecom/evals/evals.json +25 -0
  152. package/skills/numa-wecom/numa-skill.json +2 -2
  153. package/skills/numa-wecom/references/cli-bootstrap.md +5 -5
  154. package/skills/numa-wecom/references/legacy-operations.md +71 -0
  155. package/skills/numa-wecom/references/machine-auth.md +7 -7
  156. package/skills/numa-wecom/references/mcp.md +9 -8
  157. package/src/kb/openapi-contract.json +1432 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transfer-pool.js","sourceRoot":"","sources":["../../src/oss/transfer-pool.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,eAAe,CAAI,KAAmB,EAAE,WAAmB,EAAE,IAAgC,EAAE,MAAoB;IACvI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,GAAG,EAAE;QAAE,MAAM,IAAI,UAAU,CAAC,gDAAgD,CAAC,CAAC;IAClJ,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,OAAgB,CAAC;IACrB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE;QACvF,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC;YACrB,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM;gBAAE,OAAO;YAClC,IAAI,CAAC;gBAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC,CAAC;YAAC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAAC,IAAI,CAAC,MAAM;oBAAE,OAAO,GAAG,KAAK,CAAC;gBAAC,MAAM,GAAG,IAAI,CAAC;YAAC,CAAC;QACnG,CAAC;IACH,CAAC,CAAC,CAAC,CAAC;IACJ,IAAI,MAAM;QAAE,MAAM,OAAO,CAAC;IAC1B,MAAM,EAAE,cAAc,EAAE,CAAC;AAC3B,CAAC"}
@@ -4,6 +4,7 @@ import { dirname, basename, resolve, relative, isAbsolute, join, parse } from 'n
4
4
  import { randomUUID } from 'node:crypto';
5
5
  import { Readable } from 'node:stream';
6
6
  import OSS from 'ali-oss';
7
+ import { runTransferPool } from './transfer-pool.js';
7
8
  import { OssError } from './errors.js';
8
9
  import { ossTransferOptions } from './transfers.js';
9
10
  const PART = 8 * 1024 * 1024;
@@ -86,23 +87,13 @@ catch (e) {
86
87
  throw e;
87
88
  } }
88
89
  async function concurrent(parts, ctx, work) {
89
- let next = 0;
90
- let failure;
91
- await Promise.all(Array.from({ length: Math.min(3, parts.length) }, async () => {
92
- while (!failure && !ctx.signal.aborted) {
93
- const n = parts[next++];
94
- if (n === undefined)
95
- return;
96
- try {
97
- await work(n);
98
- }
99
- catch (e) {
100
- failure ??= e;
101
- }
102
- }
103
- }));
104
- if (failure)
105
- throw failure;
90
+ try {
91
+ await runTransferPool(parts, 3, work, ctx.signal);
92
+ }
93
+ catch (e) {
94
+ check(ctx);
95
+ throw e;
96
+ }
106
97
  check(ctx);
107
98
  }
108
99
  async function retry(ctx, operation) {
@@ -1 +1 @@
1
- {"version":3,"file":"transfer-worker.js","sourceRoot":"","sources":["../../src/oss/transfer-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transfer-worker.js","sourceRoot":"","sources":["../../src/oss/transfer-worker.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,8 @@ export declare class OssTransferClient {
38
38
  private readonly clientFactory;
39
39
  constructor(dependencies?: OssTransferDependencies);
40
40
  private client;
41
+ /** Internal signing step; callers verify object existence/permissions before signing a batch. */
42
+ signDownloadUrl(session: AccessSession, key: string, deadline: number): Promise<string>;
41
43
  readStream(session: AccessSession, key: string, maxBytes?: number): Promise<Readable>;
42
44
  uploadStream(session: AccessSession, key: string, source: Readable, size: number): Promise<void>;
43
45
  list(session: AccessSession, requestedPrefix?: string, limit?: number, options?: OssListOptions): Promise<{
@@ -134,6 +134,33 @@ export class OssTransferClient {
134
134
  client(session) {
135
135
  return this.clientFactory(clientOptions(session));
136
136
  }
137
+ /** Internal signing step; callers verify object existence/permissions before signing a batch. */
138
+ async signDownloadUrl(session, key, deadline) {
139
+ requirePermission(session, "read");
140
+ const objectKey = validateKey(key, effectivePrefix(session), "object key");
141
+ if (objectKey !== key || key.endsWith("/"))
142
+ throw new OssError("Select an exact file key.", "oss_input_invalid", 400);
143
+ const now = Date.now();
144
+ const expires = Math.floor((deadline - now) / 1000);
145
+ const sessionEnd = Date.parse(session.expiration);
146
+ if (!Number.isFinite(deadline) || !Number.isFinite(sessionEnd) || expires < 1 || expires > 3600 || deadline > sessionEnd - 5000) {
147
+ throw new OssError("STS has insufficient remaining time; renew and generate links again.", "oss_link_expired", 409);
148
+ }
149
+ const filename = encodeURIComponent(key.split("/").at(-1)).replace(/[!'()*]/gu, c => `%${c.charCodeAt(0).toString(16).toUpperCase()}`);
150
+ try {
151
+ const url = await this.clientFactory({ ...clientOptions(session), authorizationV4: true }).signatureUrlV4("GET", expires, {
152
+ queries: { "response-content-disposition": `attachment; filename="download"; filename*=UTF-8''${filename}`, "response-cache-control": "private, no-store" }
153
+ }, objectKey);
154
+ const parsed = new URL(url);
155
+ if (parsed.protocol !== "https:" || parsed.hostname !== `${session.bucketName}.oss-${session.region.replace(/^oss-/u, "")}.aliyuncs.com`
156
+ || !parsed.searchParams.has("x-oss-signature"))
157
+ throw new Error("Invalid signing response");
158
+ return url;
159
+ }
160
+ catch {
161
+ throw new OssError("Unable to sign the download link.", "oss_link_sign_failed", 502);
162
+ }
163
+ }
137
164
  async readStream(session, key, maxBytes) {
138
165
  requirePermission(session, "read");
139
166
  const objectKey = validateKey(key, effectivePrefix(session), "object key");
@@ -1 +1 @@
1
- {"version":3,"file":"transfers.js","sourceRoot":"","sources":["../../src/oss/transfers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transfers.js","sourceRoot":"","sources":["../../src/oss/transfers.ts"],"names":[],"mappings":"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"}
@@ -10,18 +10,19 @@ export const OSS_WEB_HTML = String.raw `<!doctype html>
10
10
  <div id="workspace" class="workspace"><aside class="sidebar"><div class="sidebar-heading"><h2 class="eyebrow">存储位置</h2><button id="sidebar-toggle" class="quiet panel-toggle" aria-label="折叠存储位置" title="折叠存储位置" aria-expanded="true" aria-controls="sidebar-content">‹</button></div><div id="sidebar-content" class="sidebar-content"><button id="root" class="root-button"><span class="folder-icon"></span><span id="bucket">正在连接</span></button><div class="scope-label">授权目录</div><div id="scope" class="scope">—</div><div class="sidebar-bottom"><span id="permission">正在读取权限</span><p>文件操作仅限当前授权范围。<br>关闭 CLI 将断开本机连接。</p></div></div></aside>
11
11
  <main class="files"><div class="page-heading"><div><div class="eyebrow">OBJECT STORAGE</div><h1>文件</h1></div><div class="upload-actions"><button id="mkdir" disabled>创建目录…</button><button id="upload-folder" disabled>上传文件夹</button><button id="upload" class="primary" disabled>+ 上传文件</button></div></div>
12
12
  <div class="location"><button id="up" class="quiet" title="返回上级目录" aria-label="返回上级目录">↑</button><nav id="breadcrumbs" aria-label="文件路径"></nav><button id="refresh" class="quiet icon-button" title="刷新文件列表" aria-label="刷新文件列表">${OSS_REFRESH_ICON}</button></div>
13
- <div class="toolbar"><input id="search" type="search" placeholder="筛选已加载的文件与目录…" aria-label="筛选已加载的文件与目录"><span id="selection-count"></span><button id="statistics-selected" disabled>统计所选</button><button id="download-selected" disabled>下载所选</button><button id="delete-selected" class="danger" disabled>删除所选</button></div>
13
+ <div class="toolbar"><input id="search" type="search" placeholder="筛选已加载的文件与目录…" aria-label="筛选已加载的文件与目录"><span id="selection-count"></span><button id="statistics-selected" disabled>统计所选</button><button id="download-selected" disabled>下载所选</button><button id="links-selected" disabled>临时下载链接</button><button id="delete-selected" class="danger" disabled>删除所选</button></div>
14
14
  <div class="table-wrap"><table><thead><tr><th class="check-cell"><input id="select-all" type="checkbox" aria-label="选择已显示的文件与目录"></th><th>名称</th><th class="size-cell">大小</th><th class="date-cell">修改时间</th></tr></thead><tbody id="rows"></tbody></table><div id="empty" class="empty">正在连接当前授权…</div></div>
15
15
  <footer class="list-footer"><span id="list-summary">—</span><button id="more" hidden>加载更多</button></footer>
16
16
 
17
- </main><aside class="preview-panel"><div class="preview-heading"><h2>文件预览</h2><button id="preview-close" class="quiet panel-toggle" aria-label="折叠文件预览" title="折叠文件预览" aria-expanded="true" aria-controls="preview-content">›</button></div><div id="preview-content" class="preview-content"><div id="preview" class="preview-body"><div class="preview-empty">选择一个文件<br><small>查看内容与文件信息</small></div></div><div class="preview-actions"><button id="download" disabled>下载文件</button><button id="delete" class="danger" disabled>删除文件</button></div></div></aside></div>
17
+ </main><aside class="preview-panel"><div class="preview-heading"><h2>文件预览</h2><button id="preview-close" class="quiet panel-toggle" aria-label="折叠文件预览" title="折叠文件预览" aria-expanded="true" aria-controls="preview-content">›</button></div><div id="preview-content" class="preview-content"><div id="preview" class="preview-body"><div class="preview-empty">选择一个文件<br><small>查看内容与文件信息</small></div></div><div class="preview-actions"><button id="download" disabled>下载文件</button><button id="file-link" disabled>临时链接</button><button id="delete" class="danger" disabled>删除文件</button></div></div></aside></div>
18
18
  <dialog id="delete-dialog"><h2>删除所选项目?</h2><p id="delete-count"></p><p>文件夹包含全部子文件。确认后分页扫描并删除,不预先统计总数;已删除内容不能在此页面撤销。执行期间请勿向目标目录写入新文件。</p><ul id="delete-list"></ul><p id="delete-target" class="scope"></p><div class="dialog-actions"><button id="delete-cancel">取消</button><button id="delete-confirm" class="destructive">确认删除</button></div></dialog>
19
19
  <section id="tasks-panel" class="tasks-panel" aria-labelledby="tasks-heading" hidden><div class="tasks-heading"><h2 id="tasks-heading">传输任务</h2><button id="tasks-close" class="quiet" aria-label="关闭传输任务">×</button></div><p class="tasks-note">由本机 CLI 持续传输,关闭浏览器后仍会继续。CLI 重启后,未完成任务会暂停,需手动恢复。</p><p id="tasks-connection" role="status" hidden></p><div id="tasks-list" class="tasks-list"></div><p id="tasks-empty" class="tasks-note">暂无任务。选择文件或文件夹开始传输。</p></section>
20
20
  <dialog id="statistics-dialog" aria-labelledby="statistics-title"><h2 id="statistics-title">所选项目统计</h2><p id="statistics-selection"></p><p id="statistics-status" role="status"></p><dl id="statistics-result"></dl><div id="statistics-details" hidden>
21
21
  <p>深度以每个所选文件夹为第 1 层;仅选文件时为 0。重叠选择只统计一次,目录占位对象不计入文件数和大小。</p>
22
- <table class="statistics-table"><caption>按文件类型</caption><thead><tr><th scope="col">扩展名</th><th scope="col">文件数量</th><th scope="col">总大小</th></tr></thead><tbody id="statistics-types"></tbody></table><p>按最后一个扩展名归类,不区分大小写;不读取文件内容识别类型。最多单列扫描中遇到的 100 种扩展名,其余合并为「其他类型」。</p>
23
- <table class="statistics-table"><caption>按最后修改时间</caption><thead><tr><th scope="col">时间范围</th><th scope="col">文件数量</th><th scope="col">总大小</th></tr></thead><tbody id="statistics-times"></tbody></table><p id="statistics-reference"></p><p>区间互不重叠,含下限、不含上限,一天按 24 小时计算。最后修改时间不等同于首次上传时间;统计期间内容变化可能影响结果。</p>
22
+ <div id="statistics-types-group" hidden><table class="statistics-table"><caption>按文件类型</caption><thead><tr><th scope="col">扩展名</th><th scope="col">文件数量</th><th scope="col">总大小</th></tr></thead><tbody id="statistics-types"></tbody></table><p>按最后一个扩展名归类,不区分大小写;不读取文件内容识别类型。最多单列扫描中遇到的 100 种扩展名,其余合并为「其他类型」。</p></div>
23
+ <div id="statistics-times-group" hidden><table class="statistics-table"><caption>按最后修改时间</caption><thead><tr><th scope="col">时间范围</th><th scope="col">文件数量</th><th scope="col">总大小</th></tr></thead><tbody id="statistics-times"></tbody></table><p id="statistics-reference"></p><p>区间互不重叠,含下限、不含上限,一天按 24 小时计算。统计文件的最后修改时间,不等同于首次上传时间;统计期间内容变化可能影响结果。</p></div>
24
24
  </div><div class="dialog-actions"><button id="statistics-stop" hidden>停止统计</button><button id="statistics-close">关闭</button></div></dialog>
25
+ <dialog id="links-dialog"><h2>临时下载链接</h2><p id="links-selection"></p><p>最多 100 个文件。文件夹生成逐文件链接清单;超过上限直接拒绝,不返回部分结果。</p><label for="links-expires">链接有效期</label><select id="links-expires"><option value="300">5 分钟</option><option value="900">15 分钟</option><option value="1800">30 分钟</option><option value="3600">1 小时</option></select><p>持有链接者可在有效期内下载。实际时效受 STS 到期时间限制,续期不会延长已生成链接;有效期不保证所有文件能下载完成。</p><p id="links-status" role="status"></p><div id="links-result"></div><div class="dialog-actions"><button id="links-close">关闭</button><button id="links-generate" class="primary">生成链接</button></div></dialog>
25
26
  <dialog id="stop-dialog"><h2>停止本机服务?</h2><p>上传下载任务将暂停并保存断点;删除、复制、移动等文件操作将停止,已完成部分保留且不会自动续做。随后关闭 CLI 服务。所有已打开的控制台都会断开连接。重新运行 numa oss web 后可继续任务。</p><div class="dialog-actions"><button id="stop-cancel">继续运行</button><button id="stop-confirm" class="destructive">停止服务</button></div></dialog>
26
27
  <div id="permission-tip" class="permission-tip" role="tooltip" hidden></div>
27
28
  <div id="file-menu" class="file-menu" role="menu" aria-label="文件操作" hidden></div>
@@ -33,6 +34,7 @@ export const OSS_WEB_CSS = String.raw `
33
34
  .file-menu{position:fixed;z-index:20;min-width:175px;padding:5px;background:white;border:1px solid #d4ded6;border-radius:8px;box-shadow:0 8px 28px #20372e26}.file-menu button{display:block;width:100%;border:0;text-align:left;padding:9px 12px}.file-menu button:focus{background:#eff5f1}.file-menu button[aria-disabled=true]{color:#99a49e}.permission-tip{position:fixed;z-index:30;max-width:min(330px,calc(100vw - 16px));padding:10px 12px;background:#263c31;color:#fff;border-radius:6px;box-shadow:0 6px 24px #20372e26;font-size:12px;line-height:1.7;overflow-wrap:anywhere}
34
35
  #statistics-result{display:grid;grid-template-columns:100px 1fr;gap:12px;margin:20px 0;font-variant-numeric:tabular-nums}#statistics-result dd{margin:0;font-weight:600}#statistics-status{margin-top:10px}
35
36
  #statistics-dialog{width:min(640px,90vw);max-width:90vw;max-height:90vh;overflow:auto}#statistics-result dd{overflow-wrap:anywhere}.statistics-table{margin:22px 0 10px}.statistics-table caption{text-align:left;font-weight:600;margin-bottom:6px}.statistics-table th:first-child,.statistics-table td:first-child{width:44%;overflow-wrap:anywhere}.statistics-table th:not(:first-child),.statistics-table td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.statistics-table td{color:#4a6554}#statistics-dialog .dialog-actions{position:sticky;bottom:-26px;background:#fff;padding:14px 0;margin-top:10px}
37
+ #links-dialog{width:min(680px,90vw);max-width:90vw;max-height:90vh;overflow:auto}#links-expires{margin-left:12px}#links-result article{border-top:1px solid #dbe3de;padding:14px 0}#links-result h3{font-size:13px;overflow-wrap:anywhere;margin:0 0 8px}#links-result textarea{width:100%;font:11px/1.6 ui-monospace,monospace;resize:vertical;overflow-wrap:anywhere;min-height:72px}#links-result .link-copy{display:flex;align-items:center;gap:8px}#links-status{overflow-wrap:anywhere}#links-dialog .dialog-actions{position:sticky;bottom:-26px;background:white;padding:14px 0}
36
38
  #operation-dialog{max-height:90vh;overflow:auto;width:min(520px,90vw)}
37
39
  #destination-picker{margin-top:16px}#destination-hint{font-size:12px;margin-bottom:8px}.destination-tree{max-height:260px;overflow:auto;border:1px solid #dbe3de;border-radius:6px;padding:6px;background:#fafcfb}.destination-children{padding-left:18px}.destination-line{display:flex;align-items:center;gap:4px;min-height:34px;border-radius:4px}.destination-line button{border:0;background:transparent;padding:6px;color:#344b41}.destination-toggle{width:28px;flex-shrink:0}.destination-name{display:flex;align-items:center;gap:8px;flex:1;min-width:0;text-align:left;white-space:normal;overflow-wrap:anywhere}.destination-name .folder-icon{flex-shrink:0}.destination-item[aria-selected=true]>.destination-line{background:#dfede3}.destination-item:focus{outline:none}.destination-item:focus-visible>.destination-line{outline:2px solid #16805a;outline-offset:-2px}.destination-status{font-size:11px;color:#7b8d81;margin-left:32px}.destination-more{font-size:12px;margin:4px 0 4px 32px}.destination-editor{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 6px 32px}.destination-editor input{width:100%;min-width:0;padding:7px;border:1px solid #cbd9cf;border-radius:4px;background:white;color:#23322e}.destination-editor button{font-size:12px;padding:6px 9px}
38
40
  #operation-dialog label{display:block;font-size:12px;margin:16px 0 8px}#operation-value{width:100%;border:1px solid #cbd9cf;padding:10px;border-radius:5px;color:#23322e}#operation-source{overflow-wrap:anywhere}#operation-help{margin-top:10px}#operation-error{color:#a7473d}
@@ -146,6 +148,8 @@ function controls() {
146
148
  $('download').disabled = !active || !state.file || !state.session?.read;
147
149
  $('delete').disabled = !active || !state.file || !state.session?.delete;
148
150
  $('download-selected').disabled = !active || !state.selected.size || !state.session?.read;
151
+ $('links-selected').disabled = $('download-selected').disabled || state.rows.some(row=>state.selected.has(row.key)&&row.directory&&!state.session?.list);
152
+ $('file-link').disabled = $('download').disabled;
149
153
  $('statistics-selected').disabled = !active || !state.selected.size || state.rows.some(row => state.selected.has(row.key) && !state.session?.[row.directory ? 'list' : 'read']);
150
154
  $('delete-selected').disabled = !active || !state.selected.size || !state.session?.delete;
151
155
  $('grant').disabled = state.mutating || state.stopping;
@@ -251,6 +255,7 @@ async function preview(row) {
251
255
  } catch (error) { if (epoch === state.epoch && controller === state.previewController && error.name !== 'AbortError') { $('preview').replaceChildren(node('h3', displayName(row.key.split('/').pop())), node('p', error.message)); } }
252
256
  }
253
257
  async function selectGrant(id) {
258
+ closeLinks();
254
259
  state.loading = false; setBusy('refresh', false);
255
260
  state.epoch++; const epoch = state.epoch; state.id = Number(id); state.ready = false; state.session = null; state.rows = []; state.selected.clear(); state.marker = ''; state.dir = ''; state.root = '';
256
261
  state.controller?.abort(); $('search').value = ''; clearPreview(); notice(''); tick(); renderRows(); $('scope').textContent = '正在连接…'; $('bucket').textContent = '正在连接…';
@@ -289,6 +294,51 @@ async function chooseTransfer(path, body) {
289
294
  } catch (error) { if (error.name === 'AbortError') notice('选择或任务准备超时。请先查看传输任务,确认是否已加入队列。'); else fail(error); }
290
295
  finally { clearTimeout(timeout); state.mutating = false; controls(); }
291
296
  }
297
+ let linkSelection = null, linksController = null;
298
+ function askLinks(entries) {
299
+ if (!state.ready || state.mutating || state.stopping || !entries.length || !state.session?.read) return;
300
+ if(entries.some(entry=>entry.directory&&!state.session?.list)) { notice('文件夹需要列举和下载权限。'); return; }
301
+ if(entries.length>100) { notice('所选内容超过 100 项,未生成链接。请缩小范围或使用批量下载。'); return; }
302
+ linkSelection={grantId:state.id,epoch:state.epoch,entries:entries.map(entry=>({key:entry.key,directory:entry.directory}))};
303
+ $('links-selection').textContent='Grant #'+state.id+' · 已选 '+entries.length+' 项';
304
+ $('links-expires').value='300'; $('links-status').textContent=''; $('links-result').replaceChildren();
305
+ $('links-generate').disabled=false; $('links-expires').disabled=false; $('links-dialog').showModal();
306
+ }
307
+ function closeLinks() {
308
+ linksController?.abort(); linksController=null; linkSelection=null;
309
+ $('links-result').replaceChildren(); $('links-status').textContent=''; $('links-dialog').close();
310
+ }
311
+ async function generateLinks() {
312
+ const selected=linkSelection;
313
+ if(!selected || state.mutating || state.stopping || selected.grantId!==state.id || selected.epoch!==state.epoch) return;
314
+ const controller=new AbortController(); linksController=controller; state.mutating=true; controls();
315
+ $('links-generate').disabled=true; $('links-expires').disabled=true; $('links-result').replaceChildren();
316
+ $('links-status').textContent='正在列举并检查下载权限,完成后开始计算链接有效期…';
317
+ try {
318
+ const result=await api('download-links',{}, {method:'POST',signal:controller.signal,body:JSON.stringify({entries:selected.entries,expires:Number($('links-expires').value)})},selected.grantId);
319
+ if(linksController!==controller || selected.epoch!==state.epoch) return;
320
+ const data=result.data;
321
+ $('links-status').textContent=data.fileCount+' 个链接 · 最早到期 '+date(data.expiresAt)+'。过期后请重新生成。';
322
+ const all=node('div',undefined,'link-copy'); all.append(node('span','复制全部链接'),copyButton(data.links.map(link=>link.url).join('\n'),'全部下载链接')); $('links-result').append(all);
323
+ for(const link of data.links) {
324
+ const row=node('article'),heading=node('h3',displayName(link.key)),field=node('textarea');
325
+ field.value=link.url;field.readOnly=true;field.setAttribute('aria-label',link.key+' 的临时下载链接');
326
+ const copy=node('div',undefined,'link-copy');copy.append(node('span','到期 '+date(link.expiresAt)),copyButton(link.url,'下载链接'));
327
+ row.append(heading,field,copy);$('links-result').append(row);
328
+ }
329
+ } catch(error) {
330
+ if(linksController===controller && error.name!=='AbortError')$('links-status').textContent=error.message;
331
+ } finally {
332
+ if(linksController===controller)linksController=null;
333
+ state.mutating=false;controls();$('links-generate').disabled=false;$('links-expires').disabled=false;
334
+ }
335
+ }
336
+ $('links-selected').onclick=()=>askLinks(state.rows.filter(row=>state.selected.has(row.key)));
337
+ $('file-link').onclick=()=>{if(state.file)askLinks([{key:state.file.key,directory:false}]);};
338
+ $('links-generate').onclick=generateLinks;
339
+ $('links-close').onclick=closeLinks;
340
+ $('links-dialog').oncancel=event=>{event.preventDefault();closeLinks();};
341
+
292
342
  async function download(keys) {
293
343
  if (!state.session?.read || !keys.length) return;
294
344
  const entries = keys.map(key => ({ key, directory: !!state.rows.find(row => row.key === key)?.directory }));
@@ -393,6 +443,10 @@ function openFileMenu(event, row, anchor) {
393
443
  button.onclick = () => { if (missing.length) { showPermissionTip(button,missing); return; } closeFileMenu(); if (kind === 'delete') askDelete([row.key]); else askOperation(kind,row); }; menu.append(button);
394
444
  }
395
445
  const selected = state.selected.has(row.key) ? state.rows.filter(item => state.selected.has(item.key)) : [row];
446
+ const links = node('button', '临时下载链接…'); links.setAttribute('role','menuitem');
447
+ const linkMissing = ['read',...(selected.some(item=>item.directory)?['list']:[])].filter(permission=>!state.session[permission]).map(permission=>permissions[permission]);
448
+ links.setAttribute('aria-disabled',String(linkMissing.length>0)); links.onblur = hidePermissionTip;
449
+ links.onclick = () => { if(linkMissing.length){showPermissionTip(links,linkMissing);return;} closeFileMenu(); askLinks(selected); }; menu.append(links);
396
450
  const statistics = node('button', selected.length > 1 ? '统计所选(' + selected.length + ' 项)…' : '统计…'); statistics.setAttribute('role','menuitem');
397
451
  const missing = [...new Set(selected.map(item => item.directory ? 'list' : 'read'))].filter(permission => !state.session[permission]).map(permission => permissions[permission]);
398
452
  statistics.setAttribute('aria-disabled',String(missing.length > 0)); statistics.onblur = hidePermissionTip;
@@ -579,13 +633,14 @@ async function confirmOperation() {
579
633
  let statisticsId = null;
580
634
  const statisticsTimeLabels = {day:'24 小时内',week:'1–7 天前',month:'7–30 天前',quarter:'30–90 天前',year:'90–365 天前',older:'365 天及更早',future:'晚于统计开始时间',unknown:'时间未知'};
581
635
  function statisticsRows(id, rows, label) {
636
+ rows = rows.filter(item => item.fileCount > 0);
637
+ $(id + '-group').hidden = !rows.length;
582
638
  const body = $(id); body.replaceChildren();
583
639
  for (const item of rows) {
584
640
  const row = node('tr'), name = node('th',label(item.key)), size = node('td',bytes(item.totalSizeBytes));
585
641
  name.setAttribute('scope','row'); size.title = item.totalSizeBytes + ' 字节';
586
642
  row.append(name,node('td',item.fileCount + ' 个'),size); body.append(row);
587
643
  }
588
- if (!rows.length) { const row = node('tr'), cell = node('td','暂无文件'); cell.setAttribute('colspan','3'); row.append(cell); body.append(row); }
589
644
  }
590
645
  function renderStatistics(job) {
591
646
  const live = ['running','stopping'].includes(job.status);
@@ -1 +1 @@
1
- {"version":3,"file":"web-page.js","sourceRoot":"","sources":["../../src/oss/web-page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEjE,iGAAiG;AACjG,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAA;;;;4PAIsN,gBAAgB;;;;;mOAKzC,gBAAgB;;;;;;;;;;;;;;;;;;2BAkBxN,aAAa;eACzB,CAAC;AAEhB,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDpC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAiqB9B,CAAC"}
1
+ {"version":3,"file":"web-page.js","sourceRoot":"","sources":["../../src/oss/web-page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEjE,iGAAiG;AACjG,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAA;;;;4PAIsN,gBAAgB;;;;;mOAKzC,gBAAgB;;;;;;;;;;;;;;;;;;;2BAmBxN,aAAa;eACzB,CAAC;AAEhB,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuDpC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAstB9B,CAAC"}
package/dist/oss/web.js CHANGED
@@ -15,6 +15,7 @@ import { createLocalPicker } from "./local-picker.js";
15
15
  import { planDownloadJobs, planUploadJobs } from "./transfer-paths.js";
16
16
  import { createTransferQueue } from "./transfer-queue.js";
17
17
  import { OssFileOperations } from "./file-operations.js";
18
+ import { createDownloadLinks, downloadLinksOutput } from "./download-links.js";
18
19
  import { discoverWebService, writeWebService, removeWebService, serviceInfo } from "./web-service.js";
19
20
  function queueNamespace(base, subject) {
20
21
  return createHash("sha256").update(JSON.stringify([base, subject])).digest("hex").slice(0, 24);
@@ -70,6 +71,10 @@ function errorResponse(res, error) {
70
71
  oss_grant_forbidden: "此 Grant 当前不可用,请刷新授权清单。",
71
72
  oss_scope_violation: "路径超出所选 Grant 的授权范围。",
72
73
  oss_operation_forbidden: "当前授权不允许此操作。",
74
+ oss_link_limit: "所选内容超过 100 个文件,或目录扫描达到上限,未生成链接清单。请缩小范围或使用批量下载。",
75
+ oss_link_empty: "所选文件夹中没有可下载的文件。",
76
+ oss_link_expired: "STS 剩余时间不足,请续期后重新生成链接。",
77
+ oss_link_sign_failed: "下载链接生成失败,请稍后重试。",
73
78
  oss_operation_busy: "已有文件操作正在执行,请等待完成或先停止该操作。",
74
79
  oss_input_invalid: "请求参数无效,或尚未确认删除。",
75
80
  oss_picker_busy: "已有系统文件选择器正在打开,请完成或取消后重试。",
@@ -186,6 +191,7 @@ export async function startOssWeb(options) {
186
191
  const managers = new Map();
187
192
  const pendingManagers = new Map();
188
193
  let subject;
194
+ let linksBusy = false;
189
195
  async function grantsForIdentity() {
190
196
  const response = await client.listGrants();
191
197
  if (subject !== undefined && response.subject !== subject) {
@@ -356,6 +362,26 @@ export async function startOssWeb(options) {
356
362
  return;
357
363
  }
358
364
  const session = await manager.get();
365
+ if (req.method === "POST" && url.pathname === "/api/download-links") {
366
+ if (linksBusy)
367
+ throw new OssError("Another link request is running.", "oss_operation_busy", 409);
368
+ const input = await strictJson(req, ["entries", "expires"]);
369
+ if (Array.isArray(input.entries) && input.entries.length > 100) {
370
+ throw new OssError("Selection exceeds 100 files.", "oss_link_limit", 400);
371
+ }
372
+ if (linksBusy)
373
+ throw new OssError("Another link request is running.", "oss_operation_busy", 409);
374
+ linksBusy = true;
375
+ try {
376
+ const links = downloadLinksOutput(await createDownloadLinks(transfer, session, input));
377
+ if (!res.destroyed)
378
+ json(res, 200, { ok: true, data: links });
379
+ }
380
+ finally {
381
+ linksBusy = false;
382
+ }
383
+ return;
384
+ }
359
385
  if (req.method === "POST" && url.pathname === "/api/operations") {
360
386
  const input = await strictJson(req, ["kind", "entries", "destination"]);
361
387
  if (["delete", "move", "rename"].includes(String(input.kind)) && req.headers["x-numa-confirm"] !== input.kind) {