@sharpee/world-model 0.9.62-beta → 0.9.66-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (583) hide show
  1. package/README.md +0 -0
  2. package/package.json +17 -30
  3. package/LICENSE +0 -21
  4. package/dist-npm/annotations/index.d.ts +0 -2
  5. package/dist-npm/annotations/index.d.ts.map +0 -1
  6. package/dist-npm/annotations/index.js +0 -18
  7. package/dist-npm/annotations/index.js.map +0 -1
  8. package/dist-npm/annotations/types.d.ts +0 -35
  9. package/dist-npm/annotations/types.d.ts.map +0 -1
  10. package/dist-npm/annotations/types.js +0 -9
  11. package/dist-npm/annotations/types.js.map +0 -1
  12. package/dist-npm/behaviors/attack.d.ts +0 -52
  13. package/dist-npm/behaviors/attack.d.ts.map +0 -1
  14. package/dist-npm/behaviors/attack.js +0 -161
  15. package/dist-npm/behaviors/attack.js.map +0 -1
  16. package/dist-npm/behaviors/behavior.d.ts +0 -67
  17. package/dist-npm/behaviors/behavior.d.ts.map +0 -1
  18. package/dist-npm/behaviors/behavior.js +0 -80
  19. package/dist-npm/behaviors/behavior.js.map +0 -1
  20. package/dist-npm/behaviors/index.d.ts +0 -21
  21. package/dist-npm/behaviors/index.d.ts.map +0 -1
  22. package/dist-npm/behaviors/index.js +0 -39
  23. package/dist-npm/behaviors/index.js.map +0 -1
  24. package/dist-npm/capabilities/action-interceptor.d.ts +0 -169
  25. package/dist-npm/capabilities/action-interceptor.d.ts.map +0 -1
  26. package/dist-npm/capabilities/action-interceptor.js +0 -15
  27. package/dist-npm/capabilities/action-interceptor.js.map +0 -1
  28. package/dist-npm/capabilities/capability-behavior.d.ts +0 -112
  29. package/dist-npm/capabilities/capability-behavior.d.ts.map +0 -1
  30. package/dist-npm/capabilities/capability-behavior.js +0 -9
  31. package/dist-npm/capabilities/capability-behavior.js.map +0 -1
  32. package/dist-npm/capabilities/capability-defaults.d.ts +0 -67
  33. package/dist-npm/capabilities/capability-defaults.d.ts.map +0 -1
  34. package/dist-npm/capabilities/capability-defaults.js +0 -81
  35. package/dist-npm/capabilities/capability-defaults.js.map +0 -1
  36. package/dist-npm/capabilities/capability-helpers.d.ts +0 -76
  37. package/dist-npm/capabilities/capability-helpers.d.ts.map +0 -1
  38. package/dist-npm/capabilities/capability-helpers.js +0 -112
  39. package/dist-npm/capabilities/capability-helpers.js.map +0 -1
  40. package/dist-npm/capabilities/capability-registry.d.ts +0 -115
  41. package/dist-npm/capabilities/capability-registry.d.ts.map +0 -1
  42. package/dist-npm/capabilities/capability-registry.js +0 -136
  43. package/dist-npm/capabilities/capability-registry.js.map +0 -1
  44. package/dist-npm/capabilities/entity-builder.d.ts +0 -79
  45. package/dist-npm/capabilities/entity-builder.d.ts.map +0 -1
  46. package/dist-npm/capabilities/entity-builder.js +0 -116
  47. package/dist-npm/capabilities/entity-builder.js.map +0 -1
  48. package/dist-npm/capabilities/index.d.ts +0 -16
  49. package/dist-npm/capabilities/index.d.ts.map +0 -1
  50. package/dist-npm/capabilities/index.js +0 -56
  51. package/dist-npm/capabilities/index.js.map +0 -1
  52. package/dist-npm/capabilities/interceptor-helpers.d.ts +0 -74
  53. package/dist-npm/capabilities/interceptor-helpers.d.ts.map +0 -1
  54. package/dist-npm/capabilities/interceptor-helpers.js +0 -111
  55. package/dist-npm/capabilities/interceptor-helpers.js.map +0 -1
  56. package/dist-npm/capabilities/interceptor-registry.d.ts +0 -125
  57. package/dist-npm/capabilities/interceptor-registry.d.ts.map +0 -1
  58. package/dist-npm/capabilities/interceptor-registry.js +0 -176
  59. package/dist-npm/capabilities/interceptor-registry.js.map +0 -1
  60. package/dist-npm/capabilities/types.d.ts +0 -35
  61. package/dist-npm/capabilities/types.d.ts.map +0 -1
  62. package/dist-npm/capabilities/types.js +0 -16
  63. package/dist-npm/capabilities/types.js.map +0 -1
  64. package/dist-npm/commands/command-types.d.ts +0 -30
  65. package/dist-npm/commands/command-types.d.ts.map +0 -1
  66. package/dist-npm/commands/command-types.js +0 -6
  67. package/dist-npm/commands/command-types.js.map +0 -1
  68. package/dist-npm/commands/index.d.ts +0 -7
  69. package/dist-npm/commands/index.d.ts.map +0 -1
  70. package/dist-npm/commands/index.js +0 -23
  71. package/dist-npm/commands/index.js.map +0 -1
  72. package/dist-npm/commands/parsed-command.d.ts +0 -204
  73. package/dist-npm/commands/parsed-command.d.ts.map +0 -1
  74. package/dist-npm/commands/parsed-command.js +0 -25
  75. package/dist-npm/commands/parsed-command.js.map +0 -1
  76. package/dist-npm/commands/validated-command.d.ts +0 -52
  77. package/dist-npm/commands/validated-command.d.ts.map +0 -1
  78. package/dist-npm/commands/validated-command.js +0 -8
  79. package/dist-npm/commands/validated-command.js.map +0 -1
  80. package/dist-npm/constants/action-failures.d.ts +0 -54
  81. package/dist-npm/constants/action-failures.d.ts.map +0 -1
  82. package/dist-npm/constants/action-failures.js +0 -68
  83. package/dist-npm/constants/action-failures.js.map +0 -1
  84. package/dist-npm/constants/directions.d.ts +0 -32
  85. package/dist-npm/constants/directions.d.ts.map +0 -1
  86. package/dist-npm/constants/directions.js +0 -53
  87. package/dist-npm/constants/directions.js.map +0 -1
  88. package/dist-npm/constants/if-events.d.ts +0 -5
  89. package/dist-npm/constants/if-events.d.ts.map +0 -1
  90. package/dist-npm/constants/if-events.js +0 -10
  91. package/dist-npm/constants/if-events.js.map +0 -1
  92. package/dist-npm/constants/index.d.ts +0 -9
  93. package/dist-npm/constants/index.d.ts.map +0 -1
  94. package/dist-npm/constants/index.js +0 -25
  95. package/dist-npm/constants/index.js.map +0 -1
  96. package/dist-npm/entities/entity-store.d.ts +0 -66
  97. package/dist-npm/entities/entity-store.d.ts.map +0 -1
  98. package/dist-npm/entities/entity-store.js +0 -116
  99. package/dist-npm/entities/entity-store.js.map +0 -1
  100. package/dist-npm/entities/entity-types.d.ts +0 -40
  101. package/dist-npm/entities/entity-types.d.ts.map +0 -1
  102. package/dist-npm/entities/entity-types.js +0 -56
  103. package/dist-npm/entities/entity-types.js.map +0 -1
  104. package/dist-npm/entities/if-entity.d.ts +0 -314
  105. package/dist-npm/entities/if-entity.d.ts.map +0 -1
  106. package/dist-npm/entities/if-entity.js +0 -621
  107. package/dist-npm/entities/if-entity.js.map +0 -1
  108. package/dist-npm/entities/index.d.ts +0 -5
  109. package/dist-npm/entities/index.d.ts.map +0 -1
  110. package/dist-npm/entities/index.js +0 -13
  111. package/dist-npm/entities/index.js.map +0 -1
  112. package/dist-npm/events/types.d.ts +0 -45
  113. package/dist-npm/events/types.d.ts.map +0 -1
  114. package/dist-npm/events/types.js +0 -9
  115. package/dist-npm/events/types.js.map +0 -1
  116. package/dist-npm/examples/event-handler-registration.d.ts +0 -14
  117. package/dist-npm/examples/event-handler-registration.d.ts.map +0 -1
  118. package/dist-npm/examples/event-handler-registration.js +0 -158
  119. package/dist-npm/examples/event-handler-registration.js.map +0 -1
  120. package/dist-npm/extensions/base-extension.d.ts +0 -69
  121. package/dist-npm/extensions/base-extension.d.ts.map +0 -1
  122. package/dist-npm/extensions/base-extension.js +0 -83
  123. package/dist-npm/extensions/base-extension.js.map +0 -1
  124. package/dist-npm/extensions/index.d.ts +0 -11
  125. package/dist-npm/extensions/index.d.ts.map +0 -1
  126. package/dist-npm/extensions/index.js +0 -39
  127. package/dist-npm/extensions/index.js.map +0 -1
  128. package/dist-npm/extensions/loader.d.ts +0 -52
  129. package/dist-npm/extensions/loader.d.ts.map +0 -1
  130. package/dist-npm/extensions/loader.js +0 -177
  131. package/dist-npm/extensions/loader.js.map +0 -1
  132. package/dist-npm/extensions/manager.d.ts +0 -68
  133. package/dist-npm/extensions/manager.d.ts.map +0 -1
  134. package/dist-npm/extensions/manager.js +0 -164
  135. package/dist-npm/extensions/manager.js.map +0 -1
  136. package/dist-npm/extensions/registry.d.ts +0 -100
  137. package/dist-npm/extensions/registry.d.ts.map +0 -1
  138. package/dist-npm/extensions/registry.js +0 -193
  139. package/dist-npm/extensions/registry.js.map +0 -1
  140. package/dist-npm/extensions/types.d.ts +0 -226
  141. package/dist-npm/extensions/types.d.ts.map +0 -1
  142. package/dist-npm/extensions/types.js +0 -28
  143. package/dist-npm/extensions/types.js.map +0 -1
  144. package/dist-npm/index.d.ts +0 -40
  145. package/dist-npm/index.d.ts.map +0 -1
  146. package/dist-npm/index.js +0 -70
  147. package/dist-npm/index.js.map +0 -1
  148. package/dist-npm/interfaces/command-executor.d.ts +0 -17
  149. package/dist-npm/interfaces/command-executor.d.ts.map +0 -1
  150. package/dist-npm/interfaces/command-executor.js +0 -6
  151. package/dist-npm/interfaces/command-executor.js.map +0 -1
  152. package/dist-npm/interfaces/command-processor.d.ts +0 -17
  153. package/dist-npm/interfaces/command-processor.d.ts.map +0 -1
  154. package/dist-npm/interfaces/command-processor.js +0 -6
  155. package/dist-npm/interfaces/command-processor.js.map +0 -1
  156. package/dist-npm/interfaces/command-validator.d.ts +0 -17
  157. package/dist-npm/interfaces/command-validator.d.ts.map +0 -1
  158. package/dist-npm/interfaces/command-validator.js +0 -6
  159. package/dist-npm/interfaces/command-validator.js.map +0 -1
  160. package/dist-npm/interfaces/index.d.ts +0 -8
  161. package/dist-npm/interfaces/index.d.ts.map +0 -1
  162. package/dist-npm/interfaces/index.js +0 -24
  163. package/dist-npm/interfaces/index.js.map +0 -1
  164. package/dist-npm/interfaces/language-provider.d.ts +0 -86
  165. package/dist-npm/interfaces/language-provider.d.ts.map +0 -1
  166. package/dist-npm/interfaces/language-provider.js +0 -14
  167. package/dist-npm/interfaces/language-provider.js.map +0 -1
  168. package/dist-npm/interfaces/parser.d.ts +0 -16
  169. package/dist-npm/interfaces/parser.d.ts.map +0 -1
  170. package/dist-npm/interfaces/parser.js +0 -6
  171. package/dist-npm/interfaces/parser.js.map +0 -1
  172. package/dist-npm/scope/index.d.ts +0 -8
  173. package/dist-npm/scope/index.d.ts.map +0 -1
  174. package/dist-npm/scope/index.js +0 -24
  175. package/dist-npm/scope/index.js.map +0 -1
  176. package/dist-npm/scope/scope-evaluator.d.ts +0 -58
  177. package/dist-npm/scope/scope-evaluator.d.ts.map +0 -1
  178. package/dist-npm/scope/scope-evaluator.js +0 -207
  179. package/dist-npm/scope/scope-evaluator.js.map +0 -1
  180. package/dist-npm/scope/scope-registry.d.ts +0 -59
  181. package/dist-npm/scope/scope-registry.d.ts.map +0 -1
  182. package/dist-npm/scope/scope-registry.js +0 -182
  183. package/dist-npm/scope/scope-registry.js.map +0 -1
  184. package/dist-npm/scope/scope-rule.d.ts +0 -86
  185. package/dist-npm/scope/scope-rule.d.ts.map +0 -1
  186. package/dist-npm/scope/scope-rule.js +0 -7
  187. package/dist-npm/scope/scope-rule.js.map +0 -1
  188. package/dist-npm/services/ScopeService.d.ts +0 -8
  189. package/dist-npm/services/ScopeService.d.ts.map +0 -1
  190. package/dist-npm/services/ScopeService.js +0 -19
  191. package/dist-npm/services/ScopeService.js.map +0 -1
  192. package/dist-npm/services/index.d.ts +0 -2
  193. package/dist-npm/services/index.d.ts.map +0 -1
  194. package/dist-npm/services/index.js +0 -6
  195. package/dist-npm/services/index.js.map +0 -1
  196. package/dist-npm/test-structure.d.ts +0 -3
  197. package/dist-npm/test-structure.d.ts.map +0 -1
  198. package/dist-npm/test-structure.js +0 -26
  199. package/dist-npm/test-structure.js.map +0 -1
  200. package/dist-npm/traits/actor/actorBehavior.d.ts +0 -121
  201. package/dist-npm/traits/actor/actorBehavior.d.ts.map +0 -1
  202. package/dist-npm/traits/actor/actorBehavior.js +0 -288
  203. package/dist-npm/traits/actor/actorBehavior.js.map +0 -1
  204. package/dist-npm/traits/actor/actorTrait.d.ts +0 -158
  205. package/dist-npm/traits/actor/actorTrait.d.ts.map +0 -1
  206. package/dist-npm/traits/actor/actorTrait.js +0 -152
  207. package/dist-npm/traits/actor/actorTrait.js.map +0 -1
  208. package/dist-npm/traits/actor/index.d.ts +0 -3
  209. package/dist-npm/traits/actor/index.d.ts.map +0 -1
  210. package/dist-npm/traits/actor/index.js +0 -11
  211. package/dist-npm/traits/actor/index.js.map +0 -1
  212. package/dist-npm/traits/all-traits.d.ts +0 -95
  213. package/dist-npm/traits/all-traits.d.ts.map +0 -1
  214. package/dist-npm/traits/all-traits.js +0 -178
  215. package/dist-npm/traits/all-traits.js.map +0 -1
  216. package/dist-npm/traits/attached/attachedTrait.d.ts +0 -61
  217. package/dist-npm/traits/attached/attachedTrait.d.ts.map +0 -1
  218. package/dist-npm/traits/attached/attachedTrait.js +0 -36
  219. package/dist-npm/traits/attached/attachedTrait.js.map +0 -1
  220. package/dist-npm/traits/attached/index.d.ts +0 -2
  221. package/dist-npm/traits/attached/index.d.ts.map +0 -1
  222. package/dist-npm/traits/attached/index.js +0 -18
  223. package/dist-npm/traits/attached/index.js.map +0 -1
  224. package/dist-npm/traits/breakable/breakableBehavior.d.ts +0 -43
  225. package/dist-npm/traits/breakable/breakableBehavior.d.ts.map +0 -1
  226. package/dist-npm/traits/breakable/breakableBehavior.js +0 -70
  227. package/dist-npm/traits/breakable/breakableBehavior.js.map +0 -1
  228. package/dist-npm/traits/breakable/breakableTrait.d.ts +0 -22
  229. package/dist-npm/traits/breakable/breakableTrait.d.ts.map +0 -1
  230. package/dist-npm/traits/breakable/breakableTrait.js +0 -25
  231. package/dist-npm/traits/breakable/breakableTrait.js.map +0 -1
  232. package/dist-npm/traits/breakable/index.d.ts +0 -3
  233. package/dist-npm/traits/breakable/index.d.ts.map +0 -1
  234. package/dist-npm/traits/breakable/index.js +0 -8
  235. package/dist-npm/traits/breakable/index.js.map +0 -1
  236. package/dist-npm/traits/button/buttonTrait.d.ts +0 -53
  237. package/dist-npm/traits/button/buttonTrait.d.ts.map +0 -1
  238. package/dist-npm/traits/button/buttonTrait.js +0 -36
  239. package/dist-npm/traits/button/buttonTrait.js.map +0 -1
  240. package/dist-npm/traits/button/index.d.ts +0 -2
  241. package/dist-npm/traits/button/index.d.ts.map +0 -1
  242. package/dist-npm/traits/button/index.js +0 -18
  243. package/dist-npm/traits/button/index.js.map +0 -1
  244. package/dist-npm/traits/climbable/climbableBehavior.d.ts +0 -37
  245. package/dist-npm/traits/climbable/climbableBehavior.d.ts.map +0 -1
  246. package/dist-npm/traits/climbable/climbableBehavior.js +0 -70
  247. package/dist-npm/traits/climbable/climbableBehavior.js.map +0 -1
  248. package/dist-npm/traits/climbable/climbableTrait.d.ts +0 -31
  249. package/dist-npm/traits/climbable/climbableTrait.d.ts.map +0 -1
  250. package/dist-npm/traits/climbable/climbableTrait.js +0 -47
  251. package/dist-npm/traits/climbable/climbableTrait.js.map +0 -1
  252. package/dist-npm/traits/climbable/index.d.ts +0 -6
  253. package/dist-npm/traits/climbable/index.d.ts.map +0 -1
  254. package/dist-npm/traits/climbable/index.js +0 -22
  255. package/dist-npm/traits/climbable/index.js.map +0 -1
  256. package/dist-npm/traits/clothing/clothingTrait.d.ts +0 -58
  257. package/dist-npm/traits/clothing/clothingTrait.d.ts.map +0 -1
  258. package/dist-npm/traits/clothing/clothingTrait.js +0 -78
  259. package/dist-npm/traits/clothing/clothingTrait.js.map +0 -1
  260. package/dist-npm/traits/clothing/index.d.ts +0 -2
  261. package/dist-npm/traits/clothing/index.d.ts.map +0 -1
  262. package/dist-npm/traits/clothing/index.js +0 -19
  263. package/dist-npm/traits/clothing/index.js.map +0 -1
  264. package/dist-npm/traits/combatant/combatantBehavior.d.ts +0 -70
  265. package/dist-npm/traits/combatant/combatantBehavior.d.ts.map +0 -1
  266. package/dist-npm/traits/combatant/combatantBehavior.js +0 -155
  267. package/dist-npm/traits/combatant/combatantBehavior.js.map +0 -1
  268. package/dist-npm/traits/combatant/combatantTrait.d.ts +0 -98
  269. package/dist-npm/traits/combatant/combatantTrait.d.ts.map +0 -1
  270. package/dist-npm/traits/combatant/combatantTrait.js +0 -122
  271. package/dist-npm/traits/combatant/combatantTrait.js.map +0 -1
  272. package/dist-npm/traits/combatant/index.d.ts +0 -3
  273. package/dist-npm/traits/combatant/index.d.ts.map +0 -1
  274. package/dist-npm/traits/combatant/index.js +0 -8
  275. package/dist-npm/traits/combatant/index.js.map +0 -1
  276. package/dist-npm/traits/container/container-utils.d.ts +0 -39
  277. package/dist-npm/traits/container/container-utils.d.ts.map +0 -1
  278. package/dist-npm/traits/container/container-utils.js +0 -72
  279. package/dist-npm/traits/container/container-utils.js.map +0 -1
  280. package/dist-npm/traits/container/containerBehavior.d.ts +0 -94
  281. package/dist-npm/traits/container/containerBehavior.d.ts.map +0 -1
  282. package/dist-npm/traits/container/containerBehavior.js +0 -256
  283. package/dist-npm/traits/container/containerBehavior.js.map +0 -1
  284. package/dist-npm/traits/container/containerTrait.d.ts +0 -30
  285. package/dist-npm/traits/container/containerTrait.d.ts.map +0 -1
  286. package/dist-npm/traits/container/containerTrait.js +0 -45
  287. package/dist-npm/traits/container/containerTrait.js.map +0 -1
  288. package/dist-npm/traits/container/index.d.ts +0 -4
  289. package/dist-npm/traits/container/index.d.ts.map +0 -1
  290. package/dist-npm/traits/container/index.js +0 -14
  291. package/dist-npm/traits/container/index.js.map +0 -1
  292. package/dist-npm/traits/destructible/destructibleBehavior.d.ts +0 -57
  293. package/dist-npm/traits/destructible/destructibleBehavior.d.ts.map +0 -1
  294. package/dist-npm/traits/destructible/destructibleBehavior.js +0 -145
  295. package/dist-npm/traits/destructible/destructibleBehavior.js.map +0 -1
  296. package/dist-npm/traits/destructible/destructibleTrait.d.ts +0 -49
  297. package/dist-npm/traits/destructible/destructibleTrait.d.ts.map +0 -1
  298. package/dist-npm/traits/destructible/destructibleTrait.js +0 -43
  299. package/dist-npm/traits/destructible/destructibleTrait.js.map +0 -1
  300. package/dist-npm/traits/destructible/index.d.ts +0 -3
  301. package/dist-npm/traits/destructible/index.d.ts.map +0 -1
  302. package/dist-npm/traits/destructible/index.js +0 -8
  303. package/dist-npm/traits/destructible/index.js.map +0 -1
  304. package/dist-npm/traits/door/doorBehavior.d.ts +0 -42
  305. package/dist-npm/traits/door/doorBehavior.d.ts.map +0 -1
  306. package/dist-npm/traits/door/doorBehavior.js +0 -76
  307. package/dist-npm/traits/door/doorBehavior.js.map +0 -1
  308. package/dist-npm/traits/door/doorTrait.d.ts +0 -19
  309. package/dist-npm/traits/door/doorTrait.d.ts.map +0 -1
  310. package/dist-npm/traits/door/doorTrait.js +0 -33
  311. package/dist-npm/traits/door/doorTrait.js.map +0 -1
  312. package/dist-npm/traits/door/index.d.ts +0 -3
  313. package/dist-npm/traits/door/index.d.ts.map +0 -1
  314. package/dist-npm/traits/door/index.js +0 -9
  315. package/dist-npm/traits/door/index.js.map +0 -1
  316. package/dist-npm/traits/edible/edibleBehavior.d.ts +0 -63
  317. package/dist-npm/traits/edible/edibleBehavior.d.ts.map +0 -1
  318. package/dist-npm/traits/edible/edibleBehavior.js +0 -157
  319. package/dist-npm/traits/edible/edibleBehavior.js.map +0 -1
  320. package/dist-npm/traits/edible/edibleTrait.d.ts +0 -57
  321. package/dist-npm/traits/edible/edibleTrait.d.ts.map +0 -1
  322. package/dist-npm/traits/edible/edibleTrait.js +0 -51
  323. package/dist-npm/traits/edible/edibleTrait.js.map +0 -1
  324. package/dist-npm/traits/edible/index.d.ts +0 -3
  325. package/dist-npm/traits/edible/index.d.ts.map +0 -1
  326. package/dist-npm/traits/edible/index.js +0 -20
  327. package/dist-npm/traits/edible/index.js.map +0 -1
  328. package/dist-npm/traits/enterable/enterableTrait.d.ts +0 -33
  329. package/dist-npm/traits/enterable/enterableTrait.d.ts.map +0 -1
  330. package/dist-npm/traits/enterable/enterableTrait.js +0 -38
  331. package/dist-npm/traits/enterable/enterableTrait.js.map +0 -1
  332. package/dist-npm/traits/enterable/index.d.ts +0 -5
  333. package/dist-npm/traits/enterable/index.d.ts.map +0 -1
  334. package/dist-npm/traits/enterable/index.js +0 -21
  335. package/dist-npm/traits/enterable/index.js.map +0 -1
  336. package/dist-npm/traits/equipped/equippedTrait.d.ts +0 -46
  337. package/dist-npm/traits/equipped/equippedTrait.d.ts.map +0 -1
  338. package/dist-npm/traits/equipped/equippedTrait.js +0 -34
  339. package/dist-npm/traits/equipped/equippedTrait.js.map +0 -1
  340. package/dist-npm/traits/equipped/index.d.ts +0 -2
  341. package/dist-npm/traits/equipped/index.d.ts.map +0 -1
  342. package/dist-npm/traits/equipped/index.js +0 -6
  343. package/dist-npm/traits/equipped/index.js.map +0 -1
  344. package/dist-npm/traits/exit/exitBehavior.d.ts +0 -51
  345. package/dist-npm/traits/exit/exitBehavior.d.ts.map +0 -1
  346. package/dist-npm/traits/exit/exitBehavior.js +0 -231
  347. package/dist-npm/traits/exit/exitBehavior.js.map +0 -1
  348. package/dist-npm/traits/exit/exitTrait.d.ts +0 -41
  349. package/dist-npm/traits/exit/exitTrait.d.ts.map +0 -1
  350. package/dist-npm/traits/exit/exitTrait.js +0 -75
  351. package/dist-npm/traits/exit/exitTrait.js.map +0 -1
  352. package/dist-npm/traits/exit/index.d.ts +0 -3
  353. package/dist-npm/traits/exit/index.d.ts.map +0 -1
  354. package/dist-npm/traits/exit/index.js +0 -9
  355. package/dist-npm/traits/exit/index.js.map +0 -1
  356. package/dist-npm/traits/identity/identityBehavior.d.ts +0 -64
  357. package/dist-npm/traits/identity/identityBehavior.d.ts.map +0 -1
  358. package/dist-npm/traits/identity/identityBehavior.js +0 -154
  359. package/dist-npm/traits/identity/identityBehavior.js.map +0 -1
  360. package/dist-npm/traits/identity/identityTrait.d.ts +0 -70
  361. package/dist-npm/traits/identity/identityTrait.d.ts.map +0 -1
  362. package/dist-npm/traits/identity/identityTrait.js +0 -79
  363. package/dist-npm/traits/identity/identityTrait.js.map +0 -1
  364. package/dist-npm/traits/identity/index.d.ts +0 -3
  365. package/dist-npm/traits/identity/index.d.ts.map +0 -1
  366. package/dist-npm/traits/identity/index.js +0 -20
  367. package/dist-npm/traits/identity/index.js.map +0 -1
  368. package/dist-npm/traits/implementations.d.ts +0 -51
  369. package/dist-npm/traits/implementations.d.ts.map +0 -1
  370. package/dist-npm/traits/implementations.js +0 -145
  371. package/dist-npm/traits/implementations.js.map +0 -1
  372. package/dist-npm/traits/index.d.ts +0 -36
  373. package/dist-npm/traits/index.d.ts.map +0 -1
  374. package/dist-npm/traits/index.js +0 -62
  375. package/dist-npm/traits/index.js.map +0 -1
  376. package/dist-npm/traits/light-source/index.d.ts +0 -3
  377. package/dist-npm/traits/light-source/index.d.ts.map +0 -1
  378. package/dist-npm/traits/light-source/index.js +0 -9
  379. package/dist-npm/traits/light-source/index.js.map +0 -1
  380. package/dist-npm/traits/light-source/lightSourceBehavior.d.ts +0 -57
  381. package/dist-npm/traits/light-source/lightSourceBehavior.d.ts.map +0 -1
  382. package/dist-npm/traits/light-source/lightSourceBehavior.js +0 -135
  383. package/dist-npm/traits/light-source/lightSourceBehavior.js.map +0 -1
  384. package/dist-npm/traits/light-source/lightSourceTrait.d.ts +0 -28
  385. package/dist-npm/traits/light-source/lightSourceTrait.d.ts.map +0 -1
  386. package/dist-npm/traits/light-source/lightSourceTrait.js +0 -37
  387. package/dist-npm/traits/light-source/lightSourceTrait.js.map +0 -1
  388. package/dist-npm/traits/lockable/index.d.ts +0 -3
  389. package/dist-npm/traits/lockable/index.d.ts.map +0 -1
  390. package/dist-npm/traits/lockable/index.js +0 -20
  391. package/dist-npm/traits/lockable/index.js.map +0 -1
  392. package/dist-npm/traits/lockable/lockableBehavior.d.ts +0 -88
  393. package/dist-npm/traits/lockable/lockableBehavior.d.ts.map +0 -1
  394. package/dist-npm/traits/lockable/lockableBehavior.js +0 -196
  395. package/dist-npm/traits/lockable/lockableBehavior.js.map +0 -1
  396. package/dist-npm/traits/lockable/lockableTrait.d.ts +0 -59
  397. package/dist-npm/traits/lockable/lockableTrait.d.ts.map +0 -1
  398. package/dist-npm/traits/lockable/lockableTrait.js +0 -50
  399. package/dist-npm/traits/lockable/lockableTrait.js.map +0 -1
  400. package/dist-npm/traits/moveable-scenery/index.d.ts +0 -2
  401. package/dist-npm/traits/moveable-scenery/index.d.ts.map +0 -1
  402. package/dist-npm/traits/moveable-scenery/index.js +0 -18
  403. package/dist-npm/traits/moveable-scenery/index.js.map +0 -1
  404. package/dist-npm/traits/moveable-scenery/moveableSceneryTrait.d.ts +0 -69
  405. package/dist-npm/traits/moveable-scenery/moveableSceneryTrait.d.ts.map +0 -1
  406. package/dist-npm/traits/moveable-scenery/moveableSceneryTrait.js +0 -43
  407. package/dist-npm/traits/moveable-scenery/moveableSceneryTrait.js.map +0 -1
  408. package/dist-npm/traits/npc/index.d.ts +0 -5
  409. package/dist-npm/traits/npc/index.d.ts.map +0 -1
  410. package/dist-npm/traits/npc/index.js +0 -9
  411. package/dist-npm/traits/npc/index.js.map +0 -1
  412. package/dist-npm/traits/npc/npcTrait.d.ts +0 -128
  413. package/dist-npm/traits/npc/npcTrait.d.ts.map +0 -1
  414. package/dist-npm/traits/npc/npcTrait.js +0 -180
  415. package/dist-npm/traits/npc/npcTrait.js.map +0 -1
  416. package/dist-npm/traits/openable/index.d.ts +0 -3
  417. package/dist-npm/traits/openable/index.d.ts.map +0 -1
  418. package/dist-npm/traits/openable/index.js +0 -20
  419. package/dist-npm/traits/openable/index.js.map +0 -1
  420. package/dist-npm/traits/openable/openableBehavior.d.ts +0 -64
  421. package/dist-npm/traits/openable/openableBehavior.d.ts.map +0 -1
  422. package/dist-npm/traits/openable/openableBehavior.js +0 -109
  423. package/dist-npm/traits/openable/openableBehavior.js.map +0 -1
  424. package/dist-npm/traits/openable/openableTrait.d.ts +0 -46
  425. package/dist-npm/traits/openable/openableTrait.d.ts.map +0 -1
  426. package/dist-npm/traits/openable/openableTrait.js +0 -42
  427. package/dist-npm/traits/openable/openableTrait.js.map +0 -1
  428. package/dist-npm/traits/pullable/index.d.ts +0 -2
  429. package/dist-npm/traits/pullable/index.d.ts.map +0 -1
  430. package/dist-npm/traits/pullable/index.js +0 -18
  431. package/dist-npm/traits/pullable/index.js.map +0 -1
  432. package/dist-npm/traits/pullable/pullableTrait.d.ts +0 -81
  433. package/dist-npm/traits/pullable/pullableTrait.d.ts.map +0 -1
  434. package/dist-npm/traits/pullable/pullableTrait.js +0 -44
  435. package/dist-npm/traits/pullable/pullableTrait.js.map +0 -1
  436. package/dist-npm/traits/pushable/index.d.ts +0 -2
  437. package/dist-npm/traits/pushable/index.d.ts.map +0 -1
  438. package/dist-npm/traits/pushable/index.js +0 -18
  439. package/dist-npm/traits/pushable/index.js.map +0 -1
  440. package/dist-npm/traits/pushable/pushableTrait.d.ts +0 -81
  441. package/dist-npm/traits/pushable/pushableTrait.d.ts.map +0 -1
  442. package/dist-npm/traits/pushable/pushableTrait.js +0 -44
  443. package/dist-npm/traits/pushable/pushableTrait.js.map +0 -1
  444. package/dist-npm/traits/readable/index.d.ts +0 -3
  445. package/dist-npm/traits/readable/index.d.ts.map +0 -1
  446. package/dist-npm/traits/readable/index.js +0 -9
  447. package/dist-npm/traits/readable/index.js.map +0 -1
  448. package/dist-npm/traits/readable/readableBehavior.d.ts +0 -42
  449. package/dist-npm/traits/readable/readableBehavior.d.ts.map +0 -1
  450. package/dist-npm/traits/readable/readableBehavior.js +0 -174
  451. package/dist-npm/traits/readable/readableBehavior.js.map +0 -1
  452. package/dist-npm/traits/readable/readableTrait.d.ts +0 -37
  453. package/dist-npm/traits/readable/readableTrait.d.ts.map +0 -1
  454. package/dist-npm/traits/readable/readableTrait.js +0 -51
  455. package/dist-npm/traits/readable/readableTrait.js.map +0 -1
  456. package/dist-npm/traits/register-all.d.ts +0 -10
  457. package/dist-npm/traits/register-all.d.ts.map +0 -1
  458. package/dist-npm/traits/register-all.js +0 -19
  459. package/dist-npm/traits/register-all.js.map +0 -1
  460. package/dist-npm/traits/room/index.d.ts +0 -9
  461. package/dist-npm/traits/room/index.d.ts.map +0 -1
  462. package/dist-npm/traits/room/index.js +0 -14
  463. package/dist-npm/traits/room/index.js.map +0 -1
  464. package/dist-npm/traits/room/roomBehavior.d.ts +0 -87
  465. package/dist-npm/traits/room/roomBehavior.d.ts.map +0 -1
  466. package/dist-npm/traits/room/roomBehavior.js +0 -232
  467. package/dist-npm/traits/room/roomBehavior.js.map +0 -1
  468. package/dist-npm/traits/room/roomTrait.d.ts +0 -101
  469. package/dist-npm/traits/room/roomTrait.d.ts.map +0 -1
  470. package/dist-npm/traits/room/roomTrait.js +0 -59
  471. package/dist-npm/traits/room/roomTrait.js.map +0 -1
  472. package/dist-npm/traits/scenery/index.d.ts +0 -3
  473. package/dist-npm/traits/scenery/index.d.ts.map +0 -1
  474. package/dist-npm/traits/scenery/index.js +0 -9
  475. package/dist-npm/traits/scenery/index.js.map +0 -1
  476. package/dist-npm/traits/scenery/sceneryBehavior.d.ts +0 -21
  477. package/dist-npm/traits/scenery/sceneryBehavior.d.ts.map +0 -1
  478. package/dist-npm/traits/scenery/sceneryBehavior.js +0 -42
  479. package/dist-npm/traits/scenery/sceneryBehavior.js.map +0 -1
  480. package/dist-npm/traits/scenery/sceneryTrait.d.ts +0 -30
  481. package/dist-npm/traits/scenery/sceneryTrait.d.ts.map +0 -1
  482. package/dist-npm/traits/scenery/sceneryTrait.js +0 -39
  483. package/dist-npm/traits/scenery/sceneryTrait.js.map +0 -1
  484. package/dist-npm/traits/supporter/index.d.ts +0 -3
  485. package/dist-npm/traits/supporter/index.d.ts.map +0 -1
  486. package/dist-npm/traits/supporter/index.js +0 -9
  487. package/dist-npm/traits/supporter/index.js.map +0 -1
  488. package/dist-npm/traits/supporter/supporterBehavior.d.ts +0 -83
  489. package/dist-npm/traits/supporter/supporterBehavior.d.ts.map +0 -1
  490. package/dist-npm/traits/supporter/supporterBehavior.js +0 -210
  491. package/dist-npm/traits/supporter/supporterBehavior.js.map +0 -1
  492. package/dist-npm/traits/supporter/supporterTrait.d.ts +0 -26
  493. package/dist-npm/traits/supporter/supporterTrait.d.ts.map +0 -1
  494. package/dist-npm/traits/supporter/supporterTrait.js +0 -30
  495. package/dist-npm/traits/supporter/supporterTrait.js.map +0 -1
  496. package/dist-npm/traits/switchable/index.d.ts +0 -3
  497. package/dist-npm/traits/switchable/index.d.ts.map +0 -1
  498. package/dist-npm/traits/switchable/index.js +0 -20
  499. package/dist-npm/traits/switchable/index.js.map +0 -1
  500. package/dist-npm/traits/switchable/switchableBehavior.d.ts +0 -73
  501. package/dist-npm/traits/switchable/switchableBehavior.d.ts.map +0 -1
  502. package/dist-npm/traits/switchable/switchableBehavior.js +0 -191
  503. package/dist-npm/traits/switchable/switchableBehavior.js.map +0 -1
  504. package/dist-npm/traits/switchable/switchableTrait.d.ts +0 -61
  505. package/dist-npm/traits/switchable/switchableTrait.d.ts.map +0 -1
  506. package/dist-npm/traits/switchable/switchableTrait.js +0 -52
  507. package/dist-npm/traits/switchable/switchableTrait.js.map +0 -1
  508. package/dist-npm/traits/trait-types.d.ts +0 -81
  509. package/dist-npm/traits/trait-types.d.ts.map +0 -1
  510. package/dist-npm/traits/trait-types.js +0 -146
  511. package/dist-npm/traits/trait-types.js.map +0 -1
  512. package/dist-npm/traits/trait.d.ts +0 -44
  513. package/dist-npm/traits/trait.d.ts.map +0 -1
  514. package/dist-npm/traits/trait.js +0 -42
  515. package/dist-npm/traits/trait.js.map +0 -1
  516. package/dist-npm/traits/vehicle/index.d.ts +0 -6
  517. package/dist-npm/traits/vehicle/index.d.ts.map +0 -1
  518. package/dist-npm/traits/vehicle/index.js +0 -22
  519. package/dist-npm/traits/vehicle/index.js.map +0 -1
  520. package/dist-npm/traits/vehicle/vehicleBehavior.d.ts +0 -62
  521. package/dist-npm/traits/vehicle/vehicleBehavior.d.ts.map +0 -1
  522. package/dist-npm/traits/vehicle/vehicleBehavior.js +0 -145
  523. package/dist-npm/traits/vehicle/vehicleBehavior.js.map +0 -1
  524. package/dist-npm/traits/vehicle/vehicleTrait.d.ts +0 -77
  525. package/dist-npm/traits/vehicle/vehicleTrait.d.ts.map +0 -1
  526. package/dist-npm/traits/vehicle/vehicleTrait.js +0 -92
  527. package/dist-npm/traits/vehicle/vehicleTrait.js.map +0 -1
  528. package/dist-npm/traits/weapon/index.d.ts +0 -3
  529. package/dist-npm/traits/weapon/index.d.ts.map +0 -1
  530. package/dist-npm/traits/weapon/index.js +0 -8
  531. package/dist-npm/traits/weapon/index.js.map +0 -1
  532. package/dist-npm/traits/weapon/weaponBehavior.d.ts +0 -47
  533. package/dist-npm/traits/weapon/weaponBehavior.d.ts.map +0 -1
  534. package/dist-npm/traits/weapon/weaponBehavior.js +0 -106
  535. package/dist-npm/traits/weapon/weaponBehavior.js.map +0 -1
  536. package/dist-npm/traits/weapon/weaponTrait.d.ts +0 -67
  537. package/dist-npm/traits/weapon/weaponTrait.d.ts.map +0 -1
  538. package/dist-npm/traits/weapon/weaponTrait.js +0 -60
  539. package/dist-npm/traits/weapon/weaponTrait.js.map +0 -1
  540. package/dist-npm/traits/wearable/index.d.ts +0 -3
  541. package/dist-npm/traits/wearable/index.d.ts.map +0 -1
  542. package/dist-npm/traits/wearable/index.js +0 -20
  543. package/dist-npm/traits/wearable/index.js.map +0 -1
  544. package/dist-npm/traits/wearable/wearableBehavior.d.ts +0 -64
  545. package/dist-npm/traits/wearable/wearableBehavior.d.ts.map +0 -1
  546. package/dist-npm/traits/wearable/wearableBehavior.js +0 -142
  547. package/dist-npm/traits/wearable/wearableBehavior.js.map +0 -1
  548. package/dist-npm/traits/wearable/wearableTrait.d.ts +0 -54
  549. package/dist-npm/traits/wearable/wearableTrait.d.ts.map +0 -1
  550. package/dist-npm/traits/wearable/wearableTrait.js +0 -53
  551. package/dist-npm/traits/wearable/wearableTrait.js.map +0 -1
  552. package/dist-npm/utils/event-utils.d.ts +0 -30
  553. package/dist-npm/utils/event-utils.d.ts.map +0 -1
  554. package/dist-npm/utils/event-utils.js +0 -33
  555. package/dist-npm/utils/event-utils.js.map +0 -1
  556. package/dist-npm/world/AuthorModel.d.ts +0 -151
  557. package/dist-npm/world/AuthorModel.d.ts.map +0 -1
  558. package/dist-npm/world/AuthorModel.js +0 -416
  559. package/dist-npm/world/AuthorModel.js.map +0 -1
  560. package/dist-npm/world/SharedDataStore.d.ts +0 -24
  561. package/dist-npm/world/SharedDataStore.d.ts.map +0 -1
  562. package/dist-npm/world/SharedDataStore.js +0 -50
  563. package/dist-npm/world/SharedDataStore.js.map +0 -1
  564. package/dist-npm/world/SpatialIndex.d.ts +0 -16
  565. package/dist-npm/world/SpatialIndex.d.ts.map +0 -1
  566. package/dist-npm/world/SpatialIndex.js +0 -117
  567. package/dist-npm/world/SpatialIndex.js.map +0 -1
  568. package/dist-npm/world/VisibilityBehavior.d.ts +0 -83
  569. package/dist-npm/world/VisibilityBehavior.d.ts.map +0 -1
  570. package/dist-npm/world/VisibilityBehavior.js +0 -484
  571. package/dist-npm/world/VisibilityBehavior.js.map +0 -1
  572. package/dist-npm/world/WorldModel.d.ts +0 -301
  573. package/dist-npm/world/WorldModel.d.ts.map +0 -1
  574. package/dist-npm/world/WorldModel.js +0 -1085
  575. package/dist-npm/world/WorldModel.js.map +0 -1
  576. package/dist-npm/world/capabilities.d.ts +0 -36
  577. package/dist-npm/world/capabilities.d.ts.map +0 -1
  578. package/dist-npm/world/capabilities.js +0 -18
  579. package/dist-npm/world/capabilities.js.map +0 -1
  580. package/dist-npm/world/index.d.ts +0 -7
  581. package/dist-npm/world/index.d.ts.map +0 -1
  582. package/dist-npm/world/index.js +0 -21
  583. package/dist-npm/world/index.js.map +0 -1
@@ -1,128 +0,0 @@
1
- /**
2
- * NPC Trait (ADR-070)
3
- *
4
- * Marks an entity as a Non-Player Character that can act autonomously.
5
- * NPCs participate in the turn cycle and can have behaviors.
6
- */
7
- import { ITrait } from '../trait';
8
- import { EntityId } from '@sharpee/core';
9
- /**
10
- * Interface for NPC trait data
11
- */
12
- export interface INpcData {
13
- /** Whether this NPC is currently alive */
14
- isAlive?: boolean;
15
- /** Whether this NPC is conscious (can act) */
16
- isConscious?: boolean;
17
- /** Whether this NPC is hostile to the player */
18
- isHostile?: boolean;
19
- /** Whether this NPC can move between rooms */
20
- canMove?: boolean;
21
- /** Rooms this NPC is allowed to enter (undefined = any room) */
22
- allowedRooms?: EntityId[];
23
- /** Rooms this NPC cannot enter */
24
- forbiddenRooms?: EntityId[];
25
- /** ID of the behavior to use for this NPC */
26
- behaviorId?: string;
27
- /** Conversation state for dialogue */
28
- conversationState?: string;
29
- /** Knowledge state - what this NPC knows */
30
- knowledge?: Record<string, unknown>;
31
- /** Goal state - what this NPC is trying to do */
32
- goals?: string[];
33
- /** Custom NPC properties */
34
- customProperties?: Record<string, unknown>;
35
- }
36
- /**
37
- * NPC trait indicates an entity is an autonomous character.
38
- *
39
- * NPCs can:
40
- * - Act during the NPC turn phase
41
- * - Move between rooms (if canMove is true)
42
- * - Respond to player actions (speak, attack, observe)
43
- * - Maintain state across turns
44
- *
45
- * The actual behavior logic is defined in NpcBehavior implementations
46
- * registered with the NpcService.
47
- */
48
- export declare class NpcTrait implements ITrait, INpcData {
49
- static readonly type: "npc";
50
- readonly type: "npc";
51
- isAlive: boolean;
52
- isConscious: boolean;
53
- isHostile: boolean;
54
- canMove: boolean;
55
- allowedRooms?: EntityId[];
56
- forbiddenRooms?: EntityId[];
57
- behaviorId?: string;
58
- conversationState?: string;
59
- knowledge?: Record<string, unknown>;
60
- goals?: string[];
61
- customProperties?: Record<string, unknown>;
62
- constructor(data?: INpcData);
63
- /**
64
- * Check if NPC can act (alive and conscious)
65
- */
66
- get canAct(): boolean;
67
- /**
68
- * Check if NPC can enter a specific room
69
- */
70
- canEnterRoom(roomId: EntityId): boolean;
71
- /**
72
- * Make this NPC hostile
73
- */
74
- makeHostile(): void;
75
- /**
76
- * Make this NPC non-hostile
77
- */
78
- makePassive(): void;
79
- /**
80
- * Knock out this NPC (unconscious but alive)
81
- */
82
- knockOut(): void;
83
- /**
84
- * Wake up this NPC
85
- */
86
- wakeUp(): void;
87
- /**
88
- * Kill this NPC
89
- */
90
- kill(): void;
91
- /**
92
- * Revive this NPC
93
- */
94
- revive(): void;
95
- /**
96
- * Set a knowledge item
97
- */
98
- setKnowledge(key: string, value: unknown): void;
99
- /**
100
- * Get a knowledge item
101
- */
102
- getKnowledge(key: string): unknown;
103
- /**
104
- * Check if NPC knows something
105
- */
106
- knows(key: string): boolean;
107
- /**
108
- * Add a goal
109
- */
110
- addGoal(goal: string): void;
111
- /**
112
- * Remove a goal
113
- */
114
- removeGoal(goal: string): void;
115
- /**
116
- * Check if NPC has a goal
117
- */
118
- hasGoal(goal: string): boolean;
119
- /**
120
- * Set a custom property
121
- */
122
- setCustomProperty(key: string, value: unknown): void;
123
- /**
124
- * Get a custom property
125
- */
126
- getCustomProperty(key: string): unknown;
127
- }
128
- //# sourceMappingURL=npcTrait.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"npcTrait.d.ts","sourceRoot":"","sources":["../../../src/traits/npc/npcTrait.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,8CAA8C;IAC9C,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,gDAAgD;IAChD,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,gEAAgE;IAChE,YAAY,CAAC,EAAE,QAAQ,EAAE,CAAC;IAE1B,kCAAkC;IAClC,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC;IAE5B,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,sCAAsC;IACtC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEpC,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB,4BAA4B;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,QAAS,YAAW,MAAM,EAAE,QAAQ;IAC/C,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAG,KAAK,CAAU;IACtC,QAAQ,CAAC,IAAI,EAAG,KAAK,CAAU;IAG/B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IAGnB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC;IAG5B,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAGjB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAE/B,IAAI,GAAE,QAAa;IAe/B;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAgBvC;;OAEG;IACH,WAAW,IAAI,IAAI;IAInB;;OAEG;IACH,WAAW,IAAI,IAAI;IAInB;;OAEG;IACH,QAAQ,IAAI,IAAI;IAIhB;;OAEG;IACH,MAAM,IAAI,IAAI;IAMd;;OAEG;IACH,IAAI,IAAI,IAAI;IAKZ;;OAEG;IACH,MAAM,IAAI,IAAI;IAKd;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAO/C;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIlC;;OAEG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI3B;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAS3B;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAM9B;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI9B;;OAEG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAOpD;;OAEG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;CAGxC"}
@@ -1,180 +0,0 @@
1
- "use strict";
2
- /**
3
- * NPC Trait (ADR-070)
4
- *
5
- * Marks an entity as a Non-Player Character that can act autonomously.
6
- * NPCs participate in the turn cycle and can have behaviors.
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.NpcTrait = void 0;
10
- /**
11
- * NPC trait indicates an entity is an autonomous character.
12
- *
13
- * NPCs can:
14
- * - Act during the NPC turn phase
15
- * - Move between rooms (if canMove is true)
16
- * - Respond to player actions (speak, attack, observe)
17
- * - Maintain state across turns
18
- *
19
- * The actual behavior logic is defined in NpcBehavior implementations
20
- * registered with the NpcService.
21
- */
22
- class NpcTrait {
23
- static type = 'npc';
24
- type = 'npc';
25
- // State properties
26
- isAlive;
27
- isConscious;
28
- isHostile;
29
- // Movement properties
30
- canMove;
31
- allowedRooms;
32
- forbiddenRooms;
33
- // Behavior reference
34
- behaviorId;
35
- // Interaction state
36
- conversationState;
37
- knowledge;
38
- goals;
39
- // Custom properties
40
- customProperties;
41
- constructor(data = {}) {
42
- // Set defaults and merge with provided data
43
- this.isAlive = data.isAlive ?? true;
44
- this.isConscious = data.isConscious ?? true;
45
- this.isHostile = data.isHostile ?? false;
46
- this.canMove = data.canMove ?? false;
47
- this.allowedRooms = data.allowedRooms;
48
- this.forbiddenRooms = data.forbiddenRooms;
49
- this.behaviorId = data.behaviorId;
50
- this.conversationState = data.conversationState;
51
- this.knowledge = data.knowledge;
52
- this.goals = data.goals;
53
- this.customProperties = data.customProperties;
54
- }
55
- /**
56
- * Check if NPC can act (alive and conscious)
57
- */
58
- get canAct() {
59
- return this.isAlive && this.isConscious;
60
- }
61
- /**
62
- * Check if NPC can enter a specific room
63
- */
64
- canEnterRoom(roomId) {
65
- if (!this.canMove)
66
- return false;
67
- // Check forbidden rooms first
68
- if (this.forbiddenRooms?.includes(roomId)) {
69
- return false;
70
- }
71
- // If allowed rooms is defined, room must be in list
72
- if (this.allowedRooms && !this.allowedRooms.includes(roomId)) {
73
- return false;
74
- }
75
- return true;
76
- }
77
- /**
78
- * Make this NPC hostile
79
- */
80
- makeHostile() {
81
- this.isHostile = true;
82
- }
83
- /**
84
- * Make this NPC non-hostile
85
- */
86
- makePassive() {
87
- this.isHostile = false;
88
- }
89
- /**
90
- * Knock out this NPC (unconscious but alive)
91
- */
92
- knockOut() {
93
- this.isConscious = false;
94
- }
95
- /**
96
- * Wake up this NPC
97
- */
98
- wakeUp() {
99
- if (this.isAlive) {
100
- this.isConscious = true;
101
- }
102
- }
103
- /**
104
- * Kill this NPC
105
- */
106
- kill() {
107
- this.isAlive = false;
108
- this.isConscious = false;
109
- }
110
- /**
111
- * Revive this NPC
112
- */
113
- revive() {
114
- this.isAlive = true;
115
- this.isConscious = true;
116
- }
117
- /**
118
- * Set a knowledge item
119
- */
120
- setKnowledge(key, value) {
121
- if (!this.knowledge) {
122
- this.knowledge = {};
123
- }
124
- this.knowledge[key] = value;
125
- }
126
- /**
127
- * Get a knowledge item
128
- */
129
- getKnowledge(key) {
130
- return this.knowledge?.[key];
131
- }
132
- /**
133
- * Check if NPC knows something
134
- */
135
- knows(key) {
136
- return this.knowledge?.[key] !== undefined;
137
- }
138
- /**
139
- * Add a goal
140
- */
141
- addGoal(goal) {
142
- if (!this.goals) {
143
- this.goals = [];
144
- }
145
- if (!this.goals.includes(goal)) {
146
- this.goals.push(goal);
147
- }
148
- }
149
- /**
150
- * Remove a goal
151
- */
152
- removeGoal(goal) {
153
- if (this.goals) {
154
- this.goals = this.goals.filter((g) => g !== goal);
155
- }
156
- }
157
- /**
158
- * Check if NPC has a goal
159
- */
160
- hasGoal(goal) {
161
- return this.goals?.includes(goal) ?? false;
162
- }
163
- /**
164
- * Set a custom property
165
- */
166
- setCustomProperty(key, value) {
167
- if (!this.customProperties) {
168
- this.customProperties = {};
169
- }
170
- this.customProperties[key] = value;
171
- }
172
- /**
173
- * Get a custom property
174
- */
175
- getCustomProperty(key) {
176
- return this.customProperties?.[key];
177
- }
178
- }
179
- exports.NpcTrait = NpcTrait;
180
- //# sourceMappingURL=npcTrait.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"npcTrait.js","sourceRoot":"","sources":["../../../src/traits/npc/npcTrait.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from './openableTrait';
2
- export * from './openableBehavior';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/traits/openable/index.ts"],"names":[],"mappings":"AAEA,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- // packages/world-model/src/traits/openable/index.ts
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k;
5
- var desc = Object.getOwnPropertyDescriptor(m, k);
6
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
- desc = { enumerable: true, get: function() { return m[k]; } };
8
- }
9
- Object.defineProperty(o, k2, desc);
10
- }) : (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k;
12
- o[k2] = m[k];
13
- }));
14
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
- };
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- __exportStar(require("./openableTrait"), exports);
19
- __exportStar(require("./openableBehavior"), exports);
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/traits/openable/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;;;;;;;;;;;;;;AAEpD,kDAAgC;AAChC,qDAAmC"}
@@ -1,64 +0,0 @@
1
- import { Behavior } from '../../behaviors/behavior';
2
- import { IFEntity } from '../../entities/if-entity';
3
- /**
4
- * Result of an open operation
5
- */
6
- export interface IOpenResult {
7
- success: boolean;
8
- alreadyOpen?: boolean;
9
- stateChanged?: boolean;
10
- openMessage?: string;
11
- openSound?: string;
12
- revealsContents?: boolean;
13
- }
14
- /**
15
- * Result of a close operation
16
- */
17
- export interface ICloseResult {
18
- success: boolean;
19
- alreadyClosed?: boolean;
20
- cantClose?: boolean;
21
- stateChanged?: boolean;
22
- closeMessage?: string;
23
- closeSound?: string;
24
- }
25
- /**
26
- * Behavior for openable entities.
27
- *
28
- * Handles the logic for opening and closing entities.
29
- */
30
- export declare class OpenableBehavior extends Behavior {
31
- static requiredTraits: "openable"[];
32
- /**
33
- * Check if an entity can be opened
34
- */
35
- static canOpen(entity: IFEntity): boolean;
36
- /**
37
- * Check if an entity can be closed
38
- */
39
- static canClose(entity: IFEntity): boolean;
40
- /**
41
- * Open the entity
42
- * @returns Result describing what happened
43
- */
44
- static open(entity: IFEntity): IOpenResult;
45
- /**
46
- * Close the entity
47
- * @returns Result describing what happened
48
- */
49
- static close(entity: IFEntity): ICloseResult;
50
- /**
51
- * Toggle open/closed state
52
- * @returns Result from either open or close
53
- */
54
- static toggle(entity: IFEntity): IOpenResult | ICloseResult;
55
- /**
56
- * Check if entity is currently open
57
- */
58
- static isOpen(entity: IFEntity): boolean;
59
- /**
60
- * Check if opening reveals contents
61
- */
62
- static revealsContents(entity: IFEntity): boolean;
63
- }
64
- //# sourceMappingURL=openableBehavior.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openableBehavior.d.ts","sourceRoot":"","sources":["../../../src/traits/openable/openableBehavior.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAIpD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,MAAM,CAAC,cAAc,eAAwB;IAE7C;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAKzC;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAK1C;;;OAGG;IACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,WAAW;IAuB1C;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,GAAG,YAAY;IA8B5C;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,WAAW,GAAG,YAAY;IAU3D;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAKxC;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;CAIlD"}
@@ -1,109 +0,0 @@
1
- "use strict";
2
- // packages/world-model/src/traits/openable/openableBehavior.ts
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.OpenableBehavior = void 0;
5
- const behavior_1 = require("../../behaviors/behavior");
6
- const trait_types_1 = require("../trait-types");
7
- /**
8
- * Behavior for openable entities.
9
- *
10
- * Handles the logic for opening and closing entities.
11
- */
12
- class OpenableBehavior extends behavior_1.Behavior {
13
- static requiredTraits = [trait_types_1.TraitType.OPENABLE];
14
- /**
15
- * Check if an entity can be opened
16
- */
17
- static canOpen(entity) {
18
- const openable = OpenableBehavior.require(entity, trait_types_1.TraitType.OPENABLE);
19
- return !openable.isOpen;
20
- }
21
- /**
22
- * Check if an entity can be closed
23
- */
24
- static canClose(entity) {
25
- const openable = OpenableBehavior.require(entity, trait_types_1.TraitType.OPENABLE);
26
- return openable.isOpen && openable.canClose;
27
- }
28
- /**
29
- * Open the entity
30
- * @returns Result describing what happened
31
- */
32
- static open(entity) {
33
- const openable = OpenableBehavior.require(entity, trait_types_1.TraitType.OPENABLE);
34
- if (openable.isOpen) {
35
- return {
36
- success: false,
37
- alreadyOpen: true,
38
- stateChanged: false
39
- };
40
- }
41
- // Open it
42
- openable.isOpen = true;
43
- return {
44
- success: true,
45
- stateChanged: true,
46
- openMessage: openable.openMessage,
47
- openSound: openable.openSound,
48
- revealsContents: openable.revealsContents
49
- };
50
- }
51
- /**
52
- * Close the entity
53
- * @returns Result describing what happened
54
- */
55
- static close(entity) {
56
- const openable = OpenableBehavior.require(entity, trait_types_1.TraitType.OPENABLE);
57
- if (!openable.isOpen) {
58
- return {
59
- success: false,
60
- alreadyClosed: true,
61
- stateChanged: false
62
- };
63
- }
64
- if (!openable.canClose) {
65
- return {
66
- success: false,
67
- cantClose: true,
68
- stateChanged: false
69
- };
70
- }
71
- // Close it
72
- openable.isOpen = false;
73
- return {
74
- success: true,
75
- stateChanged: true,
76
- closeMessage: openable.closeMessage,
77
- closeSound: openable.closeSound
78
- };
79
- }
80
- /**
81
- * Toggle open/closed state
82
- * @returns Result from either open or close
83
- */
84
- static toggle(entity) {
85
- const openable = OpenableBehavior.require(entity, trait_types_1.TraitType.OPENABLE);
86
- if (openable.isOpen) {
87
- return OpenableBehavior.close(entity);
88
- }
89
- else {
90
- return OpenableBehavior.open(entity);
91
- }
92
- }
93
- /**
94
- * Check if entity is currently open
95
- */
96
- static isOpen(entity) {
97
- const openable = OpenableBehavior.require(entity, trait_types_1.TraitType.OPENABLE);
98
- return openable.isOpen;
99
- }
100
- /**
101
- * Check if opening reveals contents
102
- */
103
- static revealsContents(entity) {
104
- const openable = OpenableBehavior.require(entity, trait_types_1.TraitType.OPENABLE);
105
- return openable.revealsContents;
106
- }
107
- }
108
- exports.OpenableBehavior = OpenableBehavior;
109
- //# sourceMappingURL=openableBehavior.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openableBehavior.js","sourceRoot":"","sources":["../../../src/traits/openable/openableBehavior.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- import { ITrait } from '../trait';
2
- export interface IOpenableData {
3
- /** Whether the entity is currently open */
4
- isOpen?: boolean;
5
- /** Whether the entity starts open */
6
- startsOpen?: boolean;
7
- /** Custom message when opening */
8
- openMessage?: string;
9
- /** Custom message when closing */
10
- closeMessage?: string;
11
- /** Custom message when already open */
12
- alreadyOpenMessage?: string;
13
- /** Custom message when already closed */
14
- alreadyClosedMessage?: string;
15
- /** Whether opening reveals contents (for containers) */
16
- revealsContents?: boolean;
17
- /** Whether this can be closed once opened */
18
- canClose?: boolean;
19
- /** Sound made when opening */
20
- openSound?: string;
21
- /** Sound made when closing */
22
- closeSound?: string;
23
- }
24
- /**
25
- * Openable trait for entities that can be opened and closed.
26
- * Used for doors, containers, books, etc.
27
- *
28
- * This trait contains only data - all logic for opening/closing
29
- * is in OpenableBehavior.
30
- */
31
- export declare class OpenableTrait implements ITrait, IOpenableData {
32
- static readonly type: "openable";
33
- readonly type: "openable";
34
- isOpen: boolean;
35
- startsOpen: boolean;
36
- openMessage?: string;
37
- closeMessage?: string;
38
- alreadyOpenMessage?: string;
39
- alreadyClosedMessage?: string;
40
- revealsContents: boolean;
41
- canClose: boolean;
42
- openSound?: string;
43
- closeSound?: string;
44
- constructor(data?: IOpenableData);
45
- }
46
- //# sourceMappingURL=openableTrait.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openableTrait.d.ts","sourceRoot":"","sources":["../../../src/traits/openable/openableTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,qCAAqC;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,uCAAuC;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,yCAAyC;IACzC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,wDAAwD;IACxD,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,qBAAa,aAAc,YAAW,MAAM,EAAE,aAAa;IACzD,MAAM,CAAC,QAAQ,CAAC,IAAI,aAAsB;IAC1C,QAAQ,CAAC,IAAI,aAAsB;IAGnC,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;gBAER,IAAI,GAAE,aAAkB;CAarC"}
@@ -1,42 +0,0 @@
1
- "use strict";
2
- // packages/world-model/src/traits/openable/openableTrait.ts
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.OpenableTrait = void 0;
5
- const trait_types_1 = require("../trait-types");
6
- /**
7
- * Openable trait for entities that can be opened and closed.
8
- * Used for doors, containers, books, etc.
9
- *
10
- * This trait contains only data - all logic for opening/closing
11
- * is in OpenableBehavior.
12
- */
13
- class OpenableTrait {
14
- static type = trait_types_1.TraitType.OPENABLE;
15
- type = trait_types_1.TraitType.OPENABLE;
16
- // OpenableData properties
17
- isOpen;
18
- startsOpen;
19
- openMessage;
20
- closeMessage;
21
- alreadyOpenMessage;
22
- alreadyClosedMessage;
23
- revealsContents;
24
- canClose;
25
- openSound;
26
- closeSound;
27
- constructor(data = {}) {
28
- // Set defaults and merge with provided data
29
- this.startsOpen = data.startsOpen ?? false;
30
- this.isOpen = data.isOpen ?? this.startsOpen;
31
- this.openMessage = data.openMessage;
32
- this.closeMessage = data.closeMessage;
33
- this.alreadyOpenMessage = data.alreadyOpenMessage;
34
- this.alreadyClosedMessage = data.alreadyClosedMessage;
35
- this.revealsContents = data.revealsContents ?? true;
36
- this.canClose = data.canClose ?? true;
37
- this.openSound = data.openSound;
38
- this.closeSound = data.closeSound;
39
- }
40
- }
41
- exports.OpenableTrait = OpenableTrait;
42
- //# sourceMappingURL=openableTrait.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openableTrait.js","sourceRoot":"","sources":["../../../src/traits/openable/openableTrait.ts"],"names":[],"mappings":";AAAA,4DAA4D;;;AAG5D,gDAA2C;AAkC3C;;;;;;GAMG;AACH,MAAa,aAAa;IACxB,MAAM,CAAU,IAAI,GAAG,uBAAS,CAAC,QAAQ,CAAC;IACjC,IAAI,GAAG,uBAAS,CAAC,QAAQ,CAAC;IAEnC,0BAA0B;IAC1B,MAAM,CAAU;IAChB,UAAU,CAAU;IACpB,WAAW,CAAU;IACrB,YAAY,CAAU;IACtB,kBAAkB,CAAU;IAC5B,oBAAoB,CAAU;IAC9B,eAAe,CAAU;IACzB,QAAQ,CAAU;IAClB,SAAS,CAAU;IACnB,UAAU,CAAU;IAEpB,YAAY,OAAsB,EAAE;QAClC,4CAA4C;QAC5C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAClD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC;QACpD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACpC,CAAC;;AA5BH,sCA6BC"}
@@ -1,2 +0,0 @@
1
- export * from './pullableTrait';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/traits/pullable/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./pullableTrait"), exports);
18
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/traits/pullable/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC"}