@awolve/myoffice 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 +271 -0
- package/dist/auth/cache-plugin.d.ts +20 -0
- package/dist/auth/cache-plugin.d.ts.map +1 -0
- package/dist/auth/cache-plugin.js +49 -0
- package/dist/auth/cache-plugin.js.map +1 -0
- package/dist/auth/config.d.ts +40 -0
- package/dist/auth/config.d.ts.map +1 -0
- package/dist/auth/config.js +135 -0
- package/dist/auth/config.js.map +1 -0
- package/dist/auth/device-code.d.ts +2 -0
- package/dist/auth/device-code.d.ts.map +1 -0
- package/dist/auth/device-code.js +40 -0
- package/dist/auth/device-code.js.map +1 -0
- package/dist/auth/index.d.ts +4 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +4 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/login.d.ts +7 -0
- package/dist/auth/login.d.ts.map +1 -0
- package/dist/auth/login.js +22 -0
- package/dist/auth/login.js.map +1 -0
- package/dist/auth/token-manager.d.ts +4 -0
- package/dist/auth/token-manager.d.ts.map +1 -0
- package/dist/auth/token-manager.js +85 -0
- package/dist/auth/token-manager.js.map +1 -0
- package/dist/cli/formatter.d.ts +5 -0
- package/dist/cli/formatter.d.ts.map +1 -0
- package/dist/cli/formatter.js +317 -0
- package/dist/cli/formatter.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +973 -0
- package/dist/cli.js.map +1 -0
- package/dist/core/handler.d.ts +8 -0
- package/dist/core/handler.d.ts.map +1 -0
- package/dist/core/handler.js +327 -0
- package/dist/core/handler.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +924 -0
- package/dist/index.js.map +1 -0
- package/dist/tools/calendar.d.ts +124 -0
- package/dist/tools/calendar.d.ts.map +1 -0
- package/dist/tools/calendar.js +129 -0
- package/dist/tools/calendar.js.map +1 -0
- package/dist/tools/chats.d.ts +66 -0
- package/dist/tools/chats.d.ts.map +1 -0
- package/dist/tools/chats.js +102 -0
- package/dist/tools/chats.js.map +1 -0
- package/dist/tools/contacts.d.ts +138 -0
- package/dist/tools/contacts.d.ts.map +1 -0
- package/dist/tools/contacts.js +189 -0
- package/dist/tools/contacts.js.map +1 -0
- package/dist/tools/index.d.ts +10 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +10 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/mail.d.ts +138 -0
- package/dist/tools/mail.d.ts.map +1 -0
- package/dist/tools/mail.js +187 -0
- package/dist/tools/mail.js.map +1 -0
- package/dist/tools/onedrive.d.ts +125 -0
- package/dist/tools/onedrive.d.ts.map +1 -0
- package/dist/tools/onedrive.js +203 -0
- package/dist/tools/onedrive.js.map +1 -0
- package/dist/tools/planner.d.ts +390 -0
- package/dist/tools/planner.d.ts.map +1 -0
- package/dist/tools/planner.js +693 -0
- package/dist/tools/planner.js.map +1 -0
- package/dist/tools/sharepoint.d.ts +138 -0
- package/dist/tools/sharepoint.d.ts.map +1 -0
- package/dist/tools/sharepoint.js +156 -0
- package/dist/tools/sharepoint.js.map +1 -0
- package/dist/tools/tasks.d.ts +107 -0
- package/dist/tools/tasks.d.ts.map +1 -0
- package/dist/tools/tasks.js +131 -0
- package/dist/tools/tasks.js.map +1 -0
- package/dist/tools/teams.d.ts +66 -0
- package/dist/tools/teams.d.ts.map +1 -0
- package/dist/tools/teams.js +69 -0
- package/dist/tools/teams.js.map +1 -0
- package/dist/utils/graph-client.d.ts +15 -0
- package/dist/utils/graph-client.d.ts.map +1 -0
- package/dist/utils/graph-client.js +126 -0
- package/dist/utils/graph-client.js.map +1 -0
- package/dist/utils/signature.d.ts +2 -0
- package/dist/utils/signature.d.ts.map +1 -0
- package/dist/utils/signature.js +17 -0
- package/dist/utils/signature.js.map +1 -0
- package/dist/utils/version.d.ts +2 -0
- package/dist/utils/version.d.ts.map +1 -0
- package/dist/utils/version.js +20 -0
- package/dist/utils/version.js.map +1 -0
- package/package.json +55 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { PublicClientApplication } from '@azure/msal-node';
|
|
2
|
+
import { getAuthConfig, MSAL_CACHE_FILE, getTokenCache } from './config.js';
|
|
3
|
+
import { FileCachePlugin } from './cache-plugin.js';
|
|
4
|
+
let msalInstance = null;
|
|
5
|
+
let msalClientId = null;
|
|
6
|
+
const cachePlugin = new FileCachePlugin(MSAL_CACHE_FILE);
|
|
7
|
+
function getMsalInstance() {
|
|
8
|
+
const config = getAuthConfig();
|
|
9
|
+
// Recreate instance if client ID changed
|
|
10
|
+
if (msalInstance && msalClientId !== config.clientId) {
|
|
11
|
+
msalInstance = null;
|
|
12
|
+
}
|
|
13
|
+
if (!msalInstance) {
|
|
14
|
+
if (!config.clientId) {
|
|
15
|
+
throw new Error('No client ID configured. Run: myoffice login --client-id <your-azure-app-client-id>\n' +
|
|
16
|
+
'Or set M365_CLIENT_ID environment variable.');
|
|
17
|
+
}
|
|
18
|
+
msalClientId = config.clientId;
|
|
19
|
+
msalInstance = new PublicClientApplication({
|
|
20
|
+
auth: {
|
|
21
|
+
clientId: config.clientId,
|
|
22
|
+
authority: `https://login.microsoftonline.com/${config.tenantId}`,
|
|
23
|
+
},
|
|
24
|
+
cache: {
|
|
25
|
+
cachePlugin,
|
|
26
|
+
},
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
return msalInstance;
|
|
30
|
+
}
|
|
31
|
+
export async function getAccessToken() {
|
|
32
|
+
const pca = getMsalInstance();
|
|
33
|
+
// Get accounts from MSAL's persisted cache
|
|
34
|
+
const accounts = await pca.getTokenCache().getAllAccounts();
|
|
35
|
+
if (accounts.length === 0) {
|
|
36
|
+
// No accounts in MSAL cache - check legacy token.json for migration hint
|
|
37
|
+
const legacyCache = getTokenCache();
|
|
38
|
+
if (legacyCache?.account) {
|
|
39
|
+
console.error('[Auth] Found legacy token.json but no MSAL cache.');
|
|
40
|
+
console.error('[Auth] Please re-authenticate to migrate to new cache format.');
|
|
41
|
+
}
|
|
42
|
+
throw new Error('Not authenticated. Please run "npm run login" in the myoffice-mcp directory.');
|
|
43
|
+
}
|
|
44
|
+
// Use the first account (typically there's only one for personal use)
|
|
45
|
+
const account = accounts[0];
|
|
46
|
+
// Try silent token acquisition (MSAL handles refresh automatically)
|
|
47
|
+
try {
|
|
48
|
+
const config = getAuthConfig();
|
|
49
|
+
const silentRequest = {
|
|
50
|
+
scopes: config.scopes,
|
|
51
|
+
account: account,
|
|
52
|
+
};
|
|
53
|
+
const result = await pca.acquireTokenSilent(silentRequest);
|
|
54
|
+
return result.accessToken;
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
// Silent refresh failed - log the actual error
|
|
58
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
59
|
+
console.error('[Auth] Silent token acquisition FAILED:', errorMessage);
|
|
60
|
+
console.error('[Auth] Please re-authenticate by running: npm run login');
|
|
61
|
+
throw new Error(`Token acquisition failed: ${errorMessage}. ` +
|
|
62
|
+
`Please re-authenticate by running 'npm run login' in the myoffice-mcp directory.`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
export async function isAuthenticated() {
|
|
66
|
+
try {
|
|
67
|
+
const pca = getMsalInstance();
|
|
68
|
+
const accounts = await pca.getTokenCache().getAllAccounts();
|
|
69
|
+
return accounts.length > 0;
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
export async function getCurrentUser() {
|
|
76
|
+
try {
|
|
77
|
+
const pca = getMsalInstance();
|
|
78
|
+
const accounts = await pca.getTokenCache().getAllAccounts();
|
|
79
|
+
return accounts[0]?.username || null;
|
|
80
|
+
}
|
|
81
|
+
catch {
|
|
82
|
+
return null;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=token-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-manager.js","sourceRoot":"","sources":["../../src/auth/token-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../src/cli/formatter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAoWH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAsErE"}
|
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Output formatter for CLI - provides human-readable output
|
|
3
|
+
*/
|
|
4
|
+
// Helper to truncate strings
|
|
5
|
+
function truncate(str, maxLen) {
|
|
6
|
+
if (!str)
|
|
7
|
+
return '';
|
|
8
|
+
if (str.length <= maxLen)
|
|
9
|
+
return str;
|
|
10
|
+
return str.substring(0, maxLen - 3) + '...';
|
|
11
|
+
}
|
|
12
|
+
// Helper to format date
|
|
13
|
+
function formatDate(dateStr) {
|
|
14
|
+
if (!dateStr)
|
|
15
|
+
return '';
|
|
16
|
+
try {
|
|
17
|
+
const date = new Date(dateStr);
|
|
18
|
+
return date.toLocaleString('en-US', {
|
|
19
|
+
month: 'short',
|
|
20
|
+
day: 'numeric',
|
|
21
|
+
hour: 'numeric',
|
|
22
|
+
minute: '2-digit',
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return dateStr;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
// Helper to pad string
|
|
30
|
+
function pad(str, len) {
|
|
31
|
+
if (str.length >= len)
|
|
32
|
+
return str.substring(0, len);
|
|
33
|
+
return str + ' '.repeat(len - str.length);
|
|
34
|
+
}
|
|
35
|
+
// Format email list
|
|
36
|
+
function formatMailList(data) {
|
|
37
|
+
const emails = data.value;
|
|
38
|
+
if (!emails || emails.length === 0) {
|
|
39
|
+
return 'No emails found.';
|
|
40
|
+
}
|
|
41
|
+
const lines = [];
|
|
42
|
+
lines.push(`${pad('FROM', 25)} ${pad('SUBJECT', 40)} ${pad('DATE', 16)} READ`);
|
|
43
|
+
lines.push('-'.repeat(90));
|
|
44
|
+
for (const email of emails) {
|
|
45
|
+
const from = truncate(email.from?.emailAddress?.address || '', 24);
|
|
46
|
+
const subject = truncate(email.subject || '(no subject)', 39);
|
|
47
|
+
const date = formatDate(email.receivedDateTime);
|
|
48
|
+
const read = email.isRead ? '✓' : '○';
|
|
49
|
+
lines.push(`${pad(from, 25)} ${pad(subject, 40)} ${pad(date, 16)} ${read}`);
|
|
50
|
+
}
|
|
51
|
+
const unreadCount = emails.filter(e => !e.isRead).length;
|
|
52
|
+
lines.push('');
|
|
53
|
+
lines.push(`${emails.length} emails (${unreadCount} unread)`);
|
|
54
|
+
return lines.join('\n');
|
|
55
|
+
}
|
|
56
|
+
// Format calendar events
|
|
57
|
+
function formatCalendarList(data) {
|
|
58
|
+
const events = data.value;
|
|
59
|
+
if (!events || events.length === 0) {
|
|
60
|
+
return 'No events found.';
|
|
61
|
+
}
|
|
62
|
+
const lines = [];
|
|
63
|
+
lines.push(`${pad('DATE/TIME', 20)} ${pad('SUBJECT', 35)} ${pad('LOCATION', 25)}`);
|
|
64
|
+
lines.push('-'.repeat(85));
|
|
65
|
+
for (const event of events) {
|
|
66
|
+
const dateTime = formatDate(event.start?.dateTime);
|
|
67
|
+
const subject = truncate(event.subject || '(no subject)', 34);
|
|
68
|
+
let location = event.location?.displayName || '';
|
|
69
|
+
if (event.isOnlineMeeting && !location)
|
|
70
|
+
location = 'Teams Meeting';
|
|
71
|
+
location = truncate(location, 24);
|
|
72
|
+
lines.push(`${pad(dateTime, 20)} ${pad(subject, 35)} ${pad(location, 25)}`);
|
|
73
|
+
}
|
|
74
|
+
lines.push('');
|
|
75
|
+
lines.push(`${events.length} events`);
|
|
76
|
+
return lines.join('\n');
|
|
77
|
+
}
|
|
78
|
+
// Format task lists
|
|
79
|
+
function formatTaskLists(data) {
|
|
80
|
+
const lists = data.value;
|
|
81
|
+
if (!lists || lists.length === 0) {
|
|
82
|
+
return 'No task lists found.';
|
|
83
|
+
}
|
|
84
|
+
const lines = [];
|
|
85
|
+
lines.push(`${pad('NAME', 40)} ID`);
|
|
86
|
+
lines.push('-'.repeat(80));
|
|
87
|
+
for (const list of lists) {
|
|
88
|
+
const name = truncate(list.displayName || '', 39);
|
|
89
|
+
const id = truncate(list.id || '', 38);
|
|
90
|
+
lines.push(`${pad(name, 40)} ${id}`);
|
|
91
|
+
}
|
|
92
|
+
lines.push('');
|
|
93
|
+
lines.push(`${lists.length} task lists`);
|
|
94
|
+
return lines.join('\n');
|
|
95
|
+
}
|
|
96
|
+
// Format tasks
|
|
97
|
+
function formatTasks(data) {
|
|
98
|
+
const tasks = data.value;
|
|
99
|
+
if (!tasks || tasks.length === 0) {
|
|
100
|
+
return 'No tasks found.';
|
|
101
|
+
}
|
|
102
|
+
const lines = [];
|
|
103
|
+
lines.push(`${pad('STATUS', 8)} ${pad('TITLE', 40)} ${pad('DUE', 16)} IMP`);
|
|
104
|
+
lines.push('-'.repeat(75));
|
|
105
|
+
for (const task of tasks) {
|
|
106
|
+
const status = task.status === 'completed' ? '✓' : '○';
|
|
107
|
+
const title = truncate(task.title || '', 39);
|
|
108
|
+
const due = task.dueDateTime?.dateTime ? formatDate(task.dueDateTime.dateTime) : '';
|
|
109
|
+
const imp = task.importance === 'high' ? '!' : task.importance === 'low' ? '↓' : '';
|
|
110
|
+
lines.push(`${pad(status, 8)} ${pad(title, 40)} ${pad(due, 16)} ${imp}`);
|
|
111
|
+
}
|
|
112
|
+
lines.push('');
|
|
113
|
+
const completed = tasks.filter(t => t.status === 'completed').length;
|
|
114
|
+
lines.push(`${tasks.length} tasks (${completed} completed)`);
|
|
115
|
+
return lines.join('\n');
|
|
116
|
+
}
|
|
117
|
+
// Format files/folders
|
|
118
|
+
function formatFiles(data) {
|
|
119
|
+
const items = data.value;
|
|
120
|
+
if (!items || items.length === 0) {
|
|
121
|
+
return 'No files found.';
|
|
122
|
+
}
|
|
123
|
+
const lines = [];
|
|
124
|
+
lines.push(`${pad('TYPE', 6)} ${pad('NAME', 40)} ${pad('SIZE', 12)} MODIFIED`);
|
|
125
|
+
lines.push('-'.repeat(85));
|
|
126
|
+
for (const item of items) {
|
|
127
|
+
const type = item.folder ? '📁' : '📄';
|
|
128
|
+
const name = truncate(item.name || '', 39);
|
|
129
|
+
const size = item.folder ? '' : formatSize(item.size || 0);
|
|
130
|
+
const modified = formatDate(item.lastModifiedDateTime);
|
|
131
|
+
lines.push(`${pad(type, 6)} ${pad(name, 40)} ${pad(size, 12)} ${modified}`);
|
|
132
|
+
}
|
|
133
|
+
lines.push('');
|
|
134
|
+
lines.push(`${items.length} items`);
|
|
135
|
+
return lines.join('\n');
|
|
136
|
+
}
|
|
137
|
+
function formatSize(bytes) {
|
|
138
|
+
if (bytes === 0)
|
|
139
|
+
return '0 B';
|
|
140
|
+
const units = ['B', 'KB', 'MB', 'GB'];
|
|
141
|
+
const i = Math.floor(Math.log(bytes) / Math.log(1024));
|
|
142
|
+
return (bytes / Math.pow(1024, i)).toFixed(i > 0 ? 1 : 0) + ' ' + units[i];
|
|
143
|
+
}
|
|
144
|
+
// Format teams list
|
|
145
|
+
function formatTeams(data) {
|
|
146
|
+
const teams = data.value;
|
|
147
|
+
if (!teams || teams.length === 0) {
|
|
148
|
+
return 'No teams found.';
|
|
149
|
+
}
|
|
150
|
+
const lines = [];
|
|
151
|
+
lines.push(`${pad('NAME', 35)} DESCRIPTION`);
|
|
152
|
+
lines.push('-'.repeat(80));
|
|
153
|
+
for (const team of teams) {
|
|
154
|
+
const name = truncate(team.displayName || '', 34);
|
|
155
|
+
const desc = truncate(team.description || '', 43);
|
|
156
|
+
lines.push(`${pad(name, 35)} ${desc}`);
|
|
157
|
+
}
|
|
158
|
+
lines.push('');
|
|
159
|
+
lines.push(`${teams.length} teams`);
|
|
160
|
+
return lines.join('\n');
|
|
161
|
+
}
|
|
162
|
+
// Format chats list
|
|
163
|
+
function formatChats(data) {
|
|
164
|
+
const chats = data.value;
|
|
165
|
+
if (!chats || chats.length === 0) {
|
|
166
|
+
return 'No chats found.';
|
|
167
|
+
}
|
|
168
|
+
const lines = [];
|
|
169
|
+
lines.push(`${pad('TYPE', 10)} ${pad('TOPIC', 40)} LAST ACTIVE`);
|
|
170
|
+
lines.push('-'.repeat(75));
|
|
171
|
+
for (const chat of chats) {
|
|
172
|
+
const type = chat.chatType || 'unknown';
|
|
173
|
+
const topic = truncate(chat.topic || '(unnamed chat)', 39);
|
|
174
|
+
const lastActive = formatDate(chat.lastUpdatedDateTime);
|
|
175
|
+
lines.push(`${pad(type, 10)} ${pad(topic, 40)} ${lastActive}`);
|
|
176
|
+
}
|
|
177
|
+
lines.push('');
|
|
178
|
+
lines.push(`${chats.length} chats`);
|
|
179
|
+
return lines.join('\n');
|
|
180
|
+
}
|
|
181
|
+
// Format planner plans
|
|
182
|
+
function formatPlans(data) {
|
|
183
|
+
const plans = data.value;
|
|
184
|
+
if (!plans || plans.length === 0) {
|
|
185
|
+
return 'No plans found.';
|
|
186
|
+
}
|
|
187
|
+
const lines = [];
|
|
188
|
+
lines.push(`${pad('TITLE', 45)} ID`);
|
|
189
|
+
lines.push('-'.repeat(90));
|
|
190
|
+
for (const plan of plans) {
|
|
191
|
+
const title = truncate(plan.title || '', 44);
|
|
192
|
+
const id = truncate(plan.id || '', 43);
|
|
193
|
+
lines.push(`${pad(title, 45)} ${id}`);
|
|
194
|
+
}
|
|
195
|
+
lines.push('');
|
|
196
|
+
lines.push(`${plans.length} plans`);
|
|
197
|
+
return lines.join('\n');
|
|
198
|
+
}
|
|
199
|
+
// Format planner tasks
|
|
200
|
+
function formatPlannerTasks(data) {
|
|
201
|
+
const tasks = data.value;
|
|
202
|
+
if (!tasks || tasks.length === 0) {
|
|
203
|
+
return 'No tasks found.';
|
|
204
|
+
}
|
|
205
|
+
const lines = [];
|
|
206
|
+
lines.push(`${pad('STATUS', 8)} ${pad('TITLE', 40)} ${pad('DUE', 16)} PRI`);
|
|
207
|
+
lines.push('-'.repeat(75));
|
|
208
|
+
for (const task of tasks) {
|
|
209
|
+
const pct = task.percentComplete || 0;
|
|
210
|
+
const status = pct === 100 ? '✓' : pct > 0 ? '◐' : '○';
|
|
211
|
+
const title = truncate(task.title || '', 39);
|
|
212
|
+
const due = task.dueDateTime ? formatDate(task.dueDateTime) : '';
|
|
213
|
+
const pri = task.priority === 1 ? '!!!' : task.priority === 3 ? '!!' : task.priority === 5 ? '!' : '';
|
|
214
|
+
lines.push(`${pad(status, 8)} ${pad(title, 40)} ${pad(due, 16)} ${pri}`);
|
|
215
|
+
}
|
|
216
|
+
lines.push('');
|
|
217
|
+
const completed = tasks.filter(t => t.percentComplete === 100).length;
|
|
218
|
+
lines.push(`${tasks.length} tasks (${completed} completed)`);
|
|
219
|
+
return lines.join('\n');
|
|
220
|
+
}
|
|
221
|
+
// Format auth status
|
|
222
|
+
function formatAuthStatus(data) {
|
|
223
|
+
if (data.authenticated && data.user) {
|
|
224
|
+
return `Authenticated as: ${data.user.displayName || data.user.mail || 'Unknown'}`;
|
|
225
|
+
}
|
|
226
|
+
return 'Not authenticated. Run: myoffice login';
|
|
227
|
+
}
|
|
228
|
+
// Format contacts
|
|
229
|
+
function formatContacts(data) {
|
|
230
|
+
const contacts = data.value;
|
|
231
|
+
if (!contacts || contacts.length === 0) {
|
|
232
|
+
return 'No contacts found.';
|
|
233
|
+
}
|
|
234
|
+
const lines = [];
|
|
235
|
+
lines.push(`${pad('NAME', 30)} ${pad('EMAIL', 30)} COMPANY`);
|
|
236
|
+
lines.push('-'.repeat(85));
|
|
237
|
+
for (const contact of contacts) {
|
|
238
|
+
const name = truncate(contact.displayName || '', 29);
|
|
239
|
+
const email = truncate(contact.emailAddresses?.[0]?.address || '', 29);
|
|
240
|
+
const company = truncate(contact.companyName || '', 23);
|
|
241
|
+
lines.push(`${pad(name, 30)} ${pad(email, 30)} ${company}`);
|
|
242
|
+
}
|
|
243
|
+
lines.push('');
|
|
244
|
+
lines.push(`${contacts.length} contacts`);
|
|
245
|
+
return lines.join('\n');
|
|
246
|
+
}
|
|
247
|
+
// Generic object formatter
|
|
248
|
+
function formatObject(data) {
|
|
249
|
+
return JSON.stringify(data, null, 2);
|
|
250
|
+
}
|
|
251
|
+
// Main format function
|
|
252
|
+
export function formatOutput(data, toolName) {
|
|
253
|
+
if (data === null || data === undefined) {
|
|
254
|
+
return 'No data';
|
|
255
|
+
}
|
|
256
|
+
// Try to detect the data type and format appropriately
|
|
257
|
+
const obj = data;
|
|
258
|
+
// Check for specific tool outputs
|
|
259
|
+
if (toolName === 'auth_status') {
|
|
260
|
+
return formatAuthStatus(data);
|
|
261
|
+
}
|
|
262
|
+
// Check for list responses (most Graph API responses have a 'value' array)
|
|
263
|
+
if (Array.isArray(obj.value)) {
|
|
264
|
+
// Try to determine the type of list
|
|
265
|
+
const items = obj.value;
|
|
266
|
+
if (items.length === 0) {
|
|
267
|
+
return 'No items found.';
|
|
268
|
+
}
|
|
269
|
+
const sample = items[0];
|
|
270
|
+
// Email detection
|
|
271
|
+
if ('receivedDateTime' in sample && 'from' in sample) {
|
|
272
|
+
return formatMailList(obj);
|
|
273
|
+
}
|
|
274
|
+
// Calendar event detection
|
|
275
|
+
if ('start' in sample && 'end' in sample && 'subject' in sample) {
|
|
276
|
+
return formatCalendarList(obj);
|
|
277
|
+
}
|
|
278
|
+
// To Do task list detection
|
|
279
|
+
if ('displayName' in sample && !('folder' in sample) && !('emailAddresses' in sample) && !('members' in sample)) {
|
|
280
|
+
// Could be task lists or teams - check for wellknownListName
|
|
281
|
+
if ('wellknownListName' in sample || items.every(i => 'displayName' in i && !('description' in i))) {
|
|
282
|
+
return formatTaskLists(obj);
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
// To Do tasks detection
|
|
286
|
+
if ('status' in sample && 'title' in sample && !('percentComplete' in sample)) {
|
|
287
|
+
return formatTasks(obj);
|
|
288
|
+
}
|
|
289
|
+
// OneDrive/SharePoint files detection
|
|
290
|
+
if ('name' in sample && ('folder' in sample || 'file' in sample || 'size' in sample)) {
|
|
291
|
+
return formatFiles(obj);
|
|
292
|
+
}
|
|
293
|
+
// Teams detection
|
|
294
|
+
if ('displayName' in sample && 'description' in sample && !('emailAddresses' in sample)) {
|
|
295
|
+
return formatTeams(obj);
|
|
296
|
+
}
|
|
297
|
+
// Chats detection
|
|
298
|
+
if ('chatType' in sample) {
|
|
299
|
+
return formatChats(obj);
|
|
300
|
+
}
|
|
301
|
+
// Planner plans detection
|
|
302
|
+
if ('title' in sample && 'owner' in sample && !('percentComplete' in sample)) {
|
|
303
|
+
return formatPlans(obj);
|
|
304
|
+
}
|
|
305
|
+
// Planner tasks detection
|
|
306
|
+
if ('percentComplete' in sample && 'title' in sample) {
|
|
307
|
+
return formatPlannerTasks(obj);
|
|
308
|
+
}
|
|
309
|
+
// Contacts detection
|
|
310
|
+
if ('emailAddresses' in sample) {
|
|
311
|
+
return formatContacts(obj);
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
// Default: JSON output
|
|
315
|
+
return formatObject(data);
|
|
316
|
+
}
|
|
317
|
+
//# sourceMappingURL=formatter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../src/cli/formatter.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
|