dsh-web-search-pro 0.2.0 → 0.2.3

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 (266) hide show
  1. package/CHANGELOG.md +179 -0
  2. package/README.md +197 -32
  3. package/assets/skills/dsh-web-search-pro/SKILL.md +14 -13
  4. package/assets/skills/dsh-web-search-pro/references/config.md +36 -0
  5. package/assets/skills/dsh-web-search-pro/references/sources.md +19 -4
  6. package/assets/skills/dsh-web-search-pro/references/troubleshooting.md +3 -1
  7. package/catalog/sources.v1.json +22 -12
  8. package/lib/actions/approval.js +50 -1
  9. package/lib/actions/approval.js.map +1 -1
  10. package/lib/actions/config.js +274 -0
  11. package/lib/actions/config.js.map +1 -0
  12. package/lib/actions/errors.js +8 -1
  13. package/lib/actions/errors.js.map +1 -1
  14. package/lib/actions/format.js +10 -0
  15. package/lib/actions/format.js.map +1 -1
  16. package/lib/actions/index-view.js +2 -2
  17. package/lib/actions/index-view.js.map +1 -1
  18. package/lib/actions/read.js +7 -3
  19. package/lib/actions/read.js.map +1 -1
  20. package/lib/actions/registry.js +3 -1
  21. package/lib/actions/registry.js.map +1 -1
  22. package/lib/actions/run.js +2 -2
  23. package/lib/actions/run.js.map +1 -1
  24. package/lib/actions/schema.js +18 -0
  25. package/lib/actions/schema.js.map +1 -1
  26. package/lib/actions/search.js +12 -6
  27. package/lib/actions/search.js.map +1 -1
  28. package/lib/actions/sources.js +116 -41
  29. package/lib/actions/sources.js.map +1 -1
  30. package/lib/actions/types.js +19 -1
  31. package/lib/actions/types.js.map +1 -1
  32. package/lib/browser-access.js +25 -0
  33. package/lib/browser-access.js.map +1 -1
  34. package/lib/catalog/recommend.js +11 -3
  35. package/lib/catalog/recommend.js.map +1 -1
  36. package/lib/catalog/schema.js +3 -1
  37. package/lib/catalog/schema.js.map +1 -1
  38. package/lib/cli/builtin-specs.js +341 -0
  39. package/lib/cli/builtin-specs.js.map +1 -0
  40. package/lib/cli/chain.js +193 -0
  41. package/lib/cli/chain.js.map +1 -0
  42. package/lib/cli/chains-spec.js +118 -0
  43. package/lib/cli/chains-spec.js.map +1 -0
  44. package/lib/cli/engine.js +99 -0
  45. package/lib/cli/engine.js.map +1 -0
  46. package/lib/cli/opencli-sites.js +83 -0
  47. package/lib/cli/opencli-sites.js.map +1 -0
  48. package/lib/cli/opencli.js +153 -0
  49. package/lib/cli/opencli.js.map +1 -0
  50. package/lib/cli/probe.js +128 -0
  51. package/lib/cli/probe.js.map +1 -0
  52. package/lib/cli/runner.js +564 -0
  53. package/lib/cli/runner.js.map +1 -0
  54. package/lib/cli/spec.js +496 -0
  55. package/lib/cli/spec.js.map +1 -0
  56. package/lib/cli/time-text.js +79 -0
  57. package/lib/cli/time-text.js.map +1 -0
  58. package/lib/cli/trial.js +57 -0
  59. package/lib/cli/trial.js.map +1 -0
  60. package/lib/client/SettingsCard.js +14 -32
  61. package/lib/client/SettingsCard.js.map +1 -1
  62. package/lib/client/agent-mark.js +27 -0
  63. package/lib/client/agent-mark.js.map +1 -0
  64. package/lib/client/card-frame.js +118 -0
  65. package/lib/client/card-frame.js.map +1 -0
  66. package/lib/client/cli-form.js +257 -0
  67. package/lib/client/cli-form.js.map +1 -0
  68. package/lib/client/field-docs.js +130 -0
  69. package/lib/client/field-docs.js.map +1 -0
  70. package/lib/client/field-keys.js +81 -0
  71. package/lib/client/field-keys.js.map +1 -0
  72. package/lib/client/field-rows.js +71 -0
  73. package/lib/client/field-rows.js.map +1 -0
  74. package/lib/client/fill.js +3 -0
  75. package/lib/client/fill.js.map +1 -0
  76. package/lib/client/form-specs.js +15 -1
  77. package/lib/client/form-specs.js.map +1 -1
  78. package/lib/client/form.js +296 -27
  79. package/lib/client/form.js.map +1 -1
  80. package/lib/client/group-advanced.js +23 -0
  81. package/lib/client/group-advanced.js.map +1 -0
  82. package/lib/client/group-agent.js +28 -0
  83. package/lib/client/group-agent.js.map +1 -0
  84. package/lib/client/group-cli.js +136 -0
  85. package/lib/client/group-cli.js.map +1 -0
  86. package/lib/client/group-common.js +29 -0
  87. package/lib/client/group-common.js.map +1 -0
  88. package/lib/client/group-judge.js +67 -0
  89. package/lib/client/group-judge.js.map +1 -0
  90. package/lib/client/group-order.js +201 -0
  91. package/lib/client/group-order.js.map +1 -0
  92. package/lib/client/group-runtime.js +33 -0
  93. package/lib/client/group-runtime.js.map +1 -0
  94. package/lib/client/group-sources.js +83 -0
  95. package/lib/client/group-sources.js.map +1 -0
  96. package/lib/client/groups-basic.js +36 -0
  97. package/lib/client/groups-basic.js.map +1 -0
  98. package/lib/client/index.js.map +1 -1
  99. package/lib/client/json-list.js +50 -0
  100. package/lib/client/json-list.js.map +1 -0
  101. package/lib/client/locales.js +666 -215
  102. package/lib/client/locales.js.map +1 -1
  103. package/lib/client/order.js +192 -0
  104. package/lib/client/order.js.map +1 -0
  105. package/lib/client/overlay-ops.js +46 -0
  106. package/lib/client/overlay-ops.js.map +1 -0
  107. package/lib/client/sources-table.js +1 -0
  108. package/lib/client/sources-table.js.map +1 -1
  109. package/lib/client/styles.js +74 -47
  110. package/lib/client/styles.js.map +1 -1
  111. package/lib/client/text-view.js +98 -0
  112. package/lib/client/text-view.js.map +1 -0
  113. package/lib/client/ui-kit.js +120 -0
  114. package/lib/client/ui-kit.js.map +1 -0
  115. package/lib/client/validators.js +22 -0
  116. package/lib/client/validators.js.map +1 -1
  117. package/lib/client.js +9151 -1987
  118. package/lib/client.js.map +1 -1
  119. package/lib/config-fillers.js +53 -0
  120. package/lib/config-fillers.js.map +1 -0
  121. package/lib/config-groups.js +49 -0
  122. package/lib/config-groups.js.map +1 -0
  123. package/lib/config.js +87 -107
  124. package/lib/config.js.map +1 -1
  125. package/lib/default-chain.js +66 -0
  126. package/lib/default-chain.js.map +1 -0
  127. package/lib/deps.js +109 -102
  128. package/lib/deps.js.map +1 -1
  129. package/lib/engine-error.js +19 -0
  130. package/lib/engine-error.js.map +1 -0
  131. package/lib/engines.js +32 -115
  132. package/lib/engines.js.map +1 -1
  133. package/lib/fetch.js +23 -4
  134. package/lib/fetch.js.map +1 -1
  135. package/lib/index.js +30 -5
  136. package/lib/index.js.map +1 -1
  137. package/lib/overlay-types.js +88 -0
  138. package/lib/overlay-types.js.map +1 -0
  139. package/lib/overlay.js +683 -0
  140. package/lib/overlay.js.map +1 -0
  141. package/lib/pipeline/candidates.js +27 -1
  142. package/lib/pipeline/candidates.js.map +1 -1
  143. package/lib/pipeline/compile.js +63 -0
  144. package/lib/pipeline/compile.js.map +1 -1
  145. package/lib/pipeline/confidence.js +64 -0
  146. package/lib/pipeline/confidence.js.map +1 -0
  147. package/lib/pipeline/fusion.js +50 -3
  148. package/lib/pipeline/fusion.js.map +1 -1
  149. package/lib/pipeline/plan.js +2 -2
  150. package/lib/pipeline/plan.js.map +1 -1
  151. package/lib/pipeline/render.js +20 -2
  152. package/lib/pipeline/render.js.map +1 -1
  153. package/lib/pipeline/run.js +21 -7
  154. package/lib/pipeline/run.js.map +1 -1
  155. package/lib/pipeline/sources-spec.js +19 -3
  156. package/lib/pipeline/sources-spec.js.map +1 -1
  157. package/lib/providers/builtin.js +13 -14
  158. package/lib/providers/builtin.js.map +1 -1
  159. package/lib/providers/deepseek.js +348 -0
  160. package/lib/providers/deepseek.js.map +1 -0
  161. package/lib/providers/http.js.map +1 -1
  162. package/lib/providers/keyed-meta.js +7 -0
  163. package/lib/providers/keyed-meta.js.map +1 -1
  164. package/lib/providers/platforms.js +118 -58
  165. package/lib/providers/platforms.js.map +1 -1
  166. package/lib/providers/registry.js.map +1 -1
  167. package/lib/restart.js +47 -0
  168. package/lib/restart.js.map +1 -0
  169. package/lib/router.js +203 -27
  170. package/lib/router.js.map +1 -1
  171. package/lib/rpc-types.js +15 -0
  172. package/lib/rpc-types.js.map +1 -0
  173. package/lib/rpc.js +85 -0
  174. package/lib/rpc.js.map +1 -0
  175. package/lib/tools.js +10 -4
  176. package/lib/tools.js.map +1 -1
  177. package/lib/types/actions/approval.d.ts +11 -0
  178. package/lib/types/actions/config.d.ts +54 -0
  179. package/lib/types/actions/format.d.ts +9 -2
  180. package/lib/types/actions/run.d.ts +1 -0
  181. package/lib/types/actions/schema.d.ts +7 -1
  182. package/lib/types/actions/sources.d.ts +29 -3
  183. package/lib/types/actions/types.d.ts +28 -2
  184. package/lib/types/browser-access.d.ts +17 -0
  185. package/lib/types/catalog/recommend.d.ts +4 -0
  186. package/lib/types/catalog/schema.d.ts +2 -0
  187. package/lib/types/cli/builtin-specs.d.ts +38 -0
  188. package/lib/types/cli/chain.d.ts +83 -0
  189. package/lib/types/cli/chains-spec.d.ts +48 -0
  190. package/lib/types/cli/engine.d.ts +50 -0
  191. package/lib/types/cli/opencli-sites.d.ts +24 -0
  192. package/lib/types/cli/opencli.d.ts +77 -0
  193. package/lib/types/cli/probe.d.ts +53 -0
  194. package/lib/types/cli/runner.d.ts +126 -0
  195. package/lib/types/cli/spec.d.ts +269 -0
  196. package/lib/types/cli/time-text.d.ts +12 -0
  197. package/lib/types/cli/trial.d.ts +19 -0
  198. package/lib/types/client/SettingsCard.d.ts +17 -1
  199. package/lib/types/client/agent-mark.d.ts +22 -0
  200. package/lib/types/client/card-frame.d.ts +35 -0
  201. package/lib/types/client/cli-form.d.ts +97 -0
  202. package/lib/types/client/field-docs.d.ts +15 -0
  203. package/lib/types/client/field-keys.d.ts +41 -0
  204. package/lib/types/client/field-rows.d.ts +70 -0
  205. package/lib/types/client/fill.d.ts +2 -0
  206. package/lib/types/client/form-specs.d.ts +12 -3
  207. package/lib/types/client/form.d.ts +79 -1
  208. package/lib/types/client/group-advanced.d.ts +9 -0
  209. package/lib/types/client/group-agent.d.ts +20 -0
  210. package/lib/types/client/group-cli.d.ts +52 -0
  211. package/lib/types/client/group-common.d.ts +12 -0
  212. package/lib/types/client/group-judge.d.ts +17 -0
  213. package/lib/types/client/group-order.d.ts +26 -0
  214. package/lib/types/client/group-runtime.d.ts +15 -0
  215. package/lib/types/client/group-sources.d.ts +46 -0
  216. package/lib/types/client/groups-basic.d.ts +18 -0
  217. package/lib/types/client/index.d.ts +8 -0
  218. package/lib/types/client/json-list.d.ts +21 -0
  219. package/lib/types/client/locales.d.ts +1079 -196
  220. package/lib/types/client/order.d.ts +102 -0
  221. package/lib/types/client/overlay-ops.d.ts +37 -0
  222. package/lib/types/client/styles.d.ts +56 -41
  223. package/lib/types/client/text-view.d.ts +22 -0
  224. package/lib/types/client/ui-kit.d.ts +200 -0
  225. package/lib/types/client/validators.d.ts +6 -0
  226. package/lib/types/config-fillers.d.ts +9 -0
  227. package/lib/types/config-groups.d.ts +23 -0
  228. package/lib/types/config.d.ts +265 -216
  229. package/lib/types/default-chain.d.ts +63 -0
  230. package/lib/types/deps.d.ts +25 -23
  231. package/lib/types/engine-error.d.ts +12 -0
  232. package/lib/types/engines.d.ts +45 -10
  233. package/lib/types/fetch.d.ts +12 -3
  234. package/lib/types/index.d.ts +164 -146
  235. package/lib/types/overlay-types.d.ts +98 -0
  236. package/lib/types/overlay.d.ts +141 -0
  237. package/lib/types/pipeline/candidates.d.ts +19 -0
  238. package/lib/types/pipeline/compile.d.ts +11 -0
  239. package/lib/types/pipeline/confidence.d.ts +35 -0
  240. package/lib/types/pipeline/fusion.d.ts +23 -1
  241. package/lib/types/pipeline/render.d.ts +16 -0
  242. package/lib/types/pipeline/run.d.ts +3 -1
  243. package/lib/types/pipeline/sources-spec.d.ts +5 -2
  244. package/lib/types/pipeline/types.d.ts +37 -0
  245. package/lib/types/providers/deepseek.d.ts +130 -0
  246. package/lib/types/providers/http.d.ts +2 -1
  247. package/lib/types/providers/keyed-meta.d.ts +5 -0
  248. package/lib/types/providers/platforms.d.ts +15 -3
  249. package/lib/types/providers/registry.d.ts +10 -0
  250. package/lib/types/restart.d.ts +52 -0
  251. package/lib/types/router.d.ts +69 -9
  252. package/lib/types/rpc-types.d.ts +79 -0
  253. package/lib/types/rpc.d.ts +41 -0
  254. package/lib/types/tools.d.ts +6 -0
  255. package/lib/types/util.d.ts +16 -1
  256. package/lib/util.js +17 -4
  257. package/lib/util.js.map +1 -1
  258. package/package.json +51 -43
  259. package/scripts/check-client-bundle.mjs +1 -1
  260. package/scripts/cli-login-check.mjs +214 -0
  261. package/lib/client/RubricEditor.js +0 -47
  262. package/lib/client/RubricEditor.js.map +0 -1
  263. package/lib/client/fields.js +0 -31
  264. package/lib/client/fields.js.map +0 -1
  265. package/lib/types/client/RubricEditor.d.ts +0 -6
  266. package/lib/types/client/fields.d.ts +0 -65
@@ -1,10 +1,16 @@
1
+ import { normalizeCoverage, normalizeJudge, normalizeRubrics } from "../config-fillers.js";
1
2
  import { BUILTIN_RUBRIC_IDS, builtinDef } from "../pipeline/rubrics-spec.js";
2
- import { BUDGET_SPECS, CREDENTIAL_IDS, FIELD_SPECS, KEYED_SPECS, PATH_SPECS, applyOps, credentialRef, deepMerge, getAt, hasAt, isPathSpec, isRecord, rubricField, rubricSpec, } from "./form-specs.js";
3
- import { evidenceIssues, sourcesIssues, nextVersion, providerChoices, unknownRubricIds } from "./validators.js";
3
+ import { BUDGET_SPECS, CREDENTIAL_IDS, CONFIDENCE_PREFIX, FIELD_SPECS, KEYED_SPECS, PATH_SPECS, applyOps, confidenceSpec, credentialRef, deepMerge, getAt, hasAt, isPathSpec, isRecord, rubricField, rubricSpec, } from "./form-specs.js";
4
+ import { RPC_CHANNEL } from "../rpc-types.js";
5
+ import { adoptionOf } from "./overlay-ops.js";
6
+ import { RESTART_FIELD_LIST } from "../restart.js";
7
+ import { cliIssues, evidenceIssues, sourcesIssues, nextVersion, providerChoices, unknownRubricIds } from "./validators.js";
4
8
  export { BUDGET_SPECS, CREDENTIAL_IDS, FIELD_SPECS, KEYED_SPECS, PATH_SPECS };
5
9
  /** What the rubric editor edits of one override entry, as draft text. */
6
10
  export const RUBRIC_TEXT_KEYS = ['version', 'instructions', 'criteria', 'maxStateChars', 'maxCandidateChars'];
7
11
  const ROOTS = ['evidence', 'provider', 'keyedSources', 'sources'];
12
+ /** Top-level fields that are objects whose keys, not the object, are the live (volatile) settings of the plugin schema. */
13
+ const CONTAINER_FIELDS = ['playwright'];
8
14
  function stable(value) {
9
15
  if (Array.isArray(value))
10
16
  return `[${value.map(stable).join(',')}]`;
@@ -19,7 +25,26 @@ function same(left, right) {
19
25
  return stable(left) === stable(right);
20
26
  }
21
27
  const SPECS = [...FIELD_SPECS, ...PATH_SPECS, ...KEYED_SPECS, ...BUDGET_SPECS, ...BUILTIN_RUBRIC_IDS.map(rubricSpec)];
28
+ /** Every field spec of the form model, in display order. */
29
+ export const ALL_SPECS = SPECS;
22
30
  const SPEC_BY_FIELD = new Map(SPECS.map(spec => [spec.field, spec]));
31
+ /** The dynamic fields (one `sources.confidence.<id>` per source id) made so far: a field is the same object every time it is asked for. */
32
+ const DYNAMIC_SPECS = new Map();
33
+ /** The spec of a field that is not in the fixed list: `sources.confidence.<id>`; undefined for any other name. */
34
+ function dynamicSpec(field) {
35
+ if (!field.startsWith(CONFIDENCE_PREFIX) || field.length === CONFIDENCE_PREFIX.length)
36
+ return undefined;
37
+ const known = DYNAMIC_SPECS.get(field);
38
+ if (known)
39
+ return known;
40
+ const spec = confidenceSpec(field.slice(CONFIDENCE_PREFIX.length));
41
+ DYNAMIC_SPECS.set(field, spec);
42
+ return spec;
43
+ }
44
+ /** The specs of the dynamic fields among `fields` (the text view prints them next to the fixed ones). */
45
+ export function dynamicSpecsOf(fields) {
46
+ return Object.keys(fields).filter(field => !SPEC_BY_FIELD.has(field)).flatMap(field => dynamicSpec(field) ?? []);
47
+ }
23
48
  function createLocalStore(initial) {
24
49
  let snapshot = initial;
25
50
  const listeners = new Set();
@@ -59,6 +84,8 @@ export class WebSearchSettingsController {
59
84
  credentialGeneration = 0;
60
85
  credentialRefSignature = '';
61
86
  credentialStates = emptyCredentials();
87
+ server = { available: false, loading: false, failed: false, trial: { state: 'idle' }, overlay: { loading: false, failed: false, busy: false } };
88
+ trialGeneration = 0;
62
89
  constructor(scope, ctx) {
63
90
  this.scope = scope;
64
91
  this.ctx = ctx;
@@ -70,6 +97,143 @@ export class WebSearchSettingsController {
70
97
  void this.refreshCredentials();
71
98
  });
72
99
  void this.refreshCredentials();
100
+ void this.refreshStatus();
101
+ void this.refreshOverlay();
102
+ }
103
+ /** The Host's RPC client, read when it is used (the service may arrive after the card was registered); undefined where there is none. */
104
+ rpc() {
105
+ try {
106
+ const root = this.ctx;
107
+ const connection = (root.get?.('connection') ?? root.connection);
108
+ return typeof connection?.rpc?.call === 'function' ? connection.rpc : undefined;
109
+ }
110
+ catch {
111
+ return undefined;
112
+ }
113
+ }
114
+ /** Ask the plugin what is ready now (the same local probes as `sources.status`). Silent when the Host has no transport. */
115
+ async refreshStatus() {
116
+ const rpc = this.rpc();
117
+ if (!rpc) {
118
+ this.server = { ...this.server, available: false, loading: false };
119
+ this.publish();
120
+ return;
121
+ }
122
+ this.server = { ...this.server, available: true, loading: true };
123
+ this.publish();
124
+ try {
125
+ const result = await rpc.call(RPC_CHANNEL, 'status', {});
126
+ if (!result.ok)
127
+ throw new Error(result.error.message);
128
+ this.server = { ...this.server, available: true, loading: false, failed: false, status: result.value };
129
+ }
130
+ catch {
131
+ // An older plugin build without the channel answers nothing useful: the card falls back to what it can tell by itself.
132
+ this.server = { ...this.server, loading: false, failed: true };
133
+ }
134
+ this.publish();
135
+ }
136
+ setOverlay(patch) {
137
+ this.server = { ...this.server, overlay: { ...this.server.overlay, ...patch } };
138
+ this.publish();
139
+ }
140
+ /** Read what the agent overlay holds (once when the panel opens, and on the refresh button). Silent where the Host has no transport. */
141
+ async refreshOverlay() {
142
+ const rpc = this.rpc();
143
+ if (!rpc) {
144
+ this.setOverlay({ loading: false, failed: true });
145
+ return;
146
+ }
147
+ this.setOverlay({ loading: true });
148
+ try {
149
+ const result = await rpc.call(RPC_CHANNEL, 'overlay', { limit: 20 });
150
+ if (!result.ok)
151
+ throw new Error(result.error.message);
152
+ this.setOverlay({ loading: false, failed: false, view: result.value });
153
+ }
154
+ catch {
155
+ // A plugin build without the endpoint answers nothing useful: the card shows no agent changes and says it could not read them.
156
+ this.setOverlay({ loading: false, failed: true });
157
+ }
158
+ }
159
+ /** Drop overlay entries (keys, or `'all'`) as the user. The plugin audits it; the card shows the overlay as it is afterwards. */
160
+ async revokeOverlay(keys, adopted = false) {
161
+ const rpc = this.rpc();
162
+ if (!rpc) {
163
+ this.setOverlay({ error: { key: 'agentRevokeFailed', why: 'unavailable' } });
164
+ return false;
165
+ }
166
+ this.setOverlay({ busy: true, error: undefined });
167
+ try {
168
+ const result = await rpc.call(RPC_CHANNEL, 'overlay.revoke', { keys: keys === 'all' ? 'all' : [...keys], ...adopted ? { adopted: true } : {} });
169
+ if (!result.ok)
170
+ throw new Error(result.error.message);
171
+ this.setOverlay({ busy: false, failed: false, view: result.value });
172
+ void this.refreshStatus();
173
+ return true;
174
+ }
175
+ catch (error) {
176
+ this.setOverlay({ busy: false, error: { key: 'agentRevokeFailed', why: error instanceof Error ? error.message : String(error) } });
177
+ return false;
178
+ }
179
+ }
180
+ /**
181
+ * "Adopt into configuration": write the overlay item's value into the profile with the Host's atomic `mutate` (the same call the save bar
182
+ * makes, at the leaf the item is about), and only when that landed ask the plugin to drop the entry. A failed write leaves both as they were.
183
+ */
184
+ async adoptOverlay(key) {
185
+ const item = this.server.overlay.view?.items.find(entry => entry.key === key);
186
+ const adoption = item ? adoptionOf(item) : undefined;
187
+ if (!item || !adoption || this.saving || !this.scope.getSnapshot().writable)
188
+ return false;
189
+ this.setOverlay({ busy: true, error: undefined });
190
+ let landed = false;
191
+ try {
192
+ landed = await this.scope.mutate(adoption.ops);
193
+ }
194
+ catch {
195
+ landed = false;
196
+ }
197
+ if (!landed) {
198
+ this.setOverlay({ busy: false, error: { key: 'agentAdoptFailed' } });
199
+ return false;
200
+ }
201
+ for (const field of adoption.drop)
202
+ this.staged.delete(field);
203
+ this.publish();
204
+ const dropped = await this.revokeOverlay([key], true);
205
+ if (!dropped)
206
+ this.setOverlay({ error: { key: 'agentAdoptHalf', why: this.server.overlay.error?.why } });
207
+ return dropped;
208
+ }
209
+ /** Run one search of a custom CLI draft (rpc-types.ts `trial`). The outcome lands in `server.trial`. */
210
+ async runTrial(request) {
211
+ const rpc = this.rpc();
212
+ const generation = ++this.trialGeneration;
213
+ if (!rpc) {
214
+ this.server = { ...this.server, trial: { state: 'failed', id: request.id, error: 'unavailable' } };
215
+ this.publish();
216
+ return;
217
+ }
218
+ this.server = { ...this.server, trial: { state: 'running', id: request.id } };
219
+ this.publish();
220
+ let trial;
221
+ try {
222
+ const result = await rpc.call(RPC_CHANNEL, 'trial', request);
223
+ trial = result.ok ? { state: 'done', id: request.id, result: result.value } : { state: 'failed', id: request.id, error: result.error.message };
224
+ }
225
+ catch (error) {
226
+ trial = { state: 'failed', id: request.id, error: error instanceof Error ? error.message : String(error) };
227
+ }
228
+ if (generation !== this.trialGeneration)
229
+ return;
230
+ this.server = { ...this.server, trial };
231
+ this.publish();
232
+ }
233
+ clearTrial() {
234
+ this.trialGeneration += 1;
235
+ this.server = { ...this.server, trial: { state: 'idle' } };
236
+ this.publish();
73
237
  }
74
238
  inject() {
75
239
  return {
@@ -83,6 +247,12 @@ export class WebSearchSettingsController {
83
247
  save: () => { void this.save(); },
84
248
  discard: () => { this.discard(); },
85
249
  refreshCredentials: () => { void this.refreshCredentials(); },
250
+ refreshStatus: () => { void this.refreshStatus(); },
251
+ refreshOverlay: () => { void this.refreshOverlay(); },
252
+ revokeOverlay: (keys) => { void this.revokeOverlay(keys); },
253
+ adoptOverlay: (key) => { void this.adoptOverlay(key); },
254
+ runTrial: (request) => { void this.runTrial(request); },
255
+ clearTrial: () => { this.clearTrial(); },
86
256
  };
87
257
  }
88
258
  snapshot() {
@@ -185,20 +355,10 @@ export class WebSearchSettingsController {
185
355
  this.publish();
186
356
  let landed = true;
187
357
  try {
188
- for (const item of plan) {
189
- if (item.write === undefined) {
190
- landed = false;
191
- break;
192
- }
193
- if (item.write.kind === 'clear') {
194
- await this.scope.unset(item.target);
195
- landed = !this.storedTop(item.target) && landed;
196
- }
197
- else {
198
- await this.scope.set(item.target, item.write.value);
199
- landed = same(this.userLayer()?.[item.target], item.write.value) && landed;
200
- }
201
- }
358
+ // One atomic mutation, at the paths of the fields that changed: the Host accepts an edit only beneath a field the plugin
359
+ // declared volatile, so a whole container (`evidence`, `sources`, `playwright`) is never written as one value.
360
+ if (analysis.ops.length > 0)
361
+ landed = await this.scope.mutate(analysis.ops);
202
362
  if (landed) {
203
363
  for (const id of credentials) {
204
364
  const value = this.secretDrafts.get(id)?.trim() ?? '';
@@ -220,6 +380,9 @@ export class WebSearchSettingsController {
220
380
  this.saving = false;
221
381
  this.failed = !landed;
222
382
  this.publish();
383
+ // What is ready may have changed with the settings just saved (a custom CLI, a key, a chain).
384
+ if (landed)
385
+ void this.refreshStatus();
223
386
  }
224
387
  async refreshCredentials() {
225
388
  const generation = ++this.credentialGeneration;
@@ -259,11 +422,14 @@ export class WebSearchSettingsController {
259
422
  const fields = {};
260
423
  for (const spec of SPECS)
261
424
  fields[spec.field] = this.decorate(spec.field, this.fieldState(spec.field), analysis);
425
+ for (const field of this.dynamicFields())
426
+ fields[field] = this.decorate(field, this.fieldState(field), analysis);
262
427
  const credentialsDirty = this.credentialPlan().length > 0;
263
428
  return {
264
429
  available: this.scope.getSnapshot().status === 'ready',
265
430
  writable: this.scope.getSnapshot().writable,
266
431
  dirty: analysis.settings.length > 0 || credentialsDirty,
432
+ changes: this.changedFields() + this.credentialPlan().length,
267
433
  invalid: analysis.settings.some(item => item.write === undefined) || analysis.blocked.size > 0,
268
434
  saving: this.saving,
269
435
  failed: this.failed,
@@ -271,9 +437,60 @@ export class WebSearchSettingsController {
271
437
  credentials: Object.fromEntries(CREDENTIAL_IDS.map(id => [id, { text: this.secretDrafts.get(id) ?? '', ...this.credentialStates[id] }])),
272
438
  providerChoices: providerChoices(getAt(analysis.evidence, ['judge', 'providers'])),
273
439
  rubrics: this.projectRubrics(fields, analysis),
440
+ restartTouched: this.restartTouched(),
274
441
  unknownRubrics: unknownRubricIds(analysis.evidence.rubrics),
442
+ server: this.server,
275
443
  };
276
444
  }
445
+ /** The start-up-only settings (restart.ts) whose staged edit differs from what is stored. */
446
+ restartTouched() {
447
+ const touched = [];
448
+ for (const field of RESTART_FIELD_LIST) {
449
+ if (field === 'playwright.snapshotDir') {
450
+ if (this.snapshotDirTouched())
451
+ touched.push(field);
452
+ continue;
453
+ }
454
+ const draft = this.staged.get(field);
455
+ if (!draft)
456
+ continue;
457
+ if (draft.clear ? this.stored(field) : draft.text !== this.spec(field).format(this.sectionValue(field)))
458
+ touched.push(field);
459
+ }
460
+ return touched;
461
+ }
462
+ /** `playwright` is one JSON field; only its `snapshotDir` is a start-up setting (`enabled` is live). */
463
+ snapshotDirTouched() {
464
+ const draft = this.staged.get('playwright');
465
+ if (!draft)
466
+ return false;
467
+ const stored = this.sectionValue('playwright');
468
+ const before = isRecord(stored) ? stored.snapshotDir : undefined;
469
+ if (draft.clear)
470
+ return before !== undefined;
471
+ try {
472
+ const value = JSON.parse(draft.text);
473
+ return (isRecord(value) ? value.snapshotDir : undefined) !== before;
474
+ }
475
+ catch {
476
+ return false;
477
+ }
478
+ }
479
+ /** Staged fields that differ from what is stored (a pending reset counts only when something is stored). */
480
+ changedFields() {
481
+ let count = 0;
482
+ for (const [field, draft] of this.staged) {
483
+ const spec = this.spec(field);
484
+ if (draft.clear) {
485
+ if (this.stored(field))
486
+ count++;
487
+ continue;
488
+ }
489
+ if (draft.text !== spec.format(this.sectionValue(field)))
490
+ count++;
491
+ }
492
+ return count;
493
+ }
277
494
  decorate(field, state, analysis) {
278
495
  const own = analysis.issues.filter(issue => issue.field === field);
279
496
  const errors = own.filter(issue => issue.level === 'error').map(issue => issue.message);
@@ -330,19 +547,25 @@ export class WebSearchSettingsController {
330
547
  */
331
548
  analyze() {
332
549
  const settings = [];
550
+ const sectionOps = [];
333
551
  const ops = new Map();
334
552
  const staged = new Set();
335
553
  for (const [field, draft] of this.staged) {
336
554
  const spec = this.spec(field);
337
555
  if (!isPathSpec(spec)) {
338
556
  if (draft.clear) {
339
- if (this.stored(field))
557
+ if (this.stored(field)) {
340
558
  settings.push({ target: field, write: { kind: 'clear' } });
559
+ sectionOps.push(...this.topOps(field, { kind: 'clear' }));
560
+ }
341
561
  continue;
342
562
  }
343
563
  if (draft.text === spec.format(this.sectionValue(field)))
344
564
  continue;
345
- settings.push({ target: field, write: spec.parse(draft.text) });
565
+ const write = spec.parse(draft.text);
566
+ settings.push({ target: field, write });
567
+ if (write)
568
+ sectionOps.push(...this.topOps(field, write));
346
569
  continue;
347
570
  }
348
571
  const entry = ops.get(spec.root) ?? { ops: [], invalid: false };
@@ -376,23 +599,63 @@ export class WebSearchSettingsController {
376
599
  continue;
377
600
  if (entry.invalid)
378
601
  settings.push({ target: root, write: undefined });
379
- else if (Object.keys(next).length > 0)
380
- settings.push({ target: root, write: { kind: 'set', value: next } });
381
- else if (this.storedTop(root))
382
- settings.push({ target: root, write: { kind: 'clear' } });
602
+ else {
603
+ if (Object.keys(next).length > 0)
604
+ settings.push({ target: root, write: { kind: 'set', value: next } });
605
+ else if (this.storedTop(root))
606
+ settings.push({ target: root, write: { kind: 'clear' } });
607
+ // Leaf edits at their own paths; an unset of a leaf the user layer does not hold would only create empty parents.
608
+ for (const op of entry.ops)
609
+ if (op.op === 'set' || hasAt(stored ?? {}, op.path))
610
+ sectionOps.push({ ...op, path: [root, ...op.path] });
611
+ }
383
612
  }
384
613
  // Effective evidence settings of the draft: the composition layer under the user layer as it would be written.
385
614
  const base = this.scope.getSnapshot().base?.evidence;
386
- const evidence = deepMerge(isRecord(base) ? base : {}, candidates.get('evidence'));
615
+ const merged = deepMerge(isRecord(base) ? base : {}, candidates.get('evidence'));
616
+ // The Host's schema parser fills empty containers (`thresholds: {}`, `providers`' `limits`, ...) into the base; the server drops
617
+ // them before it validates, so the card does too: "present" must mean "given".
618
+ const evidence = {
619
+ ...merged,
620
+ ...isRecord(merged.judge) ? { judge: normalizeJudge(merged.judge) } : {},
621
+ ...isRecord(merged.coverage) ? { coverage: normalizeCoverage(merged.coverage) } : {},
622
+ ...isRecord(merged.rubrics) ? { rubrics: normalizeRubrics(merged.rubrics) } : {},
623
+ };
387
624
  const baseSources = this.scope.getSnapshot().base?.sources;
388
- const issues = [...evidenceIssues(evidence), ...sourcesIssues(deepMerge(isRecord(baseSources) ? baseSources : {}, candidates.get('sources')))];
625
+ // The CLI adapter settings are top-level fields: the draft value when staged, else what the Host section holds.
626
+ const topValue = (field) => {
627
+ const draft = this.staged.get(field);
628
+ if (draft === undefined)
629
+ return this.sectionValue(field);
630
+ if (draft.clear)
631
+ return undefined;
632
+ const write = this.spec(field).parse(draft.text);
633
+ return write?.kind === 'set' ? write.value : undefined;
634
+ };
635
+ const issues = [...evidenceIssues(evidence), ...sourcesIssues(deepMerge(isRecord(baseSources) ? baseSources : {}, candidates.get('sources'))), ...cliIssues(topValue('platformBackends'), topValue('cliAdapters'))];
389
636
  // An error blocks the save when the person is editing what it is about; otherwise it is shown as it stands.
390
637
  const blocked = new Set();
638
+ const touched = (field) => staged.has(field) || this.staged.has(field);
391
639
  for (const issue of issues) {
392
- if (issue.level === 'error' && (staged.has(issue.field) || (issue.related ?? []).some(related => staged.has(related))))
640
+ if (issue.level === 'error' && (touched(issue.field) || (issue.related ?? []).some(related => touched(related))))
393
641
  blocked.add(issue.field);
394
642
  }
395
- return { settings, issues, blocked, evidence };
643
+ return { settings, ops: sectionOps, issues, blocked, evidence };
644
+ }
645
+ /**
646
+ * The Host ops of a top-level field. A container the schema does not declare volatile as a whole (`playwright`: its keys are)
647
+ * is written key by key; every other field is one `set` or one `unset`.
648
+ */
649
+ topOps(field, write) {
650
+ if (!CONTAINER_FIELDS.includes(field))
651
+ return write.kind === 'clear' ? [{ op: 'unset', path: [field] }] : [{ op: 'set', path: [field], value: write.value }];
652
+ const stored = this.userLayer()?.[field];
653
+ const keys = isRecord(stored) ? Object.keys(stored) : [];
654
+ const value = write.kind === 'set' && isRecord(write.value) ? write.value : {};
655
+ return [
656
+ ...Object.entries(value).map(([key, entry]) => ({ op: 'set', path: [field, key], value: entry })),
657
+ ...keys.filter(key => !Object.hasOwn(value, key)).map((key) => ({ op: 'unset', path: [field, key] })),
658
+ ];
396
659
  }
397
660
  opsOf(spec, write, resolved) {
398
661
  if (spec.ops)
@@ -420,8 +683,14 @@ export class WebSearchSettingsController {
420
683
  return [id, typeof candidate === 'string' && candidate.trim() !== '' ? candidate : fallback];
421
684
  }));
422
685
  }
686
+ /** The `sources.confidence.<id>` fields that hold a value now or in the draft: the card shows these ids with their values. */
687
+ dynamicFields() {
688
+ const stored = this.scope.getSnapshot().value?.sources;
689
+ const ids = isRecord(stored) && isRecord(stored.confidence) ? Object.keys(stored.confidence) : [];
690
+ return [...new Set([...ids.map(id => CONFIDENCE_PREFIX + id), ...[...this.staged.keys()].filter(field => field.startsWith(CONFIDENCE_PREFIX))])];
691
+ }
423
692
  spec(field) {
424
- const spec = SPEC_BY_FIELD.get(field);
693
+ const spec = SPEC_BY_FIELD.get(field) ?? dynamicSpec(field);
425
694
  if (!spec)
426
695
  throw new Error(`unknown web-search-pro settings field: ${field}`);
427
696
  return spec;
@@ -1 +1 @@
1
- {"version":3,"file":"form.js","sourceRoot":"","sources":["../../src/client/form.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form.js","sourceRoot":"","sources":["../../src/client/form.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC1F,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAmB,MAAM,6BAA6B,CAAA;AAE7F,OAAO,EACL,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAC7K,WAAW,EAAE,UAAU,GAExB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,WAAW,EAA0E,MAAM,iBAAiB,CAAA;AACrH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAc,MAAM,iBAAiB,CAAA;AAEtI,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA;AAoB7E,yEAAyE;AACzE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,eAAe,EAAE,mBAAmB,CAAU,CAAA;AAwEtH,MAAM,KAAK,GAAuB,CAAC,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,CAAC,CAAA;AACrF,2HAA2H;AAC3H,MAAM,gBAAgB,GAAsB,CAAC,YAAY,CAAC,CAAA;AAE1D,SAAS,MAAM,CAAC,KAAc;IAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IACnE,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC;aACxD,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;aACpD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IAClF,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC;AAED,SAAS,IAAI,CAAC,IAAa,EAAE,KAAc;IACzC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,CAAA;AACvC,CAAC;AAED,MAAM,KAAK,GAAyB,CAAC,GAAG,WAAW,EAAE,GAAG,UAAU,EAAE,GAAG,WAAW,EAAE,GAAG,YAAY,EAAE,GAAG,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAA;AAC3I,4DAA4D;AAC5D,MAAM,CAAC,MAAM,SAAS,GAAyB,KAAK,CAAA;AACpD,MAAM,aAAa,GAAG,IAAI,GAAG,CAA0B,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;AAC7F,2IAA2I;AAC3I,MAAM,aAAa,GAAG,IAAI,GAAG,EAAqB,CAAA;AAElD,kHAAkH;AAClH,SAAS,WAAW,CAAC,KAAa;IAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,iBAAiB,CAAC,MAAM;QAAE,OAAO,SAAS,CAAA;IACvG,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACtC,IAAI,KAAK;QAAE,OAAO,KAAK,CAAA;IACvB,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAA;IAClE,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAC9B,OAAO,IAAI,CAAA;AACb,CAAC;AAED,yGAAyG;AACzG,MAAM,UAAU,cAAc,CAAC,MAAyC;IACtE,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,KAAqB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;AAClI,CAAC;AAED,SAAS,gBAAgB,CAAI,OAAU;IACrC,IAAI,QAAQ,GAAG,OAAO,CAAA;IACtB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAA;IACvC,OAAO;QACL,WAAW,EAAE,GAAG,EAAE,CAAC,QAAQ;QAC3B,SAAS,CAAC,QAAQ;YAChB,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACvB,OAAO,GAAG,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA,CAAC,CAAC,CAAA;QAC7C,CAAC;QACD,GAAG,CAAC,IAAI;YACN,QAAQ,GAAG,IAAI,CAAA;YACf,KAAK,MAAM,QAAQ,IAAI,SAAS;gBAAE,QAAQ,EAAE,CAAA;QAC9C,CAAC;QACD,MAAM,CAAC,OAAO;YACZ,MAAM,KAAK,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAA;YACvC,OAAO,CAAC,KAAK,CAAC,CAAA;YACd,QAAQ,GAAG,KAAK,CAAA;YAChB,KAAK,MAAM,QAAQ,IAAI,SAAS;gBAAE,QAAQ,EAAE,CAAA;QAC9C,CAAC;KACF,CAAA;AACH,CAAC;AAED,MAAM,gBAAgB,GAAG,GAAwD,EAAE,CACjF,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAwD,CAAA;AAEjK,MAAM,OAAO,2BAA2B;IAiBnB;IACA;IAjBF,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAA;IACvC,YAAY,GAAG,IAAI,GAAG,EAAwB,CAAA;IAC/D,6GAA6G;IAC5F,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAA;IACvC,SAAS,GAAG,IAAI,GAAG,EAAc,CAAA;IACjC,KAAK,CAAmC;IACxC,WAAW,CAAY;IAChC,MAAM,GAAG,KAAK,CAAA;IACd,MAAM,GAAG,KAAK,CAAA;IACd,oBAAoB,GAAG,CAAC,CAAA;IACxB,sBAAsB,GAAG,EAAE,CAAA;IAC3B,gBAAgB,GAAG,gBAAgB,EAAE,CAAA;IACrC,MAAM,GAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAA;IAC5J,eAAe,GAAG,CAAC,CAAA;IAE3B,YACmB,KAA0C,EAC1C,GAAY;QADZ,UAAK,GAAL,KAAK,CAAqC;QAC1C,QAAG,GAAH,GAAG,CAAS;QAE7B,IAAI,CAAC,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;QAC7C,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;YACtC,IAAI,CAAC,OAAO,EAAE,CAAA;YACd,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAA;YAC/C,IAAI,SAAS,KAAK,IAAI,CAAC,sBAAsB;gBAAE,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAC/E,CAAC,CAAC,CAAA;QACF,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAC9B,KAAK,IAAI,CAAC,aAAa,EAAE,CAAA;QACzB,KAAK,IAAI,CAAC,cAAc,EAAE,CAAA;IAC5B,CAAC;IAED,yIAAyI;IACjI,GAAG;QACT,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,GAA2E,CAAA;YAC7F,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,UAAU,CAA6C,CAAA;YAC5G,OAAO,OAAO,UAAU,EAAE,GAAG,EAAE,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,GAAY,CAAC,CAAC,CAAC,SAAS,CAAA;QAC1F,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,SAAS,CAAA;QAAC,CAAC;IAC9B,CAAC;IAED,2HAA2H;IAC3H,KAAK,CAAC,aAAa;QACjB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,GAAG,EAAE,CAAC;YAAC,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAAC,OAAM;QAAC,CAAC;QACxG,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAChE,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;YACxD,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACrD,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,KAAmB,EAAE,CAAA;QACtH,CAAC;QAAC,MAAM,CAAC;YACP,uHAAuH;YACvH,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;QAChE,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAEO,UAAU,CAAC,KAAgC;QACjD,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,CAAA;QAC/E,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,wIAAwI;IACxI,KAAK,CAAC,cAAc;QAClB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,GAAG,EAAE,CAAC;YAAC,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAAC,OAAM;QAAC,CAAC;QACvE,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QAClC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;YACpE,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACrD,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,KAAoB,EAAE,CAAC,CAAA;QACvF,CAAC;QAAC,MAAM,CAAC;YACP,+HAA+H;YAC/H,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QACnD,CAAC;IACH,CAAC;IAED,iIAAiI;IACjI,KAAK,CAAC,aAAa,CAAC,IAA+B,EAAE,OAAO,GAAG,KAAK;QAClE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,GAAG,EAAE,CAAC;YAAC,IAAI,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;YAAC,OAAO,KAAK,CAAA;QAAC,CAAC;QACxG,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;QACjD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,EAAE,EAAE,IAAI,EAAE,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC/I,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACrD,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,KAAoB,EAAE,CAAC,CAAA;YAClF,KAAK,IAAI,CAAC,aAAa,EAAE,CAAA;YACzB,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAA;YAClI,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,GAAW;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,CAAA;QAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACpD,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAA;QACzF,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;QACjD,IAAI,MAAM,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC;YAAC,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAmE,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,MAAM,GAAG,KAAK,CAAA;QAAC,CAAC;QAC/I,IAAI,CAAC,MAAM,EAAE,CAAC;YAAC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAC;YAAC,OAAO,KAAK,CAAA;QAAC,CAAC;QACnG,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,IAAI;YAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAqB,CAAC,CAAA;QAC5E,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAA;QACrD,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAA;QACxG,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,wGAAwG;IACxG,KAAK,CAAC,QAAQ,CAAC,OAAqB;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,MAAM,UAAU,GAAG,EAAE,IAAI,CAAC,eAAe,CAAA;QACzC,IAAI,CAAC,GAAG,EAAE,CAAC;YAAC,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,CAAC;YAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAAC,OAAM;QAAC,CAAC;QACxI,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,CAAA;QAC7E,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,IAAI,KAA2B,CAAA;QAC/B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YAC5D,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,KAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAA;QAC/J,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;QAC5G,CAAC;QACD,IAAI,UAAU,KAAK,IAAI,CAAC,eAAe;YAAE,OAAM;QAC/C,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAA;QACvC,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,UAAU;QACR,IAAI,CAAC,eAAe,IAAI,CAAC,CAAA;QACzB,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAA;QAC1D,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,MAAM;QACJ,OAAO;YACL,KAAK,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE;YACnC,IAAI,EAAE,CAAC,KAAmB,EAAE,IAAY,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA,CAAC,CAAC;YACvE,UAAU,EAAE,CAAC,KAAmB,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA,CAAC,CAAC;YAC/D,cAAc,EAAE,CAAC,EAAgB,EAAE,IAAY,EAAE,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA,CAAC,CAAC;YACrF,UAAU,EAAE,CAAC,EAAU,EAAE,GAAkB,EAAE,IAAY,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA,CAAC,CAAC;YAChG,WAAW,EAAE,CAAC,EAAU,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA,CAAC,CAAC;YACrD,aAAa,EAAE,CAAC,EAAU,EAAE,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA,CAAC,CAAC;YACzD,IAAI,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,IAAI,EAAE,CAAA,CAAC,CAAC;YAChC,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA,CAAC,CAAC;YACjC,kBAAkB,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAA,CAAC,CAAC;YAC5D,aAAa,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,aAAa,EAAE,CAAA,CAAC,CAAC;YAClD,cAAc,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,cAAc,EAAE,CAAA,CAAC,CAAC;YACpD,aAAa,EAAE,CAAC,IAA+B,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA,CAAC,CAAC;YACrF,YAAY,EAAE,CAAC,GAAW,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC;YAC9D,QAAQ,EAAE,CAAC,OAAqB,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA,CAAC,CAAC;YACpE,UAAU,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA,CAAC,CAAC;SACxC,CAAA;IACH,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAA;IACjC,CAAC;IAED,IAAI,CAAC,KAAmB,EAAE,IAAY;QACpC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QAC9C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,UAAU,CAAC,KAAmB;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACjF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,cAAc,CAAC,EAAgB,EAAE,IAAY;QAC3C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,mHAAmH;IAEnH,oHAAoH;IAC5G,WAAW,CAAC,EAAU;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;QAClD,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,SAAS,CAAA;QACxC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAA;YACzC,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;QAC5C,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,SAAS,CAAA;QAAC,CAAC;IAC9B,CAAC;IAEO,WAAW,CAAC,EAAU,EAAE,KAAuB;QACrD,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,CAAA;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QAC5G,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,UAAU,CAAC,EAAU,EAAE,GAAkB,EAAE,IAAY;QACrD,MAAM,KAAK,GAAS,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAA;QAC/D,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACxE,IAAI,MAAM,CAAC,MAAM;gBAAE,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC;;gBAAM,OAAO,KAAK,CAAC,QAAQ,CAAA;QACxE,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAA;QACnB,CAAC;aAAM,IAAI,GAAG,KAAK,eAAe,IAAI,GAAG,KAAK,mBAAmB,EAAE,CAAC;YAClE,2GAA2G;YAC3G,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAClE,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;QACrD,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;IAC7B,CAAC;IAED,6EAA6E;IAC7E,WAAW,CAAC,EAAU;QACpB,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,CAAA;QAC3B,IAAI,CAAC,IAAI;YAAE,OAAM;QACjB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC3B,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE;YACnB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;YAClC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;YACxD,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;SAC1C,CAAC,CAAA;IACJ,CAAC;IAED,2FAA2F;IAC3F,aAAa,CAAC,EAAU;QACtB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC3B,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;IAClC,CAAC;IAED,OAAO;QACL,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QACnB,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;QACzB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAA;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;QAC/B,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAA;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAA;QACxF,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QACzC,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC;YAAE,OAAM;QACrF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QAClB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,OAAO,EAAE,CAAA;QAEd,IAAI,MAAM,GAAG,IAAI,CAAA;QACjB,IAAI,CAAC;YACH,yHAAyH;YACzH,+GAA+G;YAC/G,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAmE,CAAC,CAAA;YAE3I,IAAI,MAAM,EAAE,CAAC;gBACX,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;oBAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;oBACrD,IAAI,KAAK,KAAK,EAAE;wBAAE,SAAQ;oBAC1B,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,CAAA;gBAC1D,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,GAAG,KAAK,CAAA;QAChB,CAAC;QAED,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAC/B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;YACnB,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;YACzB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAA;QAC1B,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC,MAAM,GAAG,CAAC,MAAM,CAAA;QACrB,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,8FAA8F;QAC9F,IAAI,MAAM;YAAE,KAAK,IAAI,CAAC,aAAa,EAAE,CAAA;IACvC,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,UAAU,GAAG,EAAE,IAAI,CAAC,oBAAoB,CAAA;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QAClC,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;QAC1C,KAAK,MAAM,EAAE,IAAI,cAAc;YAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,CAAA;QACzE,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9F,IAAI,UAAU,KAAK,IAAI,CAAC,oBAAoB;YAAE,OAAM;QACpD,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YAChB,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;gBAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;gBACrC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG;oBAC1B,UAAU,EAAE,IAAI,EAAE,UAAU,IAAI,KAAK;oBACrC,QAAQ,EAAE,IAAI,EAAE,QAAQ,IAAI,IAAI;oBAChC,OAAO,EAAE,KAAK;iBACf,CAAA;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,EAAE,IAAI,cAAc;gBAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,KAAK,CAAA;QAC5E,CAAC;QACD,IAAI,UAAU,KAAK,IAAI,CAAC,oBAAoB;YAAE,IAAI,CAAC,OAAO,EAAE,CAAA;IAC9D,CAAC;IAED,OAAO;QACL,IAAI,CAAC,WAAW,EAAE,CAAA;QAClB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;QACtB,IAAI,CAAC,oBAAoB,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,oHAAoH;IAE5G,OAAO;QACb,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;QAC/B,MAAM,MAAM,GAAG,EAA0C,CAAA;QACzD,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAA;QAC/G,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE;YAAE,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAA;QAChH,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,MAAM,GAAG,CAAC,CAAA;QACzD,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,MAAM,KAAK,OAAO;YACtD,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ;YAC3C,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB;YACvD,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,MAAM;YAC5D,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC;YAC9F,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM;YACN,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAA0C;YACjL,eAAe,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;YAClF,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC;YAC9C,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;YACrC,cAAc,EAAE,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC3D,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAA;IACH,CAAC;IAED,6FAA6F;IACrF,cAAc;QACpB,MAAM,OAAO,GAAa,EAAE,CAAA;QAC5B,KAAK,MAAM,KAAK,IAAI,kBAAkB,EAAE,CAAC;YACvC,IAAI,KAAK,KAAK,wBAAwB,EAAE,CAAC;gBAAC,IAAI,IAAI,CAAC,kBAAkB,EAAE;oBAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAAC,SAAQ;YAAC,CAAC;YACxG,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACpC,IAAI,CAAC,KAAK;gBAAE,SAAQ;YACpB,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC9H,CAAC;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,wGAAwG;IAChG,kBAAkB;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAA;QAC9C,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;QAChE,IAAI,KAAK,CAAC,KAAK;YAAE,OAAO,MAAM,KAAK,SAAS,CAAA;QAC5C,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAY,CAAA;YAC/C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,MAAM,CAAA;QACrE,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,KAAK,CAAA;QAAC,CAAC;IAC1B,CAAC;IAED,4GAA4G;IACpG,aAAa;QACnB,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACzC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC7B,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAAC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;oBAAE,KAAK,EAAE,CAAC;gBAAC,SAAQ;YAAC,CAAC;YAC9D,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBAAE,KAAK,EAAE,CAAA;QACnE,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,QAAQ,CAAC,KAAmB,EAAE,KAAqB,EAAE,QAAkB;QAC7E,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,CAAA;QAClE,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACvF,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC3F,OAAO;YACL,GAAG,KAAK;YACR,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;YACrD,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;YACtD,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;SAC3D,CAAA;IACH,CAAC;IAEO,cAAc,CAAC,MAA4C,EAAE,QAAkB;QACrF,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACnC,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAE,CAAA;YAC5B,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,CAAA;YAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;YAClC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YAC3B,MAAM,IAAI,GAAG,CAAC,KAAc,EAAU,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;YAC3H,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACnG,OAAO;gBACL,EAAE;gBACF,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE;gBACrL,aAAa,EAAE,KAAK,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO;gBAC/H,OAAO,EAAE,KAAK,KAAK,SAAS;gBAC5B,KAAK,EAAE;oBACL,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC;oBAC7B,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC;oBACvC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAE,KAAK,CAAC,QAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChI,aAAa,EAAE,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC;oBACzC,iBAAiB,EAAE,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAC;iBAClD;gBACD,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aAC3D,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,kFAAkF;IAC1E,UAAU,CAAC,KAAmB;QACpC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACpC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;QACxG,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC/E,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,KAAK,KAAK,EAAE,OAAO,EAAE,KAAK,KAAK,SAAS,EAAE,CAAA;IAC9F,CAAC;IAED;;;;OAIG;IACK,OAAO;QACb,MAAM,QAAQ,GAAe,EAAE,CAAA;QAC/B,MAAM,UAAU,GAAgB,EAAE,CAAA;QAClC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAgD,CAAA;QACnE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAgB,CAAA;QACtC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACzC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;wBAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;wBAAC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;oBAAC,CAAC;oBACjJ,SAAQ;gBACV,CAAC;gBACD,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBAAE,SAAQ;gBAClE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;gBACvC,IAAI,KAAK;oBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;gBACxD,SAAQ;YACV,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;YAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC7C,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;oBAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBAAC,CAAC;YACjH,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBAChE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACpC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBACjB,IAAI,KAAK,KAAK,SAAS;oBAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAA;;oBACxC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;YAC3D,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC3B,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,CAAA;QACnC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAiB,CAAA;QAC3C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAC5D,MAAM,IAAI,GAAS,eAAe,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;YAChD,IAAI,KAAK;gBAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;YACpC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC1B,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;gBAAE,SAAQ;YACjF,IAAI,KAAK,CAAC,OAAO;gBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;iBAC/D,CAAC;gBACJ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;oBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;qBACjG,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;oBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;gBACxF,kHAAkH;gBAClH,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,GAAG;oBAAE,IAAI,EAAE,CAAC,EAAE,KAAK,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;wBAAE,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACvI,CAAC;QACH,CAAC;QAED,+GAA+G;QAC/G,MAAM,IAAI,GAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAA4C,EAAE,QAAQ,CAAA;QAC7F,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAS,CAAA;QACxF,iIAAiI;QACjI,+EAA+E;QAC/E,MAAM,QAAQ,GAAS;YACrB,GAAG,MAAM;YACT,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;YACxE,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;YACpF,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;SACjF,CAAA;QACD,MAAM,WAAW,GAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAA4C,EAAE,OAAO,CAAA;QACnG,gHAAgH;QAChH,MAAM,QAAQ,GAAG,CAAC,KAAyC,EAAW,EAAE;YACtE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACpC,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;YACxD,IAAI,KAAK,CAAC,KAAK;gBAAE,OAAO,SAAS,CAAA;YACjC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAChD,OAAO,KAAK,EAAE,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;QACxD,CAAC,CAAA;QACD,MAAM,MAAM,GAAG,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,EAAE,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAS,CAAC,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QAC3N,4GAA4G;QAC5G,MAAM,OAAO,GAAG,IAAI,GAAG,EAAgB,CAAA;QACvC,MAAM,OAAO,GAAG,CAAC,KAAmB,EAAW,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC7F,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC5I,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAA;IACjE,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,KAAmB,EAAE,KAAiB;QACnD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;QAC5J,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,CAAA;QACxC,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACxD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QAC9E,OAAO;YACL,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAa,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5G,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAa,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;SACjH,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,IAAc,EAAE,KAAiB,EAAE,QAAc;QAC7D,IAAI,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;QAClD,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;IACrI,CAAC;IAEO,cAAc;QACpB,OAAQ,CAAC,GAAG,IAAI,CAAC,YAAY,CAA8B;aACxD,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;aAC1C,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;IACtB,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,EAAgB,EAAE,KAAa;QAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC,CAAA;QACrC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACjE,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,OAAO,KAAK,CAAA;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAClE,OAAO,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,UAAU,IAAI,KAAK,CAAC,CAAA;IAClE,CAAC;IAED,yHAAyH;IACjH,cAAc;QACpB,OAAO,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YAClD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC,CAAA;YACtD,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;YAC1C,OAAO,CAAC,EAAE,EAAE,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QAC9F,CAAC,CAAC,CAAiC,CAAA;IACrC,CAAC;IAED,8HAA8H;IACtH,aAAa;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,CAAA;QACtD,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACjG,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,iBAAiB,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAmB,CAAA;IACpK,CAAC;IAEO,IAAI,CAAC,KAAmB;QAC9B,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAA;QAC3D,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,KAAK,EAAE,CAAC,CAAA;QAC7E,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,YAAY,CAAC,IAAa;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAA;QACpD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IACrC,CAAC;IAEO,YAAY,CAAC,KAAmB;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IACrE,CAAC;IAEO,SAAS,CAAC,KAAmB;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAA2C,CAAA;QACjF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,EAAE,CAAC,KAAK,CAAC,CAAA;QAC3C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAS,CAAC,CAAC,CAAC,EAAE,CAAA;QACvE,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAC7D,CAAC;IAEO,SAAS;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAA2C,CAAA;IAC7E,CAAC;IAEO,SAAS,CAAC,GAAW;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;QAC7B,OAAO,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IACvD,CAAC;IAEO,MAAM,CAAC,KAAmB;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAA;QACjC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IACjE,CAAC;IAEO,OAAO;QACb,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;QAC9B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS;YAAE,QAAQ,EAAE,CAAA;IACnD,CAAC;CACF"}
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * "Advanced: text mode": the settings as one commented YAML text, to read or copy. It is a view of the controls (it prints
4
+ * the staged state, secrets excluded), not a second place the settings live. Every key has a comment in front of it.
5
+ * @module web-search-pro/client/group-advanced
6
+ */
7
+ import { useState } from 'react';
8
+ import { ALL_SPECS, dynamicSpecsOf } from "./form.js";
9
+ import { fill, useOverriddenCount } from "./field-rows.js";
10
+ import { JsonList, jsonFieldsOf } from "./json-list.js";
11
+ import { renderTextView } from "./text-view.js";
12
+ import { styles as css } from "./styles.js";
13
+ import { Badge, Btn, Fold, Group } from "./ui-kit.js";
14
+ export function AdvancedGroup({ card }) {
15
+ const { t } = card;
16
+ const fields = card.useWebSearchPro(snapshot => snapshot.fields);
17
+ const [copied, setCopied] = useState(false);
18
+ const text = renderTextView(fields, [...ALL_SPECS, ...dynamicSpecsOf(fields)], t('lang'));
19
+ const id = 'web-search-pro-text-view';
20
+ const n = useOverriddenCount(card, jsonFieldsOf('advanced'));
21
+ return _jsxs(Group, { id: "advanced", title: t('groupAdvanced'), summary: t('groupAdvancedSub'), badges: n ? _jsx(Badge, { tone: "info", children: fill(t('overriddenCount'), { n }) }) : null, children: [_jsxs("div", { className: css.stack, "data-wsp-text-view": true, children: [_jsx("p", { className: css.rowHint, children: t('textViewHint') }), _jsx("textarea", { id: id, className: `${css.input} ${css.textarea} ${css.code}`, rows: 26, readOnly: true, spellCheck: false, "aria-label": t('textViewTitle'), value: text, onFocus: event => event.currentTarget.select() }), _jsx("div", { children: _jsx(Btn, { onClick: () => { void navigator.clipboard?.writeText(text).then(() => setCopied(true)).catch(() => undefined); }, data: "text-copy", children: copied ? t('textViewCopied') : t('textViewCopy') }) }), _jsx("p", { className: css.notice, role: "note", children: t('textViewNote') })] }), _jsx(Fold, { id: "raw-json", title: t('advancedRawTitle'), hint: t('advancedRawHint'), children: _jsx(JsonList, { card: card, fields: jsonFieldsOf('advanced') }) })] });
22
+ }
23
+ //# sourceMappingURL=group-advanced.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group-advanced.js","sourceRoot":"","sources":["../../src/client/group-advanced.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AACrD,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAa,MAAM,iBAAkB,CAAA;AACtE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAiB,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,MAAM,IAAI,GAAG,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAc,CAAA;AAEtD,MAAM,UAAU,aAAa,CAAC,EAAE,IAAI,EAAkB;IACpD,MAAM,EAAE,CAAC,EAAE,GAAG,IAAI,CAAA;IAClB,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAChE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC3C,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,EAAE,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;IACzF,MAAM,EAAE,GAAG,0BAA0B,CAAA;IACrC,MAAM,CAAC,GAAG,kBAAkB,CAAC,IAAI,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC,CAAA;IAC5D,OAAO,MAAC,KAAK,IAAC,EAAE,EAAC,UAAU,EAAC,KAAK,EAAE,CAAC,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,KAAC,KAAK,IAAC,IAAI,EAAC,MAAM,YAAE,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAS,CAAC,CAAC,CAAC,IAAI,aACtK,eAAK,SAAS,EAAE,GAAG,CAAC,KAAK,yCACvB,YAAG,SAAS,EAAE,GAAG,CAAC,OAAO,YAAG,CAAC,CAAC,cAAc,CAAC,GAAK,EAClD,mBAAU,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,QAAC,UAAU,EAAE,KAAK,gBAAc,CAAC,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,GAAI,EAC9M,wBAAK,KAAC,GAAG,IAAC,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA,CAAC,CAAC,EAAE,IAAI,EAAC,WAAW,YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,GAAO,GAAM,EAC1M,YAAG,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAC,MAAM,YAAE,CAAC,CAAC,cAAc,CAAC,GAAK,IACzD,EACN,KAAC,IAAI,IAAC,EAAE,EAAC,UAAU,EAAC,KAAK,EAAE,CAAC,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,iBAAiB,CAAC,YAC1E,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,UAAU,CAAC,GAAI,GACrD,IACD,CAAA;AACV,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { agentTip } from "./agent-mark.js";
3
+ import { fill } from "./field-rows.js";
4
+ import { formatTime, overlayCliDependencies } from "./overlay-ops.js";
5
+ import { styles as css } from "./styles.js";
6
+ import { AgentTag, Badge, Btn, Fold, Group, Item } from "./ui-kit.js";
7
+ const KIND_LABEL = {
8
+ engines: 'agentKindEngines', priority: 'agentKindPriority', disabled: 'agentKindDisabled', confidence: 'agentKindConfidence', platform: 'agentKindPlatform', cli: 'agentKindCli',
9
+ };
10
+ /** One overlay entry: what it is, the value the agent set against the one in the configuration, why and when, and the two buttons. */
11
+ export function AgentItem({ card, item, busy, items }) {
12
+ const { t } = card;
13
+ const needs = overlayCliDependencies(item, items);
14
+ const who = item.actor === 'user' ? t('agentActorUser') : t('agentActorAgent');
15
+ return _jsx("div", { className: "wsp-agent-row", children: _jsx(Item, { data: item.key, title: _jsxs(_Fragment, { children: [_jsx("strong", { children: t(KIND_LABEL[item.kind]) }), item.target ? _jsx("code", { children: item.target }) : null] }), badges: _jsx(AgentTag, { label: t('agentBadge'), tip: agentTip(t, item) }), meta: _jsxs(_Fragment, { children: [_jsxs("div", { children: [_jsx("span", { className: css.muted, children: t('agentNow') }), " ", _jsx("code", { children: item.summary })] }), _jsxs("div", { children: [_jsx("span", { className: css.muted, children: t('agentConfigHolds') }), " ", _jsx("code", { children: item.baseline })] }), needs.length ? _jsx("div", { className: "wsp-bad-soft", "data-wsp-agent-needs": needs.join(','), children: fill(t('agentNeedsCli'), { ids: needs.join(', ') }) }) : null, _jsxs("div", { className: css.muted, children: [item.reason ? '“' + item.reason + '”' : t('agentNoReason'), item.at ? ' · ' + formatTime(item.at) : '', " \u00B7 ", who, item.sessionId ? ' · ' + item.sessionId : ''] })] }), actions: _jsxs(_Fragment, { children: [_jsx(Btn, { disabled: busy, onClick: () => card.adoptOverlay(item.key), data: "agent-adopt", children: t('agentAdopt') }), _jsx(Btn, { danger: true, disabled: busy, onClick: () => card.revokeOverlay([item.key]), data: "agent-revoke", children: t('agentRevoke') })] }) }) });
16
+ }
17
+ export function AgentGroup({ card }) {
18
+ const { t } = card;
19
+ const state = card.useWebSearchPro(snapshot => ({ overlay: snapshot.server.overlay, busy: !snapshot.writable || snapshot.saving || snapshot.server.overlay.busy, writable: snapshot.writable }));
20
+ const { overlay } = state;
21
+ const view = overlay.view;
22
+ const items = view?.items ?? [];
23
+ const audit = view?.audit ?? [];
24
+ return _jsxs(Group, { id: "agent", title: t('groupAgent'), summary: t('groupAgentSub'), badges: items.length ? _jsx(Badge, { tone: "warning", children: fill(t('agentCount'), { n: items.length }) }) : null, children: [_jsx("p", { className: css.rowHint, children: t('agentNote') }), overlay.failed && !view ? _jsx("p", { className: css.notice, role: "status", "data-wsp-agent-unavailable": true, children: t('agentUnavailable') }) : null, view && !view.valid ? _jsx("p", { className: `${css.rowHint} wsp-bad`, role: "alert", "data-wsp-agent-invalid": true, children: fill(t('agentInvalid'), { problem: view.problem ?? '' }) }) : null, overlay.error ? _jsx("p", { className: `${css.rowHint} wsp-bad`, role: "alert", "data-wsp-agent-error": overlay.error.key, children: fill(t(overlay.error.key), { why: overlay.error.why ?? '' }) }) : null, _jsx("div", { className: css.list, "data-wsp-agent-list": true, children: view === undefined ? _jsx("p", { className: css.empty, children: overlay.loading ? t('agentLoading') : t('agentNotLoaded') })
25
+ : items.length === 0 ? _jsx("p", { className: css.empty, children: t('agentEmpty') })
26
+ : items.map(item => _jsx(AgentItem, { card: card, item: item, items: items, busy: state.busy }, item.key)) }), _jsxs("div", { className: css.actions, children: [_jsx(Btn, { disabled: overlay.loading, onClick: card.refreshOverlay, data: "agent-refresh", children: overlay.loading ? t('agentRefreshing') : t('agentRefresh') }), _jsx(Btn, { danger: true, disabled: state.busy || !view || (items.length === 0 && view.valid), onClick: () => card.revokeOverlay('all'), data: "agent-revoke-all", children: t('agentRevokeAll') })] }), view ? _jsx("p", { className: css.rowHint, "data-wsp-agent-file": true, children: fill(t('agentFile'), { file: view.file, revision: view.revision }) }) : null, view ? _jsx(Fold, { id: "agent-audit", title: fill(t('agentAuditTitle'), { n: audit.length }), hint: t('agentAuditHint'), children: _jsx("div", { className: css.list, "data-wsp-agent-audit": true, children: audit.length === 0 ? _jsx("p", { className: css.empty, children: t('agentAuditEmpty') }) : audit.map(entry => _jsx(Item, { data: '#' + entry.revision, title: _jsxs(_Fragment, { children: [_jsx("span", { className: "wsp-order-no", children: entry.revision }), _jsx("strong", { children: entry.action })] }), badges: _jsx(Badge, { tone: "outline", children: entry.actor === 'user' ? t('agentActorUser') : t('agentActorAgent') }), meta: _jsxs(_Fragment, { children: [_jsxs("div", { className: css.muted, children: [formatTime(entry.at), entry.sessionId ? ' · ' + entry.sessionId : '', " \u00B7 \u201C", entry.reason, "\u201D"] }), entry.changes.map((change, index) => _jsxs("div", { children: [_jsx("code", { children: change.key }), " ", change.before, " \u2192 ", change.after] }, index))] }) }, entry.revision)) }) }) : null] });
27
+ }
28
+ //# sourceMappingURL=group-agent.js.map