@yadsh/dsh-qa-surface 0.1.1 → 0.3.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 (192) hide show
  1. package/CHANGELOG.md +151 -0
  2. package/README.md +239 -16
  3. package/SPEC-dsh-qa-surface.md +600 -96
  4. package/capability-policy.json +5 -0
  5. package/compatibility.json +18 -4
  6. package/cordis.patch.yml +11 -0
  7. package/docs/ARCHITECTURE.md +50 -8
  8. package/docs/COMPATIBILITY.md +5 -4
  9. package/docs/CONFIGURATION.md +184 -3
  10. package/docs/SOURCES-MIGRATION.md +28 -0
  11. package/docs/SOURCES-PROVENANCE-AUDIT.md +88 -0
  12. package/docs/SPEC-dsh-qa-surface-accounts.md +219 -0
  13. package/docs/SPEC-dsh-qa-surface-sources-provenance.md +1692 -0
  14. package/lib/accounts/index.js +2 -0
  15. package/lib/accounts/index.js.map +1 -0
  16. package/lib/accounts/store.js +478 -0
  17. package/lib/accounts/store.js.map +1 -0
  18. package/lib/attestation.js +10 -0
  19. package/lib/attestation.js.map +1 -0
  20. package/lib/cli.js +143 -0
  21. package/lib/cli.js.map +1 -0
  22. package/lib/client/QaAccountsController.js +329 -0
  23. package/lib/client/QaAccountsController.js.map +1 -0
  24. package/lib/client/QaConfigController.js +111 -4
  25. package/lib/client/QaConfigController.js.map +1 -1
  26. package/lib/client/QaSessionController.js +621 -163
  27. package/lib/client/QaSessionController.js.map +1 -1
  28. package/lib/client/QaSurface.js +303 -24
  29. package/lib/client/QaSurface.js.map +1 -1
  30. package/lib/client/QaTranscriptAdapter.js +324 -49
  31. package/lib/client/QaTranscriptAdapter.js.map +1 -1
  32. package/lib/client/attestation.js +66 -0
  33. package/lib/client/attestation.js.map +1 -0
  34. package/lib/client/chat-index.js +86 -0
  35. package/lib/client/chat-index.js.map +1 -0
  36. package/lib/client/components/Markdown.js +124 -13
  37. package/lib/client/components/Markdown.js.map +1 -1
  38. package/lib/client/components/QaAgentsDrawer.js +40 -0
  39. package/lib/client/components/QaAgentsDrawer.js.map +1 -0
  40. package/lib/client/components/QaAuthGate.js +40 -0
  41. package/lib/client/components/QaAuthGate.js.map +1 -0
  42. package/lib/client/components/QaChangelog.js +112 -0
  43. package/lib/client/components/QaChangelog.js.map +1 -0
  44. package/lib/client/components/QaComposer.js +132 -15
  45. package/lib/client/components/QaComposer.js.map +1 -1
  46. package/lib/client/components/QaMessage.js +214 -10
  47. package/lib/client/components/QaMessage.js.map +1 -1
  48. package/lib/client/components/QaSidebar.js +167 -0
  49. package/lib/client/components/QaSidebar.js.map +1 -0
  50. package/lib/client/components/QaSourcesDrawer.js +127 -0
  51. package/lib/client/components/QaSourcesDrawer.js.map +1 -0
  52. package/lib/client/components/QaTurnRail.js +281 -0
  53. package/lib/client/components/QaTurnRail.js.map +1 -0
  54. package/lib/client/components/QaWelcomeNotice.js +125 -0
  55. package/lib/client/components/QaWelcomeNotice.js.map +1 -0
  56. package/lib/client/components/QaWidthHandle.js +142 -0
  57. package/lib/client/components/QaWidthHandle.js.map +1 -0
  58. package/lib/client/components/QaWorkGroup.js +135 -0
  59. package/lib/client/components/QaWorkGroup.js.map +1 -0
  60. package/lib/client/components/VariantSwitcher.js +29 -0
  61. package/lib/client/components/VariantSwitcher.js.map +1 -0
  62. package/lib/client/components/format.js +48 -0
  63. package/lib/client/components/format.js.map +1 -0
  64. package/lib/client/components/source-refs.js +78 -0
  65. package/lib/client/components/source-refs.js.map +1 -0
  66. package/lib/client/create-session.js +51 -0
  67. package/lib/client/create-session.js.map +1 -0
  68. package/lib/client/index.js +166 -35
  69. package/lib/client/index.js.map +1 -1
  70. package/lib/client/project-session-state.js +78 -0
  71. package/lib/client/project-session-state.js.map +1 -0
  72. package/lib/client/session-admission.js +38 -0
  73. package/lib/client/session-admission.js.map +1 -0
  74. package/lib/client/session-assets.js +52 -0
  75. package/lib/client/session-assets.js.map +1 -0
  76. package/lib/client/session-sources.js +61 -0
  77. package/lib/client/session-sources.js.map +1 -0
  78. package/lib/client/settlement.js +24 -0
  79. package/lib/client/settlement.js.map +1 -0
  80. package/lib/client/styles.js +450 -43
  81. package/lib/client/styles.js.map +1 -1
  82. package/lib/client/tool-presentation.js +102 -0
  83. package/lib/client/tool-presentation.js.map +1 -0
  84. package/lib/client/turn-sources.js +98 -0
  85. package/lib/client/turn-sources.js.map +1 -0
  86. package/lib/client/types.js +15 -0
  87. package/lib/client/types.js.map +1 -0
  88. package/lib/client/use-session-ui-state.js +68 -0
  89. package/lib/client/use-session-ui-state.js.map +1 -0
  90. package/lib/client/use-transcript-view.js +44 -0
  91. package/lib/client/use-transcript-view.js.map +1 -0
  92. package/lib/client/wait-for.js +49 -0
  93. package/lib/client/wait-for.js.map +1 -0
  94. package/lib/client.js +12551 -918
  95. package/lib/client.js.map +1 -1
  96. package/lib/config.js +226 -58
  97. package/lib/config.js.map +1 -1
  98. package/lib/entry-redirect.js +44 -0
  99. package/lib/entry-redirect.js.map +1 -0
  100. package/lib/host-route.js +25 -1
  101. package/lib/host-route.js.map +1 -1
  102. package/lib/index.js +354 -72
  103. package/lib/index.js.map +1 -1
  104. package/lib/launch-token.js +42 -0
  105. package/lib/launch-token.js.map +1 -0
  106. package/lib/lockdown-policy.js +20 -0
  107. package/lib/lockdown-policy.js.map +1 -0
  108. package/lib/provenance/collector.js +40 -0
  109. package/lib/provenance/collector.js.map +1 -0
  110. package/lib/provenance/connectors.js +147 -0
  111. package/lib/provenance/connectors.js.map +1 -0
  112. package/lib/provenance/dedupe.js +89 -0
  113. package/lib/provenance/dedupe.js.map +1 -0
  114. package/lib/provenance/extractors.js +340 -0
  115. package/lib/provenance/extractors.js.map +1 -0
  116. package/lib/provenance/file-preview.js +39 -0
  117. package/lib/provenance/file-preview.js.map +1 -0
  118. package/lib/provenance/host-store.js +387 -0
  119. package/lib/provenance/host-store.js.map +1 -0
  120. package/lib/provenance/index.js +9 -0
  121. package/lib/provenance/index.js.map +1 -0
  122. package/lib/provenance/normalize.js +128 -0
  123. package/lib/provenance/normalize.js.map +1 -0
  124. package/lib/provenance/reported.js +53 -0
  125. package/lib/provenance/reported.js.map +1 -0
  126. package/lib/provenance/types.js +2 -0
  127. package/lib/provenance/types.js.map +1 -0
  128. package/lib/resolve-config.js +283 -10
  129. package/lib/resolve-config.js.map +1 -1
  130. package/lib/secure-session.js +212 -0
  131. package/lib/secure-session.js.map +1 -0
  132. package/lib/typert.host.d.ts +3 -0
  133. package/lib/typert.host.js +784 -0
  134. package/lib/typert.remote-client.d.ts +40 -0
  135. package/lib/typert.remote-client.js +597 -0
  136. package/lib/types/accounts/index.d.ts +2 -0
  137. package/lib/types/accounts/store.d.ts +121 -0
  138. package/lib/types/attestation.d.ts +17 -0
  139. package/lib/types/cli.d.ts +9 -0
  140. package/lib/types/client/QaAccountsController.d.ts +95 -0
  141. package/lib/types/client/QaConfigController.d.ts +35 -3
  142. package/lib/types/client/QaSessionController.d.ts +146 -20
  143. package/lib/types/client/QaSurface.d.ts +11 -5
  144. package/lib/types/client/QaTranscriptAdapter.d.ts +13 -3
  145. package/lib/types/client/attestation.d.ts +25 -0
  146. package/lib/types/client/chat-index.d.ts +28 -0
  147. package/lib/types/client/components/Markdown.d.ts +17 -3
  148. package/lib/types/client/components/QaAgentsDrawer.d.ts +25 -0
  149. package/lib/types/client/components/QaAuthGate.d.ts +15 -0
  150. package/lib/types/client/components/QaChangelog.d.ts +21 -0
  151. package/lib/types/client/components/QaComposer.d.ts +12 -2
  152. package/lib/types/client/components/QaMessage.d.ts +22 -2
  153. package/lib/types/client/components/QaSidebar.d.ts +69 -0
  154. package/lib/types/client/components/QaSourcesDrawer.d.ts +20 -0
  155. package/lib/types/client/components/QaTurnRail.d.ts +59 -0
  156. package/lib/types/client/components/QaWelcomeNotice.d.ts +27 -0
  157. package/lib/types/client/components/QaWidthHandle.d.ts +36 -0
  158. package/lib/types/client/components/QaWorkGroup.d.ts +19 -0
  159. package/lib/types/client/components/VariantSwitcher.d.ts +19 -0
  160. package/lib/types/client/components/format.d.ts +9 -0
  161. package/lib/types/client/components/source-refs.d.ts +16 -0
  162. package/lib/types/client/create-session.d.ts +16 -0
  163. package/lib/types/client/index.d.ts +2 -5
  164. package/lib/types/client/project-session-state.d.ts +30 -0
  165. package/lib/types/client/session-admission.d.ts +23 -0
  166. package/lib/types/client/session-assets.d.ts +20 -0
  167. package/lib/types/client/session-sources.d.ts +28 -0
  168. package/lib/types/client/settlement.d.ts +6 -0
  169. package/lib/types/client/tool-presentation.d.ts +6 -0
  170. package/lib/types/client/turn-sources.d.ts +14 -0
  171. package/lib/types/client/types.d.ts +93 -0
  172. package/lib/types/client/use-session-ui-state.d.ts +35 -0
  173. package/lib/types/client/use-transcript-view.d.ts +20 -0
  174. package/lib/types/client/wait-for.d.ts +11 -0
  175. package/lib/types/entry-redirect.d.ts +20 -0
  176. package/lib/types/host-route.d.ts +14 -1
  177. package/lib/types/index.d.ts +67 -7
  178. package/lib/types/launch-token.d.ts +21 -0
  179. package/lib/types/lockdown-policy.d.ts +18 -0
  180. package/lib/types/provenance/collector.d.ts +26 -0
  181. package/lib/types/provenance/connectors.d.ts +11 -0
  182. package/lib/types/provenance/dedupe.d.ts +6 -0
  183. package/lib/types/provenance/extractors.d.ts +14 -0
  184. package/lib/types/provenance/file-preview.d.ts +10 -0
  185. package/lib/types/provenance/host-store.d.ts +54 -0
  186. package/lib/types/provenance/index.d.ts +10 -0
  187. package/lib/types/provenance/normalize.d.ts +13 -0
  188. package/lib/types/provenance/reported.d.ts +5 -0
  189. package/lib/types/provenance/types.d.ts +78 -0
  190. package/lib/types/secure-session.d.ts +31 -0
  191. package/lib/types/types.d.ts +304 -1
  192. package/package.json +70 -27
@@ -1 +1 @@
1
- {"version":3,"file":"QaSessionController.js","sourceRoot":"","sources":["../../src/client/QaSessionController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QaSessionController.js","sourceRoot":"","sources":["../../src/client/QaSessionController.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,24 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useEffect, useLayoutEffect, useRef, useState, useSyncExternalStore, } from "react";
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore, } from "react";
3
3
  import { QaSessionController } from "./QaSessionController.js";
4
+ import { QA_SESSION_IDLE_STATE } from "./types.js";
5
+ import { QaAuthGate } from "./components/QaAuthGate.js";
4
6
  import { QaComposer } from "./components/QaComposer.js";
5
7
  import { QaMessage } from "./components/QaMessage.js";
6
- const INACTIVE_STATE = Object.freeze({
7
- phase: "idle",
8
- sessionId: null,
9
- messages: Object.freeze([]),
10
- error: null,
11
- canSend: false,
12
- canStop: false,
13
- });
8
+ import { buildChatRows, QaSidebar } from "./components/QaSidebar.js";
9
+ import { QaAgentsDrawer, collectSubagents, } from "./components/QaAgentsDrawer.js";
10
+ import { QaSourcesDrawer } from "./components/QaSourcesDrawer.js";
11
+ import { QA_TURN_ANCHOR_ATTRIBUTE, QaTurnRail, computeActiveTurn, turnScrollTarget, } from "./components/QaTurnRail.js";
12
+ import { QaWidthHandle, useQaContentWidth, } from "./components/QaWidthHandle.js";
13
+ import { VariantSwitcher } from "./components/VariantSwitcher.js";
14
+ import { QaWelcomeNotice } from "./components/QaWelcomeNotice.js";
15
+ import { useTranscriptView } from "./use-transcript-view.js";
16
+ import { useSessionUiState } from "./use-session-ui-state.js";
14
17
  const noopSubscribe = () => () => undefined;
18
+ /** Stable empty stand-in so memoized children see one identity, not a fresh []. */
19
+ const NO_QUESTIONS = Object.freeze([]);
20
+ const ACCOUNTS_CHECKING_SNAPSHOT = { stage: "checking" };
21
+ const noopAccountsSnapshot = () => ACCOUNTS_CHECKING_SNAPSHOT;
15
22
  function focusable(root) {
16
23
  return [
17
24
  ...root.querySelectorAll("button:not([disabled]), textarea:not([disabled]), a[href], [tabindex]:not([tabindex='-1'])"),
@@ -40,37 +47,119 @@ function trapKeys(event) {
40
47
  }
41
48
  function statusText(state) {
42
49
  if (state.phase === "creating")
43
- return "Connecting…";
50
+ return "Подключаюсь…";
44
51
  if (state.phase === "reconnecting")
45
- return "Connection lost. Reconnecting…";
52
+ return "Связь потерялась. Подключаюсь снова…";
46
53
  if (state.phase === "running")
47
- return "Assistant is responding…";
54
+ return "Скребу по сусекам…";
48
55
  return null;
49
56
  }
57
+ function titleFromMessages(state) {
58
+ const firstUser = state.messages.find((message) => message.role === "user");
59
+ if (firstUser === undefined)
60
+ return null;
61
+ const title = firstUser.text.replace(/\s+/gu, " ").trim();
62
+ if (title === "")
63
+ return null;
64
+ if (title.length <= 52)
65
+ return title;
66
+ return `${title.slice(0, 51).trimEnd()}…`;
67
+ }
68
+ function modeLabel(agentPreset) {
69
+ if (agentPreset === null)
70
+ return "Режим вопросов";
71
+ const name = agentPreset
72
+ .replace(/[-_]+/gu, " ")
73
+ .replace(/^\p{Ll}/u, (letter) => letter.toUpperCase());
74
+ return `Режим «${name}»`;
75
+ }
76
+ function RobotBadge() {
77
+ return (_jsxs("svg", { className: "dsh-qa-agentview__icon", viewBox: "0 0 16 16", "aria-hidden": "true", children: [_jsx("rect", { x: "3", y: "5", width: "10", height: "7.5", rx: "1.75" }), _jsx("path", { d: "M8 2.5V5m0-.25a.9.9 0 1 0-.01-1.8.9.9 0 0 0 .01 1.8ZM5.4 8.4h1.7M8.9 8.4h1.7M6 10.4h4" })] }));
78
+ }
50
79
  export function QaSurface(props) {
51
80
  const route = useSyncExternalStore(props.route.subscribe, props.route.getSnapshot, props.route.getSnapshot);
52
81
  const configState = useSyncExternalStore(props.config.subscribe, props.config.getSnapshot, props.config.getSnapshot);
53
82
  const config = configState.config;
83
+ const accounts = props.accounts;
84
+ const accountsSnapshot = useSyncExternalStore(accounts?.subscribe ?? noopSubscribe, accounts?.getSnapshot ?? noopAccountsSnapshot, accounts?.getSnapshot ?? noopAccountsSnapshot);
85
+ const accountsStage = accountsSnapshot.stage;
54
86
  const [controller, setController] = useState();
55
87
  const transcript = useRef(null);
88
+ const chat = useRef(null);
56
89
  const nearBottom = useRef(true);
90
+ /** Turn marks of the visible transcript, kept in a ref for stable callbacks. */
91
+ const railItemsRef = useRef([]);
92
+ const activeTurnFrame = useRef(null);
93
+ const stateKey = `${config.session.storageKey}:v1:${config.route.path}`;
94
+ const widthHandlers = useQaContentWidth({
95
+ active: route.active,
96
+ root: chat,
97
+ storage: window.localStorage,
98
+ storageKey: `${stateKey}:content-width`,
99
+ maxContentWidth: config.ui.maxContentWidth,
100
+ });
57
101
  useEffect(() => {
58
102
  if (!route.active) {
59
103
  setController(undefined);
60
104
  return;
61
105
  }
106
+ const accountsEnabled = config.accounts.enabled && accounts !== undefined;
107
+ // The gate owns the frame until the browser holds a valid identity; the
108
+ // session controller (and every attestation it triggers) waits for it.
109
+ if (accountsEnabled && accountsStage !== "authed") {
110
+ setController(undefined);
111
+ return;
112
+ }
113
+ const facade = accountsEnabled && accounts
114
+ ? {
115
+ token: () => accounts.token(),
116
+ ownedIds: () => accounts.ownedIds(),
117
+ messageAuthorOf: (sessionId) => accounts.messageAuthorOf(sessionId),
118
+ onSessionCreated: (sessionId) => {
119
+ void accounts.claimNewSession(sessionId);
120
+ },
121
+ onAuthRequired: () => accounts.signOut(),
122
+ }
123
+ : undefined;
62
124
  const next = new QaSessionController({
63
125
  sessions: props.sessions,
64
126
  api: props.api,
127
+ conversation: props.conversation,
65
128
  connection: props.connection,
129
+ secureSession: props.secureSession,
130
+ sourceApi: props.sourceApi,
66
131
  config,
67
132
  storage: window.localStorage,
133
+ accounts: facade,
68
134
  });
69
135
  setController(next);
70
136
  void next.ensureSession();
71
137
  return () => next.dispose();
72
- }, [config, props.api, props.connection, props.sessions, route.active]);
73
- const state = useSyncExternalStore(controller?.subscribe ?? noopSubscribe, controller?.getSnapshot ?? (() => INACTIVE_STATE), controller?.getSnapshot ?? (() => INACTIVE_STATE));
138
+ }, [
139
+ accounts,
140
+ accountsStage,
141
+ config,
142
+ props.api,
143
+ props.conversation,
144
+ props.connection,
145
+ props.secureSession,
146
+ props.sourceApi,
147
+ props.sessions,
148
+ route.active,
149
+ ]);
150
+ // The drawer receives a token-bound view; its props keep the simple shape.
151
+ const boundSourceApi = useMemo(() => ({
152
+ sources: (sessionId) => props.sourceApi.sources(accounts?.token() ?? "", sessionId),
153
+ readSourceFile: (sessionId, sourcePath) => props.sourceApi.readSourceFile(accounts?.token() ?? "", sessionId, sourcePath),
154
+ }), [accounts, props.sourceApi]);
155
+ const handleLogout = useCallback(() => {
156
+ accounts?.signOut();
157
+ }, [accounts]);
158
+ const state = useSyncExternalStore(controller?.subscribe ?? noopSubscribe, controller?.getSnapshot ?? (() => QA_SESSION_IDLE_STATE), controller?.getSnapshot ?? (() => QA_SESSION_IDLE_STATE));
159
+ const listState = useSyncExternalStore(props.sessions.list.subscribe, props.sessions.list.getSnapshot, props.sessions.list.getSnapshot);
160
+ // Draft text, attachments, variant offsets and drawers are chat-local; the
161
+ // hook clears them whenever the bound session changes.
162
+ const { activeTurn, setActiveTurn, variantOffsets, setVariantOffsets, pendingImages, setPendingImages, agentsOpen, setAgentsOpen, sourcesOpen, setSourcesOpen, drawerSources, setDrawerSources, drawerCompleteness, setDrawerCompleteness, drawerDetail, setDrawerDetail, } = useSessionUiState(state.sessionId);
74
163
  useEffect(() => {
75
164
  if (!route.active)
76
165
  return;
@@ -89,21 +178,211 @@ export function QaSurface(props) {
89
178
  document.documentElement.style.overflow = previousHtmlOverflow;
90
179
  };
91
180
  }, [route.active]);
181
+ // Stable identities for the memoized render path: message rows, the sidebar
182
+ // and the composer compare callbacks by reference, so per-frame closures
183
+ // here would defeat the memoization downstream.
184
+ const resolveImage = useMemo(() => controller === undefined
185
+ ? undefined
186
+ : (attachmentId) => controller.readImage(attachmentId), [controller]);
187
+ const handleRegenerate = useCallback(() => {
188
+ void controller?.regenerate();
189
+ }, [controller]);
190
+ const handleSwitch = useCallback((sessionId) => {
191
+ void controller?.switchTo(sessionId);
192
+ }, [controller]);
193
+ const handleNewChat = useCallback(() => {
194
+ void controller?.startDraft();
195
+ }, [controller]);
196
+ const handleDelete = useCallback((sessionId) => {
197
+ void controller?.deleteChat(sessionId);
198
+ }, [controller]);
199
+ const handleSend = useCallback((text, images) => controller?.send(text, images) ?? Promise.resolve(false), [controller]);
200
+ const handleStop = useCallback(() => controller?.stop() ?? Promise.resolve(), [controller]);
201
+ /** Turn the transcript's reading line currently owns; rAF-throttled. */
202
+ const syncActiveTurn = useCallback(() => {
203
+ const element = transcript.current;
204
+ const items = railItemsRef.current;
205
+ if (element === null || items.length === 0) {
206
+ setActiveTurn((current) => (current === null ? current : null));
207
+ return;
208
+ }
209
+ const next = computeActiveTurn(element, items);
210
+ setActiveTurn((current) => (current === next ? current : next));
211
+ }, []);
212
+ const scheduleActiveTurnSync = useCallback(() => {
213
+ if (activeTurnFrame.current !== null)
214
+ return;
215
+ if (typeof requestAnimationFrame === "undefined") {
216
+ syncActiveTurn();
217
+ return;
218
+ }
219
+ activeTurnFrame.current = requestAnimationFrame(() => {
220
+ activeTurnFrame.current = null;
221
+ syncActiveTurn();
222
+ });
223
+ }, [syncActiveTurn]);
224
+ useEffect(() => () => {
225
+ if (activeTurnFrame.current !== null &&
226
+ typeof cancelAnimationFrame !== "undefined") {
227
+ cancelAnimationFrame(activeTurnFrame.current);
228
+ }
229
+ }, []);
230
+ const handleTurnNavigate = useCallback((item) => {
231
+ const element = transcript.current;
232
+ if (element === null)
233
+ return;
234
+ const escaped = typeof CSS !== "undefined" && typeof CSS.escape === "function"
235
+ ? CSS.escape(item.id)
236
+ : item.id;
237
+ const row = element.querySelector(`[${QA_TURN_ANCHOR_ATTRIBUTE}="${escaped}"]`);
238
+ if (row === null)
239
+ return;
240
+ element.scrollTop = turnScrollTarget(element, row);
241
+ nearBottom.current =
242
+ element.scrollHeight - element.scrollTop - element.clientHeight < 96;
243
+ setActiveTurn(item.turn);
244
+ }, []);
245
+ const handleOpenSources = useCallback((sources, complete, incompleteOrigins) => {
246
+ setDrawerSources(sources);
247
+ setDrawerCompleteness({
248
+ complete,
249
+ ...(incompleteOrigins === undefined ? {} : { incompleteOrigins }),
250
+ });
251
+ setDrawerDetail(null);
252
+ setSourcesOpen(true);
253
+ setAgentsOpen(false);
254
+ }, []);
255
+ const handleSourceDetail = useCallback((source) => {
256
+ setDrawerSources(null);
257
+ setDrawerCompleteness(null);
258
+ setDrawerDetail(source);
259
+ setSourcesOpen(true);
260
+ setAgentsOpen(false);
261
+ }, []);
92
262
  useLayoutEffect(() => {
93
263
  const element = transcript.current;
94
264
  if (element !== null && nearBottom.current) {
95
265
  element.scrollTop = element.scrollHeight;
96
266
  }
97
- }, [state.messages]);
98
- if (!route.active)
99
- return null;
267
+ scheduleActiveTurnSync();
268
+ }, [state.messages, scheduleActiveTurnSync]);
100
269
  const status = statusText(state);
101
270
  const empty = state.messages.length === 0;
102
- return (_jsxs("main", { className: "dsh-qa-surface", "aria-label": config.branding.title, tabIndex: -1, onKeyDown: trapKeys, children: [config.ui.showHeader ? (_jsx("header", { className: "dsh-qa-header", children: _jsxs("div", { className: "dsh-qa-header__inner", style: { maxWidth: config.ui.maxContentWidth }, children: [config.branding.logoUrl === null ? null : (_jsx("img", { className: "dsh-qa-header__logo", src: config.branding.logoUrl, alt: "" })), _jsxs("div", { className: "dsh-qa-header__text", children: [_jsx("h1", { children: config.branding.title }), config.branding.subtitle === "" ? null : (_jsx("p", { children: config.branding.subtitle }))] }), config.ui.showReset && config.session.policy !== "fixed" ? (_jsx("button", { type: "button", className: "dsh-qa-button dsh-qa-button--secondary", disabled: controller === undefined || state.phase === "creating", onClick: () => void controller?.reset(), children: "New chat" })) : null] }) })) : null, _jsx("div", { ref: transcript, className: "dsh-qa-transcript", onScroll: (event) => {
103
- const element = event.currentTarget;
104
- nearBottom.current =
105
- element.scrollHeight - element.scrollTop - element.clientHeight <
106
- 96;
107
- }, children: _jsxs("div", { className: "dsh-qa-transcript__inner", style: { maxWidth: config.ui.maxContentWidth }, children: [empty ? (_jsxs("section", { className: "dsh-qa-welcome", "aria-labelledby": "dsh-qa-welcome-title", children: [_jsx("h2", { id: "dsh-qa-welcome-title", children: config.branding.welcomeMessage }), config.suggestedQuestions.length > 0 ? (_jsx("div", { className: "dsh-qa-suggestions", "aria-label": "Suggested questions", children: config.suggestedQuestions.map((question) => (_jsx("button", { type: "button", disabled: !state.canSend, onClick: () => void controller?.send(question), children: question }, question))) })) : null] })) : (state.messages.map((message) => (_jsx(QaMessage, { message: message, renderMarkdown: config.ui.renderMarkdown, showTimestamp: config.ui.showTimestamps }, message.id)))), state.error === null ? null : (_jsxs("div", { className: "dsh-qa-error", role: "alert", children: [_jsx("span", { children: state.error }), state.phase === "error" ? (_jsx("button", { type: "button", onClick: () => void controller?.ensureSession(), children: "Retry" })) : null] }))] }) }), _jsx("footer", { className: "dsh-qa-footer", children: _jsxs("div", { className: "dsh-qa-footer__inner", style: { maxWidth: config.ui.maxContentWidth }, children: [_jsx("div", { className: "dsh-qa-status", "aria-live": "polite", "aria-atomic": "true", children: status }), _jsx(QaComposer, { placeholder: config.branding.placeholder, canSend: state.canSend, canStop: state.canStop, running: state.phase === "running", showStop: config.ui.showStop, onSend: (text) => controller?.send(text) ?? Promise.resolve(false), onStop: () => controller?.stop() ?? Promise.resolve() })] }) })] }));
271
+ const conversationTitle = titleFromMessages(state);
272
+ const showSidebar = config.ui.showSessionList && controller !== undefined;
273
+ const allowNewChat = config.session.policy !== "fixed" &&
274
+ (!config.lockdown.enabled || config.lockdown.allowSessionReset);
275
+ const view = useTranscriptView(state.messages, variantOffsets);
276
+ const visibleMessages = view.visibleMessages;
277
+ const activeSessionId = controller?.activeSessionId() ?? null;
278
+ const agentRows = useMemo(() => collectSubagents(listState.byId, activeSessionId), [listState, activeSessionId]);
279
+ // Admins group the sidebar by chat owner; everyone else sees the flat list.
280
+ const ownerNames = useMemo(() => config.accounts.enabled &&
281
+ config.accounts.showOtherUsersChats &&
282
+ accounts !== undefined &&
283
+ accountsSnapshot.stage === "authed" &&
284
+ accountsSnapshot.user.role === "admin"
285
+ ? accounts.ownerNames()
286
+ : undefined, [config, accounts, accountsSnapshot]);
287
+ const railItems = view.railItems;
288
+ railItemsRef.current = railItems;
289
+ const busyTurn = state.phase === "running" ? (railItems.at(-1)?.turn ?? null) : null;
290
+ const chatRows = useMemo(() => showSidebar
291
+ ? buildChatRows(controller?.chatIds() ?? [], listState.byId, activeSessionId, (id) => ownerNames?.get(id))
292
+ : [], [
293
+ showSidebar,
294
+ controller,
295
+ listState,
296
+ activeSessionId,
297
+ ownerNames,
298
+ state.chatsRevision,
299
+ ]);
300
+ // Message ids repeat across chats (`assistant:<seq>`), so the persisted
301
+ // ratings key is chat-scoped; the sidebar keeps the deployment-wide key.
302
+ const messageStateKey = state.sessionId === null
303
+ ? undefined
304
+ : `${stateKey}:chat:${state.sessionId}`;
305
+ if (!route.active)
306
+ return null;
307
+ // DSH only seats onboarding while the active Session is blank. Keep the QA
308
+ // disclosure in this route-owned overlay so sending a prompt cannot dismiss
309
+ // it; the shadow step registered in index.tsx only suppresses the stock copy.
310
+ const welcomeNotice = (_jsx(QaWelcomeNotice, { storage: window.localStorage, storageKey: `${stateKey}:welcome-notice` }, stateKey));
311
+ if (config.accounts.enabled && accounts !== undefined) {
312
+ if (accountsStage === "checking") {
313
+ return (_jsxs(_Fragment, { children: [welcomeNotice, _jsx("main", { className: "dsh-qa-surface", "aria-busy": "true", "aria-label": config.branding.title, tabIndex: -1 })] }));
314
+ }
315
+ if (accountsStage === "gate") {
316
+ return (_jsxs(_Fragment, { children: [welcomeNotice, _jsx(QaAuthGate, { accounts: accounts, snapshot: accountsSnapshot, title: config.branding.title, logoUrl: config.branding.logoUrl, allowRegistration: config.accounts.allowRegistration })] }));
317
+ }
318
+ }
319
+ return (_jsxs(_Fragment, { children: [welcomeNotice, _jsxs("main", { className: "dsh-qa-surface", "data-phase": state.phase, "aria-label": config.branding.title, tabIndex: -1, onKeyDown: trapKeys, children: [showSidebar ? (_jsx(QaSidebar, { rows: chatRows, groupByOwner: ownerNames !== undefined, title: config.branding.title, logoUrl: config.branding.logoUrl, stateKey: stateKey, showNewChat: allowNewChat, busy: state.phase === "creating", onSwitch: handleSwitch, onNewChat: handleNewChat, onDelete: handleDelete, account: config.accounts.enabled &&
320
+ accounts !== undefined &&
321
+ accountsStage === "authed"
322
+ ? {
323
+ email: accountsSnapshot.user.email,
324
+ role: accountsSnapshot.user.role,
325
+ onLogout: handleLogout,
326
+ }
327
+ : undefined })) : null, _jsxs("div", { className: "dsh-qa-body", children: [state.viewingSubagent !== null && !config.ui.showHeader ? (_jsxs("div", { className: "dsh-qa-agentview", role: "status", children: [_jsx(RobotBadge, {}), _jsx("span", { children: "\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0441\u0443\u0431\u0430\u0433\u0435\u043D\u0442\u0430" }), _jsx("button", { type: "button", onClick: () => void controller?.closeSubagent(), children: "\u2190 \u0412 \u0447\u0430\u0442" })] })) : null, config.ui.showHeader ? (_jsx("header", { className: "dsh-qa-header", children: _jsxs("div", { className: "dsh-qa-header__inner", children: [_jsxs("div", { className: "dsh-qa-header__title-row", children: [config.branding.logoUrl === null ? null : (_jsx("img", { className: "dsh-qa-header__logo", src: config.branding.logoUrl, alt: "" })), conversationTitle === null ? null : (_jsx("h1", { title: conversationTitle, children: conversationTitle })), state.viewingSubagent !== null ? (_jsxs("span", { className: "dsh-qa-header__viewing", children: [_jsx(RobotBadge, {}), "\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0441\u0443\u0431\u0430\u0433\u0435\u043D\u0442\u0430", _jsx("button", { type: "button", className: "dsh-qa-header__back", onClick: () => void controller?.closeSubagent(), children: "\u2190 \u0412 \u0447\u0430\u0442" })] })) : (_jsxs("span", { className: "dsh-qa-header__mode", children: [_jsxs("svg", { viewBox: "0 0 16 16", "aria-hidden": "true", children: [_jsx("circle", { cx: "8", cy: "3.25", r: "1.5" }), _jsx("circle", { cx: "4", cy: "11.75", r: "1.5" }), _jsx("circle", { cx: "12", cy: "11.75", r: "1.5" }), _jsx("path", { d: "M8 4.75v2.5m0 0H4v3m4-3h4v3" })] }), modeLabel(config.session.agentPreset)] })), _jsxs("button", { type: "button", className: config.sources.enabled && config.sources.display.sidebar
328
+ ? "dsh-qa-header__agents"
329
+ : "dsh-qa-header__agents dsh-qa-header__agents--end", disabled: agentRows.length === 0, "aria-expanded": agentsOpen, onClick: () => {
330
+ setAgentsOpen((open) => !open);
331
+ setSourcesOpen(false);
332
+ }, children: [_jsxs("svg", { viewBox: "0 0 16 16", "aria-hidden": "true", children: [_jsx("rect", { x: "3", y: "5.5", width: "10", height: "7", rx: "1.75" }), _jsx("path", { d: "M8 3v2.5M6.2 9h.01M9.8 9h.01M6.2 11h3.6" })] }), "\u0410\u0433\u0435\u043D\u0442\u044B", agentRows.length === 0 ? null : ` (${agentRows.length})`] }), config.sources.enabled && config.sources.display.sidebar ? (_jsxs("button", { type: "button", className: config.ui.showReset &&
333
+ config.session.policy !== "fixed" &&
334
+ (!config.lockdown.enabled ||
335
+ config.lockdown.allowSessionReset)
336
+ ? "dsh-qa-header__sources"
337
+ : "dsh-qa-header__sources dsh-qa-header__sources--end", disabled: state.sources.length === 0 && state.sourcesComplete, "aria-expanded": sourcesOpen, onClick: () => {
338
+ setSourcesOpen((open) => !open);
339
+ setDrawerSources(null);
340
+ setDrawerCompleteness(null);
341
+ setAgentsOpen(false);
342
+ }, children: [_jsxs("svg", { viewBox: "0 0 16 16", "aria-hidden": "true", children: [_jsx("circle", { cx: "8", cy: "8", r: "5.75" }), _jsx("path", { d: "M2.25 8h11.5M8 2.25c1.6 1.55 2.4 3.5 2.4 5.75S9.6 12.2 8 13.75C6.4 12.2 5.6 10.25 5.6 8S6.4 3.8 8 2.25Z" })] }), "\u0418\u0441\u0442\u043E\u0447\u043D\u0438\u043A\u0438", state.sources.length === 0 && state.sourcesComplete
343
+ ? null
344
+ : ` (${state.sources.length})`] })) : null, config.ui.showReset &&
345
+ config.session.policy !== "fixed" &&
346
+ (!config.lockdown.enabled ||
347
+ config.lockdown.allowSessionReset) ? (_jsx("button", { type: "button", className: "dsh-qa-header__reset", disabled: controller === undefined || state.phase === "creating", onClick: () => void controller?.startDraft(), children: "\u041D\u043E\u0432\u044B\u0439 \u0447\u0430\u0442" })) : null] }), _jsx("div", { className: "dsh-qa-header__tabs", "aria-label": "\u0412\u0438\u0434 \u0431\u0435\u0441\u0435\u0434\u044B", children: _jsx("span", { "aria-current": "page", children: "\u0427\u0430\u0442" }) })] }) })) : null, _jsxs("div", { ref: chat, className: "dsh-qa-chat", style: {
348
+ "--dsh-qa-content-width": `${config.ui.maxContentWidth}px`,
349
+ }, children: [_jsxs("div", { ref: transcript, className: "dsh-qa-transcript", onScroll: (event) => {
350
+ const element = event.currentTarget;
351
+ nearBottom.current =
352
+ element.scrollHeight -
353
+ element.scrollTop -
354
+ element.clientHeight <
355
+ 96;
356
+ scheduleActiveTurnSync();
357
+ }, children: [empty ? null : (_jsx(QaTurnRail, { items: railItems, activeTurn: activeTurn, busyTurn: busyTurn, scrollerRef: transcript, onNavigate: handleTurnNavigate })), _jsxs("div", { className: "dsh-qa-transcript__inner", children: [empty ? (_jsxs("section", { className: "dsh-qa-welcome", "aria-labelledby": "dsh-qa-welcome-title", children: [_jsx("h2", { id: "dsh-qa-welcome-title", children: config.branding.welcomeMessage }), config.branding.subtitle === "" ? null : (_jsx("p", { children: config.branding.subtitle }))] })) : (visibleMessages.map((message, index) => {
358
+ const group = message.role === "user"
359
+ ? view.groupByPromptId.get(message.id)
360
+ : undefined;
361
+ const isLast = index === visibleMessages.length - 1;
362
+ return (_jsxs("div", { className: "dsh-qa-message-slot", "data-dsh-qa-turn-anchor": message.role === "user" ? message.id : undefined, children: [_jsx(QaMessage, { message: message, renderMarkdown: config.ui.renderMarkdown, showTimestamp: config.ui.showTimestamps, stateKey: messageStateKey, resolveImage: resolveImage, onRegenerate: isLast &&
363
+ message.role === "assistant" &&
364
+ message.status === "committed" &&
365
+ controller !== undefined
366
+ ? handleRegenerate
367
+ : undefined, onOpenSources: config.sources.enabled &&
368
+ config.sources.display.footer
369
+ ? handleOpenSources
370
+ : undefined, onSourceDetail: config.sources.enabled
371
+ ? handleSourceDetail
372
+ : undefined }), group !== undefined && group.turns.length > 1 ? (_jsx(VariantSwitcher, { count: group.turns.length, offset: variantOffsets[group.groupId] ?? 0, onStep: (step) => setVariantOffsets((offsets) => ({
373
+ ...offsets,
374
+ [group.groupId]: step,
375
+ })) })) : null] }, message.id));
376
+ })), state.error === null ? null : (_jsxs("div", { className: "dsh-qa-error", role: "alert", children: [_jsx("span", { children: state.error }), state.phase === "error" ? (_jsx("button", { type: "button", onClick: () => void controller?.ensureSession(), children: "\u041F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u044C" })) : null] }))] })] }), _jsx("footer", { className: "dsh-qa-footer", children: _jsxs("div", { className: "dsh-qa-footer__inner", children: [_jsx(QaComposer, { placeholder: config.branding.placeholder, quickQuestions: empty ? config.suggestedQuestions : NO_QUESTIONS, canSend: state.canSend, canStop: state.canStop, running: state.phase === "running", showStop: config.ui.showStop, status: status, images: pendingImages, onImagesChange: setPendingImages, onSend: handleSend, onStop: handleStop }, state.sessionId ?? "draft"), config.branding.disclaimer === "" ? null : (_jsxs("p", { className: "dsh-qa-footer__disclaimer", children: [_jsxs("svg", { viewBox: "0 0 16 16", "aria-hidden": "true", children: [_jsx("circle", { cx: "8", cy: "8", r: "5.75" }), _jsx("path", { d: "M8 7.25v3.5m0-5.25v.5" })] }), config.branding.disclaimer] }))] }) }), !empty
377
+ ? ["left", "right"].map((side) => (_jsx(QaWidthHandle, { side: side, ...widthHandlers }, side)))
378
+ : null] })] }), agentsOpen && agentRows.length > 0 ? (_jsx(QaAgentsDrawer, { agents: agentRows, activeId: state.viewingSubagent?.id ?? null, onView: (id, title) => void controller?.viewSubagent(id, title), onClose: () => setAgentsOpen(false) })) : null, sourcesOpen &&
379
+ ((drawerSources ?? state.sources).length > 0 ||
380
+ !(drawerCompleteness?.complete ?? state.sourcesComplete)) ? (_jsx(QaSourcesDrawer, { sources: drawerSources ?? state.sources, complete: drawerCompleteness?.complete ?? state.sourcesComplete, incompleteOrigins: drawerCompleteness?.incompleteOrigins ??
381
+ state.incompleteSourceOrigins, sessionId: state.sessionId, sourceApi: boundSourceApi, display: config.sources.display, filePreview: config.sources.filePreview, initialDetail: drawerDetail, onClose: () => {
382
+ setSourcesOpen(false);
383
+ setDrawerSources(null);
384
+ setDrawerCompleteness(null);
385
+ setDrawerDetail(null);
386
+ } })) : null] })] }));
108
387
  }
109
388
  //# sourceMappingURL=QaSurface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QaSurface.js","sourceRoot":"","sources":["../../src/client/QaSurface.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QaSurface.js","sourceRoot":"","sources":["../../src/client/QaSurface.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,WAAW,EACX,SAAS,EACT,eAAe,EACf,OAAO,EACP,MAAM,EACN,QAAQ,EACR,oBAAoB,GAGrB,MAAM,OAAO,CAAC;AAkBf,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAQ/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EACL,cAAc,EACd,gBAAgB,GACjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EACL,wBAAwB,EACxB,UAAU,EACV,iBAAiB,EACjB,gBAAgB,GAEjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,aAAa,EACb,iBAAiB,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;AAE5C,mFAAmF;AACnF,MAAM,YAAY,GAAsB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE1D,MAAM,0BAA0B,GAAuB,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AAC7E,MAAM,oBAAoB,GAAG,GAAuB,EAAE,CACpD,0BAA0B,CAAC;AAiB7B,SAAS,SAAS,CAAC,IAAiB;IAClC,OAAO;QACL,GAAG,IAAI,CAAC,gBAAgB,CACtB,4FAA4F,CAC7F;KACF,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,QAAQ,CAAC,KAAiC;IACjD,KAAK,CAAC,eAAe,EAAE,CAAC;IACxB,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK;QAAE,OAAO;IAChC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACvB,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,aAAa,KAAK,KAAK,EAAE,CAAC;QACvD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,EAAE,KAAK,EAAE,CAAC;IAChB,CAAC;SAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QAC9D,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,EAAE,KAAK,EAAE,CAAC;IACjB,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAqB;IACvC,IAAI,KAAK,CAAC,KAAK,KAAK,UAAU;QAAE,OAAO,cAAc,CAAC;IACtD,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc;QAChC,OAAO,sCAAsC,CAAC;IAChD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,oBAAoB,CAAC;IAC3D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAqB;IAC9C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;IAC5E,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1D,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE;QAAE,OAAO,KAAK,CAAC;IACrC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC;AAC5C,CAAC;AAED,SAAS,SAAS,CAAC,WAA0B;IAC3C,IAAI,WAAW,KAAK,IAAI;QAAE,OAAO,gBAAgB,CAAC;IAClD,MAAM,IAAI,GAAG,WAAW;SACrB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,OAAO,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IACzD,OAAO,UAAU,IAAI,GAAG,CAAC;AAC3B,CAAC;AAED,SAAS,UAAU;IACjB,OAAO,CACL,eACE,SAAS,EAAC,wBAAwB,EAClC,OAAO,EAAC,WAAW,iBACP,MAAM,aAElB,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,EAAE,EAAC,MAAM,GAAG,EACtD,eAAM,CAAC,EAAC,uFAAuF,GAAG,IAC9F,CACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC7C,MAAM,KAAK,GAAG,oBAAoB,CAChC,KAAK,CAAC,KAAK,CAAC,SAAS,EACrB,KAAK,CAAC,KAAK,CAAC,WAAW,EACvB,KAAK,CAAC,KAAK,CAAC,WAAW,CACxB,CAAC;IACF,MAAM,WAAW,GAAG,oBAAoB,CACtC,KAAK,CAAC,MAAM,CAAC,SAAS,EACtB,KAAK,CAAC,MAAM,CAAC,WAAW,EACxB,KAAK,CAAC,MAAM,CAAC,WAAW,CACzB,CAAC;IACF,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;IAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;IAChC,MAAM,gBAAgB,GAAG,oBAAoB,CAC3C,QAAQ,EAAE,SAAS,IAAI,aAAa,EACpC,QAAQ,EAAE,WAAW,IAAI,oBAAoB,EAC7C,QAAQ,EAAE,WAAW,IAAI,oBAAoB,CAC9C,CAAC;IACF,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC;IAC7C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,EAAuB,CAAC;IACpE,MAAM,UAAU,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC1C,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAChC,gFAAgF;IAChF,MAAM,YAAY,GAAG,MAAM,CAA4B,EAAE,CAAC,CAAC;IAC3D,MAAM,eAAe,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACxE,MAAM,aAAa,GAAG,iBAAiB,CAAC;QACtC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,MAAM,CAAC,YAAY;QAC5B,UAAU,EAAE,GAAG,QAAQ,gBAAgB;QACvC,eAAe,EAAE,MAAM,CAAC,EAAE,CAAC,eAAe;KAC3C,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,aAAa,CAAC,SAAS,CAAC,CAAC;YACzB,OAAO;QACT,CAAC;QACD,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,IAAI,QAAQ,KAAK,SAAS,CAAC;QAC1E,wEAAwE;QACxE,uEAAuE;QACvE,IAAI,eAAe,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;YAClD,aAAa,CAAC,SAAS,CAAC,CAAC;YACzB,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GACV,eAAe,IAAI,QAAQ;YACzB,CAAC,CAAC;gBACE,KAAK,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE;gBAC7B,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE;gBACnC,eAAe,EAAE,CAAC,SAAiB,EAAE,EAAE,CACrC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC;gBACrC,gBAAgB,EAAE,CAAC,SAAiB,EAAE,EAAE;oBACtC,KAAK,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;gBAC3C,CAAC;gBACD,cAAc,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE;aACzC;YACH,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,IAAI,GAAG,IAAI,mBAAmB,CAAC;YACnC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,MAAM;YACN,OAAO,EAAE,MAAM,CAAC,YAAY;YAC5B,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;QACH,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1B,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC,EAAE;QACD,QAAQ;QACR,aAAa;QACb,MAAM;QACN,KAAK,CAAC,GAAG;QACT,KAAK,CAAC,YAAY;QAClB,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,aAAa;QACnB,KAAK,CAAC,SAAS;QACf,KAAK,CAAC,QAAQ;QACd,KAAK,CAAC,MAAM;KACb,CAAC,CAAC;IAEH,2EAA2E;IAC3E,MAAM,cAAc,GAAG,OAAO,CAC5B,GAAG,EAAE,CAAC,CAAC;QACL,OAAO,EAAE,CAAC,SAAiB,EAAE,EAAE,CAC7B,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;QAC7D,cAAc,EAAE,CAAC,SAAiB,EAAE,UAAkB,EAAE,EAAE,CACxD,KAAK,CAAC,SAAS,CAAC,cAAc,CAC5B,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EACvB,SAAS,EACT,UAAU,CACX;KACJ,CAAC,EACF,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAC5B,CAAC;IACF,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACtB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,KAAK,GAAG,oBAAoB,CAChC,UAAU,EAAE,SAAS,IAAI,aAAa,EACtC,UAAU,EAAE,WAAW,IAAI,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,EACxD,UAAU,EAAE,WAAW,IAAI,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,CACzD,CAAC;IACF,MAAM,SAAS,GAAG,oBAAoB,CACpC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAC7B,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAC/B,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAChC,CAAC;IACF,2EAA2E;IAC3E,uDAAuD;IACvD,MAAM,EACJ,UAAU,EACV,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,WAAW,EACX,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,YAAY,EACZ,eAAe,GAChB,GAAG,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAEvC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO;QAC1B,MAAM,oBAAoB,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC1D,MAAM,oBAAoB,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC;QACrE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC9C,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACxC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACnD,MAAM,KAAK,GAAG,qBAAqB,CAAC,GAAG,EAAE;YACvC,QAAQ,CAAC,aAAa,CAAsB,gBAAgB,CAAC,EAAE,KAAK,EAAE,CAAC;QACzE,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE;YACV,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;YAC1C,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,oBAAoB,CAAC;YACpD,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,GAAG,oBAAoB,CAAC;QACjE,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAEnB,4EAA4E;IAC5E,yEAAyE;IACzE,gDAAgD;IAChD,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CACH,UAAU,KAAK,SAAS;QACtB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,CAAC,YAAoB,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,YAAY,CAAC,EAClE,CAAC,UAAU,CAAC,CACb,CAAC;IACF,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,EAAE;QACxC,KAAK,UAAU,EAAE,UAAU,EAAE,CAAC;IAChC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IACjB,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,SAAiB,EAAE,EAAE;QACpB,KAAK,UAAU,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IACF,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QACrC,KAAK,UAAU,EAAE,UAAU,EAAE,CAAC;IAChC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IACjB,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,SAAiB,EAAE,EAAE;QACpB,KAAK,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IACF,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,IAAY,EAAE,MAA+B,EAAE,EAAE,CAChD,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAC1D,CAAC,UAAU,CAAC,CACb,CAAC;IACF,MAAM,UAAU,GAAG,WAAW,CAC5B,GAAG,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE,EAC7C,CAAC,UAAU,CAAC,CACb,CAAC;IACF,wEAAwE;IACxE,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACtC,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QACnC,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC;QACnC,IAAI,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3C,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC/C,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,sBAAsB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9C,IAAI,eAAe,CAAC,OAAO,KAAK,IAAI;YAAE,OAAO;QAC7C,IAAI,OAAO,qBAAqB,KAAK,WAAW,EAAE,CAAC;YACjD,cAAc,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QACD,eAAe,CAAC,OAAO,GAAG,qBAAqB,CAAC,GAAG,EAAE;YACnD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC;YAC/B,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IACrB,SAAS,CACP,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,IACE,eAAe,CAAC,OAAO,KAAK,IAAI;YAChC,OAAO,oBAAoB,KAAK,WAAW,EAC3C,CAAC;YACD,oBAAoB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,EACD,EAAE,CACH,CAAC;IACF,MAAM,kBAAkB,GAAG,WAAW,CAAC,CAAC,IAAoB,EAAE,EAAE;QAC9D,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QACnC,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO;QAC7B,MAAM,OAAO,GACX,OAAO,GAAG,KAAK,WAAW,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU;YAC5D,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QACd,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAC/B,IAAI,wBAAwB,KAAK,OAAO,IAAI,CAC7C,CAAC;QACF,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO;QACzB,OAAO,CAAC,SAAS,GAAG,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACnD,UAAU,CAAC,OAAO;YAChB,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC;QACvE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,iBAAiB,GAAG,WAAW,CACnC,CACE,OAA4B,EAC5B,QAAiB,EACjB,iBAAqD,EACrD,EAAE;QACF,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC1B,qBAAqB,CAAC;YACpB,QAAQ;YACR,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC;SAClE,CAAC,CAAC;QACH,eAAe,CAAC,IAAI,CAAC,CAAC;QACtB,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,aAAa,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,EACD,EAAE,CACH,CAAC;IACF,MAAM,kBAAkB,GAAG,WAAW,CAAC,CAAC,MAAgB,EAAE,EAAE;QAC1D,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvB,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC5B,eAAe,CAAC,MAAM,CAAC,CAAC;QACxB,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,aAAa,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,eAAe,CAAC,GAAG,EAAE;QACnB,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QACnC,IAAI,OAAO,KAAK,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YAC3C,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;QAC3C,CAAC;QACD,sBAAsB,EAAE,CAAC;IAC3B,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC,CAAC;IAE7C,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;IAC1C,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,eAAe,IAAI,UAAU,KAAK,SAAS,CAAC;IAC1E,MAAM,YAAY,GAChB,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,OAAO;QACjC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC/D,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;IAC7C,MAAM,eAAe,GAAG,UAAU,EAAE,eAAe,EAAE,IAAI,IAAI,CAAC;IAC9D,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,EAAE,eAAe,CAAC,EACvD,CAAC,SAAS,EAAE,eAAe,CAAC,CAC7B,CAAC;IACF,4EAA4E;IAC5E,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE,CACH,MAAM,CAAC,QAAQ,CAAC,OAAO;QACvB,MAAM,CAAC,QAAQ,CAAC,mBAAmB;QACnC,QAAQ,KAAK,SAAS;QACtB,gBAAgB,CAAC,KAAK,KAAK,QAAQ;QACnC,gBAAgB,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO;QACpC,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE;QACvB,CAAC,CAAC,SAAS,EACf,CAAC,MAAM,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CACrC,CAAC;IACF,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACjC,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;IACjC,MAAM,QAAQ,GACZ,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,MAAM,QAAQ,GAAG,OAAO,CACtB,GAAG,EAAE,CACH,WAAW;QACT,CAAC,CAAC,aAAa,CACX,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,EAC3B,SAAS,CAAC,IAAI,EACd,eAAe,EACf,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,CAC5B;QACH,CAAC,CAAC,EAAE,EACR;QACE,WAAW;QACX,UAAU;QACV,SAAS;QACT,eAAe;QACf,UAAU;QACV,KAAK,CAAC,aAAa;KACpB,CACF,CAAC;IACF,wEAAwE;IACxE,yEAAyE;IACzE,MAAM,eAAe,GACnB,KAAK,CAAC,SAAS,KAAK,IAAI;QACtB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,GAAG,QAAQ,SAAS,KAAK,CAAC,SAAS,EAAE,CAAC;IAC5C,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAE/B,2EAA2E;IAC3E,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,aAAa,GAAG,CACpB,KAAC,eAAe,IAEd,OAAO,EAAE,MAAM,CAAC,YAAY,EAC5B,UAAU,EAAE,GAAG,QAAQ,iBAAiB,IAFnC,QAAQ,CAGb,CACH,CAAC;IAEF,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACtD,IAAI,aAAa,KAAK,UAAU,EAAE,CAAC;YACjC,OAAO,CACL,8BACG,aAAa,EACd,eACE,SAAS,EAAC,gBAAgB,eAChB,MAAM,gBACJ,MAAM,CAAC,QAAQ,CAAC,KAAK,EACjC,QAAQ,EAAE,CAAC,CAAC,GACZ,IACD,CACJ,CAAC;QACJ,CAAC;QACD,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;YAC7B,OAAO,CACL,8BACG,aAAa,EACd,KAAC,UAAU,IACT,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,EAC5B,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAChC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,iBAAiB,GACpD,IACD,CACJ,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,CACL,8BACG,aAAa,EACd,gBACE,SAAS,EAAC,gBAAgB,gBACd,KAAK,CAAC,KAAK,gBACX,MAAM,CAAC,QAAQ,CAAC,KAAK,EACjC,QAAQ,EAAE,CAAC,CAAC,EACZ,SAAS,EAAE,QAAQ,aAElB,WAAW,CAAC,CAAC,CAAC,CACb,KAAC,SAAS,IACR,IAAI,EAAE,QAAQ,EACd,YAAY,EAAE,UAAU,KAAK,SAAS,EACtC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,EAC5B,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAChC,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,YAAY,EACzB,IAAI,EAAE,KAAK,CAAC,KAAK,KAAK,UAAU,EAChC,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,YAAY,EACtB,OAAO,EACL,MAAM,CAAC,QAAQ,CAAC,OAAO;4BACvB,QAAQ,KAAK,SAAS;4BACtB,aAAa,KAAK,QAAQ;4BACxB,CAAC,CAAC;gCACE,KAAK,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK;gCAClC,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC,IAAI;gCAChC,QAAQ,EAAE,YAAY;6BACvB;4BACH,CAAC,CAAC,SAAS,GAEf,CACH,CAAC,CAAC,CAAC,IAAI,EACR,eAAK,SAAS,EAAC,aAAa,aACzB,KAAK,CAAC,eAAe,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CACzD,eAAK,SAAS,EAAC,kBAAkB,EAAC,IAAI,EAAC,QAAQ,aAC7C,KAAC,UAAU,KAAG,EACd,qIAA+B,EAC/B,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,UAAU,EAAE,aAAa,EAAE,iDAGxC,IACL,CACP,CAAC,CAAC,CAAC,IAAI,EACP,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CACtB,iBAAQ,SAAS,EAAC,eAAe,YAC/B,eAAK,SAAS,EAAC,sBAAsB,aACnC,eAAK,SAAS,EAAC,0BAA0B,aACtC,MAAM,CAAC,QAAQ,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACzC,cACE,SAAS,EAAC,qBAAqB,EAC/B,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAC5B,GAAG,EAAC,EAAE,GACN,CACH,EACA,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACnC,aAAI,KAAK,EAAE,iBAAiB,YAAG,iBAAiB,GAAM,CACvD,EACA,KAAK,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,CAChC,gBAAM,SAAS,EAAC,wBAAwB,aACtC,KAAC,UAAU,KAAG,6GAEd,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,qBAAqB,EAC/B,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,UAAU,EAAE,aAAa,EAAE,iDAGxC,IACJ,CACR,CAAC,CAAC,CAAC,CACF,gBAAM,SAAS,EAAC,qBAAqB,aACnC,eAAK,OAAO,EAAC,WAAW,iBAAa,MAAM,aACzC,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,MAAM,EAAC,CAAC,EAAC,KAAK,GAAG,EACnC,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,OAAO,EAAC,CAAC,EAAC,KAAK,GAAG,EACpC,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,OAAO,EAAC,CAAC,EAAC,KAAK,GAAG,EACrC,eAAM,CAAC,EAAC,6BAA6B,GAAG,IACpC,EACL,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,IACjC,CACR,EACD,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EACP,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO;wDACtD,CAAC,CAAC,uBAAuB;wDACzB,CAAC,CAAC,kDAAkD,EAExD,QAAQ,EAAE,SAAS,CAAC,MAAM,KAAK,CAAC,mBACjB,UAAU,EACzB,OAAO,EAAE,GAAG,EAAE;wDACZ,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;wDAC/B,cAAc,CAAC,KAAK,CAAC,CAAC;oDACxB,CAAC,aAED,eAAK,OAAO,EAAC,WAAW,iBAAa,MAAM,aACzC,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,MAAM,GAAG,EACtD,eAAM,CAAC,EAAC,yCAAyC,GAAG,IAChD,0CAEL,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,MAAM,GAAG,IAClD,EACR,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAC1D,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EACP,MAAM,CAAC,EAAE,CAAC,SAAS;wDACnB,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,OAAO;wDACjC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO;4DACvB,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC;wDAClC,CAAC,CAAC,wBAAwB;wDAC1B,CAAC,CAAC,oDAAoD,EAE1D,QAAQ,EACN,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,eAAe,mBAEtC,WAAW,EAC1B,OAAO,EAAE,GAAG,EAAE;wDACZ,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;wDAChC,gBAAgB,CAAC,IAAI,CAAC,CAAC;wDACvB,qBAAqB,CAAC,IAAI,CAAC,CAAC;wDAC5B,aAAa,CAAC,KAAK,CAAC,CAAC;oDACvB,CAAC,aAED,eAAK,OAAO,EAAC,WAAW,iBAAa,MAAM,aACzC,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,MAAM,GAAG,EACjC,eAAM,CAAC,EAAC,yGAAyG,GAAG,IAChH,4DAEL,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,eAAe;4DAClD,CAAC,CAAC,IAAI;4DACN,CAAC,CAAC,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,IACzB,CACV,CAAC,CAAC,CAAC,IAAI,EACP,MAAM,CAAC,EAAE,CAAC,SAAS;oDACpB,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,OAAO;oDACjC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO;wDACvB,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CACrC,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,sBAAsB,EAChC,QAAQ,EACN,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,UAAU,EAExD,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,UAAU,EAAE,UAAU,EAAE,kEAGrC,CACV,CAAC,CAAC,CAAC,IAAI,IACJ,EACN,cAAK,SAAS,EAAC,qBAAqB,gBAAY,yDAAY,YAC1D,+BAAmB,MAAM,mCAAW,GAChC,IACF,GACC,CACV,CAAC,CAAC,CAAC,IAAI,EAER,eACE,GAAG,EAAE,IAAI,EACT,SAAS,EAAC,aAAa,EACvB,KAAK,EACH;oCACE,wBAAwB,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,eAAe,IAAI;iCAC1C,aAGpB,eACE,GAAG,EAAE,UAAU,EACf,SAAS,EAAC,mBAAmB,EAC7B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;4CAClB,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC;4CACpC,UAAU,CAAC,OAAO;gDAChB,OAAO,CAAC,YAAY;oDAClB,OAAO,CAAC,SAAS;oDACjB,OAAO,CAAC,YAAY;oDACtB,EAAE,CAAC;4CACL,sBAAsB,EAAE,CAAC;wCAC3B,CAAC,aAEA,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACd,KAAC,UAAU,IACT,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,UAAU,EACvB,UAAU,EAAE,kBAAkB,GAC9B,CACH,EACD,eAAK,SAAS,EAAC,0BAA0B,aACtC,KAAK,CAAC,CAAC,CAAC,CACP,mBACE,SAAS,EAAC,gBAAgB,qBACV,sBAAsB,aAEtC,aAAI,EAAE,EAAC,sBAAsB,YAC1B,MAAM,CAAC,QAAQ,CAAC,cAAc,GAC5B,EACJ,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACxC,sBAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAK,CAClC,IACO,CACX,CAAC,CAAC,CAAC,CACF,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;wDACrC,MAAM,KAAK,GACT,OAAO,CAAC,IAAI,KAAK,MAAM;4DACrB,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;4DACtC,CAAC,CAAC,SAAS,CAAC;wDAChB,MAAM,MAAM,GAAG,KAAK,KAAK,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;wDACpD,OAAO,CACL,eAEE,SAAS,EAAC,qBAAqB,6BAE7B,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,aAGlD,KAAC,SAAS,IACR,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,MAAM,CAAC,EAAE,CAAC,cAAc,EACxC,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC,cAAc,EACvC,QAAQ,EAAE,eAAe,EACzB,YAAY,EAAE,YAAY,EAC1B,YAAY,EACV,MAAM;wEACN,OAAO,CAAC,IAAI,KAAK,WAAW;wEAC5B,OAAO,CAAC,MAAM,KAAK,WAAW;wEAC9B,UAAU,KAAK,SAAS;wEACtB,CAAC,CAAC,gBAAgB;wEAClB,CAAC,CAAC,SAAS,EAEf,aAAa,EACX,MAAM,CAAC,OAAO,CAAC,OAAO;wEACtB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM;wEAC3B,CAAC,CAAC,iBAAiB;wEACnB,CAAC,CAAC,SAAS,EAEf,cAAc,EACZ,MAAM,CAAC,OAAO,CAAC,OAAO;wEACpB,CAAC,CAAC,kBAAkB;wEACpB,CAAC,CAAC,SAAS,GAEf,EACD,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC/C,KAAC,eAAe,IACd,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EACzB,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAC1C,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CACf,iBAAiB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;wEAC9B,GAAG,OAAO;wEACV,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI;qEACtB,CAAC,CAAC,GAEL,CACH,CAAC,CAAC,CAAC,IAAI,KA3CH,OAAO,CAAC,EAAE,CA4CX,CACP,CAAC;oDACJ,CAAC,CAAC,CACH,EACA,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC7B,eAAK,SAAS,EAAC,cAAc,EAAC,IAAI,EAAC,OAAO,aACxC,yBAAO,KAAK,CAAC,KAAK,GAAQ,EACzB,KAAK,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,CACzB,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,UAAU,EAAE,aAAa,EAAE,uEAGxC,CACV,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,IACG,IACF,EAEN,iBAAQ,SAAS,EAAC,eAAe,YAC/B,eAAK,SAAS,EAAC,sBAAsB,aAGnC,KAAC,UAAU,IAET,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EACxC,cAAc,EACZ,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,YAAY,EAElD,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,OAAO,EAAE,KAAK,CAAC,KAAK,KAAK,SAAS,EAClC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,EAC5B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,aAAa,EACrB,cAAc,EAAE,gBAAgB,EAChC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,UAAU,IAbb,KAAK,CAAC,SAAS,IAAI,OAAO,CAc/B,EACD,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC1C,aAAG,SAAS,EAAC,2BAA2B,aACtC,eAAK,OAAO,EAAC,WAAW,iBAAa,MAAM,aACzC,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,MAAM,GAAG,EACjC,eAAM,CAAC,EAAC,uBAAuB,GAAG,IAC9B,EACL,MAAM,CAAC,QAAQ,CAAC,UAAU,IACzB,CACL,IACG,GACC,EACR,CAAC,KAAK;wCACL,CAAC,CAAE,CAAC,MAAM,EAAE,OAAO,CAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACzC,KAAC,aAAa,IAAY,IAAI,EAAE,IAAI,KAAM,aAAa,IAAnC,IAAI,CAAmC,CAC5D,CAAC;wCACJ,CAAC,CAAC,IAAI,IACJ,IACF,EACL,UAAU,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACpC,KAAC,cAAc,IACb,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,KAAK,CAAC,eAAe,EAAE,EAAE,IAAI,IAAI,EAC3C,MAAM,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,UAAU,EAAE,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,EAC/D,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,GACnC,CACH,CAAC,CAAC,CAAC,IAAI,EACP,WAAW;wBACZ,CAAC,CAAC,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC;4BAC1C,CAAC,CAAC,kBAAkB,EAAE,QAAQ,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAC5D,KAAC,eAAe,IACd,OAAO,EAAE,aAAa,IAAI,KAAK,CAAC,OAAO,EACvC,QAAQ,EAAE,kBAAkB,EAAE,QAAQ,IAAI,KAAK,CAAC,eAAe,EAC/D,iBAAiB,EACf,kBAAkB,EAAE,iBAAiB;4BACrC,KAAK,CAAC,uBAAuB,EAE/B,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,EAC/B,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,EACvC,aAAa,EAAE,YAAY,EAC3B,OAAO,EAAE,GAAG,EAAE;4BACZ,cAAc,CAAC,KAAK,CAAC,CAAC;4BACtB,gBAAgB,CAAC,IAAI,CAAC,CAAC;4BACvB,qBAAqB,CAAC,IAAI,CAAC,CAAC;4BAC5B,eAAe,CAAC,IAAI,CAAC,CAAC;wBACxB,CAAC,GACD,CACH,CAAC,CAAC,CAAC,IAAI,IACH,IACN,CACJ,CAAC;AACJ,CAAC"}