@sadhaka/loom-engine 1.2.5 → 1.3.1

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/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export declare const LOOM_ENGINE_VERSION = "1.2.5";
1
+ export declare const LOOM_ENGINE_VERSION = "1.3.1";
2
2
  export type { Vec2, Vec3, Rect } from './util/math.js';
3
3
  export { vec2, vec3, rect, clamp, lerp, smoothstep, approxEq, rectContains, rectIntersects, visibleInView, } from './util/math.js';
4
4
  export type { ColorRGBA } from './util/color.js';
@@ -188,6 +188,10 @@ export { MerchantStock, RESOURCE_MERCHANT_STOCK } from './runtime/merchant-stock
188
188
  export type { PriceModifierFn, StockItemSpec, StockItem, BuyResult, SellResult, MerchantStockOptions, } from './runtime/merchant-stock.js';
189
189
  export { LootTier, RESOURCE_LOOT_TIER } from './runtime/loot-tier.js';
190
190
  export type { TierSpec, LootItem, DropResult, RollContext as LootRollContext, TierScaleFn, LootTierOptions, } from './runtime/loot-tier.js';
191
+ export { PersonaTrait, RESOURCE_PERSONA_TRAIT } from './runtime/persona-trait.js';
192
+ export type { TraitSpec, CharacterTraitValue, FindOptions as PersonaFindOptions, PersonaTraitOptions, } from './runtime/persona-trait.js';
193
+ export { RelationshipGraph, RESOURCE_RELATIONSHIP_GRAPH } from './runtime/relationship-graph.js';
194
+ export type { BondTypeSpec, Bond, BondFilter, RelationshipGraphOptions, } from './runtime/relationship-graph.js';
191
195
  export { ResourceRegistry, createTimeResource, createVeilBudgetResource, RESOURCE_TIME, RESOURCE_CAMERA, RESOURCE_DEVICE, RESOURCE_VEIL_BUDGET, } from './resources.js';
192
196
  export { SpriteRenderSystem } from './systems/sprite-render-system.js';
193
197
  export { Engine, registerBackend, isBackendRegistered } from './engine.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAG3C,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,aAAa,GACd,MAAM,gBAAgB,CAAC;AAExB,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EACL,IAAI,EACJ,SAAS,EACT,eAAe,EACf,eAAe,EACf,SAAS,EACT,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,eAAe,EACf,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,UAAU,GACX,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAChE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEzG,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,UAAU,EACV,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACpE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACV,oBAAoB,EACpB,aAAa,GACd,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,gBAAgB,EAChB,0BAA0B,GAC3B,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAE/E,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACtE,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAI3D,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACjF,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE1F,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAE/E,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAEhF,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,YAAY,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EACL,OAAO,EACP,QAAQ,EACR,WAAW,EACX,UAAU,EACV,SAAS,EACT,MAAM,EACN,QAAQ,GACT,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxF,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC1E,YAAY,EACV,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,aAAa,GACd,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,oBAAoB,EACpB,+BAA+B,GAChC,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,eAAe,EACf,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC1E,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAElE,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAElF,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACV,aAAa,EACb,YAAY,EACZ,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,UAAU,EACV,eAAe,EACf,UAAU,EACV,SAAS,EACT,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,eAAe,EACf,aAAa,EACb,SAAS,EACT,mBAAmB,EACnB,SAAS,GACV,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,6BAA6B,GAC9B,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,kBAAkB,EAClB,aAAa,EACb,iBAAiB,GAClB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACzE,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,UAAU,GACX,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAChF,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,GACZ,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxF,YAAY,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAEvF,OAAO,EACL,UAAU,EACV,cAAc,EACd,WAAW,EACX,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,QAAQ,EACR,UAAU,EACV,aAAa,GACd,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACvF,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,oBAAoB,EACpB,SAAS,GACV,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEnF,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC3F,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACtE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,UAAU,EACV,QAAQ,EACR,UAAU,EACV,UAAU,EACV,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,aAAa,GACd,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACxE,YAAY,EACV,YAAY,EACZ,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,SAAS,EACT,UAAU,GACX,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EACV,WAAW,EACX,WAAW,EACX,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACnE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7E,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACrF,YAAY,EACV,aAAa,EACb,QAAQ,EACR,oBAAoB,EACpB,SAAS,GACV,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACzE,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxF,YAAY,EACV,WAAW,EACX,UAAU,EACV,WAAW,EACX,qBAAqB,EACrB,YAAY,GACb,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,YAAY,EACV,YAAY,EACZ,UAAU,EACV,iBAAiB,EACjB,SAAS,IAAI,eAAe,EAC5B,MAAM,IAAI,YAAY,GACvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACzE,YAAY,EACV,SAAS,EACT,QAAQ,EACR,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACtE,YAAY,EACV,UAAU,EACV,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,MAAM,EACN,KAAK,EACL,UAAU,EACV,MAAM,EACN,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE1E,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,YAAY,EACV,aAAa,EACb,KAAK,EACL,WAAW,EACX,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACrF,YAAY,EACV,aAAa,EACb,aAAa,EACb,aAAa,EACb,YAAY,GACb,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACrF,YAAY,EAAE,MAAM,IAAI,aAAa,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEjG,OAAO,EACL,SAAS,EACT,MAAM,EACN,SAAS,EACT,UAAU,EACV,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,MAAM,EACN,SAAS,EACT,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,YAAY,IAAI,qBAAqB,GACtC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACpE,YAAY,EACV,oBAAoB,EACpB,cAAc,EACd,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC3E,YAAY,EACV,aAAa,EACb,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACrF,YAAY,EACV,YAAY,EACZ,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,oBAAoB,EACpB,+BAA+B,GAChC,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EACV,iBAAiB,EACjB,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EACL,aAAa,EACb,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACV,IAAI,EACJ,UAAU,EACV,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACpE,YAAY,EACV,MAAM,EACN,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAChF,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE9E,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC1E,YAAY,EACV,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,YAAY,EACV,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EAChB,yBAAyB,EACzB,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,YAAY,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACzE,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACpE,YAAY,EACV,QAAQ,EACR,cAAc,EACd,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC9F,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAEtF,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACtE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACrF,YAAY,EACV,UAAU,EACV,oBAAoB,EACpB,aAAa,IAAI,kBAAkB,GACpC,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC5F,YAAY,EACV,UAAU,EACV,aAAa,EACb,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AACjG,YAAY,EACV,WAAW,EACX,WAAW,EACX,aAAa,EACb,wBAAwB,GACzB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EACV,YAAY,EACZ,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AACzG,YAAY,EACV,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EACV,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,YAAY,EACV,aAAa,EACb,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,YAAY,EACV,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACvF,YAAY,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACrF,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEpF,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EACV,cAAc,EACd,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EACV,OAAO,EACP,YAAY,EACZ,WAAW,IAAI,kBAAkB,EACjC,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC3F,YAAY,EACV,sBAAsB,EACtB,aAAa,IAAI,mBAAmB,EACpC,cAAc,IAAI,oBAAoB,EACtC,eAAe,IAAI,qBAAqB,EACxC,cAAc,IAAI,oBAAoB,GACvC,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AACzG,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,0BAA0B,GAC3B,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC9F,YAAY,EACV,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,YAAY,EACV,aAAa,EACb,aAAa,IAAI,wBAAwB,EACzC,kBAAkB,EAClB,aAAa,IAAI,wBAAwB,GAC1C,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AACnG,YAAY,EACV,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,wBAAwB,GACzB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EACV,QAAQ,EACR,SAAS,EACT,aAAa,EACb,UAAU,EACV,MAAM,EACN,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,EACd,eAAe,EACf,YAAY,EACZ,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxF,YAAY,EACV,UAAU,IAAI,gBAAgB,EAC9B,cAAc,EACd,cAAc,EACd,WAAW,IAAI,iBAAiB,EAChC,qBAAqB,GACtB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AACjG,YAAY,EACV,GAAG,EACH,aAAa,EACb,WAAW,IAAI,mBAAmB,EAClC,wBAAwB,GACzB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,YAAY,EACV,UAAU,EACV,SAAS,IAAI,cAAc,EAC3B,aAAa,EACb,qBAAqB,IAAI,0BAA0B,EACnD,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC9F,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,UAAU,IAAI,qBAAqB,EACnC,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,YAAY,EACV,UAAU,EACV,QAAQ,EACR,UAAU,EACV,oBAAoB,IAAI,0BAA0B,EAClD,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACrF,YAAY,EACV,OAAO,EACP,SAAS,EACT,oBAAoB,EACpB,YAAY,IAAI,iBAAiB,GAClC,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxF,YAAY,EACV,cAAc,EACd,WAAW,IAAI,oBAAoB,EACnC,qBAAqB,GACtB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACrF,YAAY,EACV,eAAe,EACf,aAAa,EACb,SAAS,EACT,SAAS,EACT,UAAU,EACV,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACtE,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,WAAW,IAAI,eAAe,EAC9B,WAAW,EACX,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EACV,SAAS,EACT,mBAAmB,EACnB,WAAW,IAAI,kBAAkB,EACjC,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AACjG,YAAY,EACV,YAAY,EACZ,IAAI,EACJ,UAAU,EACV,wBAAwB,GACzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,eAAe,EACf,eAAe,EACf,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAGvE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC3E,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAOhE,YAAY,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAI9B,YAAY,EACV,eAAe,EACf,WAAW,EACX,eAAe,EACf,SAAS,EACT,aAAa,GACd,MAAM,+BAA+B,CAAC;AAEvC,YAAY,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,aAAa,GACd,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,cAAc,GACf,MAAM,+BAA+B,CAAC;AAOvC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EACL,YAAY,EACZ,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,SAAS,EACT,YAAY,GACb,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,eAAe,EACf,eAAe,EACf,kBAAkB,GACnB,MAAM,4CAA4C,CAAC;AAEpD,OAAO,EACL,cAAc,EACd,eAAe,EACf,UAAU,EACV,UAAU,EACV,WAAW,EACX,SAAS,EACT,UAAU,EACV,SAAS,EACT,WAAW,GACZ,MAAM,8BAA8B,CAAC;AAItC,YAAY,EACV,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,GACd,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,gCAAgC,CAAC;AAMxC,YAAY,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,aAAa,EACb,kBAAkB,GACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAMhF,YAAY,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,wBAAwB,EACxB,aAAa,GACd,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,qBAAqB,EACrB,YAAY,GACb,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAG3E,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAS9B,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EACL,uBAAuB,EACvB,2BAA2B,EAC3B,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AASrE,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,YAAY,EACV,aAAa,EACb,cAAc,EACd,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,UAAU,EACV,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,aAAa,EACb,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAInC,YAAY,EACV,eAAe,EACf,UAAU,EACV,aAAa,GACd,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,cAAc,GACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAOnE,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,YAAY,EACV,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAMhC,YAAY,EACV,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EAEb,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,QAAQ,EACR,kBAAkB,EAClB,QAAQ,EACR,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,wBAAwB,EACxB,0BAA0B,EAC1B,OAAO,EACP,QAAQ,EACR,QAAQ,GACT,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,YAAY,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,YAAY,EACV,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,YAAY,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,+BAA+B,CAAC;AACvC,YAAY,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAC9F,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAclF,YAAY,EACV,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,eAAe,GAChB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,WAAW,IAAI,eAAe,EAC9B,2BAA2B,GAC5B,MAAM,wCAAwC,CAAC;AAChD,YAAY,EACV,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,YAAY,EACV,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,YAAY,EACV,YAAY,EACZ,iBAAiB,GAClB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,uBAAuB,EACvB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,GACd,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACxF,OAAO,EACL,4BAA4B,EAC5B,+BAA+B,EAC/B,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,GAC7B,MAAM,wCAAwC,CAAC;AAChD,YAAY,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AASvE,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,yBAAyB,EACzB,cAAc,EACd,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,eAAe,EACf,4BAA4B,EAC5B,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,8BAA8B,CAAC;AAQtC,YAAY,EACV,cAAc,EACd,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,4BAA4B,EAC5B,oBAAoB,EACpB,SAAS,GACV,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAKlF,OAAO,EACL,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,UAAU,EACV,WAAW,EACX,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,YAAY,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM1D,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EACL,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGhE,YAAY,EACV,MAAM,EACN,cAAc,EACd,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,eAAe,EACf,eAAe,EACf,cAAc,EACd,eAAe,EACf,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,gBAAgB,EAChB,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,YAAY,EACV,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,iCAAiC,CAAC;AAQzC,YAAY,EACV,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,EACtB,eAAe,EACf,cAAc,EACd,cAAc,EACd,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,YAAY,EACZ,yBAAyB,GAC1B,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,YAAY,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,YAAY,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,YAAY,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EACL,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,mCAAmC,CAAC;AAgB3C,YAAY,EACV,aAAa,EACb,aAAa,IAAI,mBAAmB,EACpC,aAAa,IAAI,mBAAmB,EACpC,YAAY,IAAI,kBAAkB,EAClC,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,cAAc,EACd,aAAa,IAAI,mBAAmB,EACpC,QAAQ,IAAI,cAAc,EAC1B,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,oBAAoB,EACpB,gBAAgB,IAAI,sBAAsB,EAC1C,mBAAmB,IAAI,yBAAyB,EAChD,aAAa,EACb,WAAW,EACX,UAAU,IAAI,oBAAoB,EAClC,gCAAgC,IAAI,uCAAuC,EAC3E,6BAA6B,IAAI,oCAAoC,EACrE,UAAU,IAAI,sBAAsB,EACpC,eAAe,IAAI,2BAA2B,GAC/C,MAAM,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@
8
8
  // the previous suffix `-perf-9-1` lingered after package.json was
9
9
  // bumped to 0.10.0, surfacing as a drift bug in
10
10
  // engine.LOOM_ENGINE_VERSION-based diagnostics.
11
- export const LOOM_ENGINE_VERSION = '1.2.5';
11
+ export const LOOM_ENGINE_VERSION = '1.3.1';
12
12
  export { vec2, vec3, rect, clamp, lerp, smoothstep, approxEq, rectContains, rectIntersects, visibleInView, } from './util/math.js';
13
13
  export { rgba, hexToRgba, rgbaToHexString, rgbaToCssString, colorLerp, COLOR_WHITE, COLOR_BLACK, COLOR_TRANSPARENT, COLOR_KNOT_STR, COLOR_KNOT_DEX, COLOR_KNOT_INT, COLOR_KNOT_CENTER, } from './util/color.js';
14
14
  export { EntityAllocator, NULL_ENTITY, entityIndex, entityGeneration, makeEntity, } from './entity.js';
@@ -201,6 +201,10 @@ export { EncounterTable, RESOURCE_ENCOUNTER_TABLE } from './runtime/encounter-ta
201
201
  export { MerchantStock, RESOURCE_MERCHANT_STOCK } from './runtime/merchant-stock.js';
202
202
  // 1.2.5 CAPSTONE (Wave 1.2 world depth milestone) - tiered loot pools.
203
203
  export { LootTier, RESOURCE_LOOT_TIER } from './runtime/loot-tier.js';
204
+ // 1.3.0 (Wave 1.3 AI persona depth opens) - NPC personality trait ledger.
205
+ export { PersonaTrait, RESOURCE_PERSONA_TRAIT } from './runtime/persona-trait.js';
206
+ // 1.3.1 (Wave 1.3 AI persona depth) - per-pair character bonds (asymmetric).
207
+ export { RelationshipGraph, RESOURCE_RELATIONSHIP_GRAPH } from './runtime/relationship-graph.js';
204
208
  export { ResourceRegistry, createTimeResource, createVeilBudgetResource, RESOURCE_TIME, RESOURCE_CAMERA, RESOURCE_DEVICE, RESOURCE_VEIL_BUDGET, } from './resources.js';
205
209
  // Default systems
206
210
  export { SpriteRenderSystem } from './systems/sprite-render-system.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ export interface TraitSpec {
2
+ id: string;
3
+ baseline?: number;
4
+ decayHalfLifeMs?: number;
5
+ data?: Record<string, unknown>;
6
+ }
7
+ export interface CharacterTraitValue {
8
+ characterId: string;
9
+ traitId: string;
10
+ value: number;
11
+ rawValue: number;
12
+ ageMs: number;
13
+ }
14
+ export interface FindOptions {
15
+ minLevel?: number;
16
+ maxLevel?: number;
17
+ characterIds?: string[];
18
+ }
19
+ export interface PersonaTraitOptions {
20
+ valueClamp?: (raw: number) => number;
21
+ onChange?: (entry: CharacterTraitValue) => void;
22
+ }
23
+ export declare class PersonaTrait {
24
+ private specs;
25
+ private entries;
26
+ private valueClamp;
27
+ private onChange;
28
+ private disposed;
29
+ private constructor();
30
+ static create(opts?: PersonaTraitOptions): PersonaTrait;
31
+ defineTrait(spec: TraitSpec): boolean;
32
+ hasTraitSpec(id: string): boolean;
33
+ getTraitSpec(id: string): TraitSpec | null;
34
+ removeTraitSpec(id: string): boolean;
35
+ traitIds(): string[];
36
+ set(characterId: string, traitId: string, value: number): boolean;
37
+ adjust(characterId: string, traitId: string, delta: number): number | null;
38
+ getValue(characterId: string, traitId: string): number;
39
+ getRawValue(characterId: string, traitId: string): number | null;
40
+ has(characterId: string, traitId: string): boolean;
41
+ remove(characterId: string, traitId: string): boolean;
42
+ forCharacter(characterId: string): CharacterTraitValue[];
43
+ forTrait(traitId: string): CharacterTraitValue[];
44
+ findHighest(traitId: string, opts?: FindOptions): CharacterTraitValue | null;
45
+ findLowest(traitId: string, opts?: FindOptions): CharacterTraitValue | null;
46
+ entryCount(): number;
47
+ traitSpecCount(): number;
48
+ list(): CharacterTraitValue[];
49
+ tick(dtMs: number): void;
50
+ clear(): void;
51
+ dispose(): void;
52
+ private find;
53
+ private fireChange;
54
+ private snapshot;
55
+ }
56
+ export declare const RESOURCE_PERSONA_TRAIT = "persona_trait";
57
+ //# sourceMappingURL=persona-trait.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persona-trait.d.ts","sourceRoot":"","sources":["../../src/runtime/persona-trait.ts"],"names":[],"mappings":"AAqCA,MAAM,WAAW,SAAS;IAExB,EAAE,EAAE,MAAM,CAAC;IAGX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAEhB,KAAK,EAAE,MAAM,CAAC;IAGd,QAAQ,EAAE,MAAM,CAAC;IAEjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAE1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAElC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IAErC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;CACjD;AAsBD,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAqC;IAClD,OAAO,CAAC,OAAO,CAAyC;IACxD,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,QAAQ,CAA4C;IAC5D,OAAO,CAAC,QAAQ,CAAkB;IAElC,OAAO;IAMP,MAAM,CAAC,MAAM,CAAC,IAAI,GAAE,mBAAwB,GAAG,YAAY;IAM3D,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAgBrC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIjC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAK1C,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAsBpC,QAAQ,IAAI,MAAM,EAAE;IAgBpB,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAqBjE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAmB1E,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAOtD,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAKhE,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAIlD,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAMrD,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,mBAAmB,EAAE;IAaxD,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,EAAE;IAchD,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,mBAAmB,GAAG,IAAI;IAIhF,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,mBAAmB,GAAG,IAAI;IAK/E,UAAU,IAAI,MAAM;IAEpB,cAAc,IAAI,MAAM;IAExB,IAAI,IAAI,mBAAmB,EAAE;IAc7B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IA0BxB,KAAK,IAAI,IAAI;IAMb,OAAO,IAAI,IAAI;IASf,OAAO,CAAC,IAAI;IAiCZ,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,QAAQ;CASjB;AAGD,eAAO,MAAM,sBAAsB,kBAAkB,CAAC"}
@@ -0,0 +1,340 @@
1
+ // PersonaTrait - NPC personality trait ledger with weighted
2
+ // expression + decay.
3
+ //
4
+ // 1.3.0 enabling primitive (Wave 1.3 AI persona depth opens). The
5
+ // most "uniquely Loom" wave: making NPCs feel like PEOPLE, not
6
+ // state machines. PersonaTrait is the foundation - a weighted
7
+ // trait vector per character (curiosity, courage, greed,
8
+ // suspicion, ...) that biases their dialog, AI choices, and
9
+ // reactions. Traits can decay over time, be reinforced by
10
+ // experiences, and be queried for "is this NPC the type to ___?".
11
+ //
12
+ // var traits = PersonaTrait.create();
13
+ // traits.set('mira', 'courage', 0.7);
14
+ // traits.set('mira', 'curiosity', 0.9);
15
+ // traits.set('mira', 'greed', 0.1);
16
+ //
17
+ // // After Mira witnesses a death:
18
+ // traits.adjust('mira', 'courage', -0.2);
19
+ //
20
+ // // Query: which NPC is most likely to volunteer for the
21
+ // // dangerous quest?
22
+ // var bravest = traits.findHighest('courage', { minLevel: 0.5 });
23
+ //
24
+ // // Tick decay (slowly normalize traits toward baseline 0):
25
+ // each frame: traits.tick(dtMs);
26
+ //
27
+ // Pairs with EmotionState (1.3.2 next, mood gauges - shorter
28
+ // timescale than traits), RelationshipGraph (1.3.1 next,
29
+ // per-pair bonds), DialogTree (0.61, often gated by trait
30
+ // thresholds), BehaviorTree (1.1.2, uses traits in conditions).
31
+ //
32
+ // Traits are unbounded internally but `getValue` clamps to
33
+ // [-1, 1] for stable querying. Consumer can normalize differently
34
+ // via custom valueClamp.
35
+ //
36
+ // Code style: var-only in browser source.
37
+ const SQRT2 = Math.sqrt(2); // unused but kept for potential future use
38
+ function defaultClamp(v) {
39
+ if (!isFinite(v))
40
+ return 0;
41
+ if (v < -1)
42
+ return -1;
43
+ if (v > 1)
44
+ return 1;
45
+ return v;
46
+ }
47
+ function key(characterId, traitId) {
48
+ return characterId + '|' + traitId;
49
+ }
50
+ export class PersonaTrait {
51
+ specs = new Map();
52
+ entries = new Map();
53
+ valueClamp;
54
+ onChange;
55
+ disposed = false;
56
+ constructor(opts) {
57
+ this.valueClamp = typeof opts.valueClamp === 'function'
58
+ ? opts.valueClamp : defaultClamp;
59
+ this.onChange = opts.onChange ?? null;
60
+ }
61
+ static create(opts = {}) {
62
+ return new PersonaTrait(opts);
63
+ }
64
+ // ---------- trait spec management ----------
65
+ defineTrait(spec) {
66
+ if (this.disposed)
67
+ return false;
68
+ if (!spec || typeof spec.id !== 'string' || spec.id.length === 0)
69
+ return false;
70
+ var clone = {
71
+ id: spec.id,
72
+ baseline: spec.baseline !== undefined && isFinite(spec.baseline)
73
+ ? spec.baseline : 0,
74
+ decayHalfLifeMs: spec.decayHalfLifeMs !== undefined
75
+ && isFinite(spec.decayHalfLifeMs) && spec.decayHalfLifeMs >= 0
76
+ ? spec.decayHalfLifeMs : 0,
77
+ };
78
+ if (spec.data !== undefined)
79
+ clone.data = spec.data;
80
+ this.specs.set(spec.id, clone);
81
+ return true;
82
+ }
83
+ hasTraitSpec(id) {
84
+ return this.specs.has(id);
85
+ }
86
+ getTraitSpec(id) {
87
+ var s = this.specs.get(id);
88
+ return s ? { ...s } : null;
89
+ }
90
+ removeTraitSpec(id) {
91
+ if (this.disposed)
92
+ return false;
93
+ if (!this.specs.has(id))
94
+ return false;
95
+ // Drop all entries for this trait.
96
+ var toRemove = [];
97
+ var keys = this.entries.keys();
98
+ var k = keys.next();
99
+ var suffix = '|' + id;
100
+ while (!k.done) {
101
+ var ks = k.value;
102
+ if (ks.length >= suffix.length
103
+ && ks.substring(ks.length - suffix.length) === suffix) {
104
+ toRemove.push(ks);
105
+ }
106
+ k = keys.next();
107
+ }
108
+ for (var i = 0; i < toRemove.length; i++) {
109
+ this.entries.delete(toRemove[i]);
110
+ }
111
+ return this.specs.delete(id);
112
+ }
113
+ traitIds() {
114
+ var out = [];
115
+ var keys = this.specs.keys();
116
+ var k = keys.next();
117
+ while (!k.done) {
118
+ out.push(k.value);
119
+ k = keys.next();
120
+ }
121
+ return out;
122
+ }
123
+ // ---------- value get / set / adjust ----------
124
+ // Set a character's trait value directly. Auto-defines the
125
+ // trait spec with baseline 0 / no decay if not already defined,
126
+ // so quick prototyping doesn't need a separate defineTrait call.
127
+ set(characterId, traitId, value) {
128
+ if (this.disposed)
129
+ return false;
130
+ if (typeof characterId !== 'string' || characterId.length === 0)
131
+ return false;
132
+ if (typeof traitId !== 'string' || traitId.length === 0)
133
+ return false;
134
+ if (!isFinite(value))
135
+ return false;
136
+ if (!this.specs.has(traitId))
137
+ this.defineTrait({ id: traitId });
138
+ var k = key(characterId, traitId);
139
+ var entry = {
140
+ characterId: characterId,
141
+ traitId: traitId,
142
+ rawValue: value,
143
+ ageMs: 0,
144
+ };
145
+ this.entries.set(k, entry);
146
+ this.fireChange(entry);
147
+ return true;
148
+ }
149
+ // Add `delta` to the current value. If no entry exists, treats
150
+ // current as 0. Returns the new clamped value (or null on
151
+ // invalid input).
152
+ adjust(characterId, traitId, delta) {
153
+ if (this.disposed)
154
+ return null;
155
+ if (typeof characterId !== 'string' || characterId.length === 0)
156
+ return null;
157
+ if (typeof traitId !== 'string' || traitId.length === 0)
158
+ return null;
159
+ if (!isFinite(delta))
160
+ return null;
161
+ if (!this.specs.has(traitId))
162
+ this.defineTrait({ id: traitId });
163
+ var k = key(characterId, traitId);
164
+ var entry = this.entries.get(k);
165
+ if (!entry) {
166
+ entry = { characterId: characterId, traitId: traitId, rawValue: 0, ageMs: 0 };
167
+ this.entries.set(k, entry);
168
+ }
169
+ entry.rawValue += delta;
170
+ entry.ageMs = 0;
171
+ this.fireChange(entry);
172
+ return this.valueClamp(entry.rawValue);
173
+ }
174
+ // Returns the clamped value, or 0 if no entry / invalid input.
175
+ getValue(characterId, traitId) {
176
+ var entry = this.entries.get(key(characterId, traitId));
177
+ if (!entry)
178
+ return 0;
179
+ return this.valueClamp(entry.rawValue);
180
+ }
181
+ // Returns the raw (un-clamped) value, or null if no entry.
182
+ getRawValue(characterId, traitId) {
183
+ var entry = this.entries.get(key(characterId, traitId));
184
+ return entry ? entry.rawValue : null;
185
+ }
186
+ has(characterId, traitId) {
187
+ return this.entries.has(key(characterId, traitId));
188
+ }
189
+ remove(characterId, traitId) {
190
+ if (this.disposed)
191
+ return false;
192
+ return this.entries.delete(key(characterId, traitId));
193
+ }
194
+ // All trait values for one character.
195
+ forCharacter(characterId) {
196
+ var out = [];
197
+ var iter = this.entries.values();
198
+ var v = iter.next();
199
+ while (!v.done) {
200
+ var e = v.value;
201
+ if (e.characterId === characterId)
202
+ out.push(this.snapshot(e));
203
+ v = iter.next();
204
+ }
205
+ return out;
206
+ }
207
+ // All character entries for one trait.
208
+ forTrait(traitId) {
209
+ var out = [];
210
+ var iter = this.entries.values();
211
+ var v = iter.next();
212
+ while (!v.done) {
213
+ var e = v.value;
214
+ if (e.traitId === traitId)
215
+ out.push(this.snapshot(e));
216
+ v = iter.next();
217
+ }
218
+ return out;
219
+ }
220
+ // Find the character whose trait value is highest within
221
+ // [minLevel, maxLevel]. Returns null if no match.
222
+ findHighest(traitId, opts = {}) {
223
+ return this.find(traitId, opts, true);
224
+ }
225
+ findLowest(traitId, opts = {}) {
226
+ return this.find(traitId, opts, false);
227
+ }
228
+ // Number of (character, trait) entries.
229
+ entryCount() { return this.entries.size; }
230
+ traitSpecCount() { return this.specs.size; }
231
+ list() {
232
+ var out = [];
233
+ var iter = this.entries.values();
234
+ var v = iter.next();
235
+ while (!v.done) {
236
+ out.push(this.snapshot(v.value));
237
+ v = iter.next();
238
+ }
239
+ return out;
240
+ }
241
+ // Apply decay toward baseline using the trait spec's
242
+ // decayHalfLifeMs. Each tick advances ageMs and pulls the raw
243
+ // value some fraction of the way to baseline.
244
+ tick(dtMs) {
245
+ if (this.disposed)
246
+ return;
247
+ var dt = +dtMs;
248
+ if (!isFinite(dt) || dt <= 0)
249
+ return;
250
+ var iter = this.entries.values();
251
+ var v = iter.next();
252
+ while (!v.done) {
253
+ var e = v.value;
254
+ e.ageMs += dt;
255
+ var spec = this.specs.get(e.traitId);
256
+ if (spec && spec.decayHalfLifeMs > 0) {
257
+ // Exponential decay toward baseline.
258
+ // value(t+dt) = baseline + (value(t) - baseline) * 0.5^(dt/halfLife)
259
+ var halfLife = spec.decayHalfLifeMs;
260
+ var factor = Math.pow(0.5, dt / halfLife);
261
+ var baseline = spec.baseline;
262
+ var newRaw = baseline + (e.rawValue - baseline) * factor;
263
+ if (Math.abs(newRaw - e.rawValue) > 1e-9) {
264
+ e.rawValue = newRaw;
265
+ this.fireChange(e);
266
+ }
267
+ }
268
+ v = iter.next();
269
+ }
270
+ }
271
+ clear() {
272
+ if (this.disposed)
273
+ return;
274
+ this.specs.clear();
275
+ this.entries.clear();
276
+ }
277
+ dispose() {
278
+ this.specs.clear();
279
+ this.entries.clear();
280
+ this.onChange = null;
281
+ this.disposed = true;
282
+ }
283
+ // ---------- private ----------
284
+ find(traitId, opts, highest) {
285
+ var minLevel = opts.minLevel !== undefined && isFinite(opts.minLevel)
286
+ ? opts.minLevel : -Infinity;
287
+ var maxLevel = opts.maxLevel !== undefined && isFinite(opts.maxLevel)
288
+ ? opts.maxLevel : Infinity;
289
+ var allowed = null;
290
+ if (Array.isArray(opts.characterIds) && opts.characterIds.length > 0) {
291
+ allowed = new Set(opts.characterIds);
292
+ }
293
+ var bestEntry = null;
294
+ var bestVal = highest ? -Infinity : Infinity;
295
+ var iter = this.entries.values();
296
+ var v = iter.next();
297
+ while (!v.done) {
298
+ var e = v.value;
299
+ if (e.traitId !== traitId) {
300
+ v = iter.next();
301
+ continue;
302
+ }
303
+ if (allowed !== null && !allowed.has(e.characterId)) {
304
+ v = iter.next();
305
+ continue;
306
+ }
307
+ var clamped = this.valueClamp(e.rawValue);
308
+ if (clamped < minLevel || clamped > maxLevel) {
309
+ v = iter.next();
310
+ continue;
311
+ }
312
+ if (highest ? clamped > bestVal : clamped < bestVal) {
313
+ bestVal = clamped;
314
+ bestEntry = e;
315
+ }
316
+ v = iter.next();
317
+ }
318
+ return bestEntry ? this.snapshot(bestEntry) : null;
319
+ }
320
+ fireChange(e) {
321
+ if (!this.onChange)
322
+ return;
323
+ try {
324
+ this.onChange(this.snapshot(e));
325
+ }
326
+ catch { /* ignore */ }
327
+ }
328
+ snapshot(e) {
329
+ return {
330
+ characterId: e.characterId,
331
+ traitId: e.traitId,
332
+ value: this.valueClamp(e.rawValue),
333
+ rawValue: e.rawValue,
334
+ ageMs: e.ageMs,
335
+ };
336
+ }
337
+ }
338
+ // Resource key for the world's resource registry.
339
+ export const RESOURCE_PERSONA_TRAIT = 'persona_trait';
340
+ //# sourceMappingURL=persona-trait.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persona-trait.js","sourceRoot":"","sources":["../../src/runtime/persona-trait.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ export interface BondTypeSpec {
2
+ id: string;
3
+ baseline?: number;
4
+ decayHalfLifeMs?: number;
5
+ data?: Record<string, unknown>;
6
+ }
7
+ export interface Bond {
8
+ fromId: string;
9
+ toId: string;
10
+ bondType: string;
11
+ value: number;
12
+ rawValue: number;
13
+ ageMs: number;
14
+ }
15
+ export interface BondFilter {
16
+ bondType?: string;
17
+ minLevel?: number;
18
+ maxLevel?: number;
19
+ fromId?: string;
20
+ toId?: string;
21
+ }
22
+ export interface RelationshipGraphOptions {
23
+ valueClamp?: (raw: number) => number;
24
+ onChange?: (bond: Bond) => void;
25
+ }
26
+ export declare class RelationshipGraph {
27
+ private specs;
28
+ private bonds;
29
+ private valueClamp;
30
+ private onChange;
31
+ private disposed;
32
+ private constructor();
33
+ static create(opts?: RelationshipGraphOptions): RelationshipGraph;
34
+ defineBondType(spec: BondTypeSpec): boolean;
35
+ hasBondType(id: string): boolean;
36
+ bondTypes(): string[];
37
+ removeBondType(id: string): boolean;
38
+ setBond(fromId: string, toId: string, bondType: string, value: number): boolean;
39
+ setMutual(aId: string, bId: string, bondType: string, value: number): boolean;
40
+ adjustBond(fromId: string, toId: string, bondType: string, delta: number): number | null;
41
+ removeBond(fromId: string, toId: string, bondType: string): boolean;
42
+ hasBond(fromId: string, toId: string, bondType: string): boolean;
43
+ getBond(fromId: string, toId: string, bondType: string): Bond | null;
44
+ bondsFor(characterId: string, filter?: BondFilter): Bond[];
45
+ bondsTo(characterId: string, filter?: BondFilter): Bond[];
46
+ bondsBetween(aId: string, bId: string, filter?: BondFilter): Bond[];
47
+ list(filter?: BondFilter): Bond[];
48
+ bondCount(): number;
49
+ bondTypeCount(): number;
50
+ findStrongest(bondType: string, filter?: BondFilter): Bond | null;
51
+ findWeakest(bondType: string, filter?: BondFilter): Bond | null;
52
+ tick(dtMs: number): void;
53
+ clear(): void;
54
+ dispose(): void;
55
+ private collect;
56
+ private findExtreme;
57
+ private fireChange;
58
+ private snapshot;
59
+ }
60
+ export declare const RESOURCE_RELATIONSHIP_GRAPH = "relationship_graph";
61
+ //# sourceMappingURL=relationship-graph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship-graph.d.ts","sourceRoot":"","sources":["../../src/runtime/relationship-graph.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,351 @@
1
+ // RelationshipGraph - per-pair character bonds (asymmetric).
2
+ //
3
+ // 1.3.1 enabling primitive (Wave 1.3 AI persona depth). PersonaTrait
4
+ // (1.3.0) is what an NPC IS in isolation. RelationshipGraph is
5
+ // who they CARE about, in both directions: Mira's friendship for
6
+ // Thane is one bond; Thane's friendship for Mira is a separate
7
+ // bond (which is the point - unrequited love, one-sided rivalries,
8
+ // stalker dynamics, mentor-student where one feels closer than
9
+ // the other).
10
+ //
11
+ // var rels = RelationshipGraph.create();
12
+ // rels.defineBondType({ id: 'trust', decayHalfLifeMs: 60000 });
13
+ // rels.defineBondType({ id: 'romantic', decayHalfLifeMs: 0 });
14
+ // rels.defineBondType({ id: 'rival', decayHalfLifeMs: 30000 });
15
+ //
16
+ // // Mira <-> Thane: friends.
17
+ // rels.setMutual('mira', 'thane', 'trust', 0.8);
18
+ //
19
+ // // Mira pines for Thane (one-sided).
20
+ // rels.setBond('mira', 'thane', 'romantic', 0.7);
21
+ // // Thane is oblivious; no reciprocal bond -> getBond returns null.
22
+ //
23
+ // // After Thane betrays Mira:
24
+ // rels.adjustBond('mira', 'thane', 'trust', -0.6);
25
+ // rels.setBond('mira', 'thane', 'rival', 0.9);
26
+ //
27
+ // // Query: who hates this NPC?
28
+ // var enemies = rels.bondsTo('thane').filter((b) => b.bondType === 'rival');
29
+ //
30
+ // Pairs with PersonaTrait (1.3.0, individual character traits),
31
+ // EmotionState (1.3.2 next, mood gauges), DialogTree (0.61, often
32
+ // gated by relationship strength), NarrativeMemory (1.3.5 capstone,
33
+ // remembers what shifted bonds).
34
+ //
35
+ // Code style: var-only in browser source.
36
+ function defaultClamp(v) {
37
+ if (!isFinite(v))
38
+ return 0;
39
+ if (v < -1)
40
+ return -1;
41
+ if (v > 1)
42
+ return 1;
43
+ return v;
44
+ }
45
+ function bondKey(from, to, type) {
46
+ return from + '->' + to + '|' + type;
47
+ }
48
+ export class RelationshipGraph {
49
+ specs = new Map();
50
+ bonds = new Map();
51
+ valueClamp;
52
+ onChange;
53
+ disposed = false;
54
+ constructor(opts) {
55
+ this.valueClamp = typeof opts.valueClamp === 'function'
56
+ ? opts.valueClamp : defaultClamp;
57
+ this.onChange = opts.onChange ?? null;
58
+ }
59
+ static create(opts = {}) {
60
+ return new RelationshipGraph(opts);
61
+ }
62
+ // ---------- bond type management ----------
63
+ defineBondType(spec) {
64
+ if (this.disposed)
65
+ return false;
66
+ if (!spec || typeof spec.id !== 'string' || spec.id.length === 0)
67
+ return false;
68
+ var clone = {
69
+ id: spec.id,
70
+ baseline: spec.baseline !== undefined && isFinite(spec.baseline)
71
+ ? spec.baseline : 0,
72
+ decayHalfLifeMs: spec.decayHalfLifeMs !== undefined
73
+ && isFinite(spec.decayHalfLifeMs) && spec.decayHalfLifeMs >= 0
74
+ ? spec.decayHalfLifeMs : 0,
75
+ };
76
+ if (spec.data !== undefined)
77
+ clone.data = spec.data;
78
+ this.specs.set(spec.id, clone);
79
+ return true;
80
+ }
81
+ hasBondType(id) {
82
+ return this.specs.has(id);
83
+ }
84
+ bondTypes() {
85
+ var out = [];
86
+ var keys = this.specs.keys();
87
+ var k = keys.next();
88
+ while (!k.done) {
89
+ out.push(k.value);
90
+ k = keys.next();
91
+ }
92
+ return out;
93
+ }
94
+ removeBondType(id) {
95
+ if (this.disposed)
96
+ return false;
97
+ if (!this.specs.has(id))
98
+ return false;
99
+ var toRemove = [];
100
+ var keys = this.bonds.keys();
101
+ var k = keys.next();
102
+ var suffix = '|' + id;
103
+ while (!k.done) {
104
+ if (k.value.length >= suffix.length
105
+ && k.value.substring(k.value.length - suffix.length) === suffix) {
106
+ toRemove.push(k.value);
107
+ }
108
+ k = keys.next();
109
+ }
110
+ for (var i = 0; i < toRemove.length; i++) {
111
+ this.bonds.delete(toRemove[i]);
112
+ }
113
+ return this.specs.delete(id);
114
+ }
115
+ // ---------- bond CRUD ----------
116
+ setBond(fromId, toId, bondType, value) {
117
+ if (this.disposed)
118
+ return false;
119
+ if (typeof fromId !== 'string' || fromId.length === 0)
120
+ return false;
121
+ if (typeof toId !== 'string' || toId.length === 0)
122
+ return false;
123
+ if (typeof bondType !== 'string' || bondType.length === 0)
124
+ return false;
125
+ if (fromId === toId)
126
+ return false;
127
+ if (!isFinite(value))
128
+ return false;
129
+ if (!this.specs.has(bondType))
130
+ this.defineBondType({ id: bondType });
131
+ var k = bondKey(fromId, toId, bondType);
132
+ var bond = {
133
+ fromId: fromId,
134
+ toId: toId,
135
+ bondType: bondType,
136
+ rawValue: value,
137
+ ageMs: 0,
138
+ };
139
+ this.bonds.set(k, bond);
140
+ this.fireChange(bond);
141
+ return true;
142
+ }
143
+ // Mutual bond: set both A->B and B->A to the same value.
144
+ setMutual(aId, bId, bondType, value) {
145
+ var ok1 = this.setBond(aId, bId, bondType, value);
146
+ var ok2 = this.setBond(bId, aId, bondType, value);
147
+ return ok1 && ok2;
148
+ }
149
+ adjustBond(fromId, toId, bondType, delta) {
150
+ if (this.disposed)
151
+ return null;
152
+ if (typeof fromId !== 'string' || fromId.length === 0)
153
+ return null;
154
+ if (typeof toId !== 'string' || toId.length === 0)
155
+ return null;
156
+ if (typeof bondType !== 'string' || bondType.length === 0)
157
+ return null;
158
+ if (fromId === toId)
159
+ return null;
160
+ if (!isFinite(delta))
161
+ return null;
162
+ if (!this.specs.has(bondType))
163
+ this.defineBondType({ id: bondType });
164
+ var k = bondKey(fromId, toId, bondType);
165
+ var bond = this.bonds.get(k);
166
+ if (!bond) {
167
+ bond = { fromId: fromId, toId: toId, bondType: bondType, rawValue: 0, ageMs: 0 };
168
+ this.bonds.set(k, bond);
169
+ }
170
+ bond.rawValue += delta;
171
+ bond.ageMs = 0;
172
+ this.fireChange(bond);
173
+ return this.valueClamp(bond.rawValue);
174
+ }
175
+ removeBond(fromId, toId, bondType) {
176
+ if (this.disposed)
177
+ return false;
178
+ return this.bonds.delete(bondKey(fromId, toId, bondType));
179
+ }
180
+ hasBond(fromId, toId, bondType) {
181
+ return this.bonds.has(bondKey(fromId, toId, bondType));
182
+ }
183
+ getBond(fromId, toId, bondType) {
184
+ var b = this.bonds.get(bondKey(fromId, toId, bondType));
185
+ return b ? this.snapshot(b) : null;
186
+ }
187
+ // ---------- bulk reads ----------
188
+ // All outgoing bonds from this character.
189
+ bondsFor(characterId, filter = {}) {
190
+ return this.collect((b) => b.fromId === characterId, filter);
191
+ }
192
+ // All incoming bonds toward this character.
193
+ bondsTo(characterId, filter = {}) {
194
+ return this.collect((b) => b.toId === characterId, filter);
195
+ }
196
+ // All bonds in either direction between A and B.
197
+ bondsBetween(aId, bId, filter = {}) {
198
+ return this.collect((b) => (b.fromId === aId && b.toId === bId) ||
199
+ (b.fromId === bId && b.toId === aId), filter);
200
+ }
201
+ // All bonds in the graph (filtered).
202
+ list(filter = {}) {
203
+ return this.collect(() => true, filter);
204
+ }
205
+ bondCount() { return this.bonds.size; }
206
+ bondTypeCount() { return this.specs.size; }
207
+ // ---------- find ----------
208
+ findStrongest(bondType, filter = {}) {
209
+ return this.findExtreme(bondType, filter, true);
210
+ }
211
+ findWeakest(bondType, filter = {}) {
212
+ return this.findExtreme(bondType, filter, false);
213
+ }
214
+ // ---------- decay ----------
215
+ tick(dtMs) {
216
+ if (this.disposed)
217
+ return;
218
+ var dt = +dtMs;
219
+ if (!isFinite(dt) || dt <= 0)
220
+ return;
221
+ var iter = this.bonds.values();
222
+ var v = iter.next();
223
+ while (!v.done) {
224
+ var b = v.value;
225
+ b.ageMs += dt;
226
+ var spec = this.specs.get(b.bondType);
227
+ if (spec && spec.decayHalfLifeMs > 0) {
228
+ var halfLife = spec.decayHalfLifeMs;
229
+ var factor = Math.pow(0.5, dt / halfLife);
230
+ var baseline = spec.baseline;
231
+ var newRaw = baseline + (b.rawValue - baseline) * factor;
232
+ if (Math.abs(newRaw - b.rawValue) > 1e-9) {
233
+ b.rawValue = newRaw;
234
+ this.fireChange(b);
235
+ }
236
+ }
237
+ v = iter.next();
238
+ }
239
+ }
240
+ clear() {
241
+ if (this.disposed)
242
+ return;
243
+ this.bonds.clear();
244
+ this.specs.clear();
245
+ }
246
+ dispose() {
247
+ this.bonds.clear();
248
+ this.specs.clear();
249
+ this.onChange = null;
250
+ this.disposed = true;
251
+ }
252
+ // ---------- private ----------
253
+ collect(pred, filter) {
254
+ var minLevel = filter.minLevel !== undefined && isFinite(filter.minLevel)
255
+ ? filter.minLevel : -Infinity;
256
+ var maxLevel = filter.maxLevel !== undefined && isFinite(filter.maxLevel)
257
+ ? filter.maxLevel : Infinity;
258
+ var typeId = typeof filter.bondType === 'string' ? filter.bondType : null;
259
+ var fromId = typeof filter.fromId === 'string' ? filter.fromId : null;
260
+ var toId = typeof filter.toId === 'string' ? filter.toId : null;
261
+ var out = [];
262
+ var iter = this.bonds.values();
263
+ var v = iter.next();
264
+ while (!v.done) {
265
+ var b = v.value;
266
+ if (!pred(b)) {
267
+ v = iter.next();
268
+ continue;
269
+ }
270
+ if (typeId !== null && b.bondType !== typeId) {
271
+ v = iter.next();
272
+ continue;
273
+ }
274
+ if (fromId !== null && b.fromId !== fromId) {
275
+ v = iter.next();
276
+ continue;
277
+ }
278
+ if (toId !== null && b.toId !== toId) {
279
+ v = iter.next();
280
+ continue;
281
+ }
282
+ var clamped = this.valueClamp(b.rawValue);
283
+ if (clamped < minLevel || clamped > maxLevel) {
284
+ v = iter.next();
285
+ continue;
286
+ }
287
+ out.push(this.snapshot(b));
288
+ v = iter.next();
289
+ }
290
+ return out;
291
+ }
292
+ findExtreme(bondType, filter, highest) {
293
+ var minLevel = filter.minLevel !== undefined && isFinite(filter.minLevel)
294
+ ? filter.minLevel : -Infinity;
295
+ var maxLevel = filter.maxLevel !== undefined && isFinite(filter.maxLevel)
296
+ ? filter.maxLevel : Infinity;
297
+ var fromId = typeof filter.fromId === 'string' ? filter.fromId : null;
298
+ var toId = typeof filter.toId === 'string' ? filter.toId : null;
299
+ var bestBond = null;
300
+ var bestVal = highest ? -Infinity : Infinity;
301
+ var iter = this.bonds.values();
302
+ var v = iter.next();
303
+ while (!v.done) {
304
+ var b = v.value;
305
+ if (b.bondType !== bondType) {
306
+ v = iter.next();
307
+ continue;
308
+ }
309
+ if (fromId !== null && b.fromId !== fromId) {
310
+ v = iter.next();
311
+ continue;
312
+ }
313
+ if (toId !== null && b.toId !== toId) {
314
+ v = iter.next();
315
+ continue;
316
+ }
317
+ var clamped = this.valueClamp(b.rawValue);
318
+ if (clamped < minLevel || clamped > maxLevel) {
319
+ v = iter.next();
320
+ continue;
321
+ }
322
+ if (highest ? clamped > bestVal : clamped < bestVal) {
323
+ bestVal = clamped;
324
+ bestBond = b;
325
+ }
326
+ v = iter.next();
327
+ }
328
+ return bestBond ? this.snapshot(bestBond) : null;
329
+ }
330
+ fireChange(b) {
331
+ if (!this.onChange)
332
+ return;
333
+ try {
334
+ this.onChange(this.snapshot(b));
335
+ }
336
+ catch { /* ignore */ }
337
+ }
338
+ snapshot(b) {
339
+ return {
340
+ fromId: b.fromId,
341
+ toId: b.toId,
342
+ bondType: b.bondType,
343
+ value: this.valueClamp(b.rawValue),
344
+ rawValue: b.rawValue,
345
+ ageMs: b.ageMs,
346
+ };
347
+ }
348
+ }
349
+ // Resource key for the world's resource registry.
350
+ export const RESOURCE_RELATIONSHIP_GRAPH = 'relationship_graph';
351
+ //# sourceMappingURL=relationship-graph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationship-graph.js","sourceRoot":"","sources":["../../src/runtime/relationship-graph.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sadhaka/loom-engine",
3
- "version": "1.2.5",
3
+ "version": "1.3.1",
4
4
  "description": "Browser-first 2D / 2.5D game engine. Canvas2D, ECS, render-graph stages, Director-bridge SSE integration. Built from scratch in TypeScript for TheWorldTable.ai.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -47,7 +47,7 @@
47
47
  "build:all": "npm run build && npm run build:demos",
48
48
  "watch": "tsc --watch",
49
49
  "clean": "rm -rf dist demo/*.js demo/*.js.map demo/*/main.js demo/*/main.js.map",
50
- "test": "tsx --test tests/smoke.test.ts tests/world.test.ts tests/asset-loader.test.ts tests/animation.test.ts tests/vfx.test.ts tests/audio-input.test.ts tests/director.test.ts tests/combat.test.ts tests/projectile.test.ts tests/arpg.test.ts tests/snapshot-recovery.test.ts tests/touch-input.test.ts tests/webgl2-device.test.ts tests/multiplayer.test.ts tests/zone-event-envelope.test.ts tests/mock-zone-bridge.test.ts tests/zone-event-system.test.ts tests/zone-state-resource.test.ts tests/ai-plugin-registry.test.ts tests/ai-plugin-error-isolation.test.ts tests/mock-ai-plugin.test.ts tests/plugin-context.test.ts tests/spatial-audio-bus.test.ts tests/audio-listener-resource.test.ts tests/spatial-audio-system.test.ts tests/spatial-falloff-math.test.ts tests/audio-asset-cache.test.ts tests/audio-asset-loader.test.ts tests/cue-catalog.test.ts tests/music-director.test.ts tests/cue-stop-all.test.ts tests/zone-audio-system.test.ts tests/zone-boss-entity-resource.test.ts tests/zone-boss-entity-system.test.ts tests/headless-tick-harness.test.ts tests/trace-replay/replay.test.ts tests/entropy.test.ts tests/fuzzer/fuzzer.test.ts tests/zone-event-system-determinism.test.ts tests/no-nondeterminism.test.ts tests/replay-snapshot.test.ts tests/determinism-smoke.test.ts tests/plugins/client-registry.test.ts tests/plugins/example-hud-plugin.test.ts tests/director/sse-director-bridge-networking.test.ts tests/director/sse-zone-bridge-networking.test.ts tests/resource-lifecycle.test.ts tests/component-signature.test.ts tests/render-batch.test.ts tests/debug-hud.test.ts tests/engine-clock.test.ts tests/world-snapshot.test.ts tests/camera-controller.test.ts tests/event-bus.test.ts tests/tween.test.ts tests/spatial-hash.test.ts tests/input-actions.test.ts tests/object-pool.test.ts tests/color.test.ts tests/asset-preloader.test.ts tests/audio-mixer.test.ts tests/frame-budget-scheduler.test.ts tests/floating-text.test.ts tests/persistent-storage.test.ts tests/input-chord.test.ts tests/bezier-easing.test.ts tests/layer-manager.test.ts tests/memory-budget.test.ts tests/particle-curves.test.ts tests/spatial-audio-curves.test.ts tests/save-slots.test.ts tests/localization.test.ts tests/tween-chain.test.ts tests/timer-scheduler.test.ts tests/spline.test.ts tests/log-ring-buffer.test.ts tests/state-machine.test.ts tests/cooldown-manager.test.ts tests/lru-cache.test.ts tests/aabb.test.ts tests/pathfinder.test.ts tests/scene-manager.test.ts tests/tile-map.test.ts tests/inventory-grid.test.ts tests/stat-stack.test.ts tests/replay-recorder.test.ts tests/dialog-tree.test.ts tests/loot-table.test.ts tests/quest-log.test.ts tests/steering-behaviors.test.ts tests/toast-queue.test.ts tests/damage-formula.test.ts tests/action-history.test.ts tests/coroutine.test.ts tests/watchdog.test.ts tests/time-of-day.test.ts tests/weather-system.test.ts tests/damage-number-pipeline.test.ts tests/buff-lifecycle.test.ts tests/crafting.test.ts tests/achievements.test.ts tests/aggro-table.test.ts tests/reactivity.test.ts tests/leaderboard.test.ts tests/text-scroll.test.ts tests/health-bar.test.ts tests/quadtree.test.ts tests/threshold-trigger.test.ts tests/event-log.test.ts tests/asset-manifest.test.ts tests/hotkey-profile.test.ts tests/faction-reputation.test.ts tests/crowd-spawner.test.ts tests/tutorial-flow.test.ts tests/dialog-choice-history.test.ts tests/asset-variant.test.ts tests/screen-fader.test.ts tests/screen-shake.test.ts tests/damage-flash.test.ts tests/audio-cue-queue.test.ts tests/music-playlist.test.ts tests/combo-counter.test.ts tests/tooltip-queue.test.ts tests/number-formatter.test.ts tests/vignette-render-state.test.ts tests/benchmark-harness.test.ts tests/input-buffer.test.ts tests/status-effect-stack.test.ts tests/behavior-tree.test.ts tests/camera-director.test.ts tests/cutscene-sequencer.test.ts tests/ghost-replay.test.ts tests/pathfinding-cache.test.ts tests/region-graph.test.ts tests/spawn-director.test.ts tests/encounter-table.test.ts tests/merchant-stock.test.ts tests/loot-tier.test.ts",
50
+ "test": "tsx --test tests/smoke.test.ts tests/world.test.ts tests/asset-loader.test.ts tests/animation.test.ts tests/vfx.test.ts tests/audio-input.test.ts tests/director.test.ts tests/combat.test.ts tests/projectile.test.ts tests/arpg.test.ts tests/snapshot-recovery.test.ts tests/touch-input.test.ts tests/webgl2-device.test.ts tests/multiplayer.test.ts tests/zone-event-envelope.test.ts tests/mock-zone-bridge.test.ts tests/zone-event-system.test.ts tests/zone-state-resource.test.ts tests/ai-plugin-registry.test.ts tests/ai-plugin-error-isolation.test.ts tests/mock-ai-plugin.test.ts tests/plugin-context.test.ts tests/spatial-audio-bus.test.ts tests/audio-listener-resource.test.ts tests/spatial-audio-system.test.ts tests/spatial-falloff-math.test.ts tests/audio-asset-cache.test.ts tests/audio-asset-loader.test.ts tests/cue-catalog.test.ts tests/music-director.test.ts tests/cue-stop-all.test.ts tests/zone-audio-system.test.ts tests/zone-boss-entity-resource.test.ts tests/zone-boss-entity-system.test.ts tests/headless-tick-harness.test.ts tests/trace-replay/replay.test.ts tests/entropy.test.ts tests/fuzzer/fuzzer.test.ts tests/zone-event-system-determinism.test.ts tests/no-nondeterminism.test.ts tests/replay-snapshot.test.ts tests/determinism-smoke.test.ts tests/plugins/client-registry.test.ts tests/plugins/example-hud-plugin.test.ts tests/director/sse-director-bridge-networking.test.ts tests/director/sse-zone-bridge-networking.test.ts tests/resource-lifecycle.test.ts tests/component-signature.test.ts tests/render-batch.test.ts tests/debug-hud.test.ts tests/engine-clock.test.ts tests/world-snapshot.test.ts tests/camera-controller.test.ts tests/event-bus.test.ts tests/tween.test.ts tests/spatial-hash.test.ts tests/input-actions.test.ts tests/object-pool.test.ts tests/color.test.ts tests/asset-preloader.test.ts tests/audio-mixer.test.ts tests/frame-budget-scheduler.test.ts tests/floating-text.test.ts tests/persistent-storage.test.ts tests/input-chord.test.ts tests/bezier-easing.test.ts tests/layer-manager.test.ts tests/memory-budget.test.ts tests/particle-curves.test.ts tests/spatial-audio-curves.test.ts tests/save-slots.test.ts tests/localization.test.ts tests/tween-chain.test.ts tests/timer-scheduler.test.ts tests/spline.test.ts tests/log-ring-buffer.test.ts tests/state-machine.test.ts tests/cooldown-manager.test.ts tests/lru-cache.test.ts tests/aabb.test.ts tests/pathfinder.test.ts tests/scene-manager.test.ts tests/tile-map.test.ts tests/inventory-grid.test.ts tests/stat-stack.test.ts tests/replay-recorder.test.ts tests/dialog-tree.test.ts tests/loot-table.test.ts tests/quest-log.test.ts tests/steering-behaviors.test.ts tests/toast-queue.test.ts tests/damage-formula.test.ts tests/action-history.test.ts tests/coroutine.test.ts tests/watchdog.test.ts tests/time-of-day.test.ts tests/weather-system.test.ts tests/damage-number-pipeline.test.ts tests/buff-lifecycle.test.ts tests/crafting.test.ts tests/achievements.test.ts tests/aggro-table.test.ts tests/reactivity.test.ts tests/leaderboard.test.ts tests/text-scroll.test.ts tests/health-bar.test.ts tests/quadtree.test.ts tests/threshold-trigger.test.ts tests/event-log.test.ts tests/asset-manifest.test.ts tests/hotkey-profile.test.ts tests/faction-reputation.test.ts tests/crowd-spawner.test.ts tests/tutorial-flow.test.ts tests/dialog-choice-history.test.ts tests/asset-variant.test.ts tests/screen-fader.test.ts tests/screen-shake.test.ts tests/damage-flash.test.ts tests/audio-cue-queue.test.ts tests/music-playlist.test.ts tests/combo-counter.test.ts tests/tooltip-queue.test.ts tests/number-formatter.test.ts tests/vignette-render-state.test.ts tests/benchmark-harness.test.ts tests/input-buffer.test.ts tests/status-effect-stack.test.ts tests/behavior-tree.test.ts tests/camera-director.test.ts tests/cutscene-sequencer.test.ts tests/ghost-replay.test.ts tests/pathfinding-cache.test.ts tests/region-graph.test.ts tests/spawn-director.test.ts tests/encounter-table.test.ts tests/merchant-stock.test.ts tests/loot-tier.test.ts tests/persona-trait.test.ts tests/relationship-graph.test.ts",
51
51
  "bench": "npm run build && node --expose-gc --import=tsx tools/perf-bench.ts",
52
52
  "bench:fast": "npm run build && node --expose-gc --import=tsx tools/perf-bench.ts --no-write",
53
53
  "bench:browser": "npm run build && tsc -p tools/tsconfig.bench.json",