@openclaw/line 2026.5.10-beta.1 → 2026.5.10-beta.3

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/dist/api.js CHANGED
@@ -1,5 +1,5 @@
1
- import { n as lineChannelPluginCommon, t as linePlugin } from "./channel-CQemYfAf.js";
2
- import { n as lineSetupAdapter, t as lineSetupWizard } from "./setup-surface-DCH7CE-y.js";
1
+ import { n as lineChannelPluginCommon, t as linePlugin } from "./channel-qjV9OG1s.js";
2
+ import { n as lineSetupAdapter, t as lineSetupWizard } from "./setup-surface-BGjkWr_B.js";
3
3
  //#region extensions/line/src/channel.setup.ts
4
4
  const lineSetupPlugin = {
5
5
  id: "line",
@@ -1,6 +1,6 @@
1
1
  import { r as createReceiptCard } from "./schedule-cards-BwQChTdM.js";
2
2
  import { a as createListCard, i as createInfoCard, r as createImageCard, t as createActionCard } from "./basic-cards-7DTG6E-A.js";
3
- import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/text-runtime";
3
+ import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
4
4
  //#region extensions/line/src/card-command.ts
5
5
  const CARD_USAGE = `Usage: /card <type> "title" "body" [options]
6
6
 
@@ -1,2 +1,2 @@
1
- import { t as linePlugin } from "./channel-CQemYfAf.js";
1
+ import { t as linePlugin } from "./channel-qjV9OG1s.js";
2
2
  export { linePlugin };
@@ -1,8 +1,8 @@
1
1
  import { i as resolveLineAccount, r as resolveDefaultLineAccountId, t as listLineAccountIds } from "./accounts-UXAvdBo_.js";
2
- import { n as lineSetupAdapter, r as hasLineCredentials, t as lineSetupWizard } from "./setup-surface-DCH7CE-y.js";
2
+ import { n as lineSetupAdapter, r as hasLineCredentials, t as lineSetupWizard } from "./setup-surface-BGjkWr_B.js";
3
3
  import { i as resolveExactLineGroupConfigKey, n as getLineRuntime, t as buildLineQuickReplyFallbackText } from "./quick-reply-fallback-HskUUWsn.js";
4
- import { n as parseLineDirectives, o as LineChannelConfigSchema, t as hasLineDirectives } from "./reply-payload-transform-Bmf8GnSU.js";
5
- import { n as resolveLineOutboundMedia, t as createLineSendReceipt } from "./send-receipt-DSg7S42s.js";
4
+ import { n as parseLineDirectives, o as LineChannelConfigSchema, t as hasLineDirectives } from "./reply-payload-transform-C3Dx5kxs.js";
5
+ import { n as resolveLineOutboundMedia, t as createLineSendReceipt } from "./send-receipt-zpAfxQ58.js";
6
6
  import { createChatChannelPlugin } from "openclaw/plugin-sdk/channel-core";
7
7
  import { createPairingPrefixStripper } from "openclaw/plugin-sdk/channel-pairing";
8
8
  import { createRestrictSendersChannelSecurity, resolveChannelGroupRequireMention } from "openclaw/plugin-sdk/channel-policy";
@@ -107,8 +107,8 @@ const lineChannelPluginCommon = {
107
107
  };
108
108
  //#endregion
109
109
  //#region extensions/line/src/gateway.ts
110
- const loadLineProbeRuntime$1 = createLazyRuntimeModule(() => import("./probe.runtime-N91OWW1J.js"));
111
- const loadLineMonitorRuntime = createLazyRuntimeModule(() => import("./monitor.runtime-D0Xj2uQz.js"));
110
+ const loadLineProbeRuntime$1 = createLazyRuntimeModule(() => import("./probe.runtime-XkNsM6LR.js"));
111
+ const loadLineMonitorRuntime = createLazyRuntimeModule(() => import("./monitor.runtime-Cfi3VjQz.js"));
112
112
  const lineGatewayAdapter = {
113
113
  startAccount: async (ctx) => {
114
114
  const account = ctx.account;
@@ -212,7 +212,7 @@ function resolveLineGroupRequireMention(params) {
212
212
  }
213
213
  //#endregion
214
214
  //#region extensions/line/src/outbound.ts
215
- const loadLineOutboundRuntime = createLazyRuntimeModule(() => import("./outbound.runtime-zBxAf-it.js"));
215
+ const loadLineOutboundRuntime = createLazyRuntimeModule(() => import("./outbound.runtime-BQf7o-dT.js"));
216
216
  function isLineUserTarget(target) {
217
217
  const normalized = target.trim().replace(/^line:(group|room|user):/i, "").replace(/^line:/i, "");
218
218
  return /^U/i.test(normalized);
@@ -508,7 +508,7 @@ const lineMessageAdapter = defineChannelMessageAdapter({
508
508
  });
509
509
  //#endregion
510
510
  //#region extensions/line/src/status.ts
511
- const loadLineProbeRuntime = createLazyRuntimeModule(() => import("./probe.runtime-N91OWW1J.js"));
511
+ const loadLineProbeRuntime = createLazyRuntimeModule(() => import("./probe.runtime-XkNsM6LR.js"));
512
512
  const collectLineStatusIssues = createDependentCredentialStatusIssueCollector({
513
513
  channel: "line",
514
514
  dependencySourceKey: "tokenSource",
@@ -533,7 +533,7 @@ const lineStatusAdapter = createComputedAccountStatusAdapter({
533
533
  });
534
534
  //#endregion
535
535
  //#region extensions/line/src/channel.ts
536
- const loadLineChannelRuntime = createLazyRuntimeModule(() => import("./channel.runtime-7a5SEVBm.js"));
536
+ const loadLineChannelRuntime = createLazyRuntimeModule(() => import("./channel.runtime-DZEOuAhp.js"));
537
537
  const lineSecurityAdapter = createRestrictSendersChannelSecurity({
538
538
  channelKey: "line",
539
539
  resolveDmPolicy: (account) => account.config.dmPolicy,
@@ -0,0 +1,4 @@
1
+ import { S as pushMessageLine } from "./markdown-to-line-CrXM4Bcw.js";
2
+ import { t as monitorLineProvider } from "./monitor-CnqIZXPx.js";
3
+ import { t as probeLineBot } from "./probe-Cla0gZ0b.js";
4
+ export { monitorLineProvider, probeLineBot, pushMessageLine };
package/dist/index.js CHANGED
@@ -4,7 +4,7 @@ let lineCardCommandPromise = null;
4
4
  async function loadLineCardCommand(api) {
5
5
  lineCardCommandPromise ??= (async () => {
6
6
  let registered = null;
7
- const { registerLineCardCommand } = await import("./card-command-UlPc6Vuc.js");
7
+ const { registerLineCardCommand } = await import("./card-command-Dtj3Rx7T.js");
8
8
  registerLineCardCommand({
9
9
  ...api,
10
10
  registerCommand(command) {
@@ -1,11 +1,11 @@
1
1
  import { i as resolveLineAccount } from "./accounts-UXAvdBo_.js";
2
- import { r as validateLineMediaUrl, t as createLineSendReceipt } from "./send-receipt-DSg7S42s.js";
2
+ import { r as validateLineMediaUrl, t as createLineSendReceipt } from "./send-receipt-zpAfxQ58.js";
3
3
  import { r as createReceiptCard } from "./schedule-cards-BwQChTdM.js";
4
- import { stripMarkdown, stripMarkdown as stripMarkdown$1 } from "openclaw/plugin-sdk/text-runtime";
5
4
  import { messagingApi } from "@line/bot-sdk";
6
5
  import { logVerbose } from "openclaw/plugin-sdk/runtime-env";
7
6
  import { recordChannelActivity } from "openclaw/plugin-sdk/channel-activity-runtime";
8
7
  import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
8
+ import { stripMarkdown, stripMarkdown as stripMarkdown$1 } from "openclaw/plugin-sdk/text-chunking";
9
9
  //#region extensions/line/src/flex-templates/message.ts
10
10
  /**
11
11
  * Wrap a FlexContainer in a FlexMessage
@@ -1,10 +1,10 @@
1
1
  import { i as resolveLineAccount, r as resolveDefaultLineAccountId } from "./accounts-UXAvdBo_.js";
2
2
  import { a as resolveLineGroupConfigEntry, n as getLineRuntime, t as buildLineQuickReplyFallbackText } from "./quick-reply-fallback-HskUUWsn.js";
3
- import { A as buildTemplateMessageFromPayload, C as pushMessagesLine, E as replyMessageLine, O as showLoadingAnimation, S as pushMessageLine, T as pushTextMessageWithQuickReplies, _ as getUserDisplayName, c as processLineMessage, d as createFlexMessage, f as createImageMessage, h as createTextMessageWithQuickReplies, m as createQuickReplyItems, p as createLocationMessage } from "./markdown-to-line-DASNAjBq.js";
3
+ import { A as buildTemplateMessageFromPayload, C as pushMessagesLine, E as replyMessageLine, O as showLoadingAnimation, S as pushMessageLine, T as pushTextMessageWithQuickReplies, _ as getUserDisplayName, c as processLineMessage, d as createFlexMessage, f as createImageMessage, h as createTextMessageWithQuickReplies, m as createQuickReplyItems, p as createLocationMessage } from "./markdown-to-line-CrXM4Bcw.js";
4
4
  import { createChannelPairingChallengeIssuer } from "openclaw/plugin-sdk/channel-pairing";
5
5
  import { createMessageReceiveContext, hasFinalChannelTurnDispatch } from "openclaw/plugin-sdk/channel-message";
6
6
  import { resolveSendableOutboundReplyParts } from "openclaw/plugin-sdk/reply-payload";
7
- import { lowercasePreservingWhitespace, normalizeOptionalString, normalizeStringEntries } from "openclaw/plugin-sdk/text-runtime";
7
+ import { lowercasePreservingWhitespace, normalizeOptionalString, normalizeStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
8
8
  import { firstDefined } from "openclaw/plugin-sdk/allow-from";
9
9
  import { messagingApi } from "@line/bot-sdk";
10
10
  import { saveMediaBuffer } from "openclaw/plugin-sdk/media-store";
@@ -0,0 +1,2 @@
1
+ import { t as monitorLineProvider } from "./monitor-CnqIZXPx.js";
2
+ export { monitorLineProvider };
@@ -1,2 +1,2 @@
1
- import { A as buildTemplateMessageFromPayload, C as pushMessagesLine, D as sendMessageLine, S as pushMessageLine, T as pushTextMessageWithQuickReplies, c as processLineMessage, m as createQuickReplyItems, w as pushTemplateMessage, x as pushLocationMessage, y as pushFlexMessage } from "./markdown-to-line-DASNAjBq.js";
1
+ import { A as buildTemplateMessageFromPayload, C as pushMessagesLine, D as sendMessageLine, S as pushMessageLine, T as pushTextMessageWithQuickReplies, c as processLineMessage, m as createQuickReplyItems, w as pushTemplateMessage, x as pushLocationMessage, y as pushFlexMessage } from "./markdown-to-line-CrXM4Bcw.js";
2
2
  export { buildTemplateMessageFromPayload, createQuickReplyItems, processLineMessage, pushFlexMessage, pushLocationMessage, pushMessageLine, pushMessagesLine, pushTemplateMessage, pushTextMessageWithQuickReplies, sendMessageLine };
@@ -1,6 +1,6 @@
1
- import { withTimeout } from "openclaw/plugin-sdk/text-runtime";
2
1
  import { messagingApi } from "@line/bot-sdk";
3
2
  import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
3
+ import { withTimeout } from "openclaw/plugin-sdk/text-utility-runtime";
4
4
  //#region extensions/line/src/probe.ts
5
5
  async function probeLineBot(channelAccessToken, timeoutMs = 5e3) {
6
6
  if (!channelAccessToken?.trim()) return {
@@ -0,0 +1,2 @@
1
+ import { t as probeLineBot } from "./probe-Cla0gZ0b.js";
2
+ export { probeLineBot };
@@ -1,8 +1,8 @@
1
1
  import { n as createEventCard, t as createAgendaCard } from "./schedule-cards-BwQChTdM.js";
2
2
  import { buildChannelConfigSchema, requireOpenAllowFrom } from "openclaw/plugin-sdk/channel-config-schema";
3
3
  import { requireChannelOpenAllowFrom } from "openclaw/plugin-sdk/extension-shared";
4
- import { z } from "openclaw/plugin-sdk/zod";
5
- import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/text-runtime";
4
+ import { z } from "zod";
5
+ import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
6
6
  //#region extensions/line/src/config-schema.ts
7
7
  const DmPolicySchema = z.enum([
8
8
  "open",
@@ -1,11 +1,11 @@
1
1
  import { i as resolveLineAccount, n as normalizeAccountId, r as resolveDefaultLineAccountId, t as listLineAccountIds } from "./accounts-UXAvdBo_.js";
2
2
  import { a as resolveLineGroupConfigEntry, i as resolveExactLineGroupConfigKey, o as resolveLineGroupLookupIds, r as setLineRuntime, s as resolveLineGroupsConfig } from "./quick-reply-fallback-HskUUWsn.js";
3
- import { a as createMediaPlayerCard, i as createDeviceControlCard, n as parseLineDirectives, o as LineChannelConfigSchema, r as createAppleTvRemoteCard, s as LineConfigSchema, t as hasLineDirectives } from "./reply-payload-transform-Bmf8GnSU.js";
3
+ import { a as createMediaPlayerCard, i as createDeviceControlCard, n as parseLineDirectives, o as LineChannelConfigSchema, r as createAppleTvRemoteCard, s as LineConfigSchema, t as hasLineDirectives } from "./reply-payload-transform-C3Dx5kxs.js";
4
4
  import { n as createEventCard, r as createReceiptCard, t as createAgendaCard } from "./schedule-cards-BwQChTdM.js";
5
5
  import { a as createListCard, i as createInfoCard, n as createCarousel, o as createNotificationBubble, r as createImageCard, t as createActionCard } from "./basic-cards-7DTG6E-A.js";
6
- import { A as buildTemplateMessageFromPayload, B as createYesNoConfirm, C as pushMessagesLine, D as sendMessageLine, E as replyMessageLine, F as createImageCarousel, G as toFlexMessage, H as messageAction, I as createImageCarouselColumn, L as createLinkMenu, M as createButtonTemplate, N as createCarouselColumn, O as showLoadingAnimation, P as createConfirmTemplate, R as createProductCarousel, S as pushMessageLine, T as pushTextMessageWithQuickReplies, U as postbackAction, V as datetimePickerAction, W as uriAction, _ as getUserDisplayName, a as extractLinks, b as pushImageMessage, c as processLineMessage, d as createFlexMessage, f as createImageMessage, g as createVideoMessage, h as createTextMessageWithQuickReplies, i as extractCodeBlocks, j as createButtonMenu, k as resolveLineChannelAccessToken, l as stripMarkdown, m as createQuickReplyItems, n as convertLinksToFlexBubble, o as extractMarkdownTables, p as createLocationMessage, r as convertTableToFlexBubble, s as hasMarkdownToConvert, t as convertCodeBlockToFlexBubble, u as createAudioMessage, v as getUserProfile, w as pushTemplateMessage, x as pushLocationMessage, y as pushFlexMessage, z as createTemplateCarousel } from "./markdown-to-line-DASNAjBq.js";
7
- import { a as validateLineSignature, c as normalizeAllowFrom, i as parseLineWebhookBody, n as createLineNodeWebhookHandler, o as downloadLineMedia, r as readLineWebhookRequestBody, s as firstDefined, t as monitorLineProvider } from "./monitor-PVeb2tJQ.js";
8
- import { t as probeLineBot } from "./probe-D9BPzb2n.js";
6
+ import { A as buildTemplateMessageFromPayload, B as createYesNoConfirm, C as pushMessagesLine, D as sendMessageLine, E as replyMessageLine, F as createImageCarousel, G as toFlexMessage, H as messageAction, I as createImageCarouselColumn, L as createLinkMenu, M as createButtonTemplate, N as createCarouselColumn, O as showLoadingAnimation, P as createConfirmTemplate, R as createProductCarousel, S as pushMessageLine, T as pushTextMessageWithQuickReplies, U as postbackAction, V as datetimePickerAction, W as uriAction, _ as getUserDisplayName, a as extractLinks, b as pushImageMessage, c as processLineMessage, d as createFlexMessage, f as createImageMessage, g as createVideoMessage, h as createTextMessageWithQuickReplies, i as extractCodeBlocks, j as createButtonMenu, k as resolveLineChannelAccessToken, l as stripMarkdown, m as createQuickReplyItems, n as convertLinksToFlexBubble, o as extractMarkdownTables, p as createLocationMessage, r as convertTableToFlexBubble, s as hasMarkdownToConvert, t as convertCodeBlockToFlexBubble, u as createAudioMessage, v as getUserProfile, w as pushTemplateMessage, x as pushLocationMessage, y as pushFlexMessage, z as createTemplateCarousel } from "./markdown-to-line-CrXM4Bcw.js";
7
+ import { a as validateLineSignature, c as normalizeAllowFrom, i as parseLineWebhookBody, n as createLineNodeWebhookHandler, o as downloadLineMedia, r as readLineWebhookRequestBody, s as firstDefined, t as monitorLineProvider } from "./monitor-CnqIZXPx.js";
8
+ import { t as probeLineBot } from "./probe-Cla0gZ0b.js";
9
9
  import { clearAccountEntryFields } from "openclaw/plugin-sdk/core";
10
10
  import { buildChannelConfigSchema } from "openclaw/plugin-sdk/channel-config-schema";
11
11
  import { createMessageReceiveContext } from "openclaw/plugin-sdk/channel-message";
@@ -1,6 +1,6 @@
1
1
  import { createMessageReceiptFromOutboundResults } from "openclaw/plugin-sdk/channel-message";
2
2
  import { resolvePinnedHostnameWithPolicy } from "openclaw/plugin-sdk/ssrf-runtime";
3
- import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/text-runtime";
3
+ import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
4
4
  //#region extensions/line/src/outbound-media.ts
5
5
  const LINE_OUTBOUND_MEDIA_SSRF_POLICY = { allowPrivateNetwork: false };
6
6
  async function validateLineMediaUrl(url) {
package/dist/setup-api.js CHANGED
@@ -1,2 +1,2 @@
1
- import { n as lineSetupAdapter, t as lineSetupWizard } from "./setup-surface-DCH7CE-y.js";
1
+ import { n as lineSetupAdapter, t as lineSetupWizard } from "./setup-surface-BGjkWr_B.js";
2
2
  export { lineSetupAdapter, lineSetupWizard };
@@ -1,5 +1,5 @@
1
1
  import { i as resolveLineAccount, n as normalizeAccountId, r as resolveDefaultLineAccountId, t as listLineAccountIds } from "./accounts-UXAvdBo_.js";
2
- import { normalizeOptionalString } from "openclaw/plugin-sdk/text-runtime";
2
+ import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  import { DEFAULT_ACCOUNT_ID, createAllowFromSection, createSetupInputPresenceValidator, createStandardChannelSetupStatus, formatDocsLink, mergeAllowFromEntries, setSetupChannelEnabled, splitSetupEntries } from "openclaw/plugin-sdk/setup";
4
4
  //#region extensions/line/src/account-helpers.ts
5
5
  function hasLineCredentials(account) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/line",
3
- "version": "2026.5.10-beta.1",
3
+ "version": "2026.5.10-beta.3",
4
4
  "description": "OpenClaw LINE channel plugin",
5
5
  "repository": {
6
6
  "type": "git",
@@ -8,14 +8,15 @@
8
8
  },
9
9
  "type": "module",
10
10
  "dependencies": {
11
- "@line/bot-sdk": "^11.0.0"
11
+ "@line/bot-sdk": "^11.0.0",
12
+ "zod": "^4.4.3"
12
13
  },
13
14
  "devDependencies": {
14
15
  "@openclaw/plugin-sdk": "workspace:*",
15
16
  "openclaw": "workspace:*"
16
17
  },
17
18
  "peerDependencies": {
18
- "openclaw": ">=2026.5.10-beta.1"
19
+ "openclaw": ">=2026.5.10-beta.3"
19
20
  },
20
21
  "peerDependenciesMeta": {
21
22
  "openclaw": {
@@ -45,10 +46,10 @@
45
46
  "minHostVersion": ">=2026.4.10"
46
47
  },
47
48
  "compat": {
48
- "pluginApi": ">=2026.5.10-beta.1"
49
+ "pluginApi": ">=2026.5.10-beta.3"
49
50
  },
50
51
  "build": {
51
- "openclawVersion": "2026.5.10-beta.1"
52
+ "openclawVersion": "2026.5.10-beta.3"
52
53
  },
53
54
  "release": {
54
55
  "publishToClawHub": true,
@@ -1,4 +0,0 @@
1
- import { S as pushMessageLine } from "./markdown-to-line-DASNAjBq.js";
2
- import { t as monitorLineProvider } from "./monitor-PVeb2tJQ.js";
3
- import { t as probeLineBot } from "./probe-D9BPzb2n.js";
4
- export { monitorLineProvider, probeLineBot, pushMessageLine };
@@ -1,2 +0,0 @@
1
- import { t as monitorLineProvider } from "./monitor-PVeb2tJQ.js";
2
- export { monitorLineProvider };
@@ -1,2 +0,0 @@
1
- import { t as probeLineBot } from "./probe-D9BPzb2n.js";
2
- export { probeLineBot };