@zhin.js/plugin-repeater 3.0.5 → 3.0.6

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,9 @@
1
+ // Generated by build-plugin-runtime-entries.mjs. Do not edit.
2
+ import { defineCommand } from '@zhin.js/command';
3
+ import { getRepeaterEngine, resolveRepeaterConfig, } from "../lib/engine.js";
4
+ export default defineCommand({
5
+ description: '查看复读机的运行状态',
6
+ execute({ config }) {
7
+ return getRepeaterEngine().statusLines(resolveRepeaterConfig(config));
8
+ },
9
+ });
@@ -0,0 +1,28 @@
1
+ // Generated by build-plugin-runtime-entries.mjs. Do not edit.
2
+ import { defineMiddleware } from '@zhin.js/middleware';
3
+ import { getRepeaterEngine, resolveRepeaterConfig, } from "../lib/engine.js";
4
+ /**
5
+ * Gaps vs legacy Message:
6
+ * - Uses Runtime `Message.content` / `Message.sender` / `Message.target` / `Message.metadata`
7
+ * (no `$raw` / `$channel` / `$sender`).
8
+ * - Group vs private relies on `metadata.type|channelType`; see `resolveGroupId`.
9
+ * - Reply uses `Message.$reply` (available during inbound middleware scope).
10
+ */
11
+ export default defineMiddleware({
12
+ target: 'inbound',
13
+ async handle(context, next) {
14
+ const config = resolveRepeaterConfig(context.config);
15
+ const engine = getRepeaterEngine();
16
+ const result = engine.tick({
17
+ target: context.input.target,
18
+ content: context.input.content,
19
+ sender: context.input.sender,
20
+ metadata: context.input.metadata,
21
+ }, config);
22
+ if (result.action === 'repeat') {
23
+ await context.input.$reply(result.content);
24
+ return;
25
+ }
26
+ await next();
27
+ },
28
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhin.js/plugin-repeater",
3
- "version": "3.0.5",
3
+ "version": "3.0.6",
4
4
  "description": "Repeater plugin for Zhin.js — auto-repeat when group members echo the same content (Plugin Runtime)",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",
@@ -14,7 +14,7 @@
14
14
  "./package.json": "./package.json"
15
15
  },
16
16
  "files": [
17
- "plugin.ts",
17
+ "plugin.js",
18
18
  "schema.json",
19
19
  "commands",
20
20
  "middlewares",
@@ -41,9 +41,9 @@
41
41
  },
42
42
  "license": "MIT",
43
43
  "dependencies": {
44
- "@zhin.js/command": "1.0.3",
45
- "@zhin.js/core": "1.4.1",
46
- "@zhin.js/middleware": "1.0.3",
44
+ "@zhin.js/command": "1.0.4",
45
+ "@zhin.js/core": "1.4.2",
46
+ "@zhin.js/middleware": "1.0.4",
47
47
  "@zhin.js/plugin-runtime": "1.1.1"
48
48
  },
49
49
  "devDependencies": {
@@ -65,7 +65,7 @@
65
65
  "zhin": {
66
66
  "protocol": 1,
67
67
  "type": "plugin",
68
- "entry": "./plugin.ts",
68
+ "entry": "./plugin.js",
69
69
  "engine": "^1.0.0",
70
70
  "runtime": "trusted",
71
71
  "features": [
package/plugin.js ADDED
@@ -0,0 +1,13 @@
1
+ // Generated by build-plugin-runtime-entries.mjs. Do not edit.
2
+ import { definePlugin } from '@zhin.js/plugin-runtime';
3
+ import { getRepeaterEngine } from "./lib/engine.js";
4
+ export default definePlugin({
5
+ name: 'repeater',
6
+ metadata: {
7
+ displayName: 'Repeater',
8
+ },
9
+ setup(context) {
10
+ const engine = getRepeaterEngine();
11
+ context.lifecycle.add(() => engine.dispose());
12
+ },
13
+ });
package/plugin.ts DELETED
@@ -1,13 +0,0 @@
1
- import { definePlugin } from '@zhin.js/plugin-runtime';
2
- import { getRepeaterEngine } from './src/engine.js';
3
-
4
- export default definePlugin({
5
- name: 'repeater',
6
- metadata: {
7
- displayName: 'Repeater',
8
- },
9
- setup(context) {
10
- const engine = getRepeaterEngine();
11
- context.lifecycle.add(() => engine.dispose());
12
- },
13
- });