@robinpath/teams
Advanced tools
+36
-7
| { | ||
| "name": "@robinpath/teams", | ||
| "version": "0.1.0", | ||
| "publishConfig": { "access": "public" }, | ||
| "version": "0.1.1", | ||
| "publishConfig": { | ||
| "access": "public" | ||
| }, | ||
| "type": "module", | ||
| "main": "dist/index.js", | ||
| "types": "dist/index.d.ts", | ||
| "exports": { ".": { "import": "./dist/index.js", "types": "./dist/index.d.ts" } }, | ||
| "files": ["dist"], | ||
| "scripts": { "build": "tsc" }, | ||
| "peerDependencies": { "@wiredwp/robinpath": ">=0.20.0" }, | ||
| "devDependencies": { "@wiredwp/robinpath": "^0.30.1", "typescript": "^5.6.0" } | ||
| "exports": { | ||
| ".": { | ||
| "import": "./dist/index.js", | ||
| "types": "./dist/index.d.ts" | ||
| } | ||
| }, | ||
| "files": [ | ||
| "dist" | ||
| ], | ||
| "scripts": { | ||
| "build": "tsc" | ||
| }, | ||
| "peerDependencies": { | ||
| "@robinpath/core": ">=0.20.0" | ||
| }, | ||
| "devDependencies": { | ||
| "@robinpath/core": "^0.30.1", | ||
| "typescript": "^5.6.0" | ||
| }, | ||
| "description": "Teams module for RobinPath.", | ||
| "keywords": [ | ||
| "teams", | ||
| "messaging" | ||
| ], | ||
| "license": "MIT", | ||
| "robinpath": { | ||
| "category": "messaging", | ||
| "type": "integration", | ||
| "auth": "bearer-token", | ||
| "functionCount": 10, | ||
| "baseUrl": "https://graph.microsoft.com" | ||
| } | ||
| } |
| import type { ModuleAdapter } from "@wiredwp/robinpath"; | ||
| declare const TeamsModule: ModuleAdapter; | ||
| export default TeamsModule; | ||
| export { TeamsModule }; | ||
| export { TeamsFunctions, TeamsFunctionMetadata, TeamsModuleMetadata } from "./teams.js"; | ||
| //# sourceMappingURL=index.d.ts.map |
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,QAAA,MAAM,WAAW,EAAE,aAMlB,CAAC;AAEF,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC"} |
| import { TeamsFunctions, TeamsFunctionMetadata, TeamsModuleMetadata } from "./teams.js"; | ||
| const TeamsModule = { | ||
| name: "teams", | ||
| functions: TeamsFunctions, | ||
| functionMetadata: TeamsFunctionMetadata, | ||
| moduleMetadata: TeamsModuleMetadata, | ||
| global: false, | ||
| }; // as ModuleAdapter | ||
| export default TeamsModule; | ||
| export { TeamsModule }; | ||
| export { TeamsFunctions, TeamsFunctionMetadata, TeamsModuleMetadata } from "./teams.js"; | ||
| //# sourceMappingURL=index.js.map |
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAExF,MAAM,WAAW,GAAkB;IACjC,IAAI,EAAE,OAAO;IACb,SAAS,EAAE,cAAc;IACzB,gBAAgB,EAAE,qBAA4B;IAC9C,cAAc,EAAE,mBAA0B;IAC1C,MAAM,EAAE,KAAK;CACd,CAAC,CAAC,mBAAmB;AAEtB,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC"} |
-128
| import type { BuiltinHandler } from "@wiredwp/robinpath"; | ||
| export declare const TeamsFunctions: Record<string, BuiltinHandler>; | ||
| export declare const TeamsFunctionMetadata: { | ||
| setToken: { | ||
| description: string; | ||
| parameters: { | ||
| name: string; | ||
| dataType: string; | ||
| description: string; | ||
| formInputType: string; | ||
| required: boolean; | ||
| }[]; | ||
| returnType: string; | ||
| returnDescription: string; | ||
| example: string; | ||
| }; | ||
| sendChannel: { | ||
| description: string; | ||
| parameters: { | ||
| name: string; | ||
| dataType: string; | ||
| description: string; | ||
| formInputType: string; | ||
| required: boolean; | ||
| }[]; | ||
| returnType: string; | ||
| returnDescription: string; | ||
| example: string; | ||
| }; | ||
| sendChat: { | ||
| description: string; | ||
| parameters: { | ||
| name: string; | ||
| dataType: string; | ||
| description: string; | ||
| formInputType: string; | ||
| required: boolean; | ||
| }[]; | ||
| returnType: string; | ||
| returnDescription: string; | ||
| example: string; | ||
| }; | ||
| replyToMessage: { | ||
| description: string; | ||
| parameters: { | ||
| name: string; | ||
| dataType: string; | ||
| description: string; | ||
| formInputType: string; | ||
| required: boolean; | ||
| }[]; | ||
| returnType: string; | ||
| returnDescription: string; | ||
| example: string; | ||
| }; | ||
| listTeams: { | ||
| description: string; | ||
| parameters: never[]; | ||
| returnType: string; | ||
| returnDescription: string; | ||
| example: string; | ||
| }; | ||
| listChannels: { | ||
| description: string; | ||
| parameters: { | ||
| name: string; | ||
| dataType: string; | ||
| description: string; | ||
| formInputType: string; | ||
| required: boolean; | ||
| }[]; | ||
| returnType: string; | ||
| returnDescription: string; | ||
| example: string; | ||
| }; | ||
| getMessages: { | ||
| description: string; | ||
| parameters: { | ||
| name: string; | ||
| dataType: string; | ||
| description: string; | ||
| formInputType: string; | ||
| required: boolean; | ||
| }[]; | ||
| returnType: string; | ||
| returnDescription: string; | ||
| example: string; | ||
| }; | ||
| createChannel: { | ||
| description: string; | ||
| parameters: { | ||
| name: string; | ||
| dataType: string; | ||
| description: string; | ||
| formInputType: string; | ||
| required: boolean; | ||
| }[]; | ||
| returnType: string; | ||
| returnDescription: string; | ||
| example: string; | ||
| }; | ||
| listChats: { | ||
| description: string; | ||
| parameters: never[]; | ||
| returnType: string; | ||
| returnDescription: string; | ||
| example: string; | ||
| }; | ||
| sendWebhook: { | ||
| description: string; | ||
| parameters: { | ||
| name: string; | ||
| dataType: string; | ||
| description: string; | ||
| formInputType: string; | ||
| required: boolean; | ||
| }[]; | ||
| returnType: string; | ||
| returnDescription: string; | ||
| example: string; | ||
| }; | ||
| }; | ||
| export declare const TeamsModuleMetadata: { | ||
| description: string; | ||
| category: string; | ||
| methods: string[]; | ||
| }; | ||
| //# sourceMappingURL=teams.d.ts.map |
| {"version":3,"file":"teams.d.ts","sourceRoot":"","sources":["../src/teams.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAA2C,MAAM,oBAAoB,CAAC;AA0HlG,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAWzD,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmGjC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;CAI/B,CAAC"} |
-239
| const config = new Map(); | ||
| function getToken() { | ||
| const token = config.get("token"); | ||
| if (!token) | ||
| throw new Error('Teams: token not configured. Call teams.setToken first.'); | ||
| return token; | ||
| } | ||
| async function graphApi(path, method = "GET", body) { | ||
| const token = getToken(); | ||
| const res = await fetch(`https://graph.microsoft.com/v1.0${path}`, { | ||
| method, | ||
| headers: { | ||
| Authorization: `Bearer ${token}`, | ||
| "Content-Type": "application/json", | ||
| }, | ||
| body: body ? JSON.stringify(body) : undefined, | ||
| }); | ||
| if (!res.ok) { | ||
| const text = await res.text(); | ||
| throw new Error(`Microsoft Graph API error (${res.status}): ${text}`); | ||
| } | ||
| if (res.status === 204) | ||
| return { success: true }; | ||
| return res.json(); | ||
| } | ||
| const setToken = (args) => { | ||
| const token = args[0]; | ||
| if (!token) | ||
| throw new Error("teams.setToken requires a token."); | ||
| config.set("token", token); | ||
| return "Microsoft Teams token configured."; | ||
| }; | ||
| const sendChannel = async (args) => { | ||
| const teamId = args[0]; | ||
| const channelId = args[1]; | ||
| const message = args[2]; | ||
| if (!teamId || !channelId || !message) | ||
| throw new Error("teams.sendChannel requires teamId, channelId, and message."); | ||
| return graphApi(`/teams/${teamId}/channels/${channelId}/messages`, "POST", { | ||
| body: { content: message, contentType: "html" }, | ||
| }); | ||
| }; | ||
| const sendChat = async (args) => { | ||
| const chatId = args[0]; | ||
| const message = args[1]; | ||
| if (!chatId || !message) | ||
| throw new Error("teams.sendChat requires chatId and message."); | ||
| return graphApi(`/chats/${chatId}/messages`, "POST", { | ||
| body: { content: message, contentType: "html" }, | ||
| }); | ||
| }; | ||
| const replyToMessage = async (args) => { | ||
| const teamId = args[0]; | ||
| const channelId = args[1]; | ||
| const messageId = args[2]; | ||
| const reply = args[3]; | ||
| if (!teamId || !channelId || !messageId || !reply) | ||
| throw new Error("teams.replyToMessage requires teamId, channelId, messageId, and reply."); | ||
| return graphApi(`/teams/${teamId}/channels/${channelId}/messages/${messageId}/replies`, "POST", { | ||
| body: { content: reply, contentType: "html" }, | ||
| }); | ||
| }; | ||
| const listTeams = async () => { | ||
| return graphApi("/me/joinedTeams"); | ||
| }; | ||
| const listChannels = async (args) => { | ||
| const teamId = args[0]; | ||
| if (!teamId) | ||
| throw new Error("teams.listChannels requires a teamId."); | ||
| return graphApi(`/teams/${teamId}/channels`); | ||
| }; | ||
| const getMessages = async (args) => { | ||
| const teamId = args[0]; | ||
| const channelId = args[1]; | ||
| const opts = (typeof args[2] === "object" && args[2] !== null ? args[2] : {}); | ||
| if (!teamId || !channelId) | ||
| throw new Error("teams.getMessages requires teamId and channelId."); | ||
| const top = opts.top ? `?$top=${opts.top}` : ""; | ||
| return graphApi(`/teams/${teamId}/channels/${channelId}/messages${top}`); | ||
| }; | ||
| const createChannel = async (args) => { | ||
| const teamId = args[0]; | ||
| const displayName = args[1]; | ||
| const opts = (typeof args[2] === "object" && args[2] !== null ? args[2] : {}); | ||
| if (!teamId || !displayName) | ||
| throw new Error("teams.createChannel requires teamId and displayName."); | ||
| const payload = { | ||
| displayName, | ||
| membershipType: opts.membershipType ?? "standard", | ||
| }; | ||
| if (opts.description) | ||
| payload.description = opts.description; | ||
| return graphApi(`/teams/${teamId}/channels`, "POST", payload); | ||
| }; | ||
| const listChats = async () => { | ||
| return graphApi("/me/chats"); | ||
| }; | ||
| const sendWebhook = async (args) => { | ||
| const webhookUrl = args[0]; | ||
| const message = args[1]; | ||
| const opts = (typeof args[2] === "object" && args[2] !== null ? args[2] : {}); | ||
| if (!webhookUrl || !message) | ||
| throw new Error("teams.sendWebhook requires webhookUrl and message."); | ||
| const payload = { text: message }; | ||
| if (opts.title) | ||
| payload.title = opts.title; | ||
| if (opts.themeColor) | ||
| payload.themeColor = opts.themeColor; | ||
| if (opts.sections) | ||
| payload.sections = opts.sections; | ||
| const res = await fetch(webhookUrl, { | ||
| method: "POST", | ||
| headers: { "Content-Type": "application/json" }, | ||
| body: JSON.stringify(payload), | ||
| }); | ||
| if (!res.ok) { | ||
| const text = await res.text(); | ||
| throw new Error(`Teams Webhook error (${res.status}): ${text}`); | ||
| } | ||
| return "Webhook message sent."; | ||
| }; | ||
| export const TeamsFunctions = { | ||
| setToken, | ||
| sendChannel, | ||
| sendChat, | ||
| replyToMessage, | ||
| listTeams, | ||
| listChannels, | ||
| getMessages, | ||
| createChannel, | ||
| listChats, | ||
| sendWebhook, | ||
| }; | ||
| export const TeamsFunctionMetadata = { | ||
| setToken: { | ||
| description: "Set the Microsoft Graph API access token.", | ||
| parameters: [ | ||
| { name: "token", dataType: "string", description: "OAuth2 access token with Teams permissions", formInputType: "text", required: true }, | ||
| ], | ||
| returnType: "string", | ||
| returnDescription: "Confirmation message.", | ||
| example: 'teams.setToken "eyJ0xxx"', | ||
| }, | ||
| sendChannel: { | ||
| description: "Send a message to a Teams channel.", | ||
| parameters: [ | ||
| { name: "teamId", dataType: "string", description: "Team ID", formInputType: "text", required: true }, | ||
| { name: "channelId", dataType: "string", description: "Channel ID", formInputType: "text", required: true }, | ||
| { name: "message", dataType: "string", description: "Message content (supports HTML)", formInputType: "textarea", required: true }, | ||
| ], | ||
| returnType: "object", | ||
| returnDescription: "Created message object.", | ||
| example: 'teams.sendChannel "team-id" "channel-id" "Hello team!"', | ||
| }, | ||
| sendChat: { | ||
| description: "Send a message in a 1:1 or group chat.", | ||
| parameters: [ | ||
| { name: "chatId", dataType: "string", description: "Chat ID", formInputType: "text", required: true }, | ||
| { name: "message", dataType: "string", description: "Message content (supports HTML)", formInputType: "textarea", required: true }, | ||
| ], | ||
| returnType: "object", | ||
| returnDescription: "Created message object.", | ||
| example: 'teams.sendChat "chat-id" "Hey there!"', | ||
| }, | ||
| replyToMessage: { | ||
| description: "Reply to a message in a channel.", | ||
| parameters: [ | ||
| { name: "teamId", dataType: "string", description: "Team ID", formInputType: "text", required: true }, | ||
| { name: "channelId", dataType: "string", description: "Channel ID", formInputType: "text", required: true }, | ||
| { name: "messageId", dataType: "string", description: "Message ID to reply to", formInputType: "text", required: true }, | ||
| { name: "reply", dataType: "string", description: "Reply content", formInputType: "textarea", required: true }, | ||
| ], | ||
| returnType: "object", | ||
| returnDescription: "Created reply message.", | ||
| example: 'teams.replyToMessage "team-id" "channel-id" "msg-id" "Thanks!"', | ||
| }, | ||
| listTeams: { | ||
| description: "List all teams the user has joined.", | ||
| parameters: [], | ||
| returnType: "object", | ||
| returnDescription: "Object with value array of teams.", | ||
| example: "teams.listTeams", | ||
| }, | ||
| listChannels: { | ||
| description: "List channels in a team.", | ||
| parameters: [ | ||
| { name: "teamId", dataType: "string", description: "Team ID", formInputType: "text", required: true }, | ||
| ], | ||
| returnType: "object", | ||
| returnDescription: "Object with value array of channels.", | ||
| example: 'teams.listChannels "team-id"', | ||
| }, | ||
| getMessages: { | ||
| description: "Get messages from a channel.", | ||
| parameters: [ | ||
| { name: "teamId", dataType: "string", description: "Team ID", formInputType: "text", required: true }, | ||
| { name: "channelId", dataType: "string", description: "Channel ID", formInputType: "text", required: true }, | ||
| { name: "options", dataType: "object", description: "Options: top (number of messages)", formInputType: "json", required: false }, | ||
| ], | ||
| returnType: "object", | ||
| returnDescription: "Object with value array of messages.", | ||
| example: 'teams.getMessages "team-id" "channel-id" {"top":20}', | ||
| }, | ||
| createChannel: { | ||
| description: "Create a new channel in a team.", | ||
| parameters: [ | ||
| { name: "teamId", dataType: "string", description: "Team ID", formInputType: "text", required: true }, | ||
| { name: "displayName", dataType: "string", description: "Channel name", formInputType: "text", required: true }, | ||
| { name: "options", dataType: "object", description: "Options: description, membershipType (standard|private|shared)", formInputType: "json", required: false }, | ||
| ], | ||
| returnType: "object", | ||
| returnDescription: "Created channel object.", | ||
| example: 'teams.createChannel "team-id" "New Channel" {"description":"A new channel"}', | ||
| }, | ||
| listChats: { | ||
| description: "List all chats for the current user.", | ||
| parameters: [], | ||
| returnType: "object", | ||
| returnDescription: "Object with value array of chats.", | ||
| example: "teams.listChats", | ||
| }, | ||
| sendWebhook: { | ||
| description: "Send a message via an incoming webhook URL.", | ||
| parameters: [ | ||
| { name: "webhookUrl", dataType: "string", description: "Incoming webhook URL", formInputType: "text", required: true }, | ||
| { name: "message", dataType: "string", description: "Message text", formInputType: "textarea", required: true }, | ||
| { name: "options", dataType: "object", description: "Options: title, themeColor, sections", formInputType: "json", required: false }, | ||
| ], | ||
| returnType: "string", | ||
| returnDescription: "Confirmation message.", | ||
| example: 'teams.sendWebhook "https://outlook.office.com/webhook/xxx" "Alert: Build passed!"', | ||
| }, | ||
| }; | ||
| export const TeamsModuleMetadata = { | ||
| description: "Send messages, manage channels, and interact with Microsoft Teams via Microsoft Graph API.", | ||
| category: "messaging", | ||
| methods: Object.keys(TeamsFunctions), | ||
| }; | ||
| //# sourceMappingURL=teams.js.map |
| {"version":3,"file":"teams.js","sourceRoot":"","sources":["../src/teams.ts"],"names":[],"mappings":"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"} |
Empty package
Supply chain riskPackage does not contain any code. It may be removed, is name squatting, or the result of a faulty package publish.
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Network access
Supply chain riskThis module accesses the network.
No License Found
LicenseLicense information could not be found.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
0
-100%1
-50%3867
-86.07%2
-80%0
-100%