webaiapi 0.0.0-stage → 0.1.0
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/LICENSE +21 -0
- package/README.md +184 -2
- package/bin/webapi.mjs +45 -0
- package/dist/browser/auth-capture.d.ts +110 -0
- package/dist/browser/auth-capture.d.ts.map +1 -0
- package/dist/browser/auth-capture.js +487 -0
- package/dist/browser/auth-capture.js.map +1 -0
- package/dist/browser/credentials.d.ts +102 -0
- package/dist/browser/credentials.d.ts.map +1 -0
- package/dist/browser/credentials.js +209 -0
- package/dist/browser/credentials.js.map +1 -0
- package/dist/browser/js-eval.d.ts +44 -0
- package/dist/browser/js-eval.d.ts.map +1 -0
- package/dist/browser/js-eval.js +20 -0
- package/dist/browser/js-eval.js.map +1 -0
- package/dist/browser/login-flow.d.ts +171 -0
- package/dist/browser/login-flow.d.ts.map +1 -0
- package/dist/browser/login-flow.js +606 -0
- package/dist/browser/login-flow.js.map +1 -0
- package/dist/browser/manager.d.ts +144 -0
- package/dist/browser/manager.d.ts.map +1 -0
- package/dist/browser/manager.js +586 -0
- package/dist/browser/manager.js.map +1 -0
- package/dist/browser/platforms.d.ts +96 -0
- package/dist/browser/platforms.d.ts.map +1 -0
- package/dist/browser/platforms.js +288 -0
- package/dist/browser/platforms.js.map +1 -0
- package/dist/browser/sse-capture.d.ts +23 -0
- package/dist/browser/sse-capture.d.ts.map +1 -0
- package/dist/browser/sse-capture.js +199 -0
- package/dist/browser/sse-capture.js.map +1 -0
- package/dist/browser/stealth.d.ts +12 -0
- package/dist/browser/stealth.d.ts.map +1 -0
- package/dist/browser/stealth.js +12 -0
- package/dist/browser/stealth.js.map +1 -0
- package/dist/cli.d.ts +12 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +441 -0
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +90 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +246 -0
- package/dist/config.js.map +1 -0
- package/dist/controllers/history-db.d.ts +56 -0
- package/dist/controllers/history-db.d.ts.map +1 -0
- package/dist/controllers/history-db.js +260 -0
- package/dist/controllers/history-db.js.map +1 -0
- package/dist/controllers/request-pool.d.ts +78 -0
- package/dist/controllers/request-pool.d.ts.map +1 -0
- package/dist/controllers/request-pool.js +222 -0
- package/dist/controllers/request-pool.js.map +1 -0
- package/dist/controllers/router.d.ts +172 -0
- package/dist/controllers/router.d.ts.map +1 -0
- package/dist/controllers/router.js +569 -0
- package/dist/controllers/router.js.map +1 -0
- package/dist/index.d.ts +72 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +61 -0
- package/dist/index.js.map +1 -0
- package/dist/log/api-logger.d.ts +55 -0
- package/dist/log/api-logger.d.ts.map +1 -0
- package/dist/log/api-logger.js +264 -0
- package/dist/log/api-logger.js.map +1 -0
- package/dist/log/debug-logger.d.ts +49 -0
- package/dist/log/debug-logger.d.ts.map +1 -0
- package/dist/log/debug-logger.js +285 -0
- package/dist/log/debug-logger.js.map +1 -0
- package/dist/log/logger.d.ts +16 -0
- package/dist/log/logger.d.ts.map +1 -0
- package/dist/log/logger.js +35 -0
- package/dist/log/logger.js.map +1 -0
- package/dist/postinstall.d.ts +3 -0
- package/dist/postinstall.d.ts.map +1 -0
- package/dist/postinstall.js +90 -0
- package/dist/postinstall.js.map +1 -0
- package/dist/providers/base.d.ts +83 -0
- package/dist/providers/base.d.ts.map +1 -0
- package/dist/providers/base.js +51 -0
- package/dist/providers/base.js.map +1 -0
- package/dist/providers/chatglm-dom-extract.d.ts +24 -0
- package/dist/providers/chatglm-dom-extract.d.ts.map +1 -0
- package/dist/providers/chatglm-dom-extract.js +175 -0
- package/dist/providers/chatglm-dom-extract.js.map +1 -0
- package/dist/providers/chatglm-dom.d.ts +110 -0
- package/dist/providers/chatglm-dom.d.ts.map +1 -0
- package/dist/providers/chatglm-dom.js +384 -0
- package/dist/providers/chatglm-dom.js.map +1 -0
- package/dist/providers/chatglm-sse.d.ts +119 -0
- package/dist/providers/chatglm-sse.d.ts.map +1 -0
- package/dist/providers/chatglm-sse.js +241 -0
- package/dist/providers/chatglm-sse.js.map +1 -0
- package/dist/providers/chatglm.d.ts +288 -0
- package/dist/providers/chatglm.d.ts.map +1 -0
- package/dist/providers/chatglm.js +1631 -0
- package/dist/providers/chatglm.js.map +1 -0
- package/dist/routes/chat.d.ts +117 -0
- package/dist/routes/chat.d.ts.map +1 -0
- package/dist/routes/chat.js +1346 -0
- package/dist/routes/chat.js.map +1 -0
- package/dist/routes/compress.d.ts +142 -0
- package/dist/routes/compress.d.ts.map +1 -0
- package/dist/routes/compress.js +551 -0
- package/dist/routes/compress.js.map +1 -0
- package/dist/routes/failover.d.ts +34 -0
- package/dist/routes/failover.d.ts.map +1 -0
- package/dist/routes/failover.js +221 -0
- package/dist/routes/failover.js.map +1 -0
- package/dist/routes/helpers.d.ts +174 -0
- package/dist/routes/helpers.d.ts.map +1 -0
- package/dist/routes/helpers.js +525 -0
- package/dist/routes/helpers.js.map +1 -0
- package/dist/routes/meta.d.ts +31 -0
- package/dist/routes/meta.d.ts.map +1 -0
- package/dist/routes/meta.js +184 -0
- package/dist/routes/meta.js.map +1 -0
- package/dist/routes/sse.d.ts +82 -0
- package/dist/routes/sse.d.ts.map +1 -0
- package/dist/routes/sse.js +77 -0
- package/dist/routes/sse.js.map +1 -0
- package/dist/server/app.d.ts +24 -0
- package/dist/server/app.d.ts.map +1 -0
- package/dist/server/app.js +292 -0
- package/dist/server/app.js.map +1 -0
- package/dist/server/middleware/api-key.d.ts +61 -0
- package/dist/server/middleware/api-key.d.ts.map +1 -0
- package/dist/server/middleware/api-key.js +95 -0
- package/dist/server/middleware/api-key.js.map +1 -0
- package/dist/server/middleware/rate-limit.d.ts +67 -0
- package/dist/server/middleware/rate-limit.d.ts.map +1 -0
- package/dist/server/middleware/rate-limit.js +134 -0
- package/dist/server/middleware/rate-limit.js.map +1 -0
- package/dist/server/middleware/timeout.d.ts +34 -0
- package/dist/server/middleware/timeout.d.ts.map +1 -0
- package/dist/server/middleware/timeout.js +64 -0
- package/dist/server/middleware/timeout.js.map +1 -0
- package/dist/server/types.d.ts +20 -0
- package/dist/server/types.d.ts.map +1 -0
- package/dist/server/types.js +2 -0
- package/dist/server/types.js.map +1 -0
- package/dist/tools/build.d.ts +14 -0
- package/dist/tools/build.d.ts.map +1 -0
- package/dist/tools/build.js +105 -0
- package/dist/tools/build.js.map +1 -0
- package/dist/tools/clean.d.ts +32 -0
- package/dist/tools/clean.d.ts.map +1 -0
- package/dist/tools/clean.js +65 -0
- package/dist/tools/clean.js.map +1 -0
- package/dist/tools/convert.d.ts +50 -0
- package/dist/tools/convert.d.ts.map +1 -0
- package/dist/tools/convert.js +289 -0
- package/dist/tools/convert.js.map +1 -0
- package/dist/tools/names.d.ts +138 -0
- package/dist/tools/names.d.ts.map +1 -0
- package/dist/tools/names.js +578 -0
- package/dist/tools/names.js.map +1 -0
- package/dist/tools/parse.d.ts +31 -0
- package/dist/tools/parse.d.ts.map +1 -0
- package/dist/tools/parse.js +273 -0
- package/dist/tools/parse.js.map +1 -0
- package/dist/tools/placeholder.d.ts +21 -0
- package/dist/tools/placeholder.d.ts.map +1 -0
- package/dist/tools/placeholder.js +135 -0
- package/dist/tools/placeholder.js.map +1 -0
- package/dist/tools/prompts.d.ts +42 -0
- package/dist/tools/prompts.d.ts.map +1 -0
- package/dist/tools/prompts.js +69 -0
- package/dist/tools/prompts.js.map +1 -0
- package/dist/tools/protocol.d.ts +58 -0
- package/dist/tools/protocol.d.ts.map +1 -0
- package/dist/tools/protocol.js +287 -0
- package/dist/tools/protocol.js.map +1 -0
- package/dist/tools/repair.d.ts +83 -0
- package/dist/tools/repair.d.ts.map +1 -0
- package/dist/tools/repair.js +510 -0
- package/dist/tools/repair.js.map +1 -0
- package/dist/tools/workspace.d.ts +40 -0
- package/dist/tools/workspace.d.ts.map +1 -0
- package/dist/tools/workspace.js +224 -0
- package/dist/tools/workspace.js.map +1 -0
- package/dist/types/message.d.ts +87 -0
- package/dist/types/message.d.ts.map +1 -0
- package/dist/types/message.js +85 -0
- package/dist/types/message.js.map +1 -0
- package/dist/types/openai.d.ts +100 -0
- package/dist/types/openai.d.ts.map +1 -0
- package/dist/types/openai.js +66 -0
- package/dist/types/openai.js.map +1 -0
- package/dist/utils/errors.d.ts +82 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +115 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/mutex.d.ts +31 -0
- package/dist/utils/mutex.d.ts.map +1 -0
- package/dist/utils/mutex.js +61 -0
- package/dist/utils/mutex.js.map +1 -0
- package/dist/utils/prompt.d.ts +150 -0
- package/dist/utils/prompt.d.ts.map +1 -0
- package/dist/utils/prompt.js +514 -0
- package/dist/utils/prompt.js.map +1 -0
- package/dist/utils/text.d.ts +30 -0
- package/dist/utils/text.d.ts.map +1 -0
- package/dist/utils/text.js +70 -0
- package/dist/utils/text.js.map +1 -0
- package/package.json +67 -4
- package/postinstall.mjs +34 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import type { HistoryDB } from '../controllers/history-db.js';
|
|
2
|
+
import type { ModelRouter } from '../controllers/router.js';
|
|
3
|
+
/** 最多缓存的会话数(按 `conversation_id`)。 */
|
|
4
|
+
export declare const SUMMARY_CACHE_MAX = 8;
|
|
5
|
+
/** 单次压缩请求的输入上限(需 < 输入框上限)。 */
|
|
6
|
+
export declare const COMPRESS_CHUNK_MAX = 50000;
|
|
7
|
+
/** 新增历史小于此值时直接追加,无需再压缩。 */
|
|
8
|
+
export declare const COMPRESS_APPEND_THRESHOLD = 6000;
|
|
9
|
+
/**
|
|
10
|
+
* 原样保留的最近上下文长度。
|
|
11
|
+
*
|
|
12
|
+
* ⚠️ 这个值直接决定「要压几块」= 要额外跑几轮对话(每块一轮):
|
|
13
|
+
* - 提示词 8 万字符时,保留 2 万 → 旧历史 5.5~6.7 万 → **2 块 = 2 轮 = 30~117s**;
|
|
14
|
+
* - 保留 4 万 → 旧历史约 4 万 → **1 块 = 1 轮**,省掉约一半压缩耗时,
|
|
15
|
+
* 而且对当前工作更重要的近期原文保留得更多(信息更保真)。
|
|
16
|
+
* 最终提示词 = 4 万原文 + 约 6000 摘要 ≈ 4.7 万,仍远低于 64K 上限。
|
|
17
|
+
*/
|
|
18
|
+
export declare const RECENT_KEEP = 40000;
|
|
19
|
+
/** 最近原文的**上限**:再多就装不下摘要了(64K 上限 − 摘要与包装文本约 10K)。 */
|
|
20
|
+
export declare const RECENT_KEEP_MAX = 54000;
|
|
21
|
+
/**
|
|
22
|
+
* 单块最多压 3 次(1 次不理想就再来)。
|
|
23
|
+
*
|
|
24
|
+
* 实测压缩比本身很好(8.5~10.4x),所以**不需要无脑压 2/3 次** ——
|
|
25
|
+
* 每多压一次就多花 30~60s 预算。改为「结果不理想才重试」。
|
|
26
|
+
*/
|
|
27
|
+
export declare const COMPRESS_MAX_ATTEMPTS = 3;
|
|
28
|
+
/** 每次重试前至少要有的剩余预算(秒)。 */
|
|
29
|
+
export declare const COMPRESS_RETRY_MIN_BUDGET = 45;
|
|
30
|
+
/** 摘要短于此值视为「没压出东西」。 */
|
|
31
|
+
export declare const COMPRESS_MIN_SUMMARY_CHARS = 200;
|
|
32
|
+
/** 明显拒答 / 无法处理的措辞。 */
|
|
33
|
+
export declare const COMPRESS_BAD_MARKERS: ReadonlyArray<string>;
|
|
34
|
+
/**
|
|
35
|
+
* 命中这些说明**平台侧有硬限制**(限频/繁忙),重试只会更糟 → 立刻放弃、不重试。
|
|
36
|
+
*/
|
|
37
|
+
export declare const COMPRESS_ABORT_MARKERS: ReadonlyArray<string>;
|
|
38
|
+
/**
|
|
39
|
+
* 某块重试后仍然失败时用它兜底。
|
|
40
|
+
*
|
|
41
|
+
* ⚠️ 绝不能静默丢弃这段历史(旧实现 `if s:` 直接跳过,那段历史永久丢失,
|
|
42
|
+
* 模型下一轮再也看不到它 → 表现为「忘了已经读过/改过什么」)。
|
|
43
|
+
*/
|
|
44
|
+
export declare const COMPRESS_FAIL_FALLBACK_CHARS = 4000;
|
|
45
|
+
/**
|
|
46
|
+
* `conversation_id -> { prefix, summary, coveredLen }`
|
|
47
|
+
*
|
|
48
|
+
* 第 3 项是「后台预压缩」引入的:它记录的摘要可能覆盖了**超前于前缀**的一段历史
|
|
49
|
+
* (见 `precompressHistory`),下一轮靠它判断能否直接复用、零成本。
|
|
50
|
+
*/
|
|
51
|
+
export interface SummaryCacheEntry {
|
|
52
|
+
/** 摘要所对应的「提示词前缀文本」。 */
|
|
53
|
+
prefix: string;
|
|
54
|
+
/** 摘要内容。 */
|
|
55
|
+
summary: string;
|
|
56
|
+
/** 摘要覆盖到的历史长度。 */
|
|
57
|
+
coveredLen: number;
|
|
58
|
+
}
|
|
59
|
+
export declare const HISTORY_SUMMARY_CACHE: Map<string, SummaryCacheEntry>;
|
|
60
|
+
/** 压缩提示词(`{content}` 占位符)。 */
|
|
61
|
+
export declare const COMPRESS_PROMPT = "\u8BF7\u628A\u4E0B\u9762\u8FD9\u6BB5\u5BF9\u8BDD\u5386\u53F2\u538B\u7F29\u6210\u8981\u70B9\u6458\u8981\uFF0C\u4F9B\u540E\u7EED\u7EE7\u7EED\u5F00\u53D1\u65F6\u4F5C\u4E3A\u4E0A\u4E0B\u6587\u3002\n\n\u5FC5\u987B\u4FDD\u7559\uFF08\u4E0D\u5F97\u4E22\u5931\uFF09\uFF1A\n1. \u6D89\u53CA\u5230\u7684**\u6587\u4EF6\u7EDD\u5BF9\u8DEF\u5F84**\n2. \u5DF2\u7ECF\u5B8C\u6210\u7684\u4FEE\u6539\u3001\u4EE5\u53CA\u5DE5\u5177\u6267\u884C\u7ED3\u679C\u91CC\u7684\u5173\u952E\u7ED3\u8BBA\n3. \u5C1A\u672A\u5B8C\u6210\u7684\u5F85\u529E\u4E8B\u9879\uFF0C\u4EE5\u53CA\u7528\u6237\u660E\u786E\u63D0\u51FA\u8FC7\u7684\u8981\u6C42\n\n\u8F93\u51FA\u8981\u6C42\uFF1A\u4E0D\u8981\u89E3\u91CA\u3001\u4E0D\u8981\u5BA2\u5957\uFF0C\u76F4\u63A5\u8F93\u51FA\u6458\u8981\uFF1B\u7528\u7B80\u6D01\u7684\u8981\u70B9\u5217\u8868\uFF1B\u63A7\u5236\u5728 1500 \u5B57\u4EE5\u5185\u3002\n\n# \u5BF9\u8BDD\u5386\u53F2\n{content}\n";
|
|
62
|
+
/**
|
|
63
|
+
* 把切分点对齐到消息边界(`\n\n[Role]`),避免把一条消息切成两半。
|
|
64
|
+
*
|
|
65
|
+
* ⚠️ 两个坑(实测踩出来的):
|
|
66
|
+
* - **只取「前一个」边界**:若那条消息很长,边界离目标位置很远,实际保留的
|
|
67
|
+
* 最近原文会远超预期(想留 4 万,结果留了 5.87 万,最终提示词 59,692 字符,
|
|
68
|
+
* 离 64K 上限只剩 4 千余,随时会被强制中间截断)。
|
|
69
|
+
* - **只取「最近」边界**(前后都比):可能选到**更晚**的边界,要压缩的旧历史
|
|
70
|
+
* 反而变大(实测想压成 1 块,变成 2 块,58s vs 21s)。
|
|
71
|
+
*
|
|
72
|
+
* 做法:优先对齐到目标位置之前的消息边界;边界离目标超过 `maxSkip`
|
|
73
|
+
* 就退化为按**行**切(宁可切在消息内部,也不能让压缩块数/提示词体积失控)。
|
|
74
|
+
*/
|
|
75
|
+
export declare function snapToMessageBoundary(text: string, pos: number, maxSkip?: number): number;
|
|
76
|
+
/**
|
|
77
|
+
* 把提示词切成 `[旧历史, 最近原文, 切点]`。
|
|
78
|
+
*
|
|
79
|
+
* 切分点:在「多保留近期原文(省时间、更保真)」与「让压缩尽量只压 1 块」之间取平衡。
|
|
80
|
+
* - `keepMin`:想压成 1 块,最近原文至少要留 `len - 单块上限`;
|
|
81
|
+
* - `RECENT_KEEP_MAX`:留太多会挤爆 64K 上限(还要装摘要),设个天花板。
|
|
82
|
+
*
|
|
83
|
+
* 抽成公共函数,是为了让「请求内的压缩」与「后台预压缩」用**完全一致**的切分口径 ——
|
|
84
|
+
* 口径不一致时后台预压缩存下的缓存会前缀对不上,白跑一轮。
|
|
85
|
+
*/
|
|
86
|
+
export declare function splitForCompression(messageText: string): {
|
|
87
|
+
oldHistory: string;
|
|
88
|
+
recent: string;
|
|
89
|
+
cut: number;
|
|
90
|
+
};
|
|
91
|
+
/** 是否是「平台侧硬限制」类回复(限频/繁忙)—— 重试只会更糟,立刻放弃。 */
|
|
92
|
+
export declare function summaryIsAbortable(summary: string): boolean;
|
|
93
|
+
/**
|
|
94
|
+
* 压缩结果是否「不理想」(值得再压一次)。
|
|
95
|
+
*
|
|
96
|
+
* 判据(保守,避免白白多花一轮时间):
|
|
97
|
+
* 1. 空 / 极短 —— 模型没答或只回了一句话,等于这段历史丢了;
|
|
98
|
+
* 2. 明显拒答/无法处理("无法压缩""很抱歉…");
|
|
99
|
+
* 3. 大段输入却基本没压(输出 ≥ 输入)—— 说明它把原文抄回来了。
|
|
100
|
+
*/
|
|
101
|
+
export declare function summaryIsBad(summary: string, source: string): boolean;
|
|
102
|
+
/** 压缩结果。`allOk=false` 说明有分块走到了「截断兜底」,**不能写进摘要缓存**。 */
|
|
103
|
+
export interface CompressResult {
|
|
104
|
+
summary: string;
|
|
105
|
+
allOk: boolean;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* 调用网页端把 `text` 压缩成摘要;`text` 过长时先分块压缩再合并。
|
|
109
|
+
*
|
|
110
|
+
* @returns `allOk=false` 表示有分块走了截断兜底 —— 这份内容只能当上下文用。
|
|
111
|
+
*/
|
|
112
|
+
export declare function compressTextWithPage(text: string, modelRouter: ModelRouter, model: string, historyDb: HistoryDB, requestId: string, deadlineTs?: number): Promise<CompressResult>;
|
|
113
|
+
/**
|
|
114
|
+
* 提示词超长时,用「压缩历史」替代「中间截断」。失败时回退到中间截断,
|
|
115
|
+
* 保证请求始终发得出去。
|
|
116
|
+
*/
|
|
117
|
+
export declare function shrinkPromptViaCompression(messageText: string, modelRouter: ModelRouter, model: string, historyDb: HistoryDB, requestId: string, conversationId: string, deadlineTs?: number): Promise<string>;
|
|
118
|
+
/** 记录「刚收到用户请求」(供预压缩判断安静期)。 */
|
|
119
|
+
export declare function markRequestTs(now?: number): void;
|
|
120
|
+
/**
|
|
121
|
+
* 后台把本轮历史折叠进摘要缓存(下一轮即可 0 成本命中)。
|
|
122
|
+
*
|
|
123
|
+
* @param rawText **压缩前**的完整提示词:切分口径与下一轮完全一致,
|
|
124
|
+
* 这样下一轮算出的 `oldHistory` 才会以本次缓存的前缀开头(走纯追加分支)。
|
|
125
|
+
*/
|
|
126
|
+
export declare function precompressHistory(rawText: string, conversationId: string, modelRouter: ModelRouter, model: string, historyDb: HistoryDB, requestId: string): Promise<void>;
|
|
127
|
+
/**
|
|
128
|
+
* 在响应结束后排一个后台预压缩任务(不阻塞客户端)。
|
|
129
|
+
*
|
|
130
|
+
* 只在「本轮**压缩前**的提示词已经超限」时启动:这说明下一轮十有八九也要压缩,
|
|
131
|
+
* 预压缩才有意义;提示词还短时压了也白压(切分口径不同,缓存对不上)。
|
|
132
|
+
*
|
|
133
|
+
* ⚠️ 与原实现的差异:Python 用 `asyncio.create_task` 并维护 `_BG_TASKS` 集合。
|
|
134
|
+
* TS 里 `void promise` 就是「发射后不管」,用 `BG_TASKS` 集合只为控制并发数
|
|
135
|
+
* 与在关服时等待它们结束(见 {@link waitForBackgroundTasks})。
|
|
136
|
+
*/
|
|
137
|
+
export declare function schedulePrecompress(rawText: string, conversationId: string | null | undefined, modelRouter: ModelRouter, model: string, historyDb: HistoryDB, requestId: string): void;
|
|
138
|
+
/** 等待所有后台任务结束(优雅关服用)。 */
|
|
139
|
+
export declare function waitForBackgroundTasks(): Promise<void>;
|
|
140
|
+
/** 清空预压缩相关状态(测试用)。 */
|
|
141
|
+
export declare function __resetPrecompressState(): void;
|
|
142
|
+
//# sourceMappingURL=compress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compress.d.ts","sourceRoot":"","sources":["../../src/routes/compress.ts"],"names":[],"mappings":"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"}
|