microsoft-graph-client 1.0.5 → 1.0.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.md ADDED
@@ -0,0 +1,152 @@
1
+ # Microsoft Graph Client
2
+
3
+ TypeScript client for Microsoft Graph API with built-in authentication.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install microsoft-graph-client
9
+ ```
10
+
11
+ ## Usage
12
+
13
+ ```typescript
14
+ import { GraphClient } from 'microsoft-graph-client';
15
+
16
+ // Create client with pre-seeded auth (for production/CI)
17
+ const client = new GraphClient({
18
+ clientId: process.env.MS_GRAPH_CLIENT_ID,
19
+ tenantId: process.env.MS_GRAPH_TENANT_ID,
20
+ authRecord: process.env.MS_GRAPH_AUTH_RECORD,
21
+ tokenCache: process.env.MS_GRAPH_TOKEN_CACHE,
22
+ });
23
+
24
+ await client.initialize();
25
+
26
+ // Get current user
27
+ const me = await client.users.getCurrentUser();
28
+
29
+ // Search chats by member name
30
+ const result = await client.chats.search({ memberName: 'John' });
31
+
32
+ // Send a message to a chat
33
+ await client.messages.sendChatMessage({
34
+ chatId: '19:xxx@thread.v2',
35
+ message: 'Hello!',
36
+ });
37
+
38
+ // Get messages from a chat
39
+ const messages = await client.messages.getChatMessages({
40
+ chatId: '19:xxx@thread.v2',
41
+ limit: 20,
42
+ });
43
+
44
+ // Send mail
45
+ await client.mail.send({
46
+ to: [{ emailAddress: { address: 'user@example.com' } }],
47
+ subject: 'Hello',
48
+ body: { content: 'Message body', contentType: 'text' },
49
+ });
50
+
51
+ // Get calendar events
52
+ const events = await client.calendar.getEvents({
53
+ startDateTime: '2025-01-01T00:00:00Z',
54
+ endDateTime: '2025-01-31T23:59:59Z',
55
+ });
56
+
57
+ // Download SharePoint file
58
+ const file = await client.files.download({
59
+ siteHost: 'company.sharepoint.com',
60
+ sitePath: '/sites/TeamSite',
61
+ filePath: '/Documents/report.pdf',
62
+ });
63
+
64
+ // Get meeting transcripts
65
+ const transcripts = await client.transcripts.list({ meetingId: 'xxx' });
66
+ ```
67
+
68
+ ## API Structure
69
+
70
+ | Domain | Methods |
71
+ |--------|---------|
72
+ | `client.users` | `getCurrentUser`, `get`, `search`, `setPresence`, `setPreferredPresence` |
73
+ | `client.chats` | `get`, `search`, `create` |
74
+ | `client.messages` | `get`, `getChatMessages`, `sendChatMessage`, `updateChatMessage`, `search`, `setReaction`, `unsetReaction` |
75
+ | `client.mail` | `list`, `send` |
76
+ | `client.calendar` | `getEvents`, `createEvent`, `findMeetingTimes`, `cancelEvent` |
77
+ | `client.files` | `download`, `upload`, `update`, `grantPermission` |
78
+ | `client.transcripts` | `getMeetingByJoinUrl`, `list`, `getContent` |
79
+ | `client.subscriptions` | `create`, `renew`, `delete`, `list`, `get` |
80
+
81
+ ## Authentication
82
+
83
+ The client supports two authentication modes:
84
+
85
+ ### 1. Device Code Auth (Interactive)
86
+
87
+ For local development or first-time setup:
88
+
89
+ ```typescript
90
+ const client = new GraphClient({
91
+ clientId: 'your-app-client-id',
92
+ tenantId: 'your-tenant-id',
93
+ });
94
+
95
+ // This will prompt you to visit a URL and enter a code
96
+ const result = await client.authenticate((info) => {
97
+ console.log(info.message);
98
+ });
99
+
100
+ // Save these for later use
101
+ console.log('Auth Record:', result.authRecord);
102
+ console.log('Token Cache:', result.tokenCache);
103
+ ```
104
+
105
+ ### 2. Pre-seeded Auth (Non-interactive)
106
+
107
+ For production deployments with credentials from environment:
108
+
109
+ ```typescript
110
+ const client = new GraphClient({
111
+ clientId: process.env.MS_GRAPH_CLIENT_ID,
112
+ tenantId: process.env.MS_GRAPH_TENANT_ID,
113
+ authRecord: process.env.MS_GRAPH_AUTH_RECORD,
114
+ tokenCache: process.env.MS_GRAPH_TOKEN_CACHE,
115
+ });
116
+
117
+ await client.initialize();
118
+ ```
119
+
120
+ ### Environment Variables
121
+
122
+ ```bash
123
+ MS_GRAPH_CLIENT_ID=your-azure-app-client-id
124
+ MS_GRAPH_TENANT_ID=your-azure-tenant-id
125
+ MS_GRAPH_AUTH_RECORD={"homeAccountId":"...","environment":"..."}
126
+ MS_GRAPH_TOKEN_CACHE={"Account":{"..."},"RefreshToken":{"..."}}
127
+ ```
128
+
129
+ ### Azure App Registration
130
+
131
+ 1. Go to [Azure Portal](https://portal.azure.com) > Azure Active Directory > App registrations
132
+ 2. Create a new registration with "Accounts in this organizational directory only"
133
+ 3. Add a Mobile/Desktop redirect URI: `http://localhost`
134
+ 4. Under API permissions, add Microsoft Graph delegated permissions as needed
135
+ 5. Copy the Application (client) ID and Directory (tenant) ID
136
+
137
+ ## Raw SDK Access
138
+
139
+ For operations not covered by the typed APIs:
140
+
141
+ ```typescript
142
+ const sdkClient = await client.getSDKClient();
143
+ const result = await sdkClient.api('/me/photo/$value').get();
144
+ ```
145
+
146
+ ## Requirements
147
+
148
+ - Node.js >= 22.0.0
149
+
150
+ ## License
151
+
152
+ MIT
@@ -1 +1 @@
1
- {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/api/files.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,KAAK,EACV,4BAA4B,EAC5B,4BAA4B,EAC5B,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,mBAAmB,CAAC;AAG3B;;GAEG;AACH,qBAAa,QAAS,SAAQ,OAAO;IACnC;;OAEG;IACU,QAAQ,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,4BAA4B,CAAC;IA0BlG;;OAEG;IACU,MAAM,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAwBxF;;OAEG;IACU,MAAM,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAY5F;;OAEG;IACU,eAAe,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;CAQ/E"}
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/api/files.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,KAAK,EACV,4BAA4B,EAC5B,4BAA4B,EAC5B,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,mBAAmB,CAAC;AAG3B;;GAEG;AACH,qBAAa,QAAS,SAAQ,OAAO;IACnC;;OAEG;IACU,QAAQ,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,4BAA4B,CAAC;IA0BlG;;OAEG;IACU,MAAM,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IA2BxF;;OAEG;IACU,MAAM,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAY5F;;OAEG;IACU,eAAe,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;CAQ/E"}
package/dist/api/files.js CHANGED
@@ -36,8 +36,10 @@ export class FilesApi extends BaseApi {
36
36
  async upload(params) {
37
37
  const filename = basename(params.filePath);
38
38
  const fileContent = await readFile(params.filePath);
39
+ // Build path, normalizing slashes
40
+ const uploadPath = `${params.destinationPath}/${filename}`.replace(/\/+/g, '/');
39
41
  // Step 1: Upload file to OneDrive
40
- const uploadResponse = (await this.client.api(`/me/drive/root:/${filename}:/content`).put(fileContent));
42
+ const uploadResponse = (await this.client.api(`/me/drive/root:${uploadPath}:/content`).put(fileContent));
41
43
  // Step 2: Create a sharing link
42
44
  const linkResponse = (await this.client.api(`/me/drive/items/${uploadResponse.id}/createLink`).post({
43
45
  type: 'view',
@@ -1 +1 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/api/files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/api/files.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ export interface DownloadSharePointFileResult {
10
10
  }
11
11
  export interface UploadToSharePointParams {
12
12
  filePath: string;
13
+ destinationPath: string;
13
14
  }
14
15
  export interface UploadToSharePointResult {
15
16
  itemId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/types/file.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,4BAA4B;IAC3C,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/types/file.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,4BAA4B;IAC3C,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "microsoft-graph-client",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "publish": true,
5
5
  "description": "TypeScript client library for Microsoft Graph API with built-in authentication",
6
6
  "type": "module",