@sharpee/world-model 0.9.93 → 0.9.96
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/behaviors/attack.d.ts.map +1 -1
- package/behaviors/attack.js +7 -5
- package/behaviors/attack.js.map +1 -1
- package/entities/if-entity.d.ts +6 -8
- package/entities/if-entity.d.ts.map +1 -1
- package/entities/if-entity.js +39 -15
- package/entities/if-entity.js.map +1 -1
- package/events/types.d.ts +7 -30
- package/events/types.d.ts.map +1 -1
- package/events/types.js +4 -3
- package/events/types.js.map +1 -1
- package/examples/event-handler-registration.d.ts.map +1 -1
- package/examples/event-handler-registration.js +6 -4
- package/examples/event-handler-registration.js.map +1 -1
- package/index.d.ts +0 -1
- package/index.d.ts.map +1 -1
- package/index.js +0 -2
- package/index.js.map +1 -1
- package/package.json +3 -3
- package/scope/scope-evaluator.d.ts +13 -3
- package/scope/scope-evaluator.d.ts.map +1 -1
- package/scope/scope-evaluator.js +15 -5
- package/scope/scope-evaluator.js.map +1 -1
- package/services/index.d.ts +0 -1
- package/services/index.d.ts.map +1 -1
- package/services/index.js +3 -4
- package/services/index.js.map +1 -1
- package/traits/container/containerTrait.d.ts +6 -0
- package/traits/container/containerTrait.d.ts.map +1 -1
- package/traits/container/containerTrait.js +12 -0
- package/traits/container/containerTrait.js.map +1 -1
- package/traits/edible/edibleBehavior.d.ts +0 -5
- package/traits/edible/edibleBehavior.d.ts.map +1 -1
- package/traits/edible/edibleBehavior.js +7 -38
- package/traits/edible/edibleBehavior.js.map +1 -1
- package/traits/edible/edibleTrait.d.ts +5 -6
- package/traits/edible/edibleTrait.d.ts.map +1 -1
- package/traits/edible/edibleTrait.js +4 -7
- package/traits/edible/edibleTrait.js.map +1 -1
- package/traits/implementations.d.ts +2 -1
- package/traits/implementations.d.ts.map +1 -1
- package/traits/implementations.js +4 -1
- package/traits/implementations.js.map +1 -1
- package/traits/index.d.ts +1 -0
- package/traits/index.d.ts.map +1 -1
- package/traits/index.js +1 -0
- package/traits/index.js.map +1 -1
- package/traits/light-source/lightSourceTrait.d.ts +4 -0
- package/traits/light-source/lightSourceTrait.d.ts.map +1 -1
- package/traits/light-source/lightSourceTrait.js +4 -0
- package/traits/light-source/lightSourceTrait.js.map +1 -1
- package/traits/open-inventory/index.d.ts +2 -0
- package/traits/open-inventory/index.d.ts.map +1 -0
- package/traits/open-inventory/index.js +6 -0
- package/traits/open-inventory/index.js.map +1 -0
- package/traits/open-inventory/openInventoryTrait.d.ts +30 -0
- package/traits/open-inventory/openInventoryTrait.d.ts.map +1 -0
- package/traits/open-inventory/openInventoryTrait.js +38 -0
- package/traits/open-inventory/openInventoryTrait.js.map +1 -0
- package/traits/openable/openableTrait.d.ts +6 -0
- package/traits/openable/openableTrait.d.ts.map +1 -1
- package/traits/openable/openableTrait.js +4 -0
- package/traits/openable/openableTrait.js.map +1 -1
- package/traits/room/index.d.ts +1 -1
- package/traits/room/index.d.ts.map +1 -1
- package/traits/room/index.js.map +1 -1
- package/traits/switchable/switchableTrait.d.ts +6 -0
- package/traits/switchable/switchableTrait.d.ts.map +1 -1
- package/traits/switchable/switchableTrait.js +4 -0
- package/traits/switchable/switchableTrait.js.map +1 -1
- package/traits/trait-types.d.ts +1 -0
- package/traits/trait-types.d.ts.map +1 -1
- package/traits/trait-types.js +3 -1
- package/traits/trait-types.js.map +1 -1
- package/world/AuthorModel.d.ts.map +1 -1
- package/world/AuthorModel.js +6 -5
- package/world/AuthorModel.js.map +1 -1
- package/world/VisibilityBehavior.d.ts +22 -5
- package/world/VisibilityBehavior.d.ts.map +1 -1
- package/world/VisibilityBehavior.js +70 -125
- package/world/VisibilityBehavior.js.map +1 -1
- package/world/WorldModel.d.ts.map +1 -1
- package/world/WorldModel.js +12 -8
- package/world/WorldModel.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attack.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/behaviors/attack.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"attack.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/behaviors/attack.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAIjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAMzC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,KAAK,GAAG,aAAa,CAAC;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,qBAAa,cAAc;IACzB;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,SAAS,EAAE,KAAK,EAAE,UAAU,GAAG,aAAa;IA2F/F;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,OAAO;IAO9D;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,QAAQ,GAAG,SAAS;CAkChE"}
|
package/behaviors/attack.js
CHANGED
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.AttackBehavior = void 0;
|
|
9
9
|
const trait_types_1 = require("../traits/trait-types");
|
|
10
|
+
const equippedTrait_1 = require("../traits/equipped/equippedTrait");
|
|
11
|
+
const weaponTrait_1 = require("../traits/weapon/weaponTrait");
|
|
10
12
|
const weaponBehavior_1 = require("../traits/weapon/weaponBehavior");
|
|
11
13
|
const breakableBehavior_1 = require("../traits/breakable/breakableBehavior");
|
|
12
14
|
const destructibleBehavior_1 = require("../traits/destructible/destructibleBehavior");
|
|
@@ -130,14 +132,14 @@ class AttackBehavior {
|
|
|
130
132
|
const equipped = weapons.filter(w => {
|
|
131
133
|
if (!w.has(trait_types_1.TraitType.EQUIPPED))
|
|
132
134
|
return false;
|
|
133
|
-
const equippedTrait = w.get(
|
|
135
|
+
const equippedTrait = w.get(equippedTrait_1.EquippedTrait);
|
|
134
136
|
return equippedTrait && equippedTrait.isEquipped;
|
|
135
137
|
});
|
|
136
138
|
if (equipped.length > 0) {
|
|
137
139
|
// Return equipped weapon with highest max damage
|
|
138
140
|
return equipped.reduce((best, current) => {
|
|
139
|
-
const bestWeapon = best.get(
|
|
140
|
-
const currentWeapon = current.get(
|
|
141
|
+
const bestWeapon = best.get(weaponTrait_1.WeaponTrait);
|
|
142
|
+
const currentWeapon = current.get(weaponTrait_1.WeaponTrait);
|
|
141
143
|
if (!bestWeapon || !currentWeapon)
|
|
142
144
|
return best;
|
|
143
145
|
const bestDamage = bestWeapon.maxDamage || 0;
|
|
@@ -147,8 +149,8 @@ class AttackBehavior {
|
|
|
147
149
|
}
|
|
148
150
|
// No equipped weapons, return weapon with highest max damage
|
|
149
151
|
return weapons.reduce((best, current) => {
|
|
150
|
-
const bestWeapon = best.get(
|
|
151
|
-
const currentWeapon = current.get(
|
|
152
|
+
const bestWeapon = best.get(weaponTrait_1.WeaponTrait);
|
|
153
|
+
const currentWeapon = current.get(weaponTrait_1.WeaponTrait);
|
|
152
154
|
if (!bestWeapon || !currentWeapon)
|
|
153
155
|
return best;
|
|
154
156
|
const bestDamage = bestWeapon.maxDamage || 0;
|
package/behaviors/attack.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attack.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/behaviors/attack.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAIH,uDAAkD;
|
|
1
|
+
{"version":3,"file":"attack.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/behaviors/attack.ts"],"names":[],"mappings":"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"}
|
package/entities/if-entity.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { IEntity, EntityId, IEntityCreationParams } from "../../core/index";
|
|
2
2
|
import { ITrait, ITraitConstructor } from '../traits/trait';
|
|
3
3
|
import { TraitType } from '../traits/trait-types';
|
|
4
|
-
import { IEventHandlers } from '../events/types';
|
|
5
4
|
import { Annotation, AnnotationCondition } from '../annotations/types';
|
|
6
5
|
/**
|
|
7
6
|
* Interactive Fiction Entity with trait-based composition.
|
|
@@ -38,12 +37,6 @@ export declare class IFEntity implements IEntity {
|
|
|
38
37
|
* Multiple annotations per kind are supported.
|
|
39
38
|
*/
|
|
40
39
|
private annotations;
|
|
41
|
-
/**
|
|
42
|
-
* Event handlers for this entity
|
|
43
|
-
* Key is the event type (e.g., 'if.event.pushed')
|
|
44
|
-
* Value is the handler function
|
|
45
|
-
*/
|
|
46
|
-
on?: IEventHandlers;
|
|
47
40
|
constructor(id: string, type: string, params?: Partial<IEntityCreationParams>);
|
|
48
41
|
/**
|
|
49
42
|
* Check if entity has a specific trait
|
|
@@ -299,7 +292,12 @@ export declare class IFEntity implements IEntity {
|
|
|
299
292
|
*/
|
|
300
293
|
get name(): string;
|
|
301
294
|
/**
|
|
302
|
-
* Get the description of this entity
|
|
295
|
+
* Get the description of this entity, computed from trait state.
|
|
296
|
+
*
|
|
297
|
+
* Priority: OpenableTrait (open/closed) > SwitchableTrait (on/off)
|
|
298
|
+
* > LightSourceTrait (lit/unlit) > IdentityTrait.description.
|
|
299
|
+
* Each trait is consulted only if the entity has it and the relevant
|
|
300
|
+
* state-specific description field is populated; otherwise falls through.
|
|
303
301
|
*/
|
|
304
302
|
get description(): string | undefined;
|
|
305
303
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"if-entity.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/entities/if-entity.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAW,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"if-entity.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/entities/if-entity.ts"],"names":[],"mappings":"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"}
|
package/entities/if-entity.js
CHANGED
|
@@ -4,6 +4,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
4
4
|
exports.IFEntity = void 0;
|
|
5
5
|
const trait_1 = require("../traits/trait");
|
|
6
6
|
const trait_types_1 = require("../traits/trait-types");
|
|
7
|
+
const openableTrait_1 = require("../traits/openable/openableTrait");
|
|
8
|
+
const lockableTrait_1 = require("../traits/lockable/lockableTrait");
|
|
9
|
+
const actorTrait_1 = require("../traits/actor/actorTrait");
|
|
10
|
+
const identityTrait_1 = require("../traits/identity/identityTrait");
|
|
11
|
+
const lightSourceTrait_1 = require("../traits/light-source/lightSourceTrait");
|
|
12
|
+
const switchableTrait_1 = require("../traits/switchable/switchableTrait");
|
|
7
13
|
/**
|
|
8
14
|
* Interactive Fiction Entity with trait-based composition.
|
|
9
15
|
* Implements the core Entity interface and adds trait management capabilities.
|
|
@@ -39,12 +45,6 @@ class IFEntity {
|
|
|
39
45
|
* Multiple annotations per kind are supported.
|
|
40
46
|
*/
|
|
41
47
|
annotations = new Map();
|
|
42
|
-
/**
|
|
43
|
-
* Event handlers for this entity
|
|
44
|
-
* Key is the event type (e.g., 'if.event.pushed')
|
|
45
|
-
* Value is the handler function
|
|
46
|
-
*/
|
|
47
|
-
on;
|
|
48
48
|
constructor(id, type, params) {
|
|
49
49
|
this.id = id;
|
|
50
50
|
this.type = type;
|
|
@@ -503,7 +503,7 @@ class IFEntity {
|
|
|
503
503
|
* Check if this is currently open
|
|
504
504
|
*/
|
|
505
505
|
get isOpen() {
|
|
506
|
-
const openable = this.get(
|
|
506
|
+
const openable = this.get(openableTrait_1.OpenableTrait);
|
|
507
507
|
return openable ? openable.isOpen : false;
|
|
508
508
|
}
|
|
509
509
|
/**
|
|
@@ -516,7 +516,7 @@ class IFEntity {
|
|
|
516
516
|
* Check if this is currently locked
|
|
517
517
|
*/
|
|
518
518
|
get isLocked() {
|
|
519
|
-
const lockable = this.get(
|
|
519
|
+
const lockable = this.get(lockableTrait_1.LockableTrait);
|
|
520
520
|
return lockable ? lockable.isLocked : false;
|
|
521
521
|
}
|
|
522
522
|
/**
|
|
@@ -547,15 +547,15 @@ class IFEntity {
|
|
|
547
547
|
* Check if this is the player
|
|
548
548
|
*/
|
|
549
549
|
get isPlayer() {
|
|
550
|
-
const actor = this.get(
|
|
550
|
+
const actor = this.get(actorTrait_1.ActorTrait);
|
|
551
551
|
return actor ? actor.isPlayer : false;
|
|
552
552
|
}
|
|
553
553
|
/**
|
|
554
554
|
* Check if this provides light
|
|
555
555
|
*/
|
|
556
556
|
get providesLight() {
|
|
557
|
-
const lightSource = this.get(
|
|
558
|
-
return lightSource ? lightSource.isLit : false;
|
|
557
|
+
const lightSource = this.get(lightSourceTrait_1.LightSourceTrait);
|
|
558
|
+
return lightSource ? lightSource.isLit === true : false;
|
|
559
559
|
}
|
|
560
560
|
/**
|
|
561
561
|
* Check if this is switchable
|
|
@@ -574,7 +574,7 @@ class IFEntity {
|
|
|
574
574
|
* Check if this is switched on
|
|
575
575
|
*/
|
|
576
576
|
get isOn() {
|
|
577
|
-
const switchable = this.get(
|
|
577
|
+
const switchable = this.get(switchableTrait_1.SwitchableTrait);
|
|
578
578
|
return switchable ? switchable.isOn : false;
|
|
579
579
|
}
|
|
580
580
|
/**
|
|
@@ -582,7 +582,7 @@ class IFEntity {
|
|
|
582
582
|
*/
|
|
583
583
|
get name() {
|
|
584
584
|
// First check identity trait (authoritative player-facing name)
|
|
585
|
-
const identity = this.get(
|
|
585
|
+
const identity = this.get(identityTrait_1.IdentityTrait);
|
|
586
586
|
if (identity && identity.name) {
|
|
587
587
|
return identity.name;
|
|
588
588
|
}
|
|
@@ -598,10 +598,34 @@ class IFEntity {
|
|
|
598
598
|
return this.id;
|
|
599
599
|
}
|
|
600
600
|
/**
|
|
601
|
-
* Get the description of this entity
|
|
601
|
+
* Get the description of this entity, computed from trait state.
|
|
602
|
+
*
|
|
603
|
+
* Priority: OpenableTrait (open/closed) > SwitchableTrait (on/off)
|
|
604
|
+
* > LightSourceTrait (lit/unlit) > IdentityTrait.description.
|
|
605
|
+
* Each trait is consulted only if the entity has it and the relevant
|
|
606
|
+
* state-specific description field is populated; otherwise falls through.
|
|
602
607
|
*/
|
|
603
608
|
get description() {
|
|
604
|
-
const
|
|
609
|
+
const openable = this.get(openableTrait_1.OpenableTrait);
|
|
610
|
+
if (openable) {
|
|
611
|
+
const desc = openable.isOpen ? openable.openDescription : openable.closedDescription;
|
|
612
|
+
if (desc)
|
|
613
|
+
return desc;
|
|
614
|
+
}
|
|
615
|
+
const switchable = this.get(switchableTrait_1.SwitchableTrait);
|
|
616
|
+
if (switchable) {
|
|
617
|
+
const desc = switchable.isOn ? switchable.onDescription : switchable.offDescription;
|
|
618
|
+
if (desc)
|
|
619
|
+
return desc;
|
|
620
|
+
}
|
|
621
|
+
const lightSource = this.get(lightSourceTrait_1.LightSourceTrait);
|
|
622
|
+
if (lightSource) {
|
|
623
|
+
const isLit = lightSource.isLit ?? this.get(switchableTrait_1.SwitchableTrait)?.isOn ?? true;
|
|
624
|
+
const desc = isLit ? lightSource.litDescription : lightSource.unlitDescription;
|
|
625
|
+
if (desc)
|
|
626
|
+
return desc;
|
|
627
|
+
}
|
|
628
|
+
const identity = this.get(identityTrait_1.IdentityTrait);
|
|
605
629
|
return identity ? identity.description : undefined;
|
|
606
630
|
}
|
|
607
631
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"if-entity.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/entities/if-entity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"if-entity.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/entities/if-entity.ts"],"names":[],"mappings":";AAAA,iDAAiD;;;AAGjD,2CAAqE;AACrE,uDAAkD;AAClD,oEAAiE;AACjE,oEAAiE;AACjE,2DAAwD;AACxD,oEAAiE;AACjE,8EAA2E;AAC3E,0EAAuE;AAGvE;;;GAGG;AACH,MAAa,QAAQ;IACV,EAAE,CAAW;IACb,IAAI,CAAS;IACtB,UAAU,CAA0B;IACpC,aAAa,CAA6B;IAC1C,MAAM,CAAyB;IAE/B;;;;;OAKG;IACK,eAAe,GAAwB,IAAI,GAAG,EAAE,CAAC;IAEzD;;;;;;;;;;OAUG;IACK,aAAa,GAAwB,IAAI,GAAG,EAAE,CAAC;IAEvD;;;;OAIG;IACK,WAAW,GAA8B,IAAI,GAAG,EAAE,CAAC;IAE3D,YAAY,EAAU,EAAE,IAAY,EAAE,MAAuC;QAC3E,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,IAAI,CAAC,aAAa,GAAG,MAAM,EAAE,aAAa,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QAExB,4DAA4D;QAC5D,2EAA2E;IAC7E,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAwB;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAiB,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,GAAG,CAAmB,IAA+C;QACnE,MAAM,SAAS,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAiB,CAAC,CAAC;YAC/C,OAAO,IAAI,KAAK,UAAU,CAAC,CAAC,CAAE,IAAuC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACnG,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAkB,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,QAAQ,CAAmB,IAA+C;QACxE,OAAO,IAAI,CAAC,GAAG,CAAI,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,KAAa;QACf,IAAI,CAAC,IAAA,eAAO,EAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAED,0CAA0C;QAC1C,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAiB,CAAC,EAAE,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,EAAE,wBAAwB,KAAK,CAAC,IAAI,2BAA2B,CAAC,CAAC;YAC9F,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAiB,EAAE,KAAK,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAwB;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAiB,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,GAAG,KAA6B;QACrC,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAiB,CAAC,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,GAAG,KAA6B;QACrC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAiB,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,WAAW;QACT,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,+CAA+C;IAE/C;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,QAAgB,EAAE,QAAiB;QACvC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAE,0BAA0B;IAC/E,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,QAAgB;QACzB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,OAAO,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAClD,CAAC;IAED,0EAA0E;IAE1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,eAAe,CAAC,KAAa,EAAE,KAAgB;QAC7C,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,yBAAyB;YACzB,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC3B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,0CAA0C;YAC1C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,MAAqB;QACnC,4BAA4B;QAC5B,IAAI,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;QACzC,CAAC;QACD,+BAA+B;QAC/B,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;QACtC,CAAC;QACD,iBAAiB;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,KAAgB;QAChC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,KAAK,MAAM,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC3B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAChD,CAAC;IAED,8CAA8C;IAE9C;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,IAAY,EAAE,IAA8C,EAAE,SAA+B;QACpG,MAAM,UAAU,GAAe,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED;;;;;;OAMG;IACH,oBAAoB,CAAC,IAAY,EAAE,KAA4I;QAC7K,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG;YAAE,OAAO,EAAE,CAAC;QAEpB,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YACpB,IAAI,CAAC,CAAC,CAAC,SAAS;gBAAE,OAAO,IAAI,CAAC;YAC9B,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,IAAY,EAAE,EAAU;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QAExB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7C,IAAI,GAAG,KAAK,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAE7B,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACpB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,IAAY;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACK,iBAAiB,CACvB,SAA8B,EAC9B,KAA4I;QAE5I,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,IAAI,MAAM,CAAC;QACxC,IAAI,MAA4B,CAAC;QAEjC,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,MAAM;gBACT,MAAM,GAAG,IAAgB,CAAC;gBAC1B,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;gBAC3B,MAAM;YACR,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACzC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACpD,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAE1B,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC;QAEzB,OAAQ,KAA4C,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,SAAS,CAAC,KAAK,CAAC;IAC/F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAa;QACjB,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE;YAC5C,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvD,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY;SAC3E,CAAC,CAAC;QAEH,2BAA2B;QAC3B,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;QAED,yBAAyB;QACzB,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACxD,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;QAED,uBAAuB;QACvB,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACjD,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC1C,CAAC;QAED,gCAAgC;QAChC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5C,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjE,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,MAAM,IAAI,GAAQ;YAChB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC7D,GAAG,KAAK;aACT,CAAC,CAAC;YACH,2CAA2C;YAC3C,OAAO,EAAE,CAAC;SACX,CAAC;QAEF,kCAAkC;QAClC,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAClE,CAAC;QAED,gCAAgC;QAChC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9D,CAAC;QAED,6BAA6B;QAC7B,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CACnC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAS;QACvB,2DAA2D;QAC3D,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC;QAEjC,4EAA4E;QAC5E,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;gBAC/B,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;YACpC,CAAC;iBAAM,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBAC1D,sDAAsD;gBACtD,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1B,MAAM,OAAO,GAA2B;oBACtC,GAAG,EAAE,MAAM;oBACX,GAAG,EAAE,MAAM;oBACX,GAAG,EAAE,MAAM;oBACX,GAAG,EAAE,OAAO;oBACZ,GAAG,EAAE,WAAW;oBAChB,GAAG,EAAE,WAAW;oBAChB,GAAG,EAAE,SAAS;oBACd,GAAG,EAAE,MAAM;oBACX,GAAG,EAAE,QAAQ;iBACd,CAAC;gBACF,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC;YACrC,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE;YACzC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9C,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACpC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,IAAI,IAAI,CAAC,eAAe,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;YACrE,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;gBACxE,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAkB,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,IAAI,IAAI,CAAC,aAAa,IAAI,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;YACjE,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;gBACjE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,KAAe,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAED,sBAAsB;QACtB,IAAI,IAAI,CAAC,WAAW,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YAC7D,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC5D,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAoB,CAAC,CAAC;gBACrD,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,+CAA+C;IAE/C;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC;YAC9D,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,IAAI,CAAC,CAAC;IAChG,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,6BAAa,CAAC,CAAC;QACzC,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,6BAAa,CAAC,CAAC;QACzC,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,uBAAU,CAAC,CAAC;QACnC,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,IAAI,aAAa;QACf,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,mCAAgB,CAAC,CAAC;QAC/C,OAAO,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,uBAAS,CAAC,OAAO,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,iCAAe,CAAC,CAAC;QAC7C,OAAO,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,gEAAgE;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,6BAAa,CAAC,CAAC;QACzC,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC9B,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QAED,qCAAqC;QACrC,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAqB,CAAC;QAC/C,CAAC;QAED,8BAA8B;QAC9B,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAc,CAAC;QACxC,CAAC;QAED,sBAAsB;QACtB,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,WAAW;QACb,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,6BAAa,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YACrF,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC;QACxB,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,iCAAe,CAAC,CAAC;QAC7C,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC;YACpF,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC;QACxB,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,mCAAgB,CAAC,CAAC;QAC/C,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,iCAAe,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC;YAC3E,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC;YAC/E,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC;QACxB,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,6BAAa,CAAC,CAAC;QACzC,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAQ,IAAI,CAAC,UAAU,CAAC,MAAiB,IAAI,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,IAAwB;QAC/B,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;CACF;AAlsBD,4BAksBC"}
|
package/events/types.d.ts
CHANGED
|
@@ -1,45 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Event
|
|
2
|
+
* Event types for the world-model event system
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Entity `on` handler types were removed in ISSUE-068.
|
|
5
|
+
* For ADR-075 effect-returning story handlers, use StoryEventHandler
|
|
6
|
+
* from @sharpee/event-processor.
|
|
6
7
|
*/
|
|
7
8
|
import type { ISemanticEvent } from "../../core/index";
|
|
8
9
|
/**
|
|
9
|
-
* Game event that can be handled by
|
|
10
|
+
* Game event that can be handled by the story
|
|
10
11
|
*/
|
|
11
12
|
export interface IGameEvent extends ISemanticEvent {
|
|
12
13
|
type: string;
|
|
13
14
|
data: Record<string, any>;
|
|
14
15
|
}
|
|
15
16
|
/**
|
|
16
|
-
*
|
|
17
|
-
* These handlers directly mutate world state and return events.
|
|
17
|
+
* Simple event handler that receives an event and optionally returns reaction events.
|
|
18
18
|
*
|
|
19
|
-
*
|
|
20
|
-
* from @sharpee/event-processor
|
|
21
|
-
*/
|
|
22
|
-
export type LegacyEntityEventHandler = (event: IGameEvent, world?: any) => void | ISemanticEvent[];
|
|
23
|
-
/**
|
|
24
|
-
* Simple event handler that only receives the event (no world access)
|
|
25
|
-
* Used for story-level daemons and event listeners
|
|
19
|
+
* Used by the engine's EventEmitter for story-level daemons and event listeners.
|
|
26
20
|
*/
|
|
27
21
|
export type SimpleEventHandler = (event: IGameEvent) => void | ISemanticEvent[];
|
|
28
|
-
/**
|
|
29
|
-
* Collection of event handlers keyed by event type
|
|
30
|
-
*/
|
|
31
|
-
export interface IEventHandlers {
|
|
32
|
-
[eventType: string]: LegacyEntityEventHandler | LegacyEntityEventHandler[];
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Entity with event handling capability
|
|
36
|
-
*/
|
|
37
|
-
export interface IEventCapableEntity {
|
|
38
|
-
/**
|
|
39
|
-
* Event handlers for this entity
|
|
40
|
-
* Key is the event type (e.g., 'if.event.pushed')
|
|
41
|
-
* Value is a handler function or array of handlers
|
|
42
|
-
*/
|
|
43
|
-
on?: IEventHandlers;
|
|
44
|
-
}
|
|
45
22
|
//# sourceMappingURL=types.d.ts.map
|
package/events/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/events/types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/events/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,cAAc;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,cAAc,EAAE,CAAC"}
|
package/events/types.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Event
|
|
3
|
+
* Event types for the world-model event system
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
* Entity `on` handler types were removed in ISSUE-068.
|
|
6
|
+
* For ADR-075 effect-returning story handlers, use StoryEventHandler
|
|
7
|
+
* from @sharpee/event-processor.
|
|
7
8
|
*/
|
|
8
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
10
|
//# sourceMappingURL=types.js.map
|
package/events/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/events/types.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/events/types.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-handler-registration.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/examples/event-handler-registration.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAgB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"event-handler-registration.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/examples/event-handler-registration.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAgB,MAAM,UAAU,CAAC;AAOpD;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAsFrE;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAmCvE;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CA6BvE"}
|
|
@@ -7,6 +7,8 @@ exports.registerStandardEventValidators = registerStandardEventValidators;
|
|
|
7
7
|
exports.registerStandardEventPreviewers = registerStandardEventPreviewers;
|
|
8
8
|
const constants_1 = require("../constants");
|
|
9
9
|
const trait_types_1 = require("../traits/trait-types");
|
|
10
|
+
const openableTrait_1 = require("../traits/openable/openableTrait");
|
|
11
|
+
const lockableTrait_1 = require("../traits/lockable/lockableTrait");
|
|
10
12
|
/**
|
|
11
13
|
* Register standard IF event handlers with the world model
|
|
12
14
|
*/
|
|
@@ -34,7 +36,7 @@ function registerStandardEventHandlers(world) {
|
|
|
34
36
|
if (target) {
|
|
35
37
|
const entity = world.getEntity(target);
|
|
36
38
|
if (entity && entity.has(trait_types_1.TraitType.OPENABLE)) {
|
|
37
|
-
const openable = entity.
|
|
39
|
+
const openable = entity.getTrait(openableTrait_1.OpenableTrait);
|
|
38
40
|
if (openable) {
|
|
39
41
|
openable.isOpen = true;
|
|
40
42
|
}
|
|
@@ -47,7 +49,7 @@ function registerStandardEventHandlers(world) {
|
|
|
47
49
|
if (target) {
|
|
48
50
|
const entity = world.getEntity(target);
|
|
49
51
|
if (entity && entity.has(trait_types_1.TraitType.OPENABLE)) {
|
|
50
|
-
const openable = entity.
|
|
52
|
+
const openable = entity.getTrait(openableTrait_1.OpenableTrait);
|
|
51
53
|
if (openable) {
|
|
52
54
|
openable.isOpen = false;
|
|
53
55
|
}
|
|
@@ -60,7 +62,7 @@ function registerStandardEventHandlers(world) {
|
|
|
60
62
|
if (target) {
|
|
61
63
|
const entity = world.getEntity(target);
|
|
62
64
|
if (entity && entity.has(trait_types_1.TraitType.LOCKABLE)) {
|
|
63
|
-
const lockable = entity.
|
|
65
|
+
const lockable = entity.getTrait(lockableTrait_1.LockableTrait);
|
|
64
66
|
if (lockable) {
|
|
65
67
|
lockable.isLocked = true;
|
|
66
68
|
}
|
|
@@ -73,7 +75,7 @@ function registerStandardEventHandlers(world) {
|
|
|
73
75
|
if (target) {
|
|
74
76
|
const entity = world.getEntity(target);
|
|
75
77
|
if (entity && entity.has(trait_types_1.TraitType.LOCKABLE)) {
|
|
76
|
-
const lockable = entity.
|
|
78
|
+
const lockable = entity.getTrait(lockableTrait_1.LockableTrait);
|
|
77
79
|
if (lockable) {
|
|
78
80
|
lockable.isLocked = false;
|
|
79
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-handler-registration.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/examples/event-handler-registration.ts"],"names":[],"mappings":";AAAA,wDAAwD;AACxD,0EAA0E;;
|
|
1
|
+
{"version":3,"file":"event-handler-registration.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/examples/event-handler-registration.ts"],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -33,7 +33,6 @@ export * from './traits/vehicle';
|
|
|
33
33
|
export * from './traits/story-info';
|
|
34
34
|
export * from './extensions';
|
|
35
35
|
export * from './world';
|
|
36
|
-
export * from './services';
|
|
37
36
|
export * from './scope';
|
|
38
37
|
export * from './events/types';
|
|
39
38
|
export * from './capabilities';
|
package/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../repos/sharpee/packages/world-model/src/index.ts"],"names":[],"mappings":"AAGA,cAAc,YAAY,CAAC;AAG3B,cAAc,aAAa,CAAC;AAG5B,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAG7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../repos/sharpee/packages/world-model/src/index.ts"],"names":[],"mappings":"AAGA,cAAc,YAAY,CAAC;AAG3B,cAAc,aAAa,CAAC;AAG5B,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAG7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC;AAGxB,cAAc,gBAAgB,CAAC;AAG/B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,eAAe,CAAC"}
|
package/index.js
CHANGED
|
@@ -58,8 +58,6 @@ __exportStar(require("./traits/story-info"), exports);
|
|
|
58
58
|
__exportStar(require("./extensions"), exports);
|
|
59
59
|
// World model
|
|
60
60
|
__exportStar(require("./world"), exports);
|
|
61
|
-
// Services
|
|
62
|
-
__exportStar(require("./services"), exports);
|
|
63
61
|
// Scope system
|
|
64
62
|
__exportStar(require("./scope"), exports);
|
|
65
63
|
// Event system types (basic types only - ADR-075 effects moved to event-processor)
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;AAEpC,gBAAgB;AAChB,6CAA2B;AAE3B,iBAAiB;AACjB,8CAA4B;AAE5B,YAAY;AACZ,8CAA4B;AAE5B,8CAA8C;AAC9C,6CAA2B;AAC3B,+CAA6B;AAE7B,SAAS;AACT,iDAA+B;AAC/B,uDAAqC;AACrC,2DAAyC;AAEzC,2BAA2B;AAC3B,oDAAkC;AAClC,qDAAmC;AACnC,gDAA8B;AAC9B,oDAAkC;AAClC,oDAAkC;AAClC,oDAAkC;AAClC,wDAAsC;AACtC,gDAA8B;AAC9B,qDAAmC;AACnC,mDAAiC;AACjC,qDAAmC;AACnC,sDAAoC;AACpC,oDAAkC;AAClC,kDAAgC;AAChC,gDAA8B;AAC9B,iDAA+B;AAC/B,oDAAkC;AAClC,kDAAgC;AAChC,oDAAkC;AAClC,4DAA0C;AAC1C,oDAAkC;AAClC,oDAAkC;AAClC,+CAA6B;AAC7B,mDAAiC;AACjC,sDAAoC;AAEpC,mBAAmB;AACnB,+CAA6B;AAE7B,cAAc;AACd,0CAAwB;AAExB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;AAEpC,gBAAgB;AAChB,6CAA2B;AAE3B,iBAAiB;AACjB,8CAA4B;AAE5B,YAAY;AACZ,8CAA4B;AAE5B,8CAA8C;AAC9C,6CAA2B;AAC3B,+CAA6B;AAE7B,SAAS;AACT,iDAA+B;AAC/B,uDAAqC;AACrC,2DAAyC;AAEzC,2BAA2B;AAC3B,oDAAkC;AAClC,qDAAmC;AACnC,gDAA8B;AAC9B,oDAAkC;AAClC,oDAAkC;AAClC,oDAAkC;AAClC,wDAAsC;AACtC,gDAA8B;AAC9B,qDAAmC;AACnC,mDAAiC;AACjC,qDAAmC;AACnC,sDAAoC;AACpC,oDAAkC;AAClC,kDAAgC;AAChC,gDAA8B;AAC9B,iDAA+B;AAC/B,oDAAkC;AAClC,kDAAgC;AAChC,oDAAkC;AAClC,4DAA0C;AAC1C,oDAAkC;AAClC,oDAAkC;AAClC,+CAA6B;AAC7B,mDAAiC;AACjC,sDAAoC;AAEpC,mBAAmB;AACnB,+CAA6B;AAE7B,cAAc;AACd,0CAAwB;AAExB,eAAe;AACf,0CAAwB;AAExB,mFAAmF;AACnF,iDAA+B;AAE/B,uCAAuC;AACvC,iDAA+B;AAE/B,wBAAwB;AACxB,gDAA8B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sharpee/world-model",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.96",
|
|
4
4
|
"description": "World model for Sharpee IF platform - entities, traits, and behaviors",
|
|
5
5
|
"main": "./index.js",
|
|
6
6
|
"types": "./index.d.ts",
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
}
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@sharpee/core": "^0.9.
|
|
16
|
-
"@sharpee/if-domain": "^0.9.
|
|
15
|
+
"@sharpee/core": "^0.9.96",
|
|
16
|
+
"@sharpee/if-domain": "^0.9.96"
|
|
17
17
|
},
|
|
18
18
|
"keywords": [
|
|
19
19
|
"interactive-fiction",
|
|
@@ -1,13 +1,23 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @file Scope Evaluator
|
|
3
|
-
* @description Evaluates scope rules to determine
|
|
2
|
+
* @file Rule-Based Scope Evaluator
|
|
3
|
+
* @description Evaluates scope rules to determine which entities are "in scope"
|
|
4
|
+
* for a given actor at a given location.
|
|
5
|
+
*
|
|
6
|
+
* Pipeline role: PRE-PARSE — called via WorldModel.evaluateScope() →
|
|
7
|
+
* VocabularyManager.updateScopeVocabulary() to populate the parser's entity
|
|
8
|
+
* vocabulary before each turn. Stories can add/remove rules via
|
|
9
|
+
* world.addScopeRule() / world.removeScopeRule().
|
|
10
|
+
*
|
|
11
|
+
* NOT the same as the parser's GrammarScopeResolver (grammar constraint
|
|
12
|
+
* evaluation) or the stdlib's StandardScopeResolver (validation-phase entity
|
|
13
|
+
* resolution with disambiguation).
|
|
4
14
|
*/
|
|
5
15
|
import { IScopeRule, IScopeContext, IScopeEvaluationOptions, IScopeEvaluationResult } from './scope-rule';
|
|
6
16
|
import { ScopeRegistry } from './scope-registry';
|
|
7
17
|
/**
|
|
8
18
|
* Evaluates scope rules to determine what entities are in scope
|
|
9
19
|
*/
|
|
10
|
-
export declare class
|
|
20
|
+
export declare class RuleScopeEvaluator {
|
|
11
21
|
private registry;
|
|
12
22
|
private cache;
|
|
13
23
|
constructor(registry: ScopeRegistry);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope-evaluator.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/scope/scope-evaluator.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"scope-evaluator.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/scope/scope-evaluator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EACL,UAAU,EACV,aAAa,EACb,uBAAuB,EACvB,sBAAsB,EAEvB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;GAEG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,KAAK,CAAkD;gBAEnD,QAAQ,EAAE,aAAa;IAInC;;OAEG;IACH,QAAQ,CACN,OAAO,EAAE,aAAa,EACtB,OAAO,GAAE,uBAA4B,GACpC,sBAAsB;IAoEzB;;OAEG;IACH,OAAO,CAAC,YAAY;IAqDpB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAyB7B;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;OAEG;IACH,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,EAAE;IAWpD;;OAEG;IACH,oBAAoB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,EAAE;IAMtD;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO;IAKlE;;OAEG;IACH,mBAAmB,CAAC,OAAO,EAAE,aAAa,GAAG;QAC3C,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE;YACvB,IAAI,EAAE,UAAU,CAAC;YACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC,CAAC;KACJ;CAiBF"}
|
package/scope/scope-evaluator.js
CHANGED
|
@@ -1,14 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* @file Scope Evaluator
|
|
4
|
-
* @description Evaluates scope rules to determine
|
|
3
|
+
* @file Rule-Based Scope Evaluator
|
|
4
|
+
* @description Evaluates scope rules to determine which entities are "in scope"
|
|
5
|
+
* for a given actor at a given location.
|
|
6
|
+
*
|
|
7
|
+
* Pipeline role: PRE-PARSE — called via WorldModel.evaluateScope() →
|
|
8
|
+
* VocabularyManager.updateScopeVocabulary() to populate the parser's entity
|
|
9
|
+
* vocabulary before each turn. Stories can add/remove rules via
|
|
10
|
+
* world.addScopeRule() / world.removeScopeRule().
|
|
11
|
+
*
|
|
12
|
+
* NOT the same as the parser's GrammarScopeResolver (grammar constraint
|
|
13
|
+
* evaluation) or the stdlib's StandardScopeResolver (validation-phase entity
|
|
14
|
+
* resolution with disambiguation).
|
|
5
15
|
*/
|
|
6
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.
|
|
17
|
+
exports.RuleScopeEvaluator = void 0;
|
|
8
18
|
/**
|
|
9
19
|
* Evaluates scope rules to determine what entities are in scope
|
|
10
20
|
*/
|
|
11
|
-
class
|
|
21
|
+
class RuleScopeEvaluator {
|
|
12
22
|
registry;
|
|
13
23
|
cache = new Map();
|
|
14
24
|
constructor(registry) {
|
|
@@ -203,5 +213,5 @@ class ScopeEvaluator {
|
|
|
203
213
|
};
|
|
204
214
|
}
|
|
205
215
|
}
|
|
206
|
-
exports.
|
|
216
|
+
exports.RuleScopeEvaluator = RuleScopeEvaluator;
|
|
207
217
|
//# sourceMappingURL=scope-evaluator.js.map
|