@sharpee/if-domain 0.9.60-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 (86) hide show
  1. package/README.md +71 -0
  2. package/dist/changes.d.ts +8 -0
  3. package/dist/changes.d.ts.map +1 -0
  4. package/dist/changes.js +6 -0
  5. package/dist/changes.js.map +1 -0
  6. package/dist/contracts.d.ts +270 -0
  7. package/dist/contracts.d.ts.map +1 -0
  8. package/dist/contracts.js +6 -0
  9. package/dist/contracts.js.map +1 -0
  10. package/dist/events.d.ts +124 -0
  11. package/dist/events.d.ts.map +1 -0
  12. package/dist/events.js +123 -0
  13. package/dist/events.js.map +1 -0
  14. package/dist/grammar/grammar-builder.d.ts +507 -0
  15. package/dist/grammar/grammar-builder.d.ts.map +1 -0
  16. package/dist/grammar/grammar-builder.js +47 -0
  17. package/dist/grammar/grammar-builder.js.map +1 -0
  18. package/dist/grammar/grammar-engine.d.ts +65 -0
  19. package/dist/grammar/grammar-engine.d.ts.map +1 -0
  20. package/dist/grammar/grammar-engine.js +370 -0
  21. package/dist/grammar/grammar-engine.js.map +1 -0
  22. package/dist/grammar/index.d.ts +10 -0
  23. package/dist/grammar/index.d.ts.map +1 -0
  24. package/dist/grammar/index.js +26 -0
  25. package/dist/grammar/index.js.map +1 -0
  26. package/dist/grammar/pattern-compiler.d.ts +38 -0
  27. package/dist/grammar/pattern-compiler.d.ts.map +1 -0
  28. package/dist/grammar/pattern-compiler.js +22 -0
  29. package/dist/grammar/pattern-compiler.js.map +1 -0
  30. package/dist/grammar/scope-builder.d.ts +26 -0
  31. package/dist/grammar/scope-builder.d.ts.map +1 -0
  32. package/dist/grammar/scope-builder.js +67 -0
  33. package/dist/grammar/scope-builder.js.map +1 -0
  34. package/dist/grammar/vocabulary-provider.d.ts +163 -0
  35. package/dist/grammar/vocabulary-provider.d.ts.map +1 -0
  36. package/dist/grammar/vocabulary-provider.js +89 -0
  37. package/dist/grammar/vocabulary-provider.js.map +1 -0
  38. package/dist/index.d.ts +16 -0
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +40 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/language-provider.d.ts +106 -0
  43. package/dist/language-provider.d.ts.map +1 -0
  44. package/dist/language-provider.js +14 -0
  45. package/dist/language-provider.js.map +1 -0
  46. package/dist/parser-contracts/index.d.ts +10 -0
  47. package/dist/parser-contracts/index.d.ts.map +1 -0
  48. package/dist/parser-contracts/index.js +26 -0
  49. package/dist/parser-contracts/index.js.map +1 -0
  50. package/dist/parser-contracts/parser-factory.d.ts +46 -0
  51. package/dist/parser-contracts/parser-factory.d.ts.map +1 -0
  52. package/dist/parser-contracts/parser-factory.js +78 -0
  53. package/dist/parser-contracts/parser-factory.js.map +1 -0
  54. package/dist/parser-contracts/parser-internals.d.ts +125 -0
  55. package/dist/parser-contracts/parser-internals.d.ts.map +1 -0
  56. package/dist/parser-contracts/parser-internals.js +26 -0
  57. package/dist/parser-contracts/parser-internals.js.map +1 -0
  58. package/dist/parser-contracts/parser-types.d.ts +128 -0
  59. package/dist/parser-contracts/parser-types.d.ts.map +1 -0
  60. package/dist/parser-contracts/parser-types.js +9 -0
  61. package/dist/parser-contracts/parser-types.js.map +1 -0
  62. package/dist/parser-language-provider.d.ts +158 -0
  63. package/dist/parser-language-provider.d.ts.map +1 -0
  64. package/dist/parser-language-provider.js +10 -0
  65. package/dist/parser-language-provider.js.map +1 -0
  66. package/dist/sequencing.d.ts +53 -0
  67. package/dist/sequencing.d.ts.map +1 -0
  68. package/dist/sequencing.js +6 -0
  69. package/dist/sequencing.js.map +1 -0
  70. package/dist/vocabulary-contracts/index.d.ts +7 -0
  71. package/dist/vocabulary-contracts/index.d.ts.map +1 -0
  72. package/dist/vocabulary-contracts/index.js +23 -0
  73. package/dist/vocabulary-contracts/index.js.map +1 -0
  74. package/dist/vocabulary-contracts/vocabulary-adapters.d.ts +19 -0
  75. package/dist/vocabulary-contracts/vocabulary-adapters.d.ts.map +1 -0
  76. package/dist/vocabulary-contracts/vocabulary-adapters.js +73 -0
  77. package/dist/vocabulary-contracts/vocabulary-adapters.js.map +1 -0
  78. package/dist/vocabulary-contracts/vocabulary-registry.d.ts +98 -0
  79. package/dist/vocabulary-contracts/vocabulary-registry.d.ts.map +1 -0
  80. package/dist/vocabulary-contracts/vocabulary-registry.js +383 -0
  81. package/dist/vocabulary-contracts/vocabulary-registry.js.map +1 -0
  82. package/dist/vocabulary-contracts/vocabulary-types.d.ts +240 -0
  83. package/dist/vocabulary-contracts/vocabulary-types.d.ts.map +1 -0
  84. package/dist/vocabulary-contracts/vocabulary-types.js +64 -0
  85. package/dist/vocabulary-contracts/vocabulary-types.js.map +1 -0
  86. package/package.json +56 -0
@@ -0,0 +1,240 @@
1
+ /**
2
+ * Vocabulary types and interfaces for the parser
3
+ *
4
+ * The vocabulary system is extensible at multiple levels:
5
+ * - Base vocabulary from language packages
6
+ * - Extension vocabulary from extensions
7
+ * - Story-specific vocabulary overrides
8
+ * - Entity-specific vocabulary from traits
9
+ */
10
+ /**
11
+ * Part of speech categories
12
+ */
13
+ export declare const PartOfSpeech: {
14
+ readonly VERB: "verb";
15
+ readonly NOUN: "noun";
16
+ readonly ADJECTIVE: "adjective";
17
+ readonly PREPOSITION: "preposition";
18
+ readonly ARTICLE: "article";
19
+ readonly PRONOUN: "pronoun";
20
+ readonly DIRECTION: "direction";
21
+ readonly SPECIAL: "special";
22
+ readonly DETERMINER: "determiner";
23
+ readonly CONJUNCTION: "conjunction";
24
+ readonly NUMBER: "number";
25
+ };
26
+ export type PartOfSpeech = typeof PartOfSpeech[keyof typeof PartOfSpeech];
27
+ /**
28
+ * A vocabulary entry
29
+ */
30
+ export interface VocabularyEntry {
31
+ /**
32
+ * The word itself
33
+ */
34
+ word: string;
35
+ /**
36
+ * Part of speech
37
+ */
38
+ partOfSpeech: PartOfSpeech;
39
+ /**
40
+ * What this word maps to (action ID, entity ID, etc.)
41
+ */
42
+ mapsTo: string;
43
+ /**
44
+ * Priority for disambiguation (higher = preferred)
45
+ */
46
+ priority?: number;
47
+ /**
48
+ * Source of this vocabulary entry
49
+ */
50
+ source?: 'base' | 'extension' | 'story' | 'entity' | 'dynamic';
51
+ /**
52
+ * Additional metadata
53
+ */
54
+ metadata?: Record<string, unknown>;
55
+ }
56
+ /**
57
+ * Collection of vocabulary entries
58
+ */
59
+ export interface VocabularySet {
60
+ /**
61
+ * All vocabulary entries
62
+ */
63
+ entries: VocabularyEntry[];
64
+ /**
65
+ * Quick lookup by word
66
+ */
67
+ byWord: Map<string, VocabularyEntry[]>;
68
+ /**
69
+ * Quick lookup by part of speech
70
+ */
71
+ byPartOfSpeech: Map<PartOfSpeech, VocabularyEntry[]>;
72
+ }
73
+ /**
74
+ * Vocabulary provider interface
75
+ *
76
+ * Different sources can provide vocabulary:
77
+ * - Language packages provide base vocabulary
78
+ * - Extensions can add domain-specific vocabulary
79
+ * - Stories can override or add vocabulary
80
+ * - Entities register their own vocabulary dynamically
81
+ */
82
+ export interface VocabularyProvider {
83
+ /**
84
+ * Unique identifier for this provider
85
+ */
86
+ id: string;
87
+ /**
88
+ * Get vocabulary entries from this provider
89
+ */
90
+ getVocabulary(): VocabularyEntry[];
91
+ /**
92
+ * Priority for this provider (higher = override lower)
93
+ */
94
+ priority?: number;
95
+ }
96
+ /**
97
+ * Standard verb vocabulary
98
+ */
99
+ export interface VerbVocabulary {
100
+ /**
101
+ * The canonical action ID this verb maps to
102
+ */
103
+ actionId: string;
104
+ /**
105
+ * All verb forms that map to this action
106
+ */
107
+ verbs: string[];
108
+ /**
109
+ * Grammar pattern for this verb
110
+ */
111
+ pattern?: string;
112
+ /**
113
+ * Required prepositions (if any)
114
+ */
115
+ prepositions?: string[];
116
+ }
117
+ /**
118
+ * Direction vocabulary entry
119
+ */
120
+ export interface DirectionVocabulary {
121
+ /**
122
+ * Canonical direction (NORTH, SOUTH, etc.)
123
+ */
124
+ direction: string;
125
+ /**
126
+ * All words that map to this direction
127
+ */
128
+ words: string[];
129
+ /**
130
+ * Short forms (n, s, e, w, etc.)
131
+ */
132
+ abbreviations?: string[];
133
+ }
134
+ /**
135
+ * Special vocabulary for pronouns and references
136
+ */
137
+ export interface SpecialVocabulary {
138
+ /**
139
+ * Pronouns that refer to last noun
140
+ */
141
+ pronouns: string[];
142
+ /**
143
+ * Words that mean "everything"
144
+ */
145
+ allWords: string[];
146
+ /**
147
+ * Words that mean "except"
148
+ */
149
+ exceptWords: string[];
150
+ /**
151
+ * Common articles to ignore
152
+ */
153
+ articles: string[];
154
+ }
155
+ /**
156
+ * Dynamic vocabulary entry from an entity
157
+ */
158
+ export interface EntityVocabulary {
159
+ /**
160
+ * Entity ID this vocabulary belongs to
161
+ */
162
+ entityId: string;
163
+ /**
164
+ * Nouns that refer to this entity
165
+ */
166
+ nouns: string[];
167
+ /**
168
+ * Adjectives that can describe this entity
169
+ */
170
+ adjectives: string[];
171
+ /**
172
+ * Whether this entity is in scope
173
+ */
174
+ inScope?: boolean;
175
+ /**
176
+ * Priority for disambiguation
177
+ */
178
+ priority?: number;
179
+ }
180
+ /**
181
+ * Grammar pattern for verb syntax
182
+ */
183
+ export interface GrammarPattern {
184
+ /**
185
+ * Pattern name
186
+ */
187
+ name: string;
188
+ /**
189
+ * Pattern elements (VERB, NOUN, PREP, etc.)
190
+ */
191
+ elements: string[];
192
+ /**
193
+ * Example usage
194
+ */
195
+ example?: string;
196
+ /**
197
+ * Actions that use this pattern
198
+ */
199
+ actions?: string[];
200
+ }
201
+ /**
202
+ * Common grammar patterns
203
+ */
204
+ export declare const GrammarPatterns: Readonly<{
205
+ VERB_ONLY: Readonly<{
206
+ name: "verb_only";
207
+ elements: readonly string[];
208
+ example: "look";
209
+ }>;
210
+ VERB_NOUN: Readonly<{
211
+ name: "verb_noun";
212
+ elements: readonly string[];
213
+ example: "take sword";
214
+ }>;
215
+ VERB_NOUN_PREP_NOUN: Readonly<{
216
+ name: "verb_noun_prep_noun";
217
+ elements: readonly string[];
218
+ example: "put sword in chest";
219
+ }>;
220
+ VERB_PREP_NOUN: Readonly<{
221
+ name: "verb_prep_noun";
222
+ elements: readonly string[];
223
+ example: "look at painting";
224
+ }>;
225
+ VERB_DIRECTION: Readonly<{
226
+ name: "verb_direction";
227
+ elements: readonly string[];
228
+ example: "go north";
229
+ }>;
230
+ DIRECTION_ONLY: Readonly<{
231
+ name: "direction_only";
232
+ elements: readonly string[];
233
+ example: "north";
234
+ }>;
235
+ }>;
236
+ /**
237
+ * Type for standard grammar pattern names
238
+ */
239
+ export type GrammarPatternName = keyof typeof GrammarPatterns;
240
+ //# sourceMappingURL=vocabulary-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocabulary-types.d.ts","sourceRoot":"","sources":["../../src/vocabulary-contracts/vocabulary-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ /**
3
+ * Vocabulary types and interfaces for the parser
4
+ *
5
+ * The vocabulary system is extensible at multiple levels:
6
+ * - Base vocabulary from language packages
7
+ * - Extension vocabulary from extensions
8
+ * - Story-specific vocabulary overrides
9
+ * - Entity-specific vocabulary from traits
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.GrammarPatterns = exports.PartOfSpeech = void 0;
13
+ /**
14
+ * Part of speech categories
15
+ */
16
+ exports.PartOfSpeech = {
17
+ VERB: 'verb',
18
+ NOUN: 'noun',
19
+ ADJECTIVE: 'adjective',
20
+ PREPOSITION: 'preposition',
21
+ ARTICLE: 'article',
22
+ PRONOUN: 'pronoun',
23
+ DIRECTION: 'direction',
24
+ SPECIAL: 'special',
25
+ DETERMINER: 'determiner',
26
+ CONJUNCTION: 'conjunction',
27
+ NUMBER: 'number'
28
+ };
29
+ /**
30
+ * Common grammar patterns
31
+ */
32
+ exports.GrammarPatterns = Object.freeze({
33
+ VERB_ONLY: Object.freeze({
34
+ name: 'verb_only',
35
+ elements: Object.freeze(['VERB']),
36
+ example: 'look'
37
+ }),
38
+ VERB_NOUN: Object.freeze({
39
+ name: 'verb_noun',
40
+ elements: Object.freeze(['VERB', 'NOUN']),
41
+ example: 'take sword'
42
+ }),
43
+ VERB_NOUN_PREP_NOUN: Object.freeze({
44
+ name: 'verb_noun_prep_noun',
45
+ elements: Object.freeze(['VERB', 'NOUN', 'PREP', 'NOUN']),
46
+ example: 'put sword in chest'
47
+ }),
48
+ VERB_PREP_NOUN: Object.freeze({
49
+ name: 'verb_prep_noun',
50
+ elements: Object.freeze(['VERB', 'PREP', 'NOUN']),
51
+ example: 'look at painting'
52
+ }),
53
+ VERB_DIRECTION: Object.freeze({
54
+ name: 'verb_direction',
55
+ elements: Object.freeze(['VERB', 'DIRECTION']),
56
+ example: 'go north'
57
+ }),
58
+ DIRECTION_ONLY: Object.freeze({
59
+ name: 'direction_only',
60
+ elements: Object.freeze(['DIRECTION']),
61
+ example: 'north'
62
+ })
63
+ });
64
+ //# sourceMappingURL=vocabulary-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocabulary-types.js","sourceRoot":"","sources":["../../src/vocabulary-contracts/vocabulary-types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH;;GAEG;AACU,QAAA,YAAY,GAAG;IAC1B,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,MAAM,EAAE,QAAQ;CACR,CAAC;AAkNX;;GAEG;AACU,QAAA,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;QACjC,OAAO,EAAE,MAAM;KAChB,CAAC;IACF,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzC,OAAO,EAAE,YAAY;KACtB,CAAC;IACF,mBAAmB,EAAE,MAAM,CAAC,MAAM,CAAC;QACjC,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACzD,OAAO,EAAE,oBAAoB;KAC9B,CAAC;IACF,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO,EAAE,kBAAkB;KAC5B,CAAC;IACF,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC9C,OAAO,EAAE,UAAU;KACpB,CAAC;IACF,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC;QACtC,OAAO,EAAE,OAAO;KACjB,CAAC;CACH,CAAC,CAAC"}
package/package.json ADDED
@@ -0,0 +1,56 @@
1
+ {
2
+ "name": "@sharpee/if-domain",
3
+ "version": "0.9.60-beta",
4
+ "description": "Core domain model and contracts for Sharpee Interactive Fiction Platform",
5
+ "main": "dist/index.js",
6
+ "module": "dist/index.mjs",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.mjs",
12
+ "require": "./dist/index.js"
13
+ }
14
+ },
15
+ "scripts": {
16
+ "build": "tsc",
17
+ "clean": "rimraf dist"
18
+ },
19
+ "dependencies": {
20
+ "@sharpee/core": "workspace:*"
21
+ },
22
+ "devDependencies": {
23
+ "@types/node": "^20.11.19",
24
+ "typescript": "^5.3.3",
25
+ "rimraf": "^5.0.5"
26
+ },
27
+ "files": [
28
+ "dist"
29
+ ],
30
+ "keywords": [
31
+ "interactive-fiction",
32
+ "if",
33
+ "text-adventure",
34
+ "sharpee",
35
+ "domain",
36
+ "events",
37
+ "contracts"
38
+ ],
39
+ "author": "Sharpee Team",
40
+ "license": "MIT",
41
+ "repository": {
42
+ "type": "git",
43
+ "url": "https://github.com/ChicagoDave/sharpee.git",
44
+ "directory": "packages/if-domain"
45
+ },
46
+ "homepage": "https://github.com/ChicagoDave/sharpee#readme",
47
+ "bugs": {
48
+ "url": "https://github.com/ChicagoDave/sharpee/issues"
49
+ },
50
+ "engines": {
51
+ "node": ">=18.0.0"
52
+ },
53
+ "publishConfig": {
54
+ "access": "public"
55
+ }
56
+ }