@elizaos/plugin-line 2.0.0-alpha.7 → 2.0.0-beta.1

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.
Files changed (46) hide show
  1. package/README.md +185 -0
  2. package/dist/actions/index.d.ts +0 -6
  3. package/dist/actions/index.d.ts.map +1 -1
  4. package/dist/actions/index.js +2 -6
  5. package/dist/actions/index.js.map +1 -1
  6. package/dist/connector-account-provider.d.ts +16 -0
  7. package/dist/connector-account-provider.d.ts.map +1 -0
  8. package/dist/connector-account-provider.js +82 -0
  9. package/dist/connector-account-provider.js.map +1 -0
  10. package/dist/index.d.ts +2 -6
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +23 -12
  13. package/dist/index.js.map +1 -1
  14. package/dist/providers/index.d.ts +3 -2
  15. package/dist/providers/index.d.ts.map +1 -1
  16. package/dist/providers/index.js +4 -2
  17. package/dist/providers/index.js.map +1 -1
  18. package/dist/service.d.ts +10 -2
  19. package/dist/service.d.ts.map +1 -1
  20. package/dist/service.js +347 -14
  21. package/dist/service.js.map +1 -1
  22. package/dist/workflow-credential-provider.d.ts +21 -0
  23. package/dist/workflow-credential-provider.d.ts.map +1 -0
  24. package/dist/workflow-credential-provider.js +32 -0
  25. package/dist/workflow-credential-provider.js.map +1 -0
  26. package/package.json +10 -10
  27. package/dist/actions/sendFlexMessage.d.ts +0 -6
  28. package/dist/actions/sendFlexMessage.d.ts.map +0 -1
  29. package/dist/actions/sendFlexMessage.js +0 -204
  30. package/dist/actions/sendFlexMessage.js.map +0 -1
  31. package/dist/actions/sendLocation.d.ts +0 -6
  32. package/dist/actions/sendLocation.d.ts.map +0 -1
  33. package/dist/actions/sendLocation.js +0 -181
  34. package/dist/actions/sendLocation.js.map +0 -1
  35. package/dist/actions/sendMessage.d.ts +0 -6
  36. package/dist/actions/sendMessage.d.ts.map +0 -1
  37. package/dist/actions/sendMessage.js +0 -172
  38. package/dist/actions/sendMessage.js.map +0 -1
  39. package/dist/providers/chatContext.d.ts +0 -6
  40. package/dist/providers/chatContext.d.ts.map +0 -1
  41. package/dist/providers/chatContext.js +0 -86
  42. package/dist/providers/chatContext.js.map +0 -1
  43. package/dist/providers/userContext.d.ts +0 -6
  44. package/dist/providers/userContext.d.ts.map +0 -1
  45. package/dist/providers/userContext.js +0 -71
  46. package/dist/providers/userContext.js.map +0 -1
package/dist/service.js CHANGED
@@ -2,8 +2,107 @@
2
2
  * LINE service implementation for ElizaOS.
3
3
  */
4
4
  import { logger, Service } from "@elizaos/core";
5
- import { messagingApi, middleware, } from "@line/bot-sdk";
6
- import { getChatTypeFromId, LINE_SERVICE_NAME, LineApiError, LineConfigurationError, LineEventTypes, MAX_LINE_BATCH_SIZE, splitMessageForLine, } from "./types.js";
5
+ import { messagingApi, middleware } from "@line/bot-sdk";
6
+ import { getChatTypeFromId, LINE_SERVICE_NAME, LineApiError, LineConfigurationError, LineEventTypes, MAX_LINE_BATCH_SIZE, normalizeLineTarget, splitMessageForLine, } from "./types.js";
7
+ function objectToMetadataValue(obj) {
8
+ return JSON.parse(JSON.stringify(obj));
9
+ }
10
+ function normalizeLineQuery(query) {
11
+ return query.trim().toLowerCase();
12
+ }
13
+ function scoreLineCandidate(values, query) {
14
+ const normalized = normalizeLineQuery(query);
15
+ if (!normalized) {
16
+ return 0.45;
17
+ }
18
+ const candidates = values
19
+ .filter((value) => typeof value === "string" && value.trim().length > 0)
20
+ .map((value) => value.trim().toLowerCase());
21
+ if (candidates.some((candidate) => candidate === normalized)) {
22
+ return 1;
23
+ }
24
+ return candidates.some((candidate) => candidate.includes(normalized)) ? 0.8 : 0;
25
+ }
26
+ function lineRoomToConnectorTarget(room, score = 0.55) {
27
+ const channelId = String(room.channelId ?? "");
28
+ const chatType = channelId ? getChatTypeFromId(channelId) : undefined;
29
+ return {
30
+ target: {
31
+ source: LINE_SERVICE_NAME,
32
+ roomId: room.id,
33
+ channelId,
34
+ },
35
+ label: room.name || channelId || String(room.id),
36
+ kind: chatType === "user" ? "contact" : chatType || "room",
37
+ description: "LINE chat from stored room context",
38
+ score,
39
+ contexts: ["social", "connectors"],
40
+ metadata: {
41
+ chatType,
42
+ channelId,
43
+ roomType: room.type,
44
+ },
45
+ };
46
+ }
47
+ function normalizeConnectorLimit(limit, fallback = 50) {
48
+ if (!Number.isFinite(limit) || !limit || limit <= 0) {
49
+ return fallback;
50
+ }
51
+ return Math.min(Math.floor(limit), 200);
52
+ }
53
+ async function readStoredMessageMemories(runtime, roomId, limit) {
54
+ return runtime.getMemories({
55
+ tableName: "messages",
56
+ roomId,
57
+ limit,
58
+ orderBy: "createdAt",
59
+ orderDirection: "desc",
60
+ });
61
+ }
62
+ async function readStoredMessagesForTargets(runtime, targets, limit) {
63
+ const roomIds = Array.from(new Set(targets.map((target) => target.target.roomId).filter((id) => Boolean(id))));
64
+ const chunks = await Promise.all(roomIds.map((roomId) => readStoredMessageMemories(runtime, roomId, limit)));
65
+ return chunks
66
+ .flat()
67
+ .sort((left, right) => (right.createdAt ?? 0) - (left.createdAt ?? 0))
68
+ .slice(0, limit);
69
+ }
70
+ function filterMemoriesByQuery(memories, query, limit) {
71
+ const normalized = query.trim().toLowerCase();
72
+ if (!normalized) {
73
+ return memories.slice(0, limit);
74
+ }
75
+ return memories
76
+ .filter((memory) => {
77
+ const text = typeof memory.content?.text === "string" ? memory.content.text : "";
78
+ return text.toLowerCase().includes(normalized);
79
+ })
80
+ .slice(0, limit);
81
+ }
82
+ function quickReplyItemsFromStrings(values) {
83
+ if (!Array.isArray(values)) {
84
+ return undefined;
85
+ }
86
+ const items = values
87
+ .filter((value) => typeof value === "string" && value.trim().length > 0)
88
+ .slice(0, 13)
89
+ .map((text) => ({
90
+ type: "action",
91
+ action: {
92
+ type: "message",
93
+ label: text.slice(0, 20),
94
+ text,
95
+ },
96
+ }));
97
+ return items.length > 0 ? items : undefined;
98
+ }
99
+ function lineDataFromContent(content) {
100
+ const data = content.data;
101
+ if (data?.line && typeof data.line === "object") {
102
+ return data.line;
103
+ }
104
+ return data ?? {};
105
+ }
7
106
  /**
8
107
  * LINE messaging service for ElizaOS agents.
9
108
  */
@@ -27,6 +126,175 @@ export class LineService extends Service {
27
126
  await service.initialize();
28
127
  return service;
29
128
  }
129
+ static registerSendHandlers(runtime, service) {
130
+ const sendHandler = async (handlerRuntime, target, content) => {
131
+ await service.handleSendMessage(handlerRuntime, target, content);
132
+ return undefined;
133
+ };
134
+ if (typeof runtime.registerMessageConnector === "function") {
135
+ const registration = {
136
+ source: LINE_SERVICE_NAME,
137
+ label: "LINE",
138
+ capabilities: [
139
+ "send_message",
140
+ "send_flex_message",
141
+ "send_location",
142
+ "send_template_message",
143
+ "quick_reply",
144
+ ],
145
+ supportedTargetKinds: ["contact", "group", "room", "channel"],
146
+ contexts: ["social", "connectors"],
147
+ description: "Send LINE text, flex/card, template, quick reply, and location messages to known LINE chats.",
148
+ sendHandler,
149
+ resolveTargets: async (query, context) => {
150
+ const normalizedTarget = normalizeLineTarget(query);
151
+ const exactTarget = normalizedTarget
152
+ ? [
153
+ {
154
+ target: {
155
+ source: LINE_SERVICE_NAME,
156
+ channelId: normalizedTarget,
157
+ },
158
+ label: normalizedTarget,
159
+ kind: getChatTypeFromId(normalizedTarget) === "user"
160
+ ? "contact"
161
+ : getChatTypeFromId(normalizedTarget),
162
+ score: 1,
163
+ contexts: ["social", "connectors"],
164
+ metadata: {
165
+ chatType: getChatTypeFromId(normalizedTarget),
166
+ },
167
+ },
168
+ ]
169
+ : [];
170
+ const roomTargets = (await service.listConnectorRooms(context.runtime))
171
+ .map((room) => ({
172
+ room,
173
+ score: scoreLineCandidate([room.name, room.channelId, String(room.id)], query),
174
+ }))
175
+ .filter(({ score }) => score > 0)
176
+ .map(({ room, score }) => lineRoomToConnectorTarget(room, score));
177
+ return [...exactTarget, ...roomTargets]
178
+ .sort((left, right) => (right.score ?? 0) - (left.score ?? 0))
179
+ .slice(0, 10);
180
+ },
181
+ listRecentTargets: async (context) => (await service.listConnectorRooms(context.runtime))
182
+ .slice(0, 10)
183
+ .map((room) => lineRoomToConnectorTarget(room)),
184
+ listRooms: async (context) => (await service.listConnectorRooms(context.runtime)).map((room) => lineRoomToConnectorTarget(room)),
185
+ fetchMessages: async (context, params) => {
186
+ const limit = normalizeConnectorLimit(params?.limit);
187
+ const target = params?.target ?? context.target;
188
+ if (target?.roomId) {
189
+ return readStoredMessageMemories(context.runtime, target.roomId, limit);
190
+ }
191
+ const targets = (await service.listConnectorRooms(context.runtime))
192
+ .slice(0, 10)
193
+ .map((room) => lineRoomToConnectorTarget(room));
194
+ return readStoredMessagesForTargets(context.runtime, targets, limit);
195
+ },
196
+ searchMessages: async (context, params) => {
197
+ const limit = normalizeConnectorLimit(params?.limit);
198
+ const target = params?.target ?? context.target;
199
+ const messages = target?.roomId
200
+ ? await readStoredMessageMemories(context.runtime, target.roomId, Math.max(limit, 100))
201
+ : await readStoredMessagesForTargets(context.runtime, (await service.listConnectorRooms(context.runtime))
202
+ .slice(0, 10)
203
+ .map((room) => lineRoomToConnectorTarget(room)), Math.max(limit, 100));
204
+ return filterMemoriesByQuery(messages, params.query, limit);
205
+ },
206
+ leaveHandler: async (handlerRuntime, params) => {
207
+ const target = params.target ?? { source: LINE_SERVICE_NAME };
208
+ const room = target.roomId ? await handlerRuntime.getRoom(target.roomId) : null;
209
+ const channelId = String(params?.channelId ?? target.channelId ?? room?.channelId ?? "");
210
+ const chatType = getChatTypeFromId(channelId);
211
+ if (chatType !== "group" && chatType !== "room") {
212
+ throw new Error("LINE leaveHandler requires a group or room target");
213
+ }
214
+ await service.leaveChat(channelId, chatType);
215
+ },
216
+ getUser: async (_handlerRuntime, params) => {
217
+ const userId = String(params.userId ??
218
+ params.username ??
219
+ params.handle ??
220
+ params.target?.entityId ??
221
+ params.target?.channelId ??
222
+ "").trim();
223
+ if (!userId || getChatTypeFromId(userId) !== "user") {
224
+ return null;
225
+ }
226
+ const user = await service.getUserProfile(userId).catch(() => null);
227
+ if (!user) {
228
+ return null;
229
+ }
230
+ return {
231
+ id: user.userId,
232
+ names: [user.displayName, user.userId].filter((value) => value.length > 0),
233
+ agentId: _handlerRuntime.agentId,
234
+ metadata: { line: objectToMetadataValue(user) },
235
+ };
236
+ },
237
+ getChatContext: async (target, context) => {
238
+ const room = target.roomId ? await context.runtime.getRoom(target.roomId) : null;
239
+ const channelId = String(target.channelId ?? room?.channelId ?? "").trim();
240
+ if (!channelId) {
241
+ return null;
242
+ }
243
+ const chatType = getChatTypeFromId(channelId);
244
+ let label = room?.name || channelId;
245
+ let metadata = { chatType, channelId };
246
+ if (chatType === "group" || chatType === "room") {
247
+ const group = await service.getGroupInfo(channelId).catch(() => null);
248
+ if (group?.groupName) {
249
+ label = group.groupName;
250
+ }
251
+ metadata = {
252
+ ...metadata,
253
+ ...(group ? { group: objectToMetadataValue(group) } : {}),
254
+ };
255
+ }
256
+ else {
257
+ const user = await service.getUserProfile(channelId).catch(() => null);
258
+ if (user?.displayName) {
259
+ label = user.displayName;
260
+ }
261
+ metadata = {
262
+ ...metadata,
263
+ ...(user ? { user: objectToMetadataValue(user) } : {}),
264
+ };
265
+ }
266
+ return {
267
+ target: {
268
+ source: LINE_SERVICE_NAME,
269
+ roomId: target.roomId,
270
+ channelId,
271
+ },
272
+ label,
273
+ summary: `LINE ${chatType} chat`,
274
+ metadata,
275
+ };
276
+ },
277
+ getUserContext: async (entityId, context) => {
278
+ const entity = typeof context.runtime.getEntityById === "function"
279
+ ? await context.runtime.getEntityById(String(entityId))
280
+ : null;
281
+ if (!entity) {
282
+ return null;
283
+ }
284
+ return {
285
+ entityId,
286
+ label: entity.names?.[0],
287
+ aliases: entity.names,
288
+ handles: {},
289
+ metadata: entity.metadata,
290
+ };
291
+ },
292
+ };
293
+ runtime.registerMessageConnector(registration);
294
+ return;
295
+ }
296
+ runtime.registerSendHandler(LINE_SERVICE_NAME, sendHandler);
297
+ }
30
298
  /**
31
299
  * Initialize the service.
32
300
  */
@@ -264,7 +532,72 @@ export class LineService extends Service {
264
532
  getSettings() {
265
533
  return this.settings;
266
534
  }
535
+ async sendDirectMessage(target, content) {
536
+ await this.sendConnectorContent(target, content);
537
+ }
538
+ async sendRoomMessage(target, content) {
539
+ await this.sendConnectorContent(target, content);
540
+ }
267
541
  // Private methods
542
+ async handleSendMessage(runtime, target, content) {
543
+ const room = target.roomId ? await runtime.getRoom(target.roomId) : null;
544
+ const chatId = String(target.channelId ?? room?.channelId ?? "").trim();
545
+ if (!chatId) {
546
+ throw new Error("LINE target is missing a user, group, or room ID");
547
+ }
548
+ await this.sendConnectorContent(chatId, content);
549
+ }
550
+ async sendConnectorContent(to, content) {
551
+ const data = lineDataFromContent(content);
552
+ const flexMessage = data.flexMessage;
553
+ if (flexMessage) {
554
+ const result = await this.sendFlexMessage(to, flexMessage);
555
+ if (!result.success) {
556
+ throw new Error(result.error || "LINE flex message send failed");
557
+ }
558
+ return;
559
+ }
560
+ const location = data.location;
561
+ if (location) {
562
+ const result = await this.sendLocationMessage(to, location);
563
+ if (!result.success) {
564
+ throw new Error(result.error || "LINE location send failed");
565
+ }
566
+ return;
567
+ }
568
+ const templateMessage = data.templateMessage;
569
+ if (templateMessage) {
570
+ const result = await this.sendTemplateMessage(to, templateMessage);
571
+ if (!result.success) {
572
+ throw new Error(result.error || "LINE template message send failed");
573
+ }
574
+ return;
575
+ }
576
+ const text = typeof content.text === "string" ? content.text.trim() : "";
577
+ if (!text) {
578
+ return;
579
+ }
580
+ const result = await this.sendMessage(to, text, {
581
+ quickReplyItems: quickReplyItemsFromStrings(data.quickReplies),
582
+ });
583
+ if (!result.success) {
584
+ throw new Error(result.error || "LINE message send failed");
585
+ }
586
+ }
587
+ async listConnectorRooms(runtime) {
588
+ if (typeof runtime.getRoomsForParticipant !== "function") {
589
+ return [];
590
+ }
591
+ const roomIds = await runtime.getRoomsForParticipant(runtime.agentId).catch(() => []);
592
+ const rooms = [];
593
+ for (const roomId of roomIds) {
594
+ const room = await runtime.getRoom(roomId).catch(() => null);
595
+ if (room?.source === LINE_SERVICE_NAME && room.channelId) {
596
+ rooms.push(room);
597
+ }
598
+ }
599
+ return rooms;
600
+ }
268
601
  loadSettings() {
269
602
  if (!this.runtime) {
270
603
  throw new LineConfigurationError("Runtime not initialized");
@@ -347,7 +680,7 @@ export class LineService extends Service {
347
680
  this.runtime.emitEvent([LineEventTypes.FOLLOW], {
348
681
  runtime: this.runtime,
349
682
  source: "line",
350
- userId: event.source.userId,
683
+ userId: event.source?.userId,
351
684
  timestamp: event.timestamp,
352
685
  });
353
686
  break;
@@ -355,7 +688,7 @@ export class LineService extends Service {
355
688
  this.runtime.emitEvent([LineEventTypes.UNFOLLOW], {
356
689
  runtime: this.runtime,
357
690
  source: "line",
358
- userId: event.source.userId,
691
+ userId: event.source?.userId,
359
692
  timestamp: event.timestamp,
360
693
  });
361
694
  break;
@@ -363,12 +696,12 @@ export class LineService extends Service {
363
696
  this.runtime.emitEvent([LineEventTypes.JOIN_GROUP], {
364
697
  runtime: this.runtime,
365
698
  source: "line",
366
- groupId: event.source.type === "group"
699
+ groupId: event.source?.type === "group"
367
700
  ? event.source.groupId
368
- : event.source.type === "room"
701
+ : event.source?.type === "room"
369
702
  ? event.source.roomId
370
703
  : undefined,
371
- type: event.source.type,
704
+ type: event.source?.type,
372
705
  timestamp: event.timestamp,
373
706
  });
374
707
  break;
@@ -376,12 +709,12 @@ export class LineService extends Service {
376
709
  this.runtime.emitEvent([LineEventTypes.LEAVE_GROUP], {
377
710
  runtime: this.runtime,
378
711
  source: "line",
379
- groupId: event.source.type === "group"
712
+ groupId: event.source?.type === "group"
380
713
  ? event.source.groupId
381
- : event.source.type === "room"
714
+ : event.source?.type === "room"
382
715
  ? event.source.roomId
383
716
  : undefined,
384
- type: event.source.type,
717
+ type: event.source?.type,
385
718
  timestamp: event.timestamp,
386
719
  });
387
720
  break;
@@ -389,7 +722,7 @@ export class LineService extends Service {
389
722
  this.runtime.emitEvent([LineEventTypes.POSTBACK], {
390
723
  runtime: this.runtime,
391
724
  source: "line",
392
- userId: event.source.userId,
725
+ userId: event.source?.userId,
393
726
  data: event.postback.data,
394
727
  params: event.postback.params,
395
728
  timestamp: event.timestamp,
@@ -404,7 +737,7 @@ export class LineService extends Service {
404
737
  const message = {
405
738
  id: event.message.id,
406
739
  type: event.message.type,
407
- userId: event.source.userId || "",
740
+ userId: event.source?.userId || "",
408
741
  timestamp: event.timestamp,
409
742
  replyToken: event.replyToken,
410
743
  };
@@ -414,10 +747,10 @@ export class LineService extends Service {
414
747
  message.mention = event.message.mention;
415
748
  }
416
749
  // Add group/room ID if applicable
417
- if (event.source.type === "group") {
750
+ if (event.source?.type === "group") {
418
751
  message.groupId = event.source.groupId;
419
752
  }
420
- else if (event.source.type === "room") {
753
+ else if (event.source?.type === "room") {
421
754
  message.roomId = event.source.roomId;
422
755
  }
423
756
  // Emit message received event
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { type IAgentRuntime, Service } from "@elizaos/core";
2
+ type CredentialProviderResult = {
3
+ status: "credential_data";
4
+ data: Record<string, unknown>;
5
+ } | {
6
+ status: "needs_auth";
7
+ authUrl: string;
8
+ } | null;
9
+ export declare class LineWorkflowCredentialProvider extends Service {
10
+ static readonly serviceType = "workflow_credential_provider";
11
+ capabilityDescription: string;
12
+ static start(runtime: IAgentRuntime): Promise<LineWorkflowCredentialProvider>;
13
+ stop(): Promise<void>;
14
+ resolve(_userId: string, credType: string): Promise<CredentialProviderResult>;
15
+ checkCredentialTypes(credTypes: string[]): {
16
+ supported: string[];
17
+ unsupported: string[];
18
+ };
19
+ }
20
+ export {};
21
+ //# sourceMappingURL=workflow-credential-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-credential-provider.d.ts","sourceRoot":"","sources":["../src/workflow-credential-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAK5D,KAAK,wBAAwB,GACzB;IAAE,MAAM,EAAE,iBAAiB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAC5D;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACzC,IAAI,CAAC;AAKT,qBAAa,8BAA+B,SAAQ,OAAO;IACzD,gBAAyB,WAAW,kCAAqC;IAChE,qBAAqB,SAAuD;WAExE,KAAK,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,8BAA8B,CAAC;IAI7E,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAErB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAUnF,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG;QAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,EAAE,CAAA;KAAE;CAM1F"}
@@ -0,0 +1,32 @@
1
+ import { Service } from "@elizaos/core";
2
+ // Inlined to avoid adding @elizaos/plugin-workflow as a compile-time dependency.
3
+ // The runtime duck-types the service — only the serviceType string and resolve() shape matter.
4
+ const WORKFLOW_CREDENTIAL_PROVIDER_TYPE = "workflow_credential_provider";
5
+ // LINE has no dedicated workflow node. Use HTTP Request node with httpHeaderAuth.
6
+ const SUPPORTED = ["httpHeaderAuth"];
7
+ export class LineWorkflowCredentialProvider extends Service {
8
+ static serviceType = WORKFLOW_CREDENTIAL_PROVIDER_TYPE;
9
+ capabilityDescription = "Supplies LINE credentials to the workflow plugin.";
10
+ static async start(runtime) {
11
+ return new LineWorkflowCredentialProvider(runtime);
12
+ }
13
+ async stop() { }
14
+ async resolve(_userId, credType) {
15
+ if (credType !== "httpHeaderAuth")
16
+ return null;
17
+ const accessToken = this.runtime.getSetting("LINE_CHANNEL_ACCESS_TOKEN");
18
+ if (!accessToken?.trim())
19
+ return null;
20
+ return {
21
+ status: "credential_data",
22
+ data: { name: "Authorization", value: `Bearer ${accessToken.trim()}` },
23
+ };
24
+ }
25
+ checkCredentialTypes(credTypes) {
26
+ return {
27
+ supported: credTypes.filter((t) => SUPPORTED.includes(t)),
28
+ unsupported: credTypes.filter((t) => !SUPPORTED.includes(t)),
29
+ };
30
+ }
31
+ }
32
+ //# sourceMappingURL=workflow-credential-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-credential-provider.js","sourceRoot":"","sources":["../src/workflow-credential-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,OAAO,EAAE,MAAM,eAAe,CAAC;AAE5D,iFAAiF;AACjF,+FAA+F;AAC/F,MAAM,iCAAiC,GAAG,8BAA8B,CAAC;AAMzE,kFAAkF;AAClF,MAAM,SAAS,GAAG,CAAC,gBAAgB,CAAC,CAAC;AAErC,MAAM,OAAO,8BAA+B,SAAQ,OAAO;IACzD,MAAM,CAAmB,WAAW,GAAG,iCAAiC,CAAC;IAChE,qBAAqB,GAAG,mDAAmD,CAAC;IAErF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAsB;QACvC,OAAO,IAAI,8BAA8B,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,IAAI,KAAmB,CAAC;IAE9B,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,QAAgB;QAC7C,IAAI,QAAQ,KAAK,gBAAgB;YAAE,OAAO,IAAI,CAAC;QAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAuB,CAAC;QAC/F,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE;YAAE,OAAO,IAAI,CAAC;QACtC,OAAO;YACL,MAAM,EAAE,iBAAiB;YACzB,IAAI,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,WAAW,CAAC,IAAI,EAAE,EAAE,EAAE;SACvE,CAAC;IACJ,CAAC;IAED,oBAAoB,CAAC,SAAmB;QACtC,OAAO;YACL,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzD,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SAC7D,CAAC;IACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elizaos/plugin-line",
3
- "version": "2.0.0-alpha.7",
3
+ "version": "2.0.0-beta.1",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -16,7 +16,7 @@
16
16
  ],
17
17
  "scripts": {
18
18
  "build": "bun run build.ts",
19
- "test": "vitest run --config vitest.config.ts --passWithNoTests",
19
+ "test": "vitest run --config vitest.config.ts",
20
20
  "test:watch": "vitest --config vitest.config.ts",
21
21
  "lint": "bunx @biomejs/biome check --write --unsafe .",
22
22
  "lint:check": "bunx @biomejs/biome check .",
@@ -25,20 +25,20 @@
25
25
  "typecheck": "tsc --noEmit"
26
26
  },
27
27
  "dependencies": {
28
- "@elizaos/core": "2.0.0-alpha.3",
29
- "@line/bot-sdk": "^10.5.0",
30
- "zod": "^4.3.6"
28
+ "@elizaos/core": "2.0.0-beta.1",
29
+ "@line/bot-sdk": "^11.0.0",
30
+ "zod": "^4.4.3"
31
31
  },
32
32
  "devDependencies": {
33
- "@types/node": "^20.0.0",
34
- "typescript": "^5.6.0",
35
- "vitest": "^2.0.0",
36
- "@biomejs/biome": "^2.3.11"
33
+ "@biomejs/biome": "^2.4.14",
34
+ "@types/node": "^22.19.17",
35
+ "typescript": "^6.0.3",
36
+ "vitest": "^4.0.0"
37
37
  },
38
38
  "publishConfig": {
39
39
  "access": "public"
40
40
  },
41
- "milady": {
41
+ "eliza": {
42
42
  "platforms": [
43
43
  "node"
44
44
  ],
@@ -1,6 +0,0 @@
1
- /**
2
- * Send flex message action for the LINE plugin.
3
- */
4
- import type { Action } from "@elizaos/core";
5
- export declare const sendFlexMessage: Action;
6
- //# sourceMappingURL=sendFlexMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sendFlexMessage.d.ts","sourceRoot":"","sources":["../../src/actions/sendFlexMessage.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,MAAM,EAMP,MAAM,eAAe,CAAC;AAwEvB,eAAO,MAAM,eAAe,EAAE,MAkL7B,CAAC"}