@clowder-ai/connector-wecom-agent 0.0.0-stage → 0.1.0-alpha.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/README.en.md +56 -0
- package/README.md +24 -2
- package/assets/icon.svg +6 -0
- package/dist/WeComAgentAdapter.d.ts +149 -0
- package/dist/WeComAgentAdapter.d.ts.map +1 -0
- package/dist/WeComAgentAdapter.js +525 -0
- package/dist/WeComAgentAdapter.js.map +1 -0
- package/dist/collect-media.d.ts +12 -0
- package/dist/collect-media.d.ts.map +1 -0
- package/dist/collect-media.js +27 -0
- package/dist/collect-media.js.map +1 -0
- package/dist/command-ingress.d.ts +10 -0
- package/dist/command-ingress.d.ts.map +1 -0
- package/dist/command-ingress.js +13 -0
- package/dist/command-ingress.js.map +1 -0
- package/dist/inbound-download.d.ts +13 -0
- package/dist/inbound-download.d.ts.map +1 -0
- package/dist/inbound-download.js +70 -0
- package/dist/inbound-download.js.map +1 -0
- package/dist/inbound-media-source.d.ts +25 -0
- package/dist/inbound-media-source.d.ts.map +1 -0
- package/dist/inbound-media-source.js +111 -0
- package/dist/inbound-media-source.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/media-notice.d.ts +6 -0
- package/dist/media-notice.d.ts.map +1 -0
- package/dist/media-notice.js +50 -0
- package/dist/media-notice.js.map +1 -0
- package/dist/plugin-entrypoint.d.ts +7 -0
- package/dist/plugin-entrypoint.d.ts.map +1 -0
- package/dist/plugin-entrypoint.js +292 -0
- package/dist/plugin-entrypoint.js.map +1 -0
- package/dist/reply-sender-map.d.ts +10 -0
- package/dist/reply-sender-map.d.ts.map +1 -0
- package/dist/reply-sender-map.js +123 -0
- package/dist/reply-sender-map.js.map +1 -0
- package/dist/rich-block-plaintext.d.ts +5 -0
- package/dist/rich-block-plaintext.d.ts.map +1 -0
- package/dist/rich-block-plaintext.js +45 -0
- package/dist/rich-block-plaintext.js.map +1 -0
- package/dist/runtime.d.ts +65 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +84 -0
- package/dist/runtime.js.map +1 -0
- package/dist/thread-mappings.d.ts +46 -0
- package/dist/thread-mappings.d.ts.map +1 -0
- package/dist/thread-mappings.js +62 -0
- package/dist/thread-mappings.js.map +1 -0
- package/dist/types.d.ts +15 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/npm-shrinkwrap.json +215 -0
- package/package.json +55 -4
- package/plugin.yaml +83 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-entrypoint.js","sourceRoot":"","sources":["../src/plugin-entrypoint.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { FeatureContext } from '@clowder-ai/plugin-sdk';
|
|
2
|
+
export interface ReplySender {
|
|
3
|
+
readonly id: string;
|
|
4
|
+
readonly name?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function createReplySenderMap(context: FeatureContext): {
|
|
7
|
+
record(hostMessageId: string, replySender: ReplySender): Promise<void>;
|
|
8
|
+
resolve(hostMessageId: string | undefined): Promise<ReplySender | undefined>;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=reply-sender-map.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reply-sender-map.d.ts","sourceRoot":"","sources":["../src/reply-sender-map.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AA0CD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc;0BAkD5B,MAAM,eAAe,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;2BAgB/C,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;EAmBrF"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
const KEY_PREFIX = 'reply-sender:';
|
|
2
|
+
const ENTRY_TTL_MS = 24 * 60 * 60 * 1000;
|
|
3
|
+
const SWEEP_EVERY_RECORDS = 50;
|
|
4
|
+
const ENTRY_CAP = 2000;
|
|
5
|
+
function object(value) {
|
|
6
|
+
return value !== null && typeof value === 'object' && !Array.isArray(value);
|
|
7
|
+
}
|
|
8
|
+
function errorName(error) {
|
|
9
|
+
return error instanceof Error ? error.name : 'unknown';
|
|
10
|
+
}
|
|
11
|
+
function parseEntry(value) {
|
|
12
|
+
if (typeof value !== 'string')
|
|
13
|
+
return undefined;
|
|
14
|
+
let parsed;
|
|
15
|
+
try {
|
|
16
|
+
parsed = JSON.parse(value);
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
if (!object(parsed) || parsed.version !== 1 || typeof parsed.storedAt !== 'number')
|
|
22
|
+
return undefined;
|
|
23
|
+
const candidate = parsed.sender;
|
|
24
|
+
if (!object(candidate) || typeof candidate.id !== 'string' || candidate.id.length === 0)
|
|
25
|
+
return undefined;
|
|
26
|
+
return {
|
|
27
|
+
version: 1,
|
|
28
|
+
storedAt: parsed.storedAt,
|
|
29
|
+
sender: {
|
|
30
|
+
id: candidate.id,
|
|
31
|
+
...(typeof candidate.name === 'string' ? { name: candidate.name } : {}),
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
export function createReplySenderMap(context) {
|
|
36
|
+
let recordedSinceSweep = 0;
|
|
37
|
+
let sweepInFlight = false;
|
|
38
|
+
const sweep = async () => {
|
|
39
|
+
let listed;
|
|
40
|
+
try {
|
|
41
|
+
listed = await context.storage.list();
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
context.log('warn', 'Connector reply-sender mapping sweep failed', { errorName: errorName(error) });
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const now = Date.now();
|
|
48
|
+
const live = [];
|
|
49
|
+
for (const [key, item] of Object.entries(listed)) {
|
|
50
|
+
if (!key.startsWith(KEY_PREFIX))
|
|
51
|
+
continue;
|
|
52
|
+
const entry = parseEntry(item?.value);
|
|
53
|
+
if (entry === undefined || entry.storedAt + ENTRY_TTL_MS < now) {
|
|
54
|
+
await context.storage.delete(key).catch(() => undefined);
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
live.push({ key, storedAt: entry.storedAt });
|
|
58
|
+
}
|
|
59
|
+
live.sort((a, b) => a.storedAt - b.storedAt);
|
|
60
|
+
let overflow = live.length - (ENTRY_CAP - 1);
|
|
61
|
+
for (let index = 0; overflow > 0 && index < live.length; index += 1, overflow -= 1) {
|
|
62
|
+
await context.storage.delete(live[index].key).catch(() => undefined);
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
// Sweep single-flight in the background: recording stays on the inbound
|
|
66
|
+
// hot path and overlapping bursts never stack sweeps. sweep() already
|
|
67
|
+
// swallows and logs its own storage failures. context.log is intentionally
|
|
68
|
+
// NOT used here: log() runs assertActive() and throws
|
|
69
|
+
// FeatureContextRevokedError after stop/revoke, so a sweep racing feature
|
|
70
|
+
// shutdown would turn into an unhandled rejection; console.warn is the
|
|
71
|
+
// reviewer-sanctioned exception that stays callable past revocation.
|
|
72
|
+
const sweepInBackground = () => {
|
|
73
|
+
if (sweepInFlight)
|
|
74
|
+
return;
|
|
75
|
+
sweepInFlight = true;
|
|
76
|
+
void sweep()
|
|
77
|
+
.catch((error) => {
|
|
78
|
+
console.warn('Connector reply-sender mapping sweep failed', { errorName: errorName(error) });
|
|
79
|
+
})
|
|
80
|
+
.finally(() => {
|
|
81
|
+
sweepInFlight = false;
|
|
82
|
+
});
|
|
83
|
+
};
|
|
84
|
+
return {
|
|
85
|
+
async record(hostMessageId, replySender) {
|
|
86
|
+
const now = Date.now();
|
|
87
|
+
try {
|
|
88
|
+
await context.storage.set(`${KEY_PREFIX}${hostMessageId}`, JSON.stringify({ version: 1, sender: replySender, storedAt: now }));
|
|
89
|
+
}
|
|
90
|
+
catch (error) {
|
|
91
|
+
context.log('warn', 'Connector reply-sender mapping record failed', { errorName: errorName(error) });
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
recordedSinceSweep += 1;
|
|
95
|
+
if (recordedSinceSweep < SWEEP_EVERY_RECORDS)
|
|
96
|
+
return;
|
|
97
|
+
recordedSinceSweep = 0;
|
|
98
|
+
sweepInBackground();
|
|
99
|
+
},
|
|
100
|
+
async resolve(hostMessageId) {
|
|
101
|
+
if (hostMessageId === undefined)
|
|
102
|
+
return undefined;
|
|
103
|
+
const key = `${KEY_PREFIX}${hostMessageId}`;
|
|
104
|
+
let stored;
|
|
105
|
+
try {
|
|
106
|
+
stored = await context.storage.get(key);
|
|
107
|
+
}
|
|
108
|
+
catch (error) {
|
|
109
|
+
context.log('warn', 'Connector reply-sender mapping lookup failed', { errorName: errorName(error) });
|
|
110
|
+
return undefined;
|
|
111
|
+
}
|
|
112
|
+
const entry = parseEntry(stored?.value);
|
|
113
|
+
if (entry === undefined)
|
|
114
|
+
return undefined;
|
|
115
|
+
if (entry.storedAt + ENTRY_TTL_MS < Date.now()) {
|
|
116
|
+
await context.storage.delete(key).catch(() => undefined);
|
|
117
|
+
return undefined;
|
|
118
|
+
}
|
|
119
|
+
return entry.sender;
|
|
120
|
+
},
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=reply-sender-map.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reply-sender-map.js","sourceRoot":"","sources":["../src/reply-sender-map.ts"],"names":[],"mappings":"AAaA,MAAM,UAAU,GAAG,eAAe,CAAC;AACnC,MAAM,YAAY,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACzC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,MAAM,SAAS,GAAG,IAAI,CAAC;AAEvB,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACrG,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;IAChC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,OAAO,SAAS,CAAC,EAAE,KAAK,QAAQ,IAAI,SAAS,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1G,OAAO;QACL,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,MAAM,EAAE;YACN,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,GAAG,CAAC,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxE;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAuB;IAC1D,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAC3B,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,MAAM,KAAK,GAAG,KAAK,IAAmB,EAAE;QACtC,IAAI,MAA6D,CAAC;QAClE,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,6CAA6C,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACpG,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,GAA6C,EAAE,CAAC;QAC1D,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC;gBAAE,SAAS;YAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACtC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,GAAG,YAAY,GAAG,GAAG,EAAE,CAAC;gBAC/D,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;gBACzD,SAAS;YACX,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QAC7C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,QAAQ,IAAI,CAAC,EAAE,CAAC;YACnF,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACvE,CAAC;IACH,CAAC,CAAC;IAEF,wEAAwE;IACxE,sEAAsE;IACtE,2EAA2E;IAC3E,sDAAsD;IACtD,0EAA0E;IAC1E,uEAAuE;IACvE,qEAAqE;IACrE,MAAM,iBAAiB,GAAG,GAAS,EAAE;QACnC,IAAI,aAAa;YAAE,OAAO;QAC1B,aAAa,GAAG,IAAI,CAAC;QACrB,KAAK,KAAK,EAAE;aACT,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACxB,OAAO,CAAC,IAAI,CAAC,6CAA6C,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/F,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACZ,aAAa,GAAG,KAAK,CAAC;QACxB,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,OAAO;QACL,KAAK,CAAC,MAAM,CAAC,aAAqB,EAAE,WAAwB;YAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CACvB,GAAG,UAAU,GAAG,aAAa,EAAE,EAC/B,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CACnE,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,8CAA8C,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACrG,OAAO;YACT,CAAC;YACD,kBAAkB,IAAI,CAAC,CAAC;YACxB,IAAI,kBAAkB,GAAG,mBAAmB;gBAAE,OAAO;YACrD,kBAAkB,GAAG,CAAC,CAAC;YACvB,iBAAiB,EAAE,CAAC;QACtB,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,aAAiC;YAC7C,IAAI,aAAa,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YAClD,MAAM,GAAG,GAAG,GAAG,UAAU,GAAG,aAAa,EAAE,CAAC;YAC5C,IAAI,MAA+C,CAAC;YACpD,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,8CAA8C,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACrG,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACxC,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YAC1C,IAAI,KAAK,CAAC,QAAQ,GAAG,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC/C,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;gBACzD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,KAAK,CAAC,MAAM,CAAC;QACtB,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
type RichBlockLike = Readonly<Record<string, unknown>>;
|
|
2
|
+
export declare function renderRichBlockPlaintext(block: RichBlockLike): string;
|
|
3
|
+
export declare function renderAllRichBlocksPlaintext(blocks: readonly RichBlockLike[]): string;
|
|
4
|
+
export {};
|
|
5
|
+
//# sourceMappingURL=rich-block-plaintext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rich-block-plaintext.d.ts","sourceRoot":"","sources":["../src/rich-block-plaintext.ts"],"names":[],"mappings":"AAAA,KAAK,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAEvD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAuCrE;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,SAAS,aAAa,EAAE,GAAG,MAAM,CAErF"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export function renderRichBlockPlaintext(block) {
|
|
2
|
+
switch (block.kind) {
|
|
3
|
+
case 'card': {
|
|
4
|
+
const parts = [`📋 ${block.title}`];
|
|
5
|
+
if (block.bodyMarkdown)
|
|
6
|
+
parts.push(String(block.bodyMarkdown));
|
|
7
|
+
if (Array.isArray(block.fields) && block.fields.length > 0) {
|
|
8
|
+
parts.push(block.fields
|
|
9
|
+
.map((field) => ` ${field.label}: ${field.value}`)
|
|
10
|
+
.join('\n'));
|
|
11
|
+
}
|
|
12
|
+
return parts.join('\n');
|
|
13
|
+
}
|
|
14
|
+
case 'checklist': {
|
|
15
|
+
const header = block.title ? `☑️ ${block.title}` : '☑️ Checklist';
|
|
16
|
+
const items = Array.isArray(block.items)
|
|
17
|
+
? block.items
|
|
18
|
+
.map((item) => `${item.checked ? '✅' : '☐'} ${item.text}`)
|
|
19
|
+
.join('\n')
|
|
20
|
+
: '';
|
|
21
|
+
return `${header}\n${items}`;
|
|
22
|
+
}
|
|
23
|
+
case 'diff':
|
|
24
|
+
return `📝 ${block.filePath}\n\`\`\`\n${block.diff}\n\`\`\``;
|
|
25
|
+
case 'audio':
|
|
26
|
+
return block.text ? `🔊 ${block.text}` : `🔊 [Audio: ${block.url}]`;
|
|
27
|
+
case 'media_gallery': {
|
|
28
|
+
const header = block.title ? `🖼️ ${block.title}` : '🖼️ Gallery';
|
|
29
|
+
const items = Array.isArray(block.items)
|
|
30
|
+
? block.items
|
|
31
|
+
.map((item) => item.caption
|
|
32
|
+
|| item.alt
|
|
33
|
+
|| item.url)
|
|
34
|
+
.join('\n')
|
|
35
|
+
: '';
|
|
36
|
+
return `${header}\n${items}`;
|
|
37
|
+
}
|
|
38
|
+
default:
|
|
39
|
+
return `[${block.kind}]`;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
export function renderAllRichBlocksPlaintext(blocks) {
|
|
43
|
+
return blocks.map(renderRichBlockPlaintext).join('\n\n');
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=rich-block-plaintext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rich-block-plaintext.js","sourceRoot":"","sources":["../src/rich-block-plaintext.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,wBAAwB,CAAC,KAAoB;IAC3D,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YACpC,IAAI,KAAK,CAAC,YAAY;gBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;YAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3D,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;qBACpB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAM,KAAiC,CAAC,KAAK,KAAM,KAAiC,CAAC,KAAK,EAAE,CAAC;qBAC5G,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACjB,CAAC;YACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;YAClE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBACtC,CAAC,CAAC,KAAK,CAAC,KAAK;qBACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAI,IAAgC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAK,IAAgC,CAAC,IAAI,EAAE,CAAC;qBACnH,IAAI,CAAC,IAAI,CAAC;gBACb,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,GAAG,MAAM,KAAK,KAAK,EAAE,CAAC;QAC/B,CAAC;QACD,KAAK,MAAM;YACT,OAAO,MAAM,KAAK,CAAC,QAAQ,aAAa,KAAK,CAAC,IAAI,UAAU,CAAC;QAC/D,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,GAAG,GAAG,CAAC;QACtE,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;YAClE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;gBACtC,CAAC,CAAC,KAAK,CAAC,KAAK;qBACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAE,IAAgC,CAAC,OAAO;uBAClD,IAAgC,CAAC,GAAG;uBACpC,IAAgC,CAAC,GAAG,CAAC;qBAC1C,IAAI,CAAC,IAAI,CAAC;gBACb,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,GAAG,MAAM,KAAK,KAAK,EAAE,CAAC;QAC/B,CAAC;QACD;YACE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC;IAC7B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,MAAgC;IAC3E,OAAO,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC3D,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { WeComAgentAdapter, type WeComAgentAdapterOptions } from './WeComAgentAdapter.js';
|
|
2
|
+
import type { ConnectorLogger } from './types.js';
|
|
3
|
+
export interface WeComAgentRuntimeConfig {
|
|
4
|
+
readonly corpId: string;
|
|
5
|
+
readonly agentId: string;
|
|
6
|
+
readonly agentSecret: string;
|
|
7
|
+
readonly callbackToken: string;
|
|
8
|
+
readonly encodingAesKey: string;
|
|
9
|
+
}
|
|
10
|
+
export interface WeComAgentWebhookInput {
|
|
11
|
+
readonly body?: unknown;
|
|
12
|
+
readonly query?: Readonly<Record<string, string>>;
|
|
13
|
+
}
|
|
14
|
+
export type WeComAgentWebhookResult = Readonly<{
|
|
15
|
+
kind: 'challenge';
|
|
16
|
+
response: string;
|
|
17
|
+
}> | Readonly<{
|
|
18
|
+
kind: 'processed';
|
|
19
|
+
messageId: string;
|
|
20
|
+
}> | Readonly<{
|
|
21
|
+
kind: 'skipped';
|
|
22
|
+
reason: string;
|
|
23
|
+
}> | Readonly<{
|
|
24
|
+
kind: 'error';
|
|
25
|
+
status: number;
|
|
26
|
+
message: string;
|
|
27
|
+
}>;
|
|
28
|
+
export interface WeComAgentHostInboundMessage {
|
|
29
|
+
readonly externalConversationId: string;
|
|
30
|
+
readonly externalSenderId: string;
|
|
31
|
+
readonly providerMessageId: string;
|
|
32
|
+
readonly text: string;
|
|
33
|
+
readonly attachments?: readonly Readonly<{
|
|
34
|
+
type: 'image' | 'file' | 'audio';
|
|
35
|
+
platformKey: string;
|
|
36
|
+
fileName?: string;
|
|
37
|
+
}>[];
|
|
38
|
+
}
|
|
39
|
+
export interface WeComAgentRuntimeHost {
|
|
40
|
+
deliver(message: WeComAgentHostInboundMessage): Promise<void>;
|
|
41
|
+
}
|
|
42
|
+
export interface WeComAgentRuntimeAdapter {
|
|
43
|
+
readonly connectorId: string;
|
|
44
|
+
verifyCallback: WeComAgentAdapter['verifyCallback'];
|
|
45
|
+
decryptInbound: WeComAgentAdapter['decryptInbound'];
|
|
46
|
+
parseEvent: WeComAgentAdapter['parseEvent'];
|
|
47
|
+
sendFormattedReply: WeComAgentAdapter['sendFormattedReply'];
|
|
48
|
+
sendMedia: WeComAgentAdapter['sendMedia'];
|
|
49
|
+
sendReply: WeComAgentAdapter['sendReply'];
|
|
50
|
+
}
|
|
51
|
+
export interface WeComAgentConnectorRuntime<Adapter extends WeComAgentRuntimeAdapter = WeComAgentAdapter> {
|
|
52
|
+
readonly outbound: Adapter;
|
|
53
|
+
start(): Promise<void>;
|
|
54
|
+
stop(): Promise<void>;
|
|
55
|
+
handleWebhook(input: WeComAgentWebhookInput): Promise<WeComAgentWebhookResult>;
|
|
56
|
+
}
|
|
57
|
+
export interface WeComAgentConnectorRuntimeOptions<Adapter extends WeComAgentRuntimeAdapter = WeComAgentAdapter> {
|
|
58
|
+
readonly config: WeComAgentRuntimeConfig;
|
|
59
|
+
readonly host: WeComAgentRuntimeHost;
|
|
60
|
+
readonly logger: ConnectorLogger;
|
|
61
|
+
readonly createAdapter?: (logger: ConnectorLogger, config: WeComAgentAdapterOptions) => Adapter;
|
|
62
|
+
}
|
|
63
|
+
export declare function requireWeComAgentWebhookInput(candidate: unknown): WeComAgentWebhookInput;
|
|
64
|
+
export declare function createWeComAgentConnectorRuntime<Adapter extends WeComAgentRuntimeAdapter = WeComAgentAdapter>(options: WeComAgentConnectorRuntimeOptions<Adapter>): WeComAgentConnectorRuntime<Adapter>;
|
|
65
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.js
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { WeComAgentAdapter, } from './WeComAgentAdapter.js';
|
|
2
|
+
function required(value, key) {
|
|
3
|
+
const normalized = value.trim();
|
|
4
|
+
if (normalized.length === 0)
|
|
5
|
+
throw new TypeError(`${key} must be a non-empty declared value`);
|
|
6
|
+
return normalized;
|
|
7
|
+
}
|
|
8
|
+
function hostMessage(message) {
|
|
9
|
+
const attachments = message.attachments?.map((attachment) => ({
|
|
10
|
+
type: attachment.type === 'video' ? 'file' : attachment.type,
|
|
11
|
+
platformKey: attachment.mediaId,
|
|
12
|
+
...(attachment.fileName === undefined ? {} : { fileName: attachment.fileName }),
|
|
13
|
+
}));
|
|
14
|
+
return {
|
|
15
|
+
externalConversationId: message.chatId,
|
|
16
|
+
externalSenderId: message.senderId,
|
|
17
|
+
providerMessageId: message.messageId,
|
|
18
|
+
text: message.text,
|
|
19
|
+
...(attachments === undefined ? {} : { attachments }),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export function requireWeComAgentWebhookInput(candidate) {
|
|
23
|
+
if (candidate === null || typeof candidate !== 'object' || Array.isArray(candidate)) {
|
|
24
|
+
throw new TypeError('wecom-agent webhook input must be an object');
|
|
25
|
+
}
|
|
26
|
+
const input = candidate;
|
|
27
|
+
if (input.query !== undefined && (input.query === null || typeof input.query !== 'object' || Array.isArray(input.query)
|
|
28
|
+
|| Object.values(input.query).some(value => typeof value !== 'string'))) {
|
|
29
|
+
throw new TypeError('wecom-agent webhook query must contain string values');
|
|
30
|
+
}
|
|
31
|
+
return { body: input.body, ...(input.query === undefined ? {} : { query: input.query }) };
|
|
32
|
+
}
|
|
33
|
+
export function createWeComAgentConnectorRuntime(options) {
|
|
34
|
+
const config = {
|
|
35
|
+
corpId: required(options.config.corpId, 'corpId'),
|
|
36
|
+
agentId: required(options.config.agentId, 'agentId'),
|
|
37
|
+
agentSecret: required(options.config.agentSecret, 'agentSecret'),
|
|
38
|
+
token: required(options.config.callbackToken, 'callbackToken'),
|
|
39
|
+
encodingAesKey: required(options.config.encodingAesKey, 'encodingAesKey'),
|
|
40
|
+
};
|
|
41
|
+
const createAdapter = options.createAdapter ?? ((logger, value) => new WeComAgentAdapter(logger, value));
|
|
42
|
+
const outbound = createAdapter(options.logger, config);
|
|
43
|
+
let stopped = false;
|
|
44
|
+
return {
|
|
45
|
+
outbound,
|
|
46
|
+
async start() {
|
|
47
|
+
if (stopped)
|
|
48
|
+
throw new Error('WeCom Agent connector runtime has been stopped');
|
|
49
|
+
},
|
|
50
|
+
async stop() { stopped = true; },
|
|
51
|
+
async handleWebhook(candidate) {
|
|
52
|
+
if (stopped)
|
|
53
|
+
throw new Error('WeCom Agent connector runtime has been stopped');
|
|
54
|
+
const input = requireWeComAgentWebhookInput(candidate);
|
|
55
|
+
const query = input.query ?? {};
|
|
56
|
+
const signature = query.msg_signature ?? '';
|
|
57
|
+
const timestamp = query.timestamp ?? '';
|
|
58
|
+
const nonce = query.nonce ?? '';
|
|
59
|
+
if (query.echostr !== undefined) {
|
|
60
|
+
const response = outbound.verifyCallback({ msg_signature: signature, timestamp, nonce, echostr: query.echostr });
|
|
61
|
+
return response === null
|
|
62
|
+
? { kind: 'error', status: 403, message: 'echostr verification failed' }
|
|
63
|
+
: { kind: 'challenge', response };
|
|
64
|
+
}
|
|
65
|
+
const body = typeof input.body === 'string'
|
|
66
|
+
? input.body
|
|
67
|
+
: input.body === undefined
|
|
68
|
+
? undefined
|
|
69
|
+
: JSON.stringify(input.body);
|
|
70
|
+
if (body === undefined)
|
|
71
|
+
throw new TypeError('wecom-agent webhook body must be XML text');
|
|
72
|
+
const decrypted = outbound.decryptInbound(body, { msg_signature: signature, timestamp, nonce });
|
|
73
|
+
if (decrypted === null) {
|
|
74
|
+
return { kind: 'error', status: 403, message: 'Signature verification or decryption failed' };
|
|
75
|
+
}
|
|
76
|
+
const parsed = outbound.parseEvent(decrypted);
|
|
77
|
+
if (parsed === null)
|
|
78
|
+
return { kind: 'skipped', reason: 'unsupported_event' };
|
|
79
|
+
await options.host.deliver(hostMessage(parsed));
|
|
80
|
+
return { kind: 'processed', messageId: parsed.messageId };
|
|
81
|
+
},
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { FeatureContext } from '@clowder-ai/plugin-sdk';
|
|
2
|
+
type Mapping = {
|
|
3
|
+
readonly key: string;
|
|
4
|
+
readonly threadId: string;
|
|
5
|
+
readonly createdAt: number;
|
|
6
|
+
};
|
|
7
|
+
type Creation = {
|
|
8
|
+
readonly title: string;
|
|
9
|
+
readonly parentThreadId?: string;
|
|
10
|
+
readonly participants?: readonly string[];
|
|
11
|
+
};
|
|
12
|
+
export declare function threadMappings(context: FeatureContext): {
|
|
13
|
+
findByKey: (name: string) => Promise<import("@clowder-ai/plugin-sdk").PluginThreadSummary | null>;
|
|
14
|
+
bind: (name: string, threadId: string) => Promise<boolean | Mapping>;
|
|
15
|
+
unbind: (name: string) => Promise<boolean | Mapping>;
|
|
16
|
+
listBindings: () => Promise<Mapping[]>;
|
|
17
|
+
ensureByKey: (name: string, input: Creation) => Promise<import("@clowder-ai/plugin-sdk").PluginThreadSummary>;
|
|
18
|
+
ensureSystemThread: () => Promise<import("@clowder-ai/plugin-sdk").PluginThreadSummary>;
|
|
19
|
+
get(threadId: string): Promise<import("@clowder-ai/plugin-sdk").PluginThreadSummary | null>;
|
|
20
|
+
list(options?: {
|
|
21
|
+
readonly limit?: number;
|
|
22
|
+
readonly before?: {
|
|
23
|
+
readonly lastActiveAt: number;
|
|
24
|
+
readonly id: string;
|
|
25
|
+
};
|
|
26
|
+
}): Promise<readonly import("@clowder-ai/plugin-sdk").PluginThreadSummary[]>;
|
|
27
|
+
readMessages(threadId: string, options: {
|
|
28
|
+
readonly before?: {
|
|
29
|
+
readonly timestamp: number;
|
|
30
|
+
readonly id: string;
|
|
31
|
+
};
|
|
32
|
+
readonly limit: number;
|
|
33
|
+
}): Promise<readonly import("@clowder-ai/plugin-sdk").PluginThreadMessage[]>;
|
|
34
|
+
getCats(threadId: string): Promise<import("@clowder-ai/plugin-sdk").PluginThreadCats>;
|
|
35
|
+
addParticipants(input: {
|
|
36
|
+
readonly threadId: string;
|
|
37
|
+
readonly catIds: readonly string[];
|
|
38
|
+
}): Promise<import("@clowder-ai/plugin-sdk").PluginThreadSummary>;
|
|
39
|
+
create(input: import("@clowder-ai/plugin-sdk").PluginThreadCreateInput): Promise<import("@clowder-ai/plugin-sdk").PluginThreadSummary>;
|
|
40
|
+
update(threadId: string, patch: {
|
|
41
|
+
readonly title?: string;
|
|
42
|
+
readonly preferredCats?: readonly string[];
|
|
43
|
+
}): Promise<import("@clowder-ai/plugin-sdk").PluginThreadSummary>;
|
|
44
|
+
};
|
|
45
|
+
export {};
|
|
46
|
+
//# sourceMappingURL=thread-mappings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread-mappings.d.ts","sourceRoot":"","sources":["../src/thread-mappings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,KAAK,OAAO,GAAG;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAC/F,KAAK,QAAQ,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAAC;AA+CxH,wBAAgB,cAAc,CAAC,OAAO,EAAE,cAAc;sBA/B1B,MAAM;iBAwBjB,MAAM,YAAY,MAAM;mBACtB,MAAM;;wBAVD,MAAM,SAAS,QAAQ;;;;sBAqB0T,CAAC;uBAAiC,CAAC;;;;;;uBAA8S,CAAC;;;;;;;;;;;;;sBAA2f,CAAC;8BAAwC,CAAC;;EAD/tC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
const contexts = new WeakMap();
|
|
2
|
+
/** Package-owned external-conversation mapping. Host receives ordinary thread calls only. */
|
|
3
|
+
function createMappings(context) {
|
|
4
|
+
const key = 'thread-mappings.v1';
|
|
5
|
+
let tail = Promise.resolve();
|
|
6
|
+
const serialize = (run) => {
|
|
7
|
+
const next = tail.then(run, run);
|
|
8
|
+
tail = next.catch(() => { });
|
|
9
|
+
return next;
|
|
10
|
+
};
|
|
11
|
+
const read = async () => {
|
|
12
|
+
const stored = await context.storage.get(key);
|
|
13
|
+
const rows = stored?.value ?? [];
|
|
14
|
+
if (!Array.isArray(rows) || rows.some(row => !row || typeof row.key !== 'string' || typeof row.threadId !== 'string' || typeof row.createdAt !== 'number'))
|
|
15
|
+
throw new Error('Invalid plugin thread mappings');
|
|
16
|
+
return { stored, rows: rows };
|
|
17
|
+
};
|
|
18
|
+
const find = async (name) => {
|
|
19
|
+
const { rows } = await read();
|
|
20
|
+
const row = rows.find(row => row.key === name);
|
|
21
|
+
return row ? context.threads.get(row.threadId) : null;
|
|
22
|
+
};
|
|
23
|
+
const save = async (name, threadId) => {
|
|
24
|
+
const { stored, rows } = await read();
|
|
25
|
+
const next = rows.filter(row => row.key !== name);
|
|
26
|
+
if (threadId !== null) {
|
|
27
|
+
if (!await context.threads.get(threadId))
|
|
28
|
+
throw new Error('Thread unavailable');
|
|
29
|
+
next.push({ key: name, threadId, createdAt: Date.now() });
|
|
30
|
+
}
|
|
31
|
+
const result = await context.storage.compareAndSet(key, stored?.revision ?? null, next);
|
|
32
|
+
if (!result.applied)
|
|
33
|
+
throw new Error('Plugin thread mappings changed concurrently');
|
|
34
|
+
return threadId === null ? rows.length !== next.length : next.find(row => row.key === name);
|
|
35
|
+
};
|
|
36
|
+
const ensure = (name, input) => serialize(async () => {
|
|
37
|
+
const existing = await find(name);
|
|
38
|
+
if (existing)
|
|
39
|
+
return existing;
|
|
40
|
+
const thread = await context.threads.create(input);
|
|
41
|
+
await save(name, thread.id);
|
|
42
|
+
return thread;
|
|
43
|
+
});
|
|
44
|
+
return {
|
|
45
|
+
...context.threads,
|
|
46
|
+
findByKey: find,
|
|
47
|
+
bind: (name, threadId) => serialize(() => save(name, threadId)),
|
|
48
|
+
unbind: (name) => serialize(() => save(name, null)),
|
|
49
|
+
listBindings: async () => (await read()).rows,
|
|
50
|
+
ensureByKey: ensure,
|
|
51
|
+
ensureSystemThread: () => ensure('command-audit', { title: '连接器命令记录' }),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export function threadMappings(context) {
|
|
55
|
+
let value = contexts.get(context);
|
|
56
|
+
if (!value) {
|
|
57
|
+
value = createMappings(context);
|
|
58
|
+
contexts.set(context, value);
|
|
59
|
+
}
|
|
60
|
+
return value;
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=thread-mappings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread-mappings.js","sourceRoot":"","sources":["../src/thread-mappings.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type ConnectorLogMethod = (...args: readonly unknown[]) => void;
|
|
2
|
+
export interface ConnectorLogger {
|
|
3
|
+
info: ConnectorLogMethod;
|
|
4
|
+
warn: ConnectorLogMethod;
|
|
5
|
+
error: ConnectorLogMethod;
|
|
6
|
+
debug: ConnectorLogMethod;
|
|
7
|
+
}
|
|
8
|
+
export interface MessageEnvelope {
|
|
9
|
+
header: string;
|
|
10
|
+
body: string;
|
|
11
|
+
origin: 'direct' | 'callback';
|
|
12
|
+
subtitle?: string;
|
|
13
|
+
footer?: string;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG,CAAC,GAAG,IAAI,EAAE,SAAS,OAAO,EAAE,KAAK,IAAI,CAAC;AAEvE,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,kBAAkB,CAAC;IACzB,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,KAAK,EAAE,kBAAkB,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|