@sharpee/plugins 0.9.66-beta → 0.9.67-beta
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/index.d.ts +4 -0
- package/index.d.ts.map +1 -0
- package/index.js +6 -0
- package/index.js.map +1 -0
- package/package.json +1 -10
- package/plugin-registry.d.ts +11 -0
- package/plugin-registry.d.ts.map +1 -0
- package/plugin-registry.js +40 -0
- package/plugin-registry.js.map +1 -0
- package/turn-plugin-context.d.ts +18 -0
- package/turn-plugin-context.d.ts.map +1 -0
- package/turn-plugin-context.js +3 -0
- package/turn-plugin-context.js.map +1 -0
- package/turn-plugin.d.ts +10 -0
- package/turn-plugin.d.ts.map +1 -0
- package/turn-plugin.js +3 -0
- package/turn-plugin.js.map +1 -0
package/index.d.ts
ADDED
package/index.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../mnt/c/repotemp/sharpee/packages/plugins/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC"}
|
package/index.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PluginRegistry = void 0;
|
|
4
|
+
var plugin_registry_1 = require("./plugin-registry");
|
|
5
|
+
Object.defineProperty(exports, "PluginRegistry", { enumerable: true, get: function () { return plugin_registry_1.PluginRegistry; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
package/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../mnt/c/repotemp/sharpee/packages/plugins/src/index.ts"],"names":[],"mappings":";;;AAEA,qDAAmD;AAA1C,iHAAA,cAAc,OAAA"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sharpee/plugins",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.67-beta",
|
|
4
4
|
"description": "Plugin contracts for Sharpee engine turn-cycle extensibility",
|
|
5
5
|
"main": "./index.js",
|
|
6
|
-
"module": "dist-npm/index.js",
|
|
7
6
|
"types": "./index.d.ts",
|
|
8
7
|
"exports": {
|
|
9
8
|
".": {
|
|
@@ -12,14 +11,6 @@
|
|
|
12
11
|
"default": "./index.js"
|
|
13
12
|
}
|
|
14
13
|
},
|
|
15
|
-
"scripts": {
|
|
16
|
-
"build": "tsc",
|
|
17
|
-
"clean": "rimraf dist",
|
|
18
|
-
"build:npm": "tsc --outDir dist-npm"
|
|
19
|
-
},
|
|
20
|
-
"files": [
|
|
21
|
-
"dist-npm"
|
|
22
|
-
],
|
|
23
14
|
"keywords": [
|
|
24
15
|
"interactive-fiction",
|
|
25
16
|
"sharpee",
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TurnPlugin } from './turn-plugin';
|
|
2
|
+
export declare class PluginRegistry {
|
|
3
|
+
private plugins;
|
|
4
|
+
register(plugin: TurnPlugin): void;
|
|
5
|
+
unregister(id: string): void;
|
|
6
|
+
getAll(): TurnPlugin[];
|
|
7
|
+
getById(id: string): TurnPlugin | undefined;
|
|
8
|
+
getStates(): Record<string, unknown>;
|
|
9
|
+
setStates(states: Record<string, unknown>): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=plugin-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-registry.d.ts","sourceRoot":"","sources":["../../../../../mnt/c/repotemp/sharpee/packages/plugins/src/plugin-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAsC;IAErD,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAOlC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAI5B,MAAM,IAAI,UAAU,EAAE;IAMtB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAI3C,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAUpC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAQjD"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PluginRegistry = void 0;
|
|
4
|
+
class PluginRegistry {
|
|
5
|
+
plugins = new Map();
|
|
6
|
+
register(plugin) {
|
|
7
|
+
if (this.plugins.has(plugin.id)) {
|
|
8
|
+
throw new Error(`Plugin already registered: ${plugin.id}`);
|
|
9
|
+
}
|
|
10
|
+
this.plugins.set(plugin.id, plugin);
|
|
11
|
+
}
|
|
12
|
+
unregister(id) {
|
|
13
|
+
this.plugins.delete(id);
|
|
14
|
+
}
|
|
15
|
+
getAll() {
|
|
16
|
+
return Array.from(this.plugins.values()).sort((a, b) => b.priority - a.priority);
|
|
17
|
+
}
|
|
18
|
+
getById(id) {
|
|
19
|
+
return this.plugins.get(id);
|
|
20
|
+
}
|
|
21
|
+
getStates() {
|
|
22
|
+
const states = {};
|
|
23
|
+
for (const plugin of this.plugins.values()) {
|
|
24
|
+
if (plugin.getState) {
|
|
25
|
+
states[plugin.id] = plugin.getState();
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return states;
|
|
29
|
+
}
|
|
30
|
+
setStates(states) {
|
|
31
|
+
for (const [id, state] of Object.entries(states)) {
|
|
32
|
+
const plugin = this.plugins.get(id);
|
|
33
|
+
if (plugin?.setState) {
|
|
34
|
+
plugin.setState(state);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.PluginRegistry = PluginRegistry;
|
|
40
|
+
//# sourceMappingURL=plugin-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-registry.js","sourceRoot":"","sources":["../../../../../../../../mnt/c/repotemp/sharpee/packages/plugins/src/plugin-registry.ts"],"names":[],"mappings":";;;AAEA,MAAa,cAAc;IACjB,OAAO,GAA4B,IAAI,GAAG,EAAE,CAAC;IAErD,QAAQ,CAAC,MAAkB;QACzB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,UAAU,CAAC,EAAU;QACnB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAC3C,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAClC,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,EAAU;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,SAAS;QACP,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;YACxC,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,MAA+B;QACvC,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,MAAM,EAAE,QAAQ,EAAE,CAAC;gBACrB,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;CACF;AA1CD,wCA0CC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { EntityId, SeededRandom, ISemanticEvent } from "./src/index";
|
|
2
|
+
import { WorldModel } from "./src/index";
|
|
3
|
+
export interface TurnPluginActionResult {
|
|
4
|
+
actionId: string;
|
|
5
|
+
success: boolean;
|
|
6
|
+
targetId?: EntityId;
|
|
7
|
+
sharedData?: Record<string, unknown>;
|
|
8
|
+
}
|
|
9
|
+
export interface TurnPluginContext {
|
|
10
|
+
world: WorldModel;
|
|
11
|
+
turn: number;
|
|
12
|
+
playerId: EntityId;
|
|
13
|
+
playerLocation: EntityId;
|
|
14
|
+
random: SeededRandom;
|
|
15
|
+
actionResult?: TurnPluginActionResult;
|
|
16
|
+
actionEvents?: ISemanticEvent[];
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=turn-plugin-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turn-plugin-context.d.ts","sourceRoot":"","sources":["../../../../../mnt/c/repotemp/sharpee/packages/plugins/src/turn-plugin-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,EAAE,QAAQ,CAAC;IACzB,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,CAAC,EAAE,sBAAsB,CAAC;IACtC,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC;CACjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turn-plugin-context.js","sourceRoot":"","sources":["../../../../../../../../mnt/c/repotemp/sharpee/packages/plugins/src/turn-plugin-context.ts"],"names":[],"mappings":""}
|
package/turn-plugin.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ISemanticEvent } from "./src/index";
|
|
2
|
+
import { TurnPluginContext } from './turn-plugin-context';
|
|
3
|
+
export interface TurnPlugin {
|
|
4
|
+
id: string;
|
|
5
|
+
priority: number;
|
|
6
|
+
onAfterAction(context: TurnPluginContext): ISemanticEvent[];
|
|
7
|
+
getState?(): unknown;
|
|
8
|
+
setState?(state: unknown): void;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=turn-plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turn-plugin.d.ts","sourceRoot":"","sources":["../../../../../mnt/c/repotemp/sharpee/packages/plugins/src/turn-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,cAAc,EAAE,CAAC;IAC5D,QAAQ,CAAC,IAAI,OAAO,CAAC;IACrB,QAAQ,CAAC,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACjC"}
|
package/turn-plugin.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turn-plugin.js","sourceRoot":"","sources":["../../../../../../../../mnt/c/repotemp/sharpee/packages/plugins/src/turn-plugin.ts"],"names":[],"mappings":""}
|