@openclaw/imessage 2026.10.10-beta.5 → 2026.11.5-beta.1
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/dist/.setup/{accounts-DacCvDBt.mjs → accounts-C1Ypv3Wn.mjs} +9 -13
- package/dist/.setup/{actions-762Azi-J.mjs → actions-qOuKy8To.mjs} +364 -116
- package/dist/.setup/{actions.runtime-DHiRiPHe.mjs → actions.runtime-Ccg9CARL.mjs} +12 -61
- package/dist/.setup/{api-Deyo8NDs.mjs → api-BXXuQQCS.mjs} +8 -9
- package/dist/.setup/{api-BFGXDHiC.mjs → api-DTbxSOPc.mjs} +9 -9
- package/dist/.setup/{approval-handler.runtime-fsSBf2jf.mjs → approval-handler.runtime-B6vrFfZx.mjs} +113 -133
- package/dist/.setup/{approval-reactions-CoAkCiwf.mjs → approval-reactions-DBBsqbRC.mjs} +156 -79
- package/dist/.setup/{channel-C61YdcZR.mjs → channel-CLaN4mQn.mjs} +151 -137
- package/dist/.setup/{channel.runtime-B5jle0g3.mjs → channel.runtime-XJGx1MIH.mjs} +236 -425
- package/dist/.setup/chat-context-fTfJVqAi.mjs +77 -0
- package/dist/.setup/chat-lookup-xtPsOBkl.mjs +50 -0
- package/dist/.setup/client-D_BaG8sC.mjs +367 -0
- package/dist/.setup/{config-schema-DXwa_3V5.mjs → config-schema-BjkQV5P5.mjs} +1 -4
- package/dist/.setup/{conversation-bindings-DR-dbHjs.mjs → conversation-bindings-8DjxoIYU.mjs} +10 -8
- package/dist/.setup/{media-contract-BwWs5PM7.mjs → media-contract-BErFBKV9.mjs} +2 -3
- package/dist/.setup/{message-tool-api-B5NfPnFL.mjs → message-tool-api-DtZ1wKbT.mjs} +6 -12
- package/dist/.setup/{outbound-send-deps-B-QEsLSM.mjs → outbound-send-deps-_da8jqeo.mjs} +1 -2
- package/dist/.setup/{remote-file-B94a787O.mjs → remote-file-DpK3GQFD.mjs} +12 -30
- package/dist/.setup/{rolldown-runtime-BBjsoOtd.mjs → rolldown-runtime-782esTHO.mjs} +1 -2
- package/dist/.setup/{sanitize-outbound-BtEY324R.mjs → sanitize-outbound-Dhjhz0a-.mjs} +25 -31
- package/dist/.setup/{send-BvxKNWzF.mjs → send-DhEW0gfe.mjs} +155 -236
- package/dist/.setup/{setup-core-BHyLkAEJ.mjs → setup-core-B1_P_t4T.mjs} +3 -4
- package/dist/.setup/{setup-surface-DPqiLGy0.mjs → setup-surface-CD28mXWK.mjs} +13 -29
- package/dist/.setup/{targets-B4oU7n-v.mjs → targets-C7CIWJ0k.mjs} +15 -9
- package/dist/.source-module-urls/929c518fa2986b0f85f66bceefead22868db0ab452dee914dc6a2bb86b2e60ad.json +1 -1
- package/dist/api.js +9 -9
- package/dist/channel-config-api.js +1 -1
- package/dist/channel-plugin-api.js +1 -1
- package/dist/contract-api.js +1 -1
- package/dist/doctor-contract-api.js +7 -13
- package/dist/index.js +1 -2
- package/dist/media-contract-api.js +1 -1
- package/dist/message-tool-api.js +1 -1
- package/dist/runtime-api.js +1 -3
- package/dist/secret-contract-api.js +1 -2
- package/dist/session-binding-contract-api.js +1 -1
- package/dist/setup-entry.js +2 -3
- package/dist/src/chat-db.worker.js +2 -3
- package/node_modules/typebox/build/format/duration.d.mts +2 -2
- package/node_modules/typebox/build/format/duration.mjs +2 -2
- package/node_modules/typebox/build/format/idn_email.d.mts +1 -0
- package/node_modules/typebox/build/format/idn_email.mjs +1 -0
- package/node_modules/typebox/build/format/idn_hostname.d.mts +1 -1
- package/node_modules/typebox/build/format/idn_hostname.mjs +1 -1
- package/node_modules/typebox/build/format/ipv4.d.mts +2 -2
- package/node_modules/typebox/build/format/ipv4.mjs +2 -2
- package/node_modules/typebox/build/format/ipv6.d.mts +1 -1
- package/node_modules/typebox/build/format/ipv6.mjs +1 -1
- package/node_modules/typebox/build/format/relative_json_pointer.d.mts +2 -2
- package/node_modules/typebox/build/format/relative_json_pointer.mjs +2 -2
- package/node_modules/typebox/build/schema/build.mjs +1 -0
- package/node_modules/typebox/build/schema/engine/_unique.d.mts +4 -2
- package/node_modules/typebox/build/schema/engine/_unique.mjs +7 -3
- package/node_modules/typebox/build/schema/engine/additionalItems.mjs +3 -3
- package/node_modules/typebox/build/schema/engine/additionalProperties.d.mts +0 -3
- package/node_modules/typebox/build/schema/engine/additionalProperties.mjs +15 -17
- package/node_modules/typebox/build/schema/engine/contains.mjs +3 -3
- package/node_modules/typebox/build/schema/engine/index.d.mts +1 -0
- package/node_modules/typebox/build/schema/engine/index.mjs +1 -0
- package/node_modules/typebox/build/schema/engine/items.mjs +7 -4
- package/node_modules/typebox/build/schema/engine/maxContains.mjs +2 -2
- package/node_modules/typebox/build/schema/engine/minContains.mjs +3 -3
- package/node_modules/typebox/build/schema/engine/oneOf.mjs +2 -2
- package/node_modules/typebox/build/schema/engine/patternProperties.mjs +2 -2
- package/node_modules/typebox/build/schema/engine/propertyNames.mjs +2 -2
- package/node_modules/typebox/build/schema/engine/unevaluatedItems.mjs +2 -2
- package/node_modules/typebox/build/schema/engine/unevaluatedProperties.mjs +2 -2
- package/node_modules/typebox/build/system/hashing/hash.mjs +63 -34
- package/node_modules/typebox/build/system/locale/en_US.mjs +2 -1
- package/node_modules/typebox/build/system/memory/assign.d.mts +2 -8
- package/node_modules/typebox/build/system/memory/assign.mjs +13 -6
- package/node_modules/typebox/build/system/memory/clone.d.mts +4 -5
- package/node_modules/typebox/build/system/memory/clone.mjs +8 -96
- package/node_modules/typebox/build/system/memory/create.d.mts +1 -5
- package/node_modules/typebox/build/system/memory/create.mjs +18 -13
- package/node_modules/typebox/build/system/memory/deep.d.mts +2 -0
- package/node_modules/typebox/build/system/memory/deep.mjs +108 -0
- package/node_modules/typebox/build/system/memory/discard.d.mts +1 -1
- package/node_modules/typebox/build/system/memory/discard.mjs +9 -8
- package/node_modules/typebox/build/system/memory/finalize.d.mts +4 -0
- package/node_modules/typebox/build/system/memory/finalize.mjs +30 -0
- package/node_modules/typebox/build/system/memory/keys.d.mts +2 -0
- package/node_modules/typebox/build/system/memory/keys.mjs +8 -0
- package/node_modules/typebox/build/system/memory/update.d.mts +1 -4
- package/node_modules/typebox/build/system/memory/update.mjs +43 -16
- package/node_modules/typebox/build/type/engine/call/index.d.mts +1 -0
- package/node_modules/typebox/build/type/engine/call/index.mjs +1 -0
- package/node_modules/typebox/build/type/engine/evaluate/composite.d.mts +2 -24
- package/node_modules/typebox/build/type/engine/evaluate/composite.mjs +2 -29
- package/node_modules/typebox/build/type/engine/evaluate/index.d.mts +1 -0
- package/node_modules/typebox/build/type/engine/evaluate/index.mjs +1 -0
- package/node_modules/typebox/build/type/engine/evaluate/narrow.d.mts +5 -1
- package/node_modules/typebox/build/type/engine/evaluate/narrow.mjs +6 -1
- package/node_modules/typebox/build/type/engine/evaluate/property.d.mts +30 -0
- package/node_modules/typebox/build/type/engine/evaluate/property.mjs +29 -0
- package/node_modules/typebox/build/type/engine/immutable/instantiate_add.d.mts +1 -3
- package/node_modules/typebox/build/type/engine/immutable/instantiate_add.mjs +1 -4
- package/node_modules/typebox/build/type/engine/object/from_intersect.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/object/from_intersect.mjs +2 -2
- package/node_modules/typebox/build/type/engine/object/from_union.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/object/from_union.mjs +2 -2
- package/node_modules/typebox/build/type/engine/optional/instantiate_add.d.mts +1 -3
- package/node_modules/typebox/build/type/engine/optional/instantiate_add.mjs +1 -4
- package/node_modules/typebox/build/type/engine/readonly/instantiate_add.d.mts +1 -3
- package/node_modules/typebox/build/type/engine/readonly/instantiate_add.mjs +1 -4
- package/node_modules/typebox/build/type/engine/this/index.d.mts +1 -0
- package/node_modules/typebox/build/type/engine/this/index.mjs +1 -0
- package/node_modules/typebox/build/value/clone/clone.d.mts +4 -3
- package/node_modules/typebox/build/value/clone/clone.mjs +5 -7
- package/node_modules/typebox/build/value/repair/from_cyclic.d.mts +2 -0
- package/node_modules/typebox/build/value/repair/from_cyclic.mjs +6 -0
- package/node_modules/typebox/build/value/shared/union_priority_sort.mjs +25 -14
- package/node_modules/typebox/package.json +1 -1
- package/node_modules/typebox/readme.md +1 -1
- package/node_modules/zod/package.json +1 -1
- package/node_modules/zod/src/v4/classic/tests/array.test.ts +27 -0
- package/node_modules/zod/src/v4/classic/tests/map.test.ts +7 -0
- package/node_modules/zod/src/v4/classic/tests/set.test.ts +6 -0
- package/node_modules/zod/src/v4/core/compile.ts +9 -0
- package/node_modules/zod/src/v4/core/schemas.ts +35 -1
- package/node_modules/zod/src/v4/core/util.ts +13 -0
- package/node_modules/zod/src/v4/core/versions.ts +1 -1
- package/node_modules/zod/v4/core/compile.cjs +8 -0
- package/node_modules/zod/v4/core/compile.js +8 -0
- package/node_modules/zod/v4/core/schemas.cjs +30 -0
- package/node_modules/zod/v4/core/schemas.d.cts +3 -1
- package/node_modules/zod/v4/core/schemas.d.ts +3 -1
- package/node_modules/zod/v4/core/schemas.js +30 -0
- package/node_modules/zod/v4/core/util.cjs +15 -0
- package/node_modules/zod/v4/core/util.d.cts +2 -0
- package/node_modules/zod/v4/core/util.d.ts +2 -0
- package/node_modules/zod/v4/core/util.js +14 -0
- package/node_modules/zod/v4/core/versions.cjs +1 -1
- package/node_modules/zod/v4/core/versions.js +1 -1
- package/openclaw.plugin.json +0 -30
- package/package.json +6 -6
- package/dist/.setup/client-CcROCvRq.mjs +0 -746
- package/dist/.setup/question-reactions-BD06B1Lx.mjs +0 -68
- package/dist/.setup/reaction-context-Q26DYzQH.mjs +0 -106
- package/dist/.setup/runtime-Cza4CY5T.mjs +0 -8
- package/node_modules/typebox/build/system/memory/freeze.d.mts +0 -4
- package/node_modules/typebox/build/system/memory/freeze.mjs +0 -6
|
@@ -1,25 +1,18 @@
|
|
|
1
|
-
import { p as resolveLocalIMessageChatDbPath } from "./accounts-
|
|
2
|
-
import {
|
|
1
|
+
import { p as resolveLocalIMessageChatDbPath } from "./accounts-C1Ypv3Wn.mjs";
|
|
2
|
+
import { n as isIMessageEmailChatIdentifier, t as chatContextFromIMessageTarget } from "./chat-context-fTfJVqAi.mjs";
|
|
3
|
+
import { o as resolveIMessageCachedResourceBinding, s as resolveIMessageMessageId } from "./actions-qOuKy8To.mjs";
|
|
3
4
|
import path from "node:path";
|
|
4
5
|
import { normalizeScpRemoteHost } from "openclaw/plugin-sdk/host-runtime";
|
|
5
6
|
import { createActionGate } from "openclaw/plugin-sdk/channel-actions";
|
|
6
7
|
import { createSubsystemLogger, logVerbose } from "openclaw/plugin-sdk/runtime-env";
|
|
7
8
|
import { randomUUID } from "node:crypto";
|
|
8
|
-
import { resolveRuntimeWorkerUrl, runCommandWithTimeout } from "openclaw/plugin-sdk/process-runtime";
|
|
9
|
+
import { createPluginRuntimeProcessEntrypoint, resolveRuntimeWorkerUrl, runCommandWithTimeout } from "openclaw/plugin-sdk/process-runtime";
|
|
9
10
|
import { sanitizeTempFileName } from "openclaw/plugin-sdk/temp-path";
|
|
10
11
|
import { openSqliteWorkerStore } from "openclaw/plugin-sdk/sqlite-runtime";
|
|
11
|
-
|
|
12
|
+
// extensions/imessage/src/chat-db.ts
|
|
12
13
|
function openIMessageChatDbReader(databasePath) {
|
|
13
14
|
return openSqliteWorkerStore({
|
|
14
|
-
moduleUrl: resolveRuntimeWorkerUrl(
|
|
15
|
-
currentModuleUrl: import.meta.url,
|
|
16
|
-
sourceWorkerName: "chat-db.worker",
|
|
17
|
-
distWorkerPath: "extensions/imessage/src/chat-db.worker.js",
|
|
18
|
-
package: {
|
|
19
|
-
name: "@openclaw/imessage",
|
|
20
|
-
distWorkerPath: "src/chat-db.worker.js"
|
|
21
|
-
}
|
|
22
|
-
}),
|
|
15
|
+
moduleUrl: resolveRuntimeWorkerUrl(createPluginRuntimeProcessEntrypoint("iMessageChatDb", import.meta.url)),
|
|
23
16
|
databasePath,
|
|
24
17
|
existingOnly: true,
|
|
25
18
|
input: void 0
|
|
@@ -62,8 +55,7 @@ async function withIMessageReceiptGuidReader(databasePath, use) {
|
|
|
62
55
|
} catch {}
|
|
63
56
|
}
|
|
64
57
|
}
|
|
65
|
-
|
|
66
|
-
//#region extensions/imessage/src/message-resource-db.ts
|
|
58
|
+
// extensions/imessage/src/message-resource-db.ts
|
|
67
59
|
function normalizeIMessageMessageGuidForLookup(messageId) {
|
|
68
60
|
const trimmed = messageId.trim();
|
|
69
61
|
const slash = trimmed.lastIndexOf("/");
|
|
@@ -135,8 +127,7 @@ async function checkIMessageResourceBinding(params) {
|
|
|
135
127
|
} catch {}
|
|
136
128
|
}
|
|
137
129
|
}
|
|
138
|
-
|
|
139
|
-
//#region extensions/imessage/src/message-resource.ts
|
|
130
|
+
// extensions/imessage/src/message-resource.ts
|
|
140
131
|
const MAX_REPLY_TO_ID_LENGTH = 256;
|
|
141
132
|
function sanitizeReplyToId(rawReplyToId) {
|
|
142
133
|
const trimmed = rawReplyToId?.trim();
|
|
@@ -154,10 +145,7 @@ async function resolveAuthorizedIMessageReplyReference(params) {
|
|
|
154
145
|
const rawReplyToId = sanitizeReplyToId(params.replyToId);
|
|
155
146
|
if (!rawReplyToId) return;
|
|
156
147
|
const chatContext = chatContextFromIMessageTarget(params.target, params.service);
|
|
157
|
-
const messageId = await resolveIMessageMessageId(rawReplyToId, {
|
|
158
|
-
requireKnownShortId: true,
|
|
159
|
-
chatContext
|
|
160
|
-
});
|
|
148
|
+
const messageId = await resolveIMessageMessageId(rawReplyToId, { chatContext });
|
|
161
149
|
await authorizeIMessageResourceReference({
|
|
162
150
|
accountId: params.account.accountId,
|
|
163
151
|
chatContext,
|
|
@@ -186,8 +174,7 @@ async function authorizeIMessageResourceReference(params) {
|
|
|
186
174
|
if (params.conversationReadOrigin === "direct-operator") return;
|
|
187
175
|
throw new Error("Delegated iMessage message references require a current same-account conversation binding when the Messages database is unavailable.");
|
|
188
176
|
}
|
|
189
|
-
|
|
190
|
-
//#region extensions/imessage/src/remote-file.ts
|
|
177
|
+
// extensions/imessage/src/remote-file.ts
|
|
191
178
|
const SSH_OPTIONS = [
|
|
192
179
|
"-o",
|
|
193
180
|
"BatchMode=yes",
|
|
@@ -248,8 +235,7 @@ rm -rf -- ${remoteDir}
|
|
|
248
235
|
"sh -s"
|
|
249
236
|
], {
|
|
250
237
|
input: createScript,
|
|
251
|
-
timeoutMs: params.timeoutMs
|
|
252
|
-
signal: params.signal
|
|
238
|
+
timeoutMs: params.timeoutMs
|
|
253
239
|
});
|
|
254
240
|
params.assertDirectAdapterHandoff?.();
|
|
255
241
|
await runChecked("iMessage remote file upload", [
|
|
@@ -258,10 +244,7 @@ rm -rf -- ${remoteDir}
|
|
|
258
244
|
"--",
|
|
259
245
|
params.localPath,
|
|
260
246
|
`${remoteHost}:${remotePath}`
|
|
261
|
-
], {
|
|
262
|
-
timeoutMs: params.timeoutMs,
|
|
263
|
-
signal: params.signal
|
|
264
|
-
});
|
|
247
|
+
], { timeoutMs: params.timeoutMs });
|
|
265
248
|
params.assertDirectAdapterHandoff?.();
|
|
266
249
|
return await params.use(remotePath);
|
|
267
250
|
} finally {
|
|
@@ -283,5 +266,4 @@ rm -rf -- ${remoteDir}
|
|
|
283
266
|
}
|
|
284
267
|
}
|
|
285
268
|
}
|
|
286
|
-
//#endregion
|
|
287
269
|
export { withIMessageReceiptGuidReader as a, resolveIMessageStartupRowidWatermark as i, authorizeIMessageResourceReference as n, resolveAuthorizedIMessageReplyReference as r, withIMessageRemoteFile as t };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// \0rolldown/runtime.js
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
@@ -23,5 +23,4 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
23
23
|
return to;
|
|
24
24
|
};
|
|
25
25
|
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
26
|
-
//#endregion
|
|
27
26
|
export { __reExport as n, __exportAll as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FormatCapabilityProfile, applyMarkdownTextEdits, findCodeRegions, isInsideCode, markdownToIR, renderMarkdownWithAttributedRanges, sanitizeAssistantVisibleText, stripMarkdown, tokenizeHtmlTags } from "openclaw/plugin-sdk/text-chunking";
|
|
2
|
-
|
|
2
|
+
// extensions/imessage/src/markdown-format.ts
|
|
3
3
|
const IMESSAGE_FORMAT_PROFILE = FormatCapabilityProfile.define({
|
|
4
4
|
mechanism: "ranges",
|
|
5
5
|
constructs: {
|
|
@@ -35,11 +35,23 @@ const IMESSAGE_STYLE_MAP = {
|
|
|
35
35
|
underline: "underline",
|
|
36
36
|
strikethrough: "strikethrough"
|
|
37
37
|
};
|
|
38
|
-
function
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
38
|
+
function extractMarkdownFormatRuns(input) {
|
|
39
|
+
const ir = markdownToIR(input, {
|
|
40
|
+
autolink: false,
|
|
41
|
+
enableHtmlUnderline: true,
|
|
42
|
+
headingStyle: "rich",
|
|
43
|
+
linkify: false,
|
|
44
|
+
preserveDunderIdentifiers: true,
|
|
45
|
+
preserveSourceBlockSpacing: true
|
|
46
|
+
});
|
|
47
|
+
const rendered = renderMarkdownWithAttributedRanges(ir, { styleMap: IMESSAGE_STYLE_MAP }, IMESSAGE_FORMAT_PROFILE);
|
|
48
|
+
const codeRanges = ir.styles.some((span) => span.style === "code") ? renderMarkdownWithAttributedRanges(ir, { styleMap: { code: "code" } }, IMESSAGE_CODE_PROFILE).ranges : [];
|
|
49
|
+
const text = rendered.text;
|
|
50
|
+
const ranges = rendered.ranges.map(({ start, length, style }) => ({
|
|
51
|
+
start,
|
|
52
|
+
length,
|
|
53
|
+
styles: [style]
|
|
54
|
+
}));
|
|
43
55
|
if (codeRanges.length === 0) return {
|
|
44
56
|
text,
|
|
45
57
|
ranges
|
|
@@ -47,7 +59,8 @@ function restoreCodeMarkers(text, ranges, codeRanges) {
|
|
|
47
59
|
const edits = codeRanges.map((range) => {
|
|
48
60
|
const end = range.start + range.length;
|
|
49
61
|
const content = text.slice(range.start, end);
|
|
50
|
-
const
|
|
62
|
+
const longestRun = Math.max(0, ...[...content.matchAll(/`+/gu)].map((match) => match[0].length));
|
|
63
|
+
const marker = "`".repeat(longestRun + 1);
|
|
51
64
|
const padding = content.startsWith("`") || content.endsWith("`") ? " " : "";
|
|
52
65
|
return {
|
|
53
66
|
start: range.start,
|
|
@@ -55,38 +68,20 @@ function restoreCodeMarkers(text, ranges, codeRanges) {
|
|
|
55
68
|
text: `${marker}${padding}${content}${padding}${marker}`
|
|
56
69
|
};
|
|
57
70
|
});
|
|
58
|
-
const { text:
|
|
71
|
+
const { text: restoredText, mapOffset } = applyMarkdownTextEdits(text, edits);
|
|
59
72
|
return {
|
|
60
|
-
text:
|
|
73
|
+
text: restoredText,
|
|
61
74
|
ranges: ranges.map((range) => {
|
|
62
75
|
const start = mapOffset(range.start);
|
|
63
76
|
return {
|
|
64
|
-
...range,
|
|
65
77
|
start,
|
|
66
|
-
length: mapOffset(range.start + range.length) - start
|
|
78
|
+
length: mapOffset(range.start + range.length) - start,
|
|
79
|
+
styles: range.styles
|
|
67
80
|
};
|
|
68
81
|
})
|
|
69
82
|
};
|
|
70
83
|
}
|
|
71
|
-
|
|
72
|
-
const ir = markdownToIR(input, {
|
|
73
|
-
autolink: false,
|
|
74
|
-
enableHtmlUnderline: true,
|
|
75
|
-
headingStyle: "rich",
|
|
76
|
-
linkify: false,
|
|
77
|
-
preserveDunderIdentifiers: true,
|
|
78
|
-
preserveSourceBlockSpacing: true
|
|
79
|
-
});
|
|
80
|
-
const rendered = renderMarkdownWithAttributedRanges(ir, { styleMap: IMESSAGE_STYLE_MAP }, IMESSAGE_FORMAT_PROFILE);
|
|
81
|
-
const codeRanges = ir.styles.some((span) => span.style === "code") ? renderMarkdownWithAttributedRanges(ir, { styleMap: { code: "code" } }, IMESSAGE_CODE_PROFILE).ranges : [];
|
|
82
|
-
return restoreCodeMarkers(rendered.text, rendered.ranges.map(({ start, length, style }) => ({
|
|
83
|
-
start,
|
|
84
|
-
length,
|
|
85
|
-
styles: [style]
|
|
86
|
-
})), codeRanges);
|
|
87
|
-
}
|
|
88
|
-
//#endregion
|
|
89
|
-
//#region extensions/imessage/src/monitor/sanitize-outbound.ts
|
|
84
|
+
// extensions/imessage/src/monitor/sanitize-outbound.ts
|
|
90
85
|
/**
|
|
91
86
|
* Patterns that indicate assistant-internal metadata leaked into text.
|
|
92
87
|
* These must never reach a user-facing channel.
|
|
@@ -525,5 +520,4 @@ function sanitizeOutboundText(text) {
|
|
|
525
520
|
cleaned = cleaned.replace(/\n{3,}/g, "\n\n").trim();
|
|
526
521
|
return cleaned;
|
|
527
522
|
}
|
|
528
|
-
//#endregion
|
|
529
523
|
export { extractMarkdownFormatRuns as i, sanitizeIMessageFinalOutboundText as n, sanitizeOutboundText as r, protectIMessageFencedRoleMarkers as t };
|