@robota-sdk/agent-ui-web 3.0.0-beta.94 → 3.0.0-beta.96

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,105 @@
1
1
  # @robota-sdk/agent-ui-web
2
2
 
3
+ ## 3.0.0-beta.96
4
+ ### Minor Changes
5
+
6
+ - fbb287d: Show a finished MCP tool call's app in an opaque frame with a source-bound JSON-RPC bridge. App callbacks use the session's view authority and permission prompt. Session changes and frame disposal reject pending local requests.
7
+
8
+ Hosts can provide a sandbox URL through `SessionSurface`. The web GUI serves a separate sandbox document with content restrictions and `Connection-Allowlist` enforcement. App execution requires Chromium 158 or newer and native network isolation; other browsers and hosts without the response policy show an unavailable message and retain the text result. A surface without a sandbox URL never reads the app document.
9
+
10
+ ### Patch Changes
11
+
12
+ - @robota-sdk/agent-interface-command@3.0.0-beta.96
13
+ - @robota-sdk/agent-interface-execution@3.0.0-beta.96
14
+ - @robota-sdk/agent-interface-session@3.0.0-beta.96
15
+ - @robota-sdk/agent-interface-transport@3.0.0-beta.96
16
+ - @robota-sdk/agent-transport@3.0.0-beta.96
17
+
18
+ ## 3.0.0-beta.95
19
+ ### Minor Changes
20
+
21
+ - 0ba247b: A tool result can now carry a view its source declared (an MCP app), and a surface can invoke a
22
+ runtime tool through the session's permission gate with a prompt. This is the contract and wiring
23
+ layer: nothing produces a view yet, and the GUI does not yet host one.
24
+
25
+ - `agent-core` — `IToolResult.view` carries an `IToolAppView` (source, `ui://` resource, mime type,
26
+ HTML, structured content, callable tools, the call's input). `view` is now a typed key of
27
+ `IToolResult`, so an extension that already used a `view` key with another type must rename it.
28
+ The view is display data: it never enters model context or the size that decides a spill, and a
29
+ result replaced by its reference keeps it.
30
+ - `agent-interface-session` — `invokeRuntimeTool` takes `permissionInteraction` (`'interactive'` or
31
+ the default `'deny'`), a `driverId` (a host that attributes prompts names it as the requester) and
32
+ an `executionId` its events carry. A finished model call's `tool_end` names its view with
33
+ `IToolState.appView` (`viewId`, source, resource), and the new
34
+ `ISessionToolAppViews.readToolAppView(viewId)` reads the document. A permission handler may take
35
+ `{ signal }`, and aborting it withdraws the prompt.
36
+ - `agent-session` — a direct call asks a person only when its caller says so, and the handler is
37
+ given the call's own signal; the tool end event carries the view, never in the logged result data.
38
+ - `agent-framework` — the view of a model's call is kept under a `viewId` the session mints, in a
39
+ bounded per-session store (16 views, 4 MiB each, 16 MiB in all, measured on the whole serialized
40
+ view), and read on demand, so the document never rides `tool_end` to every surface, never enters
41
+ the recorded history, and a repeated provider tool-call id cannot overwrite another turn's view.
42
+ A malformed view is dropped. A direct call keeps and names no view, recognised by the id it was
43
+ started with. A submission or agent wakeup that arrives while a direct call holds the session is
44
+ queued behind it, as during a turn, instead of refused. A direct call acting for a driver
45
+ attributes its permission prompt and tool events to that driver, and aborting its signal withdraws
46
+ an open prompt from every surface.
47
+ - `agent-transport` — a driving connection sends `call-app-tool` (answered by `app_tool_result`) and
48
+ `read-app-view` (answered by `app_view`). A call names its view and reaches only the tools that
49
+ view's source declared; a call or read that decodes but cannot be served answers `protocol_error`
50
+ echoing the `requestId`, while an observer's attempt is refused like any non-read. A call still
51
+ waiting on its prompt is cancelled when its connection goes away (for the resume bridge, when the
52
+ bridge is disposed). `maxFrameBytes` bounds an app answer to what a carrier's channel carries;
53
+ the WebRTC carrier uses a history page's worth. `IProtocolSession` now includes the runtime-tool
54
+ and app-view roles.
55
+ - `agent-ui-web` — the two new server messages are recorded as not rendered until the app-view host
56
+ consumes them.
57
+
58
+ An implementation of `IInteractiveSession` or `IProtocolSession` outside this repository must add
59
+ `readToolAppView` (and, for `IProtocolSession`, `listRuntimeTools` and `invokeRuntimeTool`); the
60
+ members are required so a host cannot silently lack them.
61
+
62
+ ### Patch Changes
63
+
64
+ - 09e7e21: **An MCP server's form-mode elicitation during a tool call becomes a Robota ask prompt.**
65
+
66
+ `@robota-sdk/agent-mcp` opens a session with `elicitation: true` to declare form-mode elicitation and
67
+ answer it: a request the server raises while a tool call is in flight (a server→client
68
+ `elicitation/create` on the legacy era, an `input_required` round on 2026-07-28) is put to a person
69
+ through that call's ask port (`IMCPToolCallOptions.ask`, which the discovered tool fills from
70
+ `IToolExecutionContext.ask`) as one question titled with the configured server id and carrying the
71
+ server's message as one bounded line, with Respond and Decline, then one question per field
72
+ (choices, multi-select, yes/no, or free text validated against the field and re-asked once). The
73
+ answer continues the same call; the re-sent `tools/call` that carries it is the protocol's
74
+ continuation, not a replay, and a prompt is withdrawn when its call ends (an abort, or the call's
75
+ own timeout) — when the last in-flight call to that server ends, if there are several, since a
76
+ request names none of them. A request outside an in-flight call, or during a call that has no ask port, is
77
+ declined; a dismissal, a failing port or a second rejected answer cancels; a field named like a
78
+ credential is shown unmasked with a warning. URL mode is not offered. Without the opt-in nothing
79
+ changes: no capability is declared and an `input_required` result still closes the carrier. An
80
+ embedded request of another kind (sampling, roots) or more rounds than the client allows closes the
81
+ carrier as `input_required` does; an embedded elicitation the client refuses on its face (URL mode,
82
+ a malformed form) fails the call and leaves the carrier open.
83
+
84
+ `@robota-sdk/agent-cli` turns the opt-in on for the interactive terminal and the serve host driven by
85
+ the desktop app or the web GUI, which show the prompt, and leaves it off for print mode and for the
86
+ two serve-runtime hosts with no prompt surface, `mcp serve` and the ACP editor agent.
87
+
88
+ `@robota-sdk/agent-ui-web` renders an ask with `maxSelect` above 1 as a multi-select: options toggle
89
+ (click or 1–9), Submit answers with the ticked values once `minSelect` is met, and a toggle beyond
90
+ `maxSelect` is ignored, as in the terminal.
91
+ - Updated dependencies [c967c57]
92
+ - Updated dependencies [60f3965]
93
+ - Updated dependencies [115e104]
94
+ - Updated dependencies [04719a9]
95
+ - Updated dependencies [04a6de4]
96
+ - Updated dependencies [0ba247b]
97
+ - @robota-sdk/agent-transport@3.0.0-beta.95
98
+ - @robota-sdk/agent-interface-session@3.0.0-beta.95
99
+ - @robota-sdk/agent-interface-command@3.0.0-beta.95
100
+ - @robota-sdk/agent-interface-execution@3.0.0-beta.95
101
+ - @robota-sdk/agent-interface-transport@3.0.0-beta.95
102
+
3
103
  ## 3.0.0-beta.94
4
104
  ### Patch Changes
5
105
 
@@ -1,9 +1,20 @@
1
1
  import React$1, { ReactNode } from "react";
2
- import { IAskRequestEvent, IDiffLine, IGoalState, IPermissionRequestEvent, ISettingsSnapshot, IToolState, TDriverId, TPermissionResultValue, TSettingsPatch } from "@robota-sdk/agent-interface-session";
2
+ import { IAskRequestEvent, IDiffLine, IGoalState, IPermissionRequestEvent, ISettingsSnapshot, IToolAppViewRef, IToolState, TDriverId, TPermissionResultValue, TSettingsPatch } from "@robota-sdk/agent-interface-session";
3
3
  import { IWireAgentDefinitionSummary, TClientMessage, TClientMessage as TClientMessage$1, TServerMessage, TServerMessage as TServerMessage$1 } from "@robota-sdk/agent-transport";
4
4
  import { TActionResponse } from "@robota-sdk/agent-interface-transport";
5
5
  import { IBackgroundTaskState, IExecutionDetailRecord, IExecutionWorkspaceEntry, IExecutionWorkspaceSnapshot } from "@robota-sdk/agent-interface-execution";
6
6
  import { TCommandUiIntent } from "@robota-sdk/agent-interface-command";
7
+ //#region src/app-view/types.d.ts
8
+ type TAppView = Extract<TServerMessage, {
9
+ type: 'app_view';
10
+ }>['view'];
11
+ type TAppToolOutcome = Omit<Extract<TServerMessage, {
12
+ type: 'app_tool_result';
13
+ }>, 'type' | 'requestId'>;
14
+ type TAppToolArguments = Extract<TClientMessage, {
15
+ type: 'call-app-tool';
16
+ }>['arguments'];
17
+ //#endregion
7
18
  //#region src/client/ws-session-client.d.ts
8
19
  type TConnectionStatus = 'disconnected' | 'connecting' | 'connected' | 'error';
9
20
  interface IWsSessionClientCallbacks {
@@ -146,6 +157,7 @@ interface IActiveTool {
146
157
  commandName?: string;
147
158
  /** #3288: true for an internal signal tool (e.g. goal-status) — never rendered as a call. */
148
159
  internal?: boolean;
160
+ appView?: IToolAppViewRef;
149
161
  }
150
162
  /**
151
163
  * #3280 §2: a prompt the host queued behind the running turn — the server has already taken it, so it
@@ -337,6 +349,8 @@ interface IWsSessionState<TStatus extends string = TConnectionStatus> {
337
349
  * session notice) — no separate error state here.
338
350
  */
339
351
  deleteSchedule: (taskId: string) => void;
352
+ readAppView: (viewKey: string, signal?: AbortSignal) => Promise<TAppView>;
353
+ callAppTool: (viewKey: string, name: string, args: TAppToolArguments, signal?: AbortSignal) => Promise<TAppToolOutcome>;
340
354
  }
341
355
  //#endregion
342
356
  //#region src/hooks/useSessionClient.d.ts
@@ -505,6 +519,12 @@ declare function AgentSwitcherSheet({ state }: {
505
519
  * lives only in `FreeTextField`, keyed by `prompt.id`: a cancelled or answered prompt's text can
506
520
  * never reach the next prompt's render, masked or not, because the field is a fresh component
507
521
  * instance rather than a value carried over in this component's own state (#3280 §3 follow-up).
522
+ *
523
+ * An ask whose `maxSelect` is above 1 is a multi-select: each option is a toggle (a click or 1–9 ticks
524
+ * it, nothing answers yet), and Submit — or Enter at the prompt, once the selection is allowed —
525
+ * answers with the ticked values in option order. Unlike the free-text field, the ticks live in this
526
+ * component, because the dock's keys act on them; they are tagged with `prompt.id`, so a prompt never
527
+ * reads the ticks of another.
508
528
  */
509
529
  interface IPermissionPromptProps {
510
530
  prompts: readonly TPendingPrompt[];
@@ -538,7 +558,7 @@ declare function PersonalUsageDashboard({ state }: {
538
558
  * The full desktop layout over an `IWsSessionState`. `surface` is an optional label shown next to the
539
559
  * mark (e.g. "app").
540
560
  */
541
- declare function SessionSurface({ state, surface, personalUsageEnabled, onReconnect, pickFiles, getPathForFile, onOpenMemoryInEditor }: {
561
+ declare function SessionSurface({ state, surface, personalUsageEnabled, onReconnect, pickFiles, getPathForFile, onOpenMemoryInEditor, appViewSandboxUrl }: {
542
562
  state: IWsSessionState;
543
563
  surface?: string;
544
564
  /** Desktop shells opt in; embedded/session-only surfaces keep their existing chat-only contract. */
@@ -558,6 +578,7 @@ declare function SessionSurface({ state, surface, personalUsageEnabled, onReconn
558
578
  * itself is hidden (only shown "if the host supports it").
559
579
  */
560
580
  onOpenMemoryInEditor?: (path: string) => void;
581
+ appViewSandboxUrl?: string;
561
582
  }): React.ReactElement;
562
583
  /**
563
584
  * A centered chrome frame for the pre-session (loading) and fatal states — reused by app shells. Its
@@ -711,5 +732,5 @@ declare function ProductIdentityProvider({ value, children }: {
711
732
  }): React.ReactElement;
712
733
  declare function useProductIdentity(): IWebProductIdentity;
713
734
  //#endregion
714
- export { AgentActivityPanel, AgentSwitcherSheet, CenteredChrome, ConfirmDialog, ConversationView, Dialog, HelpSheet, type IActiveTool, type IClientRuntimeBridge, type IClientRuntimeEnvironment, type IClientRuntimeHost, type IClientTrustQuestion, type ICommandOutputEntry, type IComposerHandle, type IConfirmDialogProps, type IConversationMessage, type IDialogProps, type IPickedFile, type ISessionClientHandle, type ISessionNotice, type IToolGroupEntry, type IWebProductIdentity, type IWsSessionClientCallbacks, type IWsSessionState, PermissionPrompt, PersonalUsageDashboard, ProductIdentityProvider, ProductMark, ProductWordmark, SessionMonitor, SessionSidebar, SessionSurface, SettingsScreen, type TClientRuntimeState, type TClientTrustChoice, type TConnectionStatus, type TConversationEntry, type TMakeSessionClient, type TPendingPrompt, type TPersonalUsageDashboardState, type TSessionListing, type TSessionsError, applyPromptEvent, askResponse, createWsSessionClient, describeUiIntentForGui, guiScreenForUiIntent, permissionResponse, rememberSessionForRestore, resolveClientRuntimeHost, useProductIdentity, useSessionClient, useWsSession };
735
+ export { AgentActivityPanel, AgentSwitcherSheet, CenteredChrome, ConfirmDialog, ConversationView, Dialog, HelpSheet, type IActiveTool, type IClientRuntimeBridge, type IClientRuntimeEnvironment, type IClientRuntimeHost, type IClientTrustQuestion, type ICommandOutputEntry, type IComposerHandle, type IConfirmDialogProps, type IConversationMessage, type IDialogProps, type IPickedFile, type ISessionClientHandle, type ISessionNotice, type IToolGroupEntry, type IWebProductIdentity, type IWsSessionClientCallbacks, type IWsSessionState, PermissionPrompt, PersonalUsageDashboard, ProductIdentityProvider, ProductMark, ProductWordmark, SessionMonitor, SessionSidebar, SessionSurface, SettingsScreen, type TAppToolArguments, type TAppToolOutcome, type TAppView, type TClientRuntimeState, type TClientTrustChoice, type TConnectionStatus, type TConversationEntry, type TMakeSessionClient, type TPendingPrompt, type TPersonalUsageDashboardState, type TSessionListing, type TSessionsError, applyPromptEvent, askResponse, createWsSessionClient, describeUiIntentForGui, guiScreenForUiIntent, permissionResponse, rememberSessionForRestore, resolveClientRuntimeHost, useProductIdentity, useSessionClient, useWsSession };
715
736
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/client/ws-session-client.ts","../../src/hooks/prompt-state.ts","../../src/hooks/session-client-types.ts","../../src/hooks/useSessionClient.ts","../../src/hooks/use-session-directory.ts","../../src/components/composer-attachments.ts","../../src/components/Composer.tsx","../../src/client/runtime-host.ts","../../src/hooks/ui-intent-state.ts","../../src/components/ConversationView.tsx","../../src/components/AgentActivityPanel.tsx","../../src/components/AgentSwitcherSheet.tsx","../../src/components/PermissionPrompt.tsx","../../src/components/personal-usage-dashboard-types.ts","../../src/components/PersonalUsageDashboard.tsx","../../src/components/SessionSurface.tsx","../../src/components/SessionSidebar.tsx","../../src/components/SessionMonitor.tsx","../../src/components/Dialog.tsx","../../src/components/SettingsScreen.tsx","../../src/components/HelpSheet.tsx","../../src/components/Brand.tsx","../../src/product-identity.tsx"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/app-view/types.ts","../../src/client/ws-session-client.ts","../../src/hooks/prompt-state.ts","../../src/hooks/session-client-types.ts","../../src/hooks/useSessionClient.ts","../../src/hooks/use-session-directory.ts","../../src/components/composer-attachments.ts","../../src/components/Composer.tsx","../../src/client/runtime-host.ts","../../src/hooks/ui-intent-state.ts","../../src/components/ConversationView.tsx","../../src/components/AgentActivityPanel.tsx","../../src/components/AgentSwitcherSheet.tsx","../../src/components/PermissionPrompt.tsx","../../src/components/personal-usage-dashboard-types.ts","../../src/components/PersonalUsageDashboard.tsx","../../src/components/SessionSurface.tsx","../../src/components/SessionSidebar.tsx","../../src/components/SessionMonitor.tsx","../../src/components/Dialog.tsx","../../src/components/SettingsScreen.tsx","../../src/components/HelpSheet.tsx","../../src/components/Brand.tsx","../../src/product-identity.tsx"],"mappings":";;;;;;;KAEY,WAAW,QAAQ;EAAkB;;KAErC,kBAAkB,KAC5B,QAAQ;EAAkB;;KAIhB,oBAAoB,QAAQ;EAAkB;;;;KCE9C;UAEK;EACf,YAAY,KAAK;EACjB,iBAAiB,QAAQ;;;;;EAKzB;;UAGe;EACf;EACA;EACA,OAAO,KAAK;EACZ,cAAc;;iBAMA,sBACd,aACA,WAAW,4BACV;;;;KCjBS;WACI;IAAuB;WACvB;IAAgB;;;;;;iBAOhB,iBACd,kBAAkB,kBAClB,KAAK,0BACK;;iBA4CI,mBAAmB,YAAY,QAAQ,yBAAyB;;iBAKhE,YAAY,YAAY,UAAU,kBAAkB;;;KC1DxD,uBAAuB,QACjC;EACE;;KAEQ,4BAA4B,QACtC;EACE;;;KAGQ,kBAAkB,KAAK,QAAQ;EAAkB;;;KAEjD,iBAAiB,QAAQ;EAAkB;;;;;;KAM3C,qBAAqB,KAC/B,QAAQ;EAAkB;;;KAKhB,kBAAkB,QAAQ;EAAkB;;;KAE5C,iBAAiB,KAC3B,QAAQ;EAAkB;;KAIhB,6BAA6B,QACvC;EACE;;;;KAKQ,qBAAqB,QAAQ;EAAkB;;KAC/C,mBAAmB,QAAQ;EAAkB;;KAC7C,qBAAqB,QAAQ;EAAkB;;UAE1C;EACf;EACA;EACA;EACA;;EAEA;;;;;;UAOe;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA,gBAAgB;;;UAID;EACf;EACA;EACA;EACA,oBAAoB;;;UAIL;EACf;EACA;EACA,gBAAgB;;KAGN,qBACV,uBAAuB,sBAAsB,kBAAkB;UAEhD;EACf;EACA;EACA;EACA;EACA,SAAS;;EAET;;EAEA,qBAAqB;;EAErB;;EAEA;;EAEA,kBAAkB;;EAElB;;EAEA;;EAEA;EAEA,UAAU;;;;;;;UAQK;EACf;EACA;;UAGe;EACf;;;;;;;;EAQA;EAMA;;;;;;EAMA;EACA;EACA;;;;;;;EAOA;;UAGe;EACf;EACA;EACA,OAAO,KAAK;;KAGF,mBAAmB,yBAAyB,sBAAsB;EAC5E,YAAY,KAAK;EACjB,iBAAiB,QAAQ;MACrB;UAEW,gBAAgB,yBAAyB;EACxD,QAAQ;;;;;;EAMR;EACA,UAAU;EACV,aAAa;EACb;EACA;EACA,oBAAoB;EACpB;;EAEA,aAAa;;EAEb,gBAAgB;;EAEhB,eAAe;;;;;EAKf,WAAW;;EAEX;;EAEA,gBAAgB;;EAEhB,eAAe;EACf;;EAEA,gBAAgB;;EAEhB;;EAEA,sBAAsB,mBAAmB;;EAEzC,gBAAgB;;EAEhB;EACA,wBAAwB;EACxB,OAAO,KAAK;;;;;;EAMZ,sBAAsB,cAAc;EACpC,yBAAyB;;EAEzB,cAAc;EACd,mBAAmB,YAAY,QAAQ;EACvC,YAAY,YAAY,UAAU;EAClC;EACA,qBAAqB;EACrB;EACA,uBAAuB;EACvB;EACA,0BAA0B;EAC1B;EACA;EACA,4BAA4B;EAC5B;EACA,2BAA2B;EAC3B;EACA,yBAAyB;EACzB,uBAAuB;;EAEvB;EACA;;EAEA,kBAAkB;;EAElB;;EAEA;;;;;;EAMA,eAAe;EACf;;EAEA,iBAAiB,OAAO;;EAExB;EACA;EACA;;EAEA;EACA;EACA,iCAAiC;EACjC;;EAEA;EACA,sBAAsB;EACtB;EACA;;EAEA;EACA,eAAe;EACf;;EAEA;EACA;EACA,aAAa;EACb,qBAAqB;;EAErB;EACA,eAAe;EACf;;;;;EAKA;EACA;;EAEA,2BAA2B;;EAE3B;;EAEA;;EAEA;EACA;;EAEA,cAAc;;;;;EAKd,yBAAyB;;EAEzB,gBAAgB;EAChB,iBAAiB;;;;;;EAMjB,iBAAiB;EAEjB,cAAc,iBAAiB,SAAS,gBAAgB,QAAQ;EAChE,cACE,iBACA,cACA,MAAM,mBACN,SAAS,gBACN,QAAQ;;;;iBCzEC,iBAAiB,yBAAyB,mBACxD,YAAY,mBAAmB,WAC9B,gBAAgB;;iBA2tBH,aACd,cACC,gBAAgB;EAAuB;;;;;;;;;;iBC97B1B,0BAA0B,mBAAmB;;;;;;;;;UCY5C;WACN;WACA;WACA;;;;;UCnCM;;EAEf;;;;;KCxBU;;UAGK;WACN;WACA;;KAGC;;;;;UAMK;WACN;EACT,eAAe;EACf;EACA,QAAQ,WAAW,OAAO,qBAAqB;EAC/C,kBAAkB;EAClB,iBAAiB,QAAQ;EACzB,YAAY,QAAQ,qBAAqB;IAAU;;EACnD,cAAc,iBAAiB;EAC/B,gBAAgB,MAAM;EACtB,gBAAgB;EAChB,UAAU,eAAe;IAAU;;;;UAIpB;WACN;EACT,eAAe;EACf;EACA,QAAQ,WAAW,OAAO,qBAAqB;WACtC,uBAAuB;WACvB,sBAAsB,QAAQ;WAC9B,eAAe,QAAQ,uBAAuB;IAAU;;WACxD,kBAAkB,iBAAiB;WACnC,kBAAkB,MAAM;EACjC,eAAe;WACN,sBAAsB;;UAGhB;WACN,SAAS;WACT,UAAU,KAAK;WACf,UAAU,KAAK;;;iBAIV,yBAAyB,aAAa,4BAA4B;;;;iBChBlE,qBACd,QAAQ;;;;;;;;;;iBAoBM,uBAAuB,QAAQ;;;UC8DrC;EACR,mBAAmB;EACnB,aAAa;EACb;EACA;;EAEA,aAAa;;iBA4gBC,mBACd,UACA,aACA,eACA,YACA,eACC,yBAAyB,QAAM;;;UCjnBxB;EACR,gBAAgB;;EAEhB,qBAAqB;;EAErB,OAAO;EACP,mBAAmB;EACnB,oBAAoB;EACpB,oBAAoB;EACpB;EACA;;EAEA,YAAY,OAAO;;EAEnB;;EAEA,UAAU,OAAO;;EAEjB;;iBAGc,qBACd,OACA,WACA,MACA,iBACA,kBACA,kBACA,cACA,WACA,UACA,wBACA,QACA,mBACC,2BAA2B,QAAM;;;;;;;;;;;iBChDpB,qBAAqB;EAAW,OAAO;IAAoB,QAAM;;;;;;;;;;;;;;;;;;;;;;;;UCwBvE;EACR,kBAAkB;EAClB,qBAAqB,YAAY;EACjC,cAAc,YAAY,UAAU;;EAEpC,cAAc;EACd;;EAEA;;;;;;;EAOA;;iBAiEc,mBACd,SACA,oBACA,aACA,aACA,QACA,YACA,iBACC,yBAAyB,QAAM;;;KC7HtB,+BAA+B,KACzC;;;iBCQc,yBACd;EAEA,OAAO;IACL,MAAM;;;;;;;iBCwFM,iBACd,OACA,SACA,sBACA,aACA,WACA,gBACA,sBACA;EAEA,OAAO;EACP;;EAEA;;;;;EAKA,oBAAoB;;EAEpB,kBAAkB,iBAAiB;;EAEnC,kBAAkB,MAAM;;;;;;EAMxB,wBAAwB;EAExB;IACE,MAAM;;;;;;;;iBA2TM,iBACd,MACA;EAEA;EACA,UAAU,MAAM;IACd,MAAM;;;;;;;;;;;;;iBChYM,iBACd,OACA,OACA;EAEA,OAAO;;EAEP,QAAQ,MAAM;EACd;IACE,MAAM;;;UCtDA;;EAER;EACA;;iBAGc,iBAAiB,OAAO,aAAa,uBAAuB,QAAM;;;;;;;;;;;;;;UCnBjE;EACf;;EAEA;EACA;EACA,UAAU,QAAM;;EAEhB;;EAEA;;EAEA;;;;;;;;EAQA,iBAAiB;;;;;;EAMjB;;iBAiBc,SACd,MACA,SACA,OACA,UACA,aACA,gBACA,eACA,gBACA,QACC,eAAe,QAAM;UAqGP;EACf;EACA;EACA,MAAM,QAAM;EACZ;EACA;;EAEA;EACA;EACA;;EAEA,iBAAiB;;;;;;;iBAQH,gBACd,MACA,OACA,MACA,cACA,aACA,aACA,WACA,UACA,kBACC,sBAAsB,QAAM;;;;;;;;;;iBCzJf,iBAAiB;EAAW,OAAO;IAAoB,QAAM;;;;;;;;;;;iBCb7D,YACd,MACA,SACA;EAEA;EACA;EACA,SAAS;IACP,MAAM;;;;iBCrCM,cAAc;EAAe;IAAkB,MAAM;;iBAiBrD,kBAAkB;EAAa;IAAqB,MAAM;;;;UChBzD;WACN;aAAqB;aAA8B;;WACnD;aAAoB;;;iBAKf,0BAA0B,OAAO;WACtC,OAAO;WACP,WAAW;IAClB,MAAM;iBAQM,sBAAsB"}