teams-api 1.4.0 → 1.6.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/README.md +138 -20
- package/dist/actions/conversation-actions.d.ts.map +1 -1
- package/dist/actions/conversation-actions.js.map +1 -1
- package/dist/actions/definitions.d.ts.map +1 -1
- package/dist/actions/definitions.js +2 -0
- package/dist/actions/definitions.js.map +1 -1
- package/dist/actions/file-actions.d.ts.map +1 -1
- package/dist/actions/file-actions.js +3 -1
- package/dist/actions/file-actions.js.map +1 -1
- package/dist/actions/image-description-actions.d.ts +28 -0
- package/dist/actions/image-description-actions.d.ts.map +1 -0
- package/dist/actions/image-description-actions.js +148 -0
- package/dist/actions/image-description-actions.js.map +1 -0
- package/dist/actions/message-actions.d.ts.map +1 -1
- package/dist/actions/message-actions.js +175 -9
- package/dist/actions/message-actions.js.map +1 -1
- package/dist/actions/utility-actions.d.ts.map +1 -1
- package/dist/actions/utility-actions.js.map +1 -1
- package/dist/api/chat-service.d.ts +2 -12
- package/dist/api/chat-service.d.ts.map +1 -1
- package/dist/api/chat-service.js +33 -41
- package/dist/api/chat-service.js.map +1 -1
- package/dist/api/common.d.ts +4 -0
- package/dist/api/common.d.ts.map +1 -1
- package/dist/api/common.js +10 -1
- package/dist/api/common.js.map +1 -1
- package/dist/api/image-description.d.ts +20 -0
- package/dist/api/image-description.d.ts.map +1 -0
- package/dist/api/image-description.js +77 -0
- package/dist/api/image-description.js.map +1 -0
- package/dist/audit.d.ts +17 -0
- package/dist/audit.d.ts.map +1 -0
- package/dist/audit.js +53 -0
- package/dist/audit.js.map +1 -0
- package/dist/auth/auto-login.d.ts.map +1 -1
- package/dist/auth/auto-login.js +1 -3
- package/dist/auth/auto-login.js.map +1 -1
- package/dist/auth/interactive.d.ts.map +1 -1
- package/dist/auth/interactive.js +7 -8
- package/dist/auth/interactive.js.map +1 -1
- package/dist/auth/token-capture.d.ts.map +1 -1
- package/dist/auth/token-capture.js +62 -8
- package/dist/auth/token-capture.js.map +1 -1
- package/dist/browser-runtime.d.ts +11 -0
- package/dist/browser-runtime.d.ts.map +1 -1
- package/dist/browser-runtime.js +106 -0
- package/dist/browser-runtime.js.map +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/conversation-protection.d.ts +21 -0
- package/dist/conversation-protection.d.ts.map +1 -0
- package/dist/conversation-protection.js +47 -0
- package/dist/conversation-protection.js.map +1 -0
- package/dist/credential-store.d.ts.map +1 -1
- package/dist/credential-store.js +10 -2
- package/dist/credential-store.js.map +1 -1
- package/dist/emoji-map.d.ts.map +1 -1
- package/dist/emoji-map.js.map +1 -1
- package/dist/html-utils.d.ts +23 -3
- package/dist/html-utils.d.ts.map +1 -1
- package/dist/html-utils.js +34 -3
- package/dist/html-utils.js.map +1 -1
- package/dist/mcp-auth.d.ts +56 -0
- package/dist/mcp-auth.d.ts.map +1 -0
- package/dist/mcp-auth.js +207 -0
- package/dist/mcp-auth.js.map +1 -0
- package/dist/mcp-server.d.ts +1 -0
- package/dist/mcp-server.d.ts.map +1 -1
- package/dist/mcp-server.js +37 -213
- package/dist/mcp-server.js.map +1 -1
- package/dist/model-context-protocol-download-content.d.ts +7 -0
- package/dist/model-context-protocol-download-content.d.ts.map +1 -0
- package/dist/model-context-protocol-download-content.js +90 -0
- package/dist/model-context-protocol-download-content.js.map +1 -0
- package/dist/server-instructions.d.ts.map +1 -1
- package/dist/server-instructions.js +4 -0
- package/dist/server-instructions.js.map +1 -1
- package/dist/smart-login.d.ts.map +1 -1
- package/dist/smart-login.js +3 -3
- package/dist/smart-login.js.map +1 -1
- package/dist/teams-client.d.ts +20 -3
- package/dist/teams-client.d.ts.map +1 -1
- package/dist/teams-client.js +117 -29
- package/dist/teams-client.js.map +1 -1
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +5 -1
- package/dist/telemetry.js.map +1 -1
- package/dist/token-store.d.ts.map +1 -1
- package/dist/token-store.js.map +1 -1
- package/dist/types.d.ts +54 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +8 -2
package/dist/browser-runtime.js
CHANGED
|
@@ -11,9 +11,12 @@ exports.getDefaultBrowserProfileDir = getDefaultBrowserProfileDir;
|
|
|
11
11
|
exports.getInteractiveBrowserChannels = getInteractiveBrowserChannels;
|
|
12
12
|
exports.isMissingPlaywrightBrowserError = isMissingPlaywrightBrowserError;
|
|
13
13
|
exports.installBundledChromium = installBundledChromium;
|
|
14
|
+
exports.isProfileLockError = isProfileLockError;
|
|
15
|
+
exports.cleanStaleSingletonLock = cleanStaleSingletonLock;
|
|
14
16
|
exports.launchInteractiveBrowser = launchInteractiveBrowser;
|
|
15
17
|
exports.launchInteractiveBrowserContext = launchInteractiveBrowserContext;
|
|
16
18
|
const node_child_process_1 = require("node:child_process");
|
|
19
|
+
const node_fs_1 = require("node:fs");
|
|
17
20
|
const node_module_1 = require("node:module");
|
|
18
21
|
const node_os_1 = require("node:os");
|
|
19
22
|
const node_path_1 = require("node:path");
|
|
@@ -57,6 +60,84 @@ function installBundledChromium(log) {
|
|
|
57
60
|
"Unknown error";
|
|
58
61
|
throw new Error(`Failed to install Playwright Chromium automatically. ${detail}`);
|
|
59
62
|
}
|
|
63
|
+
const PROFILE_LOCK_MAX_RETRIES = 3;
|
|
64
|
+
const PROFILE_LOCK_RETRY_DELAY_MS = 500;
|
|
65
|
+
/**
|
|
66
|
+
* Check if a file or symlink exists (without following the symlink).
|
|
67
|
+
* Unlike `existsSync`, this returns true for broken symlinks.
|
|
68
|
+
*/
|
|
69
|
+
function fileOrSymlinkExists(path) {
|
|
70
|
+
try {
|
|
71
|
+
(0, node_fs_1.lstatSync)(path);
|
|
72
|
+
return true;
|
|
73
|
+
}
|
|
74
|
+
catch {
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Detect whether a browser launch error is caused by a locked profile
|
|
80
|
+
* (Chromium exit code 21 or SingletonLock contention).
|
|
81
|
+
*/
|
|
82
|
+
function isProfileLockError(error) {
|
|
83
|
+
if (!(error instanceof Error))
|
|
84
|
+
return false;
|
|
85
|
+
const message = error.message.toLowerCase();
|
|
86
|
+
return (message.includes("exit code 21") ||
|
|
87
|
+
message.includes("process singleton") ||
|
|
88
|
+
message.includes("profile directory is already in use") ||
|
|
89
|
+
message.includes("singletonlock"));
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Attempt to remove a stale SingletonLock file from a browser profile.
|
|
93
|
+
* Only removes the lock if the PID it references is not running.
|
|
94
|
+
* Returns true if the lock was successfully cleaned.
|
|
95
|
+
*/
|
|
96
|
+
function cleanStaleSingletonLock(profileDir, log) {
|
|
97
|
+
const lockPath = (0, node_path_1.join)(profileDir, "SingletonLock");
|
|
98
|
+
if (!fileOrSymlinkExists(lockPath)) {
|
|
99
|
+
log("No SingletonLock file found — nothing to clean.");
|
|
100
|
+
return false;
|
|
101
|
+
}
|
|
102
|
+
// SingletonLock is a symlink whose target contains the hostname and PID
|
|
103
|
+
// Format: "hostname-pid" (e.g., "MacBook-Pro.local-12345")
|
|
104
|
+
try {
|
|
105
|
+
const linkTarget = (0, node_fs_1.readlinkSync)(lockPath);
|
|
106
|
+
const pidMatch = linkTarget.match(/-(\d+)$/);
|
|
107
|
+
if (pidMatch) {
|
|
108
|
+
const pid = Number(pidMatch[1]);
|
|
109
|
+
if (isProcessRunning(pid)) {
|
|
110
|
+
log(`SingletonLock held by live process (PID ${pid}) — cannot remove.`);
|
|
111
|
+
return false;
|
|
112
|
+
}
|
|
113
|
+
log(`SingletonLock held by dead process (PID ${pid}) — removing.`);
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
log("SingletonLock has unrecognized format — removing.");
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
catch {
|
|
120
|
+
log("Could not read SingletonLock — attempting removal anyway.");
|
|
121
|
+
}
|
|
122
|
+
try {
|
|
123
|
+
(0, node_fs_1.rmSync)(lockPath, { force: true });
|
|
124
|
+
log("Removed stale SingletonLock.");
|
|
125
|
+
return true;
|
|
126
|
+
}
|
|
127
|
+
catch (removeError) {
|
|
128
|
+
log(`Failed to remove SingletonLock: ${removeError.message}`);
|
|
129
|
+
return false;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
function isProcessRunning(pid) {
|
|
133
|
+
try {
|
|
134
|
+
process.kill(pid, 0);
|
|
135
|
+
return true;
|
|
136
|
+
}
|
|
137
|
+
catch {
|
|
138
|
+
return false;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
60
141
|
async function launchInteractiveBrowser(chromium, log, options) {
|
|
61
142
|
for (const channel of getInteractiveBrowserChannels(options?.platform)) {
|
|
62
143
|
try {
|
|
@@ -89,6 +170,27 @@ async function launchInteractiveBrowser(chromium, log, options) {
|
|
|
89
170
|
}
|
|
90
171
|
}
|
|
91
172
|
async function launchInteractiveBrowserContext(chromium, log, userDataDir, options) {
|
|
173
|
+
for (let attempt = 0; attempt <= PROFILE_LOCK_MAX_RETRIES; attempt++) {
|
|
174
|
+
try {
|
|
175
|
+
return await attemptLaunchPersistentContext(chromium, log, userDataDir, options);
|
|
176
|
+
}
|
|
177
|
+
catch (error) {
|
|
178
|
+
if (!isProfileLockError(error) || attempt === PROFILE_LOCK_MAX_RETRIES) {
|
|
179
|
+
throw error;
|
|
180
|
+
}
|
|
181
|
+
log(`Browser launch failed with profile lock error (attempt ${attempt + 1}/${PROFILE_LOCK_MAX_RETRIES + 1}): ${error.message}`);
|
|
182
|
+
const cleaned = cleanStaleSingletonLock(userDataDir, log);
|
|
183
|
+
if (!cleaned && attempt === PROFILE_LOCK_MAX_RETRIES - 1) {
|
|
184
|
+
throw new Error(`Browser profile at "${userDataDir}" is locked and could not be cleaned. ` +
|
|
185
|
+
`Try closing other browser instances or deleting "${(0, node_path_1.join)(userDataDir, "SingletonLock")}" manually.`);
|
|
186
|
+
}
|
|
187
|
+
await new Promise((resolve) => setTimeout(resolve, PROFILE_LOCK_RETRY_DELAY_MS));
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
// Unreachable, but satisfies TypeScript
|
|
191
|
+
throw new Error("Browser launch failed after all retries");
|
|
192
|
+
}
|
|
193
|
+
async function attemptLaunchPersistentContext(chromium, log, userDataDir, options) {
|
|
92
194
|
for (const channel of getInteractiveBrowserChannels(options?.platform)) {
|
|
93
195
|
try {
|
|
94
196
|
log(`Trying installed ${formatChannelName(channel)}...`);
|
|
@@ -100,6 +202,8 @@ async function launchInteractiveBrowserContext(chromium, log, userDataDir, optio
|
|
|
100
202
|
return context;
|
|
101
203
|
}
|
|
102
204
|
catch (error) {
|
|
205
|
+
if (isProfileLockError(error))
|
|
206
|
+
throw error;
|
|
103
207
|
log(`Could not launch ${formatChannelName(channel)}: ${error.message}`);
|
|
104
208
|
}
|
|
105
209
|
}
|
|
@@ -112,6 +216,8 @@ async function launchInteractiveBrowserContext(chromium, log, userDataDir, optio
|
|
|
112
216
|
return context;
|
|
113
217
|
}
|
|
114
218
|
catch (error) {
|
|
219
|
+
if (isProfileLockError(error))
|
|
220
|
+
throw error;
|
|
115
221
|
if (!isMissingPlaywrightBrowserError(error)) {
|
|
116
222
|
throw error;
|
|
117
223
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-runtime.js","sourceRoot":"","sources":["../src/browser-runtime.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;
|
|
1
|
+
{"version":3,"file":"browser-runtime.js","sourceRoot":"","sources":["../src/browser-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;AACA;;;;;;;;;GASG;;AAEH,qCAAwC;AACxC,yCAAoC;AACpC,yCAAoC;AACpC,uDAAgD;AAChD,6DAAmD;AACnD,2DAAuD;AAEvD,qEAA8D;AAO9D,MAAM,aAAa,GAAmB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AAE9D,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,2CAA2C,CAAC;KACxD,OAAO,CAAC,OAAO,CAAC,CAAC;AAgBpB,SAAS,cAAc,CAAC,OAAgB;IACtC,OAAO,OAAO;SACX,MAAM,CAAC,QAAQ,EAAE,8CAA8C,CAAC;SAChE,MAAM,CACL,SAAS,EACT,4DAA4D,CAC7D;SACA,MAAM,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Conversation protection — restricts edit/delete in sensitive conversations.
|
|
3
|
+
*
|
|
4
|
+
* Reads `TEAMS_PROTECTED_CONVERSATIONS` (comma-separated glob patterns).
|
|
5
|
+
* When a conversation label matches any pattern, edit and delete actions
|
|
6
|
+
* are blocked with an informative error.
|
|
7
|
+
*
|
|
8
|
+
* Glob wildcards: `*` matches any characters. Matching is case-insensitive.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Parse the `TEAMS_PROTECTED_CONVERSATIONS` env var (or a raw string)
|
|
12
|
+
* into a trimmed array of non-empty patterns.
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveProtectedPatterns(raw?: string | null): readonly string[];
|
|
15
|
+
/**
|
|
16
|
+
* Check whether a conversation label matches any of the protected patterns.
|
|
17
|
+
*
|
|
18
|
+
* Returns the first matching pattern, or `undefined` if no match.
|
|
19
|
+
*/
|
|
20
|
+
export declare function matchProtectedConversation(conversationLabel: string, patterns: readonly string[]): string | undefined;
|
|
21
|
+
//# sourceMappingURL=conversation-protection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-protection.d.ts","sourceRoot":"","sources":["../src/conversation-protection.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAClB,SAAS,MAAM,EAAE,CAMnB;AAcD;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,iBAAiB,EAAE,MAAM,EACzB,QAAQ,EAAE,SAAS,MAAM,EAAE,GAC1B,MAAM,GAAG,SAAS,CAOpB"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Conversation protection — restricts edit/delete in sensitive conversations.
|
|
4
|
+
*
|
|
5
|
+
* Reads `TEAMS_PROTECTED_CONVERSATIONS` (comma-separated glob patterns).
|
|
6
|
+
* When a conversation label matches any pattern, edit and delete actions
|
|
7
|
+
* are blocked with an informative error.
|
|
8
|
+
*
|
|
9
|
+
* Glob wildcards: `*` matches any characters. Matching is case-insensitive.
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.resolveProtectedPatterns = resolveProtectedPatterns;
|
|
13
|
+
exports.matchProtectedConversation = matchProtectedConversation;
|
|
14
|
+
/**
|
|
15
|
+
* Parse the `TEAMS_PROTECTED_CONVERSATIONS` env var (or a raw string)
|
|
16
|
+
* into a trimmed array of non-empty patterns.
|
|
17
|
+
*/
|
|
18
|
+
function resolveProtectedPatterns(raw) {
|
|
19
|
+
const value = raw ?? process.env.TEAMS_PROTECTED_CONVERSATIONS ?? "";
|
|
20
|
+
return value
|
|
21
|
+
.split(",")
|
|
22
|
+
.map((pattern) => pattern.trim())
|
|
23
|
+
.filter(Boolean);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Convert a glob pattern (supporting `*`) into a case-insensitive RegExp.
|
|
27
|
+
*
|
|
28
|
+
* Every character except `*` is escaped; `*` becomes `.*`.
|
|
29
|
+
*/
|
|
30
|
+
function globToRegExp(pattern) {
|
|
31
|
+
const escaped = pattern.replace(/[.*+?^${}()|[\]\\]/g, (character) => character === "*" ? ".*" : `\\${character}`);
|
|
32
|
+
return new RegExp(`^${escaped}$`, "i");
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Check whether a conversation label matches any of the protected patterns.
|
|
36
|
+
*
|
|
37
|
+
* Returns the first matching pattern, or `undefined` if no match.
|
|
38
|
+
*/
|
|
39
|
+
function matchProtectedConversation(conversationLabel, patterns) {
|
|
40
|
+
for (const pattern of patterns) {
|
|
41
|
+
if (globToRegExp(pattern).test(conversationLabel)) {
|
|
42
|
+
return pattern;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=conversation-protection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-protection.js","sourceRoot":"","sources":["../src/conversation-protection.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;AAMH,4DAQC;AAmBD,gEAUC;AAzCD;;;GAGG;AACH,SAAgB,wBAAwB,CACtC,GAAmB;IAEnB,MAAM,KAAK,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,EAAE,CAAC;IACrE,OAAO,KAAK;SACT,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SAChC,MAAM,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,OAAe;IACnC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,SAAS,EAAE,EAAE,CACnE,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAC5C,CAAC;IACF,OAAO,IAAI,MAAM,CAAC,IAAI,OAAO,GAAG,EAAE,GAAG,CAAC,CAAC;AACzC,CAAC;AAED;;;;GAIG;AACH,SAAgB,0BAA0B,CACxC,iBAAyB,EACzB,QAA2B;IAE3B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAClD,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-store.d.ts","sourceRoot":"","sources":["../src/credential-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAcH,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC9C,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;
|
|
1
|
+
{"version":3,"file":"credential-store.d.ts","sourceRoot":"","sources":["../src/credential-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAcH,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC9C,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAoSD,wBAAgB,qBAAqB,IAAI,eAAe,CASvD"}
|
package/dist/credential-store.js
CHANGED
|
@@ -36,7 +36,14 @@ class KeychainStore {
|
|
|
36
36
|
}
|
|
37
37
|
async load(account) {
|
|
38
38
|
try {
|
|
39
|
-
return (0, node_child_process_1.execFileSync)("security", [
|
|
39
|
+
return (0, node_child_process_1.execFileSync)("security", [
|
|
40
|
+
"find-generic-password",
|
|
41
|
+
"-a",
|
|
42
|
+
account,
|
|
43
|
+
"-s",
|
|
44
|
+
CREDENTIAL_SERVICE,
|
|
45
|
+
"-w",
|
|
46
|
+
], { encoding: "utf-8" }).trim();
|
|
40
47
|
}
|
|
41
48
|
catch {
|
|
42
49
|
return null;
|
|
@@ -158,7 +165,8 @@ class WinCredStore {
|
|
|
158
165
|
}
|
|
159
166
|
// ── Linux: secret-tool or file-based fallback ────────────────────────
|
|
160
167
|
function getLinuxStorePath() {
|
|
161
|
-
const configDir = process.env.XDG_CONFIG_HOME ??
|
|
168
|
+
const configDir = process.env.XDG_CONFIG_HOME ??
|
|
169
|
+
(0, node_path_1.join)(process.env.HOME ?? (0, node_os_1.homedir)(), ".config");
|
|
162
170
|
return (0, node_path_1.join)(configDir, "teams-api");
|
|
163
171
|
}
|
|
164
172
|
function hasSecretTool() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-store.js","sourceRoot":"","sources":["../src/credential-store.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;
|
|
1
|
+
{"version":3,"file":"credential-store.js","sourceRoot":"","sources":["../src/credential-store.ts"],"names":[],"mappings":"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"}
|
package/dist/emoji-map.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emoji-map.d.ts","sourceRoot":"","sources":["../src/emoji-map.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;
|
|
1
|
+
{"version":3,"file":"emoji-map.d.ts","sourceRoot":"","sources":["../src/emoji-map.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AA4KH;;GAEG;AACH,wBAAgB,aAAa,IAAI,IAAI,CAGpC;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAYxD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAYxD"}
|
package/dist/emoji-map.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emoji-map.js","sourceRoot":"","sources":["../src/emoji-map.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;
|
|
1
|
+
{"version":3,"file":"emoji-map.js","sourceRoot":"","sources":["../src/emoji-map.ts"],"names":[],"mappings":"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"}
|
package/dist/html-utils.d.ts
CHANGED
|
@@ -1,9 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Shared HTML entity decoding
|
|
2
|
+
* Shared HTML utilities for entity decoding, escaping, and Teams markup.
|
|
3
3
|
*
|
|
4
|
-
* Used by both the VTT transcript parser
|
|
5
|
-
*
|
|
4
|
+
* Used by both the VTT transcript parser, the action formatters,
|
|
5
|
+
* and the quote/inline-reply builder.
|
|
6
6
|
*/
|
|
7
7
|
/** Decode common HTML entities to plain text. */
|
|
8
8
|
export declare function decodeHtmlEntities(text: string): string;
|
|
9
|
+
/** Escape characters that are special in HTML to prevent injection. */
|
|
10
|
+
export declare function escapeHtml(text: string): string;
|
|
11
|
+
/**
|
|
12
|
+
* Build a Teams inline-quote blockquote HTML element.
|
|
13
|
+
*
|
|
14
|
+
* Teams represents inline quotes using a `<blockquote>` with Skype schema
|
|
15
|
+
* microdata attributes. This is the format Teams Desktop/Web produces when
|
|
16
|
+
* a user right-clicks a message and selects "Reply".
|
|
17
|
+
*
|
|
18
|
+
* @param messageId - The ID of the quoted message (OriginalArrivalTime).
|
|
19
|
+
* @param senderMri - Full MRI of the quoted message sender (e.g. "8:orgid:{uuid}").
|
|
20
|
+
* @param senderDisplayName - Display name of the quoted message sender.
|
|
21
|
+
* @param previewText - Plain-text preview of the quoted message content.
|
|
22
|
+
*/
|
|
23
|
+
export declare function buildQuoteHtml(options: {
|
|
24
|
+
messageId: string;
|
|
25
|
+
senderMri: string;
|
|
26
|
+
senderDisplayName: string;
|
|
27
|
+
previewText: string;
|
|
28
|
+
}): string;
|
|
9
29
|
//# sourceMappingURL=html-utils.d.ts.map
|
package/dist/html-utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-utils.d.ts","sourceRoot":"","sources":["../src/html-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,iDAAiD;AACjD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAWvD"}
|
|
1
|
+
{"version":3,"file":"html-utils.d.ts","sourceRoot":"","sources":["../src/html-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,iDAAiD;AACjD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAWvD;AAED,uEAAuE;AACvE,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAM/C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,MAAM,CAYT"}
|
package/dist/html-utils.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Shared HTML entity decoding
|
|
3
|
+
* Shared HTML utilities for entity decoding, escaping, and Teams markup.
|
|
4
4
|
*
|
|
5
|
-
* Used by both the VTT transcript parser
|
|
6
|
-
*
|
|
5
|
+
* Used by both the VTT transcript parser, the action formatters,
|
|
6
|
+
* and the quote/inline-reply builder.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.decodeHtmlEntities = decodeHtmlEntities;
|
|
10
|
+
exports.escapeHtml = escapeHtml;
|
|
11
|
+
exports.buildQuoteHtml = buildQuoteHtml;
|
|
10
12
|
/** Decode common HTML entities to plain text. */
|
|
11
13
|
function decodeHtmlEntities(text) {
|
|
12
14
|
return text
|
|
@@ -18,4 +20,33 @@ function decodeHtmlEntities(text) {
|
|
|
18
20
|
.replace(/​/g, "") // zero-width space
|
|
19
21
|
.replace(/&#(\d+);/g, (_, code) => String.fromCharCode(Number(code)));
|
|
20
22
|
}
|
|
23
|
+
/** Escape characters that are special in HTML to prevent injection. */
|
|
24
|
+
function escapeHtml(text) {
|
|
25
|
+
return text
|
|
26
|
+
.replace(/&/g, "&")
|
|
27
|
+
.replace(/</g, "<")
|
|
28
|
+
.replace(/>/g, ">")
|
|
29
|
+
.replace(/"/g, """);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Build a Teams inline-quote blockquote HTML element.
|
|
33
|
+
*
|
|
34
|
+
* Teams represents inline quotes using a `<blockquote>` with Skype schema
|
|
35
|
+
* microdata attributes. This is the format Teams Desktop/Web produces when
|
|
36
|
+
* a user right-clicks a message and selects "Reply".
|
|
37
|
+
*
|
|
38
|
+
* @param messageId - The ID of the quoted message (OriginalArrivalTime).
|
|
39
|
+
* @param senderMri - Full MRI of the quoted message sender (e.g. "8:orgid:{uuid}").
|
|
40
|
+
* @param senderDisplayName - Display name of the quoted message sender.
|
|
41
|
+
* @param previewText - Plain-text preview of the quoted message content.
|
|
42
|
+
*/
|
|
43
|
+
function buildQuoteHtml(options) {
|
|
44
|
+
const truncatedPreview = options.previewText.length > 200
|
|
45
|
+
? `${options.previewText.slice(0, 197)}...`
|
|
46
|
+
: options.previewText;
|
|
47
|
+
return (`<blockquote itemscope="" itemtype="http://schema.skype.com/Reply" itemid="${escapeHtml(options.messageId)}">` +
|
|
48
|
+
`<strong itemprop="mri" itemid="${escapeHtml(options.senderMri)}">${escapeHtml(options.senderDisplayName)}</strong>` +
|
|
49
|
+
`<p itemprop="preview">${escapeHtml(truncatedPreview)}</p>` +
|
|
50
|
+
`</blockquote>`);
|
|
51
|
+
}
|
|
21
52
|
//# sourceMappingURL=html-utils.js.map
|
package/dist/html-utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-utils.js","sourceRoot":"","sources":["../src/html-utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAGH,gDAWC;
|
|
1
|
+
{"version":3,"file":"html-utils.js","sourceRoot":"","sources":["../src/html-utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAGH,gDAWC;AAGD,gCAMC;AAcD,wCAiBC;AApDD,iDAAiD;AACjD,SAAgB,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI;SACR,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;SACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;SACrB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,mBAAmB;SAC3C,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,IAAY,EAAE,EAAE,CACxC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAClC,CAAC;AACN,CAAC;AAED,uEAAuE;AACvE,SAAgB,UAAU,CAAC,IAAY;IACrC,OAAO,IAAI;SACR,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,cAAc,CAAC,OAK9B;IACC,MAAM,gBAAgB,GACpB,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,GAAG;QAC9B,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK;QAC3C,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAE1B,OAAO,CACL,6EAA6E,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI;QAC9G,kCAAkC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,UAAU,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW;QACpH,yBAAyB,UAAU,CAAC,gBAAgB,CAAC,MAAM;QAC3D,eAAe,CAChB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { recordAuth as defaultRecordAuth } from "./telemetry.js";
|
|
2
|
+
import type { AuthLogFunction, AutoLoginOptions, InteractiveLoginOptions, ManualTokenOptions, SmartLoginOptions } from "./types.js";
|
|
3
|
+
interface AuthenticatedTeamsClient {
|
|
4
|
+
setEmail(email: string): void;
|
|
5
|
+
}
|
|
6
|
+
interface TeamsClientAuthFactory<Client extends AuthenticatedTeamsClient> {
|
|
7
|
+
create(options: AutoLoginOptions): Promise<Client>;
|
|
8
|
+
connect(options?: SmartLoginOptions): Promise<Client>;
|
|
9
|
+
fromInteractiveLogin(options?: InteractiveLoginOptions): Promise<Client>;
|
|
10
|
+
fromDebugSession(options?: ManualTokenOptions): Promise<Client>;
|
|
11
|
+
fromToken(skypeToken: string, region: string, bearerToken?: string, substrateToken?: string): Client;
|
|
12
|
+
}
|
|
13
|
+
type AuthRecord = Parameters<typeof defaultRecordAuth>[0];
|
|
14
|
+
type RecordAuthFunction = (record: AuthRecord) => void;
|
|
15
|
+
type CanAttemptAutoLoginFunction = () => boolean;
|
|
16
|
+
interface McpAuthEnvironment {
|
|
17
|
+
TEAMS_AUTO?: string;
|
|
18
|
+
TEAMS_BEARER_TOKEN?: string;
|
|
19
|
+
TEAMS_DEBUG?: string;
|
|
20
|
+
TEAMS_DEBUG_PORT?: string;
|
|
21
|
+
TEAMS_EMAIL?: string;
|
|
22
|
+
TEAMS_LOGIN?: string;
|
|
23
|
+
TEAMS_REGION?: string;
|
|
24
|
+
TEAMS_SUBSTRATE_TOKEN?: string;
|
|
25
|
+
TEAMS_TOKEN?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface McpAuthManagerOptions<Client extends AuthenticatedTeamsClient> {
|
|
28
|
+
canAttemptAutoLogin?: CanAttemptAutoLoginFunction;
|
|
29
|
+
clientFactory: TeamsClientAuthFactory<Client>;
|
|
30
|
+
environment?: McpAuthEnvironment;
|
|
31
|
+
log?: AuthLogFunction;
|
|
32
|
+
recordAuth?: RecordAuthFunction;
|
|
33
|
+
}
|
|
34
|
+
export declare class NeedsEmailError extends Error {
|
|
35
|
+
constructor();
|
|
36
|
+
}
|
|
37
|
+
export declare class AuthenticationInProgressError extends Error {
|
|
38
|
+
constructor();
|
|
39
|
+
}
|
|
40
|
+
export declare class McpAuthManager<Client extends AuthenticatedTeamsClient> {
|
|
41
|
+
private readonly canAttemptAutoLogin;
|
|
42
|
+
private readonly clientFactory;
|
|
43
|
+
private readonly environment;
|
|
44
|
+
private readonly log;
|
|
45
|
+
private readonly recordAuth;
|
|
46
|
+
private authenticationPromise;
|
|
47
|
+
private clientInstance;
|
|
48
|
+
constructor(options: McpAuthManagerOptions<Client>);
|
|
49
|
+
authenticateOnStartup(): Promise<void>;
|
|
50
|
+
getClient(toolEmail?: string): Promise<Client>;
|
|
51
|
+
private shouldUseTwoPhaseAuthentication;
|
|
52
|
+
private startAuthentication;
|
|
53
|
+
private authenticate;
|
|
54
|
+
}
|
|
55
|
+
export {};
|
|
56
|
+
//# sourceMappingURL=mcp-auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-auth.d.ts","sourceRoot":"","sources":["../src/mcp-auth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,IAAI,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAEpB,UAAU,wBAAwB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,UAAU,sBAAsB,CAAC,MAAM,SAAS,wBAAwB;IACtE,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,OAAO,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACtD,oBAAoB,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACzE,gBAAgB,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,SAAS,CACP,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,MAAM,GACtB,MAAM,CAAC;CACX;AAED,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1D,KAAK,kBAAkB,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;AACvD,KAAK,2BAA2B,GAAG,MAAM,OAAO,CAAC;AAEjD,UAAU,kBAAkB;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAcD,MAAM,WAAW,qBAAqB,CACpC,MAAM,SAAS,wBAAwB;IAEvC,mBAAmB,CAAC,EAAE,2BAA2B,CAAC;IAClD,aAAa,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC9C,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,GAAG,CAAC,EAAE,eAAe,CAAC;IACtB,UAAU,CAAC,EAAE,kBAAkB,CAAC;CACjC;AAED,qBAAa,eAAgB,SAAQ,KAAK;;CAQzC;AAED,qBAAa,6BAA8B,SAAQ,KAAK;;CAQvD;AAgCD,qBAAa,cAAc,CAAC,MAAM,SAAS,wBAAwB;IACjE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA8B;IAClE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAChD,OAAO,CAAC,qBAAqB,CAAgC;IAC7D,OAAO,CAAC,cAAc,CAAuB;gBAEjC,OAAO,EAAE,qBAAqB,CAAC,MAAM,CAAC;IAS5C,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBtC,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBpD,OAAO,CAAC,+BAA+B;IAwBvC,OAAO,CAAC,mBAAmB;YAab,YAAY;CAiG3B"}
|