@sharpee/core 0.9.56-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.
Files changed (199) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +48 -0
  3. package/dist/constants/attributes.d.ts +32 -0
  4. package/dist/constants/attributes.d.ts.map +1 -0
  5. package/dist/constants/attributes.js +53 -0
  6. package/dist/constants/attributes.js.map +1 -0
  7. package/dist/constants/core-events.d.ts +37 -0
  8. package/dist/constants/core-events.d.ts.map +1 -0
  9. package/dist/constants/core-events.js +50 -0
  10. package/dist/constants/core-events.js.map +1 -0
  11. package/dist/constants/entity-types.d.ts +15 -0
  12. package/dist/constants/entity-types.d.ts.map +1 -0
  13. package/dist/constants/entity-types.js +27 -0
  14. package/dist/constants/entity-types.js.map +1 -0
  15. package/dist/constants/index.d.ts +22 -0
  16. package/dist/constants/index.d.ts.map +1 -0
  17. package/dist/constants/index.js +41 -0
  18. package/dist/constants/index.js.map +1 -0
  19. package/dist/constants/relationships.d.ts +25 -0
  20. package/dist/constants/relationships.d.ts.map +1 -0
  21. package/dist/constants/relationships.js +55 -0
  22. package/dist/constants/relationships.js.map +1 -0
  23. package/dist/debug/index.d.ts +5 -0
  24. package/dist/debug/index.d.ts.map +1 -0
  25. package/dist/debug/index.js +21 -0
  26. package/dist/debug/index.js.map +1 -0
  27. package/dist/debug/types.d.ts +65 -0
  28. package/dist/debug/types.d.ts.map +1 -0
  29. package/dist/debug/types.js +39 -0
  30. package/dist/debug/types.js.map +1 -0
  31. package/dist/events/event-factory.d.ts +81 -0
  32. package/dist/events/event-factory.d.ts.map +1 -0
  33. package/dist/events/event-factory.js +74 -0
  34. package/dist/events/event-factory.js.map +1 -0
  35. package/dist/events/event-helpers.d.ts +118 -0
  36. package/dist/events/event-helpers.d.ts.map +1 -0
  37. package/dist/events/event-helpers.js +151 -0
  38. package/dist/events/event-helpers.js.map +1 -0
  39. package/dist/events/event-registry.d.ts +154 -0
  40. package/dist/events/event-registry.d.ts.map +1 -0
  41. package/dist/events/event-registry.js +24 -0
  42. package/dist/events/event-registry.js.map +1 -0
  43. package/dist/events/event-source.d.ts +39 -0
  44. package/dist/events/event-source.d.ts.map +1 -0
  45. package/dist/events/event-source.js +57 -0
  46. package/dist/events/event-source.js.map +1 -0
  47. package/dist/events/event-system.d.ts +27 -0
  48. package/dist/events/event-system.d.ts.map +1 -0
  49. package/dist/events/event-system.js +64 -0
  50. package/dist/events/event-system.js.map +1 -0
  51. package/dist/events/game-events.d.ts +245 -0
  52. package/dist/events/game-events.d.ts.map +1 -0
  53. package/dist/events/game-events.js +250 -0
  54. package/dist/events/game-events.js.map +1 -0
  55. package/dist/events/index.d.ts +19 -0
  56. package/dist/events/index.d.ts.map +1 -0
  57. package/dist/events/index.js +51 -0
  58. package/dist/events/index.js.map +1 -0
  59. package/dist/events/platform-events.d.ts +161 -0
  60. package/dist/events/platform-events.d.ts.map +1 -0
  61. package/dist/events/platform-events.js +135 -0
  62. package/dist/events/platform-events.js.map +1 -0
  63. package/dist/events/semantic-event-source.d.ts +85 -0
  64. package/dist/events/semantic-event-source.d.ts.map +1 -0
  65. package/dist/events/semantic-event-source.js +147 -0
  66. package/dist/events/semantic-event-source.js.map +1 -0
  67. package/dist/events/standard-events.d.ts +26 -0
  68. package/dist/events/standard-events.d.ts.map +1 -0
  69. package/dist/events/standard-events.js +27 -0
  70. package/dist/events/standard-events.js.map +1 -0
  71. package/dist/events/system-event.d.ts +62 -0
  72. package/dist/events/system-event.d.ts.map +1 -0
  73. package/dist/events/system-event.js +55 -0
  74. package/dist/events/system-event.js.map +1 -0
  75. package/dist/events/typed-event.d.ts +69 -0
  76. package/dist/events/typed-event.d.ts.map +1 -0
  77. package/dist/events/typed-event.js +20 -0
  78. package/dist/events/typed-event.js.map +1 -0
  79. package/dist/events/types.d.ts +105 -0
  80. package/dist/events/types.d.ts.map +1 -0
  81. package/dist/events/types.js +4 -0
  82. package/dist/events/types.js.map +1 -0
  83. package/dist/execution/index.d.ts +2 -0
  84. package/dist/execution/index.d.ts.map +1 -0
  85. package/dist/execution/index.js +23 -0
  86. package/dist/execution/index.js.map +1 -0
  87. package/dist/execution/types.d.ts +117 -0
  88. package/dist/execution/types.d.ts.map +1 -0
  89. package/dist/execution/types.js +4 -0
  90. package/dist/execution/types.js.map +1 -0
  91. package/dist/extensions/index.d.ts +3 -0
  92. package/dist/extensions/index.d.ts.map +1 -0
  93. package/dist/extensions/index.js +20 -0
  94. package/dist/extensions/index.js.map +1 -0
  95. package/dist/extensions/registry.d.ts +61 -0
  96. package/dist/extensions/registry.d.ts.map +1 -0
  97. package/dist/extensions/registry.js +153 -0
  98. package/dist/extensions/registry.js.map +1 -0
  99. package/dist/extensions/types.d.ts +84 -0
  100. package/dist/extensions/types.d.ts.map +1 -0
  101. package/dist/extensions/types.js +15 -0
  102. package/dist/extensions/types.js.map +1 -0
  103. package/dist/ifid/ifid.d.ts +30 -0
  104. package/dist/ifid/ifid.d.ts.map +1 -0
  105. package/dist/ifid/ifid.js +52 -0
  106. package/dist/ifid/ifid.js.map +1 -0
  107. package/dist/ifid/index.d.ts +2 -0
  108. package/dist/ifid/index.d.ts.map +1 -0
  109. package/dist/ifid/index.js +9 -0
  110. package/dist/ifid/index.js.map +1 -0
  111. package/dist/index.d.ts +11 -0
  112. package/dist/index.d.ts.map +1 -0
  113. package/dist/index.js +36 -0
  114. package/dist/index.js.map +1 -0
  115. package/dist/metadata/index.d.ts +2 -0
  116. package/dist/metadata/index.d.ts.map +1 -0
  117. package/dist/metadata/index.js +3 -0
  118. package/dist/metadata/index.js.map +1 -0
  119. package/dist/metadata/story-metadata.d.ts +64 -0
  120. package/dist/metadata/story-metadata.d.ts.map +1 -0
  121. package/dist/metadata/story-metadata.js +5 -0
  122. package/dist/metadata/story-metadata.js.map +1 -0
  123. package/dist/query/index.d.ts +9 -0
  124. package/dist/query/index.d.ts.map +1 -0
  125. package/dist/query/index.js +25 -0
  126. package/dist/query/index.js.map +1 -0
  127. package/dist/query/query-manager.d.ts +86 -0
  128. package/dist/query/query-manager.d.ts.map +1 -0
  129. package/dist/query/query-manager.js +391 -0
  130. package/dist/query/query-manager.js.map +1 -0
  131. package/dist/query/types.d.ts +188 -0
  132. package/dist/query/types.d.ts.map +1 -0
  133. package/dist/query/types.js +106 -0
  134. package/dist/query/types.js.map +1 -0
  135. package/dist/random/index.d.ts +5 -0
  136. package/dist/random/index.d.ts.map +1 -0
  137. package/dist/random/index.js +9 -0
  138. package/dist/random/index.js.map +1 -0
  139. package/dist/random/seeded-random.d.ts +32 -0
  140. package/dist/random/seeded-random.d.ts.map +1 -0
  141. package/dist/random/seeded-random.js +62 -0
  142. package/dist/random/seeded-random.js.map +1 -0
  143. package/dist/rules/compatibility.d.ts +46 -0
  144. package/dist/rules/compatibility.d.ts.map +1 -0
  145. package/dist/rules/compatibility.js +62 -0
  146. package/dist/rules/compatibility.js.map +1 -0
  147. package/dist/rules/condition-builder.d.ts +23 -0
  148. package/dist/rules/condition-builder.d.ts.map +1 -0
  149. package/dist/rules/condition-builder.js +16 -0
  150. package/dist/rules/condition-builder.js.map +1 -0
  151. package/dist/rules/helpers.d.ts +51 -0
  152. package/dist/rules/helpers.d.ts.map +1 -0
  153. package/dist/rules/helpers.js +111 -0
  154. package/dist/rules/helpers.js.map +1 -0
  155. package/dist/rules/index.d.ts +12 -0
  156. package/dist/rules/index.d.ts.map +1 -0
  157. package/dist/rules/index.js +34 -0
  158. package/dist/rules/index.js.map +1 -0
  159. package/dist/rules/rule-system.d.ts +6 -0
  160. package/dist/rules/rule-system.d.ts.map +1 -0
  161. package/dist/rules/rule-system.js +10 -0
  162. package/dist/rules/rule-system.js.map +1 -0
  163. package/dist/rules/rule-world-adapter.d.ts +43 -0
  164. package/dist/rules/rule-world-adapter.d.ts.map +1 -0
  165. package/dist/rules/rule-world-adapter.js +74 -0
  166. package/dist/rules/rule-world-adapter.js.map +1 -0
  167. package/dist/rules/simple-rule-system.d.ts +36 -0
  168. package/dist/rules/simple-rule-system.d.ts.map +1 -0
  169. package/dist/rules/simple-rule-system.js +135 -0
  170. package/dist/rules/simple-rule-system.js.map +1 -0
  171. package/dist/rules/types.d.ts +64 -0
  172. package/dist/rules/types.d.ts.map +1 -0
  173. package/dist/rules/types.js +6 -0
  174. package/dist/rules/types.js.map +1 -0
  175. package/dist/types/attribute.d.ts +40 -0
  176. package/dist/types/attribute.d.ts.map +1 -0
  177. package/dist/types/attribute.js +4 -0
  178. package/dist/types/attribute.js.map +1 -0
  179. package/dist/types/entity.d.ts +47 -0
  180. package/dist/types/entity.d.ts.map +1 -0
  181. package/dist/types/entity.js +4 -0
  182. package/dist/types/entity.js.map +1 -0
  183. package/dist/types/index.d.ts +10 -0
  184. package/dist/types/index.d.ts.map +1 -0
  185. package/dist/types/index.js +27 -0
  186. package/dist/types/index.js.map +1 -0
  187. package/dist/types/relationship.d.ts +44 -0
  188. package/dist/types/relationship.d.ts.map +1 -0
  189. package/dist/types/relationship.js +4 -0
  190. package/dist/types/relationship.js.map +1 -0
  191. package/dist/types/result.d.ts +81 -0
  192. package/dist/types/result.d.ts.map +1 -0
  193. package/dist/types/result.js +79 -0
  194. package/dist/types/result.js.map +1 -0
  195. package/dist/types/save-data.d.ts +264 -0
  196. package/dist/types/save-data.d.ts.map +1 -0
  197. package/dist/types/save-data.js +6 -0
  198. package/dist/types/save-data.js.map +1 -0
  199. package/package.json +65 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"game-events.js","sourceRoot":"","sources":["../../src/events/game-events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Core event system
3
+ *
4
+ * Provides a generic event bus and text processing system
5
+ * without knowledge of specific event types
6
+ */
7
+ export * from './types';
8
+ export * from './standard-events';
9
+ export * from './system-event';
10
+ export * from './platform-events';
11
+ export * from './game-events';
12
+ export * from './event-registry';
13
+ export * from './typed-event';
14
+ export * from './event-factory';
15
+ export * from './event-helpers';
16
+ export { IGenericEventSource, SimpleEventSource, createEventSource as createGenericEventSource } from './event-source';
17
+ export { ISemanticEventSource, SemanticEventSourceImpl, createSemanticEventSource } from './semantic-event-source';
18
+ export { createEvent, EventSourceImpl, createEventSource } from './event-system';
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAGH,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAG9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAGhC,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,IAAI,wBAAwB,EAC9C,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,yBAAyB,EAC1B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,WAAW,EACX,eAAe,EACf,iBAAiB,EAClB,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ // packages/core/src/events/index.ts
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.createEventSource = exports.EventSourceImpl = exports.createEvent = exports.createSemanticEventSource = exports.SemanticEventSourceImpl = exports.createGenericEventSource = exports.SimpleEventSource = void 0;
19
+ /**
20
+ * Core event system
21
+ *
22
+ * Provides a generic event bus and text processing system
23
+ * without knowledge of specific event types
24
+ */
25
+ // Export types first
26
+ __exportStar(require("./types"), exports);
27
+ __exportStar(require("./standard-events"), exports);
28
+ __exportStar(require("./system-event"), exports);
29
+ __exportStar(require("./platform-events"), exports);
30
+ __exportStar(require("./game-events"), exports);
31
+ // Export typed event system (ADR-082)
32
+ __exportStar(require("./event-registry"), exports);
33
+ __exportStar(require("./typed-event"), exports);
34
+ __exportStar(require("./event-factory"), exports);
35
+ __exportStar(require("./event-helpers"), exports);
36
+ // Export event sources with specific names to avoid conflicts
37
+ var event_source_1 = require("./event-source");
38
+ Object.defineProperty(exports, "SimpleEventSource", { enumerable: true, get: function () { return event_source_1.SimpleEventSource; } });
39
+ Object.defineProperty(exports, "createGenericEventSource", { enumerable: true, get: function () { return event_source_1.createEventSource; } });
40
+ var semantic_event_source_1 = require("./semantic-event-source");
41
+ Object.defineProperty(exports, "SemanticEventSourceImpl", { enumerable: true, get: function () { return semantic_event_source_1.SemanticEventSourceImpl; } });
42
+ Object.defineProperty(exports, "createSemanticEventSource", { enumerable: true, get: function () { return semantic_event_source_1.createSemanticEventSource; } });
43
+ // Export from event-system
44
+ var event_system_1 = require("./event-system");
45
+ Object.defineProperty(exports, "createEvent", { enumerable: true, get: function () { return event_system_1.createEvent; } });
46
+ Object.defineProperty(exports, "EventSourceImpl", { enumerable: true, get: function () { return event_system_1.EventSourceImpl; } });
47
+ Object.defineProperty(exports, "createEventSource", { enumerable: true, get: function () { return event_system_1.createEventSource; } });
48
+ // message-resolver moved to stdlib (uses GameContext)
49
+ // enhanced-text-processor moved to stdlib (uses GameContext)
50
+ // message-builder moved to stdlib (uses GameContext)
51
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;;AAEpC;;;;;GAKG;AAEH,qBAAqB;AACrB,0CAAwB;AACxB,oDAAkC;AAClC,iDAA+B;AAC/B,oDAAkC;AAClC,gDAA8B;AAE9B,sCAAsC;AACtC,mDAAiC;AACjC,gDAA8B;AAC9B,kDAAgC;AAChC,kDAAgC;AAEhC,8DAA8D;AAC9D,+CAIwB;AAFtB,iHAAA,iBAAiB,OAAA;AACjB,wHAAA,iBAAiB,OAA4B;AAG/C,iEAIiC;AAF/B,gIAAA,uBAAuB,OAAA;AACvB,kIAAA,yBAAyB,OAAA;AAG3B,2BAA2B;AAC3B,+CAIwB;AAHtB,2GAAA,WAAW,OAAA;AACX,+GAAA,eAAe,OAAA;AACf,iHAAA,iBAAiB,OAAA;AAGnB,sDAAsD;AACtD,8DAA8D;AAC9D,qDAAqD"}
@@ -0,0 +1,161 @@
1
+ /**
2
+ * Platform events for operations that require client/host intervention
3
+ * These events are processed after turn completion but before text service
4
+ */
5
+ import { ISemanticEvent } from './types';
6
+ import { IQuitContext, IRestartContext } from '../types/save-data';
7
+ /**
8
+ * Platform event types for save, restore, quit, and restart operations
9
+ */
10
+ export declare const PlatformEventType: {
11
+ readonly SAVE_REQUESTED: "platform.save_requested";
12
+ readonly RESTORE_REQUESTED: "platform.restore_requested";
13
+ readonly QUIT_REQUESTED: "platform.quit_requested";
14
+ readonly RESTART_REQUESTED: "platform.restart_requested";
15
+ readonly UNDO_REQUESTED: "platform.undo_requested";
16
+ readonly AGAIN_REQUESTED: "platform.again_requested";
17
+ readonly SAVE_COMPLETED: "platform.save_completed";
18
+ readonly RESTORE_COMPLETED: "platform.restore_completed";
19
+ readonly QUIT_CONFIRMED: "platform.quit_confirmed";
20
+ readonly RESTART_COMPLETED: "platform.restart_completed";
21
+ readonly UNDO_COMPLETED: "platform.undo_completed";
22
+ readonly SAVE_FAILED: "platform.save_failed";
23
+ readonly RESTORE_FAILED: "platform.restore_failed";
24
+ readonly QUIT_CANCELLED: "platform.quit_cancelled";
25
+ readonly RESTART_CANCELLED: "platform.restart_cancelled";
26
+ readonly UNDO_FAILED: "platform.undo_failed";
27
+ readonly AGAIN_FAILED: "platform.again_failed";
28
+ };
29
+ export type PlatformEventTypeValue = typeof PlatformEventType[keyof typeof PlatformEventType];
30
+ /**
31
+ * Base interface for all platform events
32
+ */
33
+ export interface IPlatformEvent extends ISemanticEvent {
34
+ type: PlatformEventTypeValue;
35
+ /**
36
+ * Indicates this event requires client action and should be processed
37
+ * after turn completion but before text service
38
+ */
39
+ requiresClientAction: true;
40
+ /**
41
+ * Platform-specific context for the operation
42
+ */
43
+ payload: {
44
+ /**
45
+ * Context specific to the platform operation
46
+ */
47
+ context?: unknown;
48
+ /**
49
+ * For completion/error events: whether the operation succeeded
50
+ */
51
+ success?: boolean;
52
+ /**
53
+ * For error events: error message or reason
54
+ */
55
+ error?: string;
56
+ /**
57
+ * Any additional data specific to the platform operation
58
+ */
59
+ [key: string]: unknown;
60
+ };
61
+ }
62
+ /**
63
+ * Context for save operations
64
+ */
65
+ export interface ISaveContext {
66
+ /**
67
+ * Optional name for the save
68
+ */
69
+ saveName?: string;
70
+ /**
71
+ * Save slot identifier
72
+ */
73
+ slot?: string | number;
74
+ /**
75
+ * Whether this is an autosave
76
+ */
77
+ autosave?: boolean;
78
+ /**
79
+ * Additional metadata to store with the save
80
+ */
81
+ metadata?: Record<string, unknown>;
82
+ /**
83
+ * Timestamp when save was requested
84
+ */
85
+ timestamp: number;
86
+ }
87
+ /**
88
+ * Context for restore operations
89
+ */
90
+ export interface IRestoreContext {
91
+ /**
92
+ * Specific save slot to restore
93
+ */
94
+ slot?: string | number;
95
+ /**
96
+ * List of available saves (if known)
97
+ */
98
+ availableSaves?: Array<{
99
+ slot: string | number;
100
+ name?: string;
101
+ timestamp: number;
102
+ metadata?: Record<string, unknown>;
103
+ }>;
104
+ /**
105
+ * Information about the last save
106
+ */
107
+ lastSave?: {
108
+ slot: string | number;
109
+ timestamp: number;
110
+ };
111
+ }
112
+ export { IQuitContext, IRestartContext };
113
+ /**
114
+ * Type guards for platform events
115
+ */
116
+ export declare function isPlatformEvent(event: ISemanticEvent): event is IPlatformEvent;
117
+ export declare function isPlatformRequestEvent(event: ISemanticEvent): boolean;
118
+ export declare function isPlatformCompletionEvent(event: ISemanticEvent): boolean;
119
+ /**
120
+ * Helper functions to create platform events
121
+ */
122
+ export declare function createPlatformEvent(type: PlatformEventTypeValue, context?: unknown, additionalPayload?: Record<string, unknown>): IPlatformEvent;
123
+ export declare function createSaveRequestedEvent(context: ISaveContext): IPlatformEvent;
124
+ export declare function createRestoreRequestedEvent(context: IRestoreContext): IPlatformEvent;
125
+ export declare function createQuitRequestedEvent(context: IQuitContext): IPlatformEvent;
126
+ export declare function createRestartRequestedEvent(context: IRestartContext): IPlatformEvent;
127
+ /**
128
+ * Helper functions for completion events
129
+ */
130
+ export declare function createSaveCompletedEvent(success: boolean, error?: string): IPlatformEvent;
131
+ export declare function createRestoreCompletedEvent(success: boolean, error?: string): IPlatformEvent;
132
+ export declare function createQuitConfirmedEvent(): IPlatformEvent;
133
+ export declare function createQuitCancelledEvent(): IPlatformEvent;
134
+ export declare function createRestartCompletedEvent(success: boolean): IPlatformEvent;
135
+ /**
136
+ * Context for undo operations
137
+ */
138
+ export interface IUndoContext {
139
+ /**
140
+ * Number of turns to undo (default 1)
141
+ */
142
+ turns?: number;
143
+ }
144
+ export declare function createUndoRequestedEvent(context?: IUndoContext): IPlatformEvent;
145
+ export declare function createUndoCompletedEvent(success: boolean, restoredToTurn?: number, error?: string): IPlatformEvent;
146
+ /**
147
+ * Context for again (repeat) operations
148
+ */
149
+ export interface IAgainContext {
150
+ /**
151
+ * The original command text to repeat
152
+ */
153
+ command: string;
154
+ /**
155
+ * The action ID of the command to repeat
156
+ */
157
+ actionId: string;
158
+ }
159
+ export declare function createAgainRequestedEvent(context: IAgainContext): IPlatformEvent;
160
+ export declare function createAgainFailedEvent(error: string): IPlatformEvent;
161
+ //# sourceMappingURL=platform-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-events.d.ts","sourceRoot":"","sources":["../../src/events/platform-events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+ /**
3
+ * Platform events for operations that require client/host intervention
4
+ * These events are processed after turn completion but before text service
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.PlatformEventType = void 0;
8
+ exports.isPlatformEvent = isPlatformEvent;
9
+ exports.isPlatformRequestEvent = isPlatformRequestEvent;
10
+ exports.isPlatformCompletionEvent = isPlatformCompletionEvent;
11
+ exports.createPlatformEvent = createPlatformEvent;
12
+ exports.createSaveRequestedEvent = createSaveRequestedEvent;
13
+ exports.createRestoreRequestedEvent = createRestoreRequestedEvent;
14
+ exports.createQuitRequestedEvent = createQuitRequestedEvent;
15
+ exports.createRestartRequestedEvent = createRestartRequestedEvent;
16
+ exports.createSaveCompletedEvent = createSaveCompletedEvent;
17
+ exports.createRestoreCompletedEvent = createRestoreCompletedEvent;
18
+ exports.createQuitConfirmedEvent = createQuitConfirmedEvent;
19
+ exports.createQuitCancelledEvent = createQuitCancelledEvent;
20
+ exports.createRestartCompletedEvent = createRestartCompletedEvent;
21
+ exports.createUndoRequestedEvent = createUndoRequestedEvent;
22
+ exports.createUndoCompletedEvent = createUndoCompletedEvent;
23
+ exports.createAgainRequestedEvent = createAgainRequestedEvent;
24
+ exports.createAgainFailedEvent = createAgainFailedEvent;
25
+ /**
26
+ * Platform event types for save, restore, quit, and restart operations
27
+ */
28
+ exports.PlatformEventType = {
29
+ // Request events - emitted by actions
30
+ SAVE_REQUESTED: 'platform.save_requested',
31
+ RESTORE_REQUESTED: 'platform.restore_requested',
32
+ QUIT_REQUESTED: 'platform.quit_requested',
33
+ RESTART_REQUESTED: 'platform.restart_requested',
34
+ UNDO_REQUESTED: 'platform.undo_requested',
35
+ AGAIN_REQUESTED: 'platform.again_requested',
36
+ // Completion events - emitted by engine after processing
37
+ SAVE_COMPLETED: 'platform.save_completed',
38
+ RESTORE_COMPLETED: 'platform.restore_completed',
39
+ QUIT_CONFIRMED: 'platform.quit_confirmed',
40
+ RESTART_COMPLETED: 'platform.restart_completed',
41
+ UNDO_COMPLETED: 'platform.undo_completed',
42
+ // Error events
43
+ SAVE_FAILED: 'platform.save_failed',
44
+ RESTORE_FAILED: 'platform.restore_failed',
45
+ QUIT_CANCELLED: 'platform.quit_cancelled',
46
+ RESTART_CANCELLED: 'platform.restart_cancelled',
47
+ UNDO_FAILED: 'platform.undo_failed',
48
+ AGAIN_FAILED: 'platform.again_failed'
49
+ };
50
+ /**
51
+ * Type guards for platform events
52
+ */
53
+ function isPlatformEvent(event) {
54
+ return 'requiresClientAction' in event && event.requiresClientAction === true;
55
+ }
56
+ function isPlatformRequestEvent(event) {
57
+ return isPlatformEvent(event) && (event.type === exports.PlatformEventType.SAVE_REQUESTED ||
58
+ event.type === exports.PlatformEventType.RESTORE_REQUESTED ||
59
+ event.type === exports.PlatformEventType.QUIT_REQUESTED ||
60
+ event.type === exports.PlatformEventType.RESTART_REQUESTED ||
61
+ event.type === exports.PlatformEventType.UNDO_REQUESTED ||
62
+ event.type === exports.PlatformEventType.AGAIN_REQUESTED);
63
+ }
64
+ function isPlatformCompletionEvent(event) {
65
+ return isPlatformEvent(event) && (event.type === exports.PlatformEventType.SAVE_COMPLETED ||
66
+ event.type === exports.PlatformEventType.RESTORE_COMPLETED ||
67
+ event.type === exports.PlatformEventType.QUIT_CONFIRMED ||
68
+ event.type === exports.PlatformEventType.RESTART_COMPLETED ||
69
+ event.type === exports.PlatformEventType.UNDO_COMPLETED ||
70
+ event.type === exports.PlatformEventType.SAVE_FAILED ||
71
+ event.type === exports.PlatformEventType.RESTORE_FAILED ||
72
+ event.type === exports.PlatformEventType.QUIT_CANCELLED ||
73
+ event.type === exports.PlatformEventType.RESTART_CANCELLED ||
74
+ event.type === exports.PlatformEventType.UNDO_FAILED ||
75
+ event.type === exports.PlatformEventType.AGAIN_FAILED);
76
+ }
77
+ /**
78
+ * Helper functions to create platform events
79
+ */
80
+ function createPlatformEvent(type, context, additionalPayload) {
81
+ return {
82
+ id: `platform-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`,
83
+ type,
84
+ timestamp: Date.now(),
85
+ requiresClientAction: true,
86
+ entities: {},
87
+ payload: {
88
+ context,
89
+ ...additionalPayload
90
+ }
91
+ };
92
+ }
93
+ function createSaveRequestedEvent(context) {
94
+ return createPlatformEvent(exports.PlatformEventType.SAVE_REQUESTED, context);
95
+ }
96
+ function createRestoreRequestedEvent(context) {
97
+ return createPlatformEvent(exports.PlatformEventType.RESTORE_REQUESTED, context);
98
+ }
99
+ function createQuitRequestedEvent(context) {
100
+ return createPlatformEvent(exports.PlatformEventType.QUIT_REQUESTED, context);
101
+ }
102
+ function createRestartRequestedEvent(context) {
103
+ return createPlatformEvent(exports.PlatformEventType.RESTART_REQUESTED, context);
104
+ }
105
+ /**
106
+ * Helper functions for completion events
107
+ */
108
+ function createSaveCompletedEvent(success, error) {
109
+ return createPlatformEvent(success ? exports.PlatformEventType.SAVE_COMPLETED : exports.PlatformEventType.SAVE_FAILED, undefined, { success, error });
110
+ }
111
+ function createRestoreCompletedEvent(success, error) {
112
+ return createPlatformEvent(success ? exports.PlatformEventType.RESTORE_COMPLETED : exports.PlatformEventType.RESTORE_FAILED, undefined, { success, error });
113
+ }
114
+ function createQuitConfirmedEvent() {
115
+ return createPlatformEvent(exports.PlatformEventType.QUIT_CONFIRMED, undefined, { success: true });
116
+ }
117
+ function createQuitCancelledEvent() {
118
+ return createPlatformEvent(exports.PlatformEventType.QUIT_CANCELLED, undefined, { success: false });
119
+ }
120
+ function createRestartCompletedEvent(success) {
121
+ return createPlatformEvent(success ? exports.PlatformEventType.RESTART_COMPLETED : exports.PlatformEventType.RESTART_CANCELLED, undefined, { success });
122
+ }
123
+ function createUndoRequestedEvent(context) {
124
+ return createPlatformEvent(exports.PlatformEventType.UNDO_REQUESTED, context);
125
+ }
126
+ function createUndoCompletedEvent(success, restoredToTurn, error) {
127
+ return createPlatformEvent(success ? exports.PlatformEventType.UNDO_COMPLETED : exports.PlatformEventType.UNDO_FAILED, undefined, { success, restoredToTurn, error });
128
+ }
129
+ function createAgainRequestedEvent(context) {
130
+ return createPlatformEvent(exports.PlatformEventType.AGAIN_REQUESTED, context);
131
+ }
132
+ function createAgainFailedEvent(error) {
133
+ return createPlatformEvent(exports.PlatformEventType.AGAIN_FAILED, undefined, { success: false, error });
134
+ }
135
+ //# sourceMappingURL=platform-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-events.js","sourceRoot":"","sources":["../../src/events/platform-events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Semantic event source - specialized event source for story events
3
+ * Builds on the generic event source infrastructure
4
+ */
5
+ import { IGenericEventSource, SimpleEventSource } from './event-source';
6
+ import { ISemanticEvent, IEventEmitter } from './types';
7
+ import { EntityId } from '../types/entity';
8
+ /**
9
+ * Specialized event source for semantic (story) events
10
+ * Provides additional filtering and query capabilities
11
+ */
12
+ export interface ISemanticEventSource extends IGenericEventSource<ISemanticEvent> {
13
+ /**
14
+ * Add an event to the source
15
+ */
16
+ addEvent(event: ISemanticEvent): void;
17
+ /**
18
+ * Get all events in the source
19
+ */
20
+ getAllEvents(): ISemanticEvent[];
21
+ /**
22
+ * Get events of a specific type
23
+ */
24
+ getEventsByType(type: string): ISemanticEvent[];
25
+ /**
26
+ * Get events involving a specific entity
27
+ */
28
+ getEventsByEntity(entityId: EntityId): ISemanticEvent[];
29
+ /**
30
+ * Get events with a specific tag
31
+ */
32
+ getEventsByTag(tag: string): ISemanticEvent[];
33
+ /**
34
+ * Clear all events
35
+ */
36
+ clearEvents(): void;
37
+ /**
38
+ * Apply a filter to the events
39
+ */
40
+ filter(predicate: (event: ISemanticEvent) => boolean): ISemanticEvent[];
41
+ /**
42
+ * Get the event emitter associated with this source
43
+ */
44
+ getEmitter(): IEventEmitter;
45
+ }
46
+ /**
47
+ * Implementation of semantic event source
48
+ */
49
+ export declare class SemanticEventSourceImpl extends SimpleEventSource<ISemanticEvent> implements ISemanticEventSource {
50
+ private events;
51
+ private eventEmitter;
52
+ private lastProcessedIndex;
53
+ constructor();
54
+ addEvent(event: ISemanticEvent): void;
55
+ getAllEvents(): ISemanticEvent[];
56
+ getEventsByType(type: string): ISemanticEvent[];
57
+ getEventsByEntity(entityId: EntityId): ISemanticEvent[];
58
+ getEventsByTag(tag: string): ISemanticEvent[];
59
+ filter(predicate: (event: ISemanticEvent) => boolean): ISemanticEvent[];
60
+ clearEvents(): void;
61
+ getEmitter(): IEventEmitter;
62
+ /**
63
+ * Get events since a specific event ID
64
+ */
65
+ getEventsSince(eventId?: string): ISemanticEvent[];
66
+ /**
67
+ * Get unprocessed events and mark them as processed
68
+ */
69
+ getUnprocessedEvents(): ISemanticEvent[];
70
+ }
71
+ /**
72
+ * Create a new semantic event source
73
+ */
74
+ export declare function createSemanticEventSource(): ISemanticEventSource;
75
+ /**
76
+ * Type alias for backwards compatibility
77
+ * @deprecated Use SemanticEventSource instead
78
+ */
79
+ export type EventSource = ISemanticEventSource;
80
+ /**
81
+ * Create event source for backwards compatibility
82
+ * @deprecated Use createSemanticEventSource instead
83
+ */
84
+ export declare function createEventSource(): EventSource;
85
+ //# sourceMappingURL=semantic-event-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic-event-source.d.ts","sourceRoot":"","sources":["../../src/events/semantic-event-source.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAiB,MAAM,SAAS,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB,CAAC,cAAc,CAAC;IAC/E;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAEtC;;OAEG;IACH,YAAY,IAAI,cAAc,EAAE,CAAC;IAEjC;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,EAAE,CAAC;IAEhD;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,EAAE,CAAC;IAExD;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,EAAE,CAAC;IAE9C;;OAEG;IACH,WAAW,IAAI,IAAI,CAAC;IAEpB;;OAEG;IACH,MAAM,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,GAAG,cAAc,EAAE,CAAC;IAExE;;OAEG;IACH,UAAU,IAAI,aAAa,CAAC;CAC7B;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,iBAAiB,CAAC,cAAc,CAAE,YAAW,oBAAoB;IAC5G,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,kBAAkB,CAAa;;IAYvC,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAKrC,YAAY,IAAI,cAAc,EAAE;IAIhC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,EAAE;IAI/C,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,EAAE;IAavD,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,EAAE;IAI7C,MAAM,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,GAAG,cAAc,EAAE;IAIvE,WAAW,IAAI,IAAI;IAInB,UAAU,IAAI,aAAa;IAI3B;;OAEG;IACH,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,cAAc,EAAE;IAalD;;OAEG;IACH,oBAAoB,IAAI,cAAc,EAAE;CAKzC;AA4DD;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,oBAAoB,CAEhE;AAED;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,oBAAoB,CAAC;AAE/C;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,WAAW,CAE/C"}
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ /**
3
+ * Semantic event source - specialized event source for story events
4
+ * Builds on the generic event source infrastructure
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.SemanticEventSourceImpl = void 0;
8
+ exports.createSemanticEventSource = createSemanticEventSource;
9
+ exports.createEventSource = createEventSource;
10
+ const event_source_1 = require("./event-source");
11
+ /**
12
+ * Implementation of semantic event source
13
+ */
14
+ class SemanticEventSourceImpl extends event_source_1.SimpleEventSource {
15
+ events = [];
16
+ eventEmitter;
17
+ lastProcessedIndex = 0;
18
+ constructor() {
19
+ super();
20
+ this.eventEmitter = new EventEmitterImpl();
21
+ // Bridge between generic event source and semantic event emitter
22
+ this.subscribe((event) => {
23
+ this.eventEmitter.emit(event);
24
+ });
25
+ }
26
+ addEvent(event) {
27
+ this.events.push(event);
28
+ this.emit(event);
29
+ }
30
+ getAllEvents() {
31
+ return [...this.events];
32
+ }
33
+ getEventsByType(type) {
34
+ return this.events.filter(event => event.type === type);
35
+ }
36
+ getEventsByEntity(entityId) {
37
+ return this.events.filter(event => {
38
+ const entities = event.entities;
39
+ return (entities.actor === entityId ||
40
+ entities.target === entityId ||
41
+ entities.instrument === entityId ||
42
+ entities.location === entityId ||
43
+ (entities.others && entities.others.includes(entityId)));
44
+ });
45
+ }
46
+ getEventsByTag(tag) {
47
+ return this.events.filter(event => event.tags && event.tags.includes(tag));
48
+ }
49
+ filter(predicate) {
50
+ return this.events.filter(predicate);
51
+ }
52
+ clearEvents() {
53
+ this.events = [];
54
+ }
55
+ getEmitter() {
56
+ return this.eventEmitter;
57
+ }
58
+ /**
59
+ * Get events since a specific event ID
60
+ */
61
+ getEventsSince(eventId) {
62
+ if (!eventId) {
63
+ return this.getAllEvents();
64
+ }
65
+ const index = this.events.findIndex(e => e.id === eventId);
66
+ if (index === -1) {
67
+ return this.getAllEvents();
68
+ }
69
+ return this.events.slice(index + 1);
70
+ }
71
+ /**
72
+ * Get unprocessed events and mark them as processed
73
+ */
74
+ getUnprocessedEvents() {
75
+ const unprocessed = this.events.slice(this.lastProcessedIndex);
76
+ this.lastProcessedIndex = this.events.length;
77
+ return unprocessed;
78
+ }
79
+ }
80
+ exports.SemanticEventSourceImpl = SemanticEventSourceImpl;
81
+ /**
82
+ * Implementation of the EventEmitter interface
83
+ */
84
+ class EventEmitterImpl {
85
+ listeners = new Map();
86
+ globalListeners = new Set();
87
+ on(type, listener) {
88
+ if (type === '*') {
89
+ this.globalListeners.add(listener);
90
+ return;
91
+ }
92
+ if (!this.listeners.has(type)) {
93
+ this.listeners.set(type, new Set());
94
+ }
95
+ this.listeners.get(type).add(listener);
96
+ }
97
+ off(type, listener) {
98
+ if (type === '*') {
99
+ this.globalListeners.delete(listener);
100
+ return;
101
+ }
102
+ const typeListeners = this.listeners.get(type);
103
+ if (typeListeners) {
104
+ typeListeners.delete(listener);
105
+ if (typeListeners.size === 0) {
106
+ this.listeners.delete(type);
107
+ }
108
+ }
109
+ }
110
+ emit(event) {
111
+ // Emit to specific type listeners
112
+ const typeListeners = this.listeners.get(event.type);
113
+ if (typeListeners) {
114
+ for (const listener of typeListeners) {
115
+ try {
116
+ listener(event);
117
+ }
118
+ catch (error) {
119
+ console.error(`Error in event listener for ${event.type}:`, error);
120
+ }
121
+ }
122
+ }
123
+ // Emit to global listeners
124
+ for (const listener of this.globalListeners) {
125
+ try {
126
+ listener(event);
127
+ }
128
+ catch (error) {
129
+ console.error(`Error in global event listener:`, error);
130
+ }
131
+ }
132
+ }
133
+ }
134
+ /**
135
+ * Create a new semantic event source
136
+ */
137
+ function createSemanticEventSource() {
138
+ return new SemanticEventSourceImpl();
139
+ }
140
+ /**
141
+ * Create event source for backwards compatibility
142
+ * @deprecated Use createSemanticEventSource instead
143
+ */
144
+ function createEventSource() {
145
+ return createSemanticEventSource();
146
+ }
147
+ //# sourceMappingURL=semantic-event-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic-event-source.js","sourceRoot":"","sources":["../../src/events/semantic-event-source.ts"],"names":[],"mappings":"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"}