@openclaw/nextcloud-talk 2026.10.6 → 2026.10.8

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.
@@ -0,0 +1,2 @@
1
+ export { t as nextcloudTalkPlugin } from "./channel-CCdbWJtM.mjs";
2
+ import "../api.js";
@@ -1,7 +1,7 @@
1
1
  import { a as __exportAll, n as legacyConfigRules, o as __reExport, r as normalizeCompatibilityConfig } from "./doctor-contract-DwH950tH.mjs";
2
2
  import { listNextcloudTalkAccountIds, mergeNextcloudTalkAccountConfig, resolveDefaultNextcloudTalkAccountId } from "../configured-state.js";
3
3
  import { a as logInboundDrop, c as warnMissingProviderGroupPolicyFallbackOnce, i as fetchWithSsrFGuard, l as getNextcloudTalkRuntime, n as createChannelPairingController, o as resolveAllowlistProviderRuntimeGroupPolicy, r as deliverFormattedTextWithAttachments, s as resolveDefaultGroupPolicy, t as GROUP_POLICY_BLOCKED_LABEL, u as getOptionalNextcloudTalkRuntime } from "./runtime-api-DVkVOUSo.mjs";
4
- import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./secret-contract-Bvm0PmP3.mjs";
4
+ import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./secret-contract-Be0kL8Gz.mjs";
5
5
  import { describeWebhookAccountSnapshot } from "openclaw/plugin-sdk/account-helpers";
6
6
  import { buildChannelOutboundSessionRoute, createChatChannelPlugin } from "openclaw/plugin-sdk/channel-core";
7
7
  import { createLoggedPairingApprovalNotifier, createPairingPrefixStripper } from "openclaw/plugin-sdk/channel-pairing";
@@ -0,0 +1,20 @@
1
+ import { hasConfiguredNextcloudAccount } from "../configured-state.js";
2
+ import { collectSimpleChannelFieldAssignments, createChannelSecretContract } from "openclaw/plugin-sdk/channel-secret-basic-runtime";
3
+ //#region extensions/nextcloud-talk/src/secret-contract.ts
4
+ const channelSecrets = createChannelSecretContract({
5
+ channelKey: "nextcloud-talk",
6
+ account: ["apiPassword", "botSecret"],
7
+ channel: ["apiPassword", "botSecret"],
8
+ hasImplicitDefaultAccount: ({ context }) => hasConfiguredNextcloudAccount(context.sourceConfig.channels?.["nextcloud-talk"], context.env),
9
+ collect(params) {
10
+ for (const field of ["botSecret", "apiPassword"]) collectSimpleChannelFieldAssignments({
11
+ ...params,
12
+ field,
13
+ topInactiveReason: `no enabled Nextcloud Talk surface inherits this top-level ${field}.`,
14
+ accountInactiveReason: "Nextcloud Talk account is disabled."
15
+ });
16
+ }
17
+ });
18
+ const { secretTargetRegistryEntries, collectRuntimeConfigAssignments } = channelSecrets;
19
+ //#endregion
20
+ export { collectRuntimeConfigAssignments as n, secretTargetRegistryEntries as r, channelSecrets as t };
@@ -1,2 +1,2 @@
1
- export { t as channelSecrets, n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./secret-contract-Bvm0PmP3.mjs";
1
+ export { t as channelSecrets, n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./secret-contract-Be0kL8Gz.mjs";
2
2
  import "../secret-contract-api.js";
@@ -0,0 +1 @@
1
+ {"version":3,"entries":[{"output":"api.js","source":"extensions/nextcloud-talk/api.ts"},{"output":"channel-plugin-api.js","source":"extensions/nextcloud-talk/channel-plugin-api.ts"},{"output":"configured-state.js","source":"extensions/nextcloud-talk/configured-state.ts"},{"output":"doctor-contract-api.js","source":"extensions/nextcloud-talk/doctor-contract-api.ts"},{"output":"index.js","source":"extensions/nextcloud-talk/index.ts"},{"output":"runtime-api.js","source":"extensions/nextcloud-talk/runtime-api.ts"},{"output":"secret-contract-api.js","source":"extensions/nextcloud-talk/secret-contract-api.ts"},{"output":"setup-entry.js","source":"extensions/nextcloud-talk/setup-entry.ts"}],"chunks":[{"output":".setup/api-ws8Wy8Ab.mjs","sha256":"0e0839c1e43bad0aaf5b6cf24f7716b92b0edcbcb258a6af725e5ff226e8d197","facadeSource":"extensions/nextcloud-talk/api.ts","sources":[]},{"output":".setup/channel-CCdbWJtM.mjs","sha256":"733bb7feccaf509bccf3a88dc31f5fcb9864c323835f6c553f7c92b5c3e51692","facadeSource":null,"sources":["extensions/nextcloud-talk/src/accounts.ts","extensions/nextcloud-talk/src/api-credentials.ts","extensions/nextcloud-talk/src/approval-auth.ts","extensions/nextcloud-talk/src/bot-preflight.ts","extensions/nextcloud-talk/src/channel.adapters.ts","extensions/nextcloud-talk/src/channel.ts","extensions/nextcloud-talk/src/config-schema.ts","extensions/nextcloud-talk/src/doctor.ts","extensions/nextcloud-talk/src/gateway.ts","extensions/nextcloud-talk/src/guarded-response.ts","extensions/nextcloud-talk/src/inbound.ts","extensions/nextcloud-talk/src/message-actions.ts","extensions/nextcloud-talk/src/message-adapter.ts","extensions/nextcloud-talk/src/monitor-runtime.ts","extensions/nextcloud-talk/src/monitor.ts","extensions/nextcloud-talk/src/normalize.ts","extensions/nextcloud-talk/src/policy.ts","extensions/nextcloud-talk/src/replay-migration-contract.ts","extensions/nextcloud-talk/src/room-info.ts","extensions/nextcloud-talk/src/send.ts","extensions/nextcloud-talk/src/session-route.ts","extensions/nextcloud-talk/src/setup-core.ts","extensions/nextcloud-talk/src/setup-surface.ts","extensions/nextcloud-talk/src/signature.ts","extensions/nextcloud-talk/src/webhook-route.ts","extensions/nextcloud-talk/src/webhook-spool-state.ts","extensions/nextcloud-talk/src/webhook-spool.ts","packages/normalization-core/src/string-coerce.ts","src/gateway/gateway-http-route-contracts.ts","src/gateway/security-path.ts","src/gateway/server/plugins-http/path-context.ts","src/plugins/http-path-prefix.ts"]},{"output":".setup/doctor-contract-DwH950tH.mjs","sha256":"fc92feebc8e348bacba027cadbf2fd4e510c557abe00e20ff2ee80bab76c0e8a","facadeSource":null,"sources":["extensions/nextcloud-talk/src/doctor-contract.ts","packages/normalization-core/src/record-coerce.ts","src/config/channel-config-normalization.ts","src/plugin-sdk/legacy-webhook-listener-migration.ts"]},{"output":".setup/runtime-api-DVkVOUSo.mjs","sha256":"7f9187eb96ed6d031f63c3a480653fef48d5b9c581f18008598feeee27345cdc","facadeSource":null,"sources":["extensions/nextcloud-talk/src/runtime.ts"]},{"output":".setup/secret-contract-api-CavlkEFV.mjs","sha256":"c1fff5bf789c0450551ceaa0764555d5a780fd42783ce66d2ddbf0dff7e40df8","facadeSource":"extensions/nextcloud-talk/secret-contract-api.ts","sources":[]},{"output":".setup/secret-contract-Be0kL8Gz.mjs","sha256":"50f0d999c73d9abe0911507e98b6c180e9b2f723bcedae4482a42b4479913e78","facadeSource":null,"sources":["extensions/nextcloud-talk/src/secret-contract.ts"]},{"output":"api.js","sha256":"bd41fd1742bf41ae7c1da275a36a11cb5bd8820bcd830aea680e86d271491ea8","facadeSource":"extensions/nextcloud-talk/api.ts","sources":[]},{"output":"channel-plugin-api.js","sha256":"bd41fd1742bf41ae7c1da275a36a11cb5bd8820bcd830aea680e86d271491ea8","facadeSource":"extensions/nextcloud-talk/channel-plugin-api.ts","sources":[]},{"output":"configured-state.js","sha256":"f7860361831d12b3746a942ad07e76ed5bbdcb6017cedb9976ba1b67ae687939","facadeSource":"extensions/nextcloud-talk/configured-state.ts","sources":["extensions/nextcloud-talk/configured-state.ts"]},{"output":"doctor-contract-api.js","sha256":"8bc6b0c8254cfb5f79b7516d18d4bbf6bf862e3a3deba033e037d481b6ff9114","facadeSource":"extensions/nextcloud-talk/doctor-contract-api.ts","sources":[]},{"output":"index.js","sha256":"eaac1b676ea855c0ce9ea0a8e3157564c7a38f956ace23c22b0c28667dc0b424","facadeSource":"extensions/nextcloud-talk/index.ts","sources":["extensions/nextcloud-talk/index.ts"]},{"output":"runtime-api.js","sha256":"f4b2341101e63c59f0086c5738b3d798f1718e7cf7c0ec1dfb70b9f172821f67","facadeSource":"extensions/nextcloud-talk/runtime-api.ts","sources":[]},{"output":"secret-contract-api.js","sha256":"68ade9a84dc9d744eeb8397629ee6997626afa3e32aa9d299e89872d04019289","facadeSource":"extensions/nextcloud-talk/secret-contract-api.ts","sources":[]},{"output":"setup-entry.js","sha256":"1759a82389d29ef6e786e77a03758fb3810e89a944aa1cefac393411178a1473","facadeSource":"extensions/nextcloud-talk/setup-entry.ts","sources":["extensions/nextcloud-talk/setup-entry.ts"]}],"unrenderedSources":["extensions/nextcloud-talk/api.ts","extensions/nextcloud-talk/channel-plugin-api.ts","extensions/nextcloud-talk/config-doctor-api.ts","extensions/nextcloud-talk/doctor-contract-api.ts","extensions/nextcloud-talk/runtime-api.ts","extensions/nextcloud-talk/secret-contract-api.ts","extensions/nextcloud-talk/src/channel-api.ts","extensions/nextcloud-talk/src/send.runtime.ts"]}
package/dist/api.js CHANGED
@@ -1 +1 @@
1
- export { t as nextcloudTalkPlugin } from "./.setup/channel-DTKYMnlK.mjs";
1
+ export { t as nextcloudTalkPlugin } from "./.setup/channel-CCdbWJtM.mjs";
@@ -1 +1 @@
1
- export { t as nextcloudTalkPlugin } from "./.setup/channel-DTKYMnlK.mjs";
1
+ export { t as nextcloudTalkPlugin } from "./.setup/channel-CCdbWJtM.mjs";
@@ -3,10 +3,7 @@ import { DEFAULT_ACCOUNT_ID, createAccountListHelpers, hasConfiguredAccountValue
3
3
  const { listAccountIds: listNextcloudTalkAccountIds, resolveDefaultAccountId: resolveDefaultNextcloudTalkAccountId, resolveAccountConfig: mergeNextcloudTalkAccountConfig } = createAccountListHelpers("nextcloud-talk", {
4
4
  normalizeAccountId,
5
5
  omitKeys: ["defaultAccount"],
6
- hasImplicitDefaultAccount: (cfg) => {
7
- const channel = cfg.channels?.["nextcloud-talk"];
8
- return Boolean(channel?.baseUrl?.trim() && (hasConfiguredAccountValue(channel.botSecret) || channel.botSecretFile?.trim() || process.env.NEXTCLOUD_TALK_BOT_SECRET?.trim()));
9
- }
6
+ hasImplicitDefaultAccount: (cfg) => hasConfiguredNextcloudAccount(cfg.channels?.["nextcloud-talk"], process.env)
10
7
  });
11
8
  function hasConfiguredNextcloudAccount(account, env) {
12
9
  return Boolean(account?.baseUrl?.trim() && (hasConfiguredAccountValue(account.botSecret) || hasConfiguredAccountValue(account.botSecretFile) || hasConfiguredAccountValue(env.NEXTCLOUD_TALK_BOT_SECRET)));
@@ -21,4 +18,4 @@ function hasConfiguredNextcloudTalkChannelState(params) {
21
18
  return Object.entries(channel?.accounts ?? {}).some(([accountId, account]) => accountId !== DEFAULT_ACCOUNT_ID && account.enabled !== false && hasConfiguredNextcloudAccount(mergeNextcloudTalkAccountConfig(params.cfg, accountId), {}));
22
19
  }
23
20
  //#endregion
24
- export { hasConfiguredNextcloudTalkChannelState, listNextcloudTalkAccountIds, mergeNextcloudTalkAccountConfig, resolveDefaultNextcloudTalkAccountId };
21
+ export { hasConfiguredNextcloudAccount, hasConfiguredNextcloudTalkChannelState, listNextcloudTalkAccountIds, mergeNextcloudTalkAccountConfig, resolveDefaultNextcloudTalkAccountId };
@@ -1 +1 @@
1
- export { t as channelSecrets, n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./.setup/secret-contract-Bvm0PmP3.mjs";
1
+ export { t as channelSecrets, n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./.setup/secret-contract-Be0kL8Gz.mjs";
@@ -4,11 +4,11 @@ import { fileURLToPath } from "node:url";
4
4
  var setup_entry_default = defineBundledChannelSetupEntry({
5
5
  importMetaUrl: import.meta.url,
6
6
  plugin: {
7
- specifier: fileURLToPath(new URL(".setup/api-C9p870IO.mjs", import.meta.url).href),
7
+ specifier: fileURLToPath(new URL(".setup/api-ws8Wy8Ab.mjs", import.meta.url).href),
8
8
  exportName: "nextcloudTalkPlugin"
9
9
  },
10
10
  secrets: {
11
- specifier: fileURLToPath(new URL(".setup/secret-contract-api-DoyAH9bS.mjs", import.meta.url).href),
11
+ specifier: fileURLToPath(new URL(".setup/secret-contract-api-CavlkEFV.mjs", import.meta.url).href),
12
12
  exportName: "channelSecrets"
13
13
  }
14
14
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/nextcloud-talk",
3
- "version": "2026.10.6",
3
+ "version": "2026.10.8",
4
4
  "description": "OpenClaw Nextcloud Talk channel plugin for conversations.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -8,7 +8,7 @@
8
8
  },
9
9
  "type": "module",
10
10
  "peerDependencies": {
11
- "openclaw": ">=2026.10.6"
11
+ "openclaw": ">=2026.10.8"
12
12
  },
13
13
  "peerDependenciesMeta": {
14
14
  "openclaw": {
@@ -130,10 +130,10 @@
130
130
  "minHostVersion": ">=2026.4.10"
131
131
  },
132
132
  "compat": {
133
- "pluginApi": ">=2026.10.6"
133
+ "pluginApi": ">=2026.10.8"
134
134
  },
135
135
  "build": {
136
- "openclawVersion": "2026.10.6"
136
+ "openclawVersion": "2026.10.8"
137
137
  },
138
138
  "release": {
139
139
  "publishToClawHub": true,
@@ -1,2 +0,0 @@
1
- export { t as nextcloudTalkPlugin } from "./channel-DTKYMnlK.mjs";
2
- import "../api.js";
@@ -1,15 +0,0 @@
1
- import { createSimpleChannelSecretContract } from "openclaw/plugin-sdk/channel-secret-basic-runtime";
2
- //#region extensions/nextcloud-talk/src/secret-contract.ts
3
- const channelSecrets = createSimpleChannelSecretContract({
4
- channelKey: "nextcloud-talk",
5
- label: "Nextcloud Talk",
6
- accountFields: ["apiPassword", "botSecret"],
7
- channelFields: ["apiPassword", "botSecret"],
8
- mode: {
9
- kind: "surface-inheritance",
10
- collectionFields: ["botSecret", "apiPassword"]
11
- }
12
- });
13
- const { secretTargetRegistryEntries, collectRuntimeConfigAssignments } = channelSecrets;
14
- //#endregion
15
- export { collectRuntimeConfigAssignments as n, secretTargetRegistryEntries as r, channelSecrets as t };