@sharpee/stdlib 2.2.0 → 3.1.0

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 (299) hide show
  1. package/actions/base/snapshot-utils.js +2 -2
  2. package/actions/base/snapshot-utils.js.map +1 -1
  3. package/actions/constants.d.ts +2 -0
  4. package/actions/constants.d.ts.map +1 -1
  5. package/actions/constants.js +3 -0
  6. package/actions/constants.js.map +1 -1
  7. package/actions/index.d.ts +2 -0
  8. package/actions/index.d.ts.map +1 -1
  9. package/actions/index.js +6 -0
  10. package/actions/index.js.map +1 -1
  11. package/actions/lifecycle/descriptor.d.ts +111 -0
  12. package/actions/lifecycle/descriptor.d.ts.map +1 -0
  13. package/actions/lifecycle/descriptor.js +22 -0
  14. package/actions/lifecycle/descriptor.js.map +1 -0
  15. package/actions/lifecycle/index.d.ts +14 -0
  16. package/actions/lifecycle/index.d.ts.map +1 -0
  17. package/actions/lifecycle/index.js +27 -0
  18. package/actions/lifecycle/index.js.map +1 -0
  19. package/actions/lifecycle/lifecycle-engine.d.ts +173 -0
  20. package/actions/lifecycle/lifecycle-engine.d.ts.map +1 -0
  21. package/actions/lifecycle/lifecycle-engine.js +247 -0
  22. package/actions/lifecycle/lifecycle-engine.js.map +1 -0
  23. package/actions/lifecycle/multi-object-lifecycle.d.ts +105 -0
  24. package/actions/lifecycle/multi-object-lifecycle.d.ts.map +1 -0
  25. package/actions/lifecycle/multi-object-lifecycle.js +136 -0
  26. package/actions/lifecycle/multi-object-lifecycle.js.map +1 -0
  27. package/actions/lifecycle/registry.d.ts +39 -0
  28. package/actions/lifecycle/registry.d.ts.map +1 -0
  29. package/actions/lifecycle/registry.js +128 -0
  30. package/actions/lifecycle/registry.js.map +1 -0
  31. package/actions/standard/asking/asking.d.ts +25 -0
  32. package/actions/standard/asking/asking.d.ts.map +1 -0
  33. package/actions/standard/asking/asking.js +114 -0
  34. package/actions/standard/asking/asking.js.map +1 -0
  35. package/actions/standard/asking/index.d.ts +5 -0
  36. package/actions/standard/asking/index.d.ts.map +1 -0
  37. package/actions/standard/asking/index.js +10 -0
  38. package/actions/standard/asking/index.js.map +1 -0
  39. package/actions/standard/attacking/attacking.d.ts +14 -0
  40. package/actions/standard/attacking/attacking.d.ts.map +1 -1
  41. package/actions/standard/attacking/attacking.js +138 -94
  42. package/actions/standard/attacking/attacking.js.map +1 -1
  43. package/actions/standard/attacking/index.d.ts +1 -1
  44. package/actions/standard/attacking/index.d.ts.map +1 -1
  45. package/actions/standard/attacking/index.js +2 -1
  46. package/actions/standard/attacking/index.js.map +1 -1
  47. package/actions/standard/climbing/climbing.d.ts +10 -0
  48. package/actions/standard/climbing/climbing.d.ts.map +1 -1
  49. package/actions/standard/climbing/climbing.js +51 -11
  50. package/actions/standard/climbing/climbing.js.map +1 -1
  51. package/actions/standard/closing/closing.d.ts +6 -0
  52. package/actions/standard/closing/closing.d.ts.map +1 -1
  53. package/actions/standard/closing/closing.js +37 -31
  54. package/actions/standard/closing/closing.js.map +1 -1
  55. package/actions/standard/cutting/cutting-messages.d.ts +17 -0
  56. package/actions/standard/cutting/cutting-messages.d.ts.map +1 -0
  57. package/actions/standard/cutting/cutting-messages.js +22 -0
  58. package/actions/standard/cutting/cutting-messages.js.map +1 -0
  59. package/actions/standard/cutting/cutting.d.ts +35 -0
  60. package/actions/standard/cutting/cutting.d.ts.map +1 -0
  61. package/actions/standard/cutting/cutting.js +228 -0
  62. package/actions/standard/cutting/cutting.js.map +1 -0
  63. package/actions/standard/cutting/index.d.ts +7 -0
  64. package/actions/standard/cutting/index.d.ts.map +1 -0
  65. package/actions/standard/cutting/index.js +12 -0
  66. package/actions/standard/cutting/index.js.map +1 -0
  67. package/actions/standard/deadly-room-death/deadly-room-death.d.ts +16 -0
  68. package/actions/standard/deadly-room-death/deadly-room-death.d.ts.map +1 -0
  69. package/actions/standard/deadly-room-death/deadly-room-death.js +44 -0
  70. package/actions/standard/deadly-room-death/deadly-room-death.js.map +1 -0
  71. package/actions/standard/deadly-room-death/index.d.ts +2 -0
  72. package/actions/standard/deadly-room-death/index.d.ts.map +1 -0
  73. package/actions/standard/deadly-room-death/index.js +6 -0
  74. package/actions/standard/deadly-room-death/index.js.map +1 -0
  75. package/actions/standard/digging/digging-messages.d.ts +17 -0
  76. package/actions/standard/digging/digging-messages.d.ts.map +1 -0
  77. package/actions/standard/digging/digging-messages.js +22 -0
  78. package/actions/standard/digging/digging-messages.js.map +1 -0
  79. package/actions/standard/digging/digging.d.ts +35 -0
  80. package/actions/standard/digging/digging.d.ts.map +1 -0
  81. package/actions/standard/digging/digging.js +228 -0
  82. package/actions/standard/digging/digging.js.map +1 -0
  83. package/actions/standard/digging/index.d.ts +7 -0
  84. package/actions/standard/digging/index.d.ts.map +1 -0
  85. package/actions/standard/digging/index.js +12 -0
  86. package/actions/standard/digging/index.js.map +1 -0
  87. package/actions/standard/drinking/drinking.d.ts +9 -0
  88. package/actions/standard/drinking/drinking.d.ts.map +1 -1
  89. package/actions/standard/drinking/drinking.js +40 -2
  90. package/actions/standard/drinking/drinking.js.map +1 -1
  91. package/actions/standard/dropping/dropping-types.d.ts +10 -18
  92. package/actions/standard/dropping/dropping-types.d.ts.map +1 -1
  93. package/actions/standard/dropping/dropping-types.js.map +1 -1
  94. package/actions/standard/dropping/dropping.d.ts +6 -0
  95. package/actions/standard/dropping/dropping.d.ts.map +1 -1
  96. package/actions/standard/dropping/dropping.js +86 -108
  97. package/actions/standard/dropping/dropping.js.map +1 -1
  98. package/actions/standard/eating/eating.d.ts +9 -0
  99. package/actions/standard/eating/eating.d.ts.map +1 -1
  100. package/actions/standard/eating/eating.js +40 -2
  101. package/actions/standard/eating/eating.js.map +1 -1
  102. package/actions/standard/entering/entering.d.ts +14 -5
  103. package/actions/standard/entering/entering.d.ts.map +1 -1
  104. package/actions/standard/entering/entering.js +45 -67
  105. package/actions/standard/entering/entering.js.map +1 -1
  106. package/actions/standard/examining/examining.d.ts +6 -0
  107. package/actions/standard/examining/examining.d.ts.map +1 -1
  108. package/actions/standard/examining/examining.js +39 -3
  109. package/actions/standard/examining/examining.js.map +1 -1
  110. package/actions/standard/exiting/exiting.d.ts +6 -0
  111. package/actions/standard/exiting/exiting.d.ts.map +1 -1
  112. package/actions/standard/exiting/exiting.js +54 -3
  113. package/actions/standard/exiting/exiting.js.map +1 -1
  114. package/actions/standard/giving/giving.d.ts +21 -0
  115. package/actions/standard/giving/giving.d.ts.map +1 -1
  116. package/actions/standard/giving/giving.js +78 -2
  117. package/actions/standard/giving/giving.js.map +1 -1
  118. package/actions/standard/going/going.d.ts +10 -16
  119. package/actions/standard/going/going.d.ts.map +1 -1
  120. package/actions/standard/going/going.js +134 -140
  121. package/actions/standard/going/going.js.map +1 -1
  122. package/actions/standard/hiding/hiding.d.ts +10 -1
  123. package/actions/standard/hiding/hiding.d.ts.map +1 -1
  124. package/actions/standard/hiding/hiding.js +43 -4
  125. package/actions/standard/hiding/hiding.js.map +1 -1
  126. package/actions/standard/index.d.ts +5 -0
  127. package/actions/standard/index.d.ts.map +1 -1
  128. package/actions/standard/index.js +19 -4
  129. package/actions/standard/index.js.map +1 -1
  130. package/actions/standard/inserting/inserting.d.ts +12 -0
  131. package/actions/standard/inserting/inserting.d.ts.map +1 -1
  132. package/actions/standard/inserting/inserting.js +70 -5
  133. package/actions/standard/inserting/inserting.js.map +1 -1
  134. package/actions/standard/listening/listening.d.ts +12 -1
  135. package/actions/standard/listening/listening.d.ts.map +1 -1
  136. package/actions/standard/listening/listening.js +45 -4
  137. package/actions/standard/listening/listening.js.map +1 -1
  138. package/actions/standard/locking/locking.d.ts +9 -0
  139. package/actions/standard/locking/locking.d.ts.map +1 -1
  140. package/actions/standard/locking/locking.js +62 -3
  141. package/actions/standard/locking/locking.js.map +1 -1
  142. package/actions/standard/looking/index.d.ts +1 -0
  143. package/actions/standard/looking/index.d.ts.map +1 -1
  144. package/actions/standard/looking/index.js +5 -1
  145. package/actions/standard/looking/index.js.map +1 -1
  146. package/actions/standard/looking/snippet-gate-registry.d.ts +55 -0
  147. package/actions/standard/looking/snippet-gate-registry.d.ts.map +1 -0
  148. package/actions/standard/looking/snippet-gate-registry.js +63 -0
  149. package/actions/standard/looking/snippet-gate-registry.js.map +1 -0
  150. package/actions/standard/looking/snippet-resolver.d.ts +9 -3
  151. package/actions/standard/looking/snippet-resolver.d.ts.map +1 -1
  152. package/actions/standard/looking/snippet-resolver.js +75 -4
  153. package/actions/standard/looking/snippet-resolver.js.map +1 -1
  154. package/actions/standard/opening/opening-messages.d.ts +3 -0
  155. package/actions/standard/opening/opening-messages.d.ts.map +1 -1
  156. package/actions/standard/opening/opening-messages.js +4 -0
  157. package/actions/standard/opening/opening-messages.js.map +1 -1
  158. package/actions/standard/opening/opening.d.ts +8 -0
  159. package/actions/standard/opening/opening.d.ts.map +1 -1
  160. package/actions/standard/opening/opening.js +73 -39
  161. package/actions/standard/opening/opening.js.map +1 -1
  162. package/actions/standard/pulling/pulling.d.ts +9 -0
  163. package/actions/standard/pulling/pulling.d.ts.map +1 -1
  164. package/actions/standard/pulling/pulling.js +40 -2
  165. package/actions/standard/pulling/pulling.js.map +1 -1
  166. package/actions/standard/pushing/pushing-types.d.ts +3 -6
  167. package/actions/standard/pushing/pushing-types.d.ts.map +1 -1
  168. package/actions/standard/pushing/pushing-types.js +3 -1
  169. package/actions/standard/pushing/pushing-types.js.map +1 -1
  170. package/actions/standard/pushing/pushing.d.ts +14 -5
  171. package/actions/standard/pushing/pushing.d.ts.map +1 -1
  172. package/actions/standard/pushing/pushing.js +51 -71
  173. package/actions/standard/pushing/pushing.js.map +1 -1
  174. package/actions/standard/putting/putting-types.d.ts +10 -21
  175. package/actions/standard/putting/putting-types.d.ts.map +1 -1
  176. package/actions/standard/putting/putting-types.js +0 -1
  177. package/actions/standard/putting/putting-types.js.map +1 -1
  178. package/actions/standard/putting/putting.d.ts +10 -0
  179. package/actions/standard/putting/putting.d.ts.map +1 -1
  180. package/actions/standard/putting/putting.js +133 -151
  181. package/actions/standard/putting/putting.js.map +1 -1
  182. package/actions/standard/reading/reading.d.ts +6 -0
  183. package/actions/standard/reading/reading.d.ts.map +1 -1
  184. package/actions/standard/reading/reading.js +39 -3
  185. package/actions/standard/reading/reading.js.map +1 -1
  186. package/actions/standard/removing/removing-types.d.ts +10 -16
  187. package/actions/standard/removing/removing-types.d.ts.map +1 -1
  188. package/actions/standard/removing/removing-types.js.map +1 -1
  189. package/actions/standard/removing/removing.d.ts +13 -0
  190. package/actions/standard/removing/removing.d.ts.map +1 -1
  191. package/actions/standard/removing/removing.js +147 -88
  192. package/actions/standard/removing/removing.js.map +1 -1
  193. package/actions/standard/searching/searching.d.ts +10 -0
  194. package/actions/standard/searching/searching.d.ts.map +1 -1
  195. package/actions/standard/searching/searching.js +44 -8
  196. package/actions/standard/searching/searching.js.map +1 -1
  197. package/actions/standard/showing/showing.d.ts +14 -0
  198. package/actions/standard/showing/showing.d.ts.map +1 -1
  199. package/actions/standard/showing/showing.js +62 -2
  200. package/actions/standard/showing/showing.js.map +1 -1
  201. package/actions/standard/smelling/smelling.d.ts +10 -0
  202. package/actions/standard/smelling/smelling.d.ts.map +1 -1
  203. package/actions/standard/smelling/smelling.js +41 -2
  204. package/actions/standard/smelling/smelling.js.map +1 -1
  205. package/actions/standard/switching_off/switching_off.d.ts +11 -1
  206. package/actions/standard/switching_off/switching_off.d.ts.map +1 -1
  207. package/actions/standard/switching_off/switching_off.js +44 -4
  208. package/actions/standard/switching_off/switching_off.js.map +1 -1
  209. package/actions/standard/switching_on/switching_on.d.ts +14 -5
  210. package/actions/standard/switching_on/switching_on.d.ts.map +1 -1
  211. package/actions/standard/switching_on/switching_on.js +45 -57
  212. package/actions/standard/switching_on/switching_on.js.map +1 -1
  213. package/actions/standard/taking/taking-types.d.ts +14 -32
  214. package/actions/standard/taking/taking-types.d.ts.map +1 -1
  215. package/actions/standard/taking/taking-types.js.map +1 -1
  216. package/actions/standard/taking/taking.d.ts +11 -0
  217. package/actions/standard/taking/taking.d.ts.map +1 -1
  218. package/actions/standard/taking/taking.js +107 -111
  219. package/actions/standard/taking/taking.js.map +1 -1
  220. package/actions/standard/taking_off/taking-off.d.ts +6 -0
  221. package/actions/standard/taking_off/taking-off.d.ts.map +1 -1
  222. package/actions/standard/taking_off/taking-off.js +57 -21
  223. package/actions/standard/taking_off/taking-off.js.map +1 -1
  224. package/actions/standard/talking/talking.d.ts +15 -0
  225. package/actions/standard/talking/talking.d.ts.map +1 -1
  226. package/actions/standard/talking/talking.js +52 -3
  227. package/actions/standard/talking/talking.js.map +1 -1
  228. package/actions/standard/telling/index.d.ts +5 -0
  229. package/actions/standard/telling/index.d.ts.map +1 -0
  230. package/actions/standard/telling/index.js +10 -0
  231. package/actions/standard/telling/index.js.map +1 -0
  232. package/actions/standard/telling/telling.d.ts +25 -0
  233. package/actions/standard/telling/telling.d.ts.map +1 -0
  234. package/actions/standard/telling/telling.js +114 -0
  235. package/actions/standard/telling/telling.js.map +1 -0
  236. package/actions/standard/throwing/throwing.d.ts +11 -0
  237. package/actions/standard/throwing/throwing.d.ts.map +1 -1
  238. package/actions/standard/throwing/throwing.js +69 -70
  239. package/actions/standard/throwing/throwing.js.map +1 -1
  240. package/actions/standard/tool-shared.d.ts +38 -0
  241. package/actions/standard/tool-shared.d.ts.map +1 -0
  242. package/actions/standard/tool-shared.js +74 -0
  243. package/actions/standard/tool-shared.js.map +1 -0
  244. package/actions/standard/touching/touching.d.ts +9 -0
  245. package/actions/standard/touching/touching.d.ts.map +1 -1
  246. package/actions/standard/touching/touching.js +40 -4
  247. package/actions/standard/touching/touching.js.map +1 -1
  248. package/actions/standard/turning/index.d.ts +5 -0
  249. package/actions/standard/turning/index.d.ts.map +1 -0
  250. package/actions/standard/turning/index.js +9 -0
  251. package/actions/standard/turning/index.js.map +1 -0
  252. package/actions/standard/turning/turning.d.ts +17 -0
  253. package/actions/standard/turning/turning.d.ts.map +1 -0
  254. package/actions/standard/turning/turning.js +25 -0
  255. package/actions/standard/turning/turning.js.map +1 -0
  256. package/actions/standard/unlocking/unlocking.d.ts +9 -0
  257. package/actions/standard/unlocking/unlocking.d.ts.map +1 -1
  258. package/actions/standard/unlocking/unlocking.js +62 -3
  259. package/actions/standard/unlocking/unlocking.js.map +1 -1
  260. package/actions/standard/wearing/wearing.d.ts +11 -1
  261. package/actions/standard/wearing/wearing.d.ts.map +1 -1
  262. package/actions/standard/wearing/wearing.js +57 -12
  263. package/actions/standard/wearing/wearing.js.map +1 -1
  264. package/channels/standard.d.ts +13 -10
  265. package/channels/standard.d.ts.map +1 -1
  266. package/channels/standard.js +14 -10
  267. package/channels/standard.js.map +1 -1
  268. package/death/deadly-room-transformer.d.ts +37 -0
  269. package/death/deadly-room-transformer.d.ts.map +1 -0
  270. package/death/deadly-room-transformer.js +79 -0
  271. package/death/deadly-room-transformer.js.map +1 -0
  272. package/death/index.d.ts +18 -0
  273. package/death/index.d.ts.map +1 -0
  274. package/death/index.js +28 -0
  275. package/death/index.js.map +1 -0
  276. package/death/kill-player.d.ts +49 -0
  277. package/death/kill-player.d.ts.map +1 -0
  278. package/death/kill-player.js +55 -0
  279. package/death/kill-player.js.map +1 -0
  280. package/death/player-death-events.d.ts +40 -0
  281. package/death/player-death-events.d.ts.map +1 -0
  282. package/death/player-death-events.js +27 -0
  283. package/death/player-death-events.js.map +1 -0
  284. package/death/probabilistic-death.d.ts +23 -0
  285. package/death/probabilistic-death.d.ts.map +1 -0
  286. package/death/probabilistic-death.js +27 -0
  287. package/death/probabilistic-death.js.map +1 -0
  288. package/index.d.ts +1 -0
  289. package/index.d.ts.map +1 -1
  290. package/index.js +1 -0
  291. package/index.js.map +1 -1
  292. package/npc/behaviors.d.ts.map +1 -1
  293. package/npc/behaviors.js +9 -8
  294. package/npc/behaviors.js.map +1 -1
  295. package/npc/npc-service.d.ts +8 -0
  296. package/npc/npc-service.d.ts.map +1 -1
  297. package/npc/npc-service.js +19 -18
  298. package/npc/npc-service.js.map +1 -1
  299. package/package.json +7 -7
@@ -3,29 +3,23 @@
3
3
  *
4
4
  * Provides type-safe access to shared data for multi-object support
5
5
  */
6
- import { IFEntity, IRemoveItemResult, IRemoveItemFromSupporterResult, ITakeItemResult } from '@sharpee/world-model';
6
+ import { IRemoveItemResult, IRemoveItemFromSupporterResult, ITakeItemResult } from '@sharpee/world-model';
7
7
  /**
8
- * Result of validating/executing a single entity in multi-object command
8
+ * Per-item mutation scratch for removing one entity. For a single-object
9
+ * command this lives on the action's sharedData; for a multi-object
10
+ * command each item gets its own copy via the lifecycle engine's per-item
11
+ * `itemData` (ADR-228 D4).
9
12
  */
10
- export interface RemovingItemResult {
11
- entity: IFEntity;
12
- success: boolean;
13
- error?: string;
14
- errorParams?: Record<string, unknown>;
13
+ export interface RemovingItemScratch {
15
14
  removeResult?: IRemoveItemResult | IRemoveItemFromSupporterResult | null;
16
15
  takeResult?: ITakeItemResult;
17
16
  }
18
17
  /**
19
- * Typed shared data for removing action
18
+ * Typed shared data for removing action.
19
+ * Interceptor and multi-object state live in the lifecycle engine's
20
+ * reserved sharedData slots (ADR-228), not here.
20
21
  */
21
- export interface RemovingSharedData {
22
- removeResult?: IRemoveItemResult | IRemoveItemFromSupporterResult | null;
23
- takeResult?: ITakeItemResult;
24
- /**
25
- * Multi-object support: results for each entity
26
- * When set, indicates this is a multi-object command
27
- */
28
- multiObjectResults?: RemovingItemResult[];
22
+ export interface RemovingSharedData extends RemovingItemScratch {
29
23
  }
30
24
  /**
31
25
  * Safely get typed shared data from context
@@ -1 +1 @@
1
- {"version":3,"file":"removing-types.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/removing/removing-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEpH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,QAAQ,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,YAAY,CAAC,EAAE,iBAAiB,GAAG,8BAA8B,GAAG,IAAI,CAAC;IACzE,UAAU,CAAC,EAAE,eAAe,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY,CAAC,EAAE,iBAAiB,GAAG,8BAA8B,GAAG,IAAI,CAAC;IACzE,UAAU,CAAC,EAAE,eAAe,CAAC;IAE7B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC3C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,GAAG,kBAAkB,CAKtG"}
1
+ {"version":3,"file":"removing-types.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/removing/removing-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE1G;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,YAAY,CAAC,EAAE,iBAAiB,GAAG,8BAA8B,GAAG,IAAI,CAAC;IACzE,UAAU,CAAC,EAAE,eAAe,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;CAAG;AAElE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,GAAG,kBAAkB,CAKtG"}
@@ -1 +1 @@
1
- {"version":3,"file":"removing-types.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/removing/removing-types.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAiCH,sDAKC;AARD;;GAEG;AACH,SAAgB,qBAAqB,CAAC,OAA4C;IAChF,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAC1E,OAAO,CAAC,UAAU,GAAG,EAAE,CAAC;IAC1B,CAAC;IACD,OAAO,OAAO,CAAC,UAAgC,CAAC;AAClD,CAAC"}
1
+ {"version":3,"file":"removing-types.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/removing/removing-types.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAyBH,sDAKC;AARD;;GAEG;AACH,SAAgB,qBAAqB,CAAC,OAA4C;IAChF,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAC1E,OAAO,CAAC,UAAU,GAAG,EAAE,CAAC;IAC1B,CAAC;IACD,OAAO,OAAO,CAAC,UAAgC,CAAC;AAClD,CAAC"}
@@ -17,6 +17,19 @@
17
17
  */
18
18
  import { Action } from '../../enhanced-types';
19
19
  import { ActionMetadata } from '../../../validation';
20
+ import { ActionLifecycleDescriptor } from '../../lifecycle';
21
+ /**
22
+ * Interceptor surface (ADR-228). D6-B delegation-seam ruling: removing IS
23
+ * a take (it re-implements taking's mutation and emits `if.event.taken`),
24
+ * so the item is consulted under BOTH ids — `if.action.removing` first
25
+ * (the specific phrasing), then `if.action.taking`. A taking-guard (the
26
+ * TrollAxe class) can therefore never be bypassed by REMOVE FROM
27
+ * phrasing. Authors: one physical operation fires hooks under two ids —
28
+ * register a trait's interceptor under exactly ONE of them to avoid
29
+ * double-mutation. The source container/supporter is consulted under
30
+ * `if.action.removing` per D3-B (all command entities fire).
31
+ */
32
+ export declare const removingLifecycle: ActionLifecycleDescriptor;
20
33
  export declare const removingAction: Action & {
21
34
  metadata: ActionMetadata;
22
35
  };
@@ -1 +1 @@
1
- {"version":3,"file":"removing.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/removing/removing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAmC,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAwTrD,eAAO,MAAM,cAAc,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,cAAc,CAAA;CAyL/D,CAAC"}
1
+ {"version":3,"file":"removing.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/removing/removing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAmC,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAyBrD,OAAO,EACL,yBAAyB,EAY1B,MAAM,iBAAiB,CAAC;AAEzB;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,EAAE,yBA4C/B,CAAC;AAwPF,eAAO,MAAM,cAAc,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,cAAc,CAAA;CAwO/D,CAAC"}
@@ -17,7 +17,7 @@
17
17
  * - "remove X and Y from box" - removes multiple specified items
18
18
  */
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.removingAction = void 0;
20
+ exports.removingAction = exports.removingLifecycle = void 0;
21
21
  const snapshot_utils_1 = require("../../base/snapshot-utils");
22
22
  const world_model_1 = require("@sharpee/world-model");
23
23
  const constants_1 = require("../../constants");
@@ -28,6 +28,63 @@ const removing_types_1 = require("./removing-types");
28
28
  // Import multi-object helpers
29
29
  const multi_object_handler_1 = require("../../../helpers/multi-object-handler");
30
30
  const utils_1 = require("../../../utils");
31
+ const lifecycle_1 = require("../../lifecycle");
32
+ /**
33
+ * Interceptor surface (ADR-228). D6-B delegation-seam ruling: removing IS
34
+ * a take (it re-implements taking's mutation and emits `if.event.taken`),
35
+ * so the item is consulted under BOTH ids — `if.action.removing` first
36
+ * (the specific phrasing), then `if.action.taking`. A taking-guard (the
37
+ * TrollAxe class) can therefore never be bypassed by REMOVE FROM
38
+ * phrasing. Authors: one physical operation fires hooks under two ids —
39
+ * register a trait's interceptor under exactly ONE of them to avoid
40
+ * double-mutation. The source container/supporter is consulted under
41
+ * `if.action.removing` per D3-B (all command entities fire).
42
+ */
43
+ exports.removingLifecycle = {
44
+ actionId: constants_1.IFActions.REMOVING,
45
+ slots: [
46
+ {
47
+ id: 'item',
48
+ actionIds: [constants_1.IFActions.REMOVING, constants_1.IFActions.TAKING],
49
+ resolve: (ctx) => ctx.command.directObject?.entity,
50
+ seedData: (ctx, entity) => ({
51
+ itemId: entity.id,
52
+ itemName: entity.name,
53
+ sourceId: ctx.command.indirectObject?.entity?.id,
54
+ sourceName: ctx.command.indirectObject?.entity?.name
55
+ })
56
+ },
57
+ {
58
+ id: 'source',
59
+ actionIds: [constants_1.IFActions.REMOVING],
60
+ resolve: (ctx) => ctx.command.indirectObject?.entity,
61
+ seedData: (ctx, entity, multiObjectItem) => {
62
+ const item = multiObjectItem ?? ctx.command.directObject?.entity;
63
+ return {
64
+ itemId: item?.id,
65
+ itemName: item?.name,
66
+ sourceId: entity.id,
67
+ sourceName: entity.name
68
+ };
69
+ }
70
+ },
71
+ {
72
+ // ADR-230 Phase 6 (sketch ruling 6): `take X from Y with Z` remapped
73
+ // from the orphan if.action.taking_with onto removing; the explicit
74
+ // tool is consultable (D3b treatment, interceptor-only — no trait
75
+ // requirement). Published order item → source → tool.
76
+ id: 'tool',
77
+ actionIds: [constants_1.IFActions.REMOVING],
78
+ resolve: (ctx) => ctx.command.instrument?.entity,
79
+ seedData: (ctx, entity) => ({
80
+ toolId: entity.id,
81
+ toolName: entity.name,
82
+ itemId: ctx.command.directObject?.entity?.id,
83
+ sourceId: ctx.command.indirectObject?.entity?.id
84
+ })
85
+ }
86
+ ]
87
+ };
31
88
  // ============================================================================
32
89
  // Helper Functions (standalone to avoid `this` issues in object literal)
33
90
  // ============================================================================
@@ -119,23 +176,10 @@ function validateSingleEntity(context, item, source) {
119
176
  return { valid: true };
120
177
  }
121
178
  /**
122
- * Validate a multi-object command (remove all from box, remove X and Y from box)
179
+ * Expand the multi-object item list for "remove all/X and Y from Z" —
180
+ * removing resolves its items from the SOURCE's contents, not from scope.
123
181
  */
124
- function validateMultiObject(context) {
125
- const source = context.command.indirectObject?.entity;
126
- // Must have a source
127
- if (!source) {
128
- return { valid: false, error: removing_messages_1.RemovingMessages.NO_SOURCE };
129
- }
130
- // Container must be open if it's openable
131
- if (source.has(world_model_1.TraitType.CONTAINER) && source.has(world_model_1.TraitType.OPENABLE) && !world_model_1.OpenableBehavior.isOpen(source)) {
132
- return {
133
- valid: false,
134
- error: removing_messages_1.RemovingMessages.CONTAINER_CLOSED,
135
- params: { container: (0, utils_1.nounPhraseFor)(source) }
136
- };
137
- }
138
- // Get items from source - for "remove all from X" we need contents of X
182
+ function expandRemovableItems(context, source) {
139
183
  const directObject = context.command.parsed.structure.directObject;
140
184
  let items;
141
185
  if (directObject?.isAll) {
@@ -165,34 +209,14 @@ function validateMultiObject(context) {
165
209
  else {
166
210
  items = [];
167
211
  }
168
- if (items.length === 0) {
169
- return { valid: false, error: removing_messages_1.RemovingMessages.NOTHING_TO_REMOVE };
170
- }
171
- // Validate each entity, store results
172
- const results = items.map(item => {
173
- const validation = validateSingleEntity(context, item, source);
174
- return {
175
- entity: item,
176
- success: validation.valid,
177
- error: validation.valid ? undefined : validation.error,
178
- errorParams: validation.valid ? undefined : validation.params
179
- };
180
- });
181
- // Store results for execute/report phases
182
- const sharedData = (0, removing_types_1.getRemovingSharedData)(context);
183
- sharedData.multiObjectResults = results;
184
- // Valid if at least one can be removed
185
- const anySuccess = results.some(r => r.success);
186
- if (!anySuccess) {
187
- // All failed - return the first error
188
- return { valid: false, error: results[0].error, params: results[0].errorParams };
189
- }
190
- return { valid: true };
212
+ return items;
191
213
  }
192
214
  /**
193
- * Execute removing a single entity from source
215
+ * Execute removing a single entity from source. Mutation results are
216
+ * written into `scratch` — the single-object sharedData or the item's
217
+ * multi-object itemData (ADR-228 D4).
194
218
  */
195
- function executeSingleEntity(context, item, source, result) {
219
+ function executeSingleEntity(context, item, source, scratch) {
196
220
  const actor = context.player;
197
221
  // First validate removal from source using appropriate behavior
198
222
  let removeResult = null;
@@ -202,10 +226,10 @@ function executeSingleEntity(context, item, source, result) {
202
226
  else if (source.has(world_model_1.TraitType.SUPPORTER)) {
203
227
  removeResult = world_model_1.SupporterBehavior.removeItem(source, item, context.world);
204
228
  }
205
- result.removeResult = removeResult;
229
+ scratch.removeResult = removeResult;
206
230
  // Validate taking using ActorBehavior
207
231
  const takeResult = world_model_1.ActorBehavior.takeItem(actor, item, context.world);
208
- result.takeResult = takeResult;
232
+ scratch.takeResult = takeResult;
209
233
  // Perform the actual move - this is the critical mutation!
210
234
  context.world.moveEntity(item.id, actor.id);
211
235
  }
@@ -214,7 +238,7 @@ function executeSingleEntity(context, item, source, result) {
214
238
  *
215
239
  * Uses simplified event pattern (ADR-097): domain event carries messageId directly.
216
240
  */
217
- function reportSingleSuccess(context, item, source, result, events) {
241
+ function reportSingleSuccess(context, item, source, _scratch, events) {
218
242
  const actor = context.player;
219
243
  // Build message params — EntityInfo for the formatter chain (ADR-158)
220
244
  const params = {
@@ -295,13 +319,34 @@ exports.removingAction = {
295
319
  directObjectScope: scope_1.ScopeLevel.REACHABLE
296
320
  },
297
321
  validate(context) {
298
- // Check for multi-object command
322
+ const source = context.command.indirectObject?.entity;
323
+ // Check for multi-object command — full per-item lifecycle (ADR-228 D4)
299
324
  if ((0, multi_object_handler_1.isMultiObjectCommand)(context)) {
300
- return validateMultiObject(context);
325
+ // Must have a source
326
+ if (!source) {
327
+ return { valid: false, error: removing_messages_1.RemovingMessages.NO_SOURCE };
328
+ }
329
+ // Container must be open if it's openable
330
+ if (source.has(world_model_1.TraitType.CONTAINER) && source.has(world_model_1.TraitType.OPENABLE) && !world_model_1.OpenableBehavior.isOpen(source)) {
331
+ return {
332
+ valid: false,
333
+ error: removing_messages_1.RemovingMessages.CONTAINER_CLOSED,
334
+ params: { container: (0, utils_1.nounPhraseFor)(source) }
335
+ };
336
+ }
337
+ const items = expandRemovableItems(context, source);
338
+ if (items.length === 0) {
339
+ return { valid: false, error: removing_messages_1.RemovingMessages.NOTHING_TO_REMOVE };
340
+ }
341
+ const results = (0, lifecycle_1.runMultiObjectValidate)(context, exports.removingLifecycle, 'item', items, (ctx, item) => validateSingleEntity(ctx, item, source));
342
+ // Valid if at least one can be removed; all-fail returns the first error
343
+ if (!results.some(r => r.success)) {
344
+ return { valid: false, error: results[0].error, params: results[0].errorParams };
345
+ }
346
+ return { valid: true };
301
347
  }
302
348
  // Single object validation
303
349
  const item = context.command.directObject?.entity;
304
- const source = context.command.indirectObject?.entity;
305
350
  // Validate we have an item
306
351
  if (!item) {
307
352
  return {
@@ -318,59 +363,52 @@ exports.removingAction = {
318
363
  params: { item: (0, utils_1.nounPhraseFor)(item) }
319
364
  };
320
365
  }
321
- return validateSingleEntity(context, item, source);
366
+ const state = (0, lifecycle_1.resolveLifecycle)(context, exports.removingLifecycle);
367
+ const preVeto = (0, lifecycle_1.runPreValidate)(context, state);
368
+ if (preVeto)
369
+ return preVeto;
370
+ const standard = validateSingleEntity(context, item, source);
371
+ if (!standard.valid)
372
+ return standard;
373
+ // Canonical placement (ADR-228): postValidate runs after ALL standard validation
374
+ const postVeto = (0, lifecycle_1.runPostValidate)(context, state);
375
+ if (postVeto)
376
+ return postVeto;
377
+ return { valid: true };
322
378
  },
323
379
  execute(context) {
324
- const sharedData = (0, removing_types_1.getRemovingSharedData)(context);
325
380
  const source = context.command.indirectObject.entity;
326
- // Check for multi-object command
327
- if (sharedData.multiObjectResults) {
328
- // Execute for each successful validation
329
- for (const result of sharedData.multiObjectResults) {
330
- if (result.success) {
331
- executeSingleEntity(context, result.entity, source, result);
332
- }
333
- }
381
+ // Multi-object command: per-item execute + hooks (D4)
382
+ const multi = (0, lifecycle_1.getMultiObjectLifecycle)(context);
383
+ if (multi) {
384
+ (0, lifecycle_1.runMultiObjectExecute)(context, multi, (ctx, item, itemData) => {
385
+ executeSingleEntity(ctx, item, source, itemData);
386
+ });
334
387
  return;
335
388
  }
336
389
  // Single object execution
337
- const actor = context.player;
390
+ const sharedData = (0, removing_types_1.getRemovingSharedData)(context);
338
391
  const item = context.command.directObject.entity;
339
- // First validate removal from source using appropriate behavior
340
- let removeResult = null;
341
- if (source.has(world_model_1.TraitType.CONTAINER)) {
342
- removeResult = world_model_1.ContainerBehavior.removeItem(source, item, context.world);
343
- }
344
- else if (source.has(world_model_1.TraitType.SUPPORTER)) {
345
- removeResult = world_model_1.SupporterBehavior.removeItem(source, item, context.world);
346
- }
347
- // Store results for report phase using sharedData
348
- sharedData.removeResult = removeResult;
349
- // Validate taking using ActorBehavior
350
- const takeResult = world_model_1.ActorBehavior.takeItem(actor, item, context.world);
351
- sharedData.takeResult = takeResult;
352
- // Perform the actual move - this is the critical mutation!
353
- context.world.moveEntity(item.id, actor.id);
392
+ executeSingleEntity(context, item, source, sharedData);
393
+ const state = (0, lifecycle_1.getLifecycleState)(context);
394
+ if (state)
395
+ (0, lifecycle_1.runPostExecute)(context, state);
354
396
  },
355
397
  /**
356
398
  * Report events after successful removing
357
399
  * Only called on success path - validation passed
358
400
  */
359
401
  report(context) {
360
- const sharedData = (0, removing_types_1.getRemovingSharedData)(context);
361
402
  const source = context.command.indirectObject.entity;
362
- // Check for multi-object command
363
- if (sharedData.multiObjectResults) {
403
+ // Multi-object command: per-item success/blocked events + hooks (D4)
404
+ const multi = (0, lifecycle_1.getMultiObjectLifecycle)(context);
405
+ if (multi) {
364
406
  const events = [];
365
- // Generate events for each item (success and failure)
366
- for (const result of sharedData.multiObjectResults) {
367
- if (result.success) {
368
- reportSingleSuccess(context, result.entity, source, result, events);
369
- }
370
- else {
371
- reportSingleBlocked(context, result.entity, source, result.error, result.errorParams, events);
372
- }
373
- }
407
+ (0, lifecycle_1.runMultiObjectReport)(context, multi, events, 'if.event.taken', 'if.event.remove_blocked', (ctx, item, itemData, evts) => {
408
+ reportSingleSuccess(ctx, item, source, itemData, evts);
409
+ }, (ctx, item, error, errorParams, evts) => {
410
+ reportSingleBlocked(ctx, item, source, error, errorParams, evts);
411
+ });
374
412
  return events;
375
413
  }
376
414
  // Single object report
@@ -390,7 +428,7 @@ exports.removingAction = {
390
428
  messageKey = removing_messages_1.RemovingMessages.REMOVED_FROM_SURFACE;
391
429
  }
392
430
  // Emit domain event with messageId (simplified pattern - ADR-097)
393
- return [
431
+ const events = [
394
432
  context.event('if.event.taken', {
395
433
  // Rendering data (messageId + params for text-service)
396
434
  messageId: `${context.action.id}.${messageKey}`,
@@ -408,6 +446,10 @@ exports.removingAction = {
408
446
  sourceSnapshot: (0, snapshot_utils_1.captureEntitySnapshot)(source, context.world, source.has(world_model_1.TraitType.ROOM))
409
447
  })
410
448
  ];
449
+ const state = (0, lifecycle_1.getLifecycleState)(context);
450
+ if (state)
451
+ (0, lifecycle_1.runPostReport)(context, state, events, 'if.event.taken');
452
+ return events;
411
453
  },
412
454
  /**
413
455
  * Generate events when validation fails
@@ -417,7 +459,7 @@ exports.removingAction = {
417
459
  blocked(context, result) {
418
460
  const item = context.command.directObject?.entity;
419
461
  const source = context.command.indirectObject?.entity;
420
- return [context.event('if.event.remove_blocked', {
462
+ const events = [context.event('if.event.remove_blocked', {
421
463
  // Rendering data — EntityInfo for the formatter chain (ADR-158)
422
464
  messageId: `${context.action.id}.${result.error}`,
423
465
  params: {
@@ -432,6 +474,23 @@ exports.removingAction = {
432
474
  sourceName: source?.name,
433
475
  reason: result.error
434
476
  })];
477
+ if (result.error) {
478
+ const state = (0, lifecycle_1.getLifecycleState)(context);
479
+ if (state) {
480
+ // Single-object path: notify all consultations (ADR-228 D2/D3)
481
+ (0, lifecycle_1.runOnBlocked)(context, state, events, 'if.event.remove_blocked', result.error);
482
+ }
483
+ else {
484
+ // Multi-object all-fail path: first failed item's consultations only
485
+ // (taking's pattern — the blocked event carries that item's error).
486
+ const multi = (0, lifecycle_1.getMultiObjectLifecycle)(context);
487
+ const first = multi?.[0];
488
+ if (first && !first.success) {
489
+ (0, lifecycle_1.runOnBlocked)(context, first.state, events, 'if.event.remove_blocked', first.error ?? result.error);
490
+ }
491
+ }
492
+ }
493
+ return events;
435
494
  }
436
495
  };
437
496
  //# sourceMappingURL=removing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"removing.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/removing/removing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"removing.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/removing/removing.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAKH,8DAAkE;AAClE,sDAU8B;AAC9B,+CAA4C;AAC5C,0CAA4C;AAE5C,2DAAuD;AAEvD,eAAe;AACf,qDAA8E;AAE9E,8BAA8B;AAC9B,gFAA+F;AAC/F,0CAA+C;AAC/C,+CAayB;AAEzB;;;;;;;;;;GAUG;AACU,QAAA,iBAAiB,GAA8B;IAC1D,QAAQ,EAAE,qBAAS,CAAC,QAAQ;IAC5B,KAAK,EAAE;QACL;YACE,EAAE,EAAE,MAAM;YACV,SAAS,EAAE,CAAC,qBAAS,CAAC,QAAQ,EAAE,qBAAS,CAAC,MAAM,CAAC;YACjD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM;YAClD,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC1B,MAAM,EAAE,MAAM,CAAC,EAAE;gBACjB,QAAQ,EAAE,MAAM,CAAC,IAAI;gBACrB,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE;gBAChD,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI;aACrD,CAAC;SACH;QACD;YACE,EAAE,EAAE,QAAQ;YACZ,SAAS,EAAE,CAAC,qBAAS,CAAC,QAAQ,CAAC;YAC/B,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM;YACpD,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE;gBACzC,MAAM,IAAI,GAAG,eAAe,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC;gBACjE,OAAO;oBACL,MAAM,EAAE,IAAI,EAAE,EAAE;oBAChB,QAAQ,EAAE,IAAI,EAAE,IAAI;oBACpB,QAAQ,EAAE,MAAM,CAAC,EAAE;oBACnB,UAAU,EAAE,MAAM,CAAC,IAAI;iBACxB,CAAC;YACJ,CAAC;SACF;QACD;YACE,qEAAqE;YACrE,oEAAoE;YACpE,kEAAkE;YAClE,sDAAsD;YACtD,EAAE,EAAE,MAAM;YACV,SAAS,EAAE,CAAC,qBAAS,CAAC,QAAQ,CAAC;YAC/B,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM;YAChD,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC1B,MAAM,EAAE,MAAM,CAAC,EAAE;gBACjB,QAAQ,EAAE,MAAM,CAAC,IAAI;gBACrB,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE;gBAC5C,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE;aACjD,CAAC;SACH;KACF;CACF,CAAC;AAEF,+EAA+E;AAC/E,yEAAyE;AACzE,+EAA+E;AAE/E;;GAEG;AACH,SAAS,UAAU,CAAC,MAAgB;IAClC,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7C,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAChD,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,OAAsB,EAAE,MAAgB;IACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACtD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAC3B,OAAsB,EACtB,IAAc,EACd,MAAgB;IAEhB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAE7B,uCAAuC;IACvC,IAAI,2BAAa,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,oCAAgB,CAAC,YAAY;YACpC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;SACtC,CAAC;IACJ,CAAC;IAED,iDAAiD;IACjD,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC,YAAY,IAAI,YAAY,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC;QAChD,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACpC,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,oCAAgB,CAAC,gBAAgB;gBACxC,MAAM,EAAE;oBACN,IAAI,EAAE,IAAA,qBAAa,EAAC,IAAI,CAAC;oBACzB,SAAS,EAAE,IAAA,qBAAa,EAAC,MAAM,CAAC;iBACjC;aACF,CAAC;QACJ,CAAC;aAAM,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3C,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,oCAAgB,CAAC,cAAc;gBACtC,MAAM,EAAE;oBACN,IAAI,EAAE,IAAA,qBAAa,EAAC,IAAI,CAAC;oBACzB,OAAO,EAAE,IAAA,qBAAa,EAAC,MAAM,CAAC;iBAC/B;aACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,oCAAgB,CAAC,gBAAgB;gBACxC,MAAM,EAAE;oBACN,IAAI,EAAE,IAAA,qBAAa,EAAC,IAAI,CAAC;oBACzB,SAAS,EAAE,IAAA,qBAAa,EAAC,MAAM,CAAC;iBACjC;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,2CAA2C;IAC3C,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,6BAA6B;QAC7B,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,8BAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACvE,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,oCAAgB,CAAC,gBAAgB;gBACxC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAA,qBAAa,EAAC,MAAM,CAAC,EAAE;aAC7C,CAAC;QACJ,CAAC;IACH,CAAC;IAED,gDAAgD;IAChD,IAAI,CAAC,2BAAa,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,oCAAgB,CAAC,WAAW;YACnC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;SACtC,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,SAAS,oBAAoB,CAAC,OAAsB,EAAE,MAAgB;IACpE,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC;IACnE,IAAI,KAAiB,CAAC;IAEtB,IAAI,YAAY,EAAE,KAAK,EAAE,CAAC;QACxB,mDAAmD;QACnD,KAAK,GAAG,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAE3C,oCAAoC;QACpC,MAAM,aAAa,GAAG,IAAA,uCAAgB,EAAC,OAAO,CAAC,CAAC;QAChD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBACvB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAClC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,IAAI,YAAY,EAAE,MAAM,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;QACtD,mEAAmE;QACnE,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1D,KAAK,GAAG,EAAE,CAAC;QACX,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;YACpC,MAAM,UAAU,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YACtD,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,CAAC;YAC5E,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,EAAE,CAAC;IACb,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,OAAsB,EACtB,IAAc,EACd,MAAgB,EAChB,OAA4B;IAE5B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAE7B,gEAAgE;IAChE,IAAI,YAAY,GAA8D,IAAI,CAAC;IAEnF,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,YAAY,GAAG,+BAAiB,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;SAAM,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3C,YAAY,GAAG,+BAAiB,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC;IAEpC,sCAAsC;IACtC,MAAM,UAAU,GAAoB,2BAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACvF,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAEhC,2DAA2D;IAC3D,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,OAAsB,EACtB,IAAc,EACd,MAAgB,EAChB,QAA6B,EAC7B,MAAwB;IAExB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAE7B,sEAAsE;IACtE,MAAM,MAAM,GAAwB;QAClC,IAAI,EAAE,IAAA,qBAAa,EAAC,IAAI,CAAC;KAC1B,CAAC;IAEF,IAAI,UAAkB,CAAC;IACvB,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,MAAM,CAAC,SAAS,GAAG,IAAA,qBAAa,EAAC,MAAM,CAAC,CAAC;QACzC,UAAU,GAAG,oCAAgB,CAAC,YAAY,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,OAAO,GAAG,IAAA,qBAAa,EAAC,MAAM,CAAC,CAAC;QACvC,UAAU,GAAG,oCAAgB,CAAC,oBAAoB,CAAC;IACrD,CAAC;IAED,kEAAkE;IAClE,uEAAuE;IACvE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE;QAC1C,uDAAuD;QACvD,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,UAAU,EAAE;QAC/C,MAAM;QACN,8CAA8C;QAC9C,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,EAAE;QACf,OAAO,EAAE,KAAK,CAAC,EAAE;QACjB,YAAY,EAAE,MAAM,CAAC,EAAE;QACvB,SAAS,EAAE,MAAM,CAAC,IAAI;QACtB,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC;QAC9C,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC;QAClF,YAAY,EAAE,IAAA,sCAAqB,EAAC,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;QAC9D,aAAa,EAAE,IAAA,sCAAqB,EAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;QACjE,cAAc,EAAE,IAAA,sCAAqB,EAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,IAAI,CAAC,CAAC;KACzF,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,OAAsB,EACtB,IAAc,EACd,MAAgB,EAChB,KAAa,EACb,WAAgD,EAChD,MAAwB;IAExB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE;QACnD,gEAAgE;QAChE,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,EAAE;QAC1C,MAAM,EAAE,EAAE,GAAG,WAAW,EAAE,IAAI,EAAE,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAA,qBAAa,EAAC,MAAM,CAAC,EAAE;QACpF,qCAAqC;QACrC,MAAM,EAAE,IAAI,CAAC,EAAE;QACf,QAAQ,EAAE,IAAI,CAAC,IAAI;QACnB,QAAQ,EAAE,MAAM,CAAC,EAAE;QACnB,UAAU,EAAE,MAAM,CAAC,IAAI;QACvB,MAAM,EAAE,KAAK;KACd,CAAC,CAAC,CAAC;AACN,CAAC;AAED,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAElE,QAAA,cAAc,GAA0C;IACnE,EAAE,EAAE,qBAAS,CAAC,QAAQ;IAEtB,qDAAqD;IACrD,YAAY,EAAE;QACZ,IAAI,EAAE,kBAAU,CAAC,SAAS;QAC1B,MAAM,EAAE,kBAAU,CAAC,SAAS;KAC7B;IAED,gBAAgB,EAAE;QAChB,WAAW;QACX,WAAW;QACX,kBAAkB;QAClB,gBAAgB;QAChB,kBAAkB;QAClB,cAAc;QACd,sBAAsB;QACtB,YAAY;QACZ,cAAc;QACd,mBAAmB;KACpB;IACD,KAAK,EAAE,qBAAqB;IAE5B,QAAQ,EAAE;QACR,oBAAoB,EAAE,IAAI;QAC1B,sBAAsB,EAAE,IAAI;QAC5B,iBAAiB,EAAE,kBAAU,CAAC,SAAS;KACxC;IAED,QAAQ,CAAC,OAAsB;QAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC;QAEtD,wEAAwE;QACxE,IAAI,IAAA,2CAAoB,EAAC,OAAO,CAAC,EAAE,CAAC;YAClC,qBAAqB;YACrB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,oCAAgB,CAAC,SAAS,EAAE,CAAC;YAC7D,CAAC;YAED,0CAA0C;YAC1C,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,8BAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1G,OAAO;oBACL,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAE,oCAAgB,CAAC,gBAAgB;oBACxC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAA,qBAAa,EAAC,MAAM,CAAC,EAAE;iBAC7C,CAAC;YACJ,CAAC;YAED,MAAM,KAAK,GAAG,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACpD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,oCAAgB,CAAC,iBAAiB,EAAE,CAAC;YACrE,CAAC;YAED,MAAM,OAAO,GAAG,IAAA,kCAAsB,EACpC,OAAO,EAAE,yBAAiB,EAAE,MAAM,EAAE,KAAK,EACzC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CACvD,CAAC;YAEF,yEAAyE;YACzE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YACnF,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACzB,CAAC;QAED,2BAA2B;QAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC;QAElD,2BAA2B;QAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,oCAAgB,CAAC,SAAS;gBACjC,MAAM,EAAE,EAAE;aACX,CAAC;QACJ,CAAC;QAED,4BAA4B;QAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,oCAAgB,CAAC,SAAS;gBACjC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;aACtC,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,IAAA,4BAAgB,EAAC,OAAO,EAAE,yBAAiB,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,IAAA,0BAAc,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC/C,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;QAE5B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7D,IAAI,CAAC,QAAQ,CAAC,KAAK;YAAE,OAAO,QAAQ,CAAC;QAErC,iFAAiF;QACjF,MAAM,QAAQ,GAAG,IAAA,2BAAe,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACjD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,OAAO,CAAC,OAAsB;QAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,cAAe,CAAC,MAAO,CAAC;QAEvD,sDAAsD;QACtD,MAAM,KAAK,GAAG,IAAA,mCAAuB,EAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,KAAK,EAAE,CAAC;YACV,IAAA,iCAAqB,EAAC,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC5D,mBAAmB,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,QAA+B,CAAC,CAAC;YAC1E,CAAC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,0BAA0B;QAC1B,MAAM,UAAU,GAAG,IAAA,sCAAqB,EAAC,OAAO,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,YAAa,CAAC,MAAO,CAAC;QAEnD,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAEvD,MAAM,KAAK,GAAG,IAAA,6BAAiB,EAAC,OAAO,CAAC,CAAC;QACzC,IAAI,KAAK;YAAE,IAAA,0BAAc,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,OAAsB;QAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,cAAe,CAAC,MAAO,CAAC;QAEvD,qEAAqE;QACrE,MAAM,KAAK,GAAG,IAAA,mCAAuB,EAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,MAAM,GAAqB,EAAE,CAAC;YACpC,IAAA,gCAAoB,EAClB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,yBAAyB,EACnE,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;gBAC5B,mBAAmB,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,QAA+B,EAAE,IAAI,CAAC,CAAC;YAChF,CAAC,EACD,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE;gBACtC,mBAAmB,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;YACnE,CAAC,CACF,CAAC;YACF,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,uBAAuB;QACvB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,YAAa,CAAC,MAAO,CAAC;QAEnD,sEAAsE;QACtE,MAAM,MAAM,GAAwB;YAClC,IAAI,EAAE,IAAA,qBAAa,EAAC,IAAI,CAAC;SAC1B,CAAC;QAEF,IAAI,UAAkB,CAAC;QACvB,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACpC,MAAM,CAAC,SAAS,GAAG,IAAA,qBAAa,EAAC,MAAM,CAAC,CAAC;YACzC,UAAU,GAAG,oCAAgB,CAAC,YAAY,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,GAAG,IAAA,qBAAa,EAAC,MAAM,CAAC,CAAC;YACvC,UAAU,GAAG,oCAAgB,CAAC,oBAAoB,CAAC;QACrD,CAAC;QAED,kEAAkE;QAClE,MAAM,MAAM,GAAqB;YAC/B,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE;gBAC9B,uDAAuD;gBACvD,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,UAAU,EAAE;gBAC/C,MAAM;gBACN,8CAA8C;gBAC9C,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,YAAY,EAAE,MAAM,CAAC,EAAE;gBACvB,SAAS,EAAE,MAAM,CAAC,IAAI;gBACtB,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC;gBAC9C,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC;gBAClF,YAAY,EAAE,IAAA,sCAAqB,EAAC,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;gBAC9D,aAAa,EAAE,IAAA,sCAAqB,EAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;gBACjE,cAAc,EAAE,IAAA,sCAAqB,EAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,IAAI,CAAC,CAAC;aACzF,CAAC;SACH,CAAC;QAEF,MAAM,KAAK,GAAG,IAAA,6BAAiB,EAAC,OAAO,CAAC,CAAC;QACzC,IAAI,KAAK;YAAE,IAAA,yBAAa,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAEnE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,OAAsB,EAAE,MAAwB;QACtD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC;QAClD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC;QAEtD,MAAM,MAAM,GAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE;gBACzE,gEAAgE;gBAChE,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,EAAE;gBACjD,MAAM,EAAE;oBACN,GAAG,MAAM,CAAC,MAAM;oBAChB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAA,qBAAa,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;oBAC5C,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAA,qBAAa,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;iBACnD;gBACD,qCAAqC;gBACrC,MAAM,EAAE,IAAI,EAAE,EAAE;gBAChB,QAAQ,EAAE,IAAI,EAAE,IAAI;gBACpB,QAAQ,EAAE,MAAM,EAAE,EAAE;gBACpB,UAAU,EAAE,MAAM,EAAE,IAAI;gBACxB,MAAM,EAAE,MAAM,CAAC,KAAK;aACrB,CAAC,CAAC,CAAC;QAEJ,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,IAAA,6BAAiB,EAAC,OAAO,CAAC,CAAC;YACzC,IAAI,KAAK,EAAE,CAAC;gBACV,+DAA+D;gBAC/D,IAAA,wBAAY,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YAChF,CAAC;iBAAM,CAAC;gBACN,qEAAqE;gBACrE,oEAAoE;gBACpE,MAAM,KAAK,GAAG,IAAA,mCAAuB,EAAC,OAAO,CAAC,CAAC;gBAC/C,MAAM,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oBAC5B,IAAA,wBAAY,EAAC,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,yBAAyB,EAAE,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;gBACrG,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAC"}
@@ -9,9 +9,19 @@
9
9
  * 2. execute: Analyze contents, reveal concealed items (mutation)
10
10
  * 3. blocked: Generate events when validation fails
11
11
  * 4. report: Generate success events
12
+ *
13
+ * Interceptor consultation (ADR-118) runs through the shared lifecycle
14
+ * engine (ADR-228) via `searchingLifecycle` — no hand-rolled hook plumbing.
12
15
  */
13
16
  import { Action } from '../../enhanced-types';
14
17
  import { ActionMetadata } from '../../../validation';
18
+ import { ActionLifecycleDescriptor } from '../../lifecycle';
19
+ /**
20
+ * Interceptor surface (ADR-228): the searched target is the only
21
+ * consultable entity of a SEARCH command (a bare SEARCH of the current
22
+ * location has no consultable slot).
23
+ */
24
+ export declare const searchingLifecycle: ActionLifecycleDescriptor;
15
25
  export declare const searchingAction: Action & {
16
26
  metadata: ActionMetadata;
17
27
  };
@@ -1 +1 @@
1
- {"version":3,"file":"searching.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/searching/searching.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,MAAM,EAAmC,MAAM,sBAAsB,CAAC;AAQ/E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAuBrD,eAAO,MAAM,eAAe,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,cAAc,CAAA;CAmGhE,CAAC"}
1
+ {"version":3,"file":"searching.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/searching/searching.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAmC,MAAM,sBAAsB,CAAC;AAQ/E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AASrD,OAAO,EACL,yBAAyB,EAQ1B,MAAM,iBAAiB,CAAC;AAEzB;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,yBAShC,CAAC;AAeF,eAAO,MAAM,eAAe,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,cAAc,CAAA;CAoHhE,CAAC"}
@@ -10,14 +10,33 @@
10
10
  * 2. execute: Analyze contents, reveal concealed items (mutation)
11
11
  * 3. blocked: Generate events when validation fails
12
12
  * 4. report: Generate success events
13
+ *
14
+ * Interceptor consultation (ADR-118) runs through the shared lifecycle
15
+ * engine (ADR-228) via `searchingLifecycle` — no hand-rolled hook plumbing.
13
16
  */
14
17
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.searchingAction = void 0;
18
+ exports.searchingAction = exports.searchingLifecycle = void 0;
16
19
  const world_model_1 = require("@sharpee/world-model");
17
20
  const constants_1 = require("../../constants");
18
21
  const types_1 = require("../../../scope/types");
19
22
  const utils_1 = require("../../../utils");
20
23
  const searching_helpers_1 = require("../searching-helpers");
24
+ const lifecycle_1 = require("../../lifecycle");
25
+ /**
26
+ * Interceptor surface (ADR-228): the searched target is the only
27
+ * consultable entity of a SEARCH command (a bare SEARCH of the current
28
+ * location has no consultable slot).
29
+ */
30
+ exports.searchingLifecycle = {
31
+ actionId: constants_1.IFActions.SEARCHING,
32
+ slots: [
33
+ {
34
+ id: 'target',
35
+ actionIds: [constants_1.IFActions.SEARCHING],
36
+ resolve: (ctx) => ctx.command.directObject?.entity
37
+ }
38
+ ]
39
+ };
21
40
  function getSearchingSharedData(context) {
22
41
  return context.sharedData;
23
42
  }
@@ -47,12 +66,13 @@ exports.searchingAction = {
47
66
  },
48
67
  validate(context) {
49
68
  const target = context.command.directObject?.entity;
50
- // If no target, we'll search the current location (always valid)
51
- if (!target) {
52
- return { valid: true };
53
- }
54
- // Check if it's a container that needs to be open
55
- if (target.has(world_model_1.TraitType.CONTAINER) && target.has(world_model_1.TraitType.OPENABLE)) {
69
+ const state = (0, lifecycle_1.resolveLifecycle)(context, exports.searchingLifecycle);
70
+ const preVeto = (0, lifecycle_1.runPreValidate)(context, state);
71
+ if (preVeto)
72
+ return preVeto;
73
+ // If no target, we'll search the current location (always valid).
74
+ // The container-open check only applies to a targeted search.
75
+ if (target && target.has(world_model_1.TraitType.CONTAINER) && target.has(world_model_1.TraitType.OPENABLE)) {
56
76
  if (!world_model_1.OpenableBehavior.isOpen(target)) {
57
77
  return {
58
78
  valid: false,
@@ -61,6 +81,10 @@ exports.searchingAction = {
61
81
  };
62
82
  }
63
83
  }
84
+ // Canonical placement (ADR-228): postValidate runs after ALL standard validation
85
+ const postVeto = (0, lifecycle_1.runPostValidate)(context, state);
86
+ if (postVeto)
87
+ return postVeto;
64
88
  return { valid: true };
65
89
  },
66
90
  execute(context) {
@@ -79,10 +103,13 @@ exports.searchingAction = {
79
103
  sharedData.eventData = eventData;
80
104
  sharedData.messageId = messageId;
81
105
  sharedData.params = params;
106
+ const state = (0, lifecycle_1.getLifecycleState)(context);
107
+ if (state)
108
+ (0, lifecycle_1.runPostExecute)(context, state);
82
109
  },
83
110
  blocked(context, result) {
84
111
  const target = context.command.directObject?.entity;
85
- return [context.event('if.event.searched', {
112
+ const events = [context.event('if.event.searched', {
86
113
  blocked: true,
87
114
  messageId: `${context.action.id}.${result.error}`,
88
115
  // params carry EntityInfo for the formatter chain (ADR-158)
@@ -91,6 +118,12 @@ exports.searchingAction = {
91
118
  targetId: target?.id,
92
119
  targetName: target?.name
93
120
  })];
121
+ if (result.error) {
122
+ const state = (0, lifecycle_1.getLifecycleState)(context);
123
+ if (state)
124
+ (0, lifecycle_1.runOnBlocked)(context, state, events, 'if.event.searched', result.error);
125
+ }
126
+ return events;
94
127
  },
95
128
  report(context) {
96
129
  const events = [];
@@ -101,6 +134,9 @@ exports.searchingAction = {
101
134
  params: sharedData.params || {},
102
135
  ...sharedData.eventData
103
136
  }));
137
+ const state = (0, lifecycle_1.getLifecycleState)(context);
138
+ if (state)
139
+ (0, lifecycle_1.runPostReport)(context, state, events, 'if.event.searched');
104
140
  return events;
105
141
  },
106
142
  group: "sensory"
@@ -1 +1 @@
1
- {"version":3,"file":"searching.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/searching/searching.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"searching.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/searching/searching.ts"],"names":[],"mappings":"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"}