@scotthuang/agent-knock-knock 0.12.13 → 0.12.14

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 (144) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +5 -5
  3. package/dist/src/callback-cli-adapter.d.ts +9 -6
  4. package/dist/src/callback-cli-adapter.js +119 -30
  5. package/dist/src/callback-cli-adapter.js.map +1 -1
  6. package/dist/src/callback-outbox-policy.d.ts +39 -0
  7. package/dist/src/callback-outbox-policy.js +163 -6
  8. package/dist/src/callback-outbox-policy.js.map +1 -1
  9. package/dist/src/callback-outbox-service.d.ts +28 -1
  10. package/dist/src/callback-outbox-service.js +413 -82
  11. package/dist/src/callback-outbox-service.js.map +1 -1
  12. package/dist/src/callback-outbox-settlement.d.ts +14 -1
  13. package/dist/src/callback-outbox-settlement.js +151 -30
  14. package/dist/src/callback-outbox-settlement.js.map +1 -1
  15. package/dist/src/callback-route-authority.d.ts +59 -0
  16. package/dist/src/callback-route-authority.js +123 -0
  17. package/dist/src/callback-route-authority.js.map +1 -0
  18. package/dist/src/callback-transport.d.ts +134 -0
  19. package/dist/src/callback-transport.js +256 -0
  20. package/dist/src/callback-transport.js.map +1 -0
  21. package/dist/src/cli-core.js +17 -4
  22. package/dist/src/cli-core.js.map +1 -1
  23. package/dist/src/codex-lifecycle-compatibility.js +2 -1
  24. package/dist/src/codex-lifecycle-compatibility.js.map +1 -1
  25. package/dist/src/deferred-foreground-application-service.d.ts +18 -0
  26. package/dist/src/deferred-foreground-application-service.js +72 -0
  27. package/dist/src/deferred-foreground-application-service.js.map +1 -1
  28. package/dist/src/deferred-foreground-authority-cli-adapter.js +2 -1
  29. package/dist/src/deferred-foreground-authority-cli-adapter.js.map +1 -1
  30. package/dist/src/deferred-foreground-recovery-cli-adapter.d.ts +1 -1
  31. package/dist/src/deferred-foreground-recovery-cli-adapter.js +108 -37
  32. package/dist/src/deferred-foreground-recovery-cli-adapter.js.map +1 -1
  33. package/dist/src/deferred-foreground-recovery-service.d.ts +1 -1
  34. package/dist/src/deferred-foreground-recovery-service.js +10 -3
  35. package/dist/src/deferred-foreground-recovery-service.js.map +1 -1
  36. package/dist/src/deferred-foreground-transfer-policy.d.ts +1 -1
  37. package/dist/src/deferred-foreground-transfer-policy.js +3 -2
  38. package/dist/src/deferred-foreground-transfer-policy.js.map +1 -1
  39. package/dist/src/deferred-foreground-transfer.d.ts +17 -1
  40. package/dist/src/deferred-foreground-transfer.js +244 -35
  41. package/dist/src/deferred-foreground-transfer.js.map +1 -1
  42. package/dist/src/deferred-foreground-user-close.d.ts +18 -0
  43. package/dist/src/deferred-foreground-user-close.js +180 -0
  44. package/dist/src/deferred-foreground-user-close.js.map +1 -0
  45. package/dist/src/openclaw-callback-transport.d.ts +4 -1
  46. package/dist/src/openclaw-callback-transport.js +403 -10
  47. package/dist/src/openclaw-callback-transport.js.map +1 -1
  48. package/dist/src/openclaw-managed-callback-cli-adapter.d.ts +23 -0
  49. package/dist/src/openclaw-managed-callback-cli-adapter.js +77 -0
  50. package/dist/src/openclaw-managed-callback-cli-adapter.js.map +1 -0
  51. package/dist/src/openclaw-plugin-command-adapter.js +28 -31
  52. package/dist/src/openclaw-plugin-command-adapter.js.map +1 -1
  53. package/dist/src/openclaw-plugin-helpers.js +8 -0
  54. package/dist/src/openclaw-plugin-helpers.js.map +1 -1
  55. package/dist/src/openclaw-plugin-schemas.d.ts +20 -1
  56. package/dist/src/openclaw-plugin-schemas.js +26 -2
  57. package/dist/src/openclaw-plugin-schemas.js.map +1 -1
  58. package/dist/src/protocol.d.ts +3 -0
  59. package/dist/src/protocol.js +4 -0
  60. package/dist/src/protocol.js.map +1 -1
  61. package/dist/src/store.d.ts +9 -0
  62. package/dist/src/store.js +79 -1
  63. package/dist/src/store.js.map +1 -1
  64. package/dist/src/terminal-acceptance-cli-adapter.d.ts +2 -0
  65. package/dist/src/terminal-acceptance-cli-adapter.js +62 -12
  66. package/dist/src/terminal-acceptance-cli-adapter.js.map +1 -1
  67. package/dist/src/terminal-action-projection.d.ts +1 -2
  68. package/dist/src/terminal-action-projection.js +4 -5
  69. package/dist/src/terminal-action-projection.js.map +1 -1
  70. package/dist/src/terminal-agent-bridge.d.ts +82 -0
  71. package/dist/src/terminal-agent-bridge.js +539 -111
  72. package/dist/src/terminal-agent-bridge.js.map +1 -1
  73. package/dist/src/terminal-command-cli-adapter.d.ts +9 -0
  74. package/dist/src/terminal-command-cli-adapter.js +2130 -5
  75. package/dist/src/terminal-command-cli-adapter.js.map +1 -1
  76. package/dist/src/terminal-dispatch-application.d.ts +4 -1
  77. package/dist/src/terminal-dispatch-application.js +11 -2
  78. package/dist/src/terminal-dispatch-application.js.map +1 -1
  79. package/dist/src/terminal-dispatch-execution.js +3 -1
  80. package/dist/src/terminal-dispatch-execution.js.map +1 -1
  81. package/dist/src/terminal-dispatch-ledger-codec.d.ts +3 -0
  82. package/dist/src/terminal-dispatch-ledger-codec.js +46 -19
  83. package/dist/src/terminal-dispatch-ledger-codec.js.map +1 -1
  84. package/dist/src/terminal-dispatch-presenter.js +5 -3
  85. package/dist/src/terminal-dispatch-presenter.js.map +1 -1
  86. package/dist/src/terminal-dispatch-receipt.d.ts +3 -0
  87. package/dist/src/terminal-dispatch-receipt.js +15 -1
  88. package/dist/src/terminal-dispatch-receipt.js.map +1 -1
  89. package/dist/src/terminal-dispatch-recovery-cli-adapter.js +68 -7
  90. package/dist/src/terminal-dispatch-recovery-cli-adapter.js.map +1 -1
  91. package/dist/src/terminal-dispatch-recovery-service.d.ts +2 -0
  92. package/dist/src/terminal-dispatch-recovery-service.js +9 -0
  93. package/dist/src/terminal-dispatch-recovery-service.js.map +1 -1
  94. package/dist/src/terminal-identity-authority-cli-adapter.d.ts +2 -0
  95. package/dist/src/terminal-identity-authority-cli-adapter.js +30 -27
  96. package/dist/src/terminal-identity-authority-cli-adapter.js.map +1 -1
  97. package/dist/src/terminal-list-cli-adapter.d.ts +1 -0
  98. package/dist/src/terminal-list-cli-adapter.js +50 -31
  99. package/dist/src/terminal-list-cli-adapter.js.map +1 -1
  100. package/dist/src/terminal-list-renderer.d.ts +9 -1
  101. package/dist/src/terminal-list-renderer.js +219 -98
  102. package/dist/src/terminal-list-renderer.js.map +1 -1
  103. package/dist/src/terminal-maintenance-cli-adapter.js +253 -326
  104. package/dist/src/terminal-maintenance-cli-adapter.js.map +1 -1
  105. package/dist/src/terminal-monitor-application-service.d.ts +5 -0
  106. package/dist/src/terminal-monitor-application-service.js +5 -0
  107. package/dist/src/terminal-monitor-application-service.js.map +1 -1
  108. package/dist/src/terminal-monitor-cli-adapter.d.ts +25 -1
  109. package/dist/src/terminal-monitor-cli-adapter.js +170 -27
  110. package/dist/src/terminal-monitor-cli-adapter.js.map +1 -1
  111. package/dist/src/terminal-monitor-reconciliation-eligibility.d.ts +1 -1
  112. package/dist/src/terminal-monitor-reconciliation-eligibility.js +220 -32
  113. package/dist/src/terminal-monitor-reconciliation-eligibility.js.map +1 -1
  114. package/dist/src/terminal-monitor-state-cli-adapter.d.ts +1 -1
  115. package/dist/src/terminal-monitor-state-cli-adapter.js +808 -147
  116. package/dist/src/terminal-monitor-state-cli-adapter.js.map +1 -1
  117. package/dist/src/terminal-monitor-state-reconciliation-service.d.ts +2 -1
  118. package/dist/src/terminal-monitor-state-reconciliation-service.js +12 -0
  119. package/dist/src/terminal-monitor-state-reconciliation-service.js.map +1 -1
  120. package/dist/src/terminal-monitor-supervision-cli-adapter.d.ts +2 -0
  121. package/dist/src/terminal-monitor-supervision-cli-adapter.js +31 -11
  122. package/dist/src/terminal-monitor-supervision-cli-adapter.js.map +1 -1
  123. package/dist/src/terminal-status-cli-adapter.d.ts +1 -0
  124. package/dist/src/terminal-status-cli-adapter.js +30 -28
  125. package/dist/src/terminal-status-cli-adapter.js.map +1 -1
  126. package/dist/src/terminal-submission-acceptance.js +78 -25
  127. package/dist/src/terminal-submission-acceptance.js.map +1 -1
  128. package/dist/src/terminal-submission-retry-service.d.ts +114 -0
  129. package/dist/src/terminal-submission-retry-service.js +589 -0
  130. package/dist/src/terminal-submission-retry-service.js.map +1 -0
  131. package/dist/src/terminal-watch-callback-cli-adapter.d.ts +10 -2
  132. package/dist/src/terminal-watch-callback-cli-adapter.js +76 -37
  133. package/dist/src/terminal-watch-callback-cli-adapter.js.map +1 -1
  134. package/dist/src/terminal-watch-cli-adapter.js +41 -17
  135. package/dist/src/terminal-watch-cli-adapter.js.map +1 -1
  136. package/dist/src/terminal-watch-service.d.ts +11 -6
  137. package/dist/src/terminal-watch-service.js +210 -41
  138. package/dist/src/terminal-watch-service.js.map +1 -1
  139. package/dist/src/terminal-watch-store.d.ts +23 -0
  140. package/dist/src/terminal-watch-store.js +162 -4
  141. package/dist/src/terminal-watch-store.js.map +1 -1
  142. package/docs/quickstart-tmux.md +1 -1
  143. package/package.json +1 -1
  144. package/templates/openclaw-skills/agent-knock-knock/SKILL.md +8 -5
@@ -11,7 +11,8 @@ const NO_AVAILABLE_LIST_ACTION_FACTS = {
11
11
  terminalBridgeReady: false,
12
12
  managedApprovalPending: false,
13
13
  renewEligible: false,
14
- retryCallbackEligible: false
14
+ retryCallbackEligible: false,
15
+ retrySubmissionCandidate: false
15
16
  };
16
17
  export function renderManagedTurnListEntry(task, { terminalBridge = false, approvalState, actionFacts = NO_AVAILABLE_LIST_ACTION_FACTS } = {}) {
17
18
  const sessionId = stringValue(task.session_id) ??
@@ -52,10 +53,11 @@ export function listActionContracts() {
52
53
  "Read-only native-thread listing targets an exact terminal_id. Native-thread new/resume mutations use terminal_id and, for resume, one complete native_thread_id; AKK resolves and revalidates current lifecycle authority internally. They never create a Turn.",
53
54
  "Native inspection is a separate terminal action: use only its closed inspection enum and current exact terminal_id. AKK resolves current lifecycle authority internally, and AKK status does not execute a native slash command.",
54
55
  "Terminal Watch observes one exact human-started active task without sending terminal input or creating an AKK Session or Turn. Start it only from terminals[].available_actions.watch, pass that action's exact terminal_id, and use watch_id for later status or unwatch operations. AKK refreshes and revalidates current observation authority internally.",
55
- "A verified, idle human native-thread switch may expose a terminal-scoped send; that action atomically adopts the live context before creating its Turn. A conclusively ended Codex rollout may expose the same snapshot-bound operation only after AKK proves zero current rollout and an exact empty composer; it detaches the ended Session and creates an isolated virgin Session. A status-card-only zero-rollout source or any otherwise eligible quiescent rollout-backed source with a complete nonempty pinned open-rollout inventory may also expose this exact action. One materialized rollout does not prove the current Codex TUI foreground thread, and a /clear resume hint is diagnostic only. AKK freezes any released predecessor Turn history, submits the ordinary task once, and binds a separate provisional Session only after one post-anchor rollout uniquely accepts that exact request. The accepted UUID may equal or differ from the predecessor without merging their Session lineages, and narrow panes do not require /status. Until that promotion commits, strict session_id send, respond, approve, cancel, native lifecycle, and native_inspect remain unavailable, and the provisional binding has no callback authority. If dispatch, acceptance, or post-submit binding is uncertain, do not retry automatically. An explicitly closed uncertain Turn may authorize only a future candidate send when its exact resolved close ledger, append-only uncertain receipt, frozen predecessor history, and complete current rollout inventory prove that the old bound rollout is absent and every candidate is unclaimed; close never forges the lost callback, and uncertain submissions cannot be renewed. Other binding conflicts remain fail-closed and may expose only exact low-level reconcile_binding recovery.",
56
+ "A verified, idle human native-thread switch may expose a terminal-scoped send; that action atomically adopts the live context before creating its Turn. A conclusively ended Codex rollout may expose the same snapshot-bound operation only after AKK proves zero current rollout and an exact empty composer; it detaches the ended Session and creates an isolated virgin Session. A status-card-only zero-rollout source or any otherwise eligible quiescent rollout-backed source with a complete nonempty pinned open-rollout inventory may also expose this exact action. One materialized rollout does not prove the current Codex TUI foreground thread, and a /clear resume hint is diagnostic only. AKK freezes any released predecessor Turn history, submits the ordinary task once, and binds a separate provisional Session only after one post-anchor rollout uniquely accepts that exact request. The accepted UUID may equal or differ from the predecessor without merging their Session lineages, and narrow panes do not require /status. Until that promotion commits, strict session_id send, respond, approve, cancel, native lifecycle, and native_inspect remain unavailable, and the provisional binding has no callback authority. If dispatch, acceptance, or post-submit binding is uncertain, do not retry automatically. Explicit Close always honors the user's decision to release AKK management of the selected Turn; it sends no terminal input, never stops the coding agent or pane, and reports best-effort cleanup warnings without vetoing the Close. Refresh list afterward and use Watch when the coding agent is still working. Other input-producing binding actions remain fail-closed.",
56
57
  "List resumable threads before resume; use only a complete native_thread_id and the action returned for that candidate.",
57
58
  "Structured follow-current actions use only the exact terminal_id prefilled by that terminal row. Human slash commands may use an explicitly named discovery selector. AKK resolves and revalidates current action authority internally; never infer or guess a target.",
58
59
  "Use respond only for an in-flight turn that is explicitly waiting for OpenClaw.",
60
+ "Retry submission is never automatic. Only when the current exact Turn exposes available_actions.retry_submission, ask for explicit user confirmation and call its prefilled agent_knock_knock_send {turn_id} form unchanged. It never accepts replacement text or caller-selected terminal, Session, timeout, or callback route data, and execution revalidates the durable submission and live terminal under lock before any input.",
59
61
  "Manual approval binds the exact prompt the user reviewed. After explicit confirmation, call only the currently advertised approve action; AKK keeps the prompt authority private and recaptures the exact terminal, process, request, and prompt before sending a decision key. A prompt without complete exact evidence is not approvable.",
60
62
  "Managed controls target turn_id. A raw terminal may be controlled only through its own list-prefilled conversation_id action. When a Codex managed prompt has no usable AKK Turn owner, list may expose one manual terminal-scoped approve action after exact observation. It does not mutate the Turn or Session binding, has no durable dispatch receipt, and is never eligible for automatic approval. If its result is interrupted, refresh status and inspect the live prompt instead of retrying blindly.",
61
63
  "Start with the action's prefilled arguments, supply every missing_required field, and consult the top-level action's optional fields only when needed.",
@@ -104,7 +106,7 @@ export function listActionContracts() {
104
106
  after_success: "refresh list before using a follow-current send action"
105
107
  },
106
108
  blocking_turns: {
107
- meaning: "terminal-incarnation-wide collateral unresolved managed Turns that suppress send, lifecycle, and native-inspection actions; an active human-handoff source Turn is never listed here and remains governed only by handoff_decision",
109
+ meaning: "terminal-incarnation-wide unresolved managed Turns that suppress send, lifecycle, and native-inspection actions; each exact Turn remains explicitly closable even during a deferred transfer or human handoff",
108
110
  authoritative_action_path: "terminals[].blocking_turns[].recovery_action",
109
111
  requires_explicit_user_confirmation: true,
110
112
  after_success: "refresh list before using any terminal action"
@@ -137,9 +139,22 @@ export function listActionContracts() {
137
139
  ],
138
140
  unsupported: ["timeoutSeconds"],
139
141
  status_card_only_deferred_scope: "A zero-Turn Codex status-card binding has no rollout; only its listed follow-current send creates an isolated provisional Session and binds it after exact request acceptance. Until promotion commits, strict managed controls, native lifecycle, native_inspect, and callback authority remain unavailable; an uncertain dispatch, acceptance, or post-submit binding must not be retried automatically.",
140
- candidate_rollout_deferred_scope: "A quiescent rollout-backed Codex source uses a listed follow-current send whenever AKK can pin a complete nonempty candidate inventory. Inventory status resolved means only that one rollout is materialized; it does not prove the current TUI foreground thread. Released predecessor Turn history stays read-only while a separate provisional Session sends once and waits for one unique post-anchor request acceptance. A /clear resume hint is diagnostic only and is not routing authority. Same-UUID and different-UUID results keep separate Session lineages; zero, multiple, drifted, or uncertain acceptance is never retried blindly. Explicit close can abandon an uncertain receipt for future-send liveness only while the exact resolved close ledger, append-only receipt, frozen history, absent old rollout, and unclaimed candidate set remain authoritative; it never synthesizes callback delivery.",
142
+ candidate_rollout_deferred_scope: "A quiescent rollout-backed Codex source uses a listed follow-current send whenever AKK can pin a complete nonempty candidate inventory. Inventory status resolved means only that one rollout is materialized; it does not prove the current TUI foreground thread. Released predecessor Turn history stays read-only while a separate provisional Session sends once and waits for one unique post-anchor request acceptance. A /clear resume hint is diagnostic only and is not routing authority. Same-UUID and different-UUID results keep separate Session lineages; zero, multiple, drifted, or uncertain acceptance is never retried blindly. Explicit Close is the user-owned escape hatch: it closes the AKK Turn first, then best-effort releases only linked AKK metadata without terminal input or coding-agent interruption.",
141
143
  ordinary_use: "Create a new managed Turn through the exact action listed for the pane. An explicit session_id never follows the pane and is unavailable for rollout-backed Codex Sessions; their listed follow-current action binds only the unique exact rollout that accepts the submitted request. A user-explicit or uniquely delegated raw send receives the same fresh under-lock candidate authority when it resolves to an already managed rollout-backed Codex source. A live terminal selector can also attach an unmanaged pane, adopt one verified human-selected native context, detach a verified-empty Codex source, or replace an eligible status-card/candidate-rollout source."
142
144
  },
145
+ retry_submission: {
146
+ tool: "agent_knock_knock_send",
147
+ target_argument: "turn_id",
148
+ required: ["turn_id"],
149
+ accepts_only: ["turn_id"],
150
+ creates_turn: false,
151
+ caller_supplies_request_text: false,
152
+ may_retransmit_original_request_text: true,
153
+ retransmit_condition: "durable structured proof that Enter was never attempted plus a positively empty live composer",
154
+ requires_explicit_user_confirmation: true,
155
+ candidate_source: "the current exact managed Turn's available_actions.retry_submission",
156
+ scope: "Recover only the original durable submission whose text injection is proven but Enter dispatch remains uncertain. AKK either submits the proven exact existing draft once, or retransmits the immutable original request once only after structured no-Enter proof and a positively empty live composer. It revalidates all terminal, identity, route, composer, and one-shot authority under lock and otherwise fails closed."
157
+ },
143
158
  watch: {
144
159
  tool: "agent_knock_knock_watch",
145
160
  target_argument: "terminal_id",
@@ -278,7 +293,11 @@ export function listActionContracts() {
278
293
  "expected_transition_id"
279
294
  ],
280
295
  requires_explicit_user_confirmation: true,
281
- handoff_scope: "Use only the complete nested action from terminals[].handoff_decision.choices.take_over_current after explicit confirmation. AKK binds and revalidates the current handoff decision privately."
296
+ user_priority: true,
297
+ sends_terminal_input: false,
298
+ stops_coding_agent: false,
299
+ cleanup_policy: "Close the selected AKK Turn first. Linked transfer, Session, ledger, and callback cleanup is best-effort; missing, stale, malformed, or newer metadata is preserved and reported as a warning rather than blocking Close.",
300
+ handoff_scope: "After explicit confirmation, a handoff Close follows the same user-priority management-release path and does not depend on a private live-terminal fence."
282
301
  }
283
302
  }
284
303
  };
@@ -305,16 +324,13 @@ export function renderAvailableListActions(entry, facts = NO_AVAILABLE_LIST_ACTI
305
324
  : {};
306
325
  const managedApprovalPending = facts.managedApprovalPending;
307
326
  const terminalBridgeReady = managed && facts.terminalBridgeReady;
308
- if (terminalControlled &&
309
- commands.send === true &&
310
- entry.activity_state === "idle" &&
311
- approvalState.blocked !== true) {
312
- actions.send = {
313
- tool: "agent_knock_knock_send",
314
- arguments: { selector: id },
315
- missing_required: ["request"]
316
- };
317
- }
327
+ Object.assign(actions, renderTerminalSendAction({
328
+ commands,
329
+ entry,
330
+ id,
331
+ approvalState,
332
+ terminalControlled
333
+ }));
318
334
  const lifecycleBindingToken = stringValue(entry.lifecycle_binding_token);
319
335
  appendTerminalWatchAction({
320
336
  actions,
@@ -324,114 +340,199 @@ export function renderAvailableListActions(entry, facts = NO_AVAILABLE_LIST_ACTI
324
340
  lifecycleBindingToken,
325
341
  terminalControlled
326
342
  });
327
- if (terminalControlled &&
328
- commands.new_thread === true &&
329
- entry.activity_state === "idle" &&
330
- approvalState.blocked !== true &&
331
- lifecycleBindingToken) {
332
- actions.new_thread = {
333
- tool: "agent_knock_knock_new_thread",
334
- arguments: {
335
- terminal_id: id,
336
- expected_binding_token: lifecycleBindingToken
337
- },
338
- requires_user_intent: true
339
- };
343
+ Object.assign(actions, renderTerminalLifecycleActions({
344
+ commands,
345
+ entry,
346
+ id,
347
+ approvalState,
348
+ lifecycleBindingToken,
349
+ terminalControlled
350
+ }));
351
+ Object.assign(actions, renderManagedRespondAction({
352
+ commands,
353
+ entry,
354
+ id,
355
+ approvalState,
356
+ managed,
357
+ managedApprovalPending,
358
+ terminalBridgeReady
359
+ }));
360
+ const approvalFingerprint = stringValue(approvalState.fingerprint);
361
+ const managedApprovalEligible = terminalBridgeReady &&
362
+ entry.status === "waiting_for_openclaw" &&
363
+ (entry.agent !== "claude" ||
364
+ approvalState.decision_mode === "keys");
365
+ Object.assign(actions, renderApprovalAction({
366
+ commands,
367
+ entry,
368
+ approvalState,
369
+ approvalFingerprint,
370
+ managedApprovalEligible,
371
+ targetArguments,
372
+ terminalControlled
373
+ }));
374
+ const cancelAction = renderCancelListAction(entry, facts, targetArguments, approvalState);
375
+ if (cancelAction) {
376
+ actions.cancel = cancelAction;
377
+ }
378
+ Object.assign(actions, renderManagedRecoveryActions({ entry, facts, id, managed, targetArguments }));
379
+ Object.assign(actions, renderCloseAction({ commands, entry, id, managed }));
380
+ return actions;
381
+ }
382
+ function renderTerminalSendAction(input) {
383
+ if (!input.terminalControlled ||
384
+ input.commands.send !== true ||
385
+ input.entry.activity_state !== "idle" ||
386
+ input.approvalState.blocked === true) {
387
+ return {};
340
388
  }
341
- if (terminalControlled &&
342
- commands.list_resumable_threads === true) {
389
+ return {
390
+ send: {
391
+ tool: "agent_knock_knock_send",
392
+ arguments: { selector: input.id },
393
+ missing_required: ["request"]
394
+ }
395
+ };
396
+ }
397
+ function renderTerminalLifecycleActions(input) {
398
+ const actions = {
399
+ ...renderNewThreadAction(input)
400
+ };
401
+ if (input.terminalControlled && input.commands.list_resumable_threads === true) {
343
402
  actions.list_resumable_threads = {
344
403
  tool: "agent_knock_knock_list_resumable_threads",
345
- arguments: { terminal_id: id }
404
+ arguments: { terminal_id: input.id }
346
405
  };
347
406
  }
348
- if (terminalControlled &&
349
- commands.native_inspect === true &&
350
- entry.activity_state === "idle" &&
351
- approvalState.blocked !== true &&
352
- lifecycleBindingToken) {
353
- actions.native_inspect = {
407
+ return {
408
+ ...actions,
409
+ ...renderNativeInspectAction(input)
410
+ };
411
+ }
412
+ function renderNewThreadAction(input) {
413
+ if (!terminalIdleLifecycleActionEligible(input, "new_thread")) {
414
+ return {};
415
+ }
416
+ return {
417
+ new_thread: {
418
+ tool: "agent_knock_knock_new_thread",
419
+ arguments: {
420
+ terminal_id: input.id,
421
+ expected_binding_token: input.lifecycleBindingToken
422
+ },
423
+ requires_user_intent: true
424
+ }
425
+ };
426
+ }
427
+ function renderNativeInspectAction(input) {
428
+ if (!terminalIdleLifecycleActionEligible(input, "native_inspect")) {
429
+ return {};
430
+ }
431
+ return {
432
+ native_inspect: {
354
433
  tool: "agent_knock_knock_native_inspect",
355
434
  arguments: {
356
- terminal_id: id,
435
+ terminal_id: input.id,
357
436
  inspection: "status",
358
- expected_binding_token: lifecycleBindingToken
437
+ expected_binding_token: input.lifecycleBindingToken
359
438
  }
360
- };
439
+ }
440
+ };
441
+ }
442
+ function terminalIdleLifecycleActionEligible(input, command) {
443
+ return input.terminalControlled &&
444
+ input.commands[command] === true &&
445
+ input.entry.activity_state === "idle" &&
446
+ input.approvalState.blocked !== true &&
447
+ Boolean(input.lifecycleBindingToken);
448
+ }
449
+ function renderManagedRespondAction(input) {
450
+ if (!input.managed ||
451
+ input.commands.respond !== true ||
452
+ !input.terminalBridgeReady ||
453
+ input.entry.status !== "waiting_for_openclaw" ||
454
+ input.managedApprovalPending ||
455
+ input.approvalState.blocked === true) {
456
+ return {};
361
457
  }
362
- if (managed &&
363
- commands.respond === true &&
364
- terminalBridgeReady &&
365
- entry.status === "waiting_for_openclaw" &&
366
- !managedApprovalPending &&
367
- approvalState.blocked !== true) {
368
- actions.respond = {
458
+ return {
459
+ respond: {
369
460
  tool: "agent_knock_knock_respond",
370
- arguments: { turn_id: id },
461
+ arguments: { turn_id: input.id },
371
462
  missing_required: ["request"]
372
- };
463
+ }
464
+ };
465
+ }
466
+ function renderApprovalAction(input) {
467
+ if (input.commands.approve !== true ||
468
+ input.approvalState.approvable !== true ||
469
+ !input.approvalFingerprint ||
470
+ !(input.terminalControlled && input.entry.agent === "codex" ||
471
+ input.managedApprovalEligible)) {
472
+ return {};
373
473
  }
374
- const approvalFingerprint = stringValue(approvalState.fingerprint);
375
- const managedApprovalEligible = terminalBridgeReady &&
376
- entry.status === "waiting_for_openclaw" &&
377
- (entry.agent !== "claude" ||
378
- approvalState.decision_mode === "keys");
379
- if (commands.approve === true &&
380
- approvalState.approvable === true &&
381
- approvalFingerprint &&
382
- ((terminalControlled &&
383
- entry.agent === "codex") ||
384
- managedApprovalEligible)) {
385
- actions.approve = {
474
+ return {
475
+ approve: {
386
476
  tool: "agent_knock_knock_approve",
387
- arguments: targetArguments,
477
+ arguments: input.targetArguments,
388
478
  missing_required: ["expected_approval_fingerprint"],
389
479
  before_call: {
390
480
  tool: "agent_knock_knock_status",
391
- arguments: targetArguments,
481
+ arguments: input.targetArguments,
392
482
  use: "After explicit user confirmation, copy the latest terminal_status.approval_state.fingerprint into expected_approval_fingerprint."
393
483
  },
394
484
  requires_explicit_user_confirmation: true,
395
485
  requires_fresh_status: true
396
- };
397
- }
398
- const cancelAction = renderCancelListAction(entry, facts, targetArguments, approvalState);
399
- if (cancelAction) {
400
- actions.cancel = cancelAction;
401
- }
402
- if (managed && facts.renewEligible) {
486
+ }
487
+ };
488
+ }
489
+ function renderManagedRecoveryActions(input) {
490
+ const actions = {};
491
+ if (input.managed && input.facts.renewEligible) {
403
492
  actions.renew = {
404
493
  tool: "agent_knock_knock_renew",
405
- arguments: targetArguments
494
+ arguments: input.targetArguments
406
495
  };
407
496
  }
408
- if (managed && facts.retryCallbackEligible) {
497
+ if (input.managed && input.facts.retryCallbackEligible) {
409
498
  actions.retry_callback = {
410
499
  tool: "agent_knock_knock_retry_callback",
411
- arguments: targetArguments
500
+ arguments: input.targetArguments
412
501
  };
413
502
  }
414
- if (commands.close === true) {
415
- const orphanedDispatch = isRecord(entry.orphaned_terminal_dispatch)
416
- ? entry.orphaned_terminal_dispatch
417
- : undefined;
418
- const expectedMessageId = stringValue(orphanedDispatch?.message_id);
419
- const expectedTransitionId = stringValue(orphanedDispatch?.transition_id);
420
- actions.close = {
503
+ if (input.managed &&
504
+ input.entry.agent === "codex" &&
505
+ input.facts.retrySubmissionCandidate) {
506
+ actions.retry_submission = {
507
+ tool: "agent_knock_knock_send",
508
+ arguments: { turn_id: input.id },
509
+ requires_explicit_user_confirmation: true
510
+ };
511
+ }
512
+ return actions;
513
+ }
514
+ function renderCloseAction(input) {
515
+ if (input.commands.close !== true) {
516
+ return {};
517
+ }
518
+ const orphanedDispatch = isRecord(input.entry.orphaned_terminal_dispatch)
519
+ ? input.entry.orphaned_terminal_dispatch
520
+ : undefined;
521
+ const expectedMessageId = stringValue(orphanedDispatch?.message_id);
522
+ const expectedTransitionId = stringValue(orphanedDispatch?.transition_id);
523
+ return {
524
+ close: {
421
525
  tool: "agent_knock_knock_close",
422
526
  arguments: {
423
- ...(managed ? { turn_id: id } : { conversation_id: id }),
424
- ...(expectedMessageId
425
- ? { expected_message_id: expectedMessageId }
426
- : {}),
527
+ ...(input.managed ? { turn_id: input.id } : { conversation_id: input.id }),
528
+ ...(expectedMessageId ? { expected_message_id: expectedMessageId } : {}),
427
529
  ...(expectedTransitionId
428
530
  ? { expected_transition_id: expectedTransitionId }
429
531
  : {})
430
532
  },
431
533
  requires_explicit_user_confirmation: true
432
- };
433
- }
434
- return actions;
534
+ }
535
+ };
435
536
  }
436
537
  function appendTerminalWatchAction(input) {
437
538
  if (!input.terminalControlled ||
@@ -476,7 +577,8 @@ export function exactTerminalWatchAction(entry, terminalId) {
476
577
  : undefined;
477
578
  }
478
579
  const CURRENT_TURN_ACTIONS = [
479
- "status", "respond", "approve", "cancel", "renew", "retry_callback"
580
+ "status", "respond", "approve", "cancel", "renew", "retry_callback",
581
+ "retry_submission", "close"
480
582
  ];
481
583
  export function currentTerminalActions(currentTurn) {
482
584
  if (!currentTurn || !isRecord(currentTurn.available_actions)) {
@@ -570,6 +672,25 @@ export function readOnlyListActions(actionsValue) {
570
672
  ? { status: actionsValue.status }
571
673
  : {};
572
674
  }
675
+ /**
676
+ * A deferred transfer may suppress every mutation except the user's explicit
677
+ * request to release AKK management. Close never sends terminal input or stops
678
+ * the coding agent, so it remains available while transfer cleanup is pending.
679
+ */
680
+ export function userReleaseListActions(actionsValue, turnId) {
681
+ const actions = readOnlyListActions(actionsValue);
682
+ if (isRecord(actionsValue.close)) {
683
+ actions.close = actionsValue.close;
684
+ }
685
+ else if (turnId) {
686
+ actions.close = {
687
+ tool: "agent_knock_knock_close",
688
+ arguments: { turn_id: turnId },
689
+ requires_explicit_user_confirmation: true
690
+ };
691
+ }
692
+ return actions;
693
+ }
573
694
  export function readOnlyManagedTurn(managedTurn) {
574
695
  return {
575
696
  ...managedTurn,
@@ -578,20 +699,20 @@ export function readOnlyManagedTurn(managedTurn) {
578
699
  : {})
579
700
  };
580
701
  }
581
- export function withoutGenericHandoffSourceClose(managedTurn, blockingHandoffTurnIds) {
582
- const conversationId = stringValue(managedTurn.conversation_id);
583
- if (!conversationId || !blockingHandoffTurnIds.has(conversationId)) {
584
- return managedTurn;
585
- }
586
- const availableActions = isRecord(managedTurn.available_actions)
587
- ? managedTurn.available_actions
588
- : {};
589
- const { close: _genericClose, ...safeActions } = availableActions;
702
+ export function userReleasableManagedTurn(managedTurn) {
703
+ const turnId = stringValue(managedTurn.turn_id ?? managedTurn.conversation_id ?? managedTurn.id);
590
704
  return {
591
705
  ...managedTurn,
592
- available_actions: safeActions
706
+ available_actions: userReleaseListActions(isRecord(managedTurn.available_actions)
707
+ ? managedTurn.available_actions
708
+ : {}, turnId)
593
709
  };
594
710
  }
711
+ export function withoutGenericHandoffSourceClose(managedTurn, _blockingHandoffTurnIds) {
712
+ // Explicit Close releases only AKK metadata. A live handoff no longer
713
+ // revokes the user's ability to abandon the selected managed Turn.
714
+ return managedTurn;
715
+ }
595
716
  export function retargetConversationAction(action, conversationId) {
596
717
  const beforeCall = isRecord(action.before_call)
597
718
  ? action.before_call
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-list-renderer.js","sourceRoot":"","sources":["../../src/terminal-list-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,0BAA0B,EAE3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,QAAQ,EACR,cAAc,IAAI,WAAW,EAC9B,MAAM,mBAAmB,CAAC;AAI3B,MAAM,yBAAyB,GAC7B,uEAAuE;IACvE,uEAAuE;IACvE,wEAAwE;IACxE,uEAAuE;IACvE,uBAAuB,CAAC;AAS1B,MAAM,8BAA8B,GAA6B;IAC/D,mBAAmB,EAAE,KAAK;IAC1B,sBAAsB,EAAE,KAAK;IAC7B,aAAa,EAAE,KAAK;IACpB,qBAAqB,EAAE,KAAK;CAC7B,CAAC;AAEF,MAAM,UAAU,0BAA0B,CACxC,IAAgB,EAChB,EACE,cAAc,GAAG,KAAK,EACtB,aAAa,EACb,WAAW,GAAG,8BAA8B,EAC7C,GAIG,EAAE;IAEN,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;QAC5C,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;QACtC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IACxB,MAAM,KAAK,GAAG;QACZ,GAAG,IAAI;QACP,UAAU,EAAE,SAAS;QACrB,OAAO,EAAE,MAAM;QACf,EAAE,EAAE,MAAM;QACV,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC;QAClC,MAAM,EAAE,cAAc;QACtB,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,QAAQ,EAAE;YACR,OAAO,EAAE,IAAI,CAAC,MAAM,KAAK,sBAAsB;YAC/C,MAAM,EAAE,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC;YAC5C,KAAK,EAAE,IAAI,CAAC,MAAM,KAAK,QAAQ;YAC/B,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,cAAc,IAAI,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC;SACnE;KACF,CAAC;IACF,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACxE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;IACtD,OAAO;QACL,GAAG,WAAW;QACd,iBAAiB,EAAE,gBAAgB;KACpC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,OAAO,EAAE,EAAE;QACX,YAAY,EAAE;YACZ,2WAA2W;YAC3W,mZAAmZ;YACnZ,qaAAqa;YACra,iQAAiQ;YACjQ,kOAAkO;YAClO,+VAA+V;YAC/V,4vDAA4vD;YAC5vD,wHAAwH;YACxH,wQAAwQ;YACxQ,iFAAiF;YACjF,6UAA6U;YAC7U,ifAAif;YACjf,wJAAwJ;YACxJ,iFAAiF;YACjF,+JAA+J;SAChK;QACD,eAAe,EAAE;YACf,aAAa,EAAE;gBACb,SAAS,EAAE,oCAAoC;gBAC/C,4BAA4B,EAAE,KAAK;aACpC;YACD,MAAM,EAAE;gBACN,aAAa,EAAE,wBAAwB;gBACvC,4BAA4B,EAAE,KAAK;aACpC;YACD,cAAc,EAAE;gBACd,SAAS,EAAE,yCAAyC;gBACpD,4BAA4B,EAAE,KAAK;aACpC;YACD,OAAO,EAAE;gBACP,YAAY,EAAE,sEAAsE;gBACpF,WAAW,EAAE,mEAAmE;gBAChF,UAAU,EACR,sMAAsM;gBACxM,UAAU,EAAE,iFAAiF;gBAC7F,OAAO,EAAE,sCAAsC;aAChD;YACD,iBAAiB,EAAE;gBACjB,OAAO,EAAE,wBAAwB;gBACjC,4BAA4B,EAAE,IAAI;aACnC;YACD,iCAAiC,EAAE;gBACjC,OAAO,EACL,oGAAoG;gBACtG,4BAA4B,EAAE,KAAK;aACpC;YACD,mBAAmB,EAAE;gBACnB,6BAA6B,EAC3B,sKAAsK;aACzK;YACD,aAAa,EAAE;gBACb,OAAO,EACL,mEAAmE;gBACrE,uCAAuC,EACrC,yHAAyH;aAC5H;YACD,gBAAgB,EAAE;gBAChB,OAAO,EACL,4EAA4E;gBAC9E,yBAAyB,EACvB,+DAA+D;gBACjE,mCAAmC,EAAE,IAAI;gBACzC,aAAa,EAAE,wDAAwD;aACxE;YACD,cAAc,EAAE;gBACd,OAAO,EACL,oOAAoO;gBACtO,yBAAyB,EACvB,8CAA8C;gBAChD,mCAAmC,EAAE,IAAI;gBACzC,aAAa,EAAE,+CAA+C;aAC/D;SACF;QACD,OAAO,EAAE;YACP,IAAI,EAAE;gBACJ,IAAI,EAAE,wBAAwB;gBAC9B,eAAe,EAAE,YAAY;gBAC7B,8BAA8B,EAAE,aAAa;gBAC7C,cAAc,EAAE;oBACd,aAAa,EAAE;wBACb,gBAAgB,EAAE,CAAC,YAAY,CAAC;wBAChC,wBAAwB,EAAE,KAAK;qBAChC;oBACD,uBAAuB,EAAE;wBACvB,gBAAgB,EAAE,CAAC,aAAa,CAAC;wBACjC,wBAAwB,EAAE,IAAI;qBAC/B;iBACF;gBACD,oBAAoB,EAClB,ycAAyc;gBAC3c,QAAQ,EAAE,CAAC,SAAS,CAAC;gBACrB,QAAQ,EAAE;oBACR,YAAY;oBACZ,aAAa;oBACb,MAAM;oBACN,oBAAoB;oBACpB,qBAAqB;oBACrB,yBAAyB;iBAC1B;gBACD,WAAW,EAAE,CAAC,gBAAgB,CAAC;gBAC/B,+BAA+B,EAC7B,4YAA4Y;gBAC9Y,gCAAgC,EAC9B,83BAA83B;gBACh4B,YAAY,EACV,mpBAAmpB;aACtpB;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,yBAAyB;gBAC/B,eAAe,EAAE,aAAa;gBAC9B,QAAQ,EAAE,CAAC,aAAa,CAAC;gBACzB,QAAQ,EAAE,CAAC,oBAAoB,CAAC;gBAChC,YAAY,EAAE,KAAK;gBACnB,eAAe,EAAE,KAAK;gBACtB,oBAAoB,EAAE,KAAK;gBAC3B,gBAAgB,EAAE,qCAAqC;gBACvD,KAAK,EACH,+JAA+J;aAClK;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,2BAA2B;gBACjC,eAAe,EAAE,UAAU;gBAC3B,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,YAAY,EAAE,KAAK;gBACnB,eAAe,EAAE,KAAK;gBACtB,oBAAoB,EAAE,KAAK;gBAC3B,oBAAoB,EAAE,IAAI;aAC3B;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,8BAA8B;gBACpC,eAAe,EAAE,aAAa;gBAC9B,QAAQ,EAAE,CAAC,aAAa,CAAC;gBACzB,YAAY,EAAE,KAAK;gBACnB,eAAe,EAAE,IAAI;gBACrB,oBAAoB,EAAE,IAAI;aAC3B;YACD,sBAAsB,EAAE;gBACtB,IAAI,EAAE,0CAA0C;gBAChD,eAAe,EAAE,aAAa;gBAC9B,QAAQ,EAAE,CAAC,aAAa,CAAC;gBACzB,gBAAgB,EAAE,IAAI;aACvB;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,kCAAkC;gBACxC,eAAe,EAAE,aAAa;gBAC9B,QAAQ,EAAE,CAAC,aAAa,EAAE,YAAY,CAAC;gBACvC,qBAAqB,EAAE,CAAC,QAAQ,CAAC;gBACjC,YAAY,EAAE,KAAK;gBACnB,eAAe,EAAE,KAAK;gBACtB,aAAa,EAAE,KAAK;gBACpB,oBAAoB,EAAE,IAAI;gBAC1B,gBAAgB,EAAE,8CAA8C;aACjE;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,iCAAiC;gBACvC,eAAe,EAAE,aAAa;gBAC9B,QAAQ,EAAE;oBACR,aAAa;oBACb,kBAAkB;iBACnB;gBACD,YAAY,EAAE,KAAK;gBACnB,oBAAoB,EAAE,IAAI;gBAC1B,gBAAgB,EAAE,wBAAwB;aAC3C;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE,qCAAqC;gBAC3C,eAAe,EAAE,aAAa;gBAC9B,QAAQ,EAAE;oBACR,aAAa;oBACb,wBAAwB;iBACzB;gBACD,YAAY,EAAE,KAAK;gBACnB,oBAAoB,EAAE,KAAK;gBAC3B,oBAAoB,EAAE,IAAI;gBAC1B,MAAM,EACJ,qGAAqG;aACxG;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,2BAA2B;gBACjC,eAAe,EAAE,SAAS;gBAC1B,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;gBAChC,YAAY,EACV,uGAAuG;aAC1G;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,0BAA0B;gBAChC,gBAAgB,EAAE;oBAChB,cAAc,EAAE,CAAC,SAAS,EAAE,iBAAiB,EAAE,UAAU,CAAC;iBAC3D;gBACD,uBAAuB,EAAE,SAAS;gBAClC,qBAAqB,EAAE,UAAU;gBACjC,WAAW,EACT,gFAAgF;gBAClF,6BAA6B,EAAE,iBAAiB;gBAChD,mBAAmB,EACjB,uKAAuK;gBACzK,QAAQ,EAAE,EAAE;gBACZ,QAAQ,EAAE,CAAC,oBAAoB,EAAE,OAAO,CAAC;aAC1C;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,2BAA2B;gBACjC,gBAAgB,EAAE;oBAChB,cAAc,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC;iBAC3C;gBACD,uBAAuB,EAAE,SAAS;gBAClC,wBAAwB,EAAE,aAAa;gBACvC,QAAQ,EAAE,EAAE;gBACZ,QAAQ,EAAE,EAAE;gBACZ,qBAAqB,EACnB,8aAA8a;gBAChb,kBAAkB,EAAE,sCAAsC;gBAC1D,8BAA8B,EAAE,gBAAgB;gBAChD,mCAAmC,EAAE,IAAI;gBACzC,qBAAqB,EAAE,IAAI;aAC5B;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,0BAA0B;gBAChC,eAAe,EAAE,SAAS;gBAC1B,6BAA6B,EAAE,iBAAiB;gBAChD,mBAAmB,EACjB,6KAA6K;gBAC/K,QAAQ,EAAE,CAAC,SAAS,CAAC;gBACrB,QAAQ,EAAE,CAAC,oBAAoB,CAAC;gBAChC,oBAAoB,EAAE,IAAI;aAC3B;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,yBAAyB;gBAC/B,eAAe,EAAE,SAAS;gBAC1B,6BAA6B,EAAE,iBAAiB;gBAChD,mBAAmB,EACjB,uFAAuF;gBACzF,QAAQ,EAAE,CAAC,SAAS,CAAC;gBACrB,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,kCAAkC;gBACxC,eAAe,EAAE,SAAS;gBAC1B,6BAA6B,EAAE,iBAAiB;gBAChD,mBAAmB,EACjB,gGAAgG;gBAClG,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,yBAAyB;gBAC/B,eAAe,EAAE,SAAS;gBAC1B,6BAA6B,EAAE,iBAAiB;gBAChD,mBAAmB,EACjB,mKAAmK;gBACrK,QAAQ,EAAE,CAAC,SAAS,CAAC;gBACrB,QAAQ,EAAE;oBACR,QAAQ;oBACR,qBAAqB;oBACrB,wBAAwB;iBACzB;gBACD,mCAAmC,EAAE,IAAI;gBACzC,aAAa,EACX,gMAAgM;aACnM;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,KAAiB,EACjB,KAAK,GAA6B,8BAA8B;IAEhE,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAC1D,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,KAAK,cAAc,CAAC;IAChD,MAAM,eAAe,GAAG,OAAO;QAC7B,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;QACjB,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;IAC5B,MAAM,OAAO,GAAe;QAC1B,MAAM,EAAE;YACN,IAAI,EAAE,0BAA0B;YAChC,SAAS,EAAE,eAAe;SAC3B;KACF,CAAC;IACF,MAAM,kBAAkB,GAAG,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC;IACvD,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC;QAClD,CAAC,CAAC,KAAK,CAAC,cAAc;QACtB,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,sBAAsB,GAAG,KAAK,CAAC,sBAAsB,CAAC;IAC5D,MAAM,mBAAmB,GAAG,OAAO,IAAI,KAAK,CAAC,mBAAmB,CAAC;IAEjE,IACE,kBAAkB;QAClB,QAAQ,CAAC,IAAI,KAAK,IAAI;QACtB,KAAK,CAAC,cAAc,KAAK,MAAM;QAC/B,aAAa,CAAC,OAAO,KAAK,IAAI,EAC9B,CAAC;QACD,OAAO,CAAC,IAAI,GAAG;YACb,IAAI,EAAE,wBAAwB;YAC9B,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;YAC3B,gBAAgB,EAAE,CAAC,SAAS,CAAC;SAC9B,CAAC;IACJ,CAAC;IAED,MAAM,qBAAqB,GAAG,WAAW,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACzE,yBAAyB,CAAC;QACxB,OAAO;QACP,QAAQ;QACR,KAAK;QACL,EAAE;QACF,qBAAqB;QACrB,kBAAkB;KACnB,CAAC,CAAC;IACH,IACE,kBAAkB;QAClB,QAAQ,CAAC,UAAU,KAAK,IAAI;QAC5B,KAAK,CAAC,cAAc,KAAK,MAAM;QAC/B,aAAa,CAAC,OAAO,KAAK,IAAI;QAC9B,qBAAqB,EACrB,CAAC;QACD,OAAO,CAAC,UAAU,GAAG;YACnB,IAAI,EAAE,8BAA8B;YACpC,SAAS,EAAE;gBACT,WAAW,EAAE,EAAE;gBACf,sBAAsB,EAAE,qBAAqB;aAC9C;YACD,oBAAoB,EAAE,IAAI;SAC3B,CAAC;IACJ,CAAC;IACD,IACE,kBAAkB;QAClB,QAAQ,CAAC,sBAAsB,KAAK,IAAI,EACxC,CAAC;QACD,OAAO,CAAC,sBAAsB,GAAG;YAC/B,IAAI,EAAE,0CAA0C;YAChD,SAAS,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;SAC/B,CAAC;IACJ,CAAC;IACD,IACE,kBAAkB;QAClB,QAAQ,CAAC,cAAc,KAAK,IAAI;QAChC,KAAK,CAAC,cAAc,KAAK,MAAM;QAC/B,aAAa,CAAC,OAAO,KAAK,IAAI;QAC9B,qBAAqB,EACrB,CAAC;QACD,OAAO,CAAC,cAAc,GAAG;YACvB,IAAI,EAAE,kCAAkC;YACxC,SAAS,EAAE;gBACT,WAAW,EAAE,EAAE;gBACf,UAAU,EAAE,QAAQ;gBACpB,sBAAsB,EAAE,qBAAqB;aAC9C;SACF,CAAC;IACJ,CAAC;IAED,IACE,OAAO;QACP,QAAQ,CAAC,OAAO,KAAK,IAAI;QACzB,mBAAmB;QACnB,KAAK,CAAC,MAAM,KAAK,sBAAsB;QACvC,CAAC,sBAAsB;QACvB,aAAa,CAAC,OAAO,KAAK,IAAI,EAC9B,CAAC;QACD,OAAO,CAAC,OAAO,GAAG;YAChB,IAAI,EAAE,2BAA2B;YACjC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;YAC1B,gBAAgB,EAAE,CAAC,SAAS,CAAC;SAC9B,CAAC;IACJ,CAAC;IAED,MAAM,mBAAmB,GAAG,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IACnE,MAAM,uBAAuB,GAC3B,mBAAmB;QACnB,KAAK,CAAC,MAAM,KAAK,sBAAsB;QACvC,CACE,KAAK,CAAC,KAAK,KAAK,QAAQ;YACxB,aAAa,CAAC,aAAa,KAAK,MAAM,CACvC,CAAC;IACJ,IACE,QAAQ,CAAC,OAAO,KAAK,IAAI;QACzB,aAAa,CAAC,UAAU,KAAK,IAAI;QACjC,mBAAmB;QACnB,CACE,CACE,kBAAkB;YAClB,KAAK,CAAC,KAAK,KAAK,OAAO,CACxB;YACD,uBAAuB,CACxB,EACD,CAAC;QACD,OAAO,CAAC,OAAO,GAAG;YAChB,IAAI,EAAE,2BAA2B;YACjC,SAAS,EAAE,eAAe;YAC1B,gBAAgB,EAAE,CAAC,+BAA+B,CAAC;YACnD,WAAW,EAAE;gBACX,IAAI,EAAE,0BAA0B;gBAChC,SAAS,EAAE,eAAe;gBAC1B,GAAG,EACD,kIAAkI;aACrI;YACD,mCAAmC,EAAE,IAAI;YACzC,qBAAqB,EAAE,IAAI;SAC5B,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,sBAAsB,CACzC,KAAK,EACL,KAAK,EACL,eAAe,EACf,aAAa,CACd,CAAC;IACF,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC;IAChC,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACnC,OAAO,CAAC,KAAK,GAAG;YACd,IAAI,EAAE,yBAAyB;YAC/B,SAAS,EAAE,eAAe;SAC3B,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;QAC3C,OAAO,CAAC,cAAc,GAAG;YACvB,IAAI,EAAE,kCAAkC;YACxC,SAAS,EAAE,eAAe;SAC3B,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QAC5B,MAAM,gBAAgB,GAAG,QAAQ,CAAC,KAAK,CAAC,0BAA0B,CAAC;YACjE,CAAC,CAAC,KAAK,CAAC,0BAA0B;YAClC,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,iBAAiB,GAAG,WAAW,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;QACpE,MAAM,oBAAoB,GAAG,WAAW,CACtC,gBAAgB,EAAE,aAAa,CAChC,CAAC;QACF,OAAO,CAAC,KAAK,GAAG;YACd,IAAI,EAAE,yBAAyB;YAC/B,SAAS,EAAE;gBACT,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;gBACxD,GAAG,CAAC,iBAAiB;oBACnB,CAAC,CAAC,EAAE,mBAAmB,EAAE,iBAAiB,EAAE;oBAC5C,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,oBAAoB;oBACtB,CAAC,CAAC,EAAE,sBAAsB,EAAE,oBAAoB,EAAE;oBAClD,CAAC,CAAC,EAAE,CAAC;aACR;YACD,mCAAmC,EAAE,IAAI;SAC1C,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,yBAAyB,CAAC,KAOlC;IACC,IACE,CAAC,KAAK,CAAC,kBAAkB;QACzB,KAAK,CAAC,QAAQ,CAAC,KAAK,KAAK,IAAI;QAC7B,CAAC,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CACxC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,IAAI,EAAE,CAAC,CACzC;QACD,CAAC,KAAK,CAAC,qBAAqB,EAC5B,CAAC;QACD,OAAO;IACT,CAAC;IACD,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG;QACpB,IAAI,EAAE,yBAAyB;QAC/B,SAAS,EAAE;YACT,WAAW,EAAE,KAAK,CAAC,EAAE;SACtB;QACD,oBAAoB,EAAE,IAAI;QAC1B,GAAG,EAAE,yBAAyB;KAC/B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,UAAkB;IAC3D,OAAO;QACL,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,UAAU;QACvB,OAAO,EAAE,cAAc,UAAU,EAAE;QACnC,yBAAyB,EAAE,IAAI;QAC/B,WAAW,EACT,sEAAsE;YACtE,oEAAoE;YACpE,2CAA2C;KAC9C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,KAAc,EACd,UAAkB;IAElB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC3D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC;QACnD,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK;QAC/B,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,OAAO,KAAK,EAAE,IAAI,KAAK,yBAAyB;QAC9C,KAAK,CAAC,oBAAoB,KAAK,IAAI;QACnC,IAAI,EAAE,WAAW,KAAK,UAAU;QAChC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAC9B,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,MAAM,oBAAoB,GAAG;IAC3B,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB;CAC3D,CAAC;AAEX,MAAM,UAAU,sBAAsB,CAAC,WAAmC;IACxE,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC7D,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,KAAK,MAAM,MAAM,IAAI,oBAAoB,EAAE,CAAC;QAC1C,IAAI,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACpD,OAAO,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,UAAsB;IACtE,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,KAAK,MAAM,MAAM,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAU,EAAE,CAAC;QAClD,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAAkB,EAAE,SAAiB;IAC/E,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,iBAAiB,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QAC9E,CAAC,CAAC,MAAM,CAAC,SAAS;QAClB,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,GAAG,MAAM;QACT,SAAS,EAAE;YACT,GAAG,iBAAiB;YACpB,UAAU,EAAE,SAAS;SACtB;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,OAAmB,EACnB,OAA4B;IAE5B,MAAM,KAAK,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IAC5B,KAAK,MAAM,UAAU,IAAI,CAAC,YAAY,EAAE,eAAe,EAAE,gBAAgB,CAAU,EAAE,CAAC;QACpF,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,SAAS;QACX,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,GAAG;YACjB,GAAG,MAAM;YACT,SAAS,EAAE;gBACT,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvD,sBAAsB,EAAE,KAAK;aAC9B;SACF,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,YAAwB;IACxE,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,KAAK,MAAM,MAAM,IAAI,CAAC,QAAQ,EAAE,gBAAgB,EAAE,OAAO,CAAU,EAAE,CAAC;QACpE,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,WAAuB;IAEvB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC;QAC9D,CAAC,CAAC,WAAW,CAAC,iBAAiB;QAC/B,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,GAAG,WAAW;QACd,iBAAiB,EAAE,iCAAiC,CAAC,gBAAgB,CAAC;KACvE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,WAAuB,EACvB,KAKC;IAED,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,OAAO;QAAE,OAAO,WAAW,CAAC;IAC7D,MAAM,OAAO,GAAG,0BAA0B,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7E,MAAM,qBAAqB,GAAG,KAAK,CAAC,qBAAqB,EAAE,EAAE,CAAC;IAC9D,OAAO;QACL,GAAG,WAAW;QACd,GAAG,CAAC,qBAAqB;YACvB,CAAC,CAAC,EAAE,cAAc,EAAE,qBAAqB,EAAE;YAC3C,CAAC,CAAC,EAAE,CAAC;QACP,iBAAiB,EAAE;YACjB,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC;gBACzC,CAAC,CAAC,WAAW,CAAC,iBAAiB;gBAC/B,CAAC,CAAC,EAAE,CAAC;YACP,OAAO;SACR;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,YAAwB;IAC1D,OAAO,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC;QAClC,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE;QACjC,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAuB;IACzD,OAAO;QACL,GAAG,WAAW;QACd,iBAAiB,EAAE,mBAAmB,CACpC,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC;YACrC,CAAC,CAAC,WAAW,CAAC,iBAAiB;YAC/B,CAAC,CAAC,EAAE,CACP;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,WAAuB,EACvB,sBAA2C;IAE3C,MAAM,cAAc,GAAG,WAAW,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAChE,IAAI,CAAC,cAAc,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;QACnE,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC;QAC9D,CAAC,CAAC,WAAW,CAAC,iBAAiB;QAC/B,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,WAAW,EAAE,GAAG,gBAAgB,CAAC;IAClE,OAAO;QACL,GAAG,WAAW;QACd,iBAAiB,EAAE,WAAW;KAC/B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,MAAkB,EAClB,cAAsB;IAEtB,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC;QAC7C,CAAC,CAAC,MAAM,CAAC,WAAW;QACpB,CAAC,CAAC,SAAS,CAAC;IACd,OAAO;QACL,GAAG,MAAM;QACT,SAAS,EAAE;YACT,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,OAAO,EAAE,cAAc;YACvB,eAAe,EAAE,SAAS;SAC3B;QACD,GAAG,CAAC,UAAU;YACZ,CAAC,CAAC;gBACE,WAAW,EAAE;oBACX,GAAG,UAAU;oBACb,SAAS,EAAE;wBACT,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;4BAChC,CAAC,CAAC,UAAU,CAAC,SAAS;4BACtB,CAAC,CAAC,EAAE,CAAC;wBACP,OAAO,EAAE,cAAc;wBACvB,eAAe,EAAE,SAAS;qBAC3B;iBACF;aACF;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAiB,EACjB,KAA+B,EAC/B,eAA2B,EAC3B,aAAyB;IAEzB,MAAM,cAAc,GAClB,KAAK,CAAC,MAAM,KAAK,UAAU;QAC3B,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;QACxB,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,IAAI;QAC9B,CACE,KAAK,CAAC,cAAc,KAAK,SAAS;YAClC,CACE,aAAa,CAAC,OAAO,KAAK,IAAI;gBAC9B,aAAa,CAAC,UAAU,KAAK,IAAI,CAClC,CACF,CAAC;IACJ,MAAM,kBAAkB,GACtB,KAAK,CAAC,MAAM,KAAK,cAAc;QAC/B,KAAK,CAAC,mBAAmB;QACzB,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC,QAAQ,CACpD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CACrB;QACD,CAAC,CACC,KAAK,CAAC,sBAAsB;YAC5B,aAAa,CAAC,UAAU,KAAK,IAAI,CAClC,CAAC;IACJ,IAAI,CAAC,cAAc,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC3C,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,IAAI,EAAE,0BAA0B;QAChC,SAAS,EAAE,eAAe;QAC1B,oBAAoB,EAAE,IAAI;KAC3B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"terminal-list-renderer.js","sourceRoot":"","sources":["../../src/terminal-list-renderer.ts"],"names":[],"mappings":"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"}