gitnexus 1.6.10-rc.82 → 1.6.10-rc.84

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.
@@ -19,6 +19,10 @@ import { generateId } from '../../../lib/utils.js';
19
19
  import { getPhaseOutput } from './types.js';
20
20
  const require = createRequire(import.meta.url);
21
21
  const yaml = require('js-yaml');
22
+ // js-yaml 5 dropped DEFAULT_SCHEMA; CORE plus these tags is what it used to be, so
23
+ // explicitly tagged values keep parsing instead of throwing (an unknown tag aborts
24
+ // the whole file). None of them can execute code.
25
+ const SPRING_YAML_SCHEMA = yaml.CORE_SCHEMA.withTags(yaml.mergeTag, yaml.timestampTag, yaml.binaryTag, yaml.omapTag, yaml.pairsTag, yaml.setTag);
22
26
  const MAX_CONFIG_FILE_BYTES = 2 * 1024 * 1024;
23
27
  const MAX_YAML_TRAVERSAL_DEPTH = 128;
24
28
  const MAX_YAML_TRAVERSAL_NODES = 100_000;
@@ -111,10 +115,10 @@ function consumeYamlTraversalBudget(state, depth) {
111
115
  function isObjectValue(value) {
112
116
  return value !== null && typeof value === 'object';
113
117
  }
114
- function resolveYamlAliasEvent(event, objectEvents) {
115
- if (event?.kind !== null || !isObjectValue(event.result))
116
- return event;
117
- return objectEvents.get(event.result) ?? event;
118
+ // Aliases are resolved to their anchor event by name while the tree is built,
119
+ // so following one here is a single pointer hop.
120
+ function resolveYamlAliasEvent(event) {
121
+ return event?.aliasOf ?? event;
118
122
  }
119
123
  function yamlMappingPairs(event) {
120
124
  const pairs = [];
@@ -127,112 +131,238 @@ function yamlMappingPairs(event) {
127
131
  }
128
132
  return pairs;
129
133
  }
130
- function findYamlMappingLocation(event, key, objectEvents, traversal, visited = new Set(), depth = 0) {
131
- consumeYamlTraversalBudget(traversal, depth);
132
- const resolved = resolveYamlAliasEvent(event, objectEvents);
133
- if (resolved === undefined || visited.has(resolved))
134
- return undefined;
135
- visited.add(resolved);
136
- if (resolved.kind === 'sequence') {
137
- for (const child of resolved.children) {
138
- const found = findYamlMappingLocation(child, key, objectEvents, traversal, visited, depth + 1);
139
- if (found !== undefined)
140
- return found;
134
+ /**
135
+ * First match in a pre-order walk of `event`, following sequences and `<<` merge
136
+ * chains. Iterative: children are pushed in reverse so the explicit stack pops
137
+ * them in declaration order, which is what makes "first match" mean the same
138
+ * thing it did when this recursed.
139
+ */
140
+ function findYamlMappingLocation(event, key, traversal) {
141
+ const visited = new Set();
142
+ const stack = [{ event, depth: 0 }];
143
+ while (stack.length > 0) {
144
+ const step = stack.pop();
145
+ if (step === undefined)
146
+ break;
147
+ consumeYamlTraversalBudget(traversal, step.depth);
148
+ const resolved = resolveYamlAliasEvent(step.event);
149
+ if (resolved === undefined || visited.has(resolved))
150
+ continue;
151
+ visited.add(resolved);
152
+ if (resolved.kind === 'sequence') {
153
+ for (let index = resolved.children.length - 1; index >= 0; index--) {
154
+ stack.push({ event: resolved.children[index], depth: step.depth + 1 });
155
+ }
156
+ continue;
157
+ }
158
+ if (resolved.kind !== 'mapping')
159
+ continue;
160
+ const pairs = yamlMappingPairs(resolved);
161
+ const direct = pairs.find((pair) => pair.key === key);
162
+ if (direct !== undefined) {
163
+ return { valueEvent: direct.valueEvent, line: direct.keyEvent.startLine };
164
+ }
165
+ const merges = pairs.filter((pair) => pair.key === '<<');
166
+ for (let index = merges.length - 1; index >= 0; index--) {
167
+ stack.push({ event: merges[index].valueEvent, depth: step.depth + 1 });
141
168
  }
142
- return undefined;
143
- }
144
- if (resolved.kind !== 'mapping')
145
- return undefined;
146
- const pairs = yamlMappingPairs(resolved);
147
- const direct = pairs.find((pair) => pair.key === key);
148
- if (direct !== undefined) {
149
- return { valueEvent: direct.valueEvent, line: direct.keyEvent.startLine };
150
- }
151
- for (const merge of pairs.filter((pair) => pair.key === '<<')) {
152
- const found = findYamlMappingLocation(merge.valueEvent, key, objectEvents, traversal, visited, depth + 1);
153
- if (found !== undefined)
154
- return found;
155
169
  }
156
170
  return undefined;
157
171
  }
158
- function flattenYamlValue(value, event, prefix, out, objectEvents, traversal, sourceLine = event?.startLine ?? 1, depth = 0) {
159
- consumeYamlTraversalBudget(traversal, depth);
160
- const resolvedEvent = resolveYamlAliasEvent(event, objectEvents);
161
- const trackedObject = isObjectValue(value) ? value : undefined;
162
- if (trackedObject !== undefined && traversal.activeObjects.has(trackedObject))
163
- return;
164
- if (trackedObject !== undefined)
165
- traversal.activeObjects.add(trackedObject);
166
- try {
167
- if (Array.isArray(value)) {
168
- if (value.length === 0 && prefix.length > 0 && !out.has(prefix))
169
- out.set(prefix, sourceLine);
170
- value.forEach((item, index) => flattenYamlValue(item, resolvedEvent?.children[index], `${prefix}[${index}]`, out, objectEvents, traversal, sourceLine, depth + 1));
171
- return;
172
+ /**
173
+ * Flatten a document to `dotted.key -> line`, iteratively. Children are pushed in
174
+ * reverse so the stack pops them in declaration order, keeping `out` in the same
175
+ * insertion order — and the traversal budget consumed in the same sequence — as
176
+ * the recursive walk this replaced.
177
+ */
178
+ function flattenYamlValue(value, event, prefix, out, traversal) {
179
+ const stack = [
180
+ { kind: 'visit', value, event, prefix, sourceLine: event?.startLine ?? 1, depth: 0 },
181
+ ];
182
+ while (stack.length > 0) {
183
+ const step = stack.pop();
184
+ if (step === undefined)
185
+ break;
186
+ if (step.kind === 'leave') {
187
+ traversal.activeObjects.delete(step.object);
188
+ continue;
189
+ }
190
+ const { value: current, prefix: currentPrefix, sourceLine, depth } = step;
191
+ consumeYamlTraversalBudget(traversal, depth);
192
+ const resolvedEvent = resolveYamlAliasEvent(step.event);
193
+ const trackedObject = isObjectValue(current) ? current : undefined;
194
+ if (trackedObject !== undefined) {
195
+ if (traversal.activeObjects.has(trackedObject))
196
+ continue;
197
+ traversal.activeObjects.add(trackedObject);
198
+ stack.push({ kind: 'leave', object: trackedObject });
172
199
  }
173
- if (value !== null &&
174
- typeof value === 'object' &&
200
+ if (Array.isArray(current)) {
201
+ if (current.length === 0 && currentPrefix.length > 0 && !out.has(currentPrefix)) {
202
+ out.set(currentPrefix, sourceLine);
203
+ }
204
+ for (let index = current.length - 1; index >= 0; index--) {
205
+ stack.push({
206
+ kind: 'visit',
207
+ value: current[index],
208
+ event: resolvedEvent?.children[index],
209
+ prefix: `${currentPrefix}[${index}]`,
210
+ sourceLine,
211
+ depth: depth + 1,
212
+ });
213
+ }
214
+ continue;
215
+ }
216
+ if (current !== null &&
217
+ typeof current === 'object' &&
175
218
  (resolvedEvent?.kind === 'mapping' || resolvedEvent === undefined)) {
176
- const entries = Object.entries(value);
177
- if (entries.length === 0 && prefix.length > 0 && !out.has(prefix))
178
- out.set(prefix, sourceLine);
179
- for (const [key, nested] of entries) {
180
- const next = prefix.length === 0 ? key : `${prefix}.${key}`;
181
- const location = findYamlMappingLocation(resolvedEvent, key, objectEvents, traversal);
182
- flattenYamlValue(nested, location?.valueEvent, next, out, objectEvents, traversal, location?.line ?? sourceLine, depth + 1);
219
+ // js-yaml 5 builds `!!set` as a native Set, whose members are not own
220
+ // properties; v4 built a plain `{member: null}` object. Enumerate them so a
221
+ // tagged set still contributes one key per member instead of a bare leaf.
222
+ const entries = current instanceof Set
223
+ ? [...current].map((member) => [String(member), null])
224
+ : Object.entries(current);
225
+ if (entries.length === 0 && currentPrefix.length > 0 && !out.has(currentPrefix)) {
226
+ out.set(currentPrefix, sourceLine);
183
227
  }
184
- return;
228
+ for (let index = entries.length - 1; index >= 0; index--) {
229
+ const [key, nested] = entries[index];
230
+ const location = findYamlMappingLocation(resolvedEvent, key, traversal);
231
+ stack.push({
232
+ kind: 'visit',
233
+ value: nested,
234
+ event: location?.valueEvent,
235
+ prefix: currentPrefix.length === 0 ? key : `${currentPrefix}.${key}`,
236
+ sourceLine: location?.line ?? sourceLine,
237
+ depth: depth + 1,
238
+ });
239
+ }
240
+ continue;
185
241
  }
186
- if (prefix.length > 0 && !out.has(prefix))
187
- out.set(prefix, sourceLine);
242
+ if (currentPrefix.length > 0 && !out.has(currentPrefix))
243
+ out.set(currentPrefix, sourceLine);
188
244
  }
189
- finally {
190
- if (trackedObject !== undefined)
191
- traversal.activeObjects.delete(trackedObject);
245
+ }
246
+ // js-yaml 5 reports node positions as source offsets; map them to 1-based lines.
247
+ function makeLineResolver(source) {
248
+ const lineStarts = [0];
249
+ for (let index = 0; index < source.length; index++) {
250
+ if (source[index] === '\n')
251
+ lineStarts.push(index + 1);
192
252
  }
253
+ return (offset) => {
254
+ let low = 0;
255
+ let high = lineStarts.length - 1;
256
+ let line = 0;
257
+ while (low <= high) {
258
+ const mid = (low + high) >> 1;
259
+ if (lineStarts[mid] <= offset) {
260
+ line = mid;
261
+ low = mid + 1;
262
+ }
263
+ else {
264
+ high = mid - 1;
265
+ }
266
+ }
267
+ return line + 1;
268
+ };
269
+ }
270
+ /**
271
+ * Rebuild the parse tree from js-yaml 5's event stream (v4's `listener` option
272
+ * was removed). Returns each document's root event, with aliases already
273
+ * resolved to their anchor event so merged/aliased keys keep the line where
274
+ * they were declared.
275
+ *
276
+ * One node per event, so this pass is bounded by MAX_CONFIG_FILE_BYTES alone —
277
+ * MAX_YAML_TRAVERSAL_NODES governs the later walk, which can revisit a shared
278
+ * anchor many times and so needs a budget this linear pass does not.
279
+ */
280
+ function buildYamlEventTree(events, source) {
281
+ const lineOf = makeLineResolver(source);
282
+ const anchors = new Map();
283
+ const stack = [];
284
+ const documentRoots = [];
285
+ const anchorName = (start, end) => start >= 0 && end > start ? source.slice(start, end) : null;
286
+ const attach = (node) => {
287
+ stack[stack.length - 1]?.children.push(node);
288
+ };
289
+ const register = (name, node) => {
290
+ if (name !== null)
291
+ anchors.set(name, node);
292
+ };
293
+ for (const event of events) {
294
+ switch (event.type) {
295
+ case yaml.EVENT_DOCUMENT:
296
+ // Anchors are document-scoped. constructFromEvents already rejects a
297
+ // cross-document alias before we get here, so this only keeps the two
298
+ // layers from disagreeing.
299
+ anchors.clear();
300
+ stack.push({
301
+ startLine: 1,
302
+ kind: null,
303
+ result: undefined,
304
+ aliasOf: undefined,
305
+ children: [],
306
+ });
307
+ break;
308
+ case yaml.EVENT_MAPPING:
309
+ case yaml.EVENT_SEQUENCE: {
310
+ const node = {
311
+ startLine: lineOf(event.start),
312
+ kind: event.type === yaml.EVENT_MAPPING ? 'mapping' : 'sequence',
313
+ result: undefined,
314
+ aliasOf: undefined,
315
+ children: [],
316
+ };
317
+ register(anchorName(event.anchorStart, event.anchorEnd), node);
318
+ attach(node);
319
+ stack.push(node);
320
+ break;
321
+ }
322
+ case yaml.EVENT_SCALAR: {
323
+ const node = {
324
+ startLine: lineOf(event.valueStart),
325
+ kind: 'scalar',
326
+ result: yaml.getScalarValue(source, event),
327
+ aliasOf: undefined,
328
+ children: [],
329
+ };
330
+ register(anchorName(event.anchorStart, event.anchorEnd), node);
331
+ attach(node);
332
+ break;
333
+ }
334
+ case yaml.EVENT_ALIAS: {
335
+ const target = anchors.get(anchorName(event.anchorStart, event.anchorEnd) ?? '');
336
+ attach({ startLine: 1, kind: 'alias', result: undefined, aliasOf: target, children: [] });
337
+ break;
338
+ }
339
+ case yaml.EVENT_POP: {
340
+ const done = stack.pop();
341
+ // Documents are the only top-level containers, so a pop that empties the
342
+ // stack closes a document; its single child is the document's root value.
343
+ if (done !== undefined && stack.length === 0)
344
+ documentRoots.push(done.children[0]);
345
+ break;
346
+ }
347
+ }
348
+ }
349
+ return documentRoots;
193
350
  }
194
351
  /** Parse and flatten YAML leaves without retaining their values. */
195
352
  export function parseSpringYaml(content, filePath, profile) {
196
353
  const flattened = new Map();
197
- const eventStack = [];
198
- const documentEvents = [];
199
- const objectEvents = new WeakMap();
200
- const documents = [];
201
354
  const traversal = {
202
355
  remainingNodes: MAX_YAML_TRAVERSAL_NODES,
203
356
  activeObjects: new Set(),
204
357
  };
205
- yaml.loadAll(content, (document) => documents.push(document), {
206
- schema: yaml.DEFAULT_SCHEMA,
358
+ const events = yaml.parseEvents(content, { maxDepth: MAX_YAML_TRAVERSAL_DEPTH });
359
+ const documents = yaml.constructFromEvents(events, {
360
+ source: content,
361
+ schema: SPRING_YAML_SCHEMA,
207
362
  json: true,
208
- listener: (eventType, state) => {
209
- if (eventType === 'open') {
210
- eventStack.push({
211
- startLine: state.line + 1,
212
- kind: null,
213
- result: undefined,
214
- tag: null,
215
- children: [],
216
- });
217
- return;
218
- }
219
- const event = eventStack.pop();
220
- if (event === undefined)
221
- return;
222
- event.kind = state.kind ?? null;
223
- event.result = state.result;
224
- event.tag = state.tag ?? null;
225
- if (isObjectValue(event.result) && event.kind !== null) {
226
- objectEvents.set(event.result, event);
227
- }
228
- const parent = eventStack[eventStack.length - 1];
229
- if (parent === undefined)
230
- documentEvents.push(event);
231
- else
232
- parent.children.push(event);
233
- },
234
363
  });
235
- documents.forEach((document, index) => flattenYamlValue(document, documentEvents[index], '', flattened, objectEvents, traversal));
364
+ const documentEvents = buildYamlEventTree(events, content);
365
+ documents.forEach((document, index) => flattenYamlValue(document, documentEvents[index], '', flattened, traversal));
236
366
  return [...flattened.entries()]
237
367
  .sort(([left], [right]) => left.localeCompare(right))
238
368
  .map(([key, line]) => ({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gitnexus",
3
- "version": "1.6.10-rc.82",
3
+ "version": "1.6.10-rc.84",
4
4
  "description": "Graph-powered code intelligence for AI agents. Index any codebase, query via MCP or CLI.",
5
5
  "author": "Abhigyan Patwari",
6
6
  "license": "PolyForm-Noncommercial-1.0.0",
@@ -70,7 +70,7 @@
70
70
  "graphology-indices": "^0.17.0",
71
71
  "graphology-utils": "^2.3.0",
72
72
  "ignore": "^7.0.5",
73
- "js-yaml": "^4.1.1",
73
+ "js-yaml": "^5.0.0",
74
74
  "jsonc-parser": "^3.3.1",
75
75
  "mnemonist": "^0.40.3",
76
76
  "node-addon-api": "^8.0.0",
@@ -105,7 +105,6 @@
105
105
  "@types/cli-progress": "^3.11.6",
106
106
  "@types/cors": "^2.8.17",
107
107
  "@types/express": "^5.0.6",
108
- "@types/js-yaml": "^4.0.9",
109
108
  "@types/node": "^26.0.0",
110
109
  "@vitest/coverage-v8": "^4.0.18",
111
110
  "gitnexus-shared": "file:../gitnexus-shared",
@@ -0,0 +1,22 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/c4Diagram-Y2BXMSZH-EjWnjEJl.js","assets/chunk-AQ6EADP3-CZhslHi-.js","assets/chunk-7W6UQGC5-pyKGssV3.js","assets/chunk-67TQ5CYL-CA7OhIEf.js","assets/preload-helper-Czpn1I53.js","assets/chunk-KNLZD3CH-BGlP6X9R.js","assets/chunk-QA3QBVWF-DVXPOIxe.js","assets/chunk-LII3EMHJ-BL6lKJ_P.js","assets/flowDiagram-H6V6AXG4-SGMDiCkB.js","assets/chunk-7FYTHRHK-CsmYIswB.js","assets/chunk-5IMINLNL-DOdTeQri.js","assets/chunk-T2UQINTJ-BEyXhZWe.js","assets/chunk-UY5QBCOK-ByqTVLvh.js","assets/chunk-INKRHTLW-Ckl3_KkO.js","assets/chunk-KGFNY3KK-BZeP-55u.js","assets/chunk-5VCL7Z4A-CQ-2dYWj.js","assets/chunk-7J6CGLKN-BlKwgXKs.js","assets/chunk-VU6ZFW4Y-BLeasdkU.js","assets/chunk-AZZRMDJM-y-xJBuMz.js","assets/chunk-6764PJDD-C7xxk063.js","assets/chunk-ZXARS5L4-C3v-4Fsw.js","assets/erDiagram-L5TCEMPS-n8g_90bc.js","assets/gitGraphDiagram-S2ZK5IYY-Bs9CR7tq.js","assets/chunk-4R4BOZG6-Be_F0JoX.js","assets/chunk-RERM46MO-B5dAdWpP.js","assets/chunk-JQRUD6KW-Dbva2Z17.js","assets/chunk-2T2R6R2M-Bb6Sy3_j.js","assets/chunk-UP6H54XL-BG-n7qDp.js","assets/chunk-UXSXWOXI-CW1_r5cS.js","assets/chunk-C62D2QBJ-3gdL8EKc.js","assets/chunk-CEXFNPSA-CjwtMDkc.js","assets/chunk-J5EP6P6S-L19oz55R.js","assets/chunk-RLI5ZMPA-CkXZ0y0U.js","assets/chunk-2UTLFMKG-CXlhF3Pt.js","assets/chunk-RKZBBQEN-MyIQbGgD.js","assets/chunk-KGYTTC2M-zm6n242I.js","assets/chunk-T5OCTHI4-DdZvN-9i.js","assets/ganttDiagram-JCBTUEKG-Cb3UBqRS.js","assets/infoDiagram-3YFTVSEB-T368on4D.js","assets/chunk-LRIF4GLE-n59lhprL.js","assets/pieDiagram-CU6KROY3-Bv4LpAbr.js","assets/quadrantDiagram-VICAPDV7-DR54jOeR.js","assets/xychartDiagram-N2JHSOCM-CoZ_Tits.js","assets/requirementDiagram-JXO7QTGE-PEkg7sKC.js","assets/sequenceDiagram-VS2MUI6T-Bv-uwANx.js","assets/classDiagram-KGZ6W3CR-olpO3fMe.js","assets/chunk-RG4AUYOV-ZNgyLFq6.js","assets/classDiagram-v2-72OJOZXJ-olpO3fMe.js","assets/stateDiagram-7D4R322I-DVNjmkEq.js","assets/chunk-W44A43WB-BN8EQc_u.js","assets/chunk-KRXBNO2N-C-UNuKKf.js","assets/chunk-LCXTWHL2-C162wE5z.js","assets/stateDiagram-v2-36443NZ5-CyN4Fh7_.js","assets/journeyDiagram-M6C3CM3L-C6wjooas.js","assets/timeline-definition-O6YCAMPW-Qmsuo7qS.js","assets/mindmap-definition-2TDM6QVE-8xDLzk2e.js","assets/kanban-definition-75IXJCU3-5_UVY79g.js","assets/sankeyDiagram-URQDO5SZ-DDWEtjcs.js","assets/diagram-QXG6HAR7-DR6AHD2h.js","assets/diagram-3NCE3AQN-CO6QpzEE.js","assets/blockDiagram-7IZFK4PR-DBefcjof.js","assets/diagram-WEQXMOUZ-DkpoMwTL.js","assets/architectureDiagram-UL44E2DR-CmG3uPWf.js","assets/chunk-3SSMPTDK-rPsRM1x0.js","assets/diagram-HNR7UZ2L-DVRltWbL.js","assets/ishikawaDiagram-BNXS4ZKH-XpjJRU9h.js","assets/vennDiagram-MWXL3ELB-BD1iK1SX.js","assets/diagram-GF46GFSD-B2atbzmU.js","assets/wardleyDiagram-CUQ6CDDI-D6TzLVob.js"])))=>i.map(i=>d[i]);
2
+ import{n as e,r as t,t as n}from"./rolldown-runtime-QTnfLwEv.js";import{t as r}from"./preload-helper-Czpn1I53.js";import{t as i}from"./chunk-AQ6EADP3-CZhslHi-.js";import{M as a,V as o,q as s}from"./chunk-7W6UQGC5-pyKGssV3.js";import{$ as c,B as l,D as u,I as d,P as f,U as p,V as m,W as h,_ as g,a as _,b as v,c as y,d as b,h as x,it as S,l as C,m as w,n as T,nt as E,o as ee,p as te,rt as ne,v as re,w as ie,x as ae,z as D}from"./chunk-67TQ5CYL-CA7OhIEf.js";import{t as oe}from"./chunk-LRIF4GLE-n59lhprL.js";import{n as se,t as O}from"./chunk-7FYTHRHK-CsmYIswB.js";import"./chunk-5IMINLNL-DOdTeQri.js";import"./chunk-T2UQINTJ-BEyXhZWe.js";import"./chunk-KNLZD3CH-BGlP6X9R.js";import{a as ce,c as le,h as ue,o as de,r as fe,t as pe,u as me}from"./chunk-QA3QBVWF-DVXPOIxe.js";import"./chunk-UY5QBCOK-ByqTVLvh.js";import{i as he,t as ge}from"./chunk-INKRHTLW-Ckl3_KkO.js";import"./chunk-KGFNY3KK-BZeP-55u.js";import"./chunk-5VCL7Z4A-CQ-2dYWj.js";import"./chunk-7J6CGLKN-BlKwgXKs.js";import{t as k}from"./chunk-VU6ZFW4Y-BLeasdkU.js";var _e=n((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function ee(e,t){return E(e.type,t,e.props)}function te(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function ne(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var re=/\/+/g;function ie(e,t){return typeof e==`object`&&e&&e.key!=null?ne(``+e.key):t.toString(36)}function ae(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function D(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,D(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+ie(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(re,`$&/`)+`/`),D(o,r,i,``,function(e){return e})):o!=null&&(te(o)&&(o=ee(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(re,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+ie(a,u),c+=D(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+ie(a,u++),c+=D(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return D(ae(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function oe(e,t,n){if(e==null)return e;var r=[],i=0;return D(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function se(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var O=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},ce={map:oe,forEach:function(e,t,n){oe(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return oe(e,function(){t++}),t},toArray:function(e){return oe(e,function(e){return e})||[]},only:function(e){if(!te(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=ce,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=te,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:se}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,O)}catch(e){O(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.7`})),A=n(((e,t)=>{t.exports=_e()})),j=t(A()),M=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);Ce(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},ve={},ye=(e,t,n,r)=>{Ce(n)&&ve[n]||(Ce(n)&&(ve[n]=new Date),M(e,t,n,r))},N=(e,t)=>()=>{if(e.isInitialized)t();else{let n=()=>{setTimeout(()=>{e.off(`initialized`,n)},0),t()};e.on(`initialized`,n)}},be=(e,t,n)=>{e.loadNamespaces(t,N(e,n))},xe=(e,t,n,r)=>{if(Ce(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return be(e,n,r);n.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,N(e,r))},Se=(e,t,n={})=>!t.languages||!t.languages.length?(ye(t,`NO_LANGUAGES`,`i18n.languages were undefined or empty`,{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,r)=>{if(n.bindI18n&&n.bindI18n.indexOf(`languageChanging`)>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))return!1}}),Ce=e=>typeof e==`string`,P=e=>typeof e==`object`&&!!e,we=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,Te={"&amp;":`&`,"&#38;":`&`,"&lt;":`<`,"&#60;":`<`,"&gt;":`>`,"&#62;":`>`,"&apos;":`'`,"&#39;":`'`,"&quot;":`"`,"&#34;":`"`,"&nbsp;":` `,"&#160;":` `,"&copy;":`©`,"&#169;":`©`,"&reg;":`®`,"&#174;":`®`,"&hellip;":`…`,"&#8230;":`…`,"&#x2F;":`/`,"&#47;":`/`},Ee=e=>Te[e],De={bindI18n:`languageChanged`,bindI18nStore:``,transEmptyNodeValue:``,transSupportBasicHtmlNodes:!0,transWrapTextNodes:``,transKeepBasicHtmlNodesFor:[`br`,`strong`,`i`,`p`],useSuspense:!0,unescape:e=>e.replace(we,Ee),transDefaultProps:void 0},Oe=(e={})=>{De={...De,...e}},ke=()=>De,Ae,je=e=>{Ae=e},Me=()=>Ae,Ne=(0,j.createContext)(),Pe=class{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}},Fe=n((e=>{var t=A();function n(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var r=typeof Object.is==`function`?Object.is:n,i=t.useState,a=t.useEffect,o=t.useLayoutEffect,s=t.useDebugValue;function c(e,t){var n=t(),r=i({inst:{value:n,getSnapshot:t}}),c=r[0].inst,u=r[1];return o(function(){c.value=n,c.getSnapshot=t,l(c)&&u({inst:c})},[e,n,t]),a(function(){return l(c)&&u({inst:c}),e(function(){l(c)&&u({inst:c})})},[e]),s(n),n}function l(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!r(e,n)}catch{return!0}}function u(e,t){return t()}var d=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?u:c;e.useSyncExternalStore=t.useSyncExternalStore===void 0?d:t.useSyncExternalStore})),Ie=n(((e,t)=>{t.exports=Fe()}))(),Le={t:(e,t)=>{if(Ce(t))return t;if(P(t)&&Ce(t.defaultValue))return t.defaultValue;if(typeof e==`function`)return``;if(Array.isArray(e)){let t=e[e.length-1];return typeof t==`function`?``:t}return e},ready:!1},Re=()=>()=>{},F=(e,t={})=>{let{i18n:n}=t,{i18n:r,defaultNS:i}=(0,j.useContext)(Ne)||{},a=n||r||Me();a&&!a.reportNamespaces&&(a.reportNamespaces=new Pe),a||ye(a,`NO_I18NEXT_INSTANCE`,`useTranslation: You will need to pass in an i18next instance by using initReactI18next`);let o=(0,j.useMemo)(()=>({...ke(),...a?.options?.react,...t}),[a,t]),{useSuspense:s,keyPrefix:c}=o,l=e||i||a?.options?.defaultNS,u=Ce(l)?[l]:l||[`translation`],d=(0,j.useMemo)(()=>u,u);a?.reportNamespaces?.addUsedNamespaces?.(d);let f=(0,j.useRef)(0),p=(0,j.useCallback)(e=>{if(!a)return Re;let{bindI18n:t,bindI18nStore:n}=o,r=()=>{f.current+=1,e()};return t&&a.on(t,r),n&&a.store.on(n,r),()=>{t&&t.split(` `).forEach(e=>a.off(e,r)),n&&n.split(` `).forEach(e=>a.store.off(e,r))}},[a,o]),m=(0,j.useRef)(),h=(0,j.useCallback)(()=>{if(!a)return Le;let e=!!(a.isInitialized||a.initializedStoreOnce)&&d.every(e=>Se(e,a,o)),n=t.lng||a.language,r=f.current,i=m.current;if(i&&i.ready===e&&i.lng===n&&i.keyPrefix===c&&i.revision===r)return i;let s={t:a.getFixedT(n,o.nsMode===`fallback`?d:d[0],c,{scopeNs:d}),ready:e,lng:n,keyPrefix:c,revision:r};return m.current=s,s},[a,d,c,o,t.lng]),[g,_]=(0,j.useState)(0),{t:v,ready:y}=(0,Ie.useSyncExternalStore)(p,h,h);(0,j.useEffect)(()=>{if(a&&!y&&!s){let e=()=>_(e=>e+1);t.lng?xe(a,t.lng,d,e):be(a,d,e)}},[a,t.lng,d,y,s,g]);let b=a||{},x=(0,j.useRef)(null),S=(0,j.useRef)(),C=e=>{let t=Object.getOwnPropertyDescriptors(e);t.__original&&delete t.__original;let n=Object.create(Object.getPrototypeOf(e),t);if(!Object.prototype.hasOwnProperty.call(n,`__original`))try{Object.defineProperty(n,"__original",{value:e,writable:!1,enumerable:!1,configurable:!1})}catch{}return n},w=(0,j.useMemo)(()=>{let e=b,t=e?.language,n=e;e&&(x.current&&x.current.__original===e&&S.current===t?n=x.current:(n=C(e),x.current=n,S.current=t));let r=!y&&!s?(...e)=>(ye(a,`USE_T_BEFORE_READY`,`useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t.`),v(...e)):v,i=[r,n,y];return i.t=r,i.i18n=n,i.ready=y,i},[v,b,y,b.resolvedLanguage,b.language,b.languages]);if(a&&s&&!y)throw new Promise(e=>{let n=()=>e();t.lng?xe(a,t.lng,d,n):be(a,d,n)});return w},ze=n((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),Be=n(((e,t)=>{t.exports=ze()})),Ve=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),He=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),Ue=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),We=e=>{let t=Ue(e);return t.charAt(0).toUpperCase()+t.slice(1)},Ge={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},I=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},Ke=(0,j.createContext)({}),qe=()=>(0,j.useContext)(Ke),Je=(0,j.forwardRef)(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>{let{size:l=24,strokeWidth:u=2,absoluteStrokeWidth:d=!1,color:f=`currentColor`,className:p=``}=qe()??{},m=r??d?Number(n??u)*24/Number(t??l):n??u;return(0,j.createElement)(`svg`,{ref:c,...Ge,width:t??l??Ge.width,height:t??l??Ge.height,stroke:e??f,strokeWidth:m,className:Ve(`lucide`,p,i),...!a&&!I(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,j.createElement)(e,t)),...Array.isArray(a)?a:[a]])}),Ye=(e,t)=>{let n=(0,j.forwardRef)(({className:n,...r},i)=>(0,j.createElement)(Je,{ref:i,iconNode:t,className:Ve(`lucide-${He(We(e))}`,`lucide-${e}`,n),...r}));return n.displayName=We(e),n},Xe=Ye(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),Ze=Ye(`focus`,[[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}],[`path`,{d:`M3 7V5a2 2 0 0 1 2-2h2`,key:`aa7l1z`}],[`path`,{d:`M17 3h2a2 2 0 0 1 2 2v2`,key:`4qcy5o`}],[`path`,{d:`M21 17v2a2 2 0 0 1-2 2h-2`,key:`6vwrx8`}],[`path`,{d:`M7 21H5a2 2 0 0 1-2-2v-2`,key:`ioqczr`}]]),Qe=Ye(`zoom-in`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`11`,x2:`11`,y1:`8`,y2:`14`,key:`1vmskp`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),$e=Ye(`zoom-out`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),L=Be(),et=(0,j.forwardRef)(function({size:e=24,color:t=`currentColor`,className:n,strokeWidth:r,absoluteStrokeWidth:i,...a},o){let s=typeof e==`string`?Number.parseFloat(e):e;return Number.isFinite(s)&&s<=16?(0,L.jsxs)(`svg`,{ref:o,xmlns:`http://www.w3.org/2000/svg`,width:e,height:e,viewBox:`0 0 16 16`,fill:t,className:n,...a,children:[(0,L.jsx)(`path`,{d:`M8 15.282l1.855-5.717H6.145L8 15.282z`}),(0,L.jsx)(`path`,{d:`M8 15.282L6.145 9.565H2.333L8 15.282z`}),(0,L.jsx)(`path`,{d:`M2.333 9.565l-.944-2.942c-.09-.267.067-.553.333-.553h3.153L2.333 9.565z`}),(0,L.jsx)(`path`,{d:`M4.875 6.07L6.145 9.565H2.333l2.542-3.495z`}),(0,L.jsx)(`path`,{d:`M13.667 9.565l.944-2.942c.09-.267-.067-.553-.333-.553h-3.153l2.542 3.495z`}),(0,L.jsx)(`path`,{d:`M11.125 6.07L9.855 9.565h3.812l-2.542-3.495z`}),(0,L.jsx)(`path`,{d:`M8 15.282l1.855-5.717H6.145L8 15.282z`})]}):(0,L.jsx)(`svg`,{ref:o,xmlns:`http://www.w3.org/2000/svg`,width:e,height:e,viewBox:`0 0 24 24`,fill:t,className:n,...a,children:(0,L.jsx)(`path`,{d:`m23.6004 9.5927-.0337-.0862L20.3.9814a.851.851 0 0 0-.3362-.405.8748.8748 0 0 0-.9997.0539.8748.8748 0 0 0-.29.4399l-2.2055 6.748H7.5375l-2.2057-6.748a.8573.8573 0 0 0-.29-.4412.8748.8748 0 0 0-.9997-.0537.8585.8585 0 0 0-.3362.4049L.4332 9.5015l-.0325.0862a6.0657 6.0657 0 0 0 2.0119 7.0105l.0113.0087.03.0213 4.976 3.7264 2.462 1.8633 1.4995 1.1321a1.0085 1.0085 0 0 0 1.2197 0l1.4995-1.1321 2.4619-1.8633 5.006-3.7489.0125-.01a6.0682 6.0682 0 0 0 2.0094-7.003z`})})}),tt=(0,j.forwardRef)(function({size:e=24,color:t=`currentColor`,className:n,strokeWidth:r,absoluteStrokeWidth:i,...a},o){return(0,L.jsx)(`svg`,{ref:o,xmlns:`http://www.w3.org/2000/svg`,width:e,height:e,viewBox:`0 0 24 24`,fill:t,className:n,...a,children:(0,L.jsx)(`path`,{d:`M0 8.877L2.247 5.91l8.405-3.416V.022l7.37 5.393L2.966 8.338v8.225L0 15.707zm24-4.45v14.651l-5.753 4.9-9.303-3.057v3.056l-5.978-7.416 15.057 1.798V5.415z`})})}),R=(0,j.forwardRef)(function({size:e=24,color:t=`currentColor`,className:n,strokeWidth:r,absoluteStrokeWidth:i,...a},o){let s=typeof e==`string`?Number.parseFloat(e):e;return Number.isFinite(s)&&s<=16?(0,L.jsx)(`svg`,{ref:o,xmlns:`http://www.w3.org/2000/svg`,width:e,height:e,viewBox:`0 0 16 16`,fill:t,className:n,...a,children:(0,L.jsx)(`path`,{d:`M6.766 11.328c-2.063-.25-3.516-1.734-3.516-3.656 0-.781.281-1.625.75-2.188-.203-.515-.172-1.609.063-2.062.625-.078 1.468.25 1.968.703.594-.187 1.219-.281 1.985-.281.765 0 1.39.094 1.953.265.484-.437 1.344-.765 1.969-.687.218.422.25 1.515.046 2.047.5.593.766 1.39.766 2.203 0 1.922-1.453 3.375-3.547 3.64.531.344.89 1.094.89 1.954v1.625c0 .468.391.734.86.547C13.781 14.359 16 11.53 16 8.03 16 3.61 12.406 0 7.984 0 3.563 0 0 3.61 0 8.031a7.88 7.88 0 0 0 5.172 7.422c.422.156.828-.125.828-.547v-1.25c-.219.094-.5.156-.75.156-1.031 0-1.64-.562-2.078-1.609-.172-.422-.36-.672-.719-.719-.187-.015-.25-.093-.25-.187 0-.188.313-.328.625-.328.453 0 .844.281 1.25.86.313.452.64.655 1.031.655s.641-.14 1-.5c.266-.265.47-.5.657-.656`})}):(0,L.jsx)(`svg`,{ref:o,xmlns:`http://www.w3.org/2000/svg`,width:e,height:e,viewBox:`0 0 24 24`,fill:t,className:n,...a,children:(0,L.jsx)(`path`,{d:`M10.226 17.284c-2.965-.36-5.054-2.493-5.054-5.256 0-1.123.404-2.336 1.078-3.144-.292-.741-.247-2.314.09-2.965.898-.112 2.111.36 2.83 1.01.853-.269 1.752-.404 2.853-.404 1.1 0 1.999.135 2.807.382.696-.629 1.932-1.1 2.83-.988.315.606.36 2.179.067 2.942.72.854 1.101 2 1.101 3.167 0 2.763-2.089 4.852-5.098 5.234.763.494 1.28 1.572 1.28 2.807v2.336c0 .674.561 1.056 1.235.786 4.066-1.55 7.255-5.615 7.255-10.646C23.5 6.188 18.334 1 11.978 1 5.62 1 .5 6.188.5 12.545c0 4.986 3.167 9.12 7.435 10.669.606.225 1.19-.18 1.19-.786V20.63a2.9 2.9 0 0 1-1.078.224c-1.483 0-2.359-.808-2.987-2.313-.247-.607-.517-.966-1.034-1.033-.27-.023-.359-.135-.359-.27 0-.27.45-.471.898-.471.652 0 1.213.404 1.797 1.235.45.651.921.943 1.483.943.561 0 .92-.202 1.437-.719.382-.381.674-.718.944-.943`})})}),nt={id:`c4`,detector:i(e=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./c4Diagram-Y2BXMSZH-EjWnjEJl.js`);return{diagram:e}},__vite__mapDeps([0,1,2,3,4,5,6,7]));return{id:`c4`,diagram:e}},`loader`)},rt=`flowchart`,it={id:rt,detector:i((e,t)=>t?.flowchart?.defaultRenderer===`dagre-wrapper`||t?.flowchart?.defaultRenderer===`elk`?!1:/^\s*graph/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./flowDiagram-H6V6AXG4-SGMDiCkB.js`);return{diagram:e}},__vite__mapDeps([8,1,2,3,4,9,10,11,5,6,12,13,14,15,16,17,18,7,19,20]));return{id:rt,diagram:e}},`loader`)},at=`flowchart-v2`,ot={id:at,detector:i((e,t)=>t?.flowchart?.defaultRenderer===`dagre-d3`?!1:(t?.flowchart?.defaultRenderer===`elk`&&(t.layout=`elk`),/^\s*graph/.test(e)&&t?.flowchart?.defaultRenderer===`dagre-wrapper`?!0:/^\s*flowchart/.test(e)),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./flowDiagram-H6V6AXG4-SGMDiCkB.js`);return{diagram:e}},__vite__mapDeps([8,1,2,3,4,9,10,11,5,6,12,13,14,15,16,17,18,7,19,20]));return{id:at,diagram:e}},`loader`)},st={id:`er`,detector:i(e=>/^\s*erDiagram/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./erDiagram-L5TCEMPS-n8g_90bc.js`);return{diagram:e}},__vite__mapDeps([21,1,2,3,4,10,11,5,6,12,13,14,15,16,17,19,20]));return{id:`er`,diagram:e}},`loader`)},ct=`gitGraph`,lt={id:ct,detector:i(e=>/^\s*gitGraph/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./gitGraphDiagram-S2ZK5IYY-Bs9CR7tq.js`);return{diagram:e}},__vite__mapDeps([22,1,2,3,4,5,6,23,24,25,26,27,28,29,30,31,32,33,34,35,36]));return{id:ct,diagram:e}},`loader`)},ut=`gantt`,dt={id:ut,detector:i(e=>/^\s*gantt/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./ganttDiagram-JCBTUEKG-Cb3UBqRS.js`);return{diagram:e}},__vite__mapDeps([37,1,2,3,4,5,6]));return{id:ut,diagram:e}},`loader`)},ft=`info`,pt={id:ft,detector:i(e=>/^\s*info/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./infoDiagram-3YFTVSEB-T368on4D.js`);return{diagram:e}},__vite__mapDeps([38,1,2,3,4,39,23,24,26,27,28,29,30,31,32,33,34,35]));return{id:ft,diagram:e}},`loader`)},mt={id:`pie`,detector:i(e=>/^\s*pie/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./pieDiagram-CU6KROY3-Bv4LpAbr.js`);return{diagram:e}},__vite__mapDeps([40,1,2,3,4,39,5,6,23,24,25,26,27,28,29,30,31,32,33,34,35]));return{id:`pie`,diagram:e}},`loader`)},ht=`quadrantChart`,gt={id:ht,detector:i(e=>/^\s*quadrantChart/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./quadrantDiagram-VICAPDV7-DR54jOeR.js`);return{diagram:e}},__vite__mapDeps([41,1,2,3,4]));return{id:ht,diagram:e}},`loader`)},_t=`xychart`,vt={id:_t,detector:i(e=>/^\s*xychart(-beta)?/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./xychartDiagram-N2JHSOCM-CoZ_Tits.js`);return{diagram:e}},__vite__mapDeps([42,1,2,3,4,39,5,6,13]));return{id:_t,diagram:e}},`loader`)},yt=`requirement`,bt={id:yt,detector:i(e=>/^\s*requirement(Diagram)?/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./requirementDiagram-JXO7QTGE-PEkg7sKC.js`);return{diagram:e}},__vite__mapDeps([43,1,2,3,4,10,11,5,6,12,13,14,15,16,17,19,20]));return{id:yt,diagram:e}},`loader`)},xt=`sequence`,St={id:xt,detector:i(e=>/^\s*sequenceDiagram/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./sequenceDiagram-VS2MUI6T-Bv-uwANx.js`);return{diagram:e}},__vite__mapDeps([44,1,2,3,4,9,5,6,7,36]));return{id:xt,diagram:e}},`loader`)},Ct=`class`,wt={id:Ct,detector:i((e,t)=>t?.class?.defaultRenderer!==`dagre-wrapper`&&/^\s*classDiagram/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./classDiagram-KGZ6W3CR-olpO3fMe.js`);return{diagram:e}},__vite__mapDeps([45,1,2,3,4,10,11,5,6,12,13,14,15,16,17,18,7,19,20,46]));return{id:Ct,diagram:e}},`loader`)},z=`classDiagram`,Tt={id:z,detector:i((e,t)=>/^\s*classDiagram/.test(e)&&t?.class?.defaultRenderer===`dagre-wrapper`?!0:/^\s*classDiagram-v2/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./classDiagram-v2-72OJOZXJ-olpO3fMe.js`);return{diagram:e}},__vite__mapDeps([47,1,2,3,4,10,11,5,6,12,13,14,15,16,17,18,7,19,20,46]));return{id:z,diagram:e}},`loader`)},Et=`state`,Dt={id:Et,detector:i((e,t)=>t?.state?.defaultRenderer!==`dagre-wrapper`&&/^\s*stateDiagram/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./stateDiagram-7D4R322I-DVNjmkEq.js`);return{diagram:e}},__vite__mapDeps([48,1,2,3,4,10,11,5,6,12,13,14,15,16,17,49,19,20,50,51]));return{id:Et,diagram:e}},`loader`)},Ot=`stateDiagram`,kt={id:Ot,detector:i((e,t)=>!!(/^\s*stateDiagram-v2/.test(e)||/^\s*stateDiagram/.test(e)&&t?.state?.defaultRenderer===`dagre-wrapper`),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./stateDiagram-v2-36443NZ5-CyN4Fh7_.js`);return{diagram:e}},__vite__mapDeps([52,1,2,3,4,10,11,5,6,12,13,14,15,16,17,19,20,51]));return{id:Ot,diagram:e}},`loader`)},At=`journey`,jt={id:At,detector:i(e=>/^\s*journey/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./journeyDiagram-M6C3CM3L-C6wjooas.js`);return{diagram:e}},__vite__mapDeps([53,1,2,3,4,5,18,7]));return{id:At,diagram:e}},`loader`)},Mt={draw:i((e,t,n)=>{s.debug(`rendering svg for syntax error
3
+ `);let r=oe(t),i=r.append(`g`);r.attr(`viewBox`,`0 0 2412 512`),d(r,100,512,!0),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z`),i.append(`text`).attr(`class`,`error-text`).attr(`x`,1440).attr(`y`,250).attr(`font-size`,`150px`).style(`text-anchor`,`middle`).text(`Syntax error in text`),i.append(`text`).attr(`class`,`error-text`).attr(`x`,1250).attr(`y`,400).attr(`font-size`,`100px`).style(`text-anchor`,`middle`).text(`mermaid version ${n}`)},`draw`)},Nt=Mt,Pt={db:{},renderer:Mt,parser:{parse:i(()=>{},`parse`)}},Ft=`flowchart-elk`,It={id:Ft,detector:i((e,t={})=>/^\s*flowchart-elk/.test(e)||/^\s*(flowchart|graph)/.test(e)&&t?.flowchart?.defaultRenderer===`elk`?(t.layout=`elk`,!0):!1,`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./flowDiagram-H6V6AXG4-SGMDiCkB.js`);return{diagram:e}},__vite__mapDeps([8,1,2,3,4,9,10,11,5,6,12,13,14,15,16,17,18,7,19,20]));return{id:Ft,diagram:e}},`loader`)},Lt=`timeline`,Rt={id:Lt,detector:i(e=>/^\s*timeline/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./timeline-definition-O6YCAMPW-Qmsuo7qS.js`);return{diagram:e}},__vite__mapDeps([54,1,2,3,4,39,5,6]));return{id:Lt,diagram:e}},`loader`)},zt=`mindmap`,Bt={id:zt,detector:i(e=>/^\s*mindmap/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./mindmap-definition-2TDM6QVE-8xDLzk2e.js`);return{diagram:e}},__vite__mapDeps([55,1,2,3,4,10,11,5,6,12,13,14,15,16,17,19,20]));return{id:zt,diagram:e}},`loader`)},Vt=`kanban`,Ht={id:Vt,detector:i(e=>/^\s*kanban/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./kanban-definition-75IXJCU3-5_UVY79g.js`);return{diagram:e}},__vite__mapDeps([56,1,2,3,4,39,9,10,11,5,6,12,13,14,18]));return{id:Vt,diagram:e}},`loader`)},Ut=`sankey`,Wt={id:Ut,detector:i(e=>/^\s*sankey(-beta)?/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./sankeyDiagram-URQDO5SZ-DDWEtjcs.js`);return{diagram:e}},__vite__mapDeps([57,1,2,3,4]));return{id:Ut,diagram:e}},`loader`)},Gt=`packet`,Kt={id:Gt,detector:i(e=>/^\s*packet(-beta)?/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./diagram-QXG6HAR7-DR6AHD2h.js`);return{diagram:e}},__vite__mapDeps([58,1,2,3,4,39,5,6,23,24,25,26,27,28,29,30,31,32,33,34,35]));return{id:Gt,diagram:e}},`loader`)},qt=`radar`,Jt={id:qt,detector:i(e=>/^\s*radar-beta/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./diagram-3NCE3AQN-CO6QpzEE.js`);return{diagram:e}},__vite__mapDeps([59,1,2,3,4,39,5,6,23,24,25,26,27,28,29,30,31,32,33,34,35]));return{id:qt,diagram:e}},`loader`)},Yt=`block`,Xt={id:Yt,detector:i(e=>/^\s*block(-beta)?/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./blockDiagram-7IZFK4PR-DBefcjof.js`);return{diagram:e}},__vite__mapDeps([60,1,2,3,4,5,6,12,13,15,49,18]));return{id:Yt,diagram:e}},`loader`)},Zt=`treeView`,Qt={id:Zt,detector:i(e=>/^\s*treeView-beta/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./diagram-WEQXMOUZ-DkpoMwTL.js`);return{diagram:e}},__vite__mapDeps([61,1,2,3,4,39,5,6,23,24,25,26,27,28,29,30,31,32,33,34,35,36]));return{id:Zt,diagram:e}},`loader`)},$t=`architecture`,en={id:$t,detector:i(e=>/^\s*architecture/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./architectureDiagram-UL44E2DR-CmG3uPWf.js`);return{diagram:e}},__vite__mapDeps([62,1,2,3,4,39,5,6,13,23,24,25,26,27,28,29,30,31,32,33,34,63,35]));return{id:$t,diagram:e}},`loader`)},tn=`eventmodeling`,nn={id:tn,detector:i(e=>/^\s*eventmodeling/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./diagram-HNR7UZ2L-DVRltWbL.js`);return{diagram:e}},__vite__mapDeps([64,1,2,3,4,5,6,23,24,25,26,27,28,29,30,31,32,33,34,35]));return{id:tn,diagram:e}},`loader`)},rn=`ishikawa`,an={id:rn,detector:i(e=>/^\s*ishikawa(-beta)?\b/i.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./ishikawaDiagram-BNXS4ZKH-XpjJRU9h.js`);return{diagram:e}},__vite__mapDeps([65,1,2,3,4,39,10,5,6]));return{id:rn,diagram:e}},`loader`)},on=`venn`,sn={id:on,detector:i(e=>/^\s*venn-beta/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./vennDiagram-MWXL3ELB-BD1iK1SX.js`);return{diagram:e}},__vite__mapDeps([66,1,2,3,4,39,10,5,6]));return{id:on,diagram:e}},`loader`)},cn=`treemap`,ln={id:cn,detector:i(e=>/^\s*treemap/.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./diagram-GF46GFSD-B2atbzmU.js`);return{diagram:e}},__vite__mapDeps([67,1,2,3,4,39,11,5,6,23,24,25,26,27,28,29,30,31,32,33,34,35,20]));return{id:cn,diagram:e}},`loader`)},un=`wardley-beta`,dn={id:un,detector:i(e=>/^\s*wardley-beta/i.test(e),`detector`),loader:i(async()=>{let{diagram:e}=await r(async()=>{let{diagram:e}=await import(`./wardleyDiagram-CUQ6CDDI-D6TzLVob.js`);return{diagram:e}},__vite__mapDeps([68,1,2,3,4,39,5,6,23,24,25,26,27,28,29,30,31,32,33,34,35]));return{id:un,diagram:e}},`loader`)},fn=!1,pn=i(()=>{fn||(fn=!0,w(`error`,Pt,e=>e.toLowerCase().trim()===`error`),w(`---`,{db:{clear:i(()=>{},`clear`)},styles:{},renderer:{draw:i(()=>{},`draw`)},parser:{parse:i(()=>{throw Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},`parse`)},init:i(()=>null,`init`)},e=>e.toLowerCase().trimStart().startsWith(`---`)),v(It,Bt,en),v(nt,Ht,Tt,wt,st,dt,pt,mt,bt,St,ot,it,Rt,lt,kt,Dt,jt,gt,Wt,Kt,vt,Xt,nn,Qt,Jt,an,ln,sn,dn))},`addDiagrams`),mn=i(async()=>{s.debug(`Loading registered diagrams`);let e=(await Promise.allSettled(Object.entries(E).map(async([e,{detector:t,loader:n}])=>{if(n)try{y(e)}catch{try{let{diagram:e,id:r}=await n();w(r,e,t)}catch(t){throw s.error(`Failed to load external diagram with key ${e}. Removing from detectors.`),delete E[e],t}}}))).filter(e=>e.status===`rejected`);if(e.length>0){s.error(`Failed to load ${e.length} external diagrams`);for(let t of e)s.error(t);throw Error(`Failed to load ${e.length} external diagrams`)}},`loadRegisteredDiagrams`),hn=`comm`,gn=`rule`,_n=`decl`,vn=`@media`,yn=`@import`,bn=`@supports`,xn=`@namespace`,Sn=`@keyframes`,Cn=`@layer`,wn=`@scope`,Tn=Math.abs,En=String.fromCharCode;function Dn(e){return e.trim()}i(Dn,`trim`);function On(e,t,n){return e.replace(t,n)}i(On,`replace`);function kn(e,t,n){return e.indexOf(t,n)}i(kn,`indexof`);function An(e,t){return e.charCodeAt(t)|0}i(An,`charat`);function jn(e,t,n){return e.slice(t,n)}i(jn,`substr`);function B(e){return e.length}i(B,`strlen`);function Mn(e){return e.length}i(Mn,`sizeof`);function Nn(e,t){return t.push(e),e}i(Nn,`append`);var Pn=1,Fn=1,In=0,V=0,H=0,Ln=``;function Rn(e,t,n,r,i,a,o,s){return{value:e,root:t,parent:n,type:r,props:i,children:a,line:Pn,column:Fn,length:o,return:``,siblings:s}}i(Rn,`node`);function zn(){return H}i(zn,`char`);function Bn(){return H=V>0?An(Ln,--V):0,Fn--,H===10&&(Fn=1,Pn--),H}i(Bn,`prev`);function U(){return H=V<In?An(Ln,V++):0,Fn++,H===10&&(Fn=1,Pn++),H}i(U,`next`);function W(){return An(Ln,V)}i(W,`peek`);function Vn(){return V}i(Vn,`caret`);function Hn(e,t){return jn(Ln,e,t)}i(Hn,`slice`);function Un(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}i(Un,`token`);function Wn(e){return Pn=Fn=1,In=B(Ln=e),V=0,[]}i(Wn,`alloc`);function Gn(e){return Ln=``,e}i(Gn,`dealloc`);function Kn(e){return Dn(Hn(V-1,Yn(e===91?e+2:e===40?e+1:e)))}i(Kn,`delimit`);function qn(e){for(;(H=W())&&H<33;)U();return Un(e)>2||Un(H)>3?``:` `}i(qn,`whitespace`);function Jn(e,t){for(;--t&&U()&&!(H<48||H>102||H>57&&H<65||H>70&&H<97););return Hn(e,Vn()+(t<6&&W()==32&&U()==32))}i(Jn,`escaping`);function Yn(e){for(;U();)switch(H){case e:return V;case 34:case 39:e!==34&&e!==39&&Yn(H);break;case 40:e===41&&Yn(e);break;case 92:U();break}return V}i(Yn,`delimiter`);function Xn(e,t){for(;U()&&e+H!==57&&!(e+H===84&&W()===47););return`/*`+Hn(t,V-1)+`*`+En(e===47?e:U())}i(Xn,`commenter`);function Zn(e){for(;!Un(W());)U();return Hn(e,V)}i(Zn,`identifier`);function Qn(e){return Gn($n(``,null,null,null,[``],e=Wn(e),0,[0],e))}i(Qn,`compile`);function $n(e,t,n,r,i,a,o,s,c){for(var l=0,u=0,d=o,f=0,p=0,m=0,h=1,g=1,_=1,v=0,y=``,b=i,x=a,S=r,C=y;g;)switch(m=v,v=U()){case 40:if(m!=108&&An(C,d-1)==58){kn(C+=On(Kn(v),`&`,`&\f`),`&\f`,Tn(l?s[l-1]:0))!=-1&&(_=-1);break}case 34:case 39:case 91:C+=Kn(v);break;case 9:case 10:case 13:case 32:C+=qn(m);break;case 92:C+=Jn(Vn()-1,7);continue;case 47:switch(W()){case 42:case 47:Nn(tr(Xn(U(),Vn()),t,n,c),c),(Un(m||1)==5||Un(W()||1)==5)&&B(C)&&jn(C,-1,void 0)!==` `&&(C+=` `);break;default:C+=`/`}break;case 123*h:s[l++]=B(C)*_;case 125*h:case 59:case 0:switch(v){case 0:case 125:g=0;case 59+u:_==-1&&(C=On(C,/\f/g,``)),p>0&&(B(C)-d||h===0&&m===47)&&Nn(p>32?nr(C+`;`,r,n,d-1,c):nr(On(C,` `,``)+`;`,r,n,d-2,c),c);break;case 59:C+=`;`;default:if(Nn(S=er(C,t,n,l,u,i,s,y,b=[],x=[],d,a),a),v===123)if(u===0)$n(C,t,S,S,b,a,d,s,x);else{switch(f){case 99:if(An(C,3)===110)break;case 108:if(An(C,2)===97)break;default:u=0;case 100:case 109:case 115:}u?$n(e,S,S,r&&Nn(er(e,S,S,0,0,i,s,y,i,b=[],d,x),x),i,x,d,s,r?b:x):$n(C,S,S,S,[``],x,0,s,x)}}l=u=p=0,h=_=1,y=C=``,d=o;break;case 58:d=1+B(C),p=m;default:if(h<1){if(v==123)--h;else if(v==125&&h++==0&&Bn()==125)continue}switch(C+=En(v),v*h){case 38:_=u>0?1:(C+=`\f`,-1);break;case 44:s[l++]=(B(C)-1)*_,_=1;break;case 64:W()===45&&(C+=Kn(U())),f=W(),u=d=B(y=C+=Zn(Vn())),v++;break;case 45:m===45&&B(C)==2&&(h=0)}}return a}i($n,`parse`);function er(e,t,n,r,i,a,o,s,c,l,u,d){for(var f=i-1,p=i===0?a:[``],m=Mn(p),h=0,g=0,_=0;h<r;++h)for(var v=0,y=jn(e,f+1,f=Tn(g=o[h])),b=e;v<m;++v)(b=Dn(g>0?p[v]+` `+y:On(y,/&\f/g,p[v])))&&(c[_++]=b);return Rn(e,t,n,i===0?gn:s,c,l,u,d)}i(er,`ruleset`);function tr(e,t,n,r){return Rn(e,t,n,hn,En(zn()),jn(e,2,-2),0,r)}i(tr,`comment`);function nr(e,t,n,r,i){return Rn(e,t,n,_n,jn(e,0,r),jn(e,r+1,-1),r,i)}i(nr,`declaration`);function rr(e,t){for(var n=``,r=0;r<e.length;r++)n+=t(e[r],r,e,t)||``;return n}i(rr,`serialize`);function ir(e,t,n,r){switch(e.type){case Cn:if(e.children.length)break;case yn:case xn:case _n:return e.return=e.return||e.value;case hn:return``;case Sn:return e.return=e.value+`{`+rr(e.children,r)+`}`;case gn:if(!B(e.value=e.props.join(`,`)))return``}return B(n=rr(e.children,r))?e.return=e.value+`{`+n+`}`:``}i(ir,`stringify`);function ar(e){var t=Mn(e);return function(n,r,i,a){for(var o=``,s=0;s<t;s++)o+=e[s](n,r,i,a)||``;return o}}i(ar,`middleware`);var or=`graphics-document document`;function sr(e,t){e.attr(`role`,or),t!==``&&e.attr(`aria-roledescription`,t)}i(sr,`setA11yDiagramInfo`);function cr(e,t,n,r){if(e.insert!==void 0){if(n){let t=`chart-desc-${r}`;e.attr(`aria-describedby`,t),e.insert(`desc`,`:first-child`).attr(`id`,t).text(n)}if(t){let n=`chart-title-${r}`;e.attr(`aria-labelledby`,n),e.insert(`title`,`:first-child`).attr(`id`,n).text(t)}}}i(cr,`addSVGa11yTitleDescription`);var lr=class e{constructor(e,t,n,r,i){this.type=e,this.text=t,this.db=n,this.parser=r,this.renderer=i}static{i(this,`Diagram`)}static async fromText(t,n={}){let r=C(),i=l(t,r);t=me(t)+`
4
+ `;try{y(i)}catch{let e=ie(i);if(!e)throw new re(`Diagram ${i} not found.`);let{id:t,diagram:n}=await e();w(t,n)}let{db:a,parser:o,renderer:s,init:c}=y(i);return o.parser&&(o.parser.yy=a),a.clear?.(),c?.(r),n.title&&a.setDiagramTitle?.(n.title),await o.parse(t),new e(i,t,a,o,s)}async render(e,t){await this.renderer.draw(this.text,e,t,this)}getParser(){return this.parser}getType(){return this.type}},ur=[],dr=i(()=>{ur.forEach(e=>{e()}),ur=[]},`attachFunctions`),fr=i(e=>e.replace(/^\s*%%(?!{)[^\n]+\n?/gm,``).trimStart(),`cleanupComments`);function pr(e){let t=e.match(te);if(!t)return{text:e,metadata:{}};let n=O(t[1],{schema:se})??{};n=typeof n==`object`&&!Array.isArray(n)?n:{};let r={};return n.displayMode&&(r.displayMode=n.displayMode.toString()),n.title&&(r.title=n.title.toString()),n.config&&(r.config=n.config),{text:e.slice(t[0].length),metadata:r}}i(pr,`extractFrontMatter`);var mr=i(e=>e.replace(/\r\n?/g,`
5
+ `).replace(/<(\w+)([^>]*)>/g,(e,t,n)=>`<`+t+n.replace(/="([^"]*)"/g,`='$1'`)+`>`),`cleanupText`),hr=i(e=>{let{text:t,metadata:n}=pr(e),{displayMode:r,title:i,config:a={}}=n;return r&&(a.gantt||={},a.gantt.displayMode=r),{title:i,config:a,text:t}},`processFrontmatter`),gr=i(e=>{let t=de.detectInit(e)??{},n=de.detectDirective(e,`wrap`);return Array.isArray(n)?t.wrap=n.some(({type:e})=>e===`wrap`):n?.type===`wrap`&&(t.wrap=!0),{text:pe(e),directive:t}},`processDirectives`);function _r(e){let t=hr(mr(e)),n=gr(t.text),r=ce(t.config,n.directive);return e=fr(n.text),{code:e,title:t.title,config:r}}i(_r,`preprocessDiagram`);function vr(e){let t=new TextEncoder().encode(e),n=Array.from(t,e=>String.fromCodePoint(e)).join(``);return btoa(n)}i(vr,`toBase64`);var yr=5e4,br=`graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa`,xr=`sandbox`,Sr=`loose`,Cr=`http://www.w3.org/2000/svg`,wr=`http://www.w3.org/1999/xlink`,Tr=`http://www.w3.org/1999/xhtml`,Er=`100%`,Dr=`100%`,Or=`border:0;margin:0;`,kr=`margin:0`,Ar=`allow-top-navigation-by-user-activation allow-popups`,jr=`The "iframe" tag is not supported by your browser.`,Mr=[`foreignobject`],Nr=[`dominant-baseline`];function Pr(e){let t=_r(e);return c(),ne(t.config??{}),t}i(Pr,`processAndSetConfigs`);async function Fr(e,t){pn();try{let{code:t,config:n}=Pr(e);return{diagramType:(await qr(t)).type,config:n}}catch(e){if(t?.suppressErrors)return!1;throw e}}i(Fr,`parse`);var Ir=i((e,t,n=[])=>`.${e} ${t} ${S(`{ ${n.join(` !important; `)} !important; }`)}`,`cssImportantStyles`),Lr=i((e,t=new Map)=>{let n=new CSSStyleSheet;if(e.fontFamily!==void 0&&n.insertRule(`:root { --mermaid-font-family: ${e.fontFamily}}`,n.cssRules.length),e.altFontFamily!==void 0&&n.insertRule(`:root { --mermaid-alt-font-family: ${e.altFontFamily}}`,n.cssRules.length),t instanceof Map){let r=u(e)?[`> *`,`span`]:[`rect`,`polygon`,`ellipse`,`circle`,`path`];t.forEach(e=>{ue(e.styles)||r.forEach(t=>{n.insertRule(Ir(e.id,t,e.styles),n.cssRules.length)}),ue(e.textStyles)||n.insertRule(Ir(e.id,`tspan`,(e?.textStyles||[]).map(e=>e.replace(`color`,`fill`))),n.cssRules.length)})}let r=``;if(e.themeCSS!==void 0)if(typeof n.replaceSync==`function`){let t=new CSSStyleSheet;t.replaceSync(e.themeCSS),r=f(t)+`
6
+ `}else r+=`${e.themeCSS}
7
+ `;return r+f(n)},`createCssStyles`),Rr=i((e,t)=>rr(Qn(`${e}{${t}}`),ar([i(function(t,n,r,i){if(t.type===`rule`&&Array.isArray(t.props)){if(t.parent&&t.parent.type===Sn)return;t.props=t.props.map(t=>t.startsWith(e)?t:`${e} ${t}`)}else t.type.startsWith(`@`)&&([vn,bn,Cn,wn,`@container`,`@starting-style`,Sn].includes(t.type)||(s.warn(`Removing unsupported at-rule ${t.type} from CSS`),t.type=hn))},`addNamespace`),ir])),`compileCSS`),zr=i((e,t,n,r)=>Rr(r,D(t,Lr(e,n),{...e.themeVariables,theme:e.theme,look:e.look},r)),`createUserStyles`),Br=i((e=``,t,n)=>{let r=e;return!n&&!t&&(r=r.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,`marker-end="url(#`)),r=fe(r),r=r.replace(/<br>/g,`<br/>`),r},`cleanUpSvgCode`),Vr=i((e=``,t)=>`<iframe style="width:${Er};height:${t?.viewBox?.baseVal?.height?t.viewBox.baseVal.height+`px`:Dr};${Or}" src="data:text/html;charset=UTF-8;base64,${vr(`<body style="${kr}">${e}</body>`)}" sandbox="${Ar}">
8
+ ${jr}
9
+ </iframe>`,`putIntoIFrame`),Hr=i((e,t,n,r,i)=>{let a=e.append(`div`);a.attr(`id`,n),r&&a.attr(`style`,r);let o=a.append(`svg`).attr(`id`,t).attr(`width`,`100%`).attr(`xmlns`,Cr);return i&&o.attr(`xmlns:xlink`,i),o.append(`g`),e},`appendDivSvgG`);function Ur(e,t){return e.append(`iframe`).attr(`id`,t).attr(`style`,`width: 100%; height: 100%;`).attr(`sandbox`,``)}i(Ur,`sandboxedIframe`);var Wr=i((e,t,n,r)=>{e.getElementById(t)?.remove(),e.getElementById(n)?.remove(),e.getElementById(r)?.remove()},`removeExistingElements`),Gr=i(async function(e,t,n){pn();let r=Pr(t);t=r.code;let a=C();s.debug(a),t.length>(a?.maxTextSize??yr)&&(t=br);let c=`#${e}`,l=`i`+e,u=`#`+l,d=`d`+e,f=`#`+d,p=i(()=>{let e=o(h?u:f).node();e&&`remove`in e&&e.remove()},`removeTempElements`),m=o(document.body),h=a.securityLevel===xr,g=a.securityLevel===Sr,_=a.fontFamily;n===void 0?(Wr(document,e,d,l),h?(m=o(Ur(o(document.body),l).nodes()[0].contentDocument.body),m.node().style.margin=`0`):m=o(`body`),Hr(m,e,d)):(n&&(n.innerHTML=``),h?(m=o(Ur(o(n),l).nodes()[0].contentDocument.body),m.node().style.margin=`0`):m=o(n),Hr(m,e,d,`font-family: ${_}`,wr));let v,y;try{v=await lr.fromText(t,{title:r.title})}catch(e){if(a.suppressErrorRendering)throw p(),e;v=await lr.fromText(`error`),y=e}let b=m.select(f).node(),x=v.type,S=b.firstChild,w=S.firstChild,E=v.renderer.getClasses?.(t,v),te=zr(a,x,E,c),ne=document.createElement(`style`);ne.innerHTML=te,S.insertBefore(ne,w);try{await v.renderer.draw(t,e,`11.15.0`,v)}catch(n){throw a.suppressErrorRendering?p():Nt.draw(t,e,`11.15.0`),n}let re=m.select(`${f} svg`),ie=v.db.getAccTitle?.(),ae=v.db.getAccDescription?.();Jr(x,re,ie,ae),m.select(`[id="${e}"]`).selectAll(`foreignobject > *`).attr(`xmlns`,Tr);let D=m.select(f).node().innerHTML;if(s.debug(`config.arrowMarkerAbsolute`,a.arrowMarkerAbsolute),D=Br(D,h,ee(a.arrowMarkerAbsolute)),h){let e=m.select(f+` svg`).node();D=Vr(D,e)}else g||(D=T.sanitize(D,{ADD_TAGS:Mr,ADD_ATTR:Nr,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(dr(),y)throw y;return p(),{diagramType:x,svg:D,bindFunctions:v.db.bindFunctions}},`render`);function Kr(e={}){let t=_({},e);t?.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables||={},t.themeVariables.fontFamily=t.fontFamily),ae(t),t?.theme&&t.theme in p?t.themeVariables=p[t.theme].getThemeVariables(t.themeVariables):t&&(t.themeVariables=p.default.getThemeVariables(t.themeVariables)),a((typeof t==`object`?h(t):g()).logLevel),pn()}i(Kr,`initialize`);var qr=i((e,t={})=>{let{code:n}=_r(e);return lr.fromText(n,t)},`getDiagramFromText`);function Jr(e,t,n,r){sr(t,e),cr(t,n,r,t.attr(`id`))}i(Jr,`addA11yInfo`);var Yr=Object.freeze({render:Gr,parse:Fr,getDiagramFromText:qr,initialize:Kr,getConfig:C,setConfig:m,getSiteConfig:g,updateSiteConfig:b,reset:i(()=>{c()},`reset`),globalReset:i(()=>{c(x)},`globalReset`),defaultConfig:x});a(C().logLevel),c(C());var Xr=i((e,t,n)=>{s.warn(e),le(e)?(n&&n(e.str,e.hash),t.push({...e,message:e.str,error:e})):(n&&n(e),e instanceof Error&&t.push({str:e.message,message:e.message,hash:e.name,error:e}))},`handleError`),Zr=i(async function(e={querySelector:`.mermaid`}){try{await Qr(e)}catch(t){if(le(t)&&s.error(t.str),li.parseError&&li.parseError(t),!e.suppressErrors)throw s.error(`Use the suppressErrors option to suppress these errors`),t}},`run`),Qr=i(async function({postRenderCallback:e,querySelector:t,nodes:n}={querySelector:`.mermaid`}){let r=Yr.getConfig();s.debug(`${e?``:`No `}Callback function found`);let i;if(n)i=n;else if(t)i=document.querySelectorAll(t);else throw Error(`Nodes and querySelector are both undefined`);s.debug(`Found ${i.length} diagrams`),r?.startOnLoad!==void 0&&(s.debug(`Start On Load: `+r?.startOnLoad),Yr.updateSiteConfig({startOnLoad:r?.startOnLoad}));let a=new de.InitIDGenerator(r.deterministicIds,r.deterministicIDSeed),o,c=[];for(let t of Array.from(i)){if(s.info(`Rendering diagram: `+t.id),t.getAttribute(`data-processed`))continue;t.setAttribute(`data-processed`,`true`);let n=`mermaid-${a.next()}`;o=t.innerHTML,o=ge(de.entityDecode(o)).trim().replace(/<br\s*\/?>/gi,`<br/>`);let r=de.detectInit(o);r&&s.debug(`Detected early reinit: `,r);try{let{svg:r,bindFunctions:i}=await ci(n,o,t);t.innerHTML=r,e&&await e(n),i&&i(t)}catch(e){Xr(e,c,li.parseError)}}if(c.length>0)throw c[0]},`runThrowsErrors`),$r=i(function(e){Yr.initialize(e)},`initialize`),ei=i(async function(e,t,n){s.warn(`mermaid.init is deprecated. Please use run instead.`),e&&$r(e);let r={postRenderCallback:n,querySelector:`.mermaid`};typeof t==`string`?r.querySelector=t:t&&(t instanceof HTMLElement?r.nodes=[t]:r.nodes=t),await Zr(r)},`init`),ti=i(async(e,{lazyLoad:t=!0}={})=>{pn(),v(...e),t===!1&&await mn()},`registerExternalDiagrams`),ni=i(function(){if(li.startOnLoad){let{startOnLoad:e}=Yr.getConfig();e&&li.run().catch(e=>s.error(`Mermaid failed to initialize`,e))}},`contentLoaded`);typeof document<`u`&&window.addEventListener(`load`,ni,!1);var ri=i(function(e){li.parseError=e},`setParseErrorHandler`),ii=[],ai=!1,oi=i(async()=>{if(!ai){for(ai=!0;ii.length>0;){let e=ii.shift();if(e)try{await e()}catch(e){s.error(`Error executing queue`,e)}}ai=!1}},`executeQueue`),si=i(async(e,t)=>new Promise((n,r)=>{let a=i(()=>new Promise((i,a)=>{Yr.parse(e,t).then(e=>{i(e),n(e)},e=>{s.error(`Error parsing`,e),li.parseError?.(e),a(e),r(e)})}),`performCall`);ii.push(a),oi().catch(r)}),`parse`),ci=i((e,t,n)=>new Promise((r,a)=>{let o=i(()=>new Promise((i,o)=>{Yr.render(e,t,n).then(e=>{i(e),r(e)},e=>{s.error(`Error parsing`,e),li.parseError?.(e),o(e),a(e)})}),`performCall`);ii.push(o),oi().catch(a)}),`render`),li={startOnLoad:!0,mermaidAPI:Yr,parse:si,render:ci,init:ei,run:Zr,registerExternalDiagrams:ti,registerLayoutLoaders:k,initialize:$r,parseError:void 0,contentLoaded:ni,setParseErrorHandler:ri,detectType:l,registerIconPacks:he,getRegisteredDiagramsMetadata:i(()=>Object.keys(E).map(e=>({id:e})),`getRegisteredDiagramsMetadata`)},ui=li;function di(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function fi(e){if(Array.isArray(e))return e}function pi(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t!==0)for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function mi(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
10
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function hi(e,t){return fi(e)||pi(e,t)||gi(e,t)||mi()}function gi(e,t){if(e){if(typeof e==`string`)return di(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?di(e,t):void 0}}var _i=Object.entries,vi=Object.setPrototypeOf,yi=Object.isFrozen,bi=Object.getPrototypeOf,xi=Object.getOwnPropertyDescriptor,G=Object.freeze,K=Object.seal,Si=Object.create,Ci=typeof Reflect<`u`&&Reflect,wi=Ci.apply,Ti=Ci.construct;G||=function(e){return e},K||=function(e){return e},wi||=function(e,t){var n=[...arguments].slice(2);return e.apply(t,n)},Ti||=function(e){return new e(...[...arguments].slice(1))};var Ei=Y(Array.prototype.forEach),Di=Y(Array.prototype.lastIndexOf),Oi=Y(Array.prototype.pop),ki=Y(Array.prototype.push),Ai=Y(Array.prototype.splice),ji=Array.isArray,Mi=Y(String.prototype.toLowerCase),Ni=Y(String.prototype.toString),Pi=Y(String.prototype.match),Fi=Y(String.prototype.replace),Ii=Y(String.prototype.indexOf),Li=Y(String.prototype.trim),Ri=Y(Number.prototype.toString),zi=Y(Boolean.prototype.toString),Bi=typeof BigInt>`u`?null:Y(BigInt.prototype.toString),Vi=typeof Symbol>`u`?null:Y(Symbol.prototype.toString),q=Y(Object.prototype.hasOwnProperty),Hi=Y(Object.prototype.toString),J=Y(RegExp.prototype.test),Ui=Wi(TypeError);function Y(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);var n=[...arguments].slice(1);return wi(e,t,n)}}function Wi(e){return function(){return Ti(e,[...arguments])}}function X(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Mi;if(vi&&vi(e,null),!ji(t))return e;let r=t.length;for(;r--;){let i=t[r];if(typeof i==`string`){let e=n(i);e!==i&&(yi(t)||(t[r]=e),i=e)}e[i]=!0}return e}function Gi(e){for(let t=0;t<e.length;t++)q(e,t)||(e[t]=null);return e}function Z(e){let t=Si(null);for(let r of _i(e)){var n=hi(r,2);let i=n[0],a=n[1];q(e,i)&&(ji(a)?t[i]=Gi(a):a&&typeof a==`object`&&a.constructor===Object?t[i]=Z(a):t[i]=a)}return t}function Ki(e){switch(typeof e){case`string`:return e;case`number`:return Ri(e);case`boolean`:return zi(e);case`bigint`:return Bi?Bi(e):`0`;case`symbol`:return Vi?Vi(e):`Symbol()`;case`undefined`:return Hi(e);case`function`:case`object`:{if(e===null)return Hi(e);let t=e,n=Q(t,`toString`);if(typeof n==`function`){let e=n(t);return typeof e==`string`?e:Hi(e)}return Hi(e)}default:return Hi(e)}}function Q(e,t){for(;e!==null;){let n=xi(e,t);if(n){if(n.get)return Y(n.get);if(typeof n.value==`function`)return Y(n.value)}e=bi(e)}function n(){return null}return n}function qi(e){try{return J(e,``),!0}catch{return!1}}var Ji=G(`a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr`.split(`.`)),Yi=G(`svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern`.split(`.`)),Xi=G([`feBlend`,`feColorMatrix`,`feComponentTransfer`,`feComposite`,`feConvolveMatrix`,`feDiffuseLighting`,`feDisplacementMap`,`feDistantLight`,`feDropShadow`,`feFlood`,`feFuncA`,`feFuncB`,`feFuncG`,`feFuncR`,`feGaussianBlur`,`feImage`,`feMerge`,`feMergeNode`,`feMorphology`,`feOffset`,`fePointLight`,`feSpecularLighting`,`feSpotLight`,`feTile`,`feTurbulence`]),Zi=G([`animate`,`color-profile`,`cursor`,`discard`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`foreignobject`,`hatch`,`hatchpath`,`mesh`,`meshgradient`,`meshpatch`,`meshrow`,`missing-glyph`,`script`,`set`,`solidcolor`,`unknown`,`use`]),Qi=G(`math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts`.split(`.`)),$i=G([`maction`,`maligngroup`,`malignmark`,`mlongdiv`,`mscarries`,`mscarry`,`msgroup`,`mstack`,`msline`,`msrow`,`semantics`,`annotation`,`annotation-xml`,`mprescripts`,`none`]),ea=G([`#text`]),ta=G(`accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns`.split(`.`)),na=G(`accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan`.split(`.`)),ra=G(`accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns`.split(`.`)),ia=G([`xlink:href`,`xml:id`,`xlink:title`,`xml:space`,`xmlns:xlink`]),aa=K(/{{[\w\W]*|^[\w\W]*}}/g),oa=K(/<%[\w\W]*|^[\w\W]*%>/g),sa=K(/\${[\w\W]*/g),ca=K(/^data-[\-\w.\u00B7-\uFFFF]+$/),la=K(/^aria-[\-\w]+$/),ua=K(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),da=K(/^(?:\w+script|data):/i),fa=K(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),pa=K(/^html$/i),ma=K(/^[a-z][.\w]*(-[.\w]+)+$/i),ha=K(/<[/\w!]/g),ga=K(/<[/\w]/g),_a=K(/<\/no(script|embed|frames)/i),va=K(/\/>/i),$={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},ya=function(){return typeof window>`u`?null:window},ba=function(e,t){if(typeof e!=`object`||typeof e.createPolicy!=`function`)return null;let n=null,r=`data-tt-policy-suffix`;t&&t.hasAttribute(r)&&(n=t.getAttribute(r));let i=`dompurify`+(n?`#`+n:``);try{return e.createPolicy(i,{createHTML(e){return e},createScriptURL(e){return e}})}catch{return console.warn(`TrustedTypes policy `+i+` could not be created.`),null}},xa=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Sa=function(e,t,n,r){return q(e,t)&&ji(e[t])?X(r.base?Z(r.base):{},e[t],r.transform):n};function Ca(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ya(),t=e=>Ca(e);if(t.version=`3.4.12`,t.removed=[],!e||!e.document||e.document.nodeType!==$.document||!e.Element)return t.isSupported=!1,t;let n=e.document,r=n,i=r.currentScript;e.DocumentFragment;let a=e.HTMLTemplateElement,o=e.Node,s=e.Element,c=e.NodeFilter;e.NamedNodeMap===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;let l=e.DOMParser,u=e.trustedTypes,d=s.prototype,f=Q(d,`cloneNode`),p=Q(d,`remove`),m=Q(d,`nextSibling`),h=Q(d,`childNodes`),g=Q(d,`parentNode`),_=Q(d,`shadowRoot`),v=Q(d,`attributes`),y=o&&o.prototype?Q(o.prototype,`nodeType`):null,b=o&&o.prototype?Q(o.prototype,`nodeName`):null;if(typeof a==`function`){let e=n.createElement(`template`);e.content&&e.content.ownerDocument&&(n=e.content.ownerDocument)}let x,S=``,C,w=!1,T=0,E=function(){if(T>0)throw Ui(`A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.`)},ee=function(e){E(),T++;try{return x.createHTML(e)}finally{T--}},te=function(e){E(),T++;try{return x.createScriptURL(e)}finally{T--}},ne=function(){return w||=(C=ba(u,i),!0),C},re=n,ie=re.implementation,ae=re.createNodeIterator,D=re.createDocumentFragment,oe=re.getElementsByTagName,se=r.importNode,O=xa();t.isSupported=typeof _i==`function`&&typeof g==`function`&&ie&&ie.createHTMLDocument!==void 0;let ce=aa,le=oa,ue=sa,de=ca,fe=la,pe=da,me=fa,he=ma,ge=ua,k=null,_e=X({},[...Ji,...Yi,...Xi,...Qi,...ea]),A=null,j=X({},[...ta,...na,...ra,...ia]),M=Object.seal(Si(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ve=null,ye=null,N=Object.seal(Si(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),be=!0,xe=!0,Se=!1,Ce=!0,P=!1,we=!0,Te=!1,Ee=!1,De=null,Oe=null,ke=!1,Ae=!1,je=!1,Me=!1,Ne=!0,Pe=!1,Fe=`user-content-`,Ie=!0,Le=!1,Re={},F=null,ze=X({},`annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp`.split(`.`)),Be=null,Ve=X({},[`audio`,`video`,`img`,`source`,`image`,`track`]),He=null,Ue=X({},[`alt`,`class`,`for`,`id`,`label`,`name`,`pattern`,`placeholder`,`role`,`summary`,`title`,`value`,`style`,`xmlns`]),We=`http://www.w3.org/1998/Math/MathML`,Ge=`http://www.w3.org/2000/svg`,I=`http://www.w3.org/1999/xhtml`,Ke=I,qe=!1,Je=null,Ye=X({},[We,Ge,I],Ni),Xe=G([`mi`,`mo`,`mn`,`ms`,`mtext`]),Ze=X({},Xe),Qe=G([`annotation-xml`]),$e=X({},Qe),L=X({},[`title`,`style`,`font`,`a`,`script`]),et=null,tt=[`application/xhtml+xml`,`text/html`],R=null,nt=null,rt=n.createElement(`form`),it=function(e){return e instanceof RegExp||e instanceof Function},at=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(nt&&nt===e)return;(!e||typeof e!=`object`)&&(e={}),e=Z(e),et=tt.indexOf(e.PARSER_MEDIA_TYPE)===-1?`text/html`:e.PARSER_MEDIA_TYPE,R=et===`application/xhtml+xml`?Ni:Mi,k=Sa(e,`ALLOWED_TAGS`,_e,{transform:R}),A=Sa(e,`ALLOWED_ATTR`,j,{transform:R}),Je=Sa(e,`ALLOWED_NAMESPACES`,Ye,{transform:Ni}),He=Sa(e,`ADD_URI_SAFE_ATTR`,Ue,{transform:R,base:Ue}),Be=Sa(e,`ADD_DATA_URI_TAGS`,Ve,{transform:R,base:Ve}),F=Sa(e,`FORBID_CONTENTS`,ze,{transform:R}),ve=Sa(e,`FORBID_TAGS`,Z({}),{transform:R}),ye=Sa(e,`FORBID_ATTR`,Z({}),{transform:R}),Re=q(e,`USE_PROFILES`)?e.USE_PROFILES&&typeof e.USE_PROFILES==`object`?Z(e.USE_PROFILES):e.USE_PROFILES:!1,be=e.ALLOW_ARIA_ATTR!==!1,xe=e.ALLOW_DATA_ATTR!==!1,Se=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Ce=e.ALLOW_SELF_CLOSE_IN_ATTR!==!1,P=e.SAFE_FOR_TEMPLATES||!1,we=e.SAFE_FOR_XML!==!1,Te=e.WHOLE_DOCUMENT||!1,Ae=e.RETURN_DOM||!1,je=e.RETURN_DOM_FRAGMENT||!1,Me=e.RETURN_TRUSTED_TYPE||!1,ke=e.FORCE_BODY||!1,Ne=e.SANITIZE_DOM!==!1,Pe=e.SANITIZE_NAMED_PROPS||!1,Ie=e.KEEP_CONTENT!==!1,Le=e.IN_PLACE||!1,ge=qi(e.ALLOWED_URI_REGEXP)?e.ALLOWED_URI_REGEXP:ua,Ke=typeof e.NAMESPACE==`string`?e.NAMESPACE:I,Ze=q(e,`MATHML_TEXT_INTEGRATION_POINTS`)&&e.MATHML_TEXT_INTEGRATION_POINTS&&typeof e.MATHML_TEXT_INTEGRATION_POINTS==`object`?Z(e.MATHML_TEXT_INTEGRATION_POINTS):X({},Xe),$e=q(e,`HTML_INTEGRATION_POINTS`)&&e.HTML_INTEGRATION_POINTS&&typeof e.HTML_INTEGRATION_POINTS==`object`?Z(e.HTML_INTEGRATION_POINTS):X({},Qe);let t=q(e,`CUSTOM_ELEMENT_HANDLING`)&&e.CUSTOM_ELEMENT_HANDLING&&typeof e.CUSTOM_ELEMENT_HANDLING==`object`?Z(e.CUSTOM_ELEMENT_HANDLING):Si(null);if(M=Si(null),q(t,`tagNameCheck`)&&it(t.tagNameCheck)&&(M.tagNameCheck=t.tagNameCheck),q(t,`attributeNameCheck`)&&it(t.attributeNameCheck)&&(M.attributeNameCheck=t.attributeNameCheck),q(t,`allowCustomizedBuiltInElements`)&&typeof t.allowCustomizedBuiltInElements==`boolean`&&(M.allowCustomizedBuiltInElements=t.allowCustomizedBuiltInElements),K(M),P&&(xe=!1),je&&(Ae=!0),Re&&(k=X({},ea),A=Si(null),Re.html===!0&&(X(k,Ji),X(A,ta)),Re.svg===!0&&(X(k,Yi),X(A,na),X(A,ia)),Re.svgFilters===!0&&(X(k,Xi),X(A,na),X(A,ia)),Re.mathMl===!0&&(X(k,Qi),X(A,ra),X(A,ia))),N.tagCheck=null,N.attributeCheck=null,q(e,`ADD_TAGS`)&&(typeof e.ADD_TAGS==`function`?N.tagCheck=e.ADD_TAGS:ji(e.ADD_TAGS)&&(k===_e&&(k=Z(k)),X(k,e.ADD_TAGS,R))),q(e,`ADD_ATTR`)&&(typeof e.ADD_ATTR==`function`?N.attributeCheck=e.ADD_ATTR:ji(e.ADD_ATTR)&&(A===j&&(A=Z(A)),X(A,e.ADD_ATTR,R))),q(e,`ADD_URI_SAFE_ATTR`)&&ji(e.ADD_URI_SAFE_ATTR)&&X(He,e.ADD_URI_SAFE_ATTR,R),q(e,`FORBID_CONTENTS`)&&ji(e.FORBID_CONTENTS)&&(F===ze&&(F=Z(F)),X(F,e.FORBID_CONTENTS,R)),q(e,`ADD_FORBID_CONTENTS`)&&ji(e.ADD_FORBID_CONTENTS)&&(F===ze&&(F=Z(F)),X(F,e.ADD_FORBID_CONTENTS,R)),Ie&&(k[`#text`]=!0),Te&&X(k,[`html`,`head`,`body`]),k.table&&(X(k,[`tbody`]),delete ve.tbody),e.TRUSTED_TYPES_POLICY){if(typeof e.TRUSTED_TYPES_POLICY.createHTML!=`function`)throw Ui(`TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.`);if(typeof e.TRUSTED_TYPES_POLICY.createScriptURL!=`function`)throw Ui(`TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.`);let t=x;x=e.TRUSTED_TYPES_POLICY;try{S=ee(``)}catch(e){throw x=t,e}}else e.TRUSTED_TYPES_POLICY===null?(x=void 0,S=``):(x===void 0&&(x=ne()),x&&typeof S==`string`&&(S=ee(``)));G&&G(e),nt=e},ot=X({},[...Yi,...Xi,...Zi]),st=X({},[...Qi,...$i]),ct=function(e,t,n){return t.namespaceURI===I?e===`svg`:t.namespaceURI===We?e===`svg`&&(n===`annotation-xml`||Ze[n]):!!ot[e]},lt=function(e,t,n){return t.namespaceURI===I?e===`math`:t.namespaceURI===Ge?e===`math`&&$e[n]:!!st[e]},ut=function(e,t,n){return t.namespaceURI===Ge&&!$e[n]||t.namespaceURI===We&&!Ze[n]?!1:!st[e]&&(L[e]||!ot[e])},dt=function(e){let t=g(e);(!t||!t.tagName)&&(t={namespaceURI:Ke,tagName:`template`});let n=Mi(e.tagName),r=Mi(t.tagName);return Je[e.namespaceURI]?e.namespaceURI===Ge?ct(n,t,r):e.namespaceURI===We?lt(n,t,r):e.namespaceURI===I?ut(n,t,r):!!(et===`application/xhtml+xml`&&Je[e.namespaceURI]):!1},ft=function(e){ki(t.removed,{element:e});try{g(e).removeChild(e)}catch{if(p(e),!g(e))throw Ui(`a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place`)}},pt=function(e){gt(e);let t=h(e);if(t){let e=[];Ei(t,t=>{ki(e,t)}),Ei(e,e=>{try{p(e)}catch{}})}let n=v(e);if(n)for(let t=n.length-1;t>=0;--t){let r=n[t],i=r&&r.name;if(typeof i==`string`)try{e.removeAttribute(i)}catch{}}},mt=function(e,n){try{ki(t.removed,{attribute:n.getAttributeNode(e),from:n})}catch{ki(t.removed,{attribute:null,from:n})}if(n.removeAttribute(e),e===`is`)if(Ae||je)try{ft(n)}catch{}else try{n.setAttribute(e,``)}catch{}},ht=function(e){let t=v(e);if(t)for(let n=t.length-1;n>=0;--n){let r=t[n],i=r&&r.name;if(!(typeof i!=`string`||A[R(i)]))try{e.removeAttribute(i)}catch{}}},gt=function(e){let t=[e];for(;t.length>0;){let e=t.pop();(y?y(e):e.nodeType)===$.element&&ht(e);let n=h(e);if(n)for(let e=n.length-1;e>=0;--e)t.push(n[e])}},_t=function(e){if(!we)return;let t=[e];for(;t.length>0;){let e=t.pop(),n=y?y(e):e.nodeType;if(n===$.processingInstruction||n===$.comment&&J(ga,e.data)){try{p(e)}catch{}continue}if(n===$.element){let t=e,n=R(b?b(e):e.nodeName);try{t.hasAttribute&&t.hasAttribute(`patchsrc`)&&t.removeAttribute(`patchsrc`),t.hasAttribute&&t.hasAttribute(`for`)&&n!==`label`&&n!==`output`&&t.removeAttribute(`for`)}catch{}}let r=h(e);if(r)for(let e=r.length-1;e>=0;--e)t.push(r[e])}},vt=function(e){let t=null,r=null;if(ke)e=`<remove></remove>`+e;else{let t=Pi(e,/^[\r\n\t ]+/);r=t&&t[0]}et===`application/xhtml+xml`&&Ke===I&&(e=`<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>`+e+`</body></html>`);let i=x?ee(e):e;if(Ke===I)try{t=new l().parseFromString(i,et)}catch{}if(!t||!t.documentElement){t=ie.createDocument(Ke,`template`,null);try{t.documentElement.innerHTML=qe?S:i}catch{}}let a=t.body||t.documentElement;return e&&r&&a.insertBefore(n.createTextNode(r),a.childNodes[0]||null),Ke===I?oe.call(t,Te?`html`:`body`)[0]:Te?t.documentElement:a},yt=function(e){return ae.call(e.ownerDocument||e,e,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},bt=function(e){return e=Fi(e,ce,` `),e=Fi(e,le,` `),e=Fi(e,ue,` `),e},xt=function(e){e.normalize();let t=ae.call(e.ownerDocument||e,e,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null),n=t.nextNode();for(;n;)n.data=bt(n.data),n=t.nextNode();let r=e.querySelectorAll?.call(e,`template`);r&&Ei(r,e=>{Ct(e.content)&&xt(e.content)})},St=function(e){let t=b?b(e):null;return typeof t!=`string`||R(t)!==`form`?!1:typeof e.nodeName!=`string`||typeof e.textContent!=`string`||typeof e.removeChild!=`function`||e.attributes!==v(e)||typeof e.removeAttribute!=`function`||typeof e.setAttribute!=`function`||typeof e.namespaceURI!=`string`||typeof e.insertBefore!=`function`||typeof e.hasChildNodes!=`function`||e.nodeType!==y(e)||e.childNodes!==h(e)},Ct=function(e){if(!y||typeof e!=`object`||!e)return!1;try{return y(e)===$.documentFragment}catch{return!1}},wt=function(e){if(!y||typeof e!=`object`||!e)return!1;try{return typeof y(e)==`number`}catch{return!1}};function z(e,n,r){e.length!==0&&Ei(e,e=>{e.call(t,n,r,nt)})}let Tt=function(e,t){return!!(we&&e.hasChildNodes()&&!wt(e.firstElementChild)&&J(ha,e.textContent)&&J(ha,e.innerHTML)||we&&e.namespaceURI===I&&t===`style`&&wt(e.firstElementChild)||e.nodeType===$.processingInstruction||we&&e.nodeType===$.comment&&J(ga,e.data))},Et=function(e,t){if(!ve[t]&&At(t)&&(M.tagNameCheck instanceof RegExp&&J(M.tagNameCheck,t)||M.tagNameCheck instanceof Function&&M.tagNameCheck(t)))return!1;if(Ie&&!F[t]){let t=g(e),n=h(e);if(n&&t){let r=n.length;for(let i=r-1;i>=0;--i){let r=Le?n[i]:f(n[i],!0);t.insertBefore(r,m(e))}}}return ft(e),!0},Dt=function(e,n){if(z(O.beforeSanitizeElements,e,null),e!==n&&g(e)===null)return!0;if(St(e))return ft(e),!0;let r=R(b?b(e):e.nodeName);if(z(O.uponSanitizeElement,e,{tagName:r,allowedTags:k}),e!==n&&g(e)===null)return!0;if(Tt(e,r))return ft(e),!0;if(ve[r]||!(N.tagCheck instanceof Function&&N.tagCheck(r))&&!k[r]){let t=Et(e,r);return t===!1&&z(O.afterSanitizeElements,e,null),t}if((y?y(e):e.nodeType)===$.element&&!dt(e)||(r===`noscript`||r===`noembed`||r===`noframes`)&&J(_a,e.innerHTML))return ft(e),!0;if(P&&e.nodeType===$.text){let n=bt(e.textContent);e.textContent!==n&&(ki(t.removed,{element:e.cloneNode()}),e.textContent=n)}return z(O.afterSanitizeElements,e,null),!1},Ot=function(e,t,r){if(ye[t]||we&&t===`patchsrc`||we&&t===`for`&&e!==`label`&&e!==`output`||Ne&&(t===`id`||t===`name`)&&(r in n||r in rt))return!1;let i=A[t]||N.attributeCheck instanceof Function&&N.attributeCheck(t,e);if(!(xe&&J(de,t))&&!(be&&J(fe,t))){if(!i){if(!(At(e)&&(M.tagNameCheck instanceof RegExp&&J(M.tagNameCheck,e)||M.tagNameCheck instanceof Function&&M.tagNameCheck(e))&&(M.attributeNameCheck instanceof RegExp&&J(M.attributeNameCheck,t)||M.attributeNameCheck instanceof Function&&M.attributeNameCheck(t,e))||t===`is`&&M.allowCustomizedBuiltInElements&&(M.tagNameCheck instanceof RegExp&&J(M.tagNameCheck,r)||M.tagNameCheck instanceof Function&&M.tagNameCheck(r))))return!1}else if(!He[t]&&!J(ge,Fi(r,me,``))&&!((t===`src`||t===`xlink:href`||t===`href`)&&e!==`script`&&Ii(r,`data:`)===0&&Be[e])&&!(Se&&!J(pe,Fi(r,me,``)))&&r)return!1}return!0},kt=X({},[`annotation-xml`,`color-profile`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`missing-glyph`]),At=function(e){return!kt[Mi(e)]&&J(he,e)},jt=function(e,t,n,r){if(x&&typeof u==`object`&&typeof u.getAttributeType==`function`&&!n)switch(u.getAttributeType(e,t)){case`TrustedHTML`:return ee(r);case`TrustedScriptURL`:return te(r)}return r},Mt=function(e,n,r,i){try{r?e.setAttributeNS(r,n,i):e.setAttribute(n,i),St(e)?ft(e):Oi(t.removed)}catch{mt(n,e)}},Nt=function(e){z(O.beforeSanitizeAttributes,e,null);let t=e.attributes;if(!t||St(e))return;let n={attrName:``,attrValue:``,keepAttr:!0,allowedAttributes:A,forceKeepAttr:void 0},r=t.length,i=R(e.nodeName);for(;r--;){let a=t[r],o=a.name,s=a.namespaceURI,c=a.value,l=R(o),u=c,d=o===`value`?u:Li(u);if(n.attrName=l,n.attrValue=d,n.keepAttr=!0,n.forceKeepAttr=void 0,z(O.uponSanitizeAttribute,e,n),d=n.attrValue,Pe&&(l===`id`||l===`name`)&&Ii(d,Fe)!==0&&(mt(o,e),d=Fe+d),we&&J(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,d)){mt(o,e);continue}if(l===`attributename`&&Pi(d,`href`)){mt(o,e);continue}if(!n.forceKeepAttr){if(!n.keepAttr){mt(o,e);continue}if(!Ce&&J(va,d)){mt(o,e);continue}if(P&&(d=bt(d)),!Ot(i,l,d)){mt(o,e);continue}d=jt(i,l,s,d),d!==u&&Mt(e,o,s,d)}}z(O.afterSanitizeAttributes,e,null)},Pt=function(e){let t=null,n=yt(e);for(z(O.beforeSanitizeShadowDOM,e,null);t=n.nextNode();)if(z(O.uponSanitizeShadowNode,t,null),Dt(t,e),Nt(t),Ct(t.content)&&Pt(t.content),(y?y(t):t.nodeType)===$.element){let e=_(t);Ct(e)&&(Ft(e),Pt(e))}z(O.afterSanitizeShadowDOM,e,null)},Ft=function(e){let t=[{node:e,shadow:null}];for(;t.length>0;){let e=t.pop();if(e.shadow){Pt(e.shadow);continue}let n=e.node,r=(y?y(n):n.nodeType)===$.element,i=h(n);if(i)for(let e=i.length-1;e>=0;--e)t.push({node:i[e],shadow:null});if(r){let e=b?b(n):null;if(typeof e==`string`&&R(e)===`template`){let e=n.content;Ct(e)&&t.push({node:e,shadow:null})}}if(r){let e=_(n);Ct(e)&&t.push({node:null,shadow:e},{node:e,shadow:null})}}};return t.sanitize=function(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=null,a=null,o=null,s=null;if(qe=!e,qe&&(e=`<!-->`),typeof e!=`string`&&!wt(e)&&(e=Ki(e),typeof e!=`string`))throw Ui(`dirty is not a string, aborting`);if(!t.isSupported)return e;Ee?(k=De,A=Oe):at(n),(O.uponSanitizeElement.length>0||O.uponSanitizeAttribute.length>0)&&(k=Z(k)),O.uponSanitizeAttribute.length>0&&(A=Z(A)),t.removed=[];let c=Le&&typeof e!=`string`&&wt(e);if(c){_t(e);let t=b?b(e):e.nodeName;if(typeof t==`string`){let n=R(t);if(!k[n]||ve[n])throw pt(e),Ui(`root node is forbidden and cannot be sanitized in-place`)}if(St(e))throw pt(e),Ui(`root node is clobbered and cannot be sanitized in-place`);try{Ft(e)}catch(t){throw pt(e),t}}else if(wt(e))i=vt(`<!---->`),a=i.ownerDocument.importNode(e,!0),a.nodeType===$.element&&a.nodeName===`BODY`||a.nodeName===`HTML`?i=a:i.appendChild(a),Ft(a);else{if(!Ae&&!P&&!Te&&e.indexOf(`<`)===-1)return x&&Me?ee(e):e;if(i=vt(e),!i)return Ae?null:Me?S:``}i&&ke&&ft(i.firstChild);let l=c?e:i,u=yt(l);try{for(;o=u.nextNode();)Dt(o,l),Nt(o),Ct(o.content)&&Pt(o.content)}catch(n){throw c&&(pt(e),Ei(t.removed,e=>{e.element&&gt(e.element)})),n}if(c)return Ei(t.removed,e=>{e.element&&gt(e.element)}),P&&xt(e),e;if(Ae){if(P&&xt(i),je)for(s=D.call(i.ownerDocument);i.firstChild;)s.appendChild(i.firstChild);else s=i;return(A.shadowroot||A.shadowrootmode)&&(s=se.call(r,s,!0)),s}let d=Te?i.outerHTML:i.innerHTML;return Te&&k[`!doctype`]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&J(pa,i.ownerDocument.doctype.name)&&(d=`<!DOCTYPE `+i.ownerDocument.doctype.name+`>
11
+ `+d),P&&(d=bt(d)),x&&Me?ee(d):d},t.setConfig=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};at(e),Ee=!0,De=k,Oe=A},t.clearConfig=function(){nt=null,Ee=!1,De=null,Oe=null,x=C,S=``},t.isValidAttribute=function(e,t,n){nt||at({});let r=R(e),i=R(t);return Ot(r,i,n)},t.addHook=function(e,t){typeof t==`function`&&q(O,e)&&ki(O[e],t)},t.removeHook=function(e,t){if(q(O,e)){if(t!==void 0){let n=Di(O[e],t);return n===-1?void 0:Ai(O[e],n,1)[0]}return Oi(O[e])}},t.removeHooks=function(e){q(O,e)&&(O[e]=[])},t.removeAllHooks=function(){O=xa()},t}var wa=Ca();function Ta(e){let{steps:t,edges:n,clusters:r}=e;if(!t||t.length===0)return`graph TD
12
+ A[No steps found]`;let i=[`graph TD`];i.push(` %% Styles`),i.push(` classDef default fill:#1e293b,stroke:#94a3b8,stroke-width:3px,color:#f8fafc,rx:10,ry:10,font-size:24px;`),i.push(` classDef entry fill:#1e293b,stroke:#34d399,stroke-width:5px,color:#f8fafc,rx:10,ry:10,font-size:24px;`),i.push(` classDef step fill:#1e293b,stroke:#22d3ee,stroke-width:3px,color:#f8fafc,rx:10,ry:10,font-size:24px;`),i.push(` classDef terminal fill:#1e293b,stroke:#f472b6,stroke-width:5px,color:#f8fafc,rx:10,ry:10,font-size:24px;`),i.push(` classDef cluster fill:#0f172a,stroke:#334155,stroke-width:3px,color:#94a3b8,rx:4,ry:4,font-size:20px;`);let a=new Map,o=[];for(let e of t)if(e.cluster){let t=a.get(e.cluster)||[];t.push(e),a.set(e.cluster,t)}else o.push(e);let s=e=>e.id.replace(/[^a-zA-Z0-9_]/g,`_`),c=e=>e.replace(/["\[\]<>{}()]/g,``).substring(0,30),l=e=>e?.split(`/`).pop()||``,u=[...t].sort((e,t)=>e.stepNumber-t.stepNumber),d=u[0]?.id,f=u[u.length-1]?.id,p=e=>e.id===d?`entry`:e.id===f?`terminal`:`step`;if(e.processType===`cross_community`&&a.size>1){let e=0;for(let[t,n]of a){i.push(` subgraph ${c(t)}["${c(t)}"]:::cluster`);for(let e of n){let t=s(e),n=`${e.stepNumber}. ${c(e.name)}`,r=l(e.filePath),a=p(e);i.push(` ${t}["${n}<br/><small>${r}</small>"]:::${a}`)}i.push(` end`),e++}for(let e of o){let t=s(e),n=`${e.stepNumber}. ${c(e.name)}`,r=l(e.filePath),a=p(e);i.push(` ${t}["${n}<br/><small>${r}</small>"]:::${a}`)}}else for(let e of t){let t=s(e),n=`${e.stepNumber}. ${c(e.name)}`,r=l(e.filePath),a=p(e);i.push(` ${t}["${n}<br/><small>${r}</small>"]:::${a}`)}if(n&&n.length>0){let e=new Map(t.map(e=>[e.id,e]));for(let t of n){let n=e.get(t.from),r=e.get(t.to);n&&r&&i.push(` ${s(n)} --> ${s(r)}`)}}else{let e=[...t].sort((e,t)=>e.stepNumber-t.stepNumber);for(let t=0;t<e.length-1;t++)i.push(` ${s(e[t])} --> ${s(e[t+1])}`)}return i.join(`
13
+ `)}var Ea=e({ProcessFlowModal:()=>Da});ui.initialize({startOnLoad:!1,suppressErrorRendering:!0,maxTextSize:9e5,theme:`base`,themeVariables:{primaryColor:`#1e293b`,primaryTextColor:`#f1f5f9`,primaryBorderColor:`#22d3ee`,lineColor:`#94a3b8`,secondaryColor:`#1e293b`,tertiaryColor:`#0f172a`,mainBkg:`#1e293b`,nodeBorder:`#22d3ee`,clusterBkg:`#1e293b`,clusterBorder:`#475569`,titleColor:`#f1f5f9`,edgeLabelBackground:`#0f172a`},flowchart:{curve:`basis`,padding:50,nodeSpacing:120,rankSpacing:140,htmlLabels:!0}}),ui.parseError=e=>{console.debug(`Mermaid parse error (suppressed):`,e)};var Da=({process:e,onClose:t,onFocusInGraph:n,isFullScreen:r=!1})=>{let{t:i}=F([`graph`,`common`]),a=(0,j.useRef)(null),o=(0,j.useRef)(null),s=(0,j.useRef)(null),c=r?6.67:1,l=r?30:10,[u,d]=(0,j.useState)(c),[f,p]=(0,j.useState)({x:0,y:0}),[m,h]=(0,j.useState)(!1),[g,_]=(0,j.useState)({x:0,y:0});(0,j.useEffect)(()=>{d(c),p({x:0,y:0})},[r,c]),(0,j.useEffect)(()=>{let e=e=>{e.preventDefault();let t=e.deltaY*-.001;d(e=>Math.min(Math.max(.1,e+t),l))},t=s.current;if(t)return t.addEventListener(`wheel`,e,{passive:!1}),()=>t.removeEventListener(`wheel`,e)},[e,l]),(0,j.useEffect)(()=>{let e=e=>{e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement||(e.key===`+`||e.key===`=`?d(e=>Math.min(e+.2,l)):(e.key===`-`||e.key===`_`)&&d(e=>Math.max(e-.2,.1)))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[l]);let v=(0,j.useCallback)(()=>{d(e=>Math.min(e+.25,l))},[l]),y=(0,j.useCallback)(()=>{d(e=>Math.max(e-.25,.1))},[]),b=(0,j.useCallback)(e=>{h(!0),_({x:e.clientX-f.x,y:e.clientY-f.y})},[f]),x=(0,j.useCallback)(e=>{m&&p({x:e.clientX-g.x,y:e.clientY-g.y})},[m,g]),S=(0,j.useCallback)(()=>{h(!1)},[]),C=(0,j.useCallback)(()=>{d(c),p({x:0,y:0})},[c]);(0,j.useEffect)(()=>{!e||!o.current||(async()=>{try{let t=e.rawMermaid?e.rawMermaid:Ta(e),n=`mermaid-${Date.now()}`;o.current.innerHTML=``;let{svg:r}=await ui.render(n,t);if(!o.current)return;o.current.innerHTML=wa.sanitize(r,{USE_PROFILES:{svg:!0,svgFilters:!0},ADD_TAGS:[`foreignObject`]})}catch(t){console.error(`Mermaid render error:`,t);let n=t instanceof Error?t.message:String(t),r=n.includes(`Maximum`)||n.includes(`exceeded`);o.current.innerHTML=`
14
+ <div class="text-center p-8">
15
+ <div class="text-red-400 text-sm font-medium mb-2">
16
+ ${i(r?`graph:processFlow.diagramTooLarge`:`graph:processFlow.renderError`)}
17
+ </div>
18
+ <div class="text-slate-400 text-xs max-w-md">
19
+ ${i(r?`graph:processFlow.tooComplex`:`graph:processFlow.unableToRender`,{count:e.steps?.length||0})}
20
+ </div>
21
+ </div>
22
+ `}})()},[e,i]),(0,j.useEffect)(()=>{let e=e=>{e.key===`Escape`&&t()};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[t]);let w=(0,j.useCallback)(e=>{e.target===a.current&&t()},[t]),T=(0,j.useCallback)(async()=>{if(!e)return;let t=Ta(e);await navigator.clipboard.writeText(t)},[e]),E=(0,j.useCallback)(()=>{!e||!n||(n(e.steps.map(e=>e.id),e.id),t())},[e,n,t]);return e?(0,L.jsx)(`div`,{ref:a,className:`fixed inset-0 z-50 flex animate-fade-in items-center justify-center bg-black/20`,onClick:w,"data-testid":`process-modal`,children:(0,L.jsxs)(`div`,{className:`animate-scale-in relative flex flex-col overflow-hidden rounded-3xl border border-white/10 bg-slate-900/60 shadow-2xl shadow-cyan-500/10 backdrop-blur-2xl ${r?`h-[95vh] w-[98%] max-w-none`:`max-h-[90vh] w-[95%] max-w-5xl`}`,children:[(0,L.jsx)(`div`,{className:`pointer-events-none absolute inset-0 bg-gradient-to-br from-white/5 to-transparent`}),(0,L.jsx)(`div`,{className:`relative z-10 border-b border-white/10 px-6 py-5`,children:(0,L.jsx)(`h2`,{className:`text-lg font-semibold text-white`,children:i(`graph:processFlow.title`,{label:e.label})})}),(0,L.jsx)(`div`,{ref:s,className:`relative z-10 flex flex-1 items-center justify-center overflow-hidden p-8 ${r?`min-h-[70vh]`:`min-h-[400px]`}`,onMouseDown:b,onMouseMove:x,onMouseUp:S,onMouseLeave:S,style:{cursor:m?`grabbing`:`grab`},children:(0,L.jsx)(`div`,{ref:o,className:`h-fit w-fit origin-center transition-transform [&_.edgePath_.path]:stroke-slate-400 [&_.edgePath_.path]:stroke-2 [&_.marker]:fill-slate-400`,style:{transform:`translate(${f.x}px, ${f.y}px) scale(${u})`}})}),(0,L.jsxs)(`div`,{className:`relative z-10 flex items-center justify-center gap-3 border-t border-white/10 bg-slate-900/50 px-6 py-4`,children:[(0,L.jsxs)(`div`,{className:`flex items-center gap-1 rounded-lg border border-white/10 bg-white/5 p-1`,children:[(0,L.jsx)(`button`,{onClick:y,className:`rounded-md p-2 text-slate-300 transition-all hover:bg-white/10 hover:text-white`,title:i(`graph:processFlow.zoomOutTitle`),children:(0,L.jsx)($e,{className:`h-4 w-4`})}),(0,L.jsxs)(`span`,{className:`min-w-[3rem] px-2 text-center font-mono text-xs text-slate-400`,children:[Math.round(u*100),`%`]}),(0,L.jsx)(`button`,{onClick:v,className:`rounded-md p-2 text-slate-300 transition-all hover:bg-white/10 hover:text-white`,title:i(`graph:processFlow.zoomInTitle`),children:(0,L.jsx)(Qe,{className:`h-4 w-4`})})]}),(0,L.jsx)(`button`,{onClick:C,className:`flex items-center gap-2 rounded-lg border border-white/10 bg-white/5 px-4 py-2.5 text-sm font-medium text-slate-300 transition-all hover:bg-white/10 hover:text-white`,title:i(`graph:processFlow.resetTitle`),children:i(`graph:processFlow.resetView`)}),n&&(0,L.jsxs)(`button`,{onClick:E,className:`flex items-center gap-2 rounded-lg bg-cyan-400 px-5 py-2.5 text-sm font-medium text-slate-900 shadow-lg shadow-cyan-500/20 transition-all hover:bg-cyan-300`,children:[(0,L.jsx)(Ze,{className:`h-4 w-4`}),i(`graph:processFlow.toggleFocus`)]}),(0,L.jsxs)(`button`,{onClick:T,className:`flex items-center gap-2 rounded-lg bg-purple-600 px-5 py-2.5 text-sm font-medium text-white shadow-lg shadow-purple-500/20 transition-all hover:bg-purple-500`,children:[(0,L.jsx)(Xe,{className:`h-4 w-4`}),i(`graph:processFlow.copyMermaid`)]}),(0,L.jsx)(`button`,{onClick:t,className:`rounded-lg border border-white/10 bg-white/5 px-5 py-2.5 text-sm font-medium text-slate-300 transition-all hover:bg-white/10 hover:text-white`,children:i(`common:actions.close`)})]})]})}):null};export{A as _,tt as a,$e as c,Xe as d,Ye as f,Oe as g,je as h,ui as i,Qe as l,F as m,Ea as n,R as o,Be as p,wa as r,et as s,Da as t,Ze as u};